File , Edit , Jump , Search , View , Debugger , Options , Windows , Help
1.File 是用来打开,新建,装载一个应用程序的,这大家都知道的。
2.Edit 是用来编辑反汇编代码的,可以复制,筛选什么的。
3.Jump 是用来跳转的,可以有很多种类型的跳转,比如跳转到上一个位置或者下一个位置,跳转到某个指定的地址。还可以根据名字,函数来进行跳转,跳转到一个新的窗口,跳转某一个偏移量等等,总之很多了,具体大家可以慢慢积累了。这个模块就比较重要了。
4.Serach 是用来搜索的。
5.View 是用来选择显示方式的,或者显示某一特定模块信息的。比如以树形逻辑图显示,或者16进制形式显示。还可以单独显示某一特定信息,比如输入或者输出表等。
6.Debugger ,调试器被集成在IDA中,首先我们使用IDA装入文件,来生成数据库,用户可以使用反汇编功能,查看所有反汇编信息,这些均可以在调试器中进行和使用。
7.Options ,在这里可以进行一下常规性的设置。
8.Windows,
9.Help,使用IDA的一些帮助文档,检查更新等等。
0x1
unexplored 未开发
instruction 指令
external symbol 外部符号
Number of opcode bytes
Names窗口
D:数据
A:字符串
F:常规函数,非库函数
I:共享库导入的函数名称
L:库函数
未知名称:
sub_XXXXX 地址XXXX的子例程
loc_XXXXX 地址XXXX的一个指令
byte/word/dword_XXXXX 地址XXXX的8/16/32位数据
unk_XXXXX 地址XXXX的未知数据
IDA栈视图:
从开始,IDA提供了一个摘要栈视图
局部变量以var_为前缀,跟一个表示变量与被保存的栈指针之间的距离(以字节为单位)的十六进制后缀
函数参数(传入参数)名以arg_为前缀,后面跟表示其与最顶端的参数之间的相对距离的十六进制后缀,因此最顶端4字节参数名为arg_0,而随后为arg_4等
IDA只会为在函数中直接引用的栈变量自动生成名称
双击任一变量,即可进入详细视图
标记:dd一个储存字节 dw两个储存字节(也叫字) dd四个储存字节,双字