论坛: 编程破解 标题: [转帖]中华通讯录V5.9.100算法分析 复制本贴地址    
作者: yongmin [yongmin]    论坛用户   登录
作者:小子贼野
转贴自:一蓑烟雨

【文章作者】: 小子贼野[D.4s][DCG]
【软件名称】: 中华通讯录 V5.9.100
【下载地址】: http://www.skycn.com/soft/12563.html#download
【加壳方式】: Aspck
【保护方式】: 注册码
【更新时间】:2007-06-12 09:38:45
【软件介绍】:中华通讯录是一款实用的通讯录软件,软件界面采用WINXP风格,功能完善,最多能够容纳十万条通讯记录,新版本加强了搜索功能,用户不但可以通过姓名搜索,还可以按邮箱,手机号码,妮称,等项进行查询,功能非常强大。新版本增加了企业通讯录管理信息,用户可以对企业员工进行详细管理,方便易用。增加了新的皮肤,修正了换肤功能的BUG.启动时需要输入密码,使其它人不能看到你的通讯资料,让你的信息更安全。查询栏让你很快找到你的联系人。支持增加分类,添加,删除信息。
    最新版本:V5.5Build
对代码进行了优化,增强了软件功能。
    最新版本:V5.4Build
修正了企业通讯录数据报错BUG,增加了功能。
    最新版本:V5.3Build
修正了企业通讯录的两个BUG,功能有所增强,对打印功能做了修改。
**********************************************************************************************

[Copy to clipboard] [ - ]CODE:
005646D1  |.  55                push ebp
005646D2  |.  68 9C475600        push unpack.0056479C
005646D7  |.  64:FF30            push dword ptr fs:[eax]
005646DA  |.  64:8920            mov dword ptr fs:[eax],esp
005646DD  |.  33C0              xor eax,eax
005646DF  |.  8945 F4            mov [local.3],eax
005646E2  |.  8D55 F8            lea edx,[local.2]
005646E5  |.  8B45 FC            mov eax,[local.1]
005646E8  |.  8B80 140A0000      mov eax,dword ptr ds:[eax+A14]
005646EE  |.  E8 8534EDFF        call unpack.00437B78
005646F3  |.  8B45 F8            mov eax,[local.2]
005646F6  |.  E8 35FBE9FF        call unpack.00404230
005646FB  |.  8BD8              mov ebx,eax
005646FD  |.  85DB              test ebx,ebx
005646FF  |.  7E 2E              jle short unpack.0056472F
00564701  |.  BE 01000000        mov esi,1
00564706  |>  8D45 F0            /lea eax,[local.4]
00564709  |.  50                |push eax
0056470A  |.  B9 01000000        |mov ecx,1
0056470F  |.  8BD6              |mov edx,esi
00564711  |.  8B45 F8            |mov eax,[local.2]
00564714  |.  E8 1FFDE9FF        |call unpack.00404438
00564719  |.  8B45 F0            |mov eax,[local.4]
0056471C  |.  E8 D3FCE9FF        |call unpack.004043F4
00564721  |.  8A00              |mov al,byte ptr ds:[eax]
00564723  |.  25 FF000000        |and eax,0FF
00564728  |.  0145 F4            |add [local.3],eax
0056472B  |.  46                |inc esi
0056472C  |.  4B                |dec ebx
0056472D  |.^ 75 D7              \jnz short unpack.00564706        ;  以上循环是取机器码的Ascii
0056472F  |>  8D55 EC            lea edx,[local.5]
00564732  |.  8B45 FC            mov eax,[local.1]
00564735  |.  8B80 340A0000      mov eax,dword ptr ds:[eax+A34]
0056473B  |.  E8 3834EDFF        call unpack.00437B78
00564740  |.  8B45 EC            mov eax,[local.5]
00564743  |.  E8 005BEAFF        call unpack.0040A248
00564748  |.  8B55 F4            mov edx,[local.3]
0056474B  |.  81C2 FC7E1200      add edx,127EFC                    ;  机器码的Ascii+$127EFC
00564751  |.  81C2 9FE46400      add edx,unpack.0064E49F          ;  再加$64E49F
00564757  |.  3BC2              cmp eax,edx                      ;  比较,EDX中十进制即为真码
00564759  |.  75 19              jnz short unpack.00564774        ;  关键跳
0056475B  |.  B3 01              mov bl,1
0056475D  |.  B8 E0B65700        mov eax,unpack.0057B6E0
00564762  |.  8B55 F8            mov edx,[local.2]
00564765  |.  E8 9AF8E9FF        call unpack.00404004
0056476A  |.  8B45 F4            mov eax,[local.3]
0056476D  |.  A3 E4B65700        mov dword ptr ds:[57B6E4],eax
00564772  |.  EB 02              jmp short unpack.00564776
00564774  |>  33DB              xor ebx,ebx
00564776  |>  33C0              xor eax,eax
00564778  |.  5A                pop edx
00564779  |.  59                pop ecx
0056477A  |.  59                pop ecx
0056477B  |.  64:8910            mov dword ptr fs:[eax],edx
0056477E  |.  68 A3475600        push unpack.005647A3
00564783  |>  8D45 EC            lea eax,[local.5]
00564786  |.  E8 25F8E9FF        call unpack.00403FB0
0056478B  |.  8D45 F0            lea eax,[local.4]
0056478E  |.  E8 1DF8E9FF        call unpack.00403FB0
00564793  |.  8D45 F8            lea eax,[local.2]
00564796  |.  E8 15F8E9FF        call unpack.00403FB0
0056479B  \.  C3                retn
**********************************************************************************************
算法总结:

取机器码Ascii后+$127EFC+$64E49F就是注册码了

地主 发表时间: 07-09-27 11:09

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号