【IDA反汇编c源程序:函数调用】

握草 2018-04-01 09:23:31

#include <stdio.h>

void f();
int main(void)
{
printf("How are you!\n");
f();
return 0;
}

void f()
{
prinf("I am fine!\n");
}



00000000 23696E and bp,[bx+di+0x6e]
00000003 636C75 arpl [si+0x75],bp
00000006 6465203C and [gs:si],bh
0000000A 7374 jnc 0x80
0000000C 64696F2E683E imul bp,[fs:bx+0x2e],word 0x3e68
00000012 0A0A or cl,[bp+si]
00000014 766F jna 0x85
00000016 6964206628 imul sp,[si+0x20],word 0x2866
0000001B 293B sub [bp+di],di
0000001D 0A0A or cl,[bp+si]
0000001F 696E74206D imul bp,[bp+0x74],word 0x6d20
00000024 61 popa
00000025 696E28290A imul bp,[bp+0x28],word 0xa29
0000002A 7B0A jpo 0x36
0000002C 2020 and [bx+si],ah
0000002E 2020 and [bx+si],ah
00000030 2020 and [bx+si],ah
00000032 2020 and [bx+si],ah
00000034 7072 jo 0xa8
00000036 696E746628 imul bp,[bp+0x74],word 0x2866
0000003B 22486F and cl,[bx+si+0x6f]
0000003E 7720 ja 0x60
00000040 61 popa
00000041 7265 jc 0xa8
00000043 20796F and [bx+di+0x6f],bh
00000046 7521 jnz 0x69
00000048 5C pop sp
00000049 6E outsb
0000004A 2229 and ch,[bx+di]
0000004C 3B0A cmp cx,[bp+si]
0000004E 2020 and [bx+si],ah
00000050 2020 and [bx+si],ah
00000052 2020 and [bx+si],ah
00000054 2020 and [bx+si],ah
00000056 662829 o32 sub [bx+di],ch
00000059 3B0A cmp cx,[bp+si]
0000005B 2020 and [bx+si],ah
0000005D 2020 and [bx+si],ah
0000005F 2020 and [bx+si],ah
00000061 2020 and [bx+si],ah
00000063 7265 jc 0xca
00000065 7475 jz 0xdc
00000067 726E jc 0xd7
00000069 2030 and [bx+si],dh
0000006B 3B0A cmp cx,[bp+si]
0000006D 7D0A jnl 0x79
0000006F 0A766F or dh,[bp+0x6f]
00000072 6964206628 imul sp,[si+0x20],word 0x2866
00000077 290A sub [bp+si],cx
00000079 7B0A jpo 0x85
0000007B 2020 and [bx+si],ah
0000007D 2020 and [bx+si],ah
0000007F 2020 and [bx+si],ah
00000081 2020 and [bx+si],ah
00000083 7072 jo 0xf7
00000085 696E746628 imul bp,[bp+0x74],word 0x2866
0000008A 224920 and cl,[bx+di+0x20]
0000008D 61 popa
0000008E 6D insw
0000008F 206669 and [bp+0x69],ah
00000092 6E outsb
00000093 65215C6E and [gs:si+0x6e],bx
00000097 2229 and ch,[bx+di]
00000099 3B0A cmp cx,[bp+si]
0000009B 7D0A jnl 0xa7

===============================
上面是用c语言写的source code,下面是用16位idapro反汇编的结果。
问题是,明明调用了函数,为什么在汇编代码中看不到call指令和ret指令??有人可以解释下吗?
...全文
1151 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2018-04-02
  • 打赏
  • 举报
回复
http://edu.csdn.net/course/detail/2344 C语言指针与汇编内存地址-一.代码要素 http://edu.csdn.net/course/detail/2455 C语言指针与汇编内存地址-二.函数
赵4老师 2018-04-02
  • 打赏
  • 举报
回复
代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。 提醒:再牛×的老师也无法代替学生自己领悟和上厕所! 单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。
  • 打赏
  • 举报
回复
确实,你很细心。
zara 2018-04-02
  • 打赏
  • 举报
回复
不是的,好像是反的源程序
  • 打赏
  • 举报
回复
这应该是生成的32/64位程序,然后当成16位exe反汇编了。
握草 2018-04-01
  • 打赏
  • 举报
回复
是int main,上面不小心打错了
zara 2018-04-01
  • 打赏
  • 举报
