|
![]() | 作者: yongmin [yongmin]
![]() |
登录 |
作者:小子贼野 转贴自:一蓑烟雨 【文章标题】: XX网络电视 2.10算法分析 【文章作者】: 小子贼野 【作者主页】: http://mayday.unpack.cn 【下载地址】: http://www.onlinedown.net/soft/45502.htm#download 【编写语言】: Borland Delphi 6.0 - 7.0 【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教! -------------------------------------------------------------------------------- 【详细过程】 004F2AB4 /$ 55 push ebp 004F2AB5 |. 8BEC mov ebp, esp 004F2AB7 |. 51 push ecx 004F2AB8 |. B9 04000000 mov ecx, 4 004F2ABD |> 6A 00 /push 0 004F2ABF |. 6A 00 |push 0 004F2AC1 |. 49 |dec ecx 004F2AC2 |.^ 75 F9 \jnz short 004F2ABD 004F2AC4 |. 51 push ecx 004F2AC5 |. 874D FC xchg dword ptr [ebp-4], ecx 004F2AC8 |. 53 push ebx 004F2AC9 |. 56 push esi 004F2ACA |. 57 push edi 004F2ACB |. 8BF9 mov edi, ecx 004F2ACD |. 8955 FC mov dword ptr [ebp-4], edx 004F2AD0 |. 8B45 FC mov eax, dword ptr [ebp-4] 004F2AD3 |. E8 2C1CF1FF call 00404704 004F2AD8 |. 33C0 xor eax, eax 004F2ADA |. 55 push ebp 004F2ADB |. 68 752C4F00 push 004F2C75 004F2AE0 |. 64:FF30 push dword ptr fs:[eax] 004F2AE3 |. 64:8920 mov dword ptr fs:[eax], esp 004F2AE6 |. 8BC7 mov eax, edi 004F2AE8 |. E8 6717F1FF call 00404254 004F2AED |. 8B45 FC mov eax, dword ptr [ebp-4] 004F2AF0 |. E8 1F1AF1FF call 00404514 004F2AF5 |. 8BF0 mov esi, eax 004F2AF7 |. 85F6 test esi, esi 004F2AF9 |. 7E 26 jle short 004F2B21 004F2AFB |. BB 01000000 mov ebx, 1 004F2B00 |> 8D4D EC /lea ecx, dword ptr [ebp-14] 004F2B03 |. 8B45 FC |mov eax, dword ptr [ebp-4] 004F2B06 |. 0FB64418 FF |movzx eax, byte ptr [eax+ebx-1] ; 取用户名的Ascii 004F2B0B |. 33D2 |xor edx, edx ; EDX=0 004F2B0D |. E8 3264F1FF |call 00408F44 004F2B12 |. 8B55 EC |mov edx, dword ptr [ebp-14] ; 用户名的Ascii存放到EDX中 004F2B15 |. 8D45 F8 |lea eax, dword ptr [ebp-8] 004F2B18 |. E8 FF19F1FF |call 0040451C 004F2B1D |. 43 |inc ebx 004F2B1E |. 4E |dec esi 004F2B1F |.^ 75 DF \jnz short 004F2B00 ; 以上循环是取用户名的16进制Ascii,并以字符串的形式连接起来 004F2B21 |> 8B45 F8 mov eax, dword ptr [ebp-8] 004F2B24 |. E8 EB19F1FF call 00404514 004F2B29 |. 8BF0 mov esi, eax 004F2B2B |. 85F6 test esi, esi 004F2B2D |. 7E 2C jle short 004F2B5B 004F2B2F |. BB 01000000 mov ebx, 1 004F2B34 |> 8B45 F8 /mov eax, dword ptr [ebp-8] 004F2B37 |. E8 D819F1FF |call 00404514 004F2B3C |. 2BC3 |sub eax, ebx 004F2B3E |. 8B55 F8 |mov edx, dword ptr [ebp-8] 004F2B41 |. 8A1402 |mov dl, byte ptr [edx+eax] 004F2B44 |. 8D45 E8 |lea eax, dword ptr [ebp-18] 004F2B47 |. E8 F018F1FF |call 0040443C 004F2B4C |. 8B55 E8 |mov edx, dword ptr [ebp-18] 004F2B4F |. 8D45 F4 |lea eax, dword ptr [ebp-C] 004F2B52 |. E8 C519F1FF |call 0040451C 004F2B57 |. 43 |inc ebx 004F2B58 |. 4E |dec esi 004F2B59 |.^ 75 D9 \jnz short 004F2B34 ; 将上一个循环取得的字符串倒转 004F2B5B |> 8D45 F8 lea eax, dword ptr [ebp-8] 004F2B5E |. 50 push eax 004F2B5F |. B9 04000000 mov ecx, 4 004F2B64 |. BA 01000000 mov edx, 1 004F2B69 |. 8B45 F4 mov eax, dword ptr [ebp-C] 004F2B6C |. E8 031CF1FF call 00404774 004F2B71 |. 8D45 F4 lea eax, dword ptr [ebp-C] 004F2B74 |. 50 push eax 004F2B75 |. B9 04000000 mov ecx, 4 004F2B7A |. BA 05000000 mov edx, 5 004F2B7F |. 8B45 F4 mov eax, dword ptr [ebp-C] 004F2B82 |. E8 ED1BF1FF call 00404774 ; 取前4位 004F2B87 |. 8B45 F8 mov eax, dword ptr [ebp-8] 004F2B8A |. E8 8519F1FF call 00404514 004F2B8F |. 83F8 04 cmp eax, 4 004F2B92 |. 7D 2F jge short 004F2BC3 004F2B94 |. 8B45 F8 mov eax, dword ptr [ebp-8] 004F2B97 |. E8 7819F1FF call 00404514 004F2B9C |. 8BD8 mov ebx, eax 004F2B9E |. 83FB 03 cmp ebx, 3 004F2BA1 |. 7F 20 jg short 004F2BC3 004F2BA3 |> 8D4D E4 /lea ecx, dword ptr [ebp-1C] 004F2BA6 |. 8BC3 |mov eax, ebx 004F2BA8 |. C1E0 02 |shl eax, 2 004F2BAB |. 33D2 |xor edx, edx 004F2BAD |. E8 9263F1FF |call 00408F44 004F2BB2 |. 8B55 E4 |mov edx, dword ptr [ebp-1C] 004F2BB5 |. 8D45 F8 |lea eax, dword ptr [ebp-8] 004F2BB8 |. E8 5F19F1FF |call 0040451C 004F2BBD |. 43 |inc ebx 004F2BBE |. 83FB 04 |cmp ebx, 4 004F2BC1 |.^ 75 E0 \jnz short 004F2BA3 004F2BC3 |> 8B45 F4 mov eax, dword ptr [ebp-C] ; 从第五位开始再取4位 004F2BC6 |. E8 4919F1FF call 00404514 004F2BCB |. 83F8 04 cmp eax, 4 004F2BCE |. 7D 2F jge short 004F2BFF 004F2BD0 |. 8B45 F4 mov eax, dword ptr [ebp-C] 004F2BD3 |. E8 3C19F1FF call 00404514 004F2BD8 |. 8BD8 mov ebx, eax 004F2BDA |. 83FB 03 cmp ebx, 3 004F2BDD |. 7F 20 jg short 004F2BFF 004F2BDF |> 8D4D E0 /lea ecx, dword ptr [ebp-20] 004F2BE2 |. 8BC3 |mov eax, ebx 004F2BE4 |. C1E0 02 |shl eax, 2 004F2BE7 |. 33D2 |xor edx, edx 004F2BE9 |. E8 5663F1FF |call 00408F44 004F2BEE |. 8B55 E0 |mov edx, dword ptr [ebp-20] 004F2BF1 |. 8D45 F4 |lea eax, dword ptr [ebp-C] 004F2BF4 |. E8 2319F1FF |call 0040451C 004F2BF9 |. 43 |inc ebx 004F2BFA |. 83FB 04 |cmp ebx, 4 004F2BFD |.^ 75 E0 \jnz short 004F2BDF 004F2BFF |> 8D45 F0 lea eax, dword ptr [ebp-10] 004F2C02 |. BA 8C2C4F00 mov edx, 004F2C8C ; "TV45erpe"固定字符串 004F2C07 |. E8 E016F1FF call 004042EC 004F2C0C |. 8D45 DC lea eax, dword ptr [ebp-24] 004F2C0F |. 50 push eax 004F2C10 |. B9 04000000 mov ecx, 4 004F2C15 |. BA 01000000 mov edx, 1 004F2C1A |. 8B45 F0 mov eax, dword ptr [ebp-10] 004F2C1D |. E8 521BF1FF call 00404774 004F2C22 |. FF75 DC push dword ptr [ebp-24] 004F2C25 |. 68 A02C4F00 push 004F2CA0 ; 连接符号 004F2C2A |. FF75 F8 push dword ptr [ebp-8] 004F2C2D |. 8D45 D8 lea eax, dword ptr [ebp-28] 004F2C30 |. 50 push eax 004F2C31 |. B9 05000000 mov ecx, 5 004F2C36 |. BA 05000000 mov edx, 5 004F2C3B |. 8B45 F0 mov eax, dword ptr [ebp-10] 004F2C3E |. E8 311BF1FF call 00404774 004F2C43 |. FF75 D8 push dword ptr [ebp-28] ; 固定字符串"erpe" 004F2C46 |. 68 A02C4F00 push 004F2CA0 ; 连接符号 004F2C4B |. FF75 F4 push dword ptr [ebp-C] 004F2C4E |. 8BC7 mov eax, edi 004F2C50 |. BA 06000000 mov edx, 6 004F2C55 |. E8 7A19F1FF call 004045D4 004F2C5A |. 33C0 xor eax, eax 004F2C5C |. 5A pop edx 004F2C5D |. 59 pop ecx 004F2C5E |. 59 pop ecx 004F2C5F |. 64:8910 mov dword ptr fs:[eax], edx 004F2C62 |. 68 7C2C4F00 push 004F2C7C 004F2C67 |> 8D45 D8 lea eax, dword ptr [ebp-28] 004F2C6A |. BA 0A000000 mov edx, 0A 004F2C6F |. E8 0416F1FF call 00404278 004F2C74 \. C3 retn 004F2C75 .^ E9 FE0EF1FF jmp 00403B78 004F2C7A .^ EB EB jmp short 004F2C67 004F2C7C . 5F pop edi 004F2C7D . 5E pop esi 004F2C7E . 5B pop ebx 004F2C7F . 8BE5 mov esp, ebp 004F2C81 . 5D pop ebp 004F2C82 . C3 retn **************************************************************************************** 算法总结: 太简单了,没什么好总结的,看上面的分析就知道了 注册码形式: 固定字符串-倒转(a)固定字符串-倒转(a) ------------------------------------------------------------------------------- 【版权声明】: 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢! |
地主 发表时间: 08-01-07 11:16 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号