软件是VB写的程序,用PEID检测无壳,直接OD装之!!!!!!!!!
00402423 . 8BC8 mov ecx, eax
00402425 . FF15 50104000 call dword ptr [<&MSVBVM60.__vbaI2I4>>; 取注册名
0040242B . 8945 D0 mov dword ptr [ebp-30], eax
0040242E . 66:3D 0300 cmp ax, 3 ; 注册名必须大于等于3位
00402432 . 0F8C CD010000 jl 00402605 ; 否则跳就失败
00402438 . 8B0E mov ecx, dword ptr [esi]
0040243A . 56 push esi
0040243B . FF91 0C030000 call dword ptr [ecx+30C]
00402441 . 50 push eax
00402442 . 8D55 C4 lea edx, dword ptr [ebp-3C]
00402445 . 52 push edx
00402446 . FF15 30104000 call dword ptr [<&MSVBVM60.__vbaObjSe>; MSVBVM60.__vbaObjSet
0040244C . 8BF0 mov esi, eax
0040244E . 8B06 mov eax, dword ptr [esi]
00402450 . 8D4D C8 lea ecx, dword ptr [ebp-38]
00402453 . 51 push ecx
00402454 . 56 push esi
00402455 . FF90 A0000000 call dword ptr [eax+A0]
0040245B . DBE2 fclex
0040245D . 3BC3 cmp eax, ebx
0040245F . 7D 12 jge short 00402473
00402461 . 68 A0000000 push 0A0
00402466 . 68 401C4000 push 00401C40
0040246B . 56 push esi
0040246C . 50 push eax
0040246D . FF15 20104000 call dword ptr [<&MSVBVM60.__vbaHresu>; MSVBVM60.__vbaHresultCheckObj
00402473 > 8B55 C8 mov edx, dword ptr [ebp-38] ; 取注册码
00402476 . 895D C8 mov dword ptr [ebp-38], ebx
00402479 . 8D4D DC lea ecx, dword ptr [ebp-24]
0040247C . FFD7 call edi
0040247E . 8D4D C4 lea ecx, dword ptr [ebp-3C]
00402481 . FF15 B0104000 call dword ptr [<&MSVBVM60.__vbaFreeO>; MSVBVM60.__vbaFreeObj
00402487 . 8B55 DC mov edx, dword ptr [ebp-24]
0040248A . 52 push edx
0040248B . FF15 08104000 call dword ptr [<&MSVBVM60.__vbaLenBs>; MSVBVM60.__vbaLenBstr
00402491 . 8BC8 mov ecx, eax
00402493 . FF15 50104000 call dword ptr [<&MSVBVM60.__vbaI2I4>>; MSVBVM60.__vbaI2I4
00402499 . 66:3BC3 cmp ax, bx ; 注册码不能为空bx为空,ax为当前注册码位数
0040249C . 0F84 63010000 je 00402605 ; 跳了就挂
004024A2 . BF 01000000 mov edi, 1
004024A7 . 8BF7 mov esi, edi
004024A9 . 8B1D 0C104000 mov ebx, dword ptr [<&MSVBVM60.__vba>; MSVBVM60.__vbaFreeVarList
004024AF > 66:3B75 D0 cmp si, word ptr [ebp-30] ; 注册码位数
004024B3 . 0F8F 93000000 jg 0040254C ; 比较完则继续向下跳
004024B9 . C745 BC 01000>mov dword ptr [ebp-44], 1
004024C0 . C745 B4 02000>mov dword ptr [ebp-4C], 2
004024C7 . 8D45 CC lea eax, dword ptr [ebp-34]
004024CA . 8985 7CFFFFFF mov dword ptr [ebp-84], eax
004024D0 . C785 74FFFFFF>mov dword ptr [ebp-8C], 4008
004024DA . 8D4D B4 lea ecx, dword ptr [ebp-4C]
004024DD . 51 push ecx
004024DE . 0FBFD6 movsx edx, si
004024E1 . 52 push edx
004024E2 . 8D85 74FFFFFF lea eax, dword ptr [ebp-8C]
004024E8 . 50 push eax
004024E9 . 8D4D A4 lea ecx, dword ptr [ebp-5C]
004024EC . 51 push ecx
004024ED . FF15 44104000 call dword ptr [<&MSVBVM60.#632>] ; MSVBVM60.rtcMidCharVar
004024F3 . 8D55 A4 lea edx, dword ptr [ebp-5C]
004024F6 . 52 push edx
004024F7 . 8D45 C8 lea eax, dword ptr [ebp-38]
004024FA . 50 push eax
004024FB . FF15 74104000 call dword ptr [<&MSVBVM60.__vbaStrVa>; MSVBVM60.__vbaStrVarVal
00402501 . 50 push eax
00402502 . FF15 18104000 call dword ptr [<&MSVBVM60.#516>] ; MSVBVM60.rtcAnsiValueBstr
00402508 . 66:0FAFC6 imul ax, si ; 用户名位数第1位*用户名第1位ASCII+用户名位数第2位*用户
名第2位ASCII+用户名位数第3位*用户名第3位ASCII
0040250C . 0F80 5F010000 jo 00402671 ; 用户名为中文则跳向失败
00402512 . 0FBFC8 movsx ecx, ax
00402515 . 03CF add ecx, edi ; (1+6C=6D)+(2*6F=DE)(3*6E)
00402517 . 0F80 54010000 jo 00402671
0040251D . 8BF9 mov edi, ecx ; 6D+DE+14A
0040251F . 8D4D C8 lea ecx, dword ptr [ebp-38]
00402522 . FF15 B4104000 call dword ptr [<&MSVBVM60.__vbaFreeS>; MSVBVM60.__vbaFreeStr
00402528 . 8D55 A4 lea edx, dword ptr [ebp-5C]
0040252B . 52 push edx
0040252C . 8D45 B4 lea eax, dword ptr [ebp-4C]
0040252F . 50 push eax
00402530 . 6A 02 push 2
00402532 . FFD3 call ebx
00402534 . 83C4 0C add esp, 0C
00402537 . B8 01000000 mov eax, 1
0040253C . 66:03C6 add ax, si
0040253F . 0F80 2C010000 jo 00402671
00402545 . 8BF0 mov esi, eax
00402547 .^ E9 63FFFFFF jmp 004024AF ; 返回 004024AF继续比较注册注册码
0040254C > 69FF 96740100 imul edi, edi, 17496 ; edi中的当前值与17496相乘
00402552 . 0F80 19010000 jo 00402671
00402558 . 897D D8 mov dword ptr [ebp-28], edi ; 结果为16进制
0040255B . DB45 D8 fild dword ptr [ebp-28] ; 结果转换为10进制的数据为真正的注册码
0040255E . DD9D 14FFFFFF fstp qword ptr [ebp-EC]
00402564 . 8B4D DC mov ecx, dword ptr [ebp-24]
00402567 . 51 push ecx
00402568 . FF15 80104000 call dword ptr [<&MSVBVM60.__vbaR8Str>; MSVBVM60.__vbaR8Str
0040256E . DC9D 14FFFFFF fcomp qword ptr [ebp-EC]
00402574 . DFE0 fstsw ax
00402576 . F6C4 40 test ah, 40
00402579 0F84 86000000 je 00402605 ; 若相等则不跳转
0040257F . B9 04000280 mov ecx, 80020004
00402584 894D 8C mov dword ptr [ebp-74], ecx
00402587 . B8 0A000000 mov eax, 0A
0040258C . 8945 84 mov dword ptr [ebp-7C], eax
0040258F . 894D 9C mov dword ptr [ebp-64], ecx
00402592 . 8945 94 mov dword ptr [ebp-6C], eax
00402595 . C785 6CFFFFFF>mov dword ptr [ebp-94], 00401C74 ; congratulations
0040259F . BF 08000000 mov edi, 8
004025A4 . 89BD 64FFFFFF mov dword ptr [ebp-9C], edi
004025AA . 8D95 64FFFFFF lea edx, dword ptr [ebp-9C]
004025B0 . 8D4D A4 lea ecx, dword ptr [ebp-5C]
004025B3 . 8B35 98104000 mov esi, dword ptr [<&MSVBVM60.__vba>; MSVBVM60.__vbaVarDup
004025B9 . FFD6 call esi ; <&MSVBVM60.__vbaVarDup>
004025BB . C785 7CFFFFFF>mov dword ptr [ebp-84], 00401C54 ; good job,man!(验证成功)
注册名:long
注册码:102344886
注册名:fanyulong
注册码:470042496
注册名:QQ6944455
注册码:235688922
用户名位数第1位*用户名第1位ASCII+用户名位数第2位*用户
名第2位ASCII+用户名位数第3位*用户名第3位ASCII的值*17496的结果转换为10进制就是真正的注册码
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!