- UID
- 9910
注册时间2006-3-22
阅读权限20
最后登录1970-1-1
以武会友
该用户从未签到
|
发表于 2006-5-30 15:27:00
|
显示全部楼层
- 来个算法的+自报的(最近蛮流行自报注册码的嘛)
- 00408388 /$ 55 push ebp
- 00408389 |. 8BEC mov ebp, esp
- 0040838B |. 83C4 F4 add esp, -0C
- 0040838E |. 53 push ebx
- 0040838F |. 56 push esi
- 00408390 |. 57 push edi
- 00408391 |. 33C9 xor ecx, ecx
- 00408393 |. 894D F4 mov [ebp-C], ecx
- 00408396 |. 8955 F8 mov [ebp-8], edx
- 00408399 |. 8945 FC mov [ebp-4], eax
- 0040839C |. 8B45 FC mov eax, [ebp-4]
- 0040839F |. E8 8CBCFFFF call 00404030
- 004083A4 |. 33C0 xor eax, eax
- 004083A6 |. 55 push ebp
- 004083A7 |. 68 41844000 push 00408441
- 004083AC |. 64:FF30 push dword ptr fs:[eax]
- 004083AF |. 64:8920 mov fs:[eax], esp
- 004083B2 |. 8B45 FC mov eax, [ebp-4]
- 004083B5 |. E8 86BCFFFF call 00404040
- 004083BA |. E8 25D8FFFF call 00405BE4 ; 取用户名个数
- 004083BF |. 8BD8 mov ebx, eax ; 把用户名个数放到EBX中
- 004083C1 |. D1EB shr ebx, 1 ; EBX_1=EBX /2
- 004083C3 |. 4B dec ebx ; EBX_2=EBX_1-1
- 004083C4 |. 8B45 F8 mov eax, [ebp-8]
- 004083C7 |. E8 68B8FFFF call 00403C34
- 004083CC |. 8BFB mov edi, ebx ; 把EBX放到EDI 中
- 004083CE |. 85FF test edi, edi ; 测试EDI
- 004083D0 |. 7C 51 jl short 00408423 ; 非○就跳
- 004083D2 |. 47 inc edi ; EDI+1
- 004083D3 |. 33F6 xor esi, esi ; ESI清0
- 004083D5 |> 8B45 FC /mov eax, [ebp-4] ; 把用户名放到EAX 中
- 004083D8 |. E8 63BCFFFF |call 00404040
- 004083DD |. 8BD6 |mov edx, esi
- 004083DF |. 83F2 02 |xor edx, 2 ; edx=edx xor 2
- 004083E2 |. 8A1C10 |mov bl, [eax+edx] ; 把用户名的第EDX(3)位放到BL中
- 004083E5 |. 8B45 FC |mov eax, [ebp-4] ; 把用户名放到EAX 中
- 004083E8 |. E8 53BCFFFF |call 00404040
- 004083ED |. 8BD6 |mov edx, esi
- 004083EF |. 83F2 02 |xor edx, 2 ; edx1=edx xor 2
- 004083F2 |. 8A4410 FF |mov al, [eax+edx-1] ; 把用户名的第EDX1-1(2)位放到AL中
- 004083F6 |. 0AD8 |or bl, al ; BL_1=BL OR AL
- 004083F8 |. 8B45 FC |mov eax, [ebp-4] ; 把用户名放到EAX 中
- 004083FB |. E8 40BCFFFF |call 00404040
- 00408400 |. E8 DFD7FFFF |call 00405BE4 ; 取用户名的个数放到AL中
- 00408405 |. 02D8 |add bl, al ; BL_2=BL_1+AL(用户名的个数)
- 00408407 |. 8D45 F4 |lea eax, [ebp-C]
- 0040840A |. 8BD3 |mov edx, ebx ; 把BL_2放到EDX中
- 0040840C |. E8 EFB9FFFF |call 00403E00
- 00408411 |. 8B55 F4 |mov edx, [ebp-C]
- 00408414 |. 8B45 F8 |mov eax, [ebp-8]
- 00408417 |. E8 A0BAFFFF |call 00403EBC
- 0040841C |. 8B45 F8 |mov eax, [ebp-8]
- 0040841F |. 46 |inc esi
- 00408420 |. 4F |dec edi
- 00408421 |.^ 75 B2 \jnz short 004083D5 ;注册码只取第1次循环计算好的(ebx)值
- 00408423 |> 33C0 xor eax, eax
- 00408425 |. 5A pop edx
- 00408426 |. 59 pop ecx
- 00408427 |. 59 pop ecx
- 00408428 |. 64:8910 mov fs:[eax], edx
- 0040842B |. 68 48844000 push 00408448
- 00408430 |> 8D45 F4 lea eax, [ebp-C]
- 00408433 |. E8 FCB7FFFF call 00403C34
- 00408438 |. 8D45 FC lea eax, [ebp-4]
- 0040843B |. E8 F4B7FFFF call 00403C34
- 00408440 \. C3 retn
- 00408441 .^ E9 16B2FFFF jmp 0040365C
- 00408446 .^ EB E8 jmp short 00408430
- 00408448 . 5F pop edi
- 00408449 . 5E pop esi
- 0040844A . 5B pop ebx
- 0040844B . 8BE5 mov esp, ebp
- 0040844D . 5D pop ebp
- 0040844E . C3 retn
- 算法总结:
- 1)用户名>=2位
- 2)取用户名的第3位的ASCII码值与用户名的第2位的ASCII码值作或运算 计为:V1
- 3)V1+用户名的个数 计为V2
- 4)V2转换成10进制码就是序列号
- 附上算法注册机一个
复制代码
[ 本帖最后由 fantasy 于 2006-5-30 15:29 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
x
|