老文章档案 · 2003 年

音乐处理acoustica2.0注册码破解及注册机 (8千字)

破解教程 · 算法分析 · 2003-08-11 · 作者:esoft2001.51.net 人气: · 出处:赢政天下整理收藏)

音乐处理acoustica2.0注册码破解及注册机

工具:TRW2000,Keymake,w32dasm

软件介绍:acoustica2.0,一个功能强大的声音处理程序,能实现声音文件的录制、编辑及一些特效,象Cooledit等软件一样。

1、运行程序,弹出注册框,输入name:esoft,Company:dzzx,Key code:123456,按Register。出来一个对话框,只有一个标题不知道是什么意思。软件要重新运行软件才检查注册成功与否。关闭软件,我门来找它把注册信息放的哪里,经过查找注册码存放在注册表里面,而且是明文形式的。

HKEY_CURRENT_USER\Software\Acon AS\Acoustica\2.0\RegisterInfo

name:esoft

Company:dzzx

Key code:123456

2、启动trw,load软件,在入口处被trw断下,下断点

bpx RegQueryValueExa do "db *(esp+8)"

按F5几次后,在trw数据窗口的右上角区域可以看到存放注册信息的几个键的名称name、Company、Key等字样。

bd *

pmodule

这时按F10单步跟踪,不久来到下面:

:00446D73 83C418 add esp, 00000018

:00446D76 8D8D60FFFFFF lea ecx, dword ptr [ebp+FFFFFF60]

:00446D7C A1168B4A00 mov eax, dword ptr [004A8B16]

:00446D81 6A50 push 00000050

:00446D83 6829A04900 push 0049A029

:00446D88 51 push ecx

* Possible StringData Ref from Data Obj ->"Company"

|

:00446D89 6821A04900 push 0049A021

* Possible StringData Ref from Data Obj ->"RegisterInfo"

|

:00446D8E 6814A04900 push 0049A014

:00446D93 50 push eax

:00446D94 E807CEFCFF call 00413BA0

:00446D99 83C418 add esp, 00000018

:00446D9C 8D9510FFFFFF lea edx, dword ptr [ebp+FFFFFF10]

:00446DA2 8B0D168B4A00 mov ecx, dword ptr [004A8B16]

:00446DA8 6A50 push 00000050

:00446DAA 683BA04900 push 0049A03B

:00446DAF 52 push edx

* Possible StringData Ref from Data Obj ->"Key"

|

:00446DB0 6837A04900 push 0049A037

* Possible StringData Ref from Data Obj ->"RegisterInfo"

|

:00446DB5 682AA04900 push 0049A02A

:00446DBA 51 push ecx

:00446DBB E8E0CDFCFF call 00413BA0

:00446DC0 83C418 add esp, 00000018

* Possible Ref to Menu: MenuID_0064, Item: "Draw Freehand Volume Curve..."

|

* Possible Reference to String Resource ID=00001: "Enter an arbitary volume curve"

|

:00446DC3 BB01000000 mov ebx, 00000001

:00446DC8 8D7DB0 lea edi, dword ptr [ebp-50]

:00446DCB EB16 jmp 00446DE3

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:00446DEF(C)

|

:00446DCD 0FBE07 movsx eax, byte ptr [edi]

:00446DD0 8BD3 mov edx, ebx

:00446DD2 83E20F and edx, 0000000F

:00446DD5 0FBE8C1500FFFFFF movsx ecx, byte ptr [ebp+edx-00000100]

:00446DDD F7E9 imul ecx

:00446DDF 03F0 add esi, eax

:00446DE1 43 inc ebx

:00446DE2 47 inc edi

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:00446DCB(U)

|

:00446DE3 8D45B0 lea eax, dword ptr [ebp-50]

:00446DE6 50 push eax

:00446DE7 E870520300 call 0047C05C

:00446DEC 59 pop ecx

:00446DED 3BD8 cmp ebx, eax

:00446DEF 76DC jbe 00446DCD

* Possible Ref to Menu: MenuID_0064, Item: "Draw Freehand Volume Curve..."

|

* Possible Reference to String Resource ID=00001: "Enter an arbitary volume curve"

|

:00446DF1 BB01000000 mov ebx, 00000001

:00446DF6 8DBD60FFFFFF lea edi, dword ptr [ebp+FFFFFF60]

:00446DFC EB16 jmp 00446E14

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:00446E23(C)

|

:00446DFE 0FBE07 movsx eax, byte ptr [edi]

:00446E01 8BD3 mov edx, ebx

:00446E03 83E20F and edx, 0000000F

:00446E06 0FBE8C15F0FEFFFF movsx ecx, byte ptr [ebp+edx-00000110]

:00446E0E F7E9 imul ecx

:00446E10 03F0 add esi, eax

:00446E12 43 inc ebx

:00446E13 47 inc edi

* Referenced by a (U)nconditional or (C)onditional Jump at Address:

|:00446DFC(U)

|

:00446E14 8D8560FFFFFF lea eax, dword ptr [ebp+FFFFFF60]

:00446E1A 50 push eax

:00446E1B E83C520300 call 0047C05C

:00446E20 59 pop ecx

:00446E21 3BD8 cmp ebx, eax

:00446E23 76D9 jbe 00446DFE

:00446E25 8BC6 mov eax, esi

:00446E27 B9A0860100 mov ecx, 000186A0

:00446E2C 33D2 xor edx, edx

:00446E2E F7F1 div ecx

