本帖最后由 maclvern 于 2021-6-28 15:48 编辑

首先介绍下程序的大致组成:

程序组成情况.png (18.78 KB, 下载次数: 0)

下载附件

2021-6-22 17:21 上传

db是数据所在文件,可执行文件相当于阅读器,然后受限前几十页可读,注册后才可全部

注册窗口如图所示,初步判断注册码是通过机器码计算得出的数字,估计注册码是16位

机器码和随便输的注册数字.png (36.98 KB, 下载次数: 0)

下载附件

2021-6-23 14:24 上传

2021.06.28最新进展:通过大家的指导,知道了关键CALL的段首,对应找到了堆栈中在EAX内存储的真码,现在我正在学习:1.怎么找到这个关键CALL;2.本程序是通过什么算法依据机器码计算出注册码的3.如何在知道关键验证语句后回溯来查出本语句的前面的语句是哪些。

目前(6.28以前)的情况是找到的messageboxa都不是注册弹框相关的,而且通过中文搜索找到“注册成功”和“注册失败”相关的两处都是与注册码没关联的单纯的是给弹出的对话框输出文字内容的(因为我试过将“注册失败这句NOP后弹窗中就没有内容了”),目前瓶颈就在找关键节点找不到的各种尝试无果状态中……

中文搜索引擎找弹窗字段.png (239.09 KB, 下载次数: 0)

下载附件

2021-6-22 16:42 上传

此图中就是相关注册弹窗的搜索结果,下两图为相应转到程序中的语句

注册成功,谢谢您的支持对应的程序位置.png (311.8 KB, 下载次数: 0)

下载附件

2021-6-22 16:45 上传

注册码无法通过验证,请重新输入对应的程序位置.png (301.32 KB, 下载次数: 0)

下载附件

2021-6-22 16:45 上传

————————————————————————————————————————————

以下是原文内容

在破解开头就遇到了滑铁卢,能找到相关对话框的弹出字段,分别为失败和成功,但是找不到messagebox这个字段

如下图所示

OD找不到messagebox相关.jpg (261.72 KB, 下载次数: 0)

下载附件

2021-6-18 17:36 上传

2025-06-09 00:30:37