老文章档案 · 2003 年

暴破 PerformanceTest 3.4

赢政天下 [WINZHENG.COM] · 网络学院 · 2003-06-09 · 作者:fishs 人气: · 出处:赢政天下收集整理)

软件名称:PassMark PerformanceTest 3.4

破解目的:30 天试用期,程序启动时跳出注册窗

破解工具:TRW2000、W32Dsm89、UltraEdit

首先用 TRW2000 载入程序,停留在程序入口处,然后开始不停的按 F10 单步跟踪……

//******************** Program Entry Point ********

.

.

.

* Reference To: KERNEL32.GetModuleHandleA, Ord:0126h

|

:00416B34 FF1520314200 Call dword ptr [00423120]

:00416B3A 50 push eax

:00416B3B E8302AFFFF call 00409570 <---- 这里跳出注册窗,F8 跟进

:00416B40 8945A0 mov dword ptr [ebp-60], eax

:00416B43 50 push eax

:00416B44 E8D9F9FFFF call 00416522

:00416B49 8B45EC mov eax, dword ptr [ebp-14]

:00416B4C 8B08 mov ecx, dword ptr [eax]

:00416B4E 8B09 mov ecx, dword ptr [ecx]

:00416B50 894D98 mov dword ptr [ebp-68], ecx

:00416B53 50 push eax

:00416B54 51 push ecx

:00416B55 E802570000 call 0041C25C

:00416B5A 59 pop ecx

:00416B5B 59 pop ecx

:00416B5C C3 ret

重新载入,按 F8 跟进 call 00409570,继续按 F10 单步跟踪……

.

.

.

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

|:00409973(C)

|

:0040997D 8B0DC0144400 mov ecx, dword ptr [004414C0]

:00409983 8B742414 mov esi, dword ptr [esp+14]

:00409987 33C0 xor eax, eax

:00409989 83F910 cmp ecx, 00000010

:0040998C 0F9DC0 setnl al

:0040998F 3BF3 cmp esi, ebx

:00409991 A388144400 mov dword ptr [00441488], eax

:00409996 7410 je 004099A8

:00409998 8BCE mov ecx, esi

:0040999A E861550000 call 0040EF00

:0040999F 56 push esi

:004099A0 E883B80000 call 00415228

:004099A5 83C404 add esp, 00000004

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

|:00409996(C)

|

:004099A8 E8A3480000 call 0040E250 <---- 这里跳出注册窗,F8 跟进

:004099AD 85C0 test eax, eax

:004099AF 750C jne 004099BD

:004099B1 E85A200000 call 0040BA10

:004099B6 53 push ebx

重新载入,按 F8 跟进 call 0040E250,按 F10 单步跟踪……

* Possible StringData Ref from Data Obj ->"2旒"

|

:0040E250 C705F81F440040B34200 mov dword ptr [00441FF8], 0042B340

:0040E25A C705F41F440000000000 mov dword ptr [00441FF4], 00000000

:0040E264 E8C7000000 call 0040E330 <---- 这里跳出注册窗。跟踪到这里的时候,我已经

没什么耐心了,而且我在下面发现了一些重要

的提示……

:0040E269 83F801 cmp eax, 00000001

:0040E26C 7501 jne 0040E26F

:0040E26E C3 ret

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

|:0040E26C(C)

|

:0040E26F 83F803 cmp eax, 00000003

:0040E272 0F84A7000000 je 0040E31F

:0040E278 833DF41F44000F cmp dword ptr [00441FF4], 0000000F

:0040E27F 7523 jne 0040E2A4

:0040E281 6A30 push 00000030

* Reference To: USER32.MessageBeep, Ord:01BDh

|

:0040E283 FF15F8324200 Call dword ptr [004232F8]

:0040E289 A1C41A4400 mov eax, dword ptr [00441AC4]

:0040E28E 6A10 push 00000010

* Possible StringData Ref from Data Obj ->"Date / Time Error"

|

:0040E290 6804B44200 push 0042B404

* Possible StringData Ref from Data Obj ->"The date and time on this machine " <--程序记录了使用

->"is earlier than when