:00446E30 52 push edx

* Possible StringData Ref from Data Obj ->"AC200-%d"

|

:00446E31 683CA04900 push 0049A03C

:00446E36 8D85A0FEFFFF lea eax, dword ptr [ebp+FFFFFEA0]

:00446E3C 50 push eax

:00446E3D E8CA890300 call 0047F80C(算注册码,形式为AC200-xxxxx后面是五位)

:00446E42 83C40C add esp, 0000000C(在此处D ECX看到注册码)

:00446E45 8D9510FFFFFF lea edx, dword ptr [ebp+FFFFFF10]

:00446E4B 52 push edx

:00446E4C 8D8DA0FEFFFF lea ecx, dword ptr [ebp+FFFFFEA0]

:00446E52 51 push ecx

* Reference To: KERNEL32.lstrcmpA, Ord:0000h

|

:00446E53 E89E470400 Call 0048B5F6(这里调用lstrcmpA函数比较注册码)

:00446E58 85C0 test eax, eax(若相同则EAX的值为0)

:00446E5A 0F94C0 sete al

:00446E5D 83E001 and eax, 00000001

:00446E60 5F pop edi

:00446E61 5E pop esi

:00446E62 5B pop ebx

:00446E63 8BE5 mov esp, ebp

:00446E65 5D pop ebp

:00446E66 C3 ret

:00446E67 90 nop

上面的这段代码是验证注册码的部分,程序在启动时和注册时都要调用它。

:00447100 E81BFCFFFF call 00446D20(这里是启动时的调用)

:00447105 59 pop ecx

:00447106 84C0 test al, al(未注册时AL的值是0)

:00447108 7411 je 0044711B(这里不跳就爆破,不提示注册也没有时间限制)

:0044710A 8B8514FDFFFF mov eax, dword ptr [ebp+FFFFFD14]

:00447110 64A300000000 mov dword ptr fs:[00000000], eax

:00447116 E91C050000 jmp 00447637

…………

:00447599 E882F7FFFF call 00446D20(这里是注册时的调用)

:0044759E 59 pop ecx

:0044759F 84C0 test al, al

:004475A1 7440 je 004475E3

* Possible Reference to Dialog: DialogID_0072, CONTROL_ID:00C8, ""

|

:004475A3 68C8000000 push 000000C8

:004475A8 8D9FB6000000 lea ebx, dword ptr [edi+000000B6]

:004475AE 53 push ebx

:004475AF 68B4230000 push 000023B4

:004475B4 8D4704 lea eax, dword ptr [edi+04]

:004475B7 50 push eax

:004475B8 E8F8B40200 call 00472AB5

:004475BD 83C410 add esp, 00000010

:004475C0 8BD3 mov edx, ebx

:004475C2 8B4F66 mov ecx, dword ptr [edi+66]

:004475C5 8B01 mov eax, dword ptr [ecx]

:004475C7 6A00 push 00000000

* Possible StringData Ref from Data Obj ->"Acoustica"

|

:004475C9 6807A14900 push 0049A107

:004475CE 52 push edx

:004475CF 8B500C mov edx, dword ptr [eax+0C]

:004475D2 52 push edx

:004475D3 8B4868 mov ecx, dword ptr [eax+68]

:004475D6 51 push ecx

:004475D7 E83AD60100 call 00464C16(只有标题的对话框)

:004475DC 83C414 add esp, 00000014

:004475DF 33DB xor ebx, ebx

:004475E1 EB40 jmp 00447623

3、注册机:

使用“注册机编写器(Keymaker)”之“另类注册机”功能

1、程序名称:acoustica.exe

2、添加数据:

中断地址:446E42

中断次数:2

第一字节:83

指令长度:3

3、选择内存方式ECX。

通过对程序的分析我们知道其注册码形式为AC200-xxxxx(后面是五位),当我们不填name和Company时,在Keycode框中直接填入AC200-0,奇异的事情发生了,竟然能够注册成功,这也算是程序的一个漏洞吧。

esoft2001.51.net

2002年4月5日 (出处:赢政天下整理收藏)

相关文章:

·语音界面2.0算法分析及注册机源码!

·侠客系统修改器1.21破解手记--算法分析

·中文拨号上网计时计费器 V4.12注册算法分析

·ClockWise 3.22e注册码算法分析

·CoolClock V1.02注册算法分析

·Directory Scanner v1.5 注册算法分析

·Disk Chief 1.2 简单注册算法分析

·EffeTech HTTP Sniffer 3.2注册算法分析

·eLib2.01算法分析

·EZ MP3 Recorder 1.15 注册算法分析

相关软件:

→ 特别推荐

→ 热点TOP10

我为人人《《==》》人人为我

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright © 1999-2003

winzheng.com All Rights Reserved.

繁体版:由华琦数码技术提供

Powered

by:MeSky.Net

2003-2004 年,宽带刚刚普及,下载站的文章区是许多人学电脑的第一课堂。
🕰 → 🤖 从那时到现在

当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。

档案性质声明:本页为赢政天下(1998-2011)老文章的历史档案复原, 内容反映当年发表时的原貌——包括当年的技术表述、软件版本与观点,部分方法在今天已不适用或不合规,仅作互联网历史记录与研究用途, 不提供任何形式的下载。原始数据经由公共网络存档(Internet Archive)复原。发现问题请联系我们
← 返回老文章档案 · 软件史档案馆 · 赢政天下站史