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

不错,学习了
页: 1 [2] 3
查看完整版本: 再OCN做的一个初级算法的练习