我正在处理一个混淆的二进制文件。IDA 在区分代码和垃圾代码方面做得非常好。然而,我已经开始搞乱一个函数从code
to 的变化,data
反之亦然,并且完全弄乱了函数并破坏了它的样子。我不想在可执行文件上启动新数据库并重新完成我的所有工作。
有没有办法重新分析单个函数并将其返回到初始分析后的样子?
我正在处理一个混淆的二进制文件。IDA 在区分代码和垃圾代码方面做得非常好。然而,我已经开始搞乱一个函数从code
to 的变化,data
反之亦然,并且完全弄乱了函数并破坏了它的样子。我不想在可执行文件上启动新数据库并重新完成我的所有工作。
有没有办法重新分析单个函数并将其返回到初始分析后的样子?
好吧,您必须首先使用 U 键取消定义代码,然后他们选择代码并右键单击您将有一些选项,例如 C(代码)等。IDA 几乎可以让您使用混淆代码做任何事情,以帮助您正确理解代码。
附录 转换为 C(代码)后,按 Alt+P 创建/编辑函数。此外,通过转到布局视图,右键单击空白区域并选择“布局图”来重建布局图。