我正在使用 IDA Pro 6 并且我正在寻找一种方法来自动将分析的文件导出到列表 (.lst) 文件中。
IDA 的界面允许使用菜单File > Produce File > Create LST file...执行此操作,但我找不到以批处理模式执行此操作的方法(通过在终端中使用 -B 运行 IDA) . Hex-Rays 的帮助页面似乎没有帮助,因为我找不到符合我需求的开关。
有什么办法可以自动从 IDA 中获取列表?也许使用 IDC/Python 脚本?
我需要的典型列表由地址位置、字节和每条指令的汇编组成,如下所示(如果没有其他可能性,可以省略仅包含注释或变量声明的行):
text:004016B0 ; =============== S U B R O U T I N E =======================================
.text:004016B0
.text:004016B0 ; Attributes: noreturn bp-based frame
.text:004016B0
.text:004016B0 ___report_gsfailure proc near ; CODE XREF: __security_check_cookie(x):$failure$3j
.text:004016B0
.text:004016B0 var_324 = dword ptr -324h
.text:004016B0 var_8 = dword ptr -8
.text:004016B0 var_4 = dword ptr -4
.text:004016B0
.text:004016B0 8B FF mov edi, edi
.text:004016B2 55 push ebp
.text:004016B3 8B EC mov ebp, esp
.text:004016B5 81 EC 24 03 00+ sub esp, 324h
.text:004016BB A3 40 21 40 00 mov dword_402140, eax
.text:004016C0 89 0D 3C 21 40+ mov dword_40213C, ecx
.text:004016C6 89 15 38 21 40+ mov dword_402138, edx
.text:004016CC 89 1D 34 21 40+ mov dword_402134, ebx
.text:004016D2 89 35 30 21 40+ mov dword_402130, esi
.text:004016D8 89 3D 2C 21 40+ mov dword_40212C, edi