打开程序,会惊讶发现没有确定键。这是个delphi写的程序,没有加壳。费了很久,才搞懂这个。
                http://bbs.fishc.com/thread-40611-1-1.html

两种方法:
1,找到名字/序列号。像这种情况。信息肯定保存在代码中,输入的和保存的做了比对。
2. 暴力破解。这就不用多说了。
先做第一种,寻找序列号。使用dede反汇编一下,
1.jpg
看到这个模块,里面有各种事件,看那个chkcode函数。记下地址,我们在OD中进入。
打开od--->随便输入数字--->然后会在上面那个地址断下。
2.jpg
接下来我们单步走。
3.jpg
注意圈起来的三个地方。esi中保存的是姓名的长度,然后再加上5.这个值到后面会有用。暂时把这个设为a
往下走。逐渐会有信息出现,序列号出现。
4.jpg
序列号保存在edx中,这里的15就是我们的a
5.jpg
总体来说,结果就是  Name:12345  Serial: 黑头Sun Bird(a)dseloffc-012-12345.
(a)这个值就是字符长度加上5.
然而,把这输进去,并不会得到我们想要的结果
其实a应该是10
2.爆破
在上述的基础上,逐渐到后面,右键--转到--下个函数过程。会找到转折点。
在这,我们用一种巧妙的方法。同样用dededark,panelclick

按地址进入。
6.jpg
关键跳转


7.jpg
很显然nop掉就可以了。
8.jpg
女神很漂亮。