Ease OGG TO RM Converter 2.70 算法分析
【破文标题】Ease OGG TO RM Converter 2.70 算法分析【破文作者】tianxj
【作者邮箱】[email protected]
【作者主页】WwW.ChiNaPYG.CoM
【破解工具】PEiD,OD
【破解平台】Windows XP
【软件名称】Ease OGG TO RM Converter 2.70
【软件类别】音频转换
【软件授权】共享版
【运行环境】Win9x/Me/NT/2000/XP/2003
【软件语言】英文
【软件大小】5810KB
【更新时间】2008-11-5
【原版下载】http://www.rmconverter.net/download-ease-rm-converter/oggtormconvert.exe
【保护方式】注册码
【软件简介】Ease OGG TO RM Converter是一个音频转换工具。可批量转换直接播放RMVB,OGG支持RM, RMVB, OGG 格式之间转换。它建立一个
小的ID3编辑器,您可以添加/编辑标题,艺术家,专辑,年份,流派,评论资料纳入档案您建立与小编辑。
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------
【破解内容】
--------------------------------------------------------------
**************************************************************
一、运行程序,进行注册,输入错误的注册信息进行检测,有提示信息
"Invalid register code! Please retry!"
**************************************************************
二、用PEiD对OGG TO RM Converter.exe查壳,为 Borland Delphi 6.0 - 7.0
**************************************************************
三、运行OD,打开OGG TO RM Converter.exe,右键—超级字串参考—查找ASCII.
==============================================================004AE83C/.55 PUSH EBP
004AE83D|.8BEC MOV EBP,ESP
004AE83F|.33C9 XOR ECX,ECX
004AE841|.51 PUSH ECX
004AE842|.51 PUSH ECX
004AE843|.51 PUSH ECX
004AE844|.51 PUSH ECX
004AE845|.51 PUSH ECX
004AE846|.51 PUSH ECX
004AE847|.51 PUSH ECX
004AE848|.53 PUSH EBX
004AE849|.56 PUSH ESI
004AE84A|.57 PUSH EDI
004AE84B|.8945 FC MOV DWORD PTR SS:,EAX
004AE84E|.33C0 XOR EAX,EAX
004AE850|.55 PUSH EBP
004AE851|.68 65EA4A00 PUSH OGG_TO_R.004AEA65
004AE856|.64:FF30 PUSH DWORD PTR FS:
004AE859|.64:8920 MOV DWORD PTR FS:,ESP
004AE85C|.B3 01 MOV BL,1
004AE85E|.FF05 FC7D4B00 INC DWORD PTR DS:
004AE864|.833D FC7D4B00>CMP DWORD PTR DS:,3
004AE86B|.7E 1D JLE SHORT OGG_TO_R.004AE88A
004AE86D|.6A 00 PUSH 0 ; /Arg1 = 00000000
004AE86F|.66:8B0D 74EA4>MOV CX,WORD PTR DS: ; |
004AE876|.B2 02 MOV DL,2 ; |
004AE878|.B8 80EA4A00 MOV EAX,OGG_TO_R.004AEA80 ; |Invalid register code! Please retry!
004AE87D|.E8 4E74F8FF CALL OGG_TO_R.00435CD0 ; \OGG_TO_R.00435CD0
004AE882|.8B45 FC MOV EAX,DWORD PTR SS:
004AE885|.E8 1221FDFF CALL OGG_TO_R.0048099C
004AE88A|>8D55 F0 LEA EDX,DWORD PTR SS:
004AE88D|.8B45 FC MOV EAX,DWORD PTR SS:
004AE890|.8B80 10030000 MOV EAX,DWORD PTR DS:
004AE896|.E8 C15BFBFF CALL OGG_TO_R.0046445C
004AE89B|.8B45 F0 MOV EAX,DWORD PTR SS: ;//用户名
004AE89E|.8D55 F8 LEA EDX,DWORD PTR SS:
004AE8A1|.E8 4EA0F5FF CALL OGG_TO_R.004088F4
004AE8A6|.8D55 EC LEA EDX,DWORD PTR SS:
004AE8A9|.8B45 F8 MOV EAX,DWORD PTR SS:
004AE8AC|.E8 77A0F5FF CALL OGG_TO_R.00408928
004AE8B1|.8B55 EC MOV EDX,DWORD PTR SS: ;//用户名
004AE8B4|.8D45 F8 LEA EAX,DWORD PTR SS:
004AE8B7|.E8 345AF5FF CALL OGG_TO_R.004042F0
004AE8BC|.BF 15000000 MOV EDI,15
004AE8C1|.BE F05E4B00 MOV ESI,OGG_TO_R.004B5EF0 ;VS88T6-Vs6
004AE8C6|>8B45 F8 /MOV EAX,DWORD PTR SS: ;//用户名
004AE8C9|.8B16 |MOV EDX,DWORD PTR DS:
004AE8CB|.E8 945DF5FF |CALL OGG_TO_R.00404664 ;//比较CALL
004AE8D0|.75 04 |JNZ SHORT OGG_TO_R.004AE8D6 ;//不等则跳
004AE8D2|.33DB |XOR EBX,EBX
004AE8D4|.EB 06 |JMP SHORT OGG_TO_R.004AE8DC
004AE8D6|>83C6 04 |ADD ESI,4
004AE8D9|.4F |DEC EDI
004AE8DA|.^ 75 EA \JNZ SHORT OGG_TO_R.004AE8C6 ;//循环,比较输入的用户名是否在内置的用户名库之中
004AE8DC|>84DB TEST BL,BL
004AE8DE|.74 1A JE SHORT OGG_TO_R.004AE8FA
004AE8E0|.6A 00 PUSH 0 ; /Arg1 = 00000000
004AE8E2|.66:8B0D 74EA4>MOV CX,WORD PTR DS: ; |
004AE8E9|.B2 02 MOV DL,2 ; |
004AE8EB|.B8 80EA4A00 MOV EAX,OGG_TO_R.004AEA80 ; |Invalid register code! Please retry!
004AE8F0|.E8 DB73F8FF CALL OGG_TO_R.00435CD0 ; \OGG_TO_R.00435CD0
004AE8F5|.E9 30010000 JMP OGG_TO_R.004AEA2A
004AE8FA|>8D55 E8 LEA EDX,DWORD PTR SS:
004AE8FD|.8B45 FC MOV EAX,DWORD PTR SS:
004AE900|.8B80 14030000 MOV EAX,DWORD PTR DS:
004AE906|.E8 515BFBFF CALL OGG_TO_R.0046445C
004AE90B|.8B45 E8 MOV EAX,DWORD PTR SS: ;//试练码
004AE90E|.8D55 F4 LEA EDX,DWORD PTR SS:
004AE911|.E8 DE9FF5FF CALL OGG_TO_R.004088F4
004AE916|.8D55 E4 LEA EDX,DWORD PTR SS:
004AE919|.8B45 F4 MOV EAX,DWORD PTR SS:
004AE91C|.E8 07A0F5FF CALL OGG_TO_R.00408928
004AE921|.8B55 E4 MOV EDX,DWORD PTR SS:
004AE924|.8D45 F4 LEA EAX,DWORD PTR SS:
004AE927|.E8 C459F5FF CALL OGG_TO_R.004042F0
004AE92C|.837D F8 00 CMP DWORD PTR SS:,0
004AE930|.0F84 F4000000 JE OGG_TO_R.004AEA2A ;//用户名为空则跳
004AE936|.837D F4 00 CMP DWORD PTR SS:,0
004AE93A|.0F84 EA000000 JE OGG_TO_R.004AEA2A ;//注册码为空则跳
004AE940|.8B45 F4 MOV EAX,DWORD PTR SS:
004AE943|.E8 D05BF5FF CALL OGG_TO_R.00404518
004AE948|.85C0 TEST EAX,EAX
004AE94A|.7E 35 JLE SHORT OGG_TO_R.004AE981
004AE94C|.BA 01000000 MOV EDX,1
004AE951|>8B4D F4 /MOV ECX,DWORD PTR SS: ;//试练码
004AE954|.0FB64C11 FF |MOVZX ECX,BYTE PTR DS: ;//逐位取注册码ASCII码
004AE959|.83F9 30 |CMP ECX,30
004AE95C|.7C 05 |JL SHORT OGG_TO_R.004AE963 ;//小于"0"则跳
004AE95E|.83F9 39 |CMP ECX,39
004AE961|.7E 1A |JLE SHORT OGG_TO_R.004AE97D ;//小于等于"9"则跳
004AE963|>6A 00 |PUSH 0 ; /Arg1 = 00000000
004AE965|.66:8B0D 74EA4>|MOV CX,WORD PTR DS: ; |
004AE96C|.B2 02 |MOV DL,2 ; |
004AE96E|.B8 80EA4A00 |MOV EAX,OGG_TO_R.004AEA80 ; |Invalid register code! Please retry!
004AE973|.E8 5873F8FF |CALL OGG_TO_R.00435CD0 ; \OGG_TO_R.00435CD0
004AE978|.E9 AD000000 |JMP OGG_TO_R.004AEA2A
004AE97D|>42 |INC EDX
004AE97E|.48 |DEC EAX
004AE97F|.^ 75 D0 \JNZ SHORT OGG_TO_R.004AE951 ;//循环,比较注册码里的字符是否全是数字
004AE981|>33DB XOR EBX,EBX ;//EBX=0
004AE983|.8B45 F8 MOV EAX,DWORD PTR SS: ;//用户名
004AE986|.E8 8D5BF5FF CALL OGG_TO_R.00404518
004AE98B|.85C0 TEST EAX,EAX
004AE98D|.7E 13 JLE SHORT OGG_TO_R.004AE9A2
004AE98F|.BF 01000000 MOV EDI,1
004AE994|>8B55 F8 /MOV EDX,DWORD PTR SS: ;//用户名
004AE997|.0FB6543A FF |MOVZX EDX,BYTE PTR DS: ;//逐位取用户名ASCII码
004AE99C|.03DA |ADD EBX,EDX ;//EBX=EBX+EDX
004AE99E|.47 |INC EDI
004AE99F|.48 |DEC EAX
004AE9A0|.^ 75 F2 \JNZ SHORT OGG_TO_R.004AE994 ;//循环,累加用户名ASCII码
004AE9A2|>69C3 A3EF0700 IMUL EAX,EBX,7EFA3 ;//EAX=EBX*7EFA3
004AE9A8|.05 D5020000 ADD EAX,2D5 ;//EAX=EAX+2D5
004AE9AD|.D1F8 SAR EAX,1 ;//EAX右移1位
004AE9AF|.79 03 JNS SHORT OGG_TO_R.004AE9B4
004AE9B1|.83D0 00 ADC EAX,0
004AE9B4|>8BD8 MOV EBX,EAX ;EBX=EAX
004AE9B6|.8B45 F4 MOV EAX,DWORD PTR SS: ;//试练码
004AE9B9|.E8 F2A2F5FF CALL OGG_TO_R.00408CB0 ;//试练码转16进制
004AE9BE|.3BD8 CMP EBX,EAX ;//关键比较,真假码的16进制比较
004AE9C0|.75 53 JNZ SHORT OGG_TO_R.004AEA15 ;//关键跳转
004AE9C2|.6A 00 PUSH 0 ; /Arg1 = 00000000
004AE9C4|.66:8B0D 74EA4>MOV CX,WORD PTR DS: ; |
004AE9CB|.B2 02 MOV DL,2 ; |
004AE9CD|.B8 B0EA4A00 MOV EAX,OGG_TO_R.004AEAB0 ; |Congratuation! You have successfully registered!
004AE9D2|.E8 F972F8FF CALL OGG_TO_R.00435CD0 ; \OGG_TO_R.00435CD0
004AE9D7|.A1 74624B00 MOV EAX,DWORD PTR DS:
004AE9DC|.C600 01 MOV BYTE PTR DS:,1
004AE9DF|.A1 88634B00 MOV EAX,DWORD PTR DS:
004AE9E4|.8B00 MOV EAX,DWORD PTR DS:
004AE9E6|.33C9 XOR ECX,ECX
004AE9E8|.BA 04000000 MOV EDX,4
004AE9ED|.8B18 MOV EBX,DWORD PTR DS:
004AE9EF|.FF53 14 CALL DWORD PTR DS:
004AE9F2|.8B15 74624B00 MOV EDX,DWORD PTR DS: ;OGG_TO_R.004B81D4
004AE9F8|.A1 88634B00 MOV EAX,DWORD PTR DS:
004AE9FD|.8B00 MOV EAX,DWORD PTR DS:
004AE9FF|.B9 01000000 MOV ECX,1
004AEA04|.E8 3B04F7FF CALL OGG_TO_R.0041EE44
004AEA09|.A1 F87D4B00 MOV EAX,DWORD PTR DS:
004AEA0E|.E8 891FFDFF CALL OGG_TO_R.0048099C
004AEA13|.EB 15 JMP SHORT OGG_TO_R.004AEA2A
004AEA15|>6A 00 PUSH 0 ; /Arg1 = 00000000
004AEA17|.66:8B0D 74EA4>MOV CX,WORD PTR DS: ; |
004AEA1E|.B2 02 MOV DL,2 ; |
004AEA20|.B8 80EA4A00 MOV EAX,OGG_TO_R.004AEA80 ; |Invalid register code! Please retry!
004AEA25|.E8 A672F8FF CALL OGG_TO_R.00435CD0 ; \OGG_TO_R.00435CD0
004AEA2A|>33C0 XOR EAX,EAX
004AEA2C|.5A POP EDX
004AEA2D|.59 POP ECX
004AEA2E|.59 POP ECX
004AEA2F|.64:8910 MOV DWORD PTR FS:,EDX
004AEA32|.68 6CEA4A00 PUSH OGG_TO_R.004AEA6C
004AEA37|>8D45 E4 LEA EAX,DWORD PTR SS:
004AEA3A|.E8 1958F5FF CALL OGG_TO_R.00404258
004AEA3F|.8D45 E8 LEA EAX,DWORD PTR SS:
004AEA42|.E8 1158F5FF CALL OGG_TO_R.00404258
004AEA47|.8D45 EC LEA EAX,DWORD PTR SS:
004AEA4A|.E8 0958F5FF CALL OGG_TO_R.00404258
004AEA4F|.8D45 F0 LEA EAX,DWORD PTR SS:
004AEA52|.E8 0158F5FF CALL OGG_TO_R.00404258
004AEA57|.8D45 F4 LEA EAX,DWORD PTR SS:
004AEA5A|.BA 02000000 MOV EDX,2
004AEA5F|.E8 1858F5FF CALL OGG_TO_R.0040427C
004AEA64\.C3 RETN
004AEA65 .^ E9 3251F5FF JMP OGG_TO_R.00403B9C
004AEA6A .^ EB CB JMP SHORT OGG_TO_R.004AEA37
004AEA6C .5F POP EDI
004AEA6D .5E POP ESI
004AEA6E .5B POP EBX
004AEA6F .8BE5 MOV ESP,EBP
004AEA71 .5D POP EBP
004AEA72 .C3 RETN
==============================================================
内置的用户名
004AE69456 53 38 38 54 36 2D 56 73 36 00 00 FF FF FF FFVS88T6-Vs6..
页:
[1]