the program " 时间,所以修改

->"was previously run. In order to " 系统时间以延长

->"enforce the

unregistered version's " 使用期是没用的

->"eval period, this is not be allowed"

|

:0040E295 6858B34200 push 0042B358

:0040E29A 50 push eax

* Reference To: USER32.MessageBoxA, Ord:01BEh

|

:0040E29B FF1584324200 Call dword ptr [00423284]

:0040E2A1 33C0 xor eax, eax

:0040E2A3 C3 ret

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

|:0040E27F(C)

|

:0040E2A4 53 push ebx

:0040E2A5 56 push esi

:0040E2A6 57 push edi

* Possible StringData Ref from Data Obj ->"Dqqnqctqhmfrs`qsto- Bgdbjvqhsdodqlhrrhnmh"

->"r`u`hk`akdhmsgddwdbts`akdchqdbsnqx+ Bgdbj"

->"sgdjdx-c`sehkddwhrsrhmsgddwdbts`akdch"

->"qdbsnqx- Sqxsntmhmrs`kk%qdhmrs`kksgdrnes"

->"v`qd+heoqnakdlrodqrhrs Bnms`bs9vvv-o`rrl`q"

->"j-bnlenqrtoonqs Rs`qstoDqqnqmtladq"

| ↑ 上面这些怪码是不是就是提示过期的信息,难怪

我查找不到。

:0040E2A7 68E8AF4200 push 0042AFE8

:0040E2AC E85FFFFFFF call 0040E210

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

|

:0040E2B1 68ACB14200 push 0042B1AC

:0040E2B6 8BF0 mov esi, eax

:0040E2B8 E853FFFFFF call 0040E210

:0040E2BD 8BD8 mov ebx, eax

:0040E2BF 8BFE mov edi, esi

:0040E2C1 83C9FF or ecx, FFFFFFFF

:0040E2C4 33C0 xor eax, eax

:0040E2C6 F2 repnz

:0040E2C7 AE scasb

:0040E2C8 F7D1 not ecx

:0040E2CA 83C113 add ecx, 00000013

:0040E2CD 51 push ecx

:0040E2CE E81B6E0000 call 004150EE

:0040E2D3 83C40C add esp, 0000000C

:0040E2D6 8BF8 mov edi, eax

:0040E2D8 6A30 push 00000030

* Reference To: USER32.MessageBeep, Ord:01BDh

|

:0040E2DA FF15F8324200 Call dword ptr [004232F8]

:0040E2E0 8B0DF41F4400 mov ecx, dword ptr [00441FF4]

:0040E2E6 51 push ecx

:0040E2E7 56 push esi

:0040E2E8 684CB34200 push 0042B34C

:0040E2ED 57 push edi

:0040E2EE E84D6B0000 call 00414E40

:0040E2F3 8B15C41A4400 mov edx, dword ptr [00441AC4]

:0040E2F9 83C410 add esp, 00000010

:0040E2FC 6A10 push 00000010

:0040E2FE 53 push ebx

:0040E2FF 57 push edi

:0040E300 52 push edx

* Reference To: USER32.MessageBoxA, Ord:01BEh

|

:0040E301 FF1584324200 Call dword ptr [00423284]

:0040E307 56 push esi

:0040E308 E8F86C0000 call 00415005

:0040E30D 53 push ebx

:0040E30E E8F26C0000 call 00415005

:0040E313 57 push edi

:0040E314 E8EC6C0000 call 00415005

:0040E319 83C40C add esp, 0000000C

:0040E31C 5F pop edi

:0040E31D 5E pop esi

:0040E31E 5B pop ebx

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

|:0040E272(C)

|

:0040E31F 33C0 xor eax, eax

:0040E321 C3 ret

用 UltraEdit 查找 :0040E264 处的代码:

查找 E8 C7 00 00 00 83 F8 01 75 01

改为 90 90 90 90 90 90 90 90 90 90

fishs

http://fishs.126.com

标 题:温柔一点,好吗?——暴破pt的另一种方法 (2千字)

发信人:kingtall

时 间:2001-4-26 13:33:02

详细信息:

