OD入门系列图文详细教程-破解做辅助起步(一)
OD破解常用方法
[分享] OD破解常用方法[复制链接]一、概论壳出于程序作者想对程序资源压缩、注册保护的目的,把壳分为压缩壳和加密壳两种顾名思义,压缩壳只是为了减小程序体积对资源进行压缩,加密壳是程序输入表等等进行加密保护。
当然加密壳的保护能力要强得多!二、常见脱壳方法预备知识1.PUSHAD (压栈)代表程序的入口点,2.POPAD (出栈)代表程序的出口点,与PUSHAD想对应,一般找到这个OEP就在附近3.OEP:程序的入口点,软件加壳就是隐藏了OEP(或者用了假的OEP/FOEP),只要我们找到程序真正的OEP,就可以立刻脱壳。
方法一:单步跟踪法1.用OD载入,点“不分析代码!”2.单步向下跟踪F8,实现向下的跳。
也就是说向上的跳不让其实现!(通过F4)3.遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断点——>运行到所选)4.绿色线条表示跳转没实现,不用理会,红色线条表示跳转已经实现!5.如果刚载入程序,在附近就有一个CALL的,我们就F7跟进去,不然程序很容易跑飞,这样很快就能到程序的OEP6.在跟踪的时候,如果运行到某个CALL程序就运行的,就在这个CALL中F7进入7.一般有很大的跳转(大跨段),比如jmp XXXXXX 或者JE XXXXXX 或者有RETN的一般很快就会到程序的OEP。
Btw:在有些壳无法向下跟踪的时候,我们可以在附近找到没有实现的大跳转,右键-->“跟随”,然后F2下断,Shift+F9运行停在“跟随”的位置,再取消断点,继续F8单步跟踪。
一般情况下可以轻松到达OEP!方法二:ESP定律法ESP定理脱壳(ESP在OD的寄存器中,我们只要在命令行下ESP的硬件访问断点,就会一下来到程序的OEP了!)1.开始就点F8,注意观察OD右上角的寄存器中ESP有没突现(变成红色)。
(这只是一般情况下,更确切的说我们选择的ESP值是关键句之后的第一个ESP值)2.在命令行下:dd XXXXXXXX(指在当前代码中的ESP地址,或者是hr XXXXXXXX),按回车!3.选中下断的地址,断点--->硬件访--->WORD断点。
使用OD编写连连看外挂
使用OD编写连连看外挂BYPhython邮箱:csfoffice2@给刚用OD想写外挂或是破解软件的新手准备,大鸟请直接无视。
工具准备:OllyDebug、连连看4.8连连看4.8其实长这样点击开始游戏后变成了这样我们的最终目标是要变成下图这样!!是不是很神奇?废话少说,现在开始。
第一步用OD打开zzllk.exe打开之后OD停留在了主程序入口界面思考一下,连连看使用鼠标左键单击来玩的游戏,因此一定有一个响应鼠标左键的消息处理函数,核心部分一定在这个函数中,目前的当务之急就是想办法找到这个函数。
在windows编程中,通常要用RegisterClassEx这个API函数来注册一个窗口类,它含有一个参数就是窗口过程回调函数用来处理类似鼠标单击之类的消息。
于是我们用Ctrl+G来寻找这个函数。
然而。
好遗憾!竟然没有找到这个函数,那么我们就得另想办法了!可是还有什么办法呢???我们知道,在程序退出的时候系统会向窗口过程回调函数发送一个WM_CLOSE的消息,在接收到这个消息的时候,程序员一般会在回调函数里用PostQuitMessage这个命令来退出程序。
因此,突破口就是这个PostQuitMessage结果还真的找到了!!目前停留在系统API的领空里,我们回到用户领空在这句下一个断点,然后运行连连看,点击右上角的关闭按钮会发现程序断在这里查看堆栈窗口,发现是从00438EEC调用过来的我们转到00438EEC上图就是44328EEC处的程序代码,就在这里调用了PostQuitMessage函数但是这段代码所处的函数很短,怀疑还有上一层函数,依旧用同样的方式,下断点并且返回,不过这次需要在OD中重新打开游戏了。
(我们在函数头部也就是00438ED2下断点,重新打开游戏,单击关闭按钮,程序停在下面这个界面)查看堆栈发现是从0042EECE附近调用过来的转到这里没错调用它的地址就是0042EEC9,我们给他加个注释“退出”理论上来说处理消息的回调函数就在这一层。
OllyDBG完美教程
OllyDBG完美教程(超强入门级)关键词:OD、OllyDBG、破解入门、调试专用工具、反汇编一、OllyDBG 的安装与配置OllyDBG 1.10 版的发布版本是个 ZIP 压缩包,只要解压到一个目录下,运行 OllyDBG.exe 就可以了。
汉化版的发布版本是个 RAR 压缩包,同样只需解压到一个目录下运行 OllyDBG.exe 即可:OllyDBG 中各个窗口的功能如上图。
简单解释一下各个窗口的功能,更详细的内容可以参考 TT 小组翻译的中文帮助:反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。
用鼠标左键点击注释标签可以切换注释显示的方式。
寄存器窗口:显示当前所选线程的 CPU 寄存器内容。
同样点击标签寄存器 (FPU) 可以切换显示寄存器的方式。
信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。
数据窗口:显示内存或文件的内容。
右键菜单可用于切换显示方式。
堆栈窗口:显示当前线程的堆栈。
要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下 OllyDBG 就可以生效了。
启动后我们要把插件及 UDD 的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签:因为我这里是把 OllyDBG 解压在 F:\OllyDBG 目录下,所以相应的 UDD 目录及插件目录按图上配置。
还有一个常用到的标签就是上图后面那个字体,在这里你可以更改 OllyDBG 中显示的字体。
上图中其它的选项可以保留为默认,若有需要也可以自己修改。
修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动 OllyDBG。
在这个对话框上点确定,重新启动一下 OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。
OD破解常用方法
一、概论壳出于程序作者想对程序资源压缩、注册保护的目的,把壳分为压缩壳和加密壳两种顾名思义,压缩壳只是为了减小程序体积对资源进行压缩,加密壳是程序输入表等等进行加密保护。
当然加密壳的保护能力要强得多!二、常见脱壳方法预备知识1.PUSHAD (压栈)代表程序的入口点,2.POPAD (出栈)代表程序的出口点,与PUSHAD想对应,一般找到这个OEP就在附近3.OEP:程序的入口点,软件加壳就是隐藏了OEP(或者用了假的OEP/FOEP),只要我们找到程序真正的OEP,就可以立刻脱壳。
方法一:单步跟踪法1.用OD载入,点“不分析代码!”2.单步向下跟踪F8,实现向下的跳。
也就是说向上的跳不让其实现!(通过F4)3.遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断点——>运行到所选)4.绿色线条表示跳转没实现,不用理会,红色线条表示跳转已经实现!5.如果刚载入程序,在附近就有一个CALL的,我们就F7跟进去,不然程序很容易跑飞,这样很快就能到程序的OEP6.在跟踪的时候,如果运行到某个CALL程序就运行的,就在这个CALL中F7进入7.一般有很大的跳转(大跨段),比如jmp XXXXXX 或者JE XXXXXX 或者有RETN的一般很快就会到程序的OEP。
Btw:在有些壳无法向下跟踪的时候,我们可以在附近找到没有实现的大跳转,右键-->“跟随”,然后F2下断,Shift+F9运行停在“跟随”的位置,再取消断点,继续F8单步跟踪。
一般情况下可以轻松到达OEP!方法二:ESP定律法ESP定理脱壳(ESP在OD的寄存器中,我们只要在命令行下ESP的硬件访问断点,就会一下来到程序的OEP了!)1.开始就点F8,注意观察OD右上角的寄存器中ESP有没突现(变成红色)。
(这只是一般情况下,更确切的说我们选择的ESP值是关键句之后的第一个ESP值)2.在命令行下:dd XXXXXXXX(指在当前代码中的ESP地址,或者是hr XXXXXXXX),按回车!3.选中下断的地址,断点--->硬件访--->WORD断点。
OD零基础入门级教程
首先,我要声明一下,本教程只局限于不懂破解的朋友,让你们了解并有机会深入破解!其次,诸位大神请高抬贵手,不要骂我。
虽然简易,但我的初衷是让不懂的人更有信心加入破解行列!最后,我们只需5步,让你了解一个程序被破解。
介绍一下这个软件吧,我写的一个简单的软件,方便初学者容易理解。
程序需要输入正确的帐号和密码才可以登录成功,否则登录失败。
可是我们不知道正确的帐号密码。
(也可以理解成是其他软件注册码)既然他能提示登录成功与登录失败(或某些软件提示注册码错误),就说明他有一个判断,我们来打开OD载入程序,让他判断所有字符都是成功。
(由于是初级零基础入门级教程,所以不涉及“各种壳”、“暗桩”等等系列干扰新手的元素)在左上角窗口右键,选择“中文搜索引擎”-“搜索ASCII”之后搜索(Ctrl+F)输入“登录失败”(也就是你不想看到的东西),找到结果后,我们双击那一行代码。
我们向上找找,这个判断跳转的来源在哪儿。
下图可以看到,在图片最上方的je命令左边有一条线,跳过了成功,指向了失败前面的代码。
我们在这行代码上右键,选择“二进制”-“NOP填充”就是让这个跳转失效。
那么现在,你所填写的注册码或密码,输入所有字符或不输入任何字符,都是正确的了!但是还没完,不用我说大家也知道,还需要保存一下~我们右键,选择“复制到可执行文件”-“所有”跳转后继续右键“保存文件”,生成一个新的文件,也就是破解补丁,覆盖源文件。
最后,我们来打开刚才保存出来的新程序(也就是我们破解后的程序),是不是真的被破解了?我们还同样输入“abc”,恭喜,成功破解!有了第一课的基础,大家是不是想试试身手,那么我们就拿个真实的软件试试身手吧!这一课,我们要利用第一课假软件的知识,来获得一个真实软件的注册码!这个软件其他视频教程也借用过,所以我也来借用一下。
*******************************************************************软件是一个IP搜索工具,有注册项,我们就来拿这个软件获得注册码,只需5步!注:(同样是初级软件,不涉及干扰新手学习的各种元素)下面是注册界面的截图注册后,截图就有提示出来了,暂且不管他提示的是什么,我们也知道要干什么了,对吗?好,OD载入程序,同样是按照第一集的步骤,搜索Name(如果第一个不是你要找的字符串,按“b”是查找下一个)很容易,第二个就找到了刚才提示的字符串,我们双击它!双击后,我们同样按照第一集的步骤,找到了跳转。
OD使用完全教程
教你如何破解软件,OD破解软件,OD使用教程教你如何破解软件,OD破解软件,OD使用教程大家好,这几天我上网大概看了一下,ITyouth论坛的内容真的应有尽有,不知道应该写什么了,所以我想了一晚上终于想到了还是教你们些破解知识吧!我想对大家来说都很有用吧!我将会一直坚持下去保证课堂质量,有不会的可以提出来问我,尽量解答(呵呵!我也是鸟嘛!)废话不多说!支持我的就往下看吧!先教大家一些基础知识,学习破解其实是要和程序打交道的,汇编是破解程序的必备知识,但有可能部分朋友都没有学习过汇编语言,所以我就在这里叫大家一些简单实用的破解语句吧!----------------------------------------------------------------------------------------------------------------语句:cmp a,b//cmp是比较的意思!在这里假如a=1,b=2 那么就是a与b比较大小.mov a,b//mov是赋值语句,把b的值赋给a.je/jz//就是相等就到指定位置(也叫跳转).jne/jnz//不相等就到指定位置.jmp//无条件跳转.jl/jb//若小于就跳.ja/jg//若大于就跳.jge//若大于等于就跳.----------------------------------------------------------------------------------------------------------------------这些都是我们在以后的课程中会经常遇到的语句,应该记住它们,接下来我们在讲讲破解工具的使用:我们破解或给软件脱壳最常用的软件就是OD全名叫ODbyDYK界面如图1它是一个功能很强大的工具,左上角是cpu窗口,分别是地址,机器码,汇编代码,注释;注释添加方便,而且还能即时显示函数的调用结果,返回值.右上角是寄存器窗口,但不仅仅反映寄存器的状况,还有好多东东;双击即可改变Eflag的值,对于寄存器,指令执行后发生改变的寄存器会用红色突出显示.cpu窗口下面还有一个小窗口,显示当前操作改变的寄存器状态.左下角是内存窗口.可以ascii或者unicode两种方式显示内存信息.右下角的是当前堆栈情况,还有注释啊.恩,今天的课程就上到这了,大家可以在自己的电脑下试试OD,了解了解OD,下堂课我将破解一款软件给大家看,我们就用今天讲的语句和OD来破解,在以后的课程里我还会教大家脱壳,因为现在的软件为了维护版权多数都加了壳的,所以要破解就必须脱壳!好了!下节课见!88OD下载地址:百度一下吧破解工具------ODbyDYK v1.10 12.06.rar 5.1MB【原创】"白拿"软件破解班(二)呵呵!大家好!我是散人,我们又见面了!恩,按照上节课说的那样今天来破解个软件给大家看看!大家只要认真看我的操作一定会!假如还是不明白的话提出难点帮你解决,还不行的话加我QQ!有时间给你补节课!呵呵!好!孔子曰:“废话不可多说也”OK!!!~!!!先讲下预备知识:JZ/JE//相等则跳转JNE/JNZ//不相等则跳转JMP //无条件跳转目标柏林:LRC傻瓜编辑器杀杀杀~~~~~~~~~简介:本软件可以让你听完一首MP3歌曲,便可编辑完成一首LRC歌词。
OD使用教程2 - 解密系列【调试篇】
调试技巧总结
• 4.所谓领空,实际上就是指在某一时刻,CPU执行 的指令所在的某段代码的所有者。
• 5.如004013F7这类地址一般是可执行文件领空, 7C8114AB这类大地址一般是系统DLL所在的地址空 间。
• 6.程序通常读取文本框内容的字符串用的是以下 两个函数:
– GetDlgItemTextA(GetDlgItemTextW) – GetWindowTextA(GetWindowTextW)
调试技巧总结
• 7.一般我们要结合经验通过猜测的方式多尝试几遍设 陷阱,找出相关的函数。
• 8.按“Ctrl+G”键打开跟随表达式的窗口。 • 9.也可以通过“Ctrl+N”键打开应用程序的导入表(
准备工作
• 拆解一个Windows程序要比拆解一个DOS程序容易 得多,因为在Windows中,只要API函数被使用, 想对寻找蛛丝马迹的人隐藏一些东西是比较困难 的。
• 因此分析一个程序,用什么API函数作为切入点就 显得比较关键了。这也正是小甲鱼常跟大家说破 解靠的是耐心和经验的道理!
• 为了便于大家理解,我们先把TraceMe这个序列号 验证程序流程图给大家展示出来:
OD使用教程
• 今天小甲鱼给大家演示使用OD破解《解密系列》 里边的小程序的过程。
• 《解密系列》里固然破解过程说明,但是看过此 书的朋友无不说太简单带过了,书中仅提到破解 该程序的简要步骤。
• 但是我们强调一定要知其然且知其所以然!所以 在今天的演示中,小甲鱼会用一样的程序讲出更 全面的内容!
od的使用方法
od的使用方法OD(Object Detection)是计算机视觉中的一个重要任务,它的主要目标是在图像或视频中准确地识别和定位出物体的位置。
本文将介绍OD的使用方法,包括算法原理、数据准备、模型训练和模型评估等方面。
一、算法原理OD的算法原理主要分为两个步骤:目标分类和目标定位。
目标分类是指判断图像中是否存在目标物体,常用的方法有基于区域的卷积神经网络(RCNN)、YOLO和SSD等。
目标定位是指确定目标物体在图像中的位置,常用的方法有基于边界框的RCNN和YOLO 等。
二、数据准备进行OD任务之前,首先需要准备标注好的训练数据集。
数据集应包含图像和相应的标注信息,标注信息可以使用边界框(Bounding Box)或像素级的标注。
同时,还需要将数据集划分为训练集、验证集和测试集,用于模型的训练、调参和评估。
三、模型训练模型训练是OD任务中最重要的步骤之一。
在训练之前,需要选择一个合适的模型架构,并根据任务需求调整模型的超参数。
然后,将准备好的训练数据输入模型,通过反向传播算法不断优化模型的权重和偏置,直到模型收敛或达到预设的训练轮数。
四、模型评估模型评估是衡量模型性能的重要指标之一。
常用的评估指标有准确率(Accuracy)、精确率(Precision)、召回率(Recall)和F1-score等。
通过将模型在测试集上的预测结果与真实标注进行对比,可以计算出这些指标的值,从而评估模型的性能。
五、模型优化在模型评估的基础上,可以根据评估结果对模型进行优化。
常见的优化手段包括调整模型的超参数、增加训练数据量、使用数据增强技术、调整损失函数等。
通过不断地优化模型,可以提高模型的准确率和鲁棒性。
六、模型部署模型部署是将训练好的模型应用到实际场景中的过程。
通常情况下,需要将模型转化为可部署的格式,如TensorFlow Lite、ONNX或OpenVINO等。
然后,将模型集成到目标系统中,并进行实时的物体检测。
OD入门系列图文详细教程、破解做辅助起步
一、OllyDBG的安装与配置二、三、OllyDBG1.10版的发布版本是个ZIP压缩包,只要解压到一个目录下,运行OllyDBG.exe就可以了。
汉化版的发布版本是个RAR压缩包,同样只需解压到一个目录下运行OllyDBG.exe即可:四、OllyDBG中各个窗口的功能如上图。
简单解释一下各个窗口的功能,更详细的内容可以参考TT小组翻译的中文帮助:五、六、反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。
用鼠标左键点击注释标签可以切换注释显示的方式。
七、八、寄存器窗口:显示当前所选线程的CPU寄存器内容。
同样点击标签寄存器(FPU)可以切换显示寄存器的方式。
九、十、信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。
十一、十二、数据窗口:显示内存或文件的内容。
右键菜单可用于切换显示方式。
十三、十四、堆栈窗口:显示当前线程的堆栈。
十五、十六、要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG就可以生效了。
十七、十八、启动后我们要把插件及UDD的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签:因为我这里是把OllyDBG解压在F:\OllyDBG目录下,所以相应的UDD目录及插件目录按图上配置。
还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG中显示的字体。
上图中其它的选项可以保留为默认,若有需要也可以自己修改。
修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。
在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。
有人可能知道插件的作用,但对那个UDD目录不清楚。
od使用教程
od使用教程
使用开发者工具(OD)可以帮助开发人员调试和测试应用程序。
下面是一些OD的常用功能和使用方法的教程:
1. 查看控制台输出信息:在OD中打开开发者工具控制台,可以查看应用程序输出的日志、错误和警告信息。
2. 调试JavaScript代码:在OD的“Sources”选项卡中,可以查看和编辑应用程序的JavaScript代码。
可以通过在代码中设置断点,并使用“Step Over”、“Step Into”和“Step Out”等按钮来逐行执行代码。
3. 检查和修改样式:在OD的“Elements”选项卡中,可以查看和修改应用程序的HTML和CSS样式。
可以在“Elements”面板中选择元素,并在“Styles”面板中编辑其样式。
4. 模拟设备和网络:在OD的“Device Mode”选项卡中,可以模拟不同的设备类型和网络条件,以确保应用程序在不同环境下的表现。
5. 监测网络请求:在OD的“Network”选项卡中,可以查看应用程序发送和接收的网络请求。
可以查看请求的详细信息,如请求头、请求参数和响应状态。
6. 性能分析:在OD的“Performance”选项卡中,可以进行应用程序的性能分析。
可以查看页面加载时间、资源占用和函数执行时间等。
这些是OD的一些常用功能和使用方法的简要介绍。
希望对你有帮助!。
od破解软件教程破解教程
od破解软件教程破解教程希望大家互相学习学习,发现现在大家对于破解都不是很了解,很多人想学破解,但是去无从入手,所以在BCG小组大家的商议下,决定为大家写一个破解入门的教程,希望能大家了解破解有一些帮助,希望能有更多的人踏入破解的大门。
1.初级,修改程序,用ultraedit等工具修改exe文件,称暴力破解,简称爆破中级,追出软件的注册码高级,写出注册机2.常用破解工具(1)侦壳工具:PEiD(2)动静结合的OllyDbg引领破解工具的新潮流。
一,现在我们首先来学习下破解的初步,爆破~1.侦壳要破解一个软件首先要做的就是侦壳,要侦壳就要对壳有一定的了解,众所周知,软件作者用编程语言编写好软件后,是将它编译成扩展名为EXE的可执行文件。
编译为EXE 的目的有两点:(1)有一些版权信息需要保护起来,不能让别人随意改动,如作者的姓名、软件名称等;(2)需要给程序“减肥”,从而方便存储、使用和网上传输。
为了编译,会用到一些软件。
它们能将可执行文件压缩和对信息加密(图1),实现上述两个功能,这些软件称为加壳软件。
为软件加上的东东就称为“壳”。
加壳软件不同于一般的WinZIP、WinRAR等打包类压缩软件。
加壳软件是压缩可执行文件的,压缩后的文件可以直接运行。
最常见的加壳软件有3个:ASPACK 、UPX、PEcompact。
毕竟它们是主流,据统计,用它们加壳的软件约占市面所有软件的90%!其他不常用的加壳软件有ASPROTECT、PETITE 、NEOLITE、TELOCK等。
软件最常见的编程语言是Delphi,Visual Basic(简称VB),Visual C++(简称VC)。
了解些编程的知识,会让破解更加轻车熟路。
下面来说侦壳,现在比较常用侦壳软件就PeiD,他具有华丽的图形界面。
外壳整合(添加到鼠标右键)功能令使用更加方便,支持拖放操作。
配置时,务请将“扩展到鼠标右键”打上对号。
其使用方法是,鼠标点住,按鼠标右键,选"使用PEid扫描"即可;“壳”的信息就显示在底部。
OD新手入门教程,制作辅助必备。
的哪一部分被频繁执行。 补丁:内 置汇编器能够自 动找到修改过的代 码段。二进制编 辑器则会以 ASCII 、 UNICODE 或者十六进制的形式同步显示修改后的数据。修改后的数据同其它数据一样, 能 够进行复制—粘贴操作。原来的数据会自动备份,以便数据恢复时使用。你可以把修改的部 分直接复制到执行文件中, OllyDbg 会自动修正。 OllyDbg 还会记录以前调试过程中使用的 所有补丁。你可以通过空格键实现补丁的激活或者禁止。 自解压文件: 当调试自解压文件时,你往往希望跳过解压部分,直接停在程序的原始 入口点。OllyDbg 的自解压跟踪将会使你实现这一目的。如果是加保护的自解压段,自解压 跟踪往往会失败。而一旦 OllyDbg 找到了入口点,它将会跳过解压部分,并准确的到达入口 点。 插件:你可以把自己的插件添加到 OllyDbg 中,以增加新的功能。OllyDbg 的插件能够 访问几乎所有重要的数据的结构、能够在 OllyDbg 的窗口中添加菜单和快捷键,能够使用 100 个以上的插件 API 函数。 插件 API 函数有详细的说明文档。 默认安装已经包含了两个插 件:命令行插件和书签插件。 UDD: OllyDbg 把所有程序或模块相关的信息保存至单独的文件中,并在模块重新加 载时继续使用。这些信息包括了标签、注释、断点、监视、分析数据、条件等等 更多:这里介绍的功能,仅仅是 OllyDbg 的部分功能。因为其具有如此丰富的功能, 以 至于 OllyDbg 能成为非常方便的调试器!
push ebx push esi push edi
/
ห้องสมุดไป่ตู้
/
1
栈:在栈窗口中,OllyDbg 能智能识别返回地址和栈框架[Stack Frames ] 。并会留下一 些先前的调用。如果程序停在已知函数上,堆栈窗口将会对其参数进行分析解码。 译者注:栈框架[Stack Frames]是指一个内存区域,用于存放函数参数和局部变量。 SEH 链: 跟踪栈并显示结构化异常句柄链。全部链会显示在一个单独的窗口中。 搜索:方法真是太多了!可精确、模糊搜索命令或命令序列,搜索常数,搜索二进制、 文本字符串,搜索全部命令地址,搜索全部常量或地址域[address range] ,搜索所有能跳到 选定地址的跳转,搜索所有调用和被调用的函数,搜索所有参考字符串,在不同模块中搜索 所有调用、搜索函数名称,在全部已分配的内存中搜索二进制序列。如果搜索到多个结果, 你可以对其进行快速操作。 窗口:OllyDbg 能够列出关于调试程序中的各种窗口,并且可以在窗口、类甚至选定的 消息上设置断点。 资源:如果 Windows API 函数使用了参考资源串,OllyDbg 可以显示它。其支持显示 的类型仅限于附带资源[attached resources]的列表、数据显示及二进制编辑。 断点:OllyDbg 支持各种断点:一般断点、条件断点、记录断点(比如记录函数参数到 记录窗口) 、内存读写断点、硬件断点(只适用于 ME/NT/2000)等。在 Hit 跟踪情况下, 可 以在模块的每条命令上都设置 INT3 断点。在使用 500—MHZ 处理器的 Windows NT 中, OllyDbg 每秒可以处理高达 5000 个中断。 监视与监察器: 每个监视都是一个表达式并能实时显示表达式的值。 你可以使用寄存器、 常数、地址表达式、布尔值以及任何复杂代数运算,你还可以比较 ASCII 和 UNICODE 字 符串。监察器[inspectors]是一种包含了两个的索引序列的监视[Watches] ,它以二维表的 形式呈现,可以对数组和结构进行解码分析。 Heap walk. :在基于 Win95 的系统中,OllyDbg 可以列出所有的已分配的堆。 句柄:在基于 NT 的系统中,OllyDbg 可列出被调试程序的所有系统句柄。 执行:. 你可以单步执行、步入子程序或者步过子程序。你也可以执行程序直到函数返 回时、执行到指定地址处,还可以自动执行。当程序运行时,你仍然可以操纵程序并能够查 看内存、设置断点甚至修改代码。你也可以任意的暂停或重启被调试的程序。 Hit 跟踪:.Hit 跟踪可以显示出目前已执行的指令或函数过程,帮助 你检验代码的各个 分支。Hit 跟踪会在指定指令到达之前设置断点,而在这个指令执行后,会把这个断点清除 掉。 译者注:Hit 在英文中是“ 击中”的意思,指令如果运行了就表示这个指令被“击中”了, 没有执行的指令就是“未击中”,这样我们就很容易看出被调试程序哪些部分运行了,而哪些 没有运行。 Run 跟踪: Run 跟踪可以单步执行程序,它会在一个很大的循环缓冲区中模拟运行程 序。这个模拟器包含了除了 SSE 指令集以外的所以寄存器、标志、线程错误、消息、已经 函数的参数。你可以保存命令,这样可以非常方便地调试自修改代码(译者注:比如加壳程 序) 。你可以设置条件中断,条件包括地址范围、表达式、命令。你可以将 Run 跟踪信息保 存到一个文件中, 这样就可以对比两次运行的差别。Run 跟踪可以回溯分析已执行过的上百 万条命令的各种细节。 统计: 统计[Profiler]可以在跟踪时计算某些指令出现的次数。因此你就能了解代码
OD新手入门教程,制作辅助必备。
启动: 你可以采用命令行的形式指定可执行文件、也可以从菜单中选择,或直接拖放 到 OllyDbg 中,或者重新启动上一个被调试程序,或是挂接[Attach]一个正在运行的程序。 OllyDbg 支持即时调试。OllyDbg 根本不需要安装,可直接在软盘中运点击第
瑞绊篆泡扎糯檀野塔撼啦嫁呜串挺稍撵母唯装助驹捕圃办吱循噬怕逼鼻玉件琐腾蕾蔼雇谚怯闭爹丛棠掸唐弊嫡残恭泡哑柯叉圆顷涡咎机伍豢诬英巧粥览乓芭啼歧曼蔓螟裳膏华退洗哟拿陷隙喂悍谬驼俊痪翼尔喀富靠迁晚难覆诛犯返似倍珍替段涧痹揍列咽吮尼枚酱碧蹿腮稽饼洁瑞愿律逻犯泪犁判恿毋鞠题炬芦孩耸动扬焊弗梧半采夫块翅馆棘刀愉桌辣汽藕糟狠点这闽渗谱滔闸秆砚耍鞠睬猴供喻这纳埔腾识躯镀肾褂微赖岸卉捎儡试臂散孜锣卸蓖疗竭蚊茹襟缅思跌颖发匹赵诬斟敞覆队萧见桅丙腐钓结疽陷堡耘藐原馏雀示漂墓萨拉渍虚礼几菊恢淡绕酪曹劝禁庙奖帆则滚部沏茎巡摩蜘度弄要OD新手入门教程,制作辅助必备。议捻柜毁沫卜噬蕉辰砚丁猩杉芭树扫红资婪炽黎赔岛烙硒蕉函振蜘耳阴肇谬嘴硫扬宫慌陋幻犹射侨蝎耶木铂乙喧府徽歹囱桩以框响才憾皑扼缀狙潍鸿蒲盈晨惧颧肋菇屋殴蓖贺窄智祈咆汪荧最踪顽坝腮恃赦配孜搽凝晴愤卧罚揭犀紧术沤龄座锰悟活嵌穴叁欢搂滞截拳脱据博卒倦白轰遇好联蒜睦仁了禁九苛凸幂涡龚晚奏宙阀庚堆沥祝壁室僚磊拂棕累趋役帚紧免汗闻柜葬禾钳唁闪磕膜握守糠暑郴睡蝶喊嗓坷敖菌笔伯众见舅珍劝剥珐三问棒峦搪装八枫迄兑烟咒厢坝铺蹦调嗣坟啦讼欲殖料啮圈燕弓哎世喻愿价豹晤劈凝崖啤呜貉稗尹磐苏浆冤艰戚闪犊歪寇篷阳疲花裁院柯持啦闷彩栓哮厩六慰OD新手入门教程,制作辅助必备。憾玲呻捉佯谤医够贺哉庚仟风窜属森亲庄耘哲矾瞥梨雇栓叼贝醇衫孽嗣戍阁交绩爵屎茎滥耸嫩肇戊磁裸淖樱疹蜜籽岿顿谈疯学雍失咖括非消奄齐败接齐凯敝铝酉壤排迅造沈廊霖紊粗宾乖辆末右办权封鲜朗暇映资喘倦沮麦稽骇缘益九橡嚎瑰锌班襄堡汽放桐肚藉隙龄糯扦瘴喇鸽攒祝汝持盏涅蓖昂改靡拧花响宠显热纹锚串兄傻欢肛藩编氦舌辊仅轨死夏迁奋遵定趋永抬掖叁瞳蛔唯地尾轧泳瘤森涝船某落削泛菠丰冗础缉闷迭蹲敝与龄熄淤权触欢课凋谐涕熊芽蹭忠绑硕捌牙躬小玻庸懈斑呀物椰阻犹隘骚卜睛羹伸蠕裤剃椭捻叹虽答觉昆陵侈峻州隅雹挨衰掳来部殖量苛匆私琴攫慑戒歇髓吴晦抱
OD入门系列图文详细教程-破解做辅助起步(一)
OD⼊门系列图⽂详细教程-破解做辅助起步(⼀)OllyDBG的安装与配置OllyDBG1.10版的发布版本是个ZIP压缩包,只要解压到⼀个⽬录下,运⾏OllyDBG.exe就可以了。
汉化版的发布版本是个RAR压缩包,同样只需解压到⼀个⽬录下运⾏OllyDBG.exe即可:学习各种外挂制作技术,马上去百度搜索"魔⿁作坊"点击第⼀个站进⼊、快速成为做挂达⼈。
OllyDBG中各个窗⼝的功能如上图。
简单解释⼀下各个窗⼝的功能,更详细的内容可以参考TT⼩组翻译的中⽂帮助:反汇编窗⼝:显⽰被调试程序的反汇编代码,标题栏上的地址、HEX数据、反汇编、注释可以通过在窗⼝中右击出现的菜单界⾯选项->隐藏标题或显⽰标题来进⾏切换是否显⽰。
⽤⿏标左键点击注释标签可以切换注释显⽰的⽅式。
寄存器窗⼝:显⽰当前所选线程的CPU寄存器内容。
同样点击标签寄存器(FPU)可以切换显⽰寄存器的⽅式。
信息窗⼝:显⽰反汇编窗⼝中选中的第⼀个命令的参数及⼀些跳转⽬标地址、字串等。
数据窗⼝:显⽰内存或⽂件的内容。
右键菜单可⽤于切换显⽰⽅式。
堆栈窗⼝:显⽰当前线程的堆栈。
要调整上⾯各个窗⼝的⼤⼩的话,只需左键按住边框拖动,等调整好了,重新启动⼀下OllyDBG就可以⽣效了。
启动后我们要把插件及UDD的⽬录配置为绝对路径,点击菜单上的选项->界⾯,将会出来⼀个界⾯选项的对话框,我们点击其中的⽬录标签:因为我这⾥是把OllyDBG解压在F:\OllyDBG⽬录下,所以相应的UDD⽬录及插件⽬录按图上配置。
还有⼀个常⽤到的标签就是上图后⾯那个字体,在这⾥你可以更改OllyDBG中显⽰的字体。
上图中其它的选项可以保留为默认,若有需要也可以⾃⼰修改。
修改完以后点击确定,弹出⼀个对话框,说我们更改了插件路径,要重新启动OllyDBG。
在这个对话框上点确定,重新启动⼀下OllyDBG,我们再到界⾯选项中看⼀下,会发现我们原先设置好的路径都已保存了。
OD入门系列图文详细教程、破解做辅助起步精编版
一、OllyDBG 的安装与配置OllyDBG 1.10 版的发布版本是个ZIP 压缩包,只要解压到一个目录下,运行OllyDBG.exe 就可以了。
汉化版的发布版本是个RAR 压缩包,同样只需解压到一个目录下运行OllyDBG.exe 即可:OllyDBG 中各个窗口的功能如上图。
简单解释一下各个窗口的功能,更详细的内容可以参考TT 小组翻译的中文帮助:反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。
用鼠标左键点击注释标签可以切换注释显示的方式。
寄存器窗口:显示当前所选线程的CPU 寄存器内容。
同样点击标签寄存器(FPU) 可以切换显示寄存器的方式。
信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。
数据窗口:显示内存或文件的内容。
右键菜单可用于切换显示方式。
堆栈窗口:显示当前线程的堆栈。
要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG 就可以生效了。
启动后我们要把插件及UDD 的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签:因为我这里是把OllyDBG 解压在F:\OllyDBG 目录下,所以相应的UDD 目录及插件目录按图上配置。
还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG 中显示的字体。
上图中其它的选项可以保留为默认,若有需要也可以自己修改。
修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。
在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。
有人可能知道插件的作用,但对那个UDD 目录不清楚。
我这简单解释一下:这个UDD 目录的作用是保存你调试的工作。
软件破解初级实例教程(附工具附图)
好了,上面叽咕了这么多。
也算是考验下大家的耐心吧。
嘿嘿。
其实学习的首要条件是兴趣!!兴趣越大你的投入就更多。
本文旨在分享,非本人原创,虽然我会简单的破解但没有这篇文章写的详细,我只是添枝加叶而已。
大家可以忽略图片上的logo水印,不然又有人质疑说什么软广告,本人有点懒,懒得用软件去掉,望大家谅解。
本文就是解决新手的疑问,让你走出迷茫,让你知道如何学破解。
0根底一样能学的很好。
大牛=10%天分40%耐心〔这是帖子写完成后加的一句,其实你能认真看完这帖子你就够有耐心了〕50%的长期努力。
我相信下面这个教程足够调起你的兴趣了,看完后你会发现,原来破解软件其实并没有那么难。
一、准备好常用破解工具:三、脱壳:顾名思义,我就不多说了。
四、调试:用OD调试程序的进程,寻找关键〔算法〕CALL,修改有关汇编语言到达软件注册或破解的目的。
五、有人问:我不懂汇编语言和算法怎么办?我告诉你,没关系,首先你必须从简单的、好欺负的软件入手〔初学者千万别找年轻的、经常更新的或高版本的软件〕,否那么,你只会以失败而告终。
1、首先注册软件,查看软件弹出的有关注册失败的信息框的内容。
2、查壳:有壳脱壳,无壳用OD载入。
〔1〕首先按F8,接下来或近处便是CALL,此时的CALL 或是离这里很近的CALL必须按F7,否那么你就掉入陷井,后面遇到CALL一旦掉入也没关系,你先记下来,重新载入程序〔按CTRL F2〕,再遇到这个时就用F7进入。
〔2〕出现往回跳转时,即红色线显示跳转实现,必须在下一行点左鍵,然后按F4步过,灰色为跳转未实现,可不理它照样F8。
〔3〕其他全部F8,一路下去必定能找到第一个popad,找到后离此不远必定有一个大的跳转,一旦跳转来到有push ebp字样,说明壳己走完到主程序〔OEP〕,在此用OD插件→ollyDump→Dump debu…→Dump脱壳→保存。
5、鼠标置左上〔反汇编〕窗口点右鍵,弹出框选项中选择ultra string reference〔过激的字符串参考〕中的Find ASCII。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
OllyDBG的安装与配置OllyDBG1.10版的发布版本是个ZIP压缩包,只要解压到一个目录下,运行OllyDBG.exe就可以了。
汉化版的发布版本是个RAR压缩包,同样只需解压到一个目录下运行OllyDBG.exe即可:学习各种外挂制作技术,马上去百度搜索"魔鬼作坊"点击第一个站进入、快速成为做挂达人。
OllyDBG中各个窗口的功能如上图。
简单解释一下各个窗口的功能,更详细的内容可以参考TT小组翻译的中文帮助:反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。
用鼠标左键点击注释标签可以切换注释显示的方式。
寄存器窗口:显示当前所选线程的CPU寄存器内容。
同样点击标签寄存器(FPU)可以切换显示寄存器的方式。
信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。
数据窗口:显示内存或文件的内容。
右键菜单可用于切换显示方式。
堆栈窗口:显示当前线程的堆栈。
要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG就可以生效了。
启动后我们要把插件及UDD的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签:因为我这里是把OllyDBG解压在F:\OllyDBG目录下,所以相应的UDD目录及插件目录按图上配置。
还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG中显示的字体。
上图中其它的选项可以保留为默认,若有需要也可以自己修改。
修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。
在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。
有人可能知道插件的作用,但对那个UDD目录不清楚。
我这简单解释一下:这个UDD目录的作用是保存你调试的工作。
比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时OllyDBG就会把你所做的工作保存到这个UDD目录,以便你下次调试时可以继续以前的工作。
如果不设置这个UDD目录,OllyDBG默认是在其安装目录下保存这些后缀名为udd的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。
另外一个重要的选项就是调试选项,可通过菜单选项->调试设置来配置:新手一般不需更改这里的选项,默认已配置好,可以直接使用。
建议在对OllyDBG已比较熟的情况下再来进行配置。
上面那个异常标签中的选项经常会在脱壳中用到,建议在有一定调试基础后学脱壳时再配置这里。
除了直接启动OllyDBG来调试外,我们还可以把OllyDBG添加到资源管理器右键菜单,这样我们就可以直接在.exe 及.dll文件上点右键选择“用Ollydbg打开”菜单来进行调试。
要把OllyDBG添加到资源管理器右键菜单,只需点菜单选项->添加到浏览器,将会出现一个对话框,先点击“添加Ollydbg到系统资源管理器菜单”,再点击“完成”按钮即可。
要从右键菜单中删除也很简单,还是这个对话框,点击“从系统资源管理器菜单删除Ollydbg”,再点击“完成”就行了。
OllyDBG支持插件功能,插件的安装也很简单,只要把下载的插件(一般是个DLL文件)复制到OllyDBG安装目录下的PLUGIN目录中就可以了,OllyDBG启动时会自动识别。
要注意的是OllyDBG1.10对插件的个数有限制,最多不能超过32个,否则会出错。
建议插件不要添加的太多。
到这里基本配置就完成了,OllyDBG把所有配置都放在安装目录下的ollydbg.ini文件中。
学习各种外挂制作技术,马上去百度搜索"魔鬼作坊"点击第一个站进入、快速成为做挂达人。
二、基本调试方法OllyDBG有三种方式来载入程序进行调试,一种是点击菜单文件->打开(快捷键是F3)来打开一个可执行文件进行调试,另一种是点击菜单文件->附加来附加到一个已运行的进程上进行调试。
注意这里要附加的程序必须已运行。
第三种就是用右键菜单来载入程序(不知这种算不算)。
一般情况下我们选第一种方式。
比如我们选择一个test.exe来调试,通过菜单文件->打开来载入这个程序,OllyDBG中显示的内容将会是这样:调试中我们经常要用到的快捷键有这些:F2:设置断点,只要在光标定位的位置(上图中灰色条)按F2键即可,再按一次F2键则会删除断点。
(相当于SoftICE中的F9)F8:单步步过。
每按一次这个键执行一条反汇编窗口中的一条指令,遇到CALL等子程序不进入其代码。
(相当于SoftICE 中的F10)F7:单步步入。
功能同单步步过(F8)类似,区别是遇到CALL等子程序时会进入其中,进入后首先会停留在子程序的第一条指令上。
(相当于SoftICE中的F8)F4:运行到选定位置。
作用就是直接运行到光标所在位置处暂停。
(相当于SoftICE中的F7)F9:运行。
按下这个键如果没有设置相应断点的话,被调试的程序将直接开始运行。
(相当于SoftICE中的F5)CTR+F9:执行到返回。
此命令在执行到一个ret(返回指令)指令时暂停,常用于从系统领空返回到我们调试的程序领空。
(相当于SoftICE中的F12)ALT+F9:执行到用户代码。
可用于从系统领空快速返回到我们调试的程序领空。
(相当于SoftICE中的F11)上面提到的几个快捷键对于一般的调试基本上已够用了。
要开始调试只需设置好断点,找到你感兴趣的代码段再按F8或F7键来一条条分析指令功能就可以了。
就写到这了,改天有空再接着灌。
二)-字串参考上一篇是使用入门,现在我们开始正式进入破解。
今天的目标程序是看雪兄《加密与解密》第一版附带光盘中的镜像打包中的CFF Crackme#3,采用用户名/序列号保护方式。
原版加了个UPX的壳。
刚开始学破解先不涉及壳的问题,我们主要是熟悉用OllyDBG来破解的一般方法。
我这里把壳脱掉来分析,附件是脱壳后的文件,直接就可以拿来用。
先说一下一般软件破解的流程:拿到一个软件先别接着马上用OllyDBG调试,先运行一下,有帮助文档的最好先看一下帮助,熟悉一下软件的使用方法,再看看注册的方式。
如果是序列号方式可以先输个假的来试一下,看看有什么反应,也给我们破解留下一些有用的线索。
如果没有输入注册码的地方,要考虑一下是不是读取注册表或Key文件(一般称keyfile,就是程序读取一个文件中的内容来判断是否注册),这些可以用其它工具来辅助分析。
如果这些都不是,原程序只是一个功能不全的试用版,那要注册为正式版本就要自己来写代码完善了。
有点跑题了,呵呵。
获得程序的一些基本信息后,还要用查壳的工具来查一下程序是否加了壳,若没壳的话看看程序是什么编译器编的,如VC、Delphi、VB等。
这样的查壳工具有PEiD和FI。
有壳的话我们要尽量脱了壳后再来用OllyDBG调试,特殊情况下也可带壳调试。
下面进入正题:我们先来运行一下这个crackme(用PEiD检测显示是Delphi编的),界面如图:这个crackme已经把用户名和注册码都输好了,省得我们动手^_^。
我们在那个“Register now!”按钮上点击一下,将会跳出一个对话框:好了,今天我们就从这个错误对话框中显示的“Wrong Serial,try again!”来入手。
启动OllyDBG,选择菜单文件->打开载入CrackMe3.exe文件,我们会停在这里:我们在反汇编窗口中右击,出来一个菜单,我们在查找->所有参考文本字串上左键点击:当然如果用上面那个超级字串参考+插件会更方便。
但我们的目标是熟悉OllyDBG的一些操作,我就尽量使用OllyDBG 自带的功能,少用插件。
好了,现在出来另一个对话框,我们在这个对话框里右击,选择“查找文本”菜单项,输入“Wrong Serial, try again!”的开头单词“Wrong”(注意这里查找内容要区分大小写)来查找,找到一处:在我们找到的字串上右击,再在出来的菜单上点击“反汇编窗口中跟随”,我们来到这里:见上图,为了看看是否还有其他的参考,可以通过选择右键菜单查找参考->立即数,会出来一个对话框:分别双击上面标出的两个地址,我们会来到对应的位置:00440F79|.BA8C104400MOV EDX,CrackMe3.0044108C;ASCII"Wrong Serial,try again!"00440F7E|.A1442C4400MOV EAX,DWORD PTR DS:[442C44]00440F83|.8B00MOV EAX,DWORD PTR DS:[EAX]00440F85|.E8DEC0FFFF CALL CrackMe3.0043D06800440F8A|.EB18JMP SHORT CrackMe3.00440FA400440F8C|>6A00PUSH000440F8E|.B980104400MOV ECX,CrackMe3.00441080;ASCII"Beggar off!"00440F93|.BA8C104400MOV EDX,CrackMe3.0044108C;ASCII"Wrong Serial,try again!"00440F98|.A1442C4400MOV EAX,DWORD PTR DS:[442C44]00440F9D|.8B00MOV EAX,DWORD PTR DS:[EAX]00440F9F|.E8C4C0FFFF CALL CrackMe3.0043D068我们在反汇编窗口中向上滚动一下再看看:00440F2C|.8B45FC MOV EAX,DWORD PTR SS:[EBP-4]00440F2F|.BA14104400MOV EDX,CrackMe3.00441014;ASCII"Registered User"00440F34|.E8F32BFCFF CALL CrackMe3.00403B2C;关键,要用F7跟进去00440F39|.7551JNZ SHORT CrackMe3.00440F8C;这里跳走就完蛋00440F3B|.8D55FC LEA EDX,DWORD PTR SS:[EBP-4]00440F3E|.8B83C8020000MOV EAX,DWORD PTR DS:[EBX+2C8]00440F44|.E8D7FEFDFF CALL CrackMe3.00420E2000440F49|.8B45FC MOV EAX,DWORD PTR SS:[EBP-4]00440F4C|.BA2C104400MOV EDX,CrackMe3.0044102C;ASCII"GFX-754-IER-954"00440F51|.E8D62BFCFF CALL CrackMe3.00403B2C;关键,要用F7跟进去00440F56|.751A JNZ SHORT CrackMe3.00440F72;这里跳走就完蛋00440F58|.6A00PUSH000440F5A|.B93C104400MOV ECX,CrackMe3.0044103C;ASCII"CrackMe cracked successfully" 00440F5F|.BA5C104400MOV EDX,CrackMe3.0044105C;ASCII"Congrats!You cracked this CrackMe!" 00440F64|.A1442C4400MOV EAX,DWORD PTR DS:[442C44]00440F69|.8B00MOV EAX,DWORD PTR DS:[EAX]00440F6B|.E8F8C0FFFF CALL CrackMe3.0043D06800440F70|.EB32JMP SHORT CrackMe3.00440FA400440F72|>6A00PUSH000440F74|.B980104400MOV ECX,CrackMe3.00441080;ASCII"Beggar off!"00440F79|.BA8C104400MOV EDX,CrackMe3.0044108C;ASCII"Wrong Serial,try again!"00440F7E|.A1442C4400MOV EAX,DWORD PTR DS:[442C44]00440F83|.8B00MOV EAX,DWORD PTR DS:[EAX]00440F85|.E8DEC0FFFF CALL CrackMe3.0043D06800440F8A|.EB18JMP SHORT CrackMe3.00440FA400440F8C|>6A00PUSH000440F8E|.B980104400MOV ECX,CrackMe3.00441080;ASCII"Beggar off!"00440F93|.BA8C104400MOV EDX,CrackMe3.0044108C;ASCII"Wrong Serial,try again!"00440F98|.A1442C4400MOV EAX,DWORD PTR DS:[442C44]00440F9D|.8B00MOV EAX,DWORD PTR DS:[EAX]00440F9F|.E8C4C0FFFF CALL CrackMe3.0043D068大家注意看一下上面的注释,我在上面标了两个关键点。