Applet Marquee Wizard v3.5
破解者:punisher(译者注:punisher为原文作者)
保护机制:姓名/注册码
破解过程:运行程序,出现主窗口和一个要你注册的nag screen。点击这个破框上的"Register"按钮,弹出注册窗口(还有一个preview窗口,关掉它)。
键入你的名字和随便一个注册码。我用punisher和45454545。
按Ctrl-d激活SOFTICE,下断点BPX HMEMCPY,按F5返回注册窗口。现在点击'REGISTER',程序被SOFTICE拦截。程序在到达保护机制前总共调用了三次HMEMCPY函数,我们必须略过前两次,所以按F5两次。我们现在是处在第三个调用HMEMCPY函数的CALL中,按F10直到这里:
0117:9E8E shr ecx, 2
0117:9E92 repz movsd <- 将你的名字移到另一个位址
0117:9E96 pop ecx
0117:9E98 and ecx, 3
0117:9E9C repz movsb
0117:9E9F xor dx, dx
在 REPZ MOVSD时看一下EDI的内容:
D ES:EDI
将光标带过REPZ MOVSB时你会看见你的名字被拷贝到你D过的位址中。注意一下你名字的起始地址,它的形式是253F:00000000(位址由于计算机的不同而各异)。我们将通过以下指令发现你名字的真实地址并在其上下断点:
PAGE 253F:00000000 <-你的地址会不同
你会看到:
Linear Physical
Attributes Type
xxxxxxxx xxxxxxxx P D
A U SYSTEM
你想要的是Linear的地址,所以你可以根据名字的字符数在该范围上下断点。你选择的段基址必须是30,如下:
BPR 30:xxxxxxxx 30:xxxxxxxx+8 rw
现在按F5让程序继续运行,SOFTICE会中断在此:
:00408DC9 repz cmpsb <- 我们的名字和真名比较
:00408DCB jz 00408DF1
:00408DCD mov al, [esi-01]
:00408DD0 cmp al, 61
:00408DD3 jb 00408DDD
:00408DD5 cmp al, 7A
:00408DD8 ja 00408DDD
在:00408dc9 repz cmpsb处,D ESI会看到你的名字,D EDI会看到两处ALPHA字符。第一处是和你的名字比较,第二处就是你的注册码了。还不快记下来!我看到的是p97z和23ws3,输入后OK!
- 标 题:再贴一篇译文 (1千字)
- 作 者:1212
- 时 间:2000-9-10 10:32:54
- 链 接:http://bbs.pediy.com