tianxj 发表于 2008-9-22 23:38

Advanced eLearning Builder 3.6.7算法分析

【破文标题】Advanced eLearning Builder 3.6.7算法分析
【破文作者】tianxj
【作者邮箱】tianxj_2007@126.com
【作者主页】WwW.ChiNaPYG.CoM
【破解工具】PEiD,OD
【破解平台】D-Windows XP sp2
【软件名称】Advanced eLearning Builder 3.6.7
【软件大小】2209KB
【软件语言】英文
【软件类别】国外软件/考试系统
【更新时间】2008-9-9
【原版下载】自己找一下
【保护方式】注册码
【软件简介】Advanced eLearning Builder是一款创建电子考题,指南,小型测验等电子教学材料的工具。使用该系统可以简单的通过点击几下鼠标创建各种类型的电子考题(可视化设计)等。
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------
【破解内容】
--------------------------------------------------------------
**************************************************************
一、运行程序,进行注册,输入错误的注册信息进行检测,有提示信息
"Invalid Registration Key!"
**************************************************************
二、用PEiD对advelb.exe查壳,为 Borland Delphi 6.0 - 7.0
**************************************************************
三、运行OD,打开advelb.exe,输入注册信息,F12暂停,alt+K
调用堆栈 , 项目 19
地址=0012EAA4
堆栈=0049BB40
程序过程 / 参数=? advelb.0047F990
调用来自=advelb.0049BB3B
结构=0012EAA0
==============================================================

