MP3 Splitter 3.1.1.0 汉化版算法分析 BY:NEXT 2010.2.2
MP3 Splitter 3.1.1.0 汉化版算法分析 BY:NEXT 2010.2.2下载地址:http://www.skycn.com/soft/3603.html
直接下载:http://125.46.13.254:82/down/HA_MP3Splitter3.110fix_LRH.zip
软件介绍:
MP3 Splitter 3.1.1.0 汉化版
一款易用的Mp3分割工具。可以把大的Mp3文件切割成若干小的Mp3文件,
集成了Mp3播放器可以在分割之前试听,并支持根据文件大小或时间等进行分割。
PECompact 2.x -> Jeremy Collake
不脱壳直接分析算法,先到达OEP,然后查找字符串下断点:
ESP定律到达OEP:
00413593 > $B8 B8924400 mov eax,MP3_Spli.004492B8 ;载入程序后停在这里,F8两次
00413598 ?50 push eax
00413599 ?64:FF35 00000>push dword ptr fs: ;hr esp,运行四次
--------------------------------------------------------------------------------------------------
7C953FA2 3B45 F8 cmp eax,dword ptr ss: ; 一次
7C953FA5 72 09 jb short ntdll.7C953FB0
7C953FA7 3B45 F4 cmp eax,dword ptr ss:
7C953FAA 0F82 D30E0000 jb ntdll.7C954E83
7C953FB0 50 push eax
7C953FB1 E8 67000000 call ntdll.7C95401D
7C953FB6 84C0 test al,al
7C953FB8 0F84 C50E0000 je ntdll.7C954E83
7C953FBE F605 FAE3997C 8>test byte ptr ds:,80
7C953FC5 0F85 98C10100 jnz ntdll.7C970163
7C953FCB FF73 04 push dword ptr ds:
7C953FCE 8D45 EC lea eax,dword ptr ss: ; 二次
7C953FD1 50 push eax
7C953FD2 FF75 0C push dword ptr ss:
7C953FD5 53 push ebx
7C953FD6 56 push esi
--------------------------------------------------------------------------------------------------
004492EB 53 push ebx ; 三次
004492EC 51 push ecx
004492ED 57 push edi
004492EE 56 push esi
004492EF 52 push edx
--------------------------------------------------------------------------------------------------
0044937A- FFE0 jmp eax ; 四次到这里,F8到OEP!
0044937C 93 xchg eax,ebx
0044937D 35 41000000 xor eax,41
00449382 0000 add byte ptr ds:,al
--------------------------------------------------------------------------------------------------
00413593 > $6A 60 push 60 ;程序OEP
00413595 .68 002D4300 push MP3_Spli.00432D00
0041359A .E8 350E0000 call MP3_Spli.004143D4
0041359F .BF 94000000 mov edi,94
004135A4 .8BC7 mov eax,edi
004135A6 .E8 C5EBFFFF call MP3_Spli.00412170
004135AB .8965 E8 mov dword ptr ss:,esp
004135AE .8BF4 mov esi,esp
004135B0 .893E mov dword ptr ds:,edi
004135B2 .56 push esi ; /pVersionInformation
004135B3 .FF15 9CE24200 call dword ptr ds: ; \GetVersionExA
--------------------------------------------------------------------------------------------------
很奇怪,程序载入后跟OEP竟然是一个地址,但是载入后查找字符串什么都看不到,本人很菜,希望前辈指点一下!
00413593 > $B8 B8924400 mov eax,MP3_Spli.004492B8 ;载入程序后停在这里,F8两次
00413593 > $6A 60 push 60 ;程序OEP
--------------------------------------------------------------------------------------------------
查找字符串,然后跟随到代码找段首下断点开始分析:
超级字串参考
地址 反汇编 文本字串
00401010 mov eax,MP3_Spli.0042E5B0 |\tC
00401752 push MP3_Spli.0042E81C 请输入正确的注册名!
00401770 push MP3_Spli.0042E7F4 请输入正确的注册码!
0040199E push MP3_Spli.0042E7D8 注册成功!o(∩_∩)o
004019B4 push MP3_Spli.0042E7CC username
004019B9 push MP3_Spli.0042E7C4 Option
004019D1 push MP3_Spli.0042E7B0 registration_code
004019D6 push MP3_Spli.0042E7C4 Option
004019F4 push MP3_Spli.0042E798 注册失败!
00401CA2 push MP3_Spli.0042CE08 感bC
无关紧要的代码就不贴了,直接看下面的算法分析过程
算法分析:
0040195E > \8A5424 19 mov dl,byte ptr ss: ;//开始算法分析
00401962 .B0 39 mov al,39 ;//eax低位置39H
00401964 .3AD0 cmp dl,al ;//试炼码第一位与真码第一位比较→第一位=9
00401966 .0F85 84000000 jnz MP3_Spli.004019F0 ;//不相等则跳向注册失败!
0040196C .807C24 13 33cmp byte ptr ss:,33 ;//试炼码第二位与33H比较→第二位=3
00401971 .75 7D jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
00401973 .384424 14 cmp byte ptr ss:,al ;//试炼码第三位与39H比较→第三位=9
00401977 .75 77 jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
00401979 .8A5424 15 mov dl,byte ptr ss: ;//试炼码第四位存入dl
0040197D .B0 31 mov al,31 ;//31H存入al
0040197F .3AD0 cmp dl,al ;//比较dl,al→第四位=1
00401981 .75 6D jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
00401983 .80F9 33 cmp cl,33 ;//试炼码第五位与33H比较→第五位=3
00401986 .75 68 jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
00401988 .384424 1A cmp byte ptr ss:,al ;//试炼码第六位与37H比较→第六位=1
0040198C .75 62 jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
0040198E .807C24 1B 34cmp byte ptr ss:,34 ;//试炼码第七位与34H比较→第七位=4
00401993 .75 5B jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
00401995 .80FB 36 cmp bl,36 ;//试炼码第八位与36H比较→第八位=6
00401998 .75 56 jnz short MP3_Spli.004019F0 ;//不相等则跳向注册失败!
0040199A >6A 00 push 0
0040199C .6A 00 push 0
0040199E .68 D8E74200 push MP3_Spli.0042E7D8 ;注册成功!o(∩_∩)o
注册码为固定码:93913146
胜利截图:
国产软件现在还有固定码? 原帖由 pao 于 2010-2-2 13:25 发表 https://www.chinapyg.com/images/common/back.gif
国产软件现在还有固定码?
不好意思哈,没看见汉化版几个字 加亮鼓励一下哈/:018 学习了,谢谢分享 这个要慢慢看了,有点不太好理解...
页:
[1]