AVI MPEG WMV RM to MP3 Converter V1.8.2 算法分析
【破文标题】AVI MPEG WMV RM to MP3 Converter V1.8.2 算法分析【破文作者】tianxj
【作者邮箱】tianxj_2007@126.com
【作者主页】WwW.ChiNaPYG.CoM
【破解工具】PEiD,OD, RSATool,Bigclc
【破解平台】D-Windows XP sp2
【软件名称】AVI MPEG WMV RM to MP3 Converter V1.8.2
【软件大小】2.39 M
【更新时间】2007-01-27
【软件类别】国外软件 / 音频转换
【软件语言】英文
【应用平台】Win9x/WinNT/Win2000/WinXP
【软件性质】共享(收费)软件
【原版下载】天空软件站
【保护方式】注册码
【软件简介】AVI MPEG WMV RM to MP3 Converter是一个强大的音频转换工具,可以将所有的视频和音频文件转换成MP3, WAV, WMA和OGG格式
,支持AVI, MPEG, RM/RMVB, WMV/ASF, MOV的视频和音频格式。对于想从视频文件中抓取音频和想把RM格式转换成MP3/WAV格式的人来说,非常有用。还支持分割音频流,内建一个小的播放器,你可以在预听的时候设置开始和结束时间。用户界面非常友好易用
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------
【破解内容】
--------------------------------------------------------------
**************************************************************
一、运行程序,进行注册,输入错误的注册信息进行检测,有提示信息
"Invalid user name or register code"
**************************************************************
二、用PEiD对AVI MPEG WMV RM to MP3 Converter.exe查壳,为 MoleBox V2.3X -> MoleStudio.com * Sign.By.fly *
**************************************************************
三、带壳调试,运行OD,打开AVI MPEG WMV RM to MP3 Converter.exe,用F12暂停后再查找字符串.
==============================================================004245A0 64:A1 00000000mov eax,dword ptr fs:
004245A6 6A FF push -1
004245A8 68 113D4300 push AVI_MPEG.00433D11
004245AD 50 push eax
004245AE 64:8925 0000000>mov dword ptr fs:,esp
004245B5 81EC C8010000 sub esp,1C8
004245BB 33C0 xor eax,eax
004245BD 53 push ebx
004245BE 55 push ebp
004245BF 56 push esi
004245C0 57 push edi
004245C1 8BE9 mov ebp,ecx
004245C3 B9 10000000 mov ecx,10
004245C8 8D7C24 18 lea edi,dword ptr ss:
004245CC F3:AB rep stos dword ptr es:
004245CE B9 20000000 mov ecx,20
004245D3 8D7C24 58 lea edi,dword ptr ss:
004245D7 F3:AB rep stos dword ptr es:
004245D9 E8 92BB0000 call AVI_MPEG.00430170 ; jmp 到
004245DE 8B58 04 mov ebx,dword ptr ds:
004245E1 6A 01 push 1
004245E3 8BCD mov ecx,ebp
004245E5 E8 EABA0000 call AVI_MPEG.004300D4 ; jmp 到
004245EA 8D75 64 lea esi,dword ptr ss:
004245ED 6A 0A push 0A
004245EF 8BCE mov ecx,esi
004245F1 E8 86BB0000 call AVI_MPEG.0043017C ; jmp 到
004245F6 6A 0D push 0D
004245F8 8BCE mov ecx,esi
004245FA E8 7DBB0000 call AVI_MPEG.0043017C ; jmp 到
004245FF 6A 09 push 9
00424601 8BCE mov ecx,esi
00424603 E8 74BB0000 call AVI_MPEG.0043017C ; jmp 到
00424608 6A 20 push 20
0042460A 8BCE mov ecx,esi
0042460C E8 6BBB0000 call AVI_MPEG.0043017C ; jmp 到
00424611 8B06 mov eax,dword ptr ds: ; //假码
00424613 8B4D 60 mov ecx,dword ptr ss: ; //用户名
00424616 8D7D 60 lea edi,dword ptr ss:
00424619 50 push eax
0042461A 51 push ecx
0042461B E8 15D6FDFF call AVI_MPEG.00401C35 ; //关键CALL
00424620 83C4 08 add esp,8
00424623 85C0 test eax,eax
00424625 75 2B jnz short AVI_MPEG.00424652 ; //关键跳转
00424627 6A 40 push 40
00424629 68 90044400 push AVI_MPEG.00440490 ; ASCII "Sorry"
0042462E 68 64044400 push AVI_MPEG.00440464 ; ASCII "Invalid user name or register code"
00424633 8BCD mov ecx,ebp
00424635 E8 3CBB0000 call AVI_MPEG.00430176 ; jmp 到
0042463A 68 E9030000 push 3E9
0042463F 8BCD mov ecx,ebp
00424641 E8 3EB90000 call AVI_MPEG.0042FF84 ; jmp 到
00424646 8BC8 mov ecx,eax
00424648 E8 A1B80000 call AVI_MPEG.0042FEEE ; jmp 到
0042464D E9 3D010000 jmp AVI_MPEG.0042478F
00424652 57 push edi
00424653 8D8B CC000000 lea ecx,dword ptr ds:
00424659 C783 C4000000 0>mov dword ptr ds:,1
00424663 E8 44B50000 call AVI_MPEG.0042FBAC ; jmp 到
00424668 56 push esi
00424669 8D8B C8000000 lea ecx,dword ptr ds:
0042466F E8 38B50000 call AVI_MPEG.0042FBAC ; jmp 到
00424674 8B07 mov eax,dword ptr ds:
00424676 50 push eax
00424677 8D8424 DC000000 lea eax,dword ptr ss:
0042467E 68 44064400 push AVI_MPEG.00440644 ; ASCII "Register successful! License to:%s. "
00424683 50 push eax
00424684 FF15 E0464400 call dword ptr ds: ; msvcrt.sprintf
0042468A 83C4 0C add esp,0C
0042468D 8D8C24 D8000000 lea ecx,dword ptr ss:
00424694 6A 40 push 40
00424696 68 30044400 push AVI_MPEG.00440430 ; ASCII "Thank you"
0042469B 51 push ecx
0042469C 8BCD mov ecx,ebp
0042469E E8 D3BA0000 call AVI_MPEG.00430176 ; jmp 到
004246A3 8B3F mov edi,dword ptr ds:
004246A5 8D4C24 18 lea ecx,dword ptr ss:
004246A9 2BCF sub ecx,edi
004246AB 8A07 mov al,byte ptr ds:
004246AD 880439 mov byte ptr ds:,al
004246B0 47 inc edi
004246B1 84C0 test al,al
004246B3^ 75 F6 jnz short AVI_MPEG.004246AB
004246B5 8B36 mov esi,dword ptr ds:
004246B7 8D4C24 58 lea ecx,dword ptr ss:
004246BB 2BCE sub ecx,esi
004246BD 8A06 mov al,byte ptr ds:
004246BF 880431 mov byte ptr ds:,al
004246C2 46 inc esi
004246C3 84C0 test al,al
004246C5^ 75 F6 jnz short AVI_MPEG.004246BD
004246C7 8D4C24 10 lea ecx,dword ptr ss:
004246CB E8 10B40000 call AVI_MPEG.0042FAE0 ; jmp 到
004246D0 8D5424 14 lea edx,dword ptr ss:
004246D4 C78424 E0010000>mov dword ptr ss:,0
004246DF 52 push edx
004246E0 E8 03DCFDFF call AVI_MPEG.004022E8
004246E5 83C4 04 add esp,4
004246E8 50 push eax
004246E9 8D4C24 14 lea ecx,dword ptr ss:
004246ED C68424 E4010000>mov byte ptr ss:,1
004246F5 E8 B2B40000 call AVI_MPEG.0042FBAC ; jmp 到
004246FA 8D4C24 14 lea ecx,dword ptr ss:
004246FE C68424 E0010000>mov byte ptr ss:,0
00424706 E8 C9B30000 call AVI_MPEG.0042FAD4 ; jmp 到
0042470B 8D4424 10 lea eax,dword ptr ss:
0042470F 68 24044400 push AVI_MPEG.00440424 ; ASCII "data.ini"
00424714 8D4C24 18 lea ecx,dword ptr ss:
00424718 50 push eax
00424719 51 push ecx
0042471A E8 39BA0000 call AVI_MPEG.00430158 ; jmp 到
0042471F 50 push eax
00424720 8D4C24 14 lea ecx,dword ptr ss:
00424724 C68424 E4010000>mov byte ptr ss:,2
0042472C E8 7BB40000 call AVI_MPEG.0042FBAC ; jmp 到
00424731 8D4C24 14 lea ecx,dword ptr ss:
00424735 C68424 E0010000>mov byte ptr ss:,0
0042473D E8 92B30000 call AVI_MPEG.0042FAD4 ; jmp 到
00424742 8B5424 10 mov edx,dword ptr ss:
00424746 8B35 1C3F4400 mov esi,dword ptr ds: ; kernel32.WritePrivateProfileStringA
0042474C 8D4424 18 lea eax,dword ptr ss:
00424750 52 push edx
00424751 50 push eax
00424752 68 18044400 push AVI_MPEG.00440418 ; ASCII "User name"
00424757 68 0C044400 push AVI_MPEG.0044040C ; ASCII "Register"
0042475C FFD6 call esi
0042475E 8B4C24 10 mov ecx,dword ptr ss:
00424762 8D5424 58 lea edx,dword ptr ss:
00424766 51 push ecx
00424767 52 push edx
00424768 68 F4034400 push AVI_MPEG.004403F4 ; ASCII "Registration code"
0042476D 68 0C044400 push AVI_MPEG.0044040C ; ASCII "Register"
00424772 FFD6 call esi
00424774 8D4C24 10 lea ecx,dword ptr ss:
00424778 C78424 E0010000>mov dword ptr ss:,-1
00424783 E8 4CB30000 call AVI_MPEG.0042FAD4 ; jmp 到
00424788 8BCD mov ecx,ebp
0042478A E8 B3B70000 call AVI_MPEG.0042FF42 ; jmp 到
0042478F 8B8C24 D8010000 mov ecx,dword ptr ss:
00424796 5F pop edi
00424797 5E pop esi
00424798 5D pop ebp
00424799 5B pop ebx
0042479A 64:890D 0000000>mov dword ptr fs:,ecx
004247A1 81C4 D4010000 add esp,1D4
004247A7 C3 retn
==============================================================
00401C35 /E9 B6F50100 jmp AVI_MPEG.004211F0
==============================================================
004211F0 6A FF push -1
004211F2 68 F9364300 push AVI_MPEG.004336F9
004211F7 64:A1 00000000mov eax,dword ptr fs:
004211FD 50 push eax
004211FE 64:8925 0000000>mov dword ptr fs:,esp
00421205 81EC 94000000 sub esp,94
0042120B 8B8424 A4000000 mov eax,dword ptr ss:
00421212 53 push ebx
00421213 56 push esi
00421214 50 push eax
00421215 8D4C24 10 lea ecx,dword ptr ss:
00421219 C74424 60 E98BA>mov dword ptr ss:,BBA18BE9 ; //|
00421221 C74424 64 A8410>mov dword ptr ss:,BD0341A8 ; //|
00421229 C74424 68 46DDB>mov dword ptr ss:,69BFDD46 ; //|
00421231 C74424 6C 868DE>mov dword ptr ss:,A6E08D86 ; //|这就是RSA中的n
00421239 C74424 70 83D06>mov dword ptr ss:,0B69D083 ; //|
00421241 C74424 74 3017A>mov dword ptr ss:,D0AD1730 ; //|
00421249 C74424 78 7F58A>mov dword ptr ss:,E8AF587F ; //|
00421251 C74424 7C 1CF26>mov dword ptr ss:,AC68F21C ; //|
00421259 E8 C4EB0000 call AVI_MPEG.0042FE22 ; jmp 到
0042125E 8B8C24 B0000000 mov ecx,dword ptr ss: ; //假码
00421265 C78424 A4000000>mov dword ptr ss:,0
00421270 51 push ecx
00421271 8D4C24 0C lea ecx,dword ptr ss:
00421275 E8 A8EB0000 call AVI_MPEG.0042FE22 ; jmp 到
0042127A 8B5424 0C mov edx,dword ptr ss: ; //用户名
0042127E 8B35 C0464400 mov esi,dword ptr ds: ; msvcrt._mbscmp
00421284 68 68214400 push AVI_MPEG.00442168
00421289 52 push edx
0042128A C68424 AC000000>mov byte ptr ss:,1
00421292 FFD6 call esi
00421294 83C4 08 add esp,8
00421297 85C0 test eax,eax
00421299 0F84 0F020000 je AVI_MPEG.004214AE ; //用户名为空则跳
0042129F 8B4424 08 mov eax,dword ptr ss: ; //假码
004212A3 68 68214400 push AVI_MPEG.00442168
004212A8 50 push eax
004212A9 FFD6 call esi
004212AB 83C4 08 add esp,8
004212AE 85C0 test eax,eax
004212B0 0F84 F8010000 je AVI_MPEG.004214AE ; //注册码为空则跳
004212B6 57 push edi
004212B7 6A 00 push 0
004212B9 8D4C24 44 lea ecx,dword ptr ss:
004212BD E8 2408FEFF call AVI_MPEG.00401AE6
004212C2 6A 00 push 0
004212C4 8D4C24 4C lea ecx,dword ptr ss:
004212C8 C68424 AC000000>mov byte ptr ss:,2
004212D0 E8 1108FEFF call AVI_MPEG.00401AE6
004212D5 B3 03 mov bl,3
004212D7 68 01000100 push 10001 ; //RSA中的e=10001
004212DC 8D4C24 5C lea ecx,dword ptr ss:
004212E0 889C24 AC000000 mov byte ptr ss:,bl
004212E7 E8 FA07FEFF call AVI_MPEG.00401AE6
004212EC 8D4C24 58 lea ecx,dword ptr ss:
004212F0 C68424 A8000000>mov byte ptr ss:,4
004212F8 51 push ecx
004212F9 8D4C24 4C lea ecx,dword ptr ss:
004212FD E8 B90FFEFF call AVI_MPEG.004022BB
00421302 8D4C24 58 lea ecx,dword ptr ss:
00421306 889C24 A8000000 mov byte ptr ss:,bl
0042130D E8 AA0EFEFF call AVI_MPEG.004021BC
00421312 8D5424 60 lea edx,dword ptr ss:
00421316 6A 08 push 8
00421318 52 push edx
00421319 8D4C24 48 lea ecx,dword ptr ss:
0042131D E8 5409FEFF call AVI_MPEG.00401C76
00421322 B9 08000000 mov ecx,8
00421327 33C0 xor eax,eax
00421329 8D7C24 18 lea edi,dword ptr ss:
0042132D 8D5424 2C lea edx,dword ptr ss:
00421331 F3:AB rep stos dword ptr es:
00421333 8D4424 34 lea eax,dword ptr ss:
00421337 8D4C24 30 lea ecx,dword ptr ss:
0042133B 50 push eax
0042133C 51 push ecx
0042133D 8D4424 30 lea eax,dword ptr ss:
00421341 52 push edx
00421342 8D4C24 30 lea ecx,dword ptr ss:
00421346 50 push eax
00421347 8D5424 30 lea edx,dword ptr ss:
0042134B 51 push ecx
0042134C 8D4424 30 lea eax,dword ptr ss:
00421350 52 push edx
00421351 8B5424 24 mov edx,dword ptr ss: ; //假码
00421355 8D4C24 30 lea ecx,dword ptr ss:
00421359 50 push eax
0042135A 51 push ecx
0042135B 68 88034400 push AVI_MPEG.00440388 ; ASCII "%08lX-%08lX-%08lX-%08lX-%08lX-%08lX-%08lX-%08lX"
00421360 52 push edx ; //注册码格式
00421361 FF15 E8464400 call dword ptr ds: ; msvcrt.sscanf
00421367 8B4424 4C mov eax,dword ptr ss: ; //eax=sn4
0042136B 8B4C24 50 mov ecx,dword ptr ss: ; //ecx=sn5
0042136F 8B7C24 48 mov edi,dword ptr ss: ; //edi=sn3
00421373 8B5424 44 mov edx,dword ptr ss: ; //edx=sn2
00421377 03C8 add ecx,eax ; //ecx=sn5+sn4
00421379 8B4424 5C mov eax,dword ptr ss: ; //eax=sn8
0042137D 03CF add ecx,edi ; //ecx=ecx+sn3
0042137F 8B7C24 58 mov edi,dword ptr ss: ; //edi=sn7
00421383 03CA add ecx,edx ; //ecx=ecx+sn2
00421385 8B5424 40 mov edx,dword ptr ss: ; //edx=sn1
00421389 33C1 xor eax,ecx ; //eax=eax xor ecx
0042138B 83C4 28 add esp,28
0042138E 894424 34 mov dword ptr ss:,eax ; //sn8'=eax
00421392 8B4424 2C mov eax,dword ptr ss: ; //eax=sn6
00421396 03C2 add eax,edx ; //eax=sn6+sn1
00421398 6A 00 push 0
0042139A 33F8 xor edi,eax ; //edi=sn7 xor eax
0042139C 8D4C24 3C lea ecx,dword ptr ss:
004213A0 897C24 34 mov dword ptr ss:,edi ; //sn7'=edi
004213A4 E8 3D07FEFF call AVI_MPEG.00401AE6
004213A9 8D4C24 18 lea ecx,dword ptr ss:
004213AD 6A 08 push 8
004213AF 51 push ecx
004213B0 8D4C24 40 lea ecx,dword ptr ss:
004213B4 C68424 B0000000>mov byte ptr ss:,5
004213BC E8 B508FEFF call AVI_MPEG.00401C76
004213C1 8D5424 38 lea edx,dword ptr ss:
004213C5 8D4424 50 lea eax,dword ptr ss:
004213C9 52 push edx
004213CA 50 push eax
004213CB 8D4C24 48 lea ecx,dword ptr ss:
004213CF E8 3F0CFEFF call AVI_MPEG.00402013 ; //RSA运算
004213D4 B9 08000000 mov ecx,8
004213D9 33C0 xor eax,eax
004213DB 8D7C24 18 lea edi,dword ptr ss:
004213DF 6A 08 push 8
004213E1 F3:AB rep stos dword ptr es:
004213E3 8D4C24 1C lea ecx,dword ptr ss:
004213E7 C68424 AC000000>mov byte ptr ss:,6
004213EF 51 push ecx
004213F0 8D4C24 58 lea ecx,dword ptr ss:
004213F4 E8 6D0EFEFF call AVI_MPEG.00402266 ; //输出RSA运算结果
004213F9 B9 08000000 mov ecx,8
004213FE 33C0 xor eax,eax
00421400 8DBC24 80000000 lea edi,dword ptr ss:
00421407 F3:AB rep stos dword ptr es:
00421409 5F pop edi
0042140A 8A5404 17 mov dl,byte ptr ss:
0042140E 8A4C04 16 mov cl,byte ptr ss:
00421412 885404 7C mov byte ptr ss:,dl
00421416 8B5404 14 mov edx,dword ptr ss:
0042141A 884C04 7D mov byte ptr ss:,cl
0042141E 8A4C04 14 mov cl,byte ptr ss:
00421422 C1EA 08 shr edx,8
00421425 885404 7E mov byte ptr ss:,dl
00421429 884C04 7F mov byte ptr ss:,cl
0042142D 83C0 04 add eax,4
00421430 83F8 20 cmp eax,20
00421433^ 7C D5 jl short AVI_MPEG.0042140A ; //循环,对RSA运算结果倒转
00421435 8D5424 7C lea edx,dword ptr ss: ; //倒转结果
00421439 8D4C24 10 lea ecx,dword ptr ss:
0042143D 52 push edx
0042143E E8 DFE90000 call AVI_MPEG.0042FE22 ; jmp 到
00421443 8B4424 10 mov eax,dword ptr ss:
00421447 8B4C24 0C mov ecx,dword ptr ss:
0042144B 50 push eax
0042144C 51 push ecx
0042144D FFD6 call esi ; //用户名与倒转结果比较
0042144F 83C4 08 add esp,8
00421452 8D4C24 10 lea ecx,dword ptr ss:
00421456 85C0 test eax,eax
00421458 C68424 A4000000>mov byte ptr ss:,6
00421460 0F84 86000000 je AVI_MPEG.004214EC ; //关键跳转
00421466 E8 69E60000 call AVI_MPEG.0042FAD4 ; jmp 到
0042146B 8D4C24 4C lea ecx,dword ptr ss:
0042146F C68424 A4000000>mov byte ptr ss:,5
00421477 E8 400DFEFF call AVI_MPEG.004021BC
0042147C 8D4C24 34 lea ecx,dword ptr ss:
00421480 889C24 A4000000 mov byte ptr ss:,bl
00421487 E8 300DFEFF call AVI_MPEG.004021BC
0042148C 8D4C24 44 lea ecx,dword ptr ss:
00421490 C68424 A4000000>mov byte ptr ss:,8
00421498 E8 1F0DFEFF call AVI_MPEG.004021BC
0042149D 8D4C24 3C lea ecx,dword ptr ss:
004214A1 C68424 A4000000>mov byte ptr ss:,1
004214A9 E8 0E0DFEFF call AVI_MPEG.004021BC
004214AE 8D4C24 08 lea ecx,dword ptr ss:
004214B2 C68424 A4000000>mov byte ptr ss:,0
004214BA E8 15E60000 call AVI_MPEG.0042FAD4 ; jmp 到
004214BF 8D4C24 0C lea ecx,dword ptr ss:
004214C3 C78424 A4000000>mov dword ptr ss:,-1
004214CE E8 01E60000 call AVI_MPEG.0042FAD4 ; jmp 到
004214D3 5E pop esi
004214D4 33C0 xor eax,eax
004214D6 5B pop ebx
004214D7 8B8C24 94000000 mov ecx,dword ptr ss:
004214DE 64:890D 0000000>mov dword ptr fs:,ecx
004214E5 81C4 A0000000 add esp,0A0
004214EB C3 retn
004214EC E8 E3E50000 call AVI_MPEG.0042FAD4 ; jmp 到
004214F1 8D4C24 4C lea ecx,dword ptr ss:
004214F5 C68424 A4000000>mov byte ptr ss:,5
004214FD E8 BA0CFEFF call AVI_MPEG.004021BC
00421502 8D4C24 34 lea ecx,dword ptr ss:
00421506 889C24 A4000000 mov byte ptr ss:,bl
0042150D E8 AA0CFEFF call AVI_MPEG.004021BC
00421512 8D4C24 44 lea ecx,dword ptr ss:
00421516 C68424 A4000000>mov byte ptr ss:,9
0042151E E8 990CFEFF call AVI_MPEG.004021BC
00421523 8D4C24 3C lea ecx,dword ptr ss:
00421527 C68424 A4000000>mov byte ptr ss:,1
0042152F E8 880CFEFF call AVI_MPEG.004021BC
00421534 8D4C24 08 lea ecx,dword ptr ss:
00421538 C68424 A4000000>mov byte ptr ss:,0
00421540 E8 8FE50000 call AVI_MPEG.0042FAD4 ; jmp 到
00421545 8D4C24 0C lea ecx,dword ptr ss:
00421549 C78424 A4000000>mov dword ptr ss:,-1
00421554 E8 7BE50000 call AVI_MPEG.0042FAD4 ; jmp 到
00421559 8B8C24 9C000000 mov ecx,dword ptr ss:
00421560 5E pop esi
00421561 B8 01000000 mov eax,1
00421566 5B pop ebx
00421567 64:890D 0000000>mov dword ptr fs:,ecx
0042156E 81C4 A0000000 add esp,0A0
00421574 C3 retn**************************************************************
【破解总结】
--------------------------------------------------------------
【算法总结】
主要采用RSA算法
注册码形式如下:
11111111-22222222-33333333-44444444-55555555-66666663-77777777-88888888
sn1 sn2 sn3 sn4 sn5 sn6 sn7 sn8
运算过程中注册码作下面的变形
sn8' = (sn5 + sn4 + sn3 + sn2) xor sn8
sn7' = (sn1 + sn6) xor sn7
变形后的注册码
sn'=sn1-sn2-sn3-sn4-sn5-sn6-sn7'-sn8'
=======================================================
用RSATool计算RSA参数
n=p*q:
n:AC68F21CE8AF587FD0AD17300B69D083A6E08D8669BFDD46BD0341A8BBA18BE9
p:CDAAA985DD8FDC9397544BC5A4629CEF
q:D69AB2EA765881E2D17A8598A29D94A7
e:10001
d:46B6C49716D8D4739823665F4E4F18363ADB6C46A2AEC054B234CFD9B9FC741
=======================================================
举例说明:
用户名:tianxj,ASCII码为7469616E786A
则:X=786A00007469616E <------ m
Y=46B6C49716D8D4739823665F4E4F18363ADB6C46A2AEC054B234CFD9B9FC741<------ d
Z=AC68F21CE8AF587FD0AD17300B69D083A6E08D8669BFDD46BD0341A8BBA18BE9 <------ n
用Bigclc“X^Y%Z”计算出C (基数选16)
C=1D212B983F5B1ED8F47BB13445AA974DD11DA613F6F1E77B8DD229B59C7C69E9
格式化"%08lX-%08lX-%08lX-%08lX-%08lX-%08lX-%08lX-%08lX"形式为
1D212B98-3F5B1ED8-F47BB134-45AA974D-D11DA613-F6F1E77B-8DD229B5-9C7C69E9
倒转9C7C69E9-8DD229B5-F6F1E77B-D11DA613-45AA974D-F47BB134-3F5B1ED8-1D212B98
计算:s7=(s6+s1) xor s7' =190F81B1D xor 3F5B1ED8 = 1AFA305C5
s8=(s5+s4+s3+s2) xor s8' =29B8C4E90 xor 1D212B98 = 286AD6508
注册码: 9C7C69E9-8DD229B5-F6F1E77B-D11DA613-45AA974D-F47BB134-AFA305C5-86AD6508
--------------------------------------------------------------
【注册信息】
用户名:tianxj
注册码:9C7C69E9-8DD229B5-F6F1E77B-D11DA613-45AA974D-F47BB134-AFA305C5-86AD6508
保存在安装目录下的data.ini文件里
--------------------------------------------------------------
感谢飘云老大、猫老大、Nisy老大以及很多前辈们的学习教程以及徐超等所有帮助过我的论坛兄弟姐妹们!谢谢
--------------------------------------------------------------
【版权声明】破文是学习的手记,兴趣是成功的源泉;本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
_/_/_/ _/ _/ _/_/_/
_/ _/_/_/ _/
_/_/_/ _/_/ _/_/_/_/
_/ _/ _/ _/
_/ _/ _/_/_/ _/ tianxj 来膜拜下楼主,太强大了,学习下,我做了个另类追码教程:lol :lol :lol
http://bbs.52pojie.cn/thread-13864-1-1.html
[ 本帖最后由 小生我菜菜 于 2008-11-20 21:37 编辑 ] 膜拜T大 :lol 我是阿里学习的。 曲高和寡啊:L 以后不发算法了 俺的神呐…… 强人太多了
俺就之有默默学习的份了 能分析算法 厉害啊 呵呵 看了半天没看明白啊 好文,对于学习算法很有帮助
页:
[1]