温柔一点,好吗?——暴破pt的另一种方法

作者:kingtall

目标:Performance Test v3.4 build 1000,以下简称pt。

工具:w32dasm8.93,trw1.22

运行pt,看about框,有'Evaluation version'字样。

用w32dasm反汇编pt.ext,找Evaluation version,找到如下

* Referenced by a CALL at Addresses:

|:004096D2 , :0040990D

|

:00408680 A148194400 mov eax, dword ptr [00441948];若不为0就显示Evaluation version

:00408685 85C0 test eax, eax

:00408687 7527 jne 004086B0

:00408689 6840704300 push 00437040

* Possible StringData Ref from Data Obj ->"V3.4"

|

:0040868E 687C614200 push 0042617C

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

|

:00408693 68CC684200 push 004268CC

* Possible StringData Ref from Data Obj ->"%s %s"

|

:00408698 68D8944200 push 004294D8

:0040869D 6830184400 push 00441830

:004086A2 E8D9C30000 call 00414A80

:004086A7 83C414 add esp, 00000014

:004086AA B830184400 mov eax, 00441830

:004086AF C3 ret

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

|:00408687(C)

|

* Possible StringData Ref from Data Obj ->"Evaluation version"

|

:004086B0 68C4944200 push 004294C4

现在只要找到程序中把[441948]置0的地方,我是这样做的,在w32dasm的Disassembler菜单中选Save Disassemble text file and create project file,保存结果为pt.alf。然后用写字板打开pt.alf,找481944,找到下面这一段

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

|:0040E3FC(C)

|

:0040E40D 8BFE mov edi, esi

:0040E40F 83C9FF or ecx, FFFFFFFF

:0040E412 33C0 xor eax, eax

:0040E414 F2 repnz

:0040E415 AE scasb

:0040E416 F7D1 not ecx

:0040E418 49 dec ecx

:0040E419 83F903 cmp ecx, 00000003

:0040E41C 7244 jb 0040E462 ;把这一句改为 eb0f jmp 40e42d

^^^^ 就是注册版了。

:0040E41E 837B74FF cmp dword ptr [ebx+74], FFFFFFFF

:0040E422 753E jne 0040E462

:0040E424 80BB8000000037 cmp byte ptr [ebx+00000080], 37

:0040E42B 7535 jne 0040E462

:0040E42D C7054819440000000000 mov dword ptr [00441948], 0 ;在这里把[441948]置0。

^^^^^^

还有一点,程序启动时会先出现一个小窗口,等好长时间才能进入主窗口,好烦哪!

运行TRW,load pt.exe,下bpx sleep,找到下面(用w32dasm找sleep也一样)

0167:00409547 68DC050000 PUSH DWORD 05DC ;改为 6800000000 push dword 0

^^^^ 少睡点吧!

0167:0040954C FF1528314200 CALL `KERNEL32!Sleep`

这个玩意用了base64算法

(出处:赢政天下收集整理)

相关文章:

·关于注册Flag在破解中的应用

·从轻松试卷 v4.03 的破解看 r fl z 的妙用

·破解圣经之------滚瓜烂熟篇

·破解API Spy for Windows 95/98/NT/2000

·chm帮助编辑器v2.6 注册码破解详谈之一*脱壳篇*

·破解NetAlert v2 [热点] 指导如何自动脱壳!!

·破解的理由

·对于破解的一些想法

·Audio Converter 3.0 破解要点

·破解 Matcom 4.0 for BC

相关软件:

·美萍安全卫士密码破解器 3.0+

·网文快爪 v1.0 破解版

·坏猫网页编辑 v2.0完整版破解文件

·pakmarker1.0破解版

·IE Plus!破解版

·邮件服务器2.6+破解版

·登录奇兵 3.01破解文件

·易思多媒体网络教室-4用户演示版破解文件

·网络三国智能机器人1.0.0.101版破解

·网络三国智能机器人1.0.0.103版破解

→ 特别推荐

→ 热点TOP10

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright © 1999-2003

winzheng.com All Rights Reserved.

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

Powered

by:MeSky.Net

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

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

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