如何扩展/扩展
IDA
(PRO 7.5 SP3) 中的函数代码?我想在反汇编代码中的现有函数中添加一些新指令。我知道,有一个 change function end
选项(hotkey E
),但问题是在函数代码之后立即有另一个函数代码,因此扩展相关函数我只是覆盖一些现有的和可能重要的代码。
我附上了相关代码的屏幕截图:
所以我是对的,这里的解决方案是首先在函数结束之前的代码中“腾出”一些可用空间(将所有后面的代码移动到函数旁边),然后才通过修补添加一些新指令。但是,正如我所说,如何为新指令“腾出”这个可用空间?
感谢帮助。
附注
抱歉,如果这个问题可能有点蹩脚,但我是这个主题的新手。
通常的方法是在代码中的其他地方找到一些空闲空间并跳转到它。
但是,通过压缩现有代码并删除不必要的安全检查,这里有一些可用空间。
从401067开始,用
覆盖 401067 xor eax, eax
401069 leave
40106a ret
剩下 40106b - 401087 可用,即 29 个字节。