-
C++反汇编和逆向分析技术揭秘资料合集.rar
【实例简介】第一部分 准备工作 1
第1章 熟悉工作环境和相关工具 2
1.1调试工具Microsoft Visual C++ 6和OllyDBG 2
1.2反汇编静态分析工具IDA 5
1.3反汇编引擎的工作原理 9
1.4小结 16
第二部分 C++反汇编揭秘 17
第2章 基本数据类型的表现形式 18
2.1 整数类型 18
2.1.1 无符号整数 18
2.1.2 有符号整数 18
2.2 浮点数类型 19
2.2.1 浮点数的编码方式 20
2.2.2 浮点基本指令介绍 22
2.3 字符和字符串 26
2.3.1 字符的编码 26
2.3.2 字符串的存储方式 27
2.4 布尔类型 28
2.5 地址、指针和引用 28
2.5.1 指针和地址的区别 29
2.5.2 各类型指针的工作方式 29
2.5.3 引用 34
2.6 常量 35
2.6.1 常量的定义 36
2.6.2 #define和const的区别 36
2.7 小结 38
第3章 认识启动函数,找到用户入口 39
3.1程序的真正入口 39
3.2了解VC++6.0的启动函数 39
3.3 main函数的识别 44
3.4 小结 46
第4章 观察各种表达式的求值过程 47
4.1算术运算和赋值 47
4.1.1各种算术运算的工作形式 47
4.1.2算术结果溢出 85
4.1.3再论自增和自减 86
4.2关系运算和逻辑运算 88
4.2.1关系运算和条件跳转的对应 88
4.2.2表达式短路 89
4.2.3条件表达式 92
4.3位运算 96
4.4编译器使用的优化技巧 99
4.4.1流水线优化规则 102
4.4.2分支优化规则 105
4.4.3 cache优化规则 106
4.5一次算法逆向之旅 106
4.6 本章小结 116
第5章 流程控制语句的识别 117
5.1 if语句 117
5.2 if…else…语句 119
5.3 用if构成的多分支流程 123
5.4 switch的真相 128
5.5 难以构成跳转表的switch 139
5.6 降低判定树的高度 144
5.7 do/while/for的比较 149
5.8 编译器对循环结构的优化 156
5.9 本章小结 161
第6章 函数的工作原理 162
6.1栈帧的形成和关闭 162
6.2各种调用方式的考察 165
6.3使用ebp或esp寻址 170
6.4函数的参数 174
6.5函数的返回值 177
6.6 回顾 181
6.7 本章小结 182
第7章 变量在内存中的位置和访问方式 183
………… 篇幅有限,部分内容省略…………
12.3 虚基类 339
12.4 菱形继承 341
12.5本章小结 349
第13章 异常处理 351
13.1异常处理的相关知识 351
13.2异常类型为基本数据类型的处理流程 358
13.3异常类型为对象的处理流程 369
13.4识别异常处理 375
13.5本章小结 389
第三部分 逆向分析技术应用 391
第14章 PEiD的工作原理分析 391
14.1 开发环境的识别 391
14.2 开发环境的伪造 401
14.3 本章小结 405
第15章 “熊猫烧香”病毒逆向分析 406
15.1 调试环境配置 406
15.2 病毒程序初步分析 407
15.3 “熊猫烧香”的启动过程分析 410
15.4 “熊猫烧香”的自我保护分析 416
15.5 “熊猫烧香”的感染过程分析 419
15.6 小结 431
第16章 分析调试器OllyDBG的工作原理 432
16.1 INT3断点 432
16.2 内存断点 437
16.3 硬件断点 443
16.4 异常处理机制 450
16.5 加载调试程序 458
16.6 小结 462
第17章 反汇编代码的重建与编译 463
17.1 重建反汇编代码 463
17.2 编译重建后的反汇编代码 466
17.3 小结 468
- 2021-11-24 00:36:47下载
- 积分:1
-
常用IGBT型号与参数
主要是用于IGBT器件的选型,帮助工程师参考各个器件的参数
- 2020-12-10下载
- 积分:1
-
基于Matlab/GUI的FIR数字滤波器设计
采用窗函数法、等波纹最佳逼近法设计实现低通、高通、带通、带阻等不同类型的FIR数字滤波器。
- 2020-11-28下载
- 积分:1
-
mysql + java swing开发的教务管理系统
完成管理员、学生、教师权限控制,完成通知公告、学生选课、成绩提交、教室预约等功能,详情请看博客:https://blog.csdn.net/qq_36282404/article/details/80600705
- 2020-11-28下载
- 积分:1
-
Turbo 码MAP 译码算法的研究与仿真
【实例简介】1993 年,法国的C.Berrou 等人提出了一种新的纠错编码方式—Turbo 码,当交织
长度足够长时,其性能接近Shannon 信道编码极限值,因此Turbo 码的出现,被看作是信道
编码理论发展史的一个里程碑,它使人们设计信道编码的方法从增加码的最小汉明距离转向
减少低重量码字的个数。Turbo 码性能优异,已经被确定为第三代通信系统的信道编码方案
之一。本文介绍了Turbo 码的编译码原理及其在TD-SCDMA 通信系统中的应用情况;结合
Turbo 码的迭代译码过程,重点讨论MAP 译码算法的详细推导和具体应用方法;根据
3GPP25.222 协议中定义的Turbo 码标准,从不同角度进行MAP 译码算法的MATLAB 仿真。
根据仿真结果,分析MAP 算法的译码性能,并且就设计参数对译码性能的影响进行了比较
性分析。
- 2021-11-13 00:31:39下载
- 积分:1
-
基于分数阶傅里叶变换的参数估计
分数阶傅里叶变换作为一种线性变换, 能够实现线性调频信号检测与分离。而多项式相位信号在短时间内可以由线性调频信号提供良好的近似, 故可以采用短时分数阶傅里叶变换实现多线性调频分量的检测与分离。对每个短时信号的时频分析进行叠加组合, 即得到多个多项式相位信号的时频分析检测。计算机模拟仿真证明了此方法的有效性。
- 2020-12-03下载
- 积分:1
-
利用matlab实现的简单的基于卡尔曼滤波的跟踪算法.rar
利用matlab实现的简单的基于卡尔曼滤波的跟踪算法
- 2020-11-04下载
- 积分:1
-
弹塑性力学Fortran算例
弹塑性力学
- 2021-05-06下载
- 积分:1
-
labview实现usrp仿真实现
labview实现usrp仿真实现信号的接收和发送功能,是一种实用的范例和学习程序
- 2020-12-03下载
- 积分:1
-
64位与32位 rxtxserial.dll/rxtxParallel.dll
windows64位/32位串口开发用到的rxtxParallel.dll和rxtxSerial.dll
- 2020-12-05下载
- 积分:1