我正在寻找编写一个能够从指定的 .exe 读取汇编代码的程序。我想做的是读取可执行文件的汇编代码,以便找到可以用等效指令替换的指令,以获得不同的字节代码。这通常称为源加扰器/签名加扰器,它修改汇编代码以获得不同的字节代码,从而产生不同的签名。我正在阅读有关 C# 中的 Assembly 类的信息,但没有找到任何可以返回类似 IEnumerable 之类的内容,其中包含来自 .exe 的汇编代码有没有人可以教育我这方面的知识?这可能吗?不同的方法?
1 回答
PIPIONE
TA贡献1829条经验 获得超9个赞
.NET 并不真正处理字节码。所有 .NET 程序都会转换为称为 MSIL 的东西,由 .NET 运行时执行,然后才转换为字节码。整个过程与JavaBytecode的工作原理非常相似。
因此,您可以完全访问任何内容的名称。您甚至可以像使用 .DLL 文件一样使用 .NEt 可执行文件。但除了继承或替换文件之外,替换内容并不容易。
您可能需要的那种按位操作需要使用裸指针。.NET 开发人员不遗余力地让您不再需要使用裸指针。您仍然可以使用 Unsface 代码来使用它们,但是由于这听起来像是您程序的主要用途,您可能最好从本机 C++ 之类的东西开始。实际上,任何使用裸指针作为默认值的东西,而不是后备。
- 1 回答
- 0 关注
- 101 浏览
添加回答
举报
0/150
提交
取消