首页
社区
课程
招聘
[原创]昨天看到一个CrackMe.跟出算法.可是不知道怎么注册机
发表于: 2008-4-22 23:31 5554

[原创]昨天看到一个CrackMe.跟出算法.可是不知道怎么注册机

2008-4-22 23:31
5554
昨天看到一个CrackMe.算法是跟出来了.可是这个注册机俺真是想不太明白怎么定,希望兄弟们给想想.接触破解时间不长.

00401221  |> /8A18          /MOV BL,BYTE PTR DS:[EAX]
00401223  |. |C1C3 08       |ROL EBX,8
00401226  |. |03D3          |ADD EDX,EBX
00401228  |. |40            |INC EAX                                 ;  love.004020AC
00401229  |. |8038 00       |CMP BYTE PTR DS:[EAX],0

主体就是这么一段,EAX所指向的是我输入的注册码"22222222",根据注册码的长度做Loop, 最后生成一个字符串.然后和下面这个字符串比较
00401243  |.  803B 38       CMP BYTE PTR DS:[EBX],38
00401246  |.  75 35         JNZ SHORT love.0040127D
00401248  |.  807B 01 44    CMP BYTE PTR DS:[EBX+1],44
0040124C  |.  75 2F         JNZ SHORT love.0040127D
0040124E  |.  807B 02 43    CMP BYTE PTR DS:[EBX+2],43
00401252  |.  75 29         JNZ SHORT love.0040127D
00401254  |.  807B 03 41    CMP BYTE PTR DS:[EBX+3],41
00401258  |.  75 23         JNZ SHORT love.0040127D
0040125A  |.  807B 04 46    CMP BYTE PTR DS:[EBX+4],46
0040125E  |.  75 1D         JNZ SHORT love.0040127D
00401260  |.  807B 05 33    CMP BYTE PTR DS:[EBX+5],33
00401264  |.  75 17         JNZ SHORT love.0040127D
00401266  |.  807B 06 36    CMP BYTE PTR DS:[EBX+6],36
0040126A  |.  75 11         JNZ SHORT love.0040127D
0040126C  |.  807B 07 38    CMP BYTE PTR DS:[EBX+7],38
00401270  |.  75 0B         JNZ SHORT love.0040127D

8DCAF368吧

俺有点晕..不知道怎么回写..根据他比较的串.

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 47147
活跃值: (20465)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
2
38的ASCII码是8
44的ASCII码是D

……
2008-4-23 09:58
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
啊,我查了ASCII表呀,是这样的呀
2008-4-23 10:41
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
那个是他要比较的字符串,不是最终的注册码呀
2008-4-23 10:43
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
累了一天了,坛主和楼主的二人转,忍不住笑了
。。。
2008-4-28 18:46
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
00401243  |.  803B 38       CMP BYTE PTR DS:[EBX],38               /与8比较
00401246  |.  75 35         JNZ SHORT love.0040127D                 /不相等就跳,相等就进行下面的比较
00401248  |.  807B 01 44    CMP BYTE PTR DS:[EBX+1],44       /与D比较,方法与上面一样,直到比较完毕
0040124C  |.  75 2F         JNZ SHORT love.0040127D
0040124E  |.  807B 02 43    CMP BYTE PTR DS:[EBX+2],43
00401252  |.  75 29         JNZ SHORT love.0040127D
00401254  |.  807B 03 41    CMP BYTE PTR DS:[EBX+3],41
00401258  |.  75 23         JNZ SHORT love.0040127D
0040125A  |.  807B 04 46    CMP BYTE PTR DS:[EBX+4],46
0040125E  |.  75 1D         JNZ SHORT love.0040127D
00401260  |.  807B 05 33    CMP BYTE PTR DS:[EBX+5],33
00401264  |.  75 17         JNZ SHORT love.0040127D
00401266  |.  807B 06 36    CMP BYTE PTR DS:[EBX+6],36
0040126A  |.  75 11         JNZ SHORT love.0040127D
0040126C  |.  807B 07 38    CMP BYTE PTR DS:[EBX+7],38  
00401270  |.  75 0B         JNZ SHORT love.0040127D          //如果能执行到这里就说明注册码正确

其实这段代码的意思就是用生成的注册码与真码按位比较,如果不相等就跳,也就是说,真码就是8DCAF368。
2008-4-30 20:59
0
游客
登录 | 注册 方可回帖
返回
//