老文章档案 · 2003 年

Touch Typing version 98 3.3的注册机 (925字)

破解教程 · 算法分析 · 2003-09-08 · 作者:郭大志 人气: · 出处:赢政天下整理收藏)

www.shetef.com

这个软件的主页上还有个注册表监视工具和文件读写监视工具。Touch Typing是用VB5写的。破解的关键在于__vbaStrComp( )和rtcR8ValFromBStr( )。

#include <stdio.h>

#include <string.h>

void main(void)

{

char SerialStr[64]="Touch-Typing_000";

char PasswordStr[64]="PA00";

char buf[64];

long serial;

long password;

printf("KeyGen for Touch Typing version 98 3.3.\n");

printf("Input a magic number: ");

scanf("%lu", &password);

sprintf(buf,"%lu", password);

buf[6] = '\0';

sscanf(buf, "%lu", &password);

strcat(PasswordStr, buf);

serial = password * 142L + 48935L;

sprintf(buf, "%lu", serial);

strcat(SerialStr, buf);

printf("Your serial: ");

puts(SerialStr);

printf("Your password: ");

puts(PasswordStr);

}

标 题:顺便再说一下,破解VB程序最好能熟悉一下x86常用的浮点运算指令。若不懂浮点指令则无法写这个程序的注册机 (2千字)

发信人:郭大志

时 间:2000-6-7 10:24:29

详细信息:

另外,在SoftICE中敲wf命令可以把x86的浮点寄存器栈窗口打开,便于观察浮点运算的过程。rtcR8ValFromBStr( )负责把一个字符串转换成一个浮点数,在rtcR8ValFromBStr( )的函数体的尾部会把转换得到的浮点数用FLD指令加载到浮点寄存器中,如下所示,在执行完指令FLD REAL8 PTR [EBP-08]后敲“dl ebp-8”命令可以看见局部变量[ebp-8]中存放的是转换后的浮点数,且浮点寄存器ST0中也存放该数。然后跟踪,看它如何处理ST0中的这个数即可。

MSVBVM50!rtcR8ValFromBstr

0167:7998D1FE PUSH EBP

0167:7998D1FF MOV EBP,ESP

0167:7998D201 SUB ESP,10

0167:7998D204 PUSH ESI

0167:7998D205 PUSH EDI

0167:7998D206 MOV EDI,[EBP+08]

0167:7998D209 TEST EDI,EDI

0167:7998D20B JNZ 7998D21B

0167:7998D20D FLD REAL8 PTR [7999C918]

0167:7998D213 POP EDI

0167:7998D214 POP ESI

0167:7998D215 MOV ESP,EBP

0167:7998D217 POP EBP

0167:7998D218 RET 0004

0167:7998D21B PUSH EDI

0167:7998D21C CALL [798B19E4]

0167:7998D222 MOV ECX,EAX

0167:7998D224 MOV ESI,EAX

0167:7998D226 MOV AX,[EDI]

0167:7998D229 TEST AX,AX

0167:7998D22C JZ 7998D25D

0167:7998D22E CMP AX,0009

0167:7998D232 JZ 7998D252

0167:7998D234 CMP AX,000A

0167:7998D238 JZ 7998D252

0167:7998D23A CMP AX,000D

0167:7998D23E JZ 7998D252

0167:7998D240 CMP AX,0020

0167:7998D244 JZ 7998D252

0167:7998D246 CMP AX,3000

0167:7998D24A JZ 7998D252

0167:7998D24C MOV [ECX],AX

0167:7998D24F ADD ECX,02

0167:7998D252 ADD EDI,02

0167:7998D255 MOV AX,[EDI]

0167:7998D258 TEST AX,AX

0167:7998D25B JNZ 7998D22E

0167:7998D25D MOV [ECX],AX

0167:7998D260 PUSH 05

0167:7998D262 LEA EAX,[EBP-10]

0167:7998D265 MOV [EBP-08],ESI

0167:7998D268 MOV WORD PTR [EBP-10],0008

0167:7998D26E PUSH EAX

0167:7998D26F CALL 7998D657

0167:7998D274 MOV EDI,EAX

0167:7998D276 PUSH ESI

0167:7998D277 CALL [798B1988]

0167:7998D27D TEST EDI,EDI

0167:7998D27F JGE 7998D289

0167:7998D281 PUSH 00

0167:7998D283 PUSH EDI

0167:7998D284 CALL 798BB385

0167:7998D289 FLD REAL8 PTR [EBP-08] //这里是在取转换结果

0167:7998D28C JMP 7998D213 (出处:赢政天下整理收藏)

相关文章:

·语音界面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)复原。发现问题请联系我们
← 返回老文章档案 · 软件史档案馆 · 赢政天下站史