使用Russell Libby的DisAsm32,反汇编过程/函数/方法只是将(一致的)指针传递给procedure TDisAsm.Disassemble(Address: Pointer; Size: Cardinal = 0);的问题。

到目前为止,我已经设法从任何加载的外部模块(BPL / DLL)中反汇编了任意过程/方法,只要它们已适当导出即可。

从当前进程(由Windows loader加载的EXE映像),我想获得指向入口点的有效指针。

我想通过它的“代码查看器”选项卡(但从Exe运行实例本身)提供类似于IDR(交互式Delphi编译器)的内容。



如何做呢?我暂时对PE结构不太满意(但我正在努力,请相信我),并且想知道它们是否与目的相关。

最佳答案

对于PE结构读/写,您可以看一下开源JEDI库JCL,例如:
http://www.koders.com/delphi/fid38455E3CFDAF1F38C48DA3A295034E7015A4D01E.aspx?s=zip#L1810

正在运行的实例的入口点是“ System.MainInstance”?

07-24 09:46
查看更多