Reverse前置知识点
IDA 逆向代码段说明
1 | .text段:text段是代码段,包含了程序的执行指令,即程序的可执行机器代码。 |
汇编知识
常见数据类型:
1 | - 字节型(DB,8个字节) |
寄存器知识点以及常见汇编代码:
1 | CS:IP:任意时刻,CPU将CS:IP指向的内容当作指令执行 |
常见寄存器及作用:
| 寄存器 | 描述 |
|---|---|
| EAX | 通用寄存器,用于存放函数返回值、算术运算结果等。 |
| EBX | 通用寄存器,用于存放内存地址或其他通用数据。 |
| ECX | 通用寄存器,用于存放函数参数。 |
| EDX | 通用寄存器,用于存放内存地址或其他通用数据。 |
| ESI | 通用寄存器,用于存放源数据的地址,例如字符串拷贝等操作。 |
| EDI | 通用寄存器,用于存放目标数据的地址,例如字符串拷贝等操作。 |
| EBP | 基址指针,用于存放当前栈帧的基址。 |
| ESP | 堆栈指针,用于存放当前堆栈顶部的地址。 |
| EIP | 指令指针,用于存放当前正在执行的指令的地址。 |
| EFLAGS | 标志寄存器,用于存放 CPU 的状态标志,例如进位标志、零标志、符号标志等。 |
常用的宏:
1 | LOWORD:取32位数的低16位 |
大小端序
1 | 大端序:0x12345678 |
函数通过参数输入:
1 | 在C语言中,main 函数是程序执行的入口点。int __cdecl main(int argc, const char **argv, const char **envp) 中的参数具有以下含义: |
最后
1 | 更多逆向知识,在bilibili上有视频教程,欢迎大家参考学习。 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Bbdolt's Blog!
