在拆卸dll时,IDA比visual studio有什么优势?

wam*_*amp 4 reverse-engineering disassembly

假设我已经使用DLL,所以我可以跟踪到DLL的Visual Studio中的"反汇编窗口"的内部,那么什么是IDA的优势,在这种情况下?项目是否存在?

Igo*_*sky 7

IDA Pro(Interactive DisAssembler)的重点在于互动.可以将其视为拆卸工作的IDE.

  1. 您可以反汇编文件而无需调试它们
  2. 它自动识别代码和数据; 但是,您始终可以手动覆盖其决策.
  3. 它将指令流分组为函数,并将堆栈访问转换为局部变量和参数的符号名称.
  4. 它可以将代码流显示为图形
  5. 它跟踪数据和交叉引用,例如哪些函数访问特定数据地址,或哪些函数调用当前数据.
  6. 即使没有调试信息,它也会自动识别通用编译器的库函数
  7. 您可以轻松导航整个二进制文件,将任何位置重命名为描述性名称并添加注释
  8. 您可以创建结构和枚举,并使用它们使反汇编更具描述性,用名称替换数值和偏移量.许多Win32 API结构是预定义的.
  9. 您可以使用内置的类C脚本语言IDC或Python自动执行常见任务.
  10. 公共API函数的参数被注释和重命名.
  11. 使用可选的反编译插件,您可以反编译32位x86或ARM代码.
  12. 如果脚本不够,可以用C++编写插件.
  13. 它有许多调试器模块:原生Win32,WinDbg引擎,GDB(用于x86/ARM/MIPS/PPC),Bochs仿真器等.也可以进行远程调试.

简而言之,如果您经常拆卸文件,这个工具是必不可少的.如果您想尝试一下,请在此处获取演示版或免费版.

免责声明:我为Hex-Rays工作.