初识Ildasm.exe——IL反编译的实用工具

ildasm.exe 4.6 MSIL 反汇编程序是 MSIL 汇编程序 (Ilasm.exe) 的伙伴工具。 Ildasm.exe 采用包含 Microsoft 中间语言 (MSIL) 代码的可迁移可执行 (PE) 文件,并创建相应的文本文件作为 Ilasm.exe 的输入。 安装 Visual Studio 和 Windows SDK 时会自动安装此工具。 要运行工具,我们建议您使用 Visual Studio 命令提示符或 Windows SDK 命令提示符(也称 CMD Shell)。 您可以使用这些实用程序轻松运行工具,而不需要导航到安装文件夹。 有关更多信息,请参见 Visual Studio 和 Windows SDK 命令提示。当前文件版本号:4.6.1055。 立即下载

Ildasm.exe 概要:

 
摘自:http://www.cnblogs.com/yangmingming/archive/2010/02/03/1662307.html

一.前言:

      微软的IL反编译实用程序——Ildasm.exe,可以对可执行文件(ex,经典的控制台Hello World 的 exe 可执行文件)抽取出 IL 代码,并且给出命名空间以及类的视图。在讲述如何反编译之前,有必要从虚拟CPU的角度来看CLR,这样有助于先从正面了解代码执行过程。

虚拟CPU:

    .NET 程序,其核心皆为 CLR ,而同时CLR的功能却与CPU非常相近,其中CLR执行IL代码(或叫做,IL指令)、操作数据,只不过操作的代码不同:CPU操作机器语言,而CLR操作IL代码。

由上,上述讲解的是从IL--机器语言的过程,而Ildasm则可以实现将可执行程序(机器语言)--IL代码,这就是Ildasm的主要功能。

    在Anytao的《你必须知道的.NET》中对IL代码专门做了说明,虽然暂时悟不透其"深远意义",但我还是愿意去开始我的IL之旅的,呵呵~。 在此我们先看,Anytao对于掌握(或者了解) IL代码的重要性:

1.通用的语言基础是.NET运行的基础,当我们对运行结果有异议的时候,如何透过表面看本质,IL是必须的基础;

2. IL也是更好理解、认识CLR的基础;

3.大量的实例分析是以IL为基础的,所以了解IL,是读懂他人代码的必备基础,同时自己也可以获得潜移默化的提高;

    有上述3条影响,足以让任何一个有追求的人都鼓足劲,去开始IL之旅了(自然包括我,呵呵~)。


二 .Ildasm.exe 的使用方法:

在应用Ildasm.exe具体反编译代码之前,先附上MSDN对于用Ildasm.exe反编译的经典帮助示例:

然后我们用Ildasm.exe具体反编译经典的"Hello World"控制台程序的可执行文件,展现出来的视图为:


分析具体IL代码:

1.MANIFEST清单:

     MANIFEST是一个附加信息列表,主要包含程序集的一些属性,如程序集名称、版本号、哈希算法等;

2.ConsoleApplication1.Program类:

    这才是我们介绍的主角。

首先是Program类: 代码为

ildasm.exe 4 MSIL 反汇编程序是 MSIL 汇编程序 (Ilasm.exe) 的伙伴工具。 Ildasm.exe 采用包含 Microsoft 中间语言 (MSIL) 代码的可迁移可执行 (PE) 文件,并创建相应的文本文件作为 Ilasm.exe 的输入。 安装 Visual Studio 和 Windows SDK 时会自动安装此工具。 要运行工具,我们建议您使用 Visual Studio 命令提示符或 Windows SDK 命令提示符(也称 CMD Shell)。 您可以使用这些实用程序轻松运行工具,而不需要导航到安装文件夹。 有关更多信息,请参见 Visual Studio 和 Windows SDK 命令提示。当前文件版本号:4.030319。 立即下载

相关推荐

SecureCRT 9.0最新版安装与激活全攻略(附驱动识别技巧)

本文提供SecureCRT 9.0最新版的详细安装与激活指南,并重点解析了嵌入式开发中串口连接的硬件驱动识别技巧。内容涵盖从安全获取软件、解决USB转串口驱动兼容性问题,到配置SSH与串口会话的完整流程,旨在帮助开发者和工程师高效部署并精通使用这款终端仿真利器。

star的博客 409

VS 反编译工具 ildasm

名称:ildasm.exe 目录:

王小胖的博客 2188

android 运动目标检测_MindSpore应用案例:AI对篮球运动员目标的检测

MindSpore作为一个端边云协同的开源的全场景AI框架,今年3月份开源以来,受到了业界的广泛关注和应用,欢迎大家参与开源贡献、模型众智合作、行业创新与应用、学术合作等,贡献您在云侧、端侧 (HiMindSpore 应用程序)、边侧以及安全领域的应用案例。MindSpore与您在AI领域共同成长,让AI使能千行百业,释放出强大的生产力。本文讲述的是MindSpore对篮球运动员目标的检测应用,通...

weixin_33603813的博客 834

ILdasm 的使用方法

点评:软中间语言 (MSIL) 是一种语言,是许多编译器(C#、VB.NET等)的输出。ILDasm (中间语言反汇编器)程序和.Net Framework SDK(FrameworkSDK\Bin\ildasm.exe)打包在一起,让用户以人可阅读的格式查看MSIL代码 通过该工具,我们可以打开任何.net可执行文件(exe或dll)并查看其MSIL代码。 Ildasm.exe下载地

netcaoniao的专栏 7321

AT91SAM9260搭建LINUX操作系统

一、 编写目的 2 二、 系统搭建 2 1. 下载相关软件包 2 2. Bootstrap编译 3 3. U-BOOT编译 5 4. LINUX编译 7 5. 通过U-BOOT的TFTP命令从TFTP服务器下载系统镜像 9 6. 文件系统制作 10 7. 挂载NFS作为根文件系统 10 三、 总结 14 一、编写目的 本文档用于记录AT91SAM9260 LINUX学

lshiceman的专栏 7412

100天精通Python(基础篇)——第2天:基础语法详解(标识符、保留字、注释与代码结构)

100天精通Python(基础篇)——第2天:基础语法详解(标识符、保留字、注释与代码结构)

努力让自己发光,对的人才能迎着光而来 34万+

ildasm ilasm

ildasm 路径 C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools ilasm   路径 C:\Windows\Microsoft.NET\Framework64\v2.0.50727 使用: 打开ildasm >打开文件>选择Dump。在选择的路径下会生成一下文件,如果为EXE文件则生成.i

chiyueqi的专栏 780

[网络安全自学篇] 六.OllyDbg动态分析工具基础用法及Crakeme逆向破解

这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步。上一篇文章分享了IDA Pro反汇编工具的基础用法,并简单讲解一个EXE逆向工程解密实战方法;本篇文章将讲解动态分析OllyDbg工具的基础用法,主要是结合两个Crakeme案例逆向破解。希望对初学者有帮助,大神请飘过,谢谢各位看官!

杨秀璋的专栏 1万+

快速启动ILDasm查看当前项目的IL代码

最近在研究IL代码,所以经常在VS中写了C#代码,需要用ILDasm查看下它的IL代码,但每次手工打开实在麻烦,所以这里推荐下使用外部程序:依次打开菜单“工具”-“外部工具”,在“外部工具”对话框中点击“添加”按钮在“标题”输入框中输入:IL在“命令”输入框中输入:“C:/Program Files/Microsoft SDKs/Windows/v6.0A/bin/ildasm.exe

边城的专栏 1811

如何计算 R 中的基尼系数(附示例)

以意大利统计学家Corrado Gini命名,基尼系数是衡量人口收入分配的一种方法。基尼系数的值在 0 到 1 之间,值越高代表收入不平等越大,其中:0代表完全的收入平等(每个人的收入都一样) 1代表完全的收入不平等(一个人拥有所有收入) 您可以在此处找到按国家/地区列出的基尼系数列表。以下示例显示了使用DescTools包中的Gini()函数计算 R 中的基尼系数的两种方法。示例 1:使用个人收入计算基尼系数假设我们有以下 10 个人的年收入列表:收入:5 万美元、5 万美元、7 万美元、7 万美元、7

Mrrunsen的博客 2990

突破限制:巧用Azure OpenAI,畅玩Gemini模型

通过 Azure OpenAI 服务这一巧妙的途径,间接调用 Gemini 模型,打破网络限制的壁垒。本文将详细介绍这一方法,无论你是人工智能领域的新手,还是经验丰富的开发者,都能从中获取实用的技巧,轻松开启 Gemini 模型的探索之旅

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 180

ILAsm.exe ;ILDasm.exe;DumpBin.exe;CorFlags.exe;CLRVer.exe

通常,开发人员会使用C#,C++/CLI或者VB等高级语言来编程。这些高级语言的编译器将生成IL(中间语言)。然而和其他任何机器语言一样,IL也能使用汇编语言来写,微软甚至专门提供了一个名为ILAsm.exe的IL汇编器和一个名为ILDsm.exe的IL反汇编器。 .NET Framework 里面的DumpBin.exe和CorFlags.exe两个命令行程序,可用来检查编译器生成的一个...

weixin_34335458的博客 198

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

初识Ildasm.exe——IL反编译的实用工具(转自Youngman)

Ildasm.exe 概要: 一.前言: 微软的IL反编译实用程序——Ildasm.exe,可以对可执行文件(ex,经典的控制台Hello World 的 exe 可执行文件)抽取出 IL 代码,并且给出命名空间以及类的视图。在讲述如何反编译之前,有必要从虚拟CPU的角度来看CLR,这样有助于先从正面了解代码执行过程。 虚拟CPU: .NET 程序,其核...

weixin_30868855的博客 119

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[No000013B]初识Ildasm.exe——IL反编译的实用工具

Ildasm.exe 概要: 一.前言: 微软的IL反编译实用程序——Ildasm.exe,可以对可执行文件(ex,经典的控制台Hello World 的 exe 可执行文件)抽取出 IL 代码,并且给出命名空间以及类的视图。在讲述如何反编译之前,有必要从虚拟CPU的角度来看CLR,这样有助于先从正面了解代码执行过程。 虚拟CPU: .NET 程序,其核心皆为 CLR ...

weixin_30437337的博客 134

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: js显示时间
下一篇: .net IL 指令速查
VS_URL
博客等级 码龄15年 12粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值