论坛: 编程破解 标题: [转帖]XX网络电视2.10算法分析 复制本贴地址    
作者: 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号