回复
你这显然不对啊,贴出来的看着应该是些提示的字符串,不是指令。
你没选对模式,不过一般会自动根据文件进行选择的?你的程序运行了没问题?什么运行环境?通常是 pe格式吧。
稀缺资源 iOS应用逆向工程: 分析与实战是iOS应用逆向工程方面的权威著作,三位作者都是iOS领域内的专家,拥有扎实的理论知识和丰富的实践经验。本书内容以工具+代码的形式全面、系统地展开知识点,由浅入深,图文并茂地带着读者一步步探索常规iOS App之外的世界。 《iOS应用逆向工程:分析与实战》分为四大部分,分别是概念、工具、理论和实战。前三部分介绍iOS逆向分析领域的背景、知识体系,以及相应的工具集、理论知识;第四部分则通过4个实际案例来将前面的知识以实战的方式展开。第一部分为概念篇,简单介绍iOS逆向分析的概念以及iOS平台系统架构。第二部分为工具篇,介绍一系列基于Mac和iOS平台的配套工具,并且重点讲解其中的class-dump、Theos、Reveal、IDA、GDB等5个工具的使用方法,前3个侧重于使用,后2个侧重于分析。第三部分为理论篇,主要讲述iOS逆向/越狱方向的进阶必备理论知识。第四部分为实战篇,通过对3个App Store App及1个系统App进行逆向分析的实战操作,让读者能够了解并同步实践已掌握的知识。 iOS应用逆向工程:分析与实战 目录: 推荐序一 推荐序二 自序 前言 第一部分 概念篇 第1 章  iOS 逆向工程简介 2 1.1  iOS 软件逆向工程的要求 2 1.2  iOS 软件逆向工程的作用 2 1.2.1  与安全相关的iOS 逆向工程 4 1.2.2  与开发相关的iOS 逆向工程 5 1.3  iOS 软件逆向工程的一般过程 6 1.3.1  系统分析 7 1.3.2  代码分析 7 1.4  iOS 软件逆向工程用到的工具 8 1.4.1  监测工具 8 1.4.2  开发工具 9 1.4.3  反编译器 9 1.4.4  调试器 10 1.5  小结 11 第2 章 越狱iOS 平台简介 12 2.1  iOS 系统架构 12 2.1.1  iOS 目录结构 13 2.1.2  iOS 文件权限 15 2.2  iOS 程序类型 16 2.2.1  Application 16 2.2.2  Dynamic Library 19 2.2.3  Daemon 19 2.3  小结 20 第二部分 工具篇 第3 章 Mac 工具集 22 3.1  class-dump 22 3.1.1  class-dump 介绍及下载 22 3.1.2  class-dump 使用演示 23 3.1.3  关于class-dump 的补充说明 25 3.2  Theos 25 3.2.1  Theos 简介 25 3.2.2  Theos 安装及编译 26 3.2.3  Theos 用法简介 28 3.2.4  Theos 开发tweak 示例 47 3.3  Reveal 49 3.3.1  Reveal 简介 49 3.3.2  Reveal 安装及功能扩展 50 3.4  IDA 55 3.4.1  IDA 简介 55 3.4.2  IDA 使用说明 56 3.4.3  IDA 分析示例 65 3.5  其他工具 68 3.5.1  iTools 68 3.5.2  dyld_decache 69 3.5.3  MesaSQLite 69 3.6  小结 70 第4 章 iOS 工具集 71 4.1  SBSettings 71 4.2  MobileSubstrate 72 4.3  OpenSSH 73 4.4  GDB 74 4.4.1  GDB 简介 74 4.4.2  GDB 的使用说明 74 4.5  Cycript 85 4.6  其他常用工具 88 4.6.1  BigBoss RecommendedTools 88 4.6.2  AppCrackr 88 4.6.3  iFile 89 4.6.4  MobileTerminal 89 4.6.5  Vi IMproved 90 4.6.6  SQLite 90 4.6.7  top 91 4.6.8  syslogd 92 4.7  小结 92 第三部分 理论篇 第5 章  Objective-C 相关的iOS逆向理论基础 94 5.1  tweak 的作用原理 94 5.1.1  Objective-C 语言的特性 94 5.1.2  MobileSubstrate 96 5.2  tweak 的编写套路 97 5.2.1  灵感的来源 98 5.2.2  分析文件,寻找切入点 99 5.2.3  定位目标函数 102 5.2.4  测试函数功
第二个压缩包 加密解密 前言 第1章 初识加密解密技术 1 1.1 加密解密技术基础 2 1.1.1 密码学简述 2 1.1.2 常用汇编语言命令 2 1.1.3 破解密码的常用方式 4 1.1.4 壳的作用和分类 5 1.2 文件读写与动态链接库文件 6 1.2.1 INI文件与自定义文件的读写 6 1.2.2 在Delphi中建立和使用DLL文件 10 1.2.3 DLL文件的调用方法 12 1.3 设计与发布包组件 14 1.3.1 包组件概述 14 1.3.2 设计与发布包组件 15 1.3.3 安装与卸载包组件 17 1.4 解密与注册保护 19 1.4.1 解密方式 19 1.4.2 注册保护方式 19 1.5 试用期限制功能 21 1.5.1 试用次数限制功能 21 1.5.2 试用天数限制功能 25 1.5.3 试用日期限制功能 31 1.5.4 执行时间限制功能 36 1.5.5 NAG窗口提示限制 37 1.6 专家点拨:常见问题解答 42 第2章 常用代码分析工具 43 2.1 初识PE格式文件 44 2.1.1 PE格式文件概述 44 2.1.2 检验PE格式文件 46 2.1.3 PE文件格式的头结构 46 2.1.4 设置Optional Header可执行信息 49 2.1.5 Section Table结构数组 51 2.1.6 Import Table输入表 52 2.1.7 Export Table输出表 53 2.1.8 重定位表 54 2.2 简述代码分析实战 55 2.2.1 虚拟地址与偏移地址 55 2.2.2 搜索程序入口点OEP 58 2.2.3 转储程序与修复输入表 58 2.2.4 用增加重定位项调用引入表函数 62 2.3 常见静态分析工具 63 2.3.1 常见程序类型分析工具 63 2.3.2 常见资源编辑器工具 64 2.3.3 常见反汇编分析工具 66 2.4 常见动态分析工具 67 2.5 常见注册表分析工具 68 2.5.1 注册表编辑器Regedit 68 2.5.2 注册表监控工具Regsnap 71 2.5.3 注册表数据库监视软件Regmon 73 2.5.4 注册表静态比较工具RegShot 74 2.6 专家点拨:常见问题解答 75 第3章 不同的加密解密算法 76 3.1 数据加密的缘由 77 3.1.1 数据加密技术概述 77 3.1.2 为什么要进行数据加密 77 3.1.3 数据加密的原理 77 3.1.4 加密技术与密码分析 79 3.2 Hash算法基础 81 3.2.1 CRC32算法 81 3.2.2 MD5算法 82 3.2.3 SHA算法 85 3.3 对称密码算法基础 87 3.3.1 对称密码算法概述 88 3.3.2 BlowFish算法概述 88 3.3.3 DES算法概述 90 3.3.4 IDEA算法概述 94 3.4 非对称密码算法基础 95 3.4.1 非对称密钥密码概述 95 3.4.2 RSA非对称密钥密码概述 95 3.4.3 DSA数据签名技术 96 3.4.4 Diffie-Hellman密钥交换系统概述 97 3.5 专家点拨:常见问题解答 97 第4章 静态分析解密工具 98 4.1 程序源代码概述 99 4.1.1 基本程序信息 99 4.1.2 反汇编源代码部分 101 4.2 常用反汇编工具 103 4.2.1 反汇编和调试工具W32Dasm 103 4.2.2 国产静态反编译工具C32asm 114 4.2.3 反汇编工具IDA Pro 116 4.3 实战静态分析解密 127 4.3.1 如何实现静态分析解密 127 4.3.2 汇编指令及其机器码值 128 4.3.3 判断真假注册码的方法 128 4.3.4 实例分析:静态破解Crackme3软件 129 4.4 注册机编写器keymake 131 4.4.1 为破解文件打个补丁 132 4.4.2 制作内存补丁 132 4.5 专家点拨:常见问题解答 133 第5章 动态调试解密工具 135 5.1 动态调试工具Ollydbg 136 5.1.1 初识Ollydbg 136 5.1.2 不同的配置选项 138 5.1.3 快速掌握常用功能 138 5.1.4 熟悉必要的插件 141 5.1.5 实现动态调试解密 141 5.1.6 实例1:解密加过UPX壳的Crackme程序 142 5.1.7 实例2:找出真的注册码 143 5.2 内核模式调试器SoftICE 144 5.2.1 配置SoftICE工具 144 5.2.2 实现SoftICE调用 148 5.2.3 激活SoftICE主窗口 148 5.2.4 快捷键与常用命令 150 5.2.5 快速找到程序入口处 157 5.2.6 多次跟踪的设置 158 5.2.7 用PE修改代码属性 158 5.3 动态反汇编调试器TRW2000 159 5.3.1 安装与配置TRW2000 160 5.3.2 呼出TRW2000调试窗口 162 5.3.3 常用命令和功能键 164 5.4 专家点拨:常见问题解答 169 第6章 各显其能的辅助工具 171 6.1 不同的编辑修改工具 172 6.1.1 十六进制编辑工具WinHex 172 6.1.2 十六进制查看器Hiew 175 6.1.3 十六进制编辑器HexWorkshop 179 6.1.4 文本编辑器UltraEdit 182 6.2 不同功效的监视工具 187 6.2.1 文件系统监视工具Filemon 187 6.2.2 API函数监视工具 188 6.2.3 MFC(微软库类)监视工具Mfcspy 190 6.3 编辑程序内部资源工具 191 6.3.1 用FreeRes工具修复资源 191 6.3.2 用工具eXeScope编辑程序内资源 192 6.3.3 用工具Festools管理系统资源 194 6.4 制作破解补丁工具 196 6.4.1 补丁制作工具dUP 196 6.4.2 绿色工具XCell 199 6.5 专家点拨:常见问题解答 200 第7章 揭秘壳的不同应用技术 201 7.1 不同的加壳压缩软件 202 7.1.1 DOS窗口下的文件压缩壳软件UPX 202 7.1.2 压缩各种可执行程序的ASPack 203 7.1.3 软件保护压缩工具Armadillo 204 7.1.4 国产外壳保护工具EncryptPE 207 7.2 查壳工具大放送 208 7.2.1 用Language2000查看加壳情况 208 7.2.2 功能强大的PEiDentifier 209 7.3 各具神通的脱壳工具 210 7.3.1 常用ASPack脱壳软件简介 210 7.3.2 通用脱壳工具UnPECompact 211 7.3.3 通用脱壳工具ProcDump 212 7.3.4 脱壳工具大集合UN-PACK 214 7.4 轻松实现手动脱壳 215 7.4.1 用ImportREC实现手动脱壳 216 7.4.2 重建可编辑资源 220 7.5 专家点拨:常见问题解答 220 第8章 别出心裁:为程序打上补丁 222 8.1 常用补丁制作工具 223 8.1.1 专业补丁制作工具CodeFusion 223 8.1.2 内存动态补丁工具Process Patcher 226 8.2 实例:网络客户端程序补丁 228 8.2.1 程序拦截的验证代码 228 8.2.2 增加自动修改机器号功能 229 8.2.3 用补丁修改程序 232 8.2.4 为程序附带一个动态链接库 234 8.2.5 用补丁加密可执行文件 235 8.3 代码自修改SMC技术 238 8.3.1 SMC函数定义 238 8.3.2 实例:SMC补丁技术应用 239 8.4 用CrackCode2000制作注册机 241 8.4.1 快速找到注册码 241 8.4.2 实现内存直接寻址 242 8.4.3 实现寄存器间接寻址 243 8.4.4 为Decompile Winhelp制作注册机 243 8.4.5 实例:CrackCode的加强模式 245 8.5 专家点拨:常见问题解答 247 第9章 网络验证技术大放送 248 9.1 实现Web服务器网络验证 249 9.1.1 加密客户端 249 9.1.2 控制本地计算机 252 9.2 实现本地服务器验证 256 9.2.1 加密客户端 257 9.2.2 加密服务器端 259 9.3 在线升级验证加密技术 261 9.3.1 在线升级验证实现 261 9.3.2 实例分析:在线升级验证 262 9.4 专家点拨:常见问题解答 268 第10章 各种常用加密软件工具的使用 269 10.1 多媒体文件加密工具 270 10.1.1 多媒体加密工具Private Pix 270 10.1.2 图片软件加密工具CryptaPix 272 10.1.3 图片文件专业加密工具WinXFiles 273 10.2 多功能文件加密工具 276 10.2.1 数据加密和安全通讯工具“文件密使” 276 10.2.2 可加密各种格式文件的BlackBox 281 10.2.3 对称加密算法工具ABI-CODER 286 10.2.4 国产加密工具“加密精灵” 288 10.3 专家点拨:常见问题解答 291 第11章 分析软件的不同注册方式 292 11.1 简单的注册码保护方式 293 11.1.1 追踪简单算法 293 11.1.2 简单注册码的破解 294 11.1.3 API函数常用断点及实例 298 11.2 按钮功能限制 308 11.2.1 按钮功能限制概述 308 11.2.2 突破按钮限制 309 11.2.3 按钮限制解密实例 311 11.3 NAG窗口 312 11.3.1 NAG窗口实例1 313 11.3.2 NAG窗口实例2 317 11.4 加密狗解密 319 11.4.1 判断加密狗类型 319 11.4.2 加密狗解密实例 320 11.5 专家点拨:常见问题解答 325 第12章 编辑安装包程序 326 12.1 InstallShield 327 12.1.1 InstallShield使用介绍 327 12.1.2 编辑CAB压缩包 341 12.2 Wise安装包软件 343 12.3 Setup Factory安装包制作工具 343 12.4 Inno Setup安装制作软件 352 12.4.1 Inno Setup的使用介绍 352 12.4.2 Inno Setup的脚本语法介绍 357 12.4.3 压缩包的编辑 360 12.5 微软MSI安装包 360 12.6 专家点拨:常见问题解答 362 第13章 不同软件的保护措施 363 13.1 对抗不同的破解手段 364 13.1.1 对抗DeDe和动态调试 364 13.1.2 对抗SoftICE 365 13.1.3 对抗静态调试 367 13.1.4 实现磁盘文件自校验 368 13.2 不同软件的保护实现 369 13.2.1 把ASP编写成DLL 370 13.2.2 COM组件的Delphi实现 372 13.2.3 实现软件注册保护的VCL组件 377 13.2.4 利用伪装壳制造虚假信息 379 13.2.5 利用加密锁保护程序 380 13.3 邮件加密软件PGP 384 13.3.1 PGP概述 384 13.3.2 PGP的安全问题 385 13.4 专家点拨:常见问题解答 390 第14章 常用软件加密解密技术 391 14.1 加密解密Word文件 392 14.1.1 Word自身功能加密 392 14.1.2 利用AOPR解密Word文档 393 14.1.3 风语文件加密工具 395 14.1.4 Word Password Recovery破解工具 395 14.1.5 Word密码查看器 396 14.2 Excel文件加密解密 397 14.2.1 实现Excel自加密 397 14.2.2 办公文件密码恢复程序 398 14.2.3 Excel加密文档解密工具Excel Key 399 14.3 PDF文件的加密解密 400 14.3.1 加密PDF文件 400 14.3.2 使用PDF文件加密器 402 14.3.3 Advanced PDF Password Recovery 404 14.3.4 用PDF Password Remover解除PDF文件口令 406 14.4 宏加密解密技术 408 14.4.1 实现宏技术加密 408 14.4.2 宏解密工具VBA Key 411 14.5 对压缩文件实施加密解密 411 14.5.1 实现WinZip自加密 412 14.5.2 解除ZIP文件口令 413 14.5.3 实现WinRAR自加密 413 14.5.4 解除RAR文件密码 414 14.6 加密解密EXE文件 415 14.6.1 用ASPack加密EXE文件 415 14.6.2 用tElock加密EXE文件 417 14.6.3 为EXE文件加口令 419 14.7 解密MS SQL Server保护 420 14.7.1 实现本地用户的帐户登录 420 14.7.2 查询分析器的使用 420 14.7.3 多功能密码破解软件 421 14.8 加密解密网页与脚本文件 423 14.8.1 网页与脚本的加密 423 14.8.2 网页与脚本的解密 428 14.9 专家点拨:常见问题解答 430
由于限制,分开了 2 个文件,请大家一起下载在解压,请谅解 《完全掌握加密解密实战超级手册》紧紧围绕软件的加密与解密来进行讲解,在详细讲述加密/解密技术的同时,还介绍了相应的实现原理,并配合案例分析,使读者能够系统、深入地了解加密/解密技术,能够更深层次地理解他人的编程思路,从而更好地提高自己的编程水平。全书共分为14章,包括:加密解密技术基础、常用代码分析工具、不同的加密解密算法、静态分析解密工具、动态调试解密工具、辅助工具、壳的不同应用技术、为程序打上补丁、网络验证技术、常用加密工具、不同的注册保护方式、编辑安装包程序、不同软件的保护措施、常用软件加密解密技术等。 《完全掌握加密解密实战超级手册》讲解通俗,深入浅出,注重实践,适用于广大计算机软件加密解密技术新手、爱好者,适用于软件开发从业人员和编程爱好者,也非常适合大专院校相关专业学生,以及有志于从事安全或加解密行业的准专业人员快速掌握实用技术 前言 第1章 初识加密解密技术 1 1.1 加密解密技术基础 2 1.1.1 密码学简述 2 1.1.2 常用汇编语言命令 2 1.1.3 破解密码的常用方式 4 1.1.4 壳的作用和分类 5 1.2 文件读写与动态链接库文件 6 1.2.1 INI文件与自定义文件的读写 6 1.2.2 在Delphi中建立和使用DLL文件 10 1.2.3 DLL文件的调用方法 12 1.3 设计与发布包组件 14 1.3.1 包组件概述 14 1.3.2 设计与发布包组件 15 1.3.3 安装与卸载包组件 17 1.4 解密与注册保护 19 1.4.1 解密方式 19 1.4.2 注册保护方式 19 1.5 试用期限制功能 21 1.5.1 试用次数限制功能 21 1.5.2 试用天数限制功能 25 1.5.3 试用日期限制功能 31 1.5.4 执行时间限制功能 36 1.5.5 NAG窗口提示限制 37 1.6 专家点拨:常见问题解答 42 第2章 常用代码分析工具 43 2.1 初识PE格式文件 44 2.1.1 PE格式文件概述 44 2.1.2 检验PE格式文件 46 2.1.3 PE文件格式的头结构 46 2.1.4 设置Optional Header可执行信息 49 2.1.5 Section Table结构数组 51 2.1.6 Import Table输入表 52 2.1.7 Export Table输出表 53 2.1.8 重定位表 54 2.2 简述代码分析实战 55 2.2.1 虚拟地址与偏移地址 55 2.2.2 搜索程序入口点OEP 58 2.2.3 转储程序与修复输入表 58 2.2.4 用增加重定位项调用引入表函数 62 2.3 常见静态分析工具 63 2.3.1 常见程序类型分析工具 63 2.3.2 常见资源编辑器工具 64 2.3.3 常见反汇编分析工具 66 2.4 常见动态分析工具 67 2.5 常见注册表分析工具 68 2.5.1 注册表编辑器Regedit 68 2.5.2 注册表监控工具Regsnap 71 2.5.3 注册表数据库监视软件Regmon 73 2.5.4 注册表静态比较工具RegShot 74 2.6 专家点拨:常见问题解答 75 第3章 不同的加密解密算法 76 3.1 数据加密的缘由 77 3.1.1 数据加密技术概述 77 3.1.2 为什么要进行数据加密 77 3.1.3 数据加密的原理 77 3.1.4 加密技术与密码分析 79 3.2 Hash算法基础 81 3.2.1 CRC32算法 81 3.2.2 MD5算法 82 3.2.3 SHA算法 85 3.3 对称密码算法基础 87 3.3.1 对称密码算法概述 88 3.3.2 BlowFish算法概述 88 3.3.3 DES算法概述 90 3.3.4 IDEA算法概述 94 3.4 非对称密码算法基础 95 3.4.1 非对称密钥密码概述 95 3.4.2 RSA非对称密钥密码概述 95 3.4.3 DSA数据签名技术 96 3.4.4 Diffie-Hellman密钥交换系统概述 97 3.5 专家点拨:常见问题解答 97 第4章 静态分析解密工具 98 4.1 程序源代码概述 99 4.1.1 基本程序信息 99 4.1.2 反汇编源代码部分 101 4.2 常用反汇编工具 103 4.2.1 反汇编和调试工具W32Dasm 103 4.2.2 国产静态反编译工具C32asm 114 4.2.3 反汇编工具IDA Pro 116 4.3 实战静态分析解密 127 4.3.1 如何实现静态分析解密 127 4.3.2 汇编指令及其机器码值 128 4.3.3 判断真假注册码的方法 128 4.3.4 实例分析:静态破解Crackme3软件 129 4.4 注册机编写器keymake 131 4.4.1 为破解文件打个补丁 132 4.4.2 制作内存补丁 132 4.5 专家点拨:常见问题解答 133 第5章 动态调试解密工具 135 5.1 动态调试工具Ollydbg 136 5.1.1 初识Ollydbg 136 5.1.2 不同的配置选项 138 5.1.3 快速掌握常用功能 138 5.1.4 熟悉必要的插件 141 5.1.5 实现动态调试解密 141 5.1.6 实例1:解密加过UPX壳的Crackme程序 142 5.1.7 实例2:找出真的注册码 143 5.2 内核模式调试器SoftICE 144 5.2.1 配置SoftICE工具 144 5.2.2 实现SoftICE调用 148 5.2.3 激活SoftICE主窗口 148 5.2.4 快捷键与常用命令 150 5.2.5 快速找到程序入口处 157 5.2.6 多次跟踪的设置 158 5.2.7 用PE修改代码属性 158 5.3 动态反汇编调试器TRW2000 159 5.3.1 安装与配置TRW2000 160 5.3.2 呼出TRW2000调试窗口 162 5.3.3 常用命令和功能键 164 5.4 专家点拨:常见问题解答 169 第6章 各显其能的辅助工具 171 6.1 不同的编辑修改工具 172 6.1.1 十六进制编辑工具WinHex 172 6.1.2 十六进制查看器Hiew 175 6.1.3 十六进制编辑器HexWorkshop 179 6.1.4 文本编辑器UltraEdit 182 6.2 不同功效的监视工具 187 6.2.1 文件系统监视工具Filemon 187 6.2.2 API函数监视工具 188 6.2.3 MFC(微软库类)监视工具Mfcspy 190 6.3 编辑程序内部资源工具 191 6.3.1 用FreeRes工具修复资源 191 6.3.2 用工具eXeScope编辑程序内资源 192 6.3.3 用工具Festools管理系统资源 194 6.4 制作破解补丁工具 196 6.4.1 补丁制作工具dUP 196 6.4.2 绿色工具XCell 199 6.5 专家点拨:常见问题解答 200 第7章 揭秘壳的不同应用技术 201 7.1 不同的加壳压缩软件 202 7.1.1 DOS窗口下的文件压缩壳软件UPX 202 7.1.2 压缩各种可执行程序的ASPack 203 7.1.3 软件保护压缩工具Armadillo 204 7.1.4 国产外壳保护工具EncryptPE 207 7.2 查壳工具大放送 208 7.2.1 用Language2000查看加壳情况 208 7.2.2 功能强大的PEiDentifier 209 7.3 各具神通的脱壳工具 210 7.3.1 常用ASPack脱壳软件简介 210 7.3.2 通用脱壳工具UnPECompact 211 7.3.3 通用脱壳工具ProcDump 212 7.3.4 脱壳工具大集合UN-PACK 214 7.4 轻松实现手动脱壳 215 7.4.1 用ImportREC实现手动脱壳 216 7.4.2 重建可编辑资源 220 7.5 专家点拨:常见问题解答 220 第8章 别出心裁:为程序打上补丁 222 8.1 常用补丁制作工具 223 8.1.1 专业补丁制作工具CodeFusion 223 8.1.2 内存动态补丁工具Process Patcher 226 8.2 实例:网络客户端程序补丁 228 8.2.1 程序拦截的验证代码 228 8.2.2 增加自动修改机器号功能 229 8.2.3 用补丁修改程序 232 8.2.4 为程序附带一个动态链接库 234 8.2.5 用补丁加密可执行文件 235 8.3 代码自修改SMC技术 238 8.3.1 SMC函数定义 238 8.3.2 实例:SMC补丁技术应用 239 8.4 用CrackCode2000制作注册机 241 8.4.1 快速找到注册码 241 8.4.2 实现内存直接寻址 242 8.4.3 实现寄存器间接寻址 243 8.4.4 为Decompile Winhelp制作注册机 243 8.4.5 实例:CrackCode的加强模式 245 8.5 专家点拨:常见问题解答 247 第9章 网络验证技术大放送 248 9.1 实现Web服务器网络验证 249 9.1.1 加密客户端 249 9.1.2 控制本地计算机 252 9.2 实现本地服务器验证 256 9.2.1 加密客户端 257 9.2.2 加密服务器端 259 9.3 在线升级验证加密技术 261 9.3.1 在线升级验证实现 261 9.3.2 实例分析:在线升级验证 262 9.4 专家点拨:常见问题解答 268 第10章 各种常用加密软件工具的使用 269 10.1 多媒体文件加密工具 270 10.1.1 多媒体加密工具Private Pix 270 10.1.2 图片软件加密工具CryptaPix 272 10.1.3 图片文件专业加密工具WinXFiles 273 10.2 多功能文件加密工具 276 10.2.1 数据加密和安全通讯工具“文件密使” 276 10.2.2 可加密各种格式文件的BlackBox 281 10.2.3 对称加密算法工具ABI-CODER 286 10.2.4 国产加密工具“加密精灵” 288 10.3 专家点拨:常见问题解答 291 第11章 分析软件的不同注册方式 292 11.1 简单的注册码保护方式 293 11.1.1 追踪简单算法 293 11.1.2 简单注册码的破解 294 11.1.3 API函数常用断点及实例 298 11.2 按钮功能限制 308 11.2.1 按钮功能限制概述 308 11.2.2 突破按钮限制 309 11.2.3 按钮限制解密实例 311 11.3 NAG窗口 312 11.3.1 NAG窗口实例1 313 11.3.2 NAG窗口实例2 317 11.4 加密狗解密 319 11.4.1 判断加密狗类型 319 11.4.2 加密狗解密实例 320 11.5 专家点拨:常见问题解答 325 第12章 编辑安装包程序 326 12.1 InstallShield 327 12.1.1 InstallShield使用介绍 327 12.1.2 编辑CAB压缩包 341 12.2 Wise安装包软件 343 12.3 Setup Factory安装包制作工具 343 12.4 Inno Setup安装制作软件 352 12.4.1 Inno Setup的使用介绍 352 12.4.2 Inno Setup的脚本语法介绍 357 12.4.3 压缩包的编辑 360 12.5 微软MSI安装包 360 12.6 专家点拨:常见问题解答 362 第13章 不同软件的保护措施 363 13.1 对抗不同的破解手段 364 13.1.1 对抗DeDe和动态调试 364 13.1.2 对抗SoftICE 365 13.1.3 对抗静态调试 367 13.1.4 实现磁盘文件自校验 368 13.2 不同软件的保护实现 369 13.2.1 把ASP编写成DLL 370 13.2.2 COM组件的Delphi实现 372 13.2.3 实现软件注册保护的VCL组件 377 13.2.4 利用伪装壳制造虚假信息 379 13.2.5 利用加密锁保护程序 380 13.3 邮件加密软件PGP 384 13.3.1 PGP概述 384 13.3.2 PGP的安全问题 385 13.4 专家点拨:常见问题解答 390 第14章 常用软件加密解密技术 391 14.1 加密解密Word文件 392 14.1.1 Word自身功能加密 392 14.1.2 利用AOPR解密Word文档 393 14.1.3 风语文件加密工具 395 14.1.4 Word Password Recovery破解工具 395 14.1.5 Word密码查看器 396 14.2 Excel文件加密解密 397 14.2.1 实现Excel自加密 397 14.2.2 办公文件密码恢复程序 398 14.2.3 Excel加密文档解密工具Excel Key 399 14.3 PDF文件的加密解密 400 14.3.1 加密PDF文件 400 14.3.2 使用PDF文件加密器 402 14.3.3 Advanced PDF Password Recovery 404 14.3.4 用PDF Password Remover解除PDF文件口令 406 14.4 宏加密解密技术 408 14.4.1 实现宏技术加密 408 14.4.2 宏解密工具VBA Key 411 14.5 对压缩文件实施加密解密 411 14.5.1 实现WinZip自加密 412 14.5.2 解除ZIP文件口令 413 14.5.3 实现WinRAR自加密 413 14.5.4 解除RAR文件密码 414 14.6 加密解密EXE文件 415 14.6.1 用ASPack加密EXE文件 415 14.6.2 用tElock加密EXE文件 417 14.6.3 为EXE文件加口令 419 14.7 解密MS SQL Server保护 420 14.7.1 实现本地用户的帐户登录 420 14.7.2 查询分析器的使用 420 14.7.3 多功能密码破解软件 421 14.8 加密解密网页与脚本文件 423 14.8.1 网页与脚本的加密 423 14.8.2 网页与脚本的解密 428 14.9 专家点拨:常见问题解答 430

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