在这里下断,F9之后,输入假码(12位),确定,断下:
004B234A 55 push ebp
004B234B 68 D2244B00 push Liuyao26.004B24D2
004B2350 64:FF30 push dword ptr fs:[eax]
004B2353 64:8920 mov dword ptr fs:[eax],esp
004B2356 8D55 F8 lea edx,dword ptr ss:[ebp-8]
004B2359 33C0 xor eax,eax
004B235B E8 2007F5FF call Liuyao26.00402A80
004B2360 8B45 F8 mov eax,dword ptr ss:[ebp-8]
004B2363 8D55 FC lea edx,dword ptr ss:[ebp-4]
004B2366 E8 DD74F5FF call Liuyao26.00409848
004B236B 8B55 FC mov edx,dword ptr ss:[ebp-4]
004B236E A1 90794B00 mov eax,dword ptr ds:[4B7990]
004B2373 E8 6027F5FF call Liuyao26.00404AD8
004B2378 A1 90794B00 mov eax,dword ptr ds:[4B7990]
004B237D 8B00 mov eax,dword ptr ds:[eax]
004B237F E8 B829F5FF call Liuyao26.00404D3C
004B2384 8BD8 mov ebx,eax
004B2386 A1 90794B00 mov eax,dword ptr ds:[4B7990]
004B238B 8B00 mov eax,dword ptr ds:[eax]
004B238D 807C18 FF 5C cmp byte ptr ds:[eax+ebx-1],5C
004B2392 74 14 je short Liuyao26.004B23A8
004B2394 A1 90794B00 mov eax,dword ptr ds:[4B7990]
004B2399 BA E8244B00 mov edx,Liuyao26.004B24E8
004B239E E8 A129F5FF call Liuyao26.00404D44
004B23A3 A1 90794B00 mov eax,dword ptr ds:[4B7990]
004B23A8 68 F4244B00 push Liuyao26.004B24F4 ; ASCII "lypm10.txt"
004B23AD B9 08254B00 mov ecx,Liuyao26.004B2508 ; ASCII "lydat\lypic.bmp"
004B23B2 B2 01 mov dl,1
004B23B4 A1 B8084900 mov eax,dword ptr ds:[4908B8]
004B23B9 E8 7AE5FDFF call Liuyao26.00490938
004B23BE 8907 mov dword ptr ds:[edi],eax
004B23C0 8B07 mov eax,dword ptr ds:[edi]
004B23C2 E8 D9E8FDFF call Liuyao26.00490CA0
004B23C7 84C0 test al,al
004B23C9 74 11 je short Liuyao26.004B23DC
004B23CB A1 4C7B4B00 mov eax,dword ptr ds:[4B7B4C]
004B23D0 8B00 mov eax,dword ptr ds:[eax]
004B23D2 E8 05BAFBFF call Liuyao26.0046DDDC
004B23D7 E9 DB000000 jmp Liuyao26.004B24B7
004B23DC 8B07 mov eax,dword ptr ds:[edi]
004B23DE 8B40 10 mov eax,dword ptr ds:[eax+10] ; //机器码
004B23E1 E8 5629F5FF call Liuyao26.00404D3C
004B23E6 85C0 test eax,eax
004B23E8 75 26 jnz short Liuyao26.004B2410
004B23EA 6A 00 push 0
004B23EC 66:8B0D 18254B00 mov cx,word ptr ds:[4B2518]
004B23F3 B2 02 mov dl,2
004B23F5 B8 24254B00 mov eax,Liuyao26.004B2524
004B23FA E8 1D45F9FF call Liuyao26.0044691C
004B23FF A1 4C7B4B00 mov eax,dword ptr ds:[4B7B4C]
004B2404 8B00 mov eax,dword ptr ds:[eax]
004B2406 E8 D1B9FBFF call Liuyao26.0046DDDC
004B240B E9 A7000000 jmp Liuyao26.004B24B7
004B2410 8B07 mov eax,dword ptr ds:[edi]
004B2412 E8 EDECFDFF call Liuyao26.00491104 ; //F7跟进可以找到真码前6位
004B2417 84C0 test al,al
004B2419 74 23 je short Liuyao26.004B243E ;//爆破就nop
004B241B 8B07 mov eax,dword ptr ds:[edi]
004B241D E8 1EEFFDFF call Liuyao26.00491340 ; //F7跟进可以找到真码后6位
004B2422 84C0 test al,al
004B2424 74 18 je short Liuyao26.004B243E ;//爆破就nop
004B2426 8B86 F0020000 mov eax,dword ptr ds:[esi+2F0]
004B242C 8B80 48020000 mov eax,dword ptr ds:[eax+248]
004B2432 BA 4C254B00 mov edx,Liuyao26.004B254C
004B2437 8B08 mov ecx,dword ptr ds:[eax]
004B2439 FF51 2C call dword ptr ds:[ecx+2C]
004B243C EB 79 jmp short Liuyao26.004B24B7 ;//执行跳这里就OK了
004B243E BA 88254B00 mov edx,Liuyao26.004B2588 ; //未注册标志
004B2443 8BC6 mov eax,esi
004B2445 E8 52B7F9FF call Liuyao26.0044DB9C
004B244A 8B07 mov eax,dword ptr ds:[edi]
004B244C E8 43F1FDFF call Liuyao26.00491594
004B2451 84C0 test al,al
004B2453 74 4D je short Liuyao26.004B24A2
004B2455 8B07 mov eax,dword ptr ds:[edi]
004B2457 0FBF58 14 movsx ebx,word ptr ds:[eax+14]
004B245B 85DB test ebx,ebx
004B245D 7C 58 jl short Liuyao26.004B24B7
004B245F 6A 00 push 0
004B2461 68 A4254B00 push Liuyao26.004B25A4 ; //试用标志
004B2466 8D55 F0 lea edx,dword ptr ss:[ebp-10]
004B2469 8BC3 mov eax,ebx
004B246B E8 9C6DF5FF call Liuyao26.0040920C
004B2470 FF75 F0 push dword ptr ss:[ebp-10]
004B2473 68 C4254B00 push Liuyao26.004B25C4
004B2478 68 D0254B00 push Liuyao26.004B25D0 ; ASCII "
"
004B247D 68 DC254B00 push Liuyao26.004B25DC
004B2482 8D45 F4 lea eax,dword ptr ss:[ebp-C]
004B2485 BA 05000000 mov edx,5
004B248A E8 6D29F5FF call Liuyao26.00404DFC
004B248F 8B45 F4 mov eax,dword ptr ss:[ebp-C]
004B2492 66:8B0D 18254B00 mov cx,word ptr ds:[4B2518]
004B2499 B2 02 mov dl,2
004B249B E8 7C44F9FF call Liuyao26.0044691C
004B24A0 EB 15 jmp short Liuyao26.004B24B7
004B24A2 6A 00 push 0
004B24A4 66:8B0D 18254B00 mov cx,word ptr ds:[4B2518]
004B24AB B2 02 mov dl,2
004B24AD B8 04264B00 mov eax,Liuyao26.004B2604 ; //试用到期
004B24B2 E8 6544F9FF call Liuyao26.0044691C
004B24B7 33C0 xor eax,eax
004B24B9 5A pop edx
004B24BA 59 pop ecx
算法看起来不难,有兴趣的可以写个注册机.(我不会任何一门编程语言,所以写不来)