从可执行文件获取程序集

我正在寻找编写一个能够从指定的 .exe 读取汇编代码的程序。我想做的是读取可执行文件的汇编代码,以便找到可以用等效指令替换的指令,以获得不同的字节代码。

这通常称为源加扰器/签名加扰器,它修改汇编代码以获得不同的字节代码,从而产生不同的签名。

我正在阅读有关 C# 中的 Assembly 类的信息,但没有找到任何可以返回类似 IEnumerable 之类的内容,其中包含来自 .exe 的汇编代码

有没有人可以教育我这方面的知识?这可能吗?不同的方法?


牛魔王的故事
浏览 102回答 1
1回答

PIPIONE

.NET 并不真正处理字节码。所有 .NET 程序都会转换为称为 MSIL 的东西,由 .NET 运行时执行,然后才转换为字节码。整个过程与JavaBytecode的工作原理非常相似。因此,您可以完全访问任何内容的名称。您甚至可以像使用 .DLL 文件一样使用 .NEt 可执行文件。但除了继承或替换文件之外,替换内容并不容易。您可能需要的那种按位操作需要使用裸指针。.NET 开发人员不遗余力地让您不再需要使用裸指针。您仍然可以使用 Unsface 代码来使用它们,但是由于这听起来像是您程序的主要用途,您可能最好从本机 C++ 之类的东西开始。实际上,任何使用裸指针作为默认值的东西,而不是后备。
打开App,查看更多内容
随时随地看视频慕课网APP