如何用API窗口拆卸EXE文件

How to disassembler exe file With API windows?

本文关键字:EXE 文件 窗口 何用 API      更新时间:2023-10-16

我编写了一个打开EXE文件的程序。我希望该程序在EXE文件中阅读一些及其地址的特定汇编说明。例如果酱或呼叫。因此,我应该使用什么API功能。如果您知道其他可以有用的来源告诉我;)

如果要在 Windows PE文件中读取代码(Portable可执行文件),则首先必须找到代码部分。

如何找到这一点取决于EXE是32位还是64位的一个(尽管它们的内部结构几乎相同),但是我建议您研究PE格式http://msdn.microsoft.com/en-us/magazine/cc301805.aspx

之后,您必须找到呼叫代码或任何您想要的任何地址。您想处理该二进制代码的功能取决于您,如果您打算将其翻译成ASM人类可读代码,则需要翻译器(或者是一个自己的代码,或者是一个代码,对于初学者来说很难)扩张(GPL和商业许可证)。

我希望这能让您开始做您想做的事情。

一个很好的开始是使用拆卸库,例如,Capstone是其中之一,但更多的存在。

然后,您需要解析PE可执行格式以提取代码以发送到您的拆卸库...

但在该域库中也存在,例如支持大多数体系结构和格式的Radare(可以与多个拆卸库一起使用,包括Capstone)