Netscape Cache Explorer 1.29 for Win95

其实这软体我以前破过了
我当时也有寄到 HC啊
不过是旧版的, v1.28
但到了v 1.29, 注册码又改了
不过只是小改变而已 

1: 输入name,password,按下OK
   等出现错误视窗时,
   按ctrl-d进入winice,下 bpx lockmytask
   bpx lockmytask 是用来拦截视窗关闭时,
   但不见得是所有的视窗
   ,按F5返回win95,按下确定,被winice拦住
2: 按数下F12到了
   cs:004256a5 call messagebpx
   cs:004256aa jmp  004256ff    <-停在此处
   往上看要如何跳过 cs:004256a5 call
   发现在 cs:00425664 mov eax, [004322c0] <- 在此设断点
                       cmp eax, [004322b0] <- 一定是18D
                       jz  004256ac

3: 再注册一次,到了 cs:00425664
 被拦截下来,因为刚才有设断点了
 令 eax=18d,下 r ax 18d
 按F5,如此就没有那个注册失败的对话盒跑出来了
 但仍是没有注册成功,可是已知道了一个线索了
4:
 再注册一次,到了 cs:00425664
 下 bd * (暂停断点),再下 bpm 004322c0
 返回win95,任意增加或减少一个password
 (但字数尽量不要少於 8个字,若少於 8个字
就不会触发 winice)
5:
  返回win95,任意增加或减少一个password ,再注册一次n
  触发winice, 停在
     cs:0042565a  mov  [004322c0],eax 
  往上一看, 
     cs:00425654 call 00425953 
     看来这应该就是算出 eax 的 SUBROUTINE 了
   在前面一些
     cs:00425648 call xxxxxxx
     也是很可疑的
     在这两个地方设断点,再注册一次
6:
  到了cs:00425648
 按F8 进入观察
 到了 
 cs:00425928 lea esi,[ebp-8]
 走完了这一行
 下 d esi, 可看到 刚输入的 name被扩充成 8个字
 如我刚输入 TRACY,就被扩充成 TRACYTRA
 如果刚输入的name超过8个字呢? 我就没试过了
 在来以下的几行,就开始运算了
 运算之後,产生一组 八个字的阵列
 我叫他 A 阵列好了 .
 这 A阵列是注册成功的关键
7:
  到了 cs:00425654 call 00425953 
  按F8进入观察
  目标是出来时,让 EAX等於 18D, 就注册成功了
  有兴趣的网友可试试看,
  当然了,要注册成功,  A 阵列 不只一组
  我算出来的是 2 3 3 6 5 4 3 2 

关键就是这些地方了
我所算出来的是
name : TRACY
password: IHQVQKHP
这软体会辨别大小写
而输入password时
只看到 * ,也不知道底输入什麽,
所以要小心一点,不要输入小写字母

 




若想改注册的名字
用 winice中的 symbol loader 的功能
在 cs:00425928 lea esi,[ebp-8]
下 d esi 改掉 name 就行了
或是在 cs:00425977 mov al,[ebx]
下 d ebx,改掉就行了