Crackme015 的逆向分析
1.程序观察
作者提示我们要把程序启动前的弹窗关闭,而且要找到正确的注册码。
2.简单查壳
程序使用 VB5 编写,无壳。
3.程序分析
首先要去除启动时的弹窗。
使用 VB Decompiler 载入程序
从反编译的代码,我们可以看到加载的时候,程序在调用 MsgBox 函数弹窗之后,会验证返回值,如果不符合条件就会退出。
我们查看相对应的汇编代码
所以想要去除弹窗,首先要去除 MsgBox 函数,还要使之不退出。
我们可以把 MsgBox 函数 和 End 函数的调用代码全部使用 nop 覆盖掉。
接下来寻找正确的注册码
地址 402B14 处是注册按钮点击事件,我们进入代码内部。
向下查看代码,可以看到有一个比较函数
查看参数,发现其中一个参数正是我们输入的假的注册码
那 "2G83G35Hs2" 可能就是真的注册码了
2019-09-17 11:47:51
相关文件在我的 Github:https://github.com/UnreachableLove/160-Crackme/tree/master/Crackme015