好友
阅读权限40
听众
最后登录1970-1-1
|
【破文标题】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 EBP0049BA19|.8BEC MOV EBP,ESP0049BA1B|.B9 35000000MOV ECX,350049BA20|>6A 00/PUSH 00049BA22|.6A 00|PUSH 00049BA24|.49 |DEC ECX0049BA25|.^ 75 F9\JNZ SHORT advelb.0049BA200049BA27|.51 PUSH ECX0049BA28|.8955 F8MOV DWORD PTR SS:[EBP-8],EDX0049BA2B|.8945 FCMOV DWORD PTR SS:[EBP-4],EAX0049BA2E|.33C0 XOR EAX,EAX0049BA30|.55 PUSH EBP0049BA31|.68 06BD4900PUSH advelb.0049BD060049BA36|.64:FF30PUSH DWORD PTR FS:[EAX]0049BA39|.64:8920MOV DWORD PTR FS:[EAX],ESP0049BA3C|.A1 546C4B00MOV EAX,DWORD PTR DS:[4B6C54]0049BA41|.C600 00MOV BYTE PTR DS:[EAX],00049BA44|.8D95 80FEFFFFLEA EDX,DWORD PTR SS:[EBP-180]0049BA4A|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BA4D|.8B80 14030000MOV EAX,DWORD PTR DS:[EAX+314]0049BA53|.E8 082FFCFFCALL advelb.0045E9600049BA58|.8B95 80FEFFFFMOV EDX,DWORD PTR SS:[EBP-180] ;//用户名0049BA5E|.8D85 84FEFFFFLEA EAX,DWORD PTR SS:[EBP-17C]0049BA64|.B9 FF000000MOV ECX,0FF0049BA69|.E8 FA8EF6FFCALL advelb.004049680049BA6E|.8D95 84FEFFFFLEA EDX,DWORD PTR SS:[EBP-17C]0049BA74|.8D45 88LEA EAX,DWORD PTR SS:[EBP-78]0049BA77|.B1 64MOV CL,640049BA79|.E8 C275F6FFCALL advelb.004030400049BA7E|.8D95 7CFEFFFFLEA EDX,DWORD PTR SS:[EBP-184]0049BA84|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BA87|.8B80 0C030000MOV EAX,DWORD PTR DS:[EAX+30C]0049BA8D|.E8 CE2EFCFFCALL advelb.0045E9600049BA92|.8B95 7CFEFFFFMOV EDX,DWORD PTR SS:[EBP-184] ;//试练码0049BA98|.8D85 84FEFFFFLEA EAX,DWORD PTR SS:[EBP-17C]0049BA9E|.B9 FF000000MOV ECX,0FF0049BAA3|.E8 C08EF6FFCALL advelb.004049680049BAA8|.8D95 84FEFFFFLEA EDX,DWORD PTR SS:[EBP-17C]0049BAAE|.8D45 EDLEA EAX,DWORD PTR SS:[EBP-13]0049BAB1|.B1 0AMOV CL,0A0049BAB3|.E8 8875F6FFCALL advelb.004030400049BAB8|.8D85 78FEFFFFLEA EAX,DWORD PTR SS:[EBP-188]0049BABE|.8D55 88LEA EDX,DWORD PTR SS:[EBP-78]0049BAC1|.E8 6A8EF6FFCALL advelb.004049300049BAC6|.8B85 78FEFFFFMOV EAX,DWORD PTR SS:[EBP-188] ;//用户名0049BACC|.50 PUSH EAX0049BACD|.8D85 74FEFFFFLEA EAX,DWORD PTR SS:[EBP-18C]0049BAD3|.8D55 EDLEA EDX,DWORD PTR SS:[EBP-13]0049BAD6|.E8 558EF6FFCALL advelb.004049300049BADB|.8B85 74FEFFFFMOV EAX,DWORD PTR SS:[EBP-18C] ;//试练码0049BAE1|.B9 7D000000MOV ECX,7D ;//ECX=7Dh0049BAE6|.5A POP EDX0049BAE7|.E8 9CF5FEFFCALL advelb.0048B088 ;//关键CALL1,第1种算法0049BAEC|.84C0 TEST AL,AL0049BAEE|.75 55JNZ SHORT advelb.0049BB45;//关键跳转0049BAF0|.8D85 70FEFFFFLEA EAX,DWORD PTR SS:[EBP-190]0049BAF6|.8D55 88LEA EDX,DWORD PTR SS:[EBP-78]0049BAF9|.E8 328EF6FFCALL advelb.004049300049BAFE|.8B85 70FEFFFFMOV EAX,DWORD PTR SS:[EBP-190] ;//用户名0049BB04|.50 PUSH EAX0049BB05|.8D85 6CFEFFFFLEA EAX,DWORD PTR SS:[EBP-194]0049BB0B|.8D55 EDLEA EDX,DWORD PTR SS:[EBP-13]0049BB0E|.E8 1D8EF6FFCALL advelb.004049300049BB13|.8B85 6CFEFFFFMOV EAX,DWORD PTR SS:[EBP-194] ;//试练码0049BB19|.B9 87000000MOV ECX,87 ;//ECX=87h0049BB1E|.5A POP EDX0049BB1F|.E8 64F5FEFFCALL advelb.0048B088 ;//关键CALL2,第2种算法0049BB24|.84C0 TEST AL,AL0049BB26|.75 1DJNZ SHORT advelb.0049BB45;//关键跳转0049BB28|.6A 00PUSH 00049BB2A|.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:[4B6F10]0049BB39|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BB3B|.E8 503EFEFFCALL advelb.0047F9900049BB40|.E9 83010000JMP advelb.0049BCC80049BB45|>A1 546C4B00MOV EAX,DWORD PTR DS:[4B6C54]0049BB4A|.C600 01MOV BYTE PTR DS:[EAX],10049BB4D|.A1 AC6C4B00MOV EAX,DWORD PTR DS:[4B6CAC]0049BB52|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BB54|.8B80 04030000MOV EAX,DWORD PTR DS:[EAX+304]0049BB5A|.8078 39 00 CMP BYTE PTR DS:[EAX+39],00049BB5E|.74 0EJE SHORT advelb.0049BB6E0049BB60|.A1 AC6C4B00MOV EAX,DWORD PTR DS:[4B6CAC]0049BB65|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BB67|.E8 90530000CALL advelb.004A0EFC0049BB6C|.EB 0CJMP SHORT advelb.0049BB7A0049BB6E|>A1 AC6C4B00MOV EAX,DWORD PTR DS:[4B6CAC]0049BB73|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BB75|.E8 96510000CALL advelb.004A0D100049BB7A|>8D95 68FEFFFFLEA EDX,DWORD PTR SS:[EBP-198]0049BB80|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BB83|.8B80 14030000MOV EAX,DWORD PTR DS:[EAX+314]0049BB89|.E8 D22DFCFFCALL advelb.0045E9600049BB8E|.8B85 68FEFFFFMOV EAX,DWORD PTR SS:[EBP-198]0049BB94|.E8 F38DF6FFCALL advelb.0040498C0049BB99|.85C0 TEST EAX,EAX0049BB9B|.74 5EJE SHORT advelb.0049BBFB0049BB9D|.8D95 64FEFFFFLEA EDX,DWORD PTR SS:[EBP-19C]0049BBA3|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BBA6|.8B80 14030000MOV EAX,DWORD PTR DS:[EAX+314]0049BBAC|.E8 AF2DFCFFCALL advelb.0045E9600049BBB1|.8B85 64FEFFFFMOV EAX,DWORD PTR SS:[EBP-19C]0049BBB7|.50 PUSH EAX0049BBB8|.8D95 60FEFFFFLEA EDX,DWORD PTR SS:[EBP-1A0]0049BBBE|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BBC1|.8B80 0C030000MOV EAX,DWORD PTR DS:[EAX+30C]0049BBC7|.E8 942DFCFFCALL advelb.0045E9600049BBCC|.8B85 60FEFFFFMOV EAX,DWORD PTR SS:[EBP-1A0]0049BBD2|.B9 7D000000MOV ECX,7D0049BBD7|.5A POP EDX0049BBD8|.E8 ABF4FEFFCALL advelb.0048B0880049BBDD|.84C0 TEST AL,AL0049BBDF|.74 1AJE SHORT advelb.0049BBFB0049BBE1|.BA 54BD4900MOV EDX,advelb.0049BD54;ASCII "advelb.dat"0049BBE6|.8D45 88LEA EAX,DWORD PTR SS:[EBP-78]0049BBE9|.E8 5EF0FEFFCALL advelb.0048AC4C0049BBEE|.A1 E46B4B00MOV EAX,DWORD PTR DS:[4B6BE4]0049BBF3|.C700 7D000000MOV DWORD PTR DS:[EAX],7D0049BBF9|.EB 5CJMP SHORT advelb.0049BC570049BBFB|>8D95 5CFEFFFFLEA EDX,DWORD PTR SS:[EBP-1A4]0049BC01|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BC04|.8B80 14030000MOV EAX,DWORD PTR DS:[EAX+314]0049BC0A|.E8 512DFCFFCALL advelb.0045E9600049BC0F|.8B85 5CFEFFFFMOV EAX,DWORD PTR SS:[EBP-1A4]0049BC15|.50 PUSH EAX0049BC16|.8D95 58FEFFFFLEA EDX,DWORD PTR SS:[EBP-1A8]0049BC1C|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BC1F|.8B80 0C030000MOV EAX,DWORD PTR DS:[EAX+30C]0049BC25|.E8 362DFCFFCALL advelb.0045E9600049BC2A|.8B85 58FEFFFFMOV EAX,DWORD PTR SS:[EBP-1A8]0049BC30|.B9 87000000MOV ECX,870049BC35|.5A POP EDX0049BC36|.E8 4DF4FEFFCALL advelb.0048B0880049BC3B|.84C0 TEST AL,AL0049BC3D|.74 18JE SHORT advelb.0049BC570049BC3F|.BA 54BD4900MOV EDX,advelb.0049BD54;ASCII "advelb.dat"0049BC44|.8D45 88LEA EAX,DWORD PTR SS:[EBP-78]0049BC47|.E8 00F0FEFFCALL advelb.0048AC4C0049BC4C|.A1 E46B4B00MOV EAX,DWORD PTR DS:[4B6BE4]0049BC51|.C700 87000000MOV DWORD PTR DS:[EAX],870049BC57|>A1 546C4B00MOV EAX,DWORD PTR DS:[4B6C54]0049BC5C|.8038 00CMP BYTE PTR DS:[EAX],00049BC5F|.74 4FJE SHORT advelb.0049BCB00049BC61|.6A 00PUSH 00049BC63|.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:[4B6F10]0049BC72|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BC74|.E8 173DFEFFCALL advelb.0047F9900049BC79|.A1 106F4B00MOV EAX,DWORD PTR DS:[4B6F10]0049BC7E|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BC80|.BA 84BD4900MOV EDX,advelb.0049BD84;ASCII "Advanced eLearning Builder"0049BC85|.E8 D636FEFFCALL advelb.0047F3600049BC8A|.8D95 54FEFFFFLEA EDX,DWORD PTR SS:[EBP-1AC]0049BC90|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4]0049BC93|.8B80 14030000MOV EAX,DWORD PTR DS:[EAX+314]0049BC99|.E8 C22CFCFFCALL advelb.0045E9600049BC9E|.8B95 54FEFFFFMOV EDX,DWORD PTR SS:[EBP-1AC]0049BCA4|.A1 546F4B00MOV EAX,DWORD PTR DS:[4B6F54]0049BCA9|.E8 728AF6FFCALL advelb.004047200049BCAE|.EB 18JMP SHORT advelb.0049BCC80049BCB0|>6A 00PUSH 00049BCB2|.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:[4B6F10]0049BCC1|.8B00 MOV EAX,DWORD PTR DS:[EAX]0049BCC3|.E8 C83CFEFFCALL advelb.0047F9900049BCC8|>33C0 XOR EAX,EAX0049BCCA|.5A POP EDX0049BCCB|.59 POP ECX0049BCCC|.59 POP ECX0049BCCD|.64:8910MOV DWORD PTR FS:[EAX],EDX0049BCD0|.68 0DBD4900PUSH advelb.0049BD0D0049BCD5|>8D85 54FEFFFFLEA EAX,DWORD PTR SS:[EBP-1AC]0049BCDB|.BA 06000000MOV EDX,60049BCE0|.E8 0B8AF6FFCALL advelb.004046F00049BCE5|.8D85 6CFEFFFFLEA EAX,DWORD PTR SS:[EBP-194]0049BCEB|.BA 04000000MOV EDX,40049BCF0|.E8 FB89F6FFCALL advelb.004046F00049BCF5|.8D85 7CFEFFFFLEA EAX,DWORD PTR SS:[EBP-184]0049BCFB|.BA 02000000MOV EDX,20049BD00|.E8 EB89F6FFCALL advelb.004046F00049BD05\.C3 RETN0049BD06 .^ E9 C583F6FFJMP advelb.004040D00049BD0B .^ EB C8JMP SHORT advelb.0049BCD50049BD0D .8BE5 MOV ESP,EBP0049BD0F .5D POP EBP0049BD10 .C3 RETN==============================================================0048B088/$55 PUSH EBP0048B089|.8BEC MOV EBP,ESP0048B08B|.81C4 D0FEFFFFADD ESP,-1300048B091|.53 PUSH EBX0048B092|.33DB XOR EBX,EBX0048B094|.899D D0FEFFFFMOV DWORD PTR SS:[EBP-130],EBX0048B09A|.894D F4MOV DWORD PTR SS:[EBP-C],ECX ;//[EBP-C]=ECX=7Dh0048B09D|.8955 F8MOV DWORD PTR SS:[EBP-8],EDX0048B0A0|.8945 FCMOV DWORD PTR SS:[EBP-4],EAX0048B0A3|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4] ;//试练码0048B0A6|.E8 D19AF7FFCALL advelb.00404B7C0048B0AB|.8B45 F8MOV EAX,DWORD PTR SS:[EBP-8] ;//用户名0048B0AE|.E8 C99AF7FFCALL advelb.00404B7C0048B0B3|.33C0 XOR EAX,EAX0048B0B5|.55 PUSH EBP0048B0B6|.68 A6B14800PUSH advelb.0048B1A60048B0BB|.64:FF30PUSH DWORD PTR FS:[EAX]0048B0BE|.64:8920MOV DWORD PTR FS:[EAX],ESP0048B0C1|.C645 EB 01 MOV BYTE PTR SS:[EBP-15],10048B0C5|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4] ;//试练码0048B0C8|.E8 BF98F7FFCALL advelb.0040498C ;//取试练码长度0048B0CD|.83F8 0ACMP EAX,0A0048B0D0|.0F85 AA000000JNZ advelb.0048B180;//试练码长度不等于0Ah则跳0048B0D6|.8B45 F8MOV EAX,DWORD PTR SS:[EBP-8] ;//用户名0048B0D9|.E8 AE98F7FFCALL advelb.0040498C ;//取用户名长度0048B0DE|.48 DEC EAX0048B0DF|.0F8C 9B000000JL advelb.0048B180 ;//用户名长度小于1则跳0048B0E5|.8D8D D0FEFFFFLEA ECX,DWORD PTR SS:[EBP-130]0048B0EB|.8B55 F4MOV EDX,DWORD PTR SS:[EBP-C] ;//EDX=[EBP-C]=7Dh0048B0EE|.8B45 F8MOV EAX,DWORD PTR SS:[EBP-8] ;//用户名0048B0F1|.E8 92FEFFFFCALL advelb.0048AF88 ;//算法CALL0048B0F6|.8B95 D0FEFFFFMOV EDX,DWORD PTR SS:[EBP-130] ;//真码0048B0FC|.8D85 D4FEFFFFLEA EAX,DWORD PTR SS:[EBP-12C]0048B102|.B9 FF000000MOV ECX,0FF0048B107|.E8 5C98F7FFCALL advelb.004049680048B10C|.8D95 D4FEFFFFLEA EDX,DWORD PTR SS:[EBP-12C]0048B112|.8D45 D5LEA EAX,DWORD PTR SS:[EBP-2B]0048B115|.B1 0AMOV CL,0A0048B117|.E8 247FF7FFCALL advelb.004030400048B11C|.C745 EC 01000000 MOV DWORD PTR SS:[EBP-14],10048B123|>837D EC 03 /CMP DWORD PTR SS:[EBP-14],30048B127|.74 48|JE SHORT advelb.0048B1710048B129|.837D EC 05 |CMP DWORD PTR SS:[EBP-14],50048B12D|.74 42|JE SHORT advelb.0048B1710048B12F|.837D EC 08 |CMP DWORD PTR SS:[EBP-14],80048B133|.74 3C|JE SHORT advelb.0048B1710048B135|.807D EB 00 |CMP BYTE PTR SS:[EBP-15],00048B139|.74 2D|JE SHORT advelb.0048B1680048B13B|.8B45 EC|MOV EAX,DWORD PTR SS:[EBP-14]0048B13E|.8B55 FC|MOV EDX,DWORD PTR SS:[EBP-4]0048B141|.48 |DEC EAX0048B142|.85D2 |TEST EDX,EDX0048B144|.74 05|JE SHORT advelb.0048B14B0048B146|.3B42 FC|CMP EAX,DWORD PTR DS:[EDX-4]0048B149|.72 05|JB SHORT advelb.0048B1500048B14B|>E8 6487F7FF|CALL advelb.004038B40048B150|>40 |INC EAX0048B151|.8A4402 FF|MOV AL,BYTE PTR DS:[EDX+EAX-1]0048B155|.8B55 EC|MOV EDX,DWORD PTR SS:[EBP-14]0048B158|.83FA 0A|CMP EDX,0A0048B15B|.76 05|JBE SHORT advelb.0048B1620048B15D|.E8 5287F7FF|CALL advelb.004038B40048B162|>3A4415 D5|CMP AL,BYTE PTR SS:[EBP+EDX-2B]0048B166|.74 04|JE SHORT advelb.0048B16C0048B168|>33C0 |XOR EAX,EAX0048B16A|.EB 02|JMP SHORT advelb.0048B16E0048B16C|>B0 01|MOV AL,10048B16E|>8845 EB|MOV BYTE PTR SS:[EBP-15],AL0048B171|>FF45 EC|INC DWORD PTR SS:[EBP-14]0048B174|.837D EC 0B |CMP DWORD PTR SS:[EBP-14],0B0048B178|.^ 75 A9\JNZ SHORT advelb.0048B123 ;//循环,真码假码逐位比较0048B17A|.8A45 EBMOV AL,BYTE PTR SS:[EBP-15]0048B17D|.8845 F3MOV BYTE PTR SS:[EBP-D],AL0048B180|>33C0 XOR EAX,EAX0048B182|.5A POP EDX0048B183|.59 POP ECX0048B184|.59 POP ECX0048B185|.64:8910MOV DWORD PTR FS:[EAX],EDX0048B188|.68 ADB14800PUSH advelb.0048B1AD0048B18D|>8D85 D0FEFFFFLEA EAX,DWORD PTR SS:[EBP-130]0048B193|.E8 3495F7FFCALL advelb.004046CC0048B198|.8D45 F8LEA EAX,DWORD PTR SS:[EBP-8]0048B19B|.BA 02000000MOV EDX,20048B1A0|.E8 4B95F7FFCALL advelb.004046F00048B1A5\.C3 RETN0048B1A6 .^ E9 258FF7FFJMP advelb.004040D00048B1AB .^ EB E0JMP SHORT advelb.0048B18D0048B1AD .8A45 F3MOV AL,BYTE PTR SS:[EBP-D]0048B1B0 .5B POP EBX0048B1B1 .8BE5 MOV ESP,EBP0048B1B3 .5D POP EBP0048B1B4 .C3 RETN==============================================================0048AF88/$55 PUSH EBP0048AF89|.8BEC MOV EBP,ESP0048AF8B|.51 PUSH ECX0048AF8C|.B9 05000000MOV ECX,50048AF91|>6A 00/PUSH 00048AF93|.6A 00|PUSH 00048AF95|.49 |DEC ECX0048AF96|.^ 75 F9\JNZ SHORT advelb.0048AF910048AF98|.51 PUSH ECX0048AF99|.874D FCXCHG DWORD PTR SS:[EBP-4],ECX0048AF9C|.53 PUSH EBX0048AF9D|.894D F4MOV DWORD PTR SS:[EBP-C],ECX0048AFA0|.8955 F8MOV DWORD PTR SS:[EBP-8],EDX ;//[EBP-8]=EDX=7Dh0048AFA3|.8945 FCMOV DWORD PTR SS:[EBP-4],EAX0048AFA6|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4] ;//用户名0048AFA9|.E8 CE9BF7FFCALL advelb.00404B7C0048AFAE|.33C0 XOR EAX,EAX0048AFB0|.55 PUSH EBP0048AFB1|.68 7BB04800PUSH advelb.0048B07B0048AFB6|.64:FF30PUSH DWORD PTR FS:[EAX]0048AFB9|.64:8920MOV DWORD PTR FS:[EAX],ESP0048AFBC|.8D55 F0LEA EDX,DWORD PTR SS:[EBP-10]0048AFBF|.8B45 FCMOV EAX,DWORD PTR SS:[EBP-4] ;//用户名0048AFC2|.E8 61D9F7FFCALL advelb.00408928 ;//用户名转大写0048AFC7|.8D55 E0LEA EDX,DWORD PTR SS:[EBP-20]0048AFCA|.8B45 F0MOV EAX,DWORD PTR SS:[EBP-10];//大写用户名0048AFCD|.E8 A2FAFFFFCALL advelb.0048AA74 ;//取大写用户名MD5值大写0048AFD2|.8B55 E0MOV EDX,DWORD PTR SS:[EBP-20];//大写用户名MD5值大写0048AFD5|.8D45 F0LEA EAX,DWORD PTR SS:[EBP-10]0048AFD8|.E8 8797F7FFCALL advelb.004047640048AFDD|.FF75 F0PUSH DWORD PTR SS:[EBP-10]0048AFE0|.8D55 DCLEA EDX,DWORD PTR SS:[EBP-24]0048AFE3|.8B45 F8MOV EAX,DWORD PTR SS:[EBP-8] ;//EAX=[EBP-8]=7Dh0048AFE6|.E8 F5DDF7FFCALL advelb.00408DE0 ;//7Dh转10进制字符形式,即1250048AFEB|.FF75 DCPUSH DWORD PTR SS:[EBP-24]0048AFEE|.8D55 D4LEA EDX,DWORD PTR SS:[EBP-2C]0048AFF1|.8B45 F8MOV EAX,DWORD PTR SS:[EBP-8]0048AFF4|.E8 E7DDF7FFCALL advelb.00408DE00048AFF9|.8B45 D4MOV EAX,DWORD PTR SS:[EBP-2C];//"125"0048AFFC|.8D55 D8LEA EDX,DWORD PTR SS:[EBP-28]0048AFFF|.E8 70FAFFFFCALL advelb.0048AA74 ;//取字符串"125"MD5值大写0048B004|.FF75 D8PUSH DWORD PTR SS:[EBP-28] ;//字符串"125"MD5值大写0048B007|.8D45 ECLEA EAX,DWORD PTR SS:[EBP-14]0048B00A|.BA 03000000MOV EDX,30048B00F|.E8 389AF7FFCALL advelb.00404A4C ;//将大写用户名MD5值大写和字符串"125"及其MD5值大写相连0048B014|.8D55 D0LEA EDX,DWORD PTR SS:[EBP-30]0048B017|.8B45 ECMOV EAX,DWORD PTR SS:[EBP-14];//相连字符串0048B01A|.E8 55FAFFFFCALL advelb.0048AA74 ;//取相连字符串MD5值大写0048B01F|.8B55 D0MOV EDX,DWORD PTR SS:[EBP-30];//相连字符串MD5值大写0048B022|.8D45 ECLEA EAX,DWORD PTR SS:[EBP-14]0048B025|.E8 3A97F7FFCALL advelb.004047640048B02A|.8D45 ECLEA EAX,DWORD PTR SS:[EBP-14]0048B02D|.50 PUSH EAX0048B02E|.B9 0A000000MOV ECX,0A0048B033|.BA 07000000MOV EDX,70048B038|.8B45 ECMOV EAX,DWORD PTR SS:[EBP-14];//相连字符串MD5值大写0048B03B|.E8 AC9BF7FFCALL advelb.00404BEC ;//取相连字符串MD5值大写的7~16位0048B040|.8B45 F4MOV EAX,DWORD PTR SS:[EBP-C]0048B043|.8B55 ECMOV EDX,DWORD PTR SS:[EBP-14];//相连字符串MD5值大写的7~16位,即真码0048B046|.E8 D596F7FFCALL advelb.004047200048B04B|.33C0 XOR EAX,EAX0048B04D|.5A POP EDX0048B04E|.59 POP ECX0048B04F|.59 POP ECX0048B050|.64:8910MOV DWORD PTR FS:[EAX],EDX0048B053|.68 82B04800PUSH advelb.0048B0820048B058|>8D45 D0LEA EAX,DWORD PTR SS:[EBP-30]0048B05B|.BA 05000000MOV EDX,50048B060|.E8 8B96F7FFCALL advelb.004046F00048B065|.8D45 ECLEA EAX,DWORD PTR SS:[EBP-14]0048B068|.BA 02000000MOV EDX,20048B06D|.E8 7E96F7FFCALL advelb.004046F00048B072|.8D45 FCLEA EAX,DWORD PTR SS:[EBP-4]0048B075|.E8 5296F7FFCALL advelb.004046CC0048B07A\.C3 RETN0048B07B .^ E9 5090F7FFJMP advelb.004040D00048B080 .^ EB D6JMP SHORT advelb.0048B0580048B082 .5B POP EBX0048B083 .8BE5 MOV ESP,EBP0048B085 .5D POP EBP0048B086 .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 |
|