目前我正在尝试使用 IDA pro从 PE 文件生成汇编代码并重新编译它。
第一
基本上我知道这样:
File -> Produce File -> Create ASM File
而且它生成的asm文件好像不能直接重新编译。
第二
在IDA中使用一些IDC或Python脚本提取有用的asm指令,将它们放在一起并重新编译,这种解决方案可以从一些学术论文中看到,但没有人给出有关如何完成此任务的详细说明...
谁能给我一些关于这个问题的说明..?谢谢!
目前我正在尝试使用 IDA pro从 PE 文件生成汇编代码并重新编译它。
基本上我知道这样:
File -> Produce File -> Create ASM File
而且它生成的asm文件好像不能直接重新编译。
在IDA中使用一些IDC或Python脚本提取有用的asm指令,将它们放在一起并重新编译,这种解决方案可以从一些学术论文中看到,但没有人给出有关如何完成此任务的详细说明...
谁能给我一些关于这个问题的说明..?谢谢!
许多年前,我编写了一个非常粗略的脚本,使用大多数与 nasm 兼容的语法将当前(由光标位置定义)函数转储到输出窗口。您可能会修改以将输出保存到文件并迭代数据库中的每个函数。该脚本可在此处获得:nasm dumper
我会回答部分
将它们按顺序放在一起并重新编译
如果您的反编译包含函数块,请注意使用从函数环境接受外部代码的汇编程序,并注意数据保护执行。
有关函数块的更多信息:Chunked function(包含函数的不连续代码块)