0049BA18/.55 PUSH EBP
0049BA19|.8BEC MOV EBP,ESP
0049BA1B|.B9 35000000MOV ECX,35
0049BA20|>6A 00/PUSH 0
0049BA22|.6A 00|PUSH 0
0049BA24|.49 |DEC ECX
0049BA25|.^ 75 F9\JNZ SHORT advelb.0049BA20
0049BA27|.51 PUSH ECX
0049BA28|.8955 F8MOV DWORD PTR SS:,EDX
0049BA2B|.8945 FCMOV DWORD PTR SS:,EAX
0049BA2E|.33C0 XOR EAX,EAX
0049BA30|.55 PUSH EBP
0049BA31|.68 06BD4900PUSH advelb.0049BD06
0049BA36|.64:FF30PUSH DWORD PTR FS:
0049BA39|.64:8920MOV DWORD PTR FS:,ESP
0049BA3C|.A1 546C4B00MOV EAX,DWORD PTR DS:
0049BA41|.C600 00MOV BYTE PTR DS:,0
0049BA44|.8D95 80FEFFFFLEA EDX,DWORD PTR SS:
0049BA4A|.8B45 FCMOV EAX,DWORD PTR SS:
0049BA4D|.8B80 14030000MOV EAX,DWORD PTR DS:
0049BA53|.E8 082FFCFFCALL advelb.0045E960
0049BA58|.8B95 80FEFFFFMOV EDX,DWORD PTR SS: ;//用户名
0049BA5E|.8D85 84FEFFFFLEA EAX,DWORD PTR SS:
0049BA64|.B9 FF000000MOV ECX,0FF
0049BA69|.E8 FA8EF6FFCALL advelb.00404968
0049BA6E|.8D95 84FEFFFFLEA EDX,DWORD PTR SS:
0049BA74|.8D45 88LEA EAX,DWORD PTR SS:
0049BA77|.B1 64MOV CL,64
0049BA79|.E8 C275F6FFCALL advelb.00403040
0049BA7E|.8D95 7CFEFFFFLEA EDX,DWORD PTR SS:
0049BA84|.8B45 FCMOV EAX,DWORD PTR SS:
0049BA87|.8B80 0C030000MOV EAX,DWORD PTR DS:
0049BA8D|.E8 CE2EFCFFCALL advelb.0045E960
0049BA92|.8B95 7CFEFFFFMOV EDX,DWORD PTR SS: ;//试练码
0049BA98|.8D85 84FEFFFFLEA EAX,DWORD PTR SS:
0049BA9E|.B9 FF000000MOV ECX,0FF
0049BAA3|.E8 C08EF6FFCALL advelb.00404968
0049BAA8|.8D95 84FEFFFFLEA EDX,DWORD PTR SS:
0049BAAE|.8D45 EDLEA EAX,DWORD PTR SS:
0049BAB1|.B1 0AMOV CL,0A
0049BAB3|.E8 8875F6FFCALL advelb.00403040
0049BAB8|.8D85 78FEFFFFLEA EAX,DWORD PTR SS:
0049BABE|.8D55 88LEA EDX,DWORD PTR SS:
0049BAC1|.E8 6A8EF6FFCALL advelb.00404930
0049BAC6|.8B85 78FEFFFFMOV EAX,DWORD PTR SS: ;//用户名
0049BACC|.50 PUSH EAX
0049BACD|.8D85 74FEFFFFLEA EAX,DWORD PTR SS:
0049BAD3|.8D55 EDLEA EDX,DWORD PTR SS:
0049BAD6|.E8 558EF6FFCALL advelb.00404930
0049BADB|.8B85 74FEFFFFMOV EAX,DWORD PTR SS: ;//试练码
0049BAE1|.B9 7D000000MOV ECX,7D ;//ECX=7Dh
0049BAE6|.5A POP EDX
0049BAE7|.E8 9CF5FEFFCALL advelb.0048B088 ;//关键CALL1,第1种算法
0049BAEC|.84C0 TEST AL,AL
0049BAEE|.75 55JNZ SHORT advelb.0049BB45;//关键跳转
0049BAF0|.8D85 70FEFFFFLEA EAX,DWORD PTR SS:
0049BAF6|.8D55 88LEA EDX,DWORD PTR SS:
0049BAF9|.E8 328EF6FFCALL advelb.00404930
0049BAFE|.8B85 70FEFFFFMOV EAX,DWORD PTR SS: ;//用户名
0049BB04|.50 PUSH EAX
0049BB05|.8D85 6CFEFFFFLEA EAX,DWORD PTR SS:
0049BB0B|.8D55 EDLEA EDX,DWORD PTR SS:
0049BB0E|.E8 1D8EF6FFCALL advelb.00404930
0049BB13|.8B85 6CFEFFFFMOV EAX,DWORD PTR SS: ;//试练码
0049BB19|.B9 87000000MOV ECX,87 ;//ECX=87h
0049BB1E|.5A POP EDX
0049BB1F|.E8 64F5FEFFCALL advelb.0048B088 ;//关键CALL2,第2种算法
0049BB24|.84C0 TEST AL,AL
0049BB26|.75 1DJNZ SHORT advelb.0049BB45;//关键跳转
0049BB28|.6A 00PUSH 0
0049BB2A|.B9 14BD4900MOV ECX,advelb.0049BD14;ASCII "Advanced eLearning Builder"
0049BB2F|.BA 30BD4900MOV EDX,advelb.0049BD30;ASCII "Invalid Registration Key!"
0049BB34|.A1 106F4B00MOV EAX,DWORD PTR DS:
0049BB39|.8B00 MOV EAX,DWORD PTR DS:
0049BB3B|.E8 503EFEFFCALL advelb.0047F990
0049BB40|.E9 83010000JMP advelb.0049BCC8
0049BB45|>A1 546C4B00MOV EAX,DWORD PTR DS:
0049BB4A|.C600 01MOV BYTE PTR DS:,1
0049BB4D|.A1 AC6C4B00MOV EAX,DWORD PTR DS:
0049BB52|.8B00 MOV EAX,DWORD PTR DS:
0049BB54|.8B80 04030000MOV EAX,DWORD PTR DS:
0049BB5A|.8078 39 00 CMP BYTE PTR DS:,0
0049BB5E|.74 0EJE SHORT advelb.0049BB6E
0049BB60|.A1 AC6C4B00MOV EAX,DWORD PTR DS:
0049BB65|.8B00 MOV EAX,DWORD PTR DS:
0049BB67|.E8 90530000CALL advelb.004A0EFC
0049BB6C|.EB 0CJMP SHORT advelb.0049BB7A
0049BB6E|>A1 AC6C4B00MOV EAX,DWORD PTR DS:
0049BB73|.8B00 MOV EAX,DWORD PTR DS:
0049BB75|.E8 96510000CALL advelb.004A0D10
0049BB7A|>8D95 68FEFFFFLEA EDX,DWORD PTR SS:
0049BB80|.8B45 FCMOV EAX,DWORD PTR SS:
0049BB83|.8B80 14030000MOV EAX,DWORD PTR DS:
0049BB89|.E8 D22DFCFFCALL advelb.0045E960
0049BB8E|.8B85 68FEFFFFMOV EAX,DWORD PTR SS:
0049BB94|.E8 F38DF6FFCALL advelb.0040498C
0049BB99|.85C0 TEST EAX,EAX
0049BB9B|.74 5EJE SHORT advelb.0049BBFB
0049BB9D|.8D95 64FEFFFFLEA EDX,DWORD PTR SS:
0049BBA3|.8B45 FCMOV EAX,DWORD PTR SS:
0049BBA6|.8B80 14030000MOV EAX,DWORD PTR DS:
0049BBAC|.E8 AF2DFCFFCALL advelb.0045E960
0049BBB1|.8B85 64FEFFFFMOV EAX,DWORD PTR SS:
0049BBB7|.50 PUSH EAX
0049BBB8|.8D95 60FEFFFFLEA EDX,DWORD PTR SS:
0049BBBE|.8B45 FCMOV EAX,DWORD PTR SS:
0049BBC1|.8B80 0C030000MOV EAX,DWORD PTR DS:
0049BBC7|.E8 942DFCFFCALL advelb.0045E960
0049BBCC|.8B85 60FEFFFFMOV EAX,DWORD PTR SS:
0049BBD2|.B9 7D000000MOV ECX,7D
0049BBD7|.5A POP EDX
0049BBD8|.E8 ABF4FEFFCALL advelb.0048B088
0049BBDD|.84C0 TEST AL,AL
0049BBDF|.74 1AJE SHORT advelb.0049BBFB
0049BBE1|.BA 54BD4900MOV EDX,advelb.0049BD54;ASCII "advelb.dat"
0049BBE6|.8D45 88LEA EAX,DWORD PTR SS:
0049BBE9|.E8 5EF0FEFFCALL advelb.0048AC4C
0049BBEE|.A1 E46B4B00MOV EAX,DWORD PTR DS:
0049BBF3|.C700 7D000000MOV DWORD PTR DS:,7D
0049BBF9|.EB 5CJMP SHORT advelb.0049BC57
0049BBFB|>8D95 5CFEFFFFLEA EDX,DWORD PTR SS:
0049BC01|.8B45 FCMOV EAX,DWORD PTR SS:
0049BC04|.8B80 14030000MOV EAX,DWORD PTR DS:
0049BC0A|.E8 512DFCFFCALL advelb.0045E960
0049BC0F|.8B85 5CFEFFFFMOV EAX,DWORD PTR SS:
0049BC15|.50 PUSH EAX
0049BC16|.8D95 58FEFFFFLEA EDX,DWORD PTR SS:
0049BC1C|.8B45 FCMOV EAX,DWORD PTR SS:
0049BC1F|.8B80 0C030000MOV EAX,DWORD PTR DS:
0049BC25|.E8 362DFCFFCALL advelb.0045E960
0049BC2A|.8B85 58FEFFFFMOV EAX,DWORD PTR SS:
0049BC30|.B9 87000000MOV ECX,87
0049BC35|.5A POP EDX
0049BC36|.E8 4DF4FEFFCALL advelb.0048B088
0049BC3B|.84C0 TEST AL,AL
0049BC3D|.74 18JE SHORT advelb.0049BC57
0049BC3F|.BA 54BD4900MOV EDX,advelb.0049BD54;ASCII "advelb.dat"
0049BC44|.8D45 88LEA EAX,DWORD PTR SS:
0049BC47|.E8 00F0FEFFCALL advelb.0048AC4C
0049BC4C|.A1 E46B4B00MOV EAX,DWORD PTR DS:
0049BC51|.C700 87000000MOV DWORD PTR DS:,87
0049BC57|>A1 546C4B00MOV EAX,DWORD PTR DS:
0049BC5C|.8038 00CMP BYTE PTR DS:,0
0049BC5F|.74 4FJE SHORT advelb.0049BCB0
0049BC61|.6A 00PUSH 0
0049BC63|.B9 14BD4900MOV ECX,advelb.0049BD14;ASCII "Advanced eLearning Builder"
0049BC68|.BA 60BD4900MOV EDX,advelb.0049BD60;ASCII "Successfully registered!"
0049BC6D|.A1 106F4B00MOV EAX,DWORD PTR DS:
0049BC72|.8B00 MOV EAX,DWORD PTR DS:
0049BC74|.E8 173DFEFFCALL advelb.0047F990
0049BC79|.A1 106F4B00MOV EAX,DWORD PTR DS:
0049BC7E|.8B00 MOV EAX,DWORD PTR DS:
0049BC80|.BA 84BD4900MOV EDX,advelb.0049BD84;ASCII "Advanced eLearning Builder"
0049BC85|.E8 D636FEFFCALL advelb.0047F360
0049BC8A|.8D95 54FEFFFFLEA EDX,DWORD PTR SS:
0049BC90|.8B45 FCMOV EAX,DWORD PTR SS:
0049BC93|.8B80 14030000MOV EAX,DWORD PTR DS:
0049BC99|.E8 C22CFCFFCALL advelb.0045E960
0049BC9E|.8B95 54FEFFFFMOV EDX,DWORD PTR SS:
0049BCA4|.A1 546F4B00MOV EAX,DWORD PTR DS:
0049BCA9|.E8 728AF6FFCALL advelb.00404720
0049BCAE|.EB 18JMP SHORT advelb.0049BCC8
0049BCB0|>6A 00PUSH 0
0049BCB2|.B9 14BD4900MOV ECX,advelb.0049BD14;ASCII "Advanced eLearning Builder"
0049BCB7|.BA 30BD4900MOV EDX,advelb.0049BD30;ASCII "Invalid Registration Key!"
0049BCBC|.A1 106F4B00MOV EAX,DWORD PTR DS:
0049BCC1|.8B00 MOV EAX,DWORD PTR DS:
0049BCC3|.E8 C83CFEFFCALL advelb.0047F990
0049BCC8|>33C0 XOR EAX,EAX
0049BCCA|.5A POP EDX
0049BCCB|.59 POP ECX
0049BCCC|.59 POP ECX
0049BCCD|.64:8910MOV DWORD PTR FS:,EDX
0049BCD0|.68 0DBD4900PUSH advelb.0049BD0D
0049BCD5|>8D85 54FEFFFFLEA EAX,DWORD PTR SS:
0049BCDB|.BA 06000000MOV EDX,6
0049BCE0|.E8 0B8AF6FFCALL advelb.004046F0
0049BCE5|.8D85 6CFEFFFFLEA EAX,DWORD PTR SS:
0049BCEB|.BA 04000000MOV EDX,4
0049BCF0|.E8 FB89F6FFCALL advelb.004046F0
0049BCF5|.8D85 7CFEFFFFLEA EAX,DWORD PTR SS:
0049BCFB|.BA 02000000MOV EDX,2
0049BD00|.E8 EB89F6FFCALL advelb.004046F0
0049BD05\.C3 RETN
0049BD06 .^ E9 C583F6FFJMP advelb.004040D0
0049BD0B .^ EB C8JMP SHORT advelb.0049BCD5
0049BD0D .8BE5 MOV ESP,EBP
0049BD0F .5D POP EBP
0049BD10 .C3 RETN
==============================================================
0048B088/$55 PUSH EBP
0048B089|.8BEC MOV EBP,ESP
0048B08B|.81C4 D0FEFFFFADD ESP,-130
0048B091|.53 PUSH EBX
0048B092|.33DB XOR EBX,EBX
0048B094|.899D D0FEFFFFMOV DWORD PTR SS:,EBX
0048B09A|.894D F4MOV DWORD PTR SS:,ECX ;//=ECX=7Dh
0048B09D|.8955 F8MOV DWORD PTR SS:,EDX
0048B0A0|.8945 FCMOV DWORD PTR SS:,EAX
0048B0A3|.8B45 FCMOV EAX,DWORD PTR SS: ;//试练码
0048B0A6|.E8 D19AF7FFCALL advelb.00404B7C
0048B0AB|.8B45 F8MOV EAX,DWORD PTR SS: ;//用户名
0048B0AE|.E8 C99AF7FFCALL advelb.00404B7C
0048B0B3|.33C0 XOR EAX,EAX
0048B0B5|.55 PUSH EBP
0048B0B6|.68 A6B14800PUSH advelb.0048B1A6
0048B0BB|.64:FF30PUSH DWORD PTR FS:
0048B0BE|.64:8920MOV DWORD PTR FS:,ESP
0048B0C1|.C645 EB 01 MOV BYTE PTR SS:,1
0048B0C5|.8B45 FCMOV EAX,DWORD PTR SS: ;//试练码
0048B0C8|.E8 BF98F7FFCALL advelb.0040498C ;//取试练码长度
0048B0CD|.83F8 0ACMP EAX,0A
0048B0D0|.0F85 AA000000JNZ advelb.0048B180;//试练码长度不等于0Ah则跳
0048B0D6|.8B45 F8MOV EAX,DWORD PTR SS: ;//用户名
0048B0D9|.E8 AE98F7FFCALL advelb.0040498C ;//取用户名长度
0048B0DE|.48 DEC EAX
0048B0DF|.0F8C 9B000000JL advelb.0048B180 ;//用户名长度小于1则跳
0048B0E5|.8D8D D0FEFFFFLEA ECX,DWORD PTR SS:
0048B0EB|.8B55 F4MOV EDX,DWORD PTR SS: ;//EDX==7Dh
0048B0EE|.8B45 F8MOV EAX,DWORD PTR SS: ;//用户名
0048B0F1|.E8 92FEFFFFCALL advelb.0048AF88 ;//算法CALL
0048B0F6|.8B95 D0FEFFFFMOV EDX,DWORD PTR SS: ;//真码
0048B0FC|.8D85 D4FEFFFFLEA EAX,DWORD PTR SS:
0048B102|.B9 FF000000MOV ECX,0FF
0048B107|.E8 5C98F7FFCALL advelb.00404968
0048B10C|.8D95 D4FEFFFFLEA EDX,DWORD PTR SS:
0048B112|.8D45 D5LEA EAX,DWORD PTR SS:
0048B115|.B1 0AMOV CL,0A
0048B117|.E8 247FF7FFCALL advelb.00403040
0048B11C|.C745 EC 01000000 MOV DWORD PTR SS:,1
0048B123|>837D EC 03 /CMP DWORD PTR SS:,3
0048B127|.74 48|JE SHORT advelb.0048B171
0048B129|.837D EC 05 |CMP DWORD PTR SS:,5
0048B12D|.74 42|JE SHORT advelb.0048B171
0048B12F|.837D EC 08 |CMP DWORD PTR SS:,8
0048B133|.74 3C|JE SHORT advelb.0048B171
0048B135|.807D EB 00 |CMP BYTE PTR SS:,0
0048B139|.74 2D|JE SHORT advelb.0048B168
0048B13B|.8B45 EC|MOV EAX,DWORD PTR SS:
0048B13E|.8B55 FC|MOV EDX,DWORD PTR SS:
0048B141|.48 |DEC EAX
0048B142|.85D2 |TEST EDX,EDX
0048B144|.74 05|JE SHORT advelb.0048B14B
0048B146|.3B42 FC|CMP EAX,DWORD PTR DS:
0048B149|.72 05|JB SHORT advelb.0048B150
0048B14B|>E8 6487F7FF|CALL advelb.004038B4
0048B150|>40 |INC EAX
0048B151|.8A4402 FF|MOV AL,BYTE PTR DS:
0048B155|.8B55 EC|MOV EDX,DWORD PTR SS:
0048B158|.83FA 0A|CMP EDX,0A
0048B15B|.76 05|JBE SHORT advelb.0048B162
0048B15D|.E8 5287F7FF|CALL advelb.004038B4
0048B162|>3A4415 D5|CMP AL,BYTE PTR SS:
0048B166|.74 04|JE SHORT advelb.0048B16C
0048B168|>33C0 |XOR EAX,EAX
0048B16A|.EB 02|JMP SHORT advelb.0048B16E
0048B16C|>B0 01|MOV AL,1
0048B16E|>8845 EB|MOV BYTE PTR SS:,AL
0048B171|>FF45 EC|INC DWORD PTR SS:
0048B174|.837D EC 0B |CMP DWORD PTR SS:,0B
0048B178|.^ 75 A9\JNZ SHORT advelb.0048B123 ;//循环,真码假码逐位比较
0048B17A|.8A45 EBMOV AL,BYTE PTR SS:
0048B17D|.8845 F3MOV BYTE PTR SS:,AL
0048B180|>33C0 XOR EAX,EAX
0048B182|.5A POP EDX
0048B183|.59 POP ECX
0048B184|.59 POP ECX
0048B185|.64:8910MOV DWORD PTR FS:,EDX
0048B188|.68 ADB14800PUSH advelb.0048B1AD
0048B18D|>8D85 D0FEFFFFLEA EAX,DWORD PTR SS:
0048B193|.E8 3495F7FFCALL advelb.004046CC
0048B198|.8D45 F8LEA EAX,DWORD PTR SS:
0048B19B|.BA 02000000MOV EDX,2
0048B1A0|.E8 4B95F7FFCALL advelb.004046F0
0048B1A5\.C3 RETN
0048B1A6 .^ E9 258FF7FFJMP advelb.004040D0
0048B1AB .^ EB E0JMP SHORT advelb.0048B18D
0048B1AD .8A45 F3MOV AL,BYTE PTR SS:
0048B1B0 .5B POP EBX
0048B1B1 .8BE5 MOV ESP,EBP
0048B1B3 .5D POP EBP
0048B1B4 .C3 RETN
==============================================================
0048AF88/$55 PUSH EBP
0048AF89|.8BEC MOV EBP,ESP
0048AF8B|.51 PUSH ECX
0048AF8C|.B9 05000000MOV ECX,5
0048AF91|>6A 00/PUSH 0
0048AF93|.6A 00|PUSH 0
0048AF95|.49 |DEC ECX
0048AF96|.^ 75 F9\JNZ SHORT advelb.0048AF91
0048AF98|.51 PUSH ECX
0048AF99|.874D FCXCHG DWORD PTR SS:,ECX
0048AF9C|.53 PUSH EBX
0048AF9D|.894D F4MOV DWORD PTR SS:,ECX
0048AFA0|.8955 F8MOV DWORD PTR SS:,EDX ;//=EDX=7Dh
0048AFA3|.8945 FCMOV DWORD PTR SS:,EAX
0048AFA6|.8B45 FCMOV EAX,DWORD PTR SS: ;//用户名
0048AFA9|.E8 CE9BF7FFCALL advelb.00404B7C
0048AFAE|.33C0 XOR EAX,EAX
0048AFB0|.55 PUSH EBP
0048AFB1|.68 7BB04800PUSH advelb.0048B07B
0048AFB6|.64:FF30PUSH DWORD PTR FS:
0048AFB9|.64:8920MOV DWORD PTR FS:,ESP
0048AFBC|.8D55 F0LEA EDX,DWORD PTR SS:
0048AFBF|.8B45 FCMOV EAX,DWORD PTR SS: ;//用户名
0048AFC2|.E8 61D9F7FFCALL advelb.00408928 ;//用户名转大写
0048AFC7|.8D55 E0LEA EDX,DWORD PTR SS:
0048AFCA|.8B45 F0MOV EAX,DWORD PTR SS:;//大写用户名
0048AFCD|.E8 A2FAFFFFCALL advelb.0048AA74 ;//取大写用户名MD5值大写
0048AFD2|.8B55 E0MOV EDX,DWORD PTR SS:;//大写用户名MD5值大写
0048AFD5|.8D45 F0LEA EAX,DWORD PTR SS:
0048AFD8|.E8 8797F7FFCALL advelb.00404764
0048AFDD|.FF75 F0PUSH DWORD PTR SS:
0048AFE0|.8D55 DCLEA EDX,DWORD PTR SS:
0048AFE3|.8B45 F8MOV EAX,DWORD PTR SS: ;//EAX==7Dh
0048AFE6|.E8 F5DDF7FFCALL advelb.00408DE0 ;//7Dh转10进制字符形式,即125
0048AFEB|.FF75 DCPUSH DWORD PTR SS:
0048AFEE|.8D55 D4LEA EDX,DWORD PTR SS:
0048AFF1|.8B45 F8MOV EAX,DWORD PTR SS:
0048AFF4|.E8 E7DDF7FFCALL advelb.00408DE0
0048AFF9|.8B45 D4MOV EAX,DWORD PTR SS:;//"125"
0048AFFC|.8D55 D8LEA EDX,DWORD PTR SS:
0048AFFF|.E8 70FAFFFFCALL advelb.0048AA74 ;//取字符串"125"MD5值大写
0048B004|.FF75 D8PUSH DWORD PTR SS: ;//字符串"125"MD5值大写
0048B007|.8D45 ECLEA EAX,DWORD PTR SS:
0048B00A|.BA 03000000MOV EDX,3
0048B00F|.E8 389AF7FFCALL advelb.00404A4C ;//将大写用户名MD5值大写和字符串"125"及其MD5值大写相连
0048B014|.8D55 D0LEA EDX,DWORD PTR SS:
0048B017|.8B45 ECMOV EAX,DWORD PTR SS:;//相连字符串
0048B01A|.E8 55FAFFFFCALL advelb.0048AA74 ;//取相连字符串MD5值大写
0048B01F|.8B55 D0MOV EDX,DWORD PTR SS:;//相连字符串MD5值大写
0048B022|.8D45 ECLEA EAX,DWORD PTR SS:
0048B025|.E8 3A97F7FFCALL advelb.00404764
0048B02A|.8D45 ECLEA EAX,DWORD PTR SS:
0048B02D|.50 PUSH EAX
0048B02E|.B9 0A000000MOV ECX,0A
0048B033|.BA 07000000MOV EDX,7
0048B038|.8B45 ECMOV EAX,DWORD PTR SS:;//相连字符串MD5值大写
0048B03B|.E8 AC9BF7FFCALL advelb.00404BEC ;//取相连字符串MD5值大写的7~16位
0048B040|.8B45 F4MOV EAX,DWORD PTR SS:
0048B043|.8B55 ECMOV EDX,DWORD PTR SS:;//相连字符串MD5值大写的7~16位,即真码
0048B046|.E8 D596F7FFCALL advelb.00404720
0048B04B|.33C0 XOR EAX,EAX
0048B04D|.5A POP EDX
0048B04E|.59 POP ECX
0048B04F|.59 POP ECX
0048B050|.64:8910MOV DWORD PTR FS:,EDX
0048B053|.68 82B04800PUSH advelb.0048B082
0048B058|>8D45 D0LEA EAX,DWORD PTR SS:
0048B05B|.BA 05000000MOV EDX,5
0048B060|.E8 8B96F7FFCALL advelb.004046F0
0048B065|.8D45 ECLEA EAX,DWORD PTR SS:
0048B068|.BA 02000000MOV EDX,2
0048B06D|.E8 7E96F7FFCALL advelb.004046F0
0048B072|.8D45 FCLEA EAX,DWORD PTR SS:
0048B075|.E8 5296F7FFCALL advelb.004046CC
0048B07A\.C3 RETN
0048B07B .^ E9 5090F7FFJMP advelb.004040D0
0048B080 .^ EB D6JMP SHORT advelb.0048B058
0048B082 .5B POP EBX
0048B083 .8BE5 MOV ESP,EBP
0048B085 .5D POP EBP
0048B086 .C3 RETN

