因此,基本上,我使用IDA pro来分解PE文件,并对获得的asm代码进行一些转换工作,以使其可重新组装。
在我生成的转换后的代码中,像
printf
这样的系统函数调用将按照通常的方式编写。 extern printf
....
....
call printf
我得到了PE可执行文件,并且基本上可以正常运行(如hello world程序,快速排序程序等)。 />但是,当我使用IDA pro重新反汇编我创建的新PE可执行文件时,发生了奇怪的事情。
IDA pro生成如下函数调用:
,当我使用时: />
nasm -fwin32 --prefix _ test.s
cl test.obj /link msvcrt.lib
没有
j_printf proc near
函数定义... 所以基本上我想知道是否有人知道如何处理这样,让IDA pro再次生成
还是任何其他解决方案?
评论
为什么JMP可以与CALL一起使用?@JasonGeffner:虽然我同意它看起来像重复的,但问题的提出方式却完全不同(这将在搜索时帮助未来的太空人)。