能力值:
( LV2,RANK:10 )
|
-
-
2 楼
004016A8 |> 8D35 4D324000 LEA ESI,DWORD PTR DS:[40324D]
004016AE |. 8D3D 58324000 LEA EDI,DWORD PTR DS:[403258]
004016B4 |. 33DB XOR EBX,EBX
004016B6 |> 3B1D 63344000 /CMP EBX,DWORD PTR DS:[403463] ;
004016BC |. 74 0F |JE SHORT CrackMe0.004016CD
004016BE |. 0FBE041F |MOVSX EAX,BYTE PTR DS:[EDI+EBX]
004016C2 |. 0FBE0C1E |MOVSX ECX,BYTE PTR DS:[ESI+EBX]
004016C6 |. 3BC1 |CMP EAX,ECX 比较计算的结果,相等则注册成功
004016C8 |. 75 18 |JNZ SHORT CrackMe0.004016E2
004016CA |. 43 |INC EBX
004016CB |.^ EB E9 \JMP SHORT CrackMe0.004016B6
对注册名的算法是:
取注册名每一位对应的16进制数,除以0A,余数与对应的计算次数减一后的值进行XOR运算,运算结果再加2。
以注册名位数为运算次数,作循环计算。最终结果设为甲
若,最终结果大于0A,那么就用甲-0A的差作为最终结果
2)对注册码的算法是:
去假码每一位对应的16进制数,除以0A。以假码位数为运算次数,作循环计算。最后取假码第一位对应的16进制数,除以0A的余数作为最终结果,设为乙
上面是作者写的,我很奇怪为什么是取第一位进行比较就行了?
不是逐个进行比较么???
但是我照着他打上用户名1注册码31120还真的可以注册成功 我很奇怪!
求高人解答~!
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
顶起来.....
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
转换为10进制再算可以不???
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
- - 去百度搜索16进制除法。。
|
|
|