**************************************************************
【破解总结】
--------------------------------------------------------------
【算法总结】
有两种注册算法,分别使用了3次标准MD5运算
--------------------------------------------------------------
【算法注册机】
VB代码
Private Sub Command1_Click()
If Len(Text1.Text) = 0 Then
Text2.Text = "请输入用户名!"
Else
Text2.Text = Mid((MD5(MD5(UCase(Text1.Text)) & "125" & MD5("125"))), 7, 10)'MD5模块,"125"也可以是"135"
End If
End Sub
--------------------------------------------------------------
【注册信息】
保存在"advelb.dat"
--------------------------------------------------------------
感谢飘云老大、猫老大、Nisy老大以及很多前辈们的学习教程以及所有帮助过我的论坛兄弟姐妹们!谢谢
--------------------------------------------------------------
【版权声明】破文是学习的手记,兴趣是成功的源泉;本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!


_/_/_/ _/ _/ _/_/_/
_/ _/_/_/_/
_/_/_/_/_/ _/_/_/_/
_/ _/_/_/
_/ _/_/_/_/ _/tianxj

forgetmenot 发表于 2008-9-23 10:36

强悍,支持高手发言,沙发了

温柔刀客 发表于 2008-9-25 19:18

好东西..我对算法不太好哈

usurs 发表于 2008-9-26 13:42

学习了。进步了一下。。

hw233 发表于 2008-9-27 14:43

顶一下哦aaaaaaaaaaaaaaaaaaaaa

转身 发表于 2009-1-7 14:47

哦。。学习一下。。
页: [1]
查看完整版本: Advanced eLearning Builder 3.6.7算法分析