【破文标题】Ease OGG TO RM Converter 2.70 算法分析
【破文作者】tianxj
【作者邮箱】[email]tianxj_2007@126.com[/email]
【作者主页】WwW.ChiNaPYG.CoM
【破解工具】PEiD,OD
【破解平台】盗版Windows XP sp2
【软件名称】Ease OGG TO RM Converter 2.70
【软件类别】音频转换
【软件授权】共享版
【运行环境】Win9x/Me/NT/2000/XP/2003
【软件语言】英文
【软件大小】5810KB
【更新时间】2008-11-5
【原版下载】8fdK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6i4u0E0j5$3!0F1N6X3g2J5N6r3g2J5i4K6u0W2L8X3g2@1i4K6u0r3k6r3!0%4L8X3I4G2j5h3c8Q4x3X3c8W2j5i4y4W2i4K6u0V1M7X3#2Q4x3X3c8U0L8$3&6$3k6i4u0@1k6i4u0Q4x3V1k6G2k6$3N6@1L8%4u0E0j5$3!0F1N6X3g2J5N6q4)9J5k6h3g2^5k6b7`.`.
【保护方式】注册码
【软件简介】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:[EBP-4],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:[EAX]
004AE859 |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
004AE85C |. B3 01 MOV BL,1
004AE85E |. FF05 FC7D4B00 INC DWORD PTR DS:[4B7DFC]
004AE864 |. 833D FC7D4B00>CMP DWORD PTR DS:[4B7DFC],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:[4AEA74] ; |
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:[EBP-4]
004AE885 |. E8 1221FDFF CALL OGG_TO_R.0048099C
004AE88A |> 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
004AE88D |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004AE890 |. 8B80 10030000 MOV EAX,DWORD PTR DS:[EAX+310]
004AE896 |. E8 C15BFBFF CALL OGG_TO_R.0046445C
004AE89B |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10] ; //用户名
004AE89E |. 8D55 F8 LEA EDX,DWORD PTR SS:[EBP-8]
004AE8A1 |. E8 4EA0F5FF CALL OGG_TO_R.004088F4
004AE8A6 |. 8D55 EC LEA EDX,DWORD PTR SS:[EBP-14]
004AE8A9 |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004AE8AC |. E8 77A0F5FF CALL OGG_TO_R.00408928
004AE8B1 |. 8B55 EC MOV EDX,DWORD PTR SS:[EBP-14] ; //用户名
004AE8B4 |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]
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:[EBP-8] ; //用户名
004AE8C9 |. 8B16 |MOV EDX,DWORD PTR DS:[ESI]
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:[4AEA74] ; |
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:[EBP-18]
004AE8FD |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004AE900 |. 8B80 14030000 MOV EAX,DWORD PTR DS:[EAX+314]
004AE906 |. E8 515BFBFF CALL OGG_TO_R.0046445C
004AE90B |. 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18] ; //试练码
004AE90E |. 8D55 F4 LEA EDX,DWORD PTR SS:[EBP-C]
004AE911 |. E8 DE9FF5FF CALL OGG_TO_R.004088F4
004AE916 |. 8D55 E4 LEA EDX,DWORD PTR SS:[EBP-1C]
004AE919 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
004AE91C |. E8 07A0F5FF CALL OGG_TO_R.00408928
004AE921 |. 8B55 E4 MOV EDX,DWORD PTR SS:[EBP-1C]
004AE924 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
004AE927 |. E8 C459F5FF CALL OGG_TO_R.004042F0
004AE92C |. 837D F8 00 CMP DWORD PTR SS:[EBP-8],0
004AE930 |. 0F84 F4000000 JE OGG_TO_R.004AEA2A ; //用户名为空则跳
004AE936 |. 837D F4 00 CMP DWORD PTR SS:[EBP-C],0
004AE93A |. 0F84 EA000000 JE OGG_TO_R.004AEA2A ; //注册码为空则跳
004AE940 |. 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
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:[EBP-C] ; //试练码
004AE954 |. 0FB64C11 FF |MOVZX ECX,BYTE PTR DS:[ECX+EDX-1] ; //逐位取注册码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:[4AEA74] ; |
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:[EBP-8] ; //用户名
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:[EBP-8] ; //用户名
004AE997 |. 0FB6543A FF |MOVZX EDX,BYTE PTR DS:[EDX+EDI-1] ; //逐位取用户名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:[EBP-C] ; //试练码
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:[4AEA74] ; |
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:[4B6274]
004AE9DC |. C600 01 MOV BYTE PTR DS:[EAX],1
004AE9DF |. A1 88634B00 MOV EAX,DWORD PTR DS:[4B6388]
004AE9E4 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004AE9E6 |. 33C9 XOR ECX,ECX
004AE9E8 |. BA 04000000 MOV EDX,4
004AE9ED |. 8B18 MOV EBX,DWORD PTR DS:[EAX]
004AE9EF |. FF53 14 CALL DWORD PTR DS:[EBX+14]
004AE9F2 |. 8B15 74624B00 MOV EDX,DWORD PTR DS:[4B6274] ; OGG_TO_R.004B81D4
004AE9F8 |. A1 88634B00 MOV EAX,DWORD PTR DS:[4B6388]
004AE9FD |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
004AE9FF |. B9 01000000 MOV ECX,1
004AEA04 |. E8 3B04F7FF CALL OGG_TO_R.0041EE44
004AEA09 |. A1 F87D4B00 MOV EAX,DWORD PTR DS:[4B7DF8]
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:[4AEA74] ; |
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:[EAX],EDX
004AEA32 |. 68 6CEA4A00 PUSH OGG_TO_R.004AEA6C
004AEA37 |> 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
004AEA3A |. E8 1958F5FF CALL OGG_TO_R.00404258
004AEA3F |. 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
004AEA42 |. E8 1158F5FF CALL OGG_TO_R.00404258
004AEA47 |. 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004AEA4A |. E8 0958F5FF CALL OGG_TO_R.00404258
004AEA4F |. 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004AEA52 |. E8 0158F5FF CALL OGG_TO_R.00404258
004AEA57 |. 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
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
==============================================================
内置的用户名
004AE694 56 53 38 38 54 36 2D 56 73 36 00 00 FF FF FF FF VS88T6-Vs6..
004AE6A4 0A 00 00 00 54 56 36 53 50 36 2D 54 56 36 00 00 ....TV6SP6-TV6..
004AE6B4 FF FF FF FF 0A 00 00 00 53 31 52 39 50 36 2D 53 ....S1R9P6-S
004AE6C4 56 30 00 00 FF FF FF FF 0A 00 00 00 54 44 52 49 V0......TDRI
004AE6D4 70 36 2D 53 54 36 00 00 FF FF FF FF 0A 00 00 00 p6-ST6......
004AE6E4 54 44 52 36 54 55 2D 45 56 53 00 00 FF FF FF FF TDR6TU-EVS..
004AE6F4 0A 00 00 00 54 44 52 55 70 36 2D 53 54 31 00 00 ....TDRUp6-ST1..
004AE704 FF FF FF FF 0A 00 00 00 54 73 66 48 70 36 2D 56 ....TsfHp6-V
004AE714 31 31 00 00 FF FF FF FF 0A 00 00 00 42 38 66 59 11......B8fY
004AE724 70 36 2D 56 49 31 00 00 FF FF FF FF 0A 00 00 00 p6-VI1......
004AE734 42 38 54 44 70 36 2D 56 50 31 00 00 FF FF FF FF B8TDp6-VP1..
004AE744 0A 00 00 00 42 53 34 35 66 36 2D 50 42 31 00 00 ....BS45f6-PB1..
004AE754 FF FF FF FF 0A 00 00 00 4F 73 72 66 36 70 2D 56 ....Osrf6p-V
004AE764 4C 31 00 00 FF FF FF FF 0A 00 00 00 4F 66 72 51 L1......OfrQ
004AE774 70 36 2D 56 39 31 00 00 FF FF FF FF 0A 00 00 00 p6-V91......
004AE784 45 53 72 67 70 36 2D 37 37 31 00 00 FF FF FF FF ESrgp6-771..
004AE794 0A 00 00 00 49 55 72 67 36 36 2D 56 50 37 00 00 ....IUrg66-VP7..
004AE7A4 FF FF FF FF 0A 00 00 00 49 55 44 4B 54 36 2D 42 ....IUDKT6-B
004AE7B4 58 31 00 00 FF FF FF FF 0A 00 00 00 44 55 49 48 X1......DUIH
004AE7C4 54 36 2D 74 56 31 00 00 FF FF FF FF 0A 00 00 00 T6-tV1......
004AE7D4 53 31 45 49 54 36 2D 44 56 31 00 00 FF FF FF FF S1EIT6-DV1..
004AE7E4 09 00 00 00 53 4E 4D 53 36 2D 44 56 31 00 00 00 ....SNMS6-DV1...
004AE7F4 FF FF FF FF 0A 00 00 00 53 4E 57 49 53 36 2D 54 ....SNWIS6-T
004AE804 4E 31 00 00 FF FF FF FF 0A 00 00 00 53 4E 57 49 N1......SNWI
004AE814 53 36 2D 4D 4F 33 00 00 FF FF FF FF 0A 00 00 00 S6-MO3......
004AE824 54 44 56 54 53 36 2D 4D 4D 33 00 00 A1 F8 7D 4B TDVTS6-MM3..▲}K
[培训]科锐逆向工程师培训第53期2025年7月8日开班!