我们这次的任务是去掉这个NAG窗口,如下图所示

点击了NAG窗口后,出现另外一个提示对话框,这个不是NAG窗口,如下图所示

我们把程序放进OD,在MessageBox,下断点,如下图所示,但是我们发现我们运行程序,程序并没有停下,所以我们得另寻他法

我们在前面两个函数下断点,运行程序,发现程序停下,如下图所示

这个第一个函数的代码,如下图所示,这个函数的功能是把401000--401218的代码全部与5A异或,但是我们还不知道程序要干嘛,如下图所示

接着,我们进入到第二个函数里面,如下图所示,我们发现,程序通过修改自身的代码,修改成MessageBox然后再运行,难怪最开始下的断点没有停下来,我们可以猜想只要把MessageBox的hwnd设置为push 1,NAG窗口就不会出现

再次运行程序,来到第二个函数,我们应该修改00401035 的代码,push 1的代码应该是6A 01,但是这时我们又想到第一个函数把401000--401218的数据都与5A异或,于是我们不能修改6A 01,应该修改成30 5B,6A xor 5A=30  01 xor 5A=5B

这是修改后的代码,如下图所示,我们用所有修改保存

运行程序,发现NAG窗口已经被去掉了,破解成功!!

转载于:https://www.cnblogs.com/Tobi/p/8459601.html

小甲鱼OD学习第21讲相关推荐

  1. 小甲鱼OD学习第18讲

    这次我们的任务是破解这个需要注册的软件,如下图所示,如果没有注册,关闭软件的时候他会弹出一个对话框提示注册 这次我们不从字符串入手而从对话框入手,我们把程序放进查看资源的软件,观察对话框资源,如下图所 ...

  2. 小甲鱼OD学习第15-16讲

    这次我们要破解的软件是这个需要注册码的软件,如下图所示 点击ok,弹出相应的错误提示框,如下图 我们尝试搜索相应的错误提示字符串,看看有什么线索,如下图 找到了错误提示的字符串,如下图 下断点,如下图 ...

  3. 学习笔记-小甲鱼Python3学习第三十一讲:永久存储:腌制一缸美味的泡菜

    pickle函数 打开--读/写--关闭 看个例子: >>> import pickle#导入pickle()函数 >>> my_list = [123,23.23 ...

  4. 小甲鱼Python学习知识点记录(003讲)

    一.插曲之变量 1.变量名就像我们现实社会的名字,把一个值赋值给一个名字时,它会存储在内存中,称之为变量(variable),在大多数语言中,都把这种行为称为"给变量赋值"或&qu ...

  5. 【Python】小甲鱼Python学习总结——代码版

    看了50P左右的小甲鱼B站的Python视频,按需学习,因此有些P可能会有遗漏.以下是自己跟着视频敲的代码,一些知识点和自己的理解写在了注释里.注释要遵守PEP8的规范. 同时Python的另一个教程 ...

  6. B站小甲鱼python学习笔记

    000 愉快的开始 视频地址: https://www.bilibili.com/video/BV1xs411Q799?p=1 python跨平台 应用范围: 操作系统.WEB.3D动画.企业应用.云 ...

  7. 小甲鱼python视频第八讲(课后习题)

    1.for循环的使用,注意下面代码的区别 for i in range(0,10,2):print("i love you") for i in range(0,10):print ...

  8. 小甲鱼python课后答案40讲_小甲鱼Python第二十一讲课后习题

    测试题: 0. 递归在编程上的形式是如何表现的呢? 在编程上,递归表现为函数调用本身这么一个行为. 1. 递归必须满足哪两个基本条件? 一. 函数调用自身 二. 设置了正确的返回条件 2. 思考一下, ...

  9. 小甲鱼Python3学习笔记之第三讲(仅记录学习)

    第三讲:小插曲变量和字符串 一.知识点: 1.变量的概念:在别的编程语言中,变量是把一个值赋给一个名字时,值会存储到内存中,这个名字就叫变量. 在python中,变量更像把名字贴到值的上边,所以说py ...

最新文章

  1. python列表的解析(转)
  2. Python实现1-9数组形成的结果为100的所有运算式
  3. MySQL带DISTINCT关键字的查询
  4. 第三次学JAVA再学不好就吃翔(part63)--String和int的相互转换
  5. Android投屏(屏幕共享)设计需要考虑的关键因素
  6. 在debian上安装vmware tools的问题
  7. 控制台怎么查看错误的详细信息_js错误处理,quot;try..catchquot;
  8. 如何写好学术期刊文章?
  9. C语言学习系列(六)基本语法
  10. Word 2010/2013 菜单栏添加 MathType 菜单
  11. hdu 2119(最大匹配)
  12. Java—以当前系统时间生成随机数
  13. d3js精通教程_d3js从基础到精通第二部分
  14. 手机端html5页面横屏显示,移动端HTML5中判断横屏竖屏的方法
  15. css图片插入文字,利用css布局在图片插入文字
  16. win10硬盘锁怎么解除_win10如何使用bitlocker解锁硬盘加密
  17. RK3126 人体感应模块驱动
  18. 计算机发展史之查尔斯·巴贝奇
  19. eclipse如何汉化--安装各国语言包
  20. python特殊符号

热门文章

  1. jar包的生成和使用简单例子
  2. c语言结构体介绍及用法
  3. aix服务重启mysql_mysqld进程几分钟重启一次,如何解决?
  4. Java的Arrays.sort()良心总结
  5. 每一个div元素分析 php,PHP初入,div知识点整理(特效字体等元素的使用整理)...
  6. hurricane中文_hurricane是什么意思
  7. 计算机地图制图知识点,地图制图知识点整理
  8. 从运维域看 Serverless 真的就是万能银弹吗?
  9. 开发函数计算的正确姿势——轻松解决大依赖部署
  10. 技术解析系列 | PouchContainer CRI的设计与实现