我正在 Ghidra 反编译器中处理一个函数,其中包含一堆在不同范围内重复使用的变量。我没有看到任何方法可以在每行的基础上重命名这个变量。是否可以?
重命名 Ghidra 中的阴影变量
逆向工程
吉德拉
2021-06-11 23:13:54
2个回答
Yaldi 已经提到了Commit Locals
更精细的变量范围的重要的第一步。
如果您的 Ghidra 版本至少有提交https://github.com/NationalSecurityAgency/ghidra/commit/885402bbc3618b895c4b9b8f09300d3120a9abe8可能会在9.2
发行版中,您可以Commit Locals
通过右键单击反编译器视图中的变量并选择Split out as New Variable.
GitHub 用户 ubitux 在此处建议了此解决方法:https : //github.com/NationalSecurityAgency/ghidra/issues/1510,我可以确认它在某种程度上解决了该问题。
当你对函数“Commit Locals”时,一些变量的类型和名称会被固定,变量的作用域会变小,这样一个变量就会自动拆分到多个作用域。然后,您可以迭代地注释变量类型、重命名变量、提交,范围将进一步缩小。