chuan0326
发表于 2006-5-11 10:16:54
谢谢大大的回复 用力的把它吸收
chuan0326
发表于 2006-5-12 00:36:37
00401563 |.E8 00FBFFFF call CrackMe.00401068 ;比较第一位注册码是否为H
我进入00401563 之后只看到
00401068 $53 push ebx
00401069 56 db 56 ;CHAR 'V'
0040106A 57 db 57 ;CHAR 'W'
0040106B 6A db 6A ;CHAR 'j'
0040106C 00 db 00
0040106D .FF35 AC314000 push dword ptr ds: ;CrackMe.004030AC
比较第一位注册码是否为H;我在的窗口看到如上的数据,并没有看到H,请问大大您是如何判断的
我输输入的用户名是CHUAN
试验码是:1234567890123456
谢谢
chuan0326
发表于 2006-5-12 03:00:22
【破解分析过程总结】
z这个软件不难,断到后立刻来到关键算法,非常适合象我这种菜鸟!嘿嘿!
主要算法:
前四位是固定的HT-7
第五位的ASC码+第七位=第十位+第十一位
第六位注册码就是用户名的ASC的值与位数的商
第八位+第九位的注册码的ASC值=用户名的第二位ASC值+用户名第七位的值
第十位和第十一位的和能将2整除 注意:这里限制了第五位和第七位
第十二位是任意数
注册码第十三位和注册码第六位的和不是偶数,即和不能整除2
第十三,十四,十五的和再加上用户名的位数等于10A
------------------------------------------------------------------------------------------
看完大大的破文部令我佩服之至,也在此感谢大大的用心,小弟在此篇破文中
也学习了分析注册码,只是水平太低还有不懂的地方,还望大大您即站上先进高手
部吝指导。以下有几处不明白小弟会试着讲我的想仿写出来,如有不对请交我修正
00401227 |.0FB649 05 movzx ecx,byte ptr ds: ;这里取注册码的第六位
--------------------------------------------------------------------------------------------
0040120E /$55 push ebp
0040120F |.8BEC mov ebp,esp
00401211 |.53 push ebx
00401212 |.56 push esi
00401213 |.57 push edi
00401214 |.68 20304000 push CrackMe.00403020 ;ASCII "3424r"
00401219 |.E8 0FFEFFFF call CrackMe.0040102D ;取注册码的ASC码之和
0040121E |.F77D 0C idiv dword ptr ss: ;注册码之和除以位数
00401221 |.8B0D AC314000 mov ecx,dword ptr ds:
00401227 |.0FB649 05 movzx ecx,byte ptr ds: ;这里取注册码的第六位
0040122B |.3BC1 cmp eax,ecx ;从这里来看,这第六位注册码就是用户名的ASC的值与位数的商
--------------------------------------------------------------------------------------------
如何判断
也请不要小我我是只菜鸟。
以下开始吧!
-------------------------------------------------------------------------------------------------------------------------------
注册码
yezhihun
HT-71n3ln3101Yxu
-------------------------------------------------------------------------
1. 第五位的ASC码+第七位=第十位+第十一位
注.第五位的ASC码+第七位=第十位+第十一位,是指用户名还是注册码
如第5位为(i) asc码=69+第7位=75=第十位+第十一位?
2. 第六位注册码就是用户名的ASC的值与位数的商
第六位注册码(h)ASC的值=68与位数的商如何计算
3. 第八位+第九位的注册码的ASC值=用户名的第二位ASC值+用户名第七位的值
如何计算
4. 第十位和第十一位的和能将2整除 注意:这里限制了第五位和第七位
如何计算
注册码第十三位和注册码第六位的和不是偶数,即和不能整除2
如何计算
5. 第十三,十四,十五的和再加上用户名的位数等于10A
10A是指16进制还是10进制10A计算后又是多少
户名的第六位
再次感谢大大
[ 本帖最后由 chuan0326 于 2006-5-12 03:52 编辑 ]
linchm
发表于 2006-5-24 20:13:22
好好学习了
ToT
发表于 2006-5-25 10:46:03
原帖由 chuan0326 于 2006-5-11 05:12 发表
请问大大为什么我下BP GetDlgItemTextA断点后
按运行却停在77D6AC06 >8BFF mov edi,edi
与大大的0040150C |.FF75 08 push dword ptr ss:
的代码不同大大是如何来到0040150C 处
可否请大大详细说 ...
你直接对API函数下断点当然是断在系统领空了,Ctrl+F9返回到程序领空即可
thank243
发表于 2006-6-10 22:33:17
呵呵,继续努力啊
thank243
发表于 2006-6-15 22:29:29
收藏了
呵呵
浮云思音
发表于 2006-6-17 10:29:51
楼主是菜鸟,我就是菜虫
yingfeng
发表于 2007-5-31 14:26:53
算法學習,呵呵,咋在OCN沒有看到呢
bhcjl
发表于 2007-5-31 14:27:35
不错,学习了