首都高赛车免安装正式中文版
6.7G · 2025-10-10
前言
很多人用第三方工具修改(实际上修改了也没用,现代化加密工具是直接hook JIT)MSIL
比如dnspy/ilspy/dotpeek/Reflector等等,这些工具看似不错,实际上完全不经打,如果把程序集进行虚拟化,这些工具完全无法展示出来。本篇还是来看下比较能打的ILDASM和ILASM.它是微软官方工具。
概念
ILDASM可以把托管的DLL反编译成IL代码,把它导出.IL后缀名的文件,修改这些IL文件之后,通过ILDASM把IL文件重新编译成DLL或者Exe。
1.路径:
C:Program Files (x86)Microsoft SDKsWindowsv10.0AbinNETFX 4.8 Toolsx64ildasm.exe
C:Program Files (x86)Microsoft SDKsWindowsv10.0AbinNETFX 4.8 Toolsildasm.exe
ilasm的路径
C:WindowsMicrosoft.NETFramework64v4.0.30319ilasm.exe
2.操作
打开ILDASM之后,把DLL拖进去。然后点击菜单栏-》文件-》转储-》转出选项不要动-》确定-》选择路径填写导出名称(注意这里的后缀名是.il)。
在导出之后的路径,它会生成.il和.res两个后缀名的文件。把.il的后缀名文件通过记事本把它打开,然后修改下。修改了之后就可以用ilasm通过如下命令重新组装成DLL或者Exe:
比如路径是:C:UsersAdministratorDesktopdnguard_iltest导出名称是:test。
运行如下命令:
D:Visual StudioIDE>ilasm "C:UsersAdministratorDesktopdnguard_iltesttest.il" "C:UsersAdministratorDesktopdnguard_iltesttest.res" /output="C:UsersAdministratorDesktopdnguard_iltesttest.dll"
Microsoft (R) .NET Framework IL Assembler. Version 4.8.9105.0
Copyright (c) Microsoft Corporation. All rights reserved.
Assembling 'C:UsersAdministratorDesktopdnguard_iltesttest.il' to EXE --> 'C:UsersAdministratorDesktopdnguard_iltesttest.dll'
Source file is UTF-8
ilasm后面带上.il和.res文件的路径 /output后面带上输出的dll或者exe文件的路径即可。
这样就非常容易的修改了IL代码,不需要借助任何第三方工具。