月之精灵 发表于 2006-11-30 21:50:27

回复 #9 极速暴龙 的帖子

这是个问题,昨天我在学习班里就问过这个问题。几位老兄都给出了注册码,但我用他们的注册码和注册名就是注册不了。可是你给的这个却可以。
我说的“提示非法”是指用计算器输入-454179756 换算的时候计算器提示“非法数据“

极速暴龙 发表于 2006-11-30 22:40:51

晕我给的这个就是你 EAX里面的数值的十进制啊 :L

因为算法中用到了磁盘分区序列号   所以别人的注册码你用不上

xuhw 发表于 2006-11-30 22:53:33

0042DB3B|.E8 E8C6FEFF   CALL CRKME4.0041A228
0042DB40|.837D FC 00    CMP DWORD PTR SS:,0               ;用户名不能为空
0042DB44|.75 1A         JNZ SHORT CRKME4.0042DB60                ;空就跳
0042DB46|.6A 00         PUSH 0                                 ; /Arg1 = 00000000
0042DB48|.66:8B0D 1CDD4>MOV CX,WORD PTR DS:            ; |
0042DB4F|.B2 02         MOV DL,2                                 ; |
0042DB51|.B8 28DD4200   MOV EAX,CRKME4.0042DD28                  ; |ASCII "Please typ in your name !!"
0042DB56|.E8 E5F2FFFF   CALL CRKME4.0042CE40                     ; \CRKME4.0042CE40
0042DB5B|.E9 90010000   JMP CRKME4.0042DCF0
0042DB60|>8D55 FC       LEA EDX,DWORD PTR SS:
0042DB63|.8B83 E0010000 MOV EAX,DWORD PTR DS:
0042DB69|.E8 BAC6FEFF   CALL CRKME4.0041A228
0042DB6E|.8B45 FC       MOV EAX,DWORD PTR SS:             ;用户名"abcdef"
0042DB71|.E8 4A5CFDFF   CALL CRKME4.004037C0
0042DB76|.83F8 06       CMP EAX,6                              ;要 大于等于6位
0042DB79|.7D 1A         JGE SHORT CRKME4.0042DB95
0042DB7B|.6A 00         PUSH 0                                 ; /Arg1 = 00000000
0042DB7D|.66:8B0D 1CDD4>MOV CX,WORD PTR DS:            ; |
0042DB84|.B2 02         MOV DL,2                                 ; |
0042DB86|.B8 4CDD4200   MOV EAX,CRKME4.0042DD4C                  ; |ASCII "Type at least 6 chars for your name! !"
0042DB8B|.E8 B0F2FFFF   CALL CRKME4.0042CE40                     ; \CRKME4.0042CE40
0042DB90|.E9 5B010000   JMP CRKME4.0042DCF0
0042DB95|>8D55 FC       LEA EDX,DWORD PTR SS:
0042DB98|.8B83 E4010000 MOV EAX,DWORD PTR DS:
0042DB9E|.E8 85C6FEFF   CALL CRKME4.0041A228
0042DBA3|.837D FC 00    CMP DWORD PTR SS:,0               ;注册码不能为空
0042DBA7|.75 1A         JNZ SHORT CRKME4.0042DBC3                ;空就跳
0042DBA9|.6A 00         PUSH 0                                 ; /Arg1 = 00000000
0042DBAB|.66:8B0D 1CDD4>MOV CX,WORD PTR DS:            ; |
0042DBB2|.B2 02         MOV DL,2                                 ; |
0042DBB4|.B8 7CDD4200   MOV EAX,CRKME4.0042DD7C                  ; |ASCII "Please enter your serial !"
0042DBB9|.E8 82F2FFFF   CALL CRKME4.0042CE40                     ; \CRKME4.0042CE40
0042DBBE|.E9 2D010000   JMP CRKME4.0042DCF0
0042DBC3|>8BC7          MOV EAX,EDI
0042DBC5|.E8 7A59FDFF   CALL CRKME4.00403544
0042DBCA|.C706 02000000 MOV DWORD PTR DS:,2
0042DBD0|>8D55 FC       /LEA EDX,DWORD PTR SS:            ;开始按用户名计算
0042DBD3|.8B83 E0010000 |MOV EAX,DWORD PTR DS:
0042DBD9|.E8 4AC6FEFF   |CALL CRKME4.0041A228
0042DBDE|.8B45 FC       |MOV EAX,DWORD PTR SS:
0042DBE1|.8B16          |MOV EDX,DWORD PTR DS:
0042DBE3|.0FB64410 FF   |MOVZX EAX,BYTE PTR DS:       ;取下用户名的一位
0042DBE8|.8D55 F8       |LEA EDX,DWORD PTR SS:
0042DBEB|.E8 8889FDFF   |CALL CRKME4.00406578                  ;转换
0042DBF0|.8B55 F8       |MOV EDX,DWORD PTR SS:            ;结果
0042DBF3|.8BC7          |MOV EAX,EDI
0042DBF5|.E8 CE5BFDFF   |CALL CRKME4.004037C8
0042DBFA|.FF06          |INC DWORD PTR DS:
0042DBFC|.833E 07       |CMP DWORD PTR DS:,7
0042DBFF|.^ 75 CF         \JNZ SHORT CRKME4.0042DBD0               ;循环
0042DC01|.8D45 F8       LEA EAX,DWORD PTR SS:
0042DC04|.50            PUSH EAX
0042DC05|.B9 03000000   MOV ECX,3
0042DC0A|.BA 01000000   MOV EDX,1
0042DC0F|.8B07          MOV EAX,DWORD PTR DS:               ;计算结果"9899100101102"
0042DC11|.E8 AE5DFDFF   CALL CRKME4.004039C4                     ;开始转换计算
0042DC16|.8B45 F8       MOV EAX,DWORD PTR SS:
0042DC19|.E8 8A89FDFF   CALL CRKME4.004065A8
0042DC1E|.A3 58F74200   MOV DWORD PTR DS:,EAX
0042DC23|.8BC7          MOV EAX,EDI
0042DC25|.E8 1A59FDFF   CALL CRKME4.00403544
0042DC2A|.8BC3          MOV EAX,EBX
0042DC2C|.E8 B3FCFFFF   CALL CRKME4.0042D8E4
0042DC31|.A1 50F74200   MOV EAX,DWORD PTR DS:
0042DC36|.A3 50F74200   MOV DWORD PTR DS:,EAX
0042DC3B|.8BC3          MOV EAX,EBX
0042DC3D|.E8 F2FCFFFF   CALL CRKME4.0042D934
0042DC42|.A1 58F74200   MOV EAX,DWORD PTR DS:
0042DC47|.A3 58F74200   MOV DWORD PTR DS:,EAX
0042DC4C|.8BC3          MOV EAX,EBX
0042DC4E|.E8 35FDFFFF   CALL CRKME4.0042D988
0042DC53|.8BC3          MOV EAX,EBX
0042DC55|.E8 7EFDFFFF   CALL CRKME4.0042D9D8
0042DC5A|.A1 58F74200   MOV EAX,DWORD PTR DS:
0042DC5F|.A3 58F74200   MOV DWORD PTR DS:,EAX
0042DC64|.8BC3          MOV EAX,EBX
0042DC66|.E8 B1FDFFFF   CALL CRKME4.0042DA1C
0042DC6B|.8BC3          MOV EAX,EBX
0042DC6D|.E8 B6FDFFFF   CALL CRKME4.0042DA28
0042DC72|.A1 58F74200   MOV EAX,DWORD PTR DS:
0042DC77|.A3 58F74200   MOV DWORD PTR DS:,EAX
0042DC7C|.8BC3          MOV EAX,EBX
0042DC7E|.E8 B1FDFFFF   CALL CRKME4.0042DA34
0042DC83|.8BC3          MOV EAX,EBX
0042DC85|.E8 F2FDFFFF   CALL CRKME4.0042DA7C
0042DC8A|.8BC3          MOV EAX,EBX
0042DC8C|.E8 0BFEFFFF   CALL CRKME4.0042DA9C
0042DC91|.A1 50F74200   MOV EAX,DWORD PTR DS:
0042DC96|.0105 58F74200 ADD DWORD PTR DS:,EAX
0042DC9C|.8D55 FC       LEA EDX,DWORD PTR SS:
0042DC9F|.8B83 E4010000 MOV EAX,DWORD PTR DS:
0042DCA5|.E8 7EC5FEFF   CALL CRKME4.0041A228
0042DCAA|.8B45 FC       MOV EAX,DWORD PTR SS:             ;假码 "123456"
0042DCAD|.E8 F688FDFF   CALL CRKME4.004065A8
0042DCB2|.A3 60F74200   MOV DWORD PTR DS:,EAX
0042DCB7|.A1 58F74200   MOV EAX,DWORD PTR DS:
0042DCBC|.3B05 60F74200 CMP EAX,DWORD PTR DS:            ;真码=寄存器内数值EAX=-29618160
0042DCC2|.75 17         JNZ SHORT CRKME4.0042DCDB                ;爆点
0042DCC4|.6A 00         PUSH 0                                 ; /Arg1 = 00000000
0042DCC6|.66:8B0D 1CDD4>MOV CX,WORD PTR DS:            ; |
0042DCCD|.B2 02         MOV DL,2                                 ; |
0042DCCF|.B8 A0DD4200   MOV EAX,CRKME4.0042DDA0                  ; |ASCII "Good Serial, Thanks For trying this Crackme bY nIabI !"
0042DCD4|.E8 67F1FFFF   CALL CRKME4.0042CE40                     ; \CRKME4.0042CE40
0042DCD9|.EB 15         JMP SHORT CRKME4.0042DCF0
0042DCDB|>6A 00         PUSH 0                                 ; /Arg1 = 00000000
0042DCDD|.66:8B0D 1CDD4>MOV CX,WORD PTR DS:            ; |
0042DCE4|.B2 02         MOV DL,2                                 ; |
0042DCE6|.B8 E0DD4200   MOV EAX,CRKME4.0042DDE0                  ; |ASCII "Bad Name Or Serial Number !!!!!"
0042DCEB|.E8 50F1FFFF   CALL CRKME4.0042CE40                     ; \CRKME4.0042CE40
0042DCF0|>33C0          XOR EAX,EAX
0042DCF2|.5A            POP EDX
0042DCF3|.59            POP ECX

用户名:abcdef
注册码:-29618160

月之精灵 发表于 2006-12-1 12:41:08

回复 #13 xuhw 的帖子

受教了,谢谢。

fing 发表于 2006-12-1 13:22:16

哈哈,就是就是。。

还是咖啡厉害~~
页: 1 [2]
查看完整版本: 一个CRACKME的问题。