老文章档案 · 2003 年

黑马多媒体网络教室精简版算法分析

破解教程 · 算法分析 · 2003-09-05 · 作者:北极熊[DFCG] 人气: · 出处:赢政天下整理收藏)

0167:00427697 E874FCFFFF CALL 00427310

0167:0042769C 83C404 ADD ESP,BYTE +04

0167:0042769F 8D4C2414 LEA ECX,[ESP+14]

0167:004276A3 51 PUSH ECX

0167:004276A4 E8D7C6FEFF CALL 00413D80 //F8进入算法CALL

0167:004276A9 8B00 MOV EAX,[EAX]

0167:004276AB 8B542414 MOV EDX,[ESP+14]

0167:004276AF 50 PUSH EAX

0167:004276B0 52 PUSH EDX

0167:004276B1 FFD7 CALL EDI

0167:004276B3 83C410 ADD ESP,BYTE +10

0167:004276B6 8D4C2410 LEA ECX,[ESP+10]

0167:004276BA 85C0 TEST EAX,EAX

0167:004276BC 0F95C3 SETNZ BL 设置标志

0167:004276BF E894380100 CALL `MFC42!ord_00000320`

0167:004276C4 84DB TEST BL,BL

0167:004276C6 7412 JZ 004276DA 跳至出错处

0167:004276C8 6A00 PUSH BYTE +00

--------------------//算法CALL//

0167:00413DCE B80A0A0A0A MOV EAX,0A0A0A0A //这是一个关键的字符串

0167:00413DD3 33D2 XOR EDX,EDX

0167:00413DD5 89442414 MOV [ESP+14],EAX

0167:00413DD9 89442418 MOV [ESP+18],EAX

0167:00413DDD 8944241C MOV [ESP+1C],EAX

0167:00413DE1 89442420 MOV [ESP+20],EAX

0167:00413DE5 85F6 TEST ESI,ESI

0167:00413DE7 89442424 MOV [ESP+24],EAX 设置上面ESP+14-->ESP+27 都是"0A"

0167:00413DEB 7E1C JNG 00413E09

0167:00413DED 8D4C2414 LEA ECX,[ESP+14] 取出机器码

0167:00413DF1 2BF9 SUB EDI,ECX

0167:00413DF3 8D4C1414 LEA ECX,[ESP+EDX+14]

0167:00413DF7 8A040F MOV AL,[EDI+ECX]

0167:00413DFA 84C0 TEST AL,AL

0167:00413DFC 8801 MOV [ECX],AL

0167:00413DFE 7D04 JNL 00413E04

0167:00413E00 F6D8 NEG AL

0167:00413E02 8801 MOV [ECX],AL

0167:00413E04 42 INC EDX

0167:00413E05 3BD6 CMP EDX,ESI

0167:00413E07 7CEA JL 00413DF3 上面是把机器码放入ESP+14开始的空间

0167:00413E09 33F6 XOR ESI,ESI //开始计算,(以下是一个多重循环)

0167:00413E0B 33C9 XOR ECX,ECX

0167:00413E0D 8A543414 MOV DL,[ESP+ESI+14] 取机器码第一位,ESI是外循环因子

0167:00413E11 8A440C14 MOV AL,[ESP+ECX+14] 取机器码第一位,ECX是内循环因子

0167:00413E15 02C2 ADD AL,DL 加起来

0167:00413E17 3C39 CMP AL,39 和$39比较

0167:00413E19 88440C14 MOV [ESP+ECX+14],AL 放回第一位

0167:00413E1D 7E0F JNG 00413E2E 小于等于就跳

0167:00413E1F 0FBEC0 MOVSX EAX,AL 大于就存到EAX

0167:00413E22 99 CDQ

0167:00413E23 BF3C000000 MOV EDI,3C EDI=$EC

0167:00413E28 F7FF IDIV EDI EAX除EDI

0167:00413E2A 88540C14 MOV [ESP+ECX+14],DL 取余数放到EDX

0167:00413E2E 41 INC ECX 内循环因子加1

0167:00413E2F 83F914 CMP ECX,BYTE +14 比较是否够20位

0167:00413E32 7CD9 JL 00413E0D 小于就跳回继续

0167:00413E34 46 INC ESI 内循环结束后继续外循环,ESI=ESI+1

0167:00413E35 83FE14 CMP ESI,BYTE +14 比较是否够20位

0167:00413E38 7CD1 JL 00413E0B 小于就跳回继续,(结束全部循环)

0167:00413E3A 33C9 XOR ECX,ECX

0167:00413E3C 8A440C14 MOV AL,[ESP+ECX+14] 逐位取计算的ascii码

0167:00413E40 3C30 CMP AL,30 和&30比较

0167:00413E42 7C04 JL 00413E48 小于就跳

0167:00413E44 3C39 CMP AL,39 和&39比较

0167:00413E46 7E12 JNG 00413E5A 不大于就跳,该字符不变

0167:00413E48 0FBEC0 MOVSX EAX,AL

0167:00413E4B 99 CDQ

0167:00413E4C BE0A000000 MOV ESI,0A 和$A取余

0167:00413E51 F7FE IDIV ESI

0167:00413E53 80C230 ADD DL,30 结果加&30变成数字

0167:00413E56 88540C14 MOV [ESP+ECX+14],DL 放回去

0167:00413E5A 41 INC ECX

0167:00413E5B 83F914 CMP ECX,BYTE +14

0167:00413E5E 7CDC JL 00413E3C 循环

0167:00413E60 807C241634 CMP BYTE [ESP+16],34 第3位ascii码和$34比较

0167:00413E65 7E16 JNG 00413E7D 不大于就跳

0167:00413E67 8A442414 MOV AL,[ESP+14] 取第1位到al

0167:00413E6B 8A4C2425 MOV CL,[ESP+25] 取第18位到CL

0167:00413E6F 88442428 MOV [ESP+28],AL 第1位放到第21位

0167:00413E73 884C2414 MOV [ESP+14],CL 第18位放到第1位

0167:00413E77 88442425 MOV [ESP+25],AL 第1位放到第18位

0167:00413E7B EB14 JMP SHORT 00413E91 //以上是几个字符互换

0167:00413E7D 8A442417 MOV AL,[ESP+17] 取第4位到al

0167:00413E81 8A542423 MOV DL,[ESP+23] 取第16位到CL

0167:00413E85 88442428 MOV [ESP+28],AL 第4位放到第21位

0167:00413E89 88542417 MOV [ESP+17],DL 第16位放到第4位

0167:00413E8D 88442423 MOV [ESP+23],AL 第4位放到第16位

0167:00413E91 B02D MOV AL,2D "-"

0167:00413E93 8D4C2408 LEA ECX,[ESP+08]

0167:00413E97 88442418 MOV [ESP+18],AL 第5位变为"-"

0167:00413E9B 8844241D MOV [ESP+1D],AL 第10变为"-"

0167:00413E9F 88442422 MOV [ESP+22],AL 第15位变为"-"

0167:00413EA3 8D442414 LEA EAX,[ESP+14] 注册码,然后取前18位就是真注册码了!

0167:00413EA7 50 PUSH EAX

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

相关文章:

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