老文章档案 · 2003 年

算法分析: <献给初学者> 之一

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

图标更换器(ExeIco)1.63 版。下载地址:

http://www.softreg.com/download.asp?id={CD05D77E-E9F5-4445-9350-E2FFC8B4F89A}

◆破解难度◆

较难。对于初学者来说,这个是非明码的,而且其算法比较烦琐,可能会觉得挺难。

◆破解简述◆

此软件其实与我以前的教程颇有类似之处,只是,可能大家还不习惯于F5的用法,因此破解起来难度挺大,分析算法时也可能会被绕得头晕脑胀。事实上,大家完全可以照搬我以前教程中的破解方法,一是巧用活用F5,二是妙用“r fl z”这个偷天换日大法,必可建得奇功!关于F5的使用方法及含义,这里不再赘述,请参照相关的教程,动手跟做练习就可以了。关于动态自动注册及爆破,我们也不在这里讨论,都非常简单。这里只将其算法的主要部分叙述如下。

◆算法分析◆

0167:00403DF2 C605F0D3450001 MOV BYTE [0045D3F0],01

0167:00403DF9 33C9 XOR ECX,ECX------------>ECX清零

0167:00403DFB 8D7D80 LEA EDI,[EBP-80]---------------------------------->

将字符串‘1z1h+2a0n-0g8y*9a1n|’(此为定值)送EDI寄存器,后面计算用到,设为M。计算过程中,‘+’、‘-’、‘*’及‘|’不参与运算。

0167:00403DFE BE94474600 MOV ESI,00464794------->机器码送ESI寄存器

0167:00403E03 8D5D98 LEA EBX,[EBP-68]

0167:00403E06 8D4101 LEA EAX,[ECX+01]------->EAX计数器,循环开始▲▲

0167:00403E09 51 PUSH ECX

0167:00403E0A B905000000 MOV ECX,05------------->ECX=$05。0167:00403E0F 99 CDQ------------------------->双位扩展,即EDX清零

0167:00403E10 F7F9 IDIV ECX---------------->EAX MOD ECX=EDX

0167:00403E12 59 POP ECX

0167:00403E13 85D2 TEST EDX,EDX------------>判断余数是否为0

0167:00403E15 7440 JZ 00403E57----------->为0则直接跳到后面并返回开始处重新循环计算过程

0167:00403E17 8A06 MOV AL,[ESI]------>AL=依次取去掉‘-’后的机器码$

0167:00403E19 3207 XOR AL,[EDI]------>AL=机器码$ XOR 依次取M的$ ,结果设为M1

0167:00403E1B 0FBED0 MOVSX EDX,AL ------->EDX=M1

0167:00403E1E 8955B4 MOV [EBP-4C],EDX-->[EBP-4C]=M1

0167:00403E21 8B45B4 MOV EAX,[EBP-4C]-->EAX=M1

0167:00403E24 51 PUSH ECX

0167:00403E25 99 CDQ -------------->EDX清零

0167:00403E26 33C2 XOR EAX,EDX------->EAX MOR EDX=EAX=M1

0167:00403E28 B91A000000 MOV ECX,1A-------->ECX=$1A

0167:00403E2D 2BC2 SUB EAX,EDX------->EAX=M1-EDX=M1

0167:00403E2F 8BD0 MOV EDX,EAX------->EDX=EAX=M1

0167:00403E31 C1E005 SHL EAX,05-------->EAX=M1 * 2^5 0167:00403E34 2BC2 SUB EAX,EDX------->EAX=M2-M1 设为M3

0167:00403E36 8D0482 LEA EAX,[EDX+EAX*4]-->EAX=M3*4+M1 设为M4

0167:00403E39 C1E005 SHL EAX,05----------->EAX=M4 * 2^5 设为M5

0167:00403E3C 03C2 ADD EAX,EDX---------->EAX=M5+M1 设为M6

0167:00403E3E 03C0 ADD EAX,EAX---------->EAX=EAX+EAX=EAX*2 设为M7

0167:00403E40 99 CDQ ----------------->EDX清零

0167:00403E41 F7F9 IDIV ECX----------->EDX=M7 MOD ECX=M7 MOD $1A 设为M8。

0167:00403E43 0FBE03 MOVSX EAX,BYTE [EBX]--->依次取输入的注册码$

0167:00403E46 83C241 ADD EDX,BYTE +41----->EDX=M8+$41 设为M9

0167:00403E49 59 POP ECX

0167:00403E4A 3BD0 CMP EDX,EAX---------->比较取得的输入码$与M9是否相等

0167:00403E4C 7409 JZ 00403E57--------->等则跳到下面继续循环计算,不等则跳向出错!

0167:00403E4E C605F0D3450000 MOV BYTE [0045D3F0],00

0167:00403E55 EB09 JMP SHORT 00403E60--->不等就会跳到这里了,GAMEOVER!

0167:00403E57 41 inc ecx

0167:00403E58 47 inc edi

0167:00403E59 46 inc esi

0167:00403E5A 43 inc ebx

0167:00403E5B 83F914 cmp ecx, 00000014--------->是否取完20位

0167:00403E5E 7CA6 jl 00403E06--------------->没有取完返回循环 ▲▲

再下面的就简单了,主要就是会有一个比较注册码长度是否为24位的地方,否则出错,因此,后5位的码是任意的,就不再赘述了。

◆算法总结◆

以机器码NDFK-NIUY-UWTC-ZOTW-EI16为例,我们来总结一下算法。为了简化过程,只对其中的第一位进行详细算法分析,其它同理。固定字符串M为‘1z1h+2a0n-0g8y*9a1n|’。

第一位字符为N,其$为$4E。因此,算法过程是:

M1= $4E MOR $31(‘1’) = 7F

M2= $7F * 2^5 = $18CE

M3= $18CE - $7F = $184F

M4= $184F * 4 + $7F = $61BB

M5= $61BB * 2^5 = $131686

M6= $131686 + $7F = $131705

M7= $131705 * 2 = $262E0A

M8= $262E0A MOD $1A = $12

M9= $12 +$41 = $53=========>Asc(M9)="S",这就是正确的注册码的第一位了。以下同理,可以得出其它的正确注册码。

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

相关文章:

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