1-Click PC Tuneup软件-破解实录-[下]
来源:互联网 发布:瘦骨精油副作用知乎 编辑:程序博客网 时间:2024/04/29 11:45
[作者]
网名: 猪头三
站点: http://www.x86asm.com
Email: pliceman_110@163.com
QQ: 643439947
编程生涯: 2001~至今[12年]
职业生涯: 10年
开发语言: C/C++; x86asm; Object Pascal; C#;
开发工具: VC++; Delphi;
研发领域: Windows应用软件安全; Windows系统内核安全; Windows系统磁盘数据安全;
技能种类: 逆向 驱动 磁盘 文件
[序言]
脱离玩破解已经好几年了, 由于前段时间在休息, 闲来玩玩, 随便找了一款国外软件1-click pc tuneup软件下手. 本人玩破解的原则是: 随便玩玩, 不跟经济利益挂钩, 选择无壳软件. 破解的目的是复习和巩固逆向思维, 而不是耗费时间和生命去研究各种刁蛮的加壳, 用自动脱壳工具就Ok了.
[本文介绍]
本文章一共分为10部分, 完全图文并茂, 分享在破解过程中的思维想法, 阅读本文需要一定的汇编语言, C/C++语言, 程序运行原理, 有开发软件实际经验, 熟悉Windows操作系统理论, 有基本的算法理论基础, 技术难度中等偏上.
1> 初步了解破解环境的部署
2> 初步了解1-click pc tuneup软件的主程序基本特征
3> 利用ollydbg定位你的处理注册号的函数
4> 多次陷入困境
5> 通过Qt类库的QString类相关函数找到处理注册号的函数
6> 开始分析处理注册号的函数
7> 不要满足直接获取注册号码
8> 分析注册号的输入规则
9> 分析注册号码的生成算法
10> 为1-click pc tuneup软件写注册机
[请做好基础知识储备]
上面已经提到需要相关的基础知识, 如果您在阅读文章之前基础不扎实, 有可能你不会明白文章所要表达的含义. 破解领域太广太深, 接触和学习破解之前, 最好都需要会编程, 这是必须要具备的技能. 关于如何学习和提高编程, 我的网站http://www.x86asm.com或者QQ空间已有详细说明.
[阅读顺序]
本篇文章为: “1-click pc tuneup破解实录-[下]”, 您需要按照顺序来进行阅读: "1-click pc tuneup破解实录-[上]"、"1-click pc tuneup破解实录-[中]"
>>>>>>>>>>>>>>> 第七部分: 不要满足直接获取注册号码 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
1. 在 >>> 第六部分: 开始分析处理注册号的函数 <<< 我们已经发现了内置注册号"82A63CCD5F3A45AA97DB7A0C”所在的函数, 很明显该函数就是处理注册号的函数, 下面大家可以根据我标注的各种颜色来了解注册号处理的流程
6E3D37D0 55 PUSH EBP
'
' {中间代码省略}
'
6E3D3810 66:8B08 MOV CX,WORD PTR [EAX]
6E3D3813 83C0 02 ADD EAX,2
6E3D3816 66:3BCB CMP CX,BX
6E3D3819 ^ 75 F5 JNZ SHORT logiclay.6E3D3810
6E3D381B 2BC2 SUB EAX,EDX
6E3D381D D1F8 SAR EAX,1
6E3D381F 83F8 18 CMP EAX,18 ; 判断注册号长度是否为0x18(十进制: 24)
6E3D3822 75 47 JNZ SHORT logiclay.6E3D386B
6E3D3824 B9 18683E6E MOV ECX,logiclay.6E3E6818 ; 跟内置"82A63CCD5F3A45AA97DB7A0C"注册号比较
6E3D3829 8BC6 MOV EAX,ESI
6E3D382B EB 03 JMP SHORT logiclay.6E3D3830
6E3D382D 8D49 00 LEA ECX,DWORD PTR [ECX]
6E3D3830 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3833 66:3B11 CMP DX,WORD PTR [ECX]
6E3D3836 75 1E JNZ SHORT logiclay.6E3D3856
6E3D3838 66:3BD3 CMP DX,BX
6E3D383B 74 15 JE SHORT logiclay.6E3D3852
6E3D383D 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3841 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D3845 75 0F JNZ SHORT logiclay.6E3D3856
6E3D3847 83C0 04 ADD EAX,4
6E3D384A 83C1 04 ADD ECX,4
6E3D384D 66:3BD3 CMP DX,BX
6E3D3850 ^ 75 DE JNZ SHORT logiclay.6E3D3830
6E3D3852 33C0 XOR EAX,EAX
6E3D3854 EB 05 JMP SHORT logiclay.6E3D385B
6E3D3856 1BC0 SBB EAX,EAX
6E3D3858 83D8 FF SBB EAX,-1
6E3D385B 3BC3 CMP EAX,EBX
6E3D385D 75 2B JNZ SHORT logiclay.6E3D388A
'
' {中间代码省略}
'
6E3D389B E8 00040000 CALL logiclay.6E3D3CA0 ; 把注册号所有字符串转换为大写
'
' {中间代码省略}
'
6E3D38FF A1 0CD33E6E MOV EAX,DWORD PTR [6E3ED30C] ; 判断注册码的特征头是否为: E985
6E3D3904 8BCE MOV ECX,ESI
6E3D3906 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3909 66:3B11 CMP DX,WORD PTR [ECX]
6E3D390C 75 1E JNZ SHORT logiclay.6E3D392C
6E3D390E 66:3BD3 CMP DX,BX
6E3D3911 74 15 JE SHORT logiclay.6E3D3928
6E3D3913 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3917 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D391B 75 0F JNZ SHORT logiclay.6E3D392C
6E3D391D 83C0 04 ADD EAX,4
6E3D3920 83C1 04 ADD ECX,4
6E3D3923 66:3BD3 CMP DX,BX
6E3D3926 ^ 75 DE JNZ SHORT logiclay.6E3D3906
6E3D3928 33C0 XOR EAX,EAX
6E3D392A EB 05 JMP SHORT logiclay.6E3D3931
6E3D392C 1BC0 SBB EAX,EAX
6E3D392E 83D8 FF SBB EAX,-1
6E3D3931 3BC3 CMP EAX,EBX
6E3D3933 0F84 84010000 JE logiclay.6E3D3ABD
6E3D3939 A1 10D33E6E MOV EAX,DWORD PTR [6E3ED310] ; 判断注册码的特征头是否为: 84E4
6E3D393E 8BCE MOV ECX,ESI
6E3D3940 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3943 66:3B11 CMP DX,WORD PTR [ECX]
6E3D3946 75 1E JNZ SHORT logiclay.6E3D3966
6E3D3948 66:3BD3 CMP DX,BX
6E3D394B 74 15 JE SHORT logiclay.6E3D3962
6E3D394D 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3951 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D3955 75 0F JNZ SHORT logiclay.6E3D3966
6E3D3957 83C0 04 ADD EAX,4
6E3D395A 83C1 04 ADD ECX,4
6E3D395D 66:3BD3 CMP DX,BX
6E3D3960 ^ 75 DE JNZ SHORT logiclay.6E3D3940
6E3D3962 33C0 XOR EAX,EAX
6E3D3964 EB 05 JMP SHORT logiclay.6E3D396B
6E3D3966 1BC0 SBB EAX,EAX
6E3D3968 83D8 FF SBB EAX,-1
6E3D396B 3BC3 CMP EAX,EBX
6E3D396D 0F84 4A010000 JE logiclay.6E3D3ABD
6E3D3973 A1 14D33E6E MOV EAX,DWORD PTR [6E3ED314] ; 判断注册码的特征头是否为: 75E2
6E3D3978 8BCE MOV ECX,ESI
6E3D397A 8D9B 00000000 LEA EBX,DWORD PTR [EBX]
6E3D3980 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3983 66:3B11 CMP DX,WORD PTR [ECX]
6E3D3986 75 1E JNZ SHORT logiclay.6E3D39A6
6E3D3988 66:3BD3 CMP DX,BX
6E3D398B 74 15 JE SHORT logiclay.6E3D39A2
6E3D398D 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3991 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D3995 75 0F JNZ SHORT logiclay.6E3D39A6
6E3D3997 83C0 04 ADD EAX,4
6E3D399A 83C1 04 ADD ECX,4
6E3D399D 66:3BD3 CMP DX,BX
6E3D39A0 ^ 75 DE JNZ SHORT logiclay.6E3D3980
6E3D39A2 33C0 XOR EAX,EAX
6E3D39A4 EB 05 JMP SHORT logiclay.6E3D39AB
6E3D39A6 1BC0 SBB EAX,EAX
6E3D39A8 83D8 FF SBB EAX,-1
6E3D39AB 3BC3 CMP EAX,EBX
6E3D39AD 0F84 0A010000 JE logiclay.6E3D3ABD
6E3D39B3 A1 18D33E6E MOV EAX,DWORD PTR [6E3ED318] ; 判断注册码的特征头是否为: 84DE
6E3D39B8 8BCE MOV ECX,ESI
6E3D39BA 8D9B 00000000 LEA EBX,DWORD PTR [EBX]
6E3D39C0 66:8B10 MOV DX,WORD PTR [EAX]
6E3D39C3 66:3B11 CMP DX,WORD PTR [ECX]
6E3D39C6 75 1E JNZ SHORT logiclay.6E3D39E6
6E3D39C8 66:3BD3 CMP DX,BX
6E3D39CB 74 15 JE SHORT logiclay.6E3D39E2
6E3D39CD 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D39D1 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D39D5 75 0F JNZ SHORT logiclay.6E3D39E6
6E3D39D7 83C0 04 ADD EAX,4
6E3D39DA 83C1 04 ADD ECX,4
6E3D39DD 66:3BD3 CMP DX,BX
6E3D39E0 ^ 75 DE JNZ SHORT logiclay.6E3D39C0
6E3D39E2 33C0 XOR EAX,EAX
6E3D39E4 EB 05 JMP SHORT logiclay.6E3D39EB
6E3D39E6 1BC0 SBB EAX,EAX
6E3D39E8 83D8 FF SBB EAX,-1
6E3D39EB 3BC3 CMP EAX,EBX
6E3D39ED 0F84 CA000000 JE logiclay.6E3D3ABD
6E3D39F3 A1 1CD33E6E MOV EAX,DWORD PTR [6E3ED31C] ; 判断注册码的特征头是否为: 82DA
6E3D39F8 8BCE MOV ECX,ESI
6E3D39FA 8D9B 00000000 LEA EBX,DWORD PTR [EBX]
6E3D3A00 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3A03 66:3B11 CMP DX,WORD PTR [ECX]
6E3D3A06 75 1E JNZ SHORT logiclay.6E3D3A26
6E3D3A08 66:3BD3 CMP DX,BX
6E3D3A0B 74 15 JE SHORT logiclay.6E3D3A22
6E3D3A0D 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3A11 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D3A15 75 0F JNZ SHORT logiclay.6E3D3A26
6E3D3A17 83C0 04 ADD EAX,4
6E3D3A1A 83C1 04 ADD ECX,4
6E3D3A1D 66:3BD3 CMP DX,BX
6E3D3A20 ^ 75 DE JNZ SHORT logiclay.6E3D3A00
6E3D3A22 33C0 XOR EAX,EAX
6E3D3A24 EB 05 JMP SHORT logiclay.6E3D3A2B
6E3D3A26 1BC0 SBB EAX,EAX
6E3D3A28 83D8 FF SBB EAX,-1
6E3D3A2B 3BC3 CMP EAX,EBX
6E3D3A2D 0F84 8A000000 JE logiclay.6E3D3ABD
6E3D3A33 A1 20D33E6E MOV EAX,DWORD PTR [6E3ED320] ; 判断注册码的特征头是否为: 6DFD
6E3D3A38 8BCE MOV ECX,ESI
6E3D3A3A 8D9B 00000000 LEA EBX,DWORD PTR [EBX]
6E3D3A40 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3A43 66:3B11 CMP DX,WORD PTR [ECX]
6E3D3A46 75 1E JNZ SHORT logiclay.6E3D3A66
6E3D3A48 66:3BD3 CMP DX,BX
6E3D3A4B 74 15 JE SHORT logiclay.6E3D3A62
6E3D3A4D 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3A51 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D3A55 75 0F JNZ SHORT logiclay.6E3D3A66
6E3D3A57 83C0 04 ADD EAX,4
6E3D3A5A 83C1 04 ADD ECX,4
6E3D3A5D 66:3BD3 CMP DX,BX
6E3D3A60 ^ 75 DE JNZ SHORT logiclay.6E3D3A40
6E3D3A62 33C0 XOR EAX,EAX
6E3D3A64 EB 05 JMP SHORT logiclay.6E3D3A6B
6E3D3A66 1BC0 SBB EAX,EAX
6E3D3A68 83D8 FF SBB EAX,-1
6E3D3A6B 3BC3 CMP EAX,EBX
6E3D3A6D 74 4E JE SHORT logiclay.6E3D3ABD
6E3D3A6F A1 24D33E6E MOV EAX,DWORD PTR [6E3ED324] ; 判断注册码的特征头是否为: 8A77
6E3D3A74 8BCE MOV ECX,ESI
6E3D3A76 66:8B10 MOV DX,WORD PTR [EAX]
6E3D3A79 66:3B11 CMP DX,WORD PTR [ECX]
6E3D3A7C 75 1E JNZ SHORT logiclay.6E3D3A9C
6E3D3A7E 66:3BD3 CMP DX,BX
6E3D3A81 74 15 JE SHORT logiclay.6E3D3A98
6E3D3A83 66:8B50 02 MOV DX,WORD PTR [EAX+2]
6E3D3A87 66:3B51 02 CMP DX,WORD PTR [ECX+2]
6E3D3A8B 75 0F JNZ SHORT logiclay.6E3D3A9C
6E3D3A8D 83C0 04 ADD EAX,4
6E3D3A90 83C1 04 ADD ECX,4
6E3D3A93 66:3BD3 CMP DX,BX
6E3D3A96 ^ 75 DE JNZ SHORT logiclay.6E3D3A76
6E3D3A98 33C0 XOR EAX,EAX
6E3D3A9A EB 05 JMP SHORT logiclay.6E3D3AA1
6E3D3A9C 1BC0 SBB EAX,EAX
6E3D3A9E 83D8 FF SBB EAX,-1
6E3D3AA1 3BC3 CMP EAX,EBX
6E3D3AA3 74 18 JE SHORT logiclay.6E3D3ABD
'
' {中间代码省略}
'
6E3D3ABD 6A 5C PUSH 5C
6E3D3ABF 8D4D 94 LEA ECX,DWORD PTR [EBP-6C]
6E3D3AC2 53 PUSH EBX
6E3D3AC3 51 PUSH ECX
6E3D3AC4 E8 05A00000 CALL <JMP.&MSVCR100.memset>
6E3D3AC9 8B7D 88 MOV EDI,DWORD PTR [EBP-78]
6E3D3ACC 83C4 0C ADD ESP,0C
6E3D3ACF 33C0 XOR EAX,EAX
6E3D3AD1 3BC3 CMP EAX,EBX
6E3D3AD3 0F8C E8000000 JL logiclay.6E3D3BC1
6E3D3AD9 3B47 F4 CMP EAX,DWORD PTR [EDI-C]
6E3D3ADC 0F8F DF000000 JG logiclay.6E3D3BC1 ; 判断注册号的每个字符是否在 0~9 或者 A~F 范围
6E3D3AE2 0FB70C47 MOVZX ECX,WORD PTR [EDI+EAX*2]
6E3D3AE6 8D51 D0 LEA EDX,DWORD PTR [ECX-30]
6E3D3AE9 83FA 09 CMP EDX,9
6E3D3AEC 77 04 JA SHORT logiclay.6E3D3AF2
6E3D3AEE 895485 90 MOV DWORD PTR [EBP+EAX*4-70],EDX
6E3D3AF2 8D51 BF LEA EDX,DWORD PTR [ECX-41]
6E3D3AF5 83FA 05 CMP EDX,5
6E3D3AF8 77 07 JA SHORT logiclay.6E3D3B01
6E3D3AFA 83C1 C9 ADD ECX,-37
6E3D3AFD 894C85 90 MOV DWORD PTR [EBP+EAX*4-70],ECX
6E3D3B01 40 INC EAX
6E3D3B02 83F8 18 CMP EAX,18
6E3D3B05 ^ 7C CA JL SHORT logiclay.6E3D3AD1
6E3D3B07 8B4D AC MOV ECX,DWORD PTR [EBP-54] ; 校验1
6E3D3B0A 034D A8 ADD ECX,DWORD PTR [EBP-58]
6E3D3B0D 8B55 A4 MOV EDX,DWORD PTR [EBP-5C]
6E3D3B10 8D4411 01 LEA EAX,DWORD PTR [ECX+EDX+1]
6E3D3B14 25 0F000080 AND EAX,8000000F
6E3D3B19 79 05 JNS SHORT logiclay.6E3D3B20
6E3D3B1B 48 DEC EAX
6E3D3B1C 83C8 F0 OR EAX,FFFFFFF0
6E3D3B1F 40 INC EAX
6E3D3B20 3945 A0 CMP DWORD PTR [EBP-60],EAX
6E3D3B23 0F85 A2000000 JNZ logiclay.6E3D3BCB
6E3D3B29 8B55 BC MOV EDX,DWORD PTR [EBP-44] ; 校验2
6E3D3B2C 0355 B8 ADD EDX,DWORD PTR [EBP-48]
6E3D3B2F 8B45 B4 MOV EAX,DWORD PTR [EBP-4C]
6E3D3B32 8D4C02 02 LEA ECX,DWORD PTR [EDX+EAX+2]
6E3D3B36 81E1 0F000080 AND ECX,8000000F
6E3D3B3C 79 05 JNS SHORT logiclay.6E3D3B43
6E3D3B3E 49 DEC ECX
6E3D3B3F 83C9 F0 OR ECX,FFFFFFF0
6E3D3B42 41 INC ECX
6E3D3B43 394D B0 CMP DWORD PTR [EBP-50],ECX
6E3D3B46 0F85 7F000000 JNZ logiclay.6E3D3BCB
6E3D3B4C 8B45 CC MOV EAX,DWORD PTR [EBP-34] ; 校验3
6E3D3B4F 0345 C8 ADD EAX,DWORD PTR [EBP-38]
6E3D3B52 8B4D C4 MOV ECX,DWORD PTR [EBP-3C]
6E3D3B55 8D5408 03 LEA EDX,DWORD PTR [EAX+ECX+3]
6E3D3B59 81E2 0F000080 AND EDX,8000000F
6E3D3B5F 79 05 JNS SHORT logiclay.6E3D3B66
6E3D3B61 4A DEC EDX
6E3D3B62 83CA F0 OR EDX,FFFFFFF0
6E3D3B65 42 INC EDX
6E3D3B66 3955 C0 CMP DWORD PTR [EBP-40],EDX
6E3D3B69 75 60 JNZ SHORT logiclay.6E3D3BCB
6E3D3B6B 8B4D DC MOV ECX,DWORD PTR [EBP-24] ; 校验4
6E3D3B6E 034D D8 ADD ECX,DWORD PTR [EBP-28]
6E3D3B71 8B55 D4 MOV EDX,DWORD PTR [EBP-2C]
6E3D3B74 8D4411 04 LEA EAX,DWORD PTR [ECX+EDX+4]
6E3D3B78 25 0F000080 AND EAX,8000000F
6E3D3B7D 79 05 JNS SHORT logiclay.6E3D3B84
6E3D3B7F 48 DEC EAX
6E3D3B80 83C8 F0 OR EAX,FFFFFFF0
6E3D3B83 40 INC EAX
6E3D3B84 3945 D0 CMP DWORD PTR [EBP-30],EAX
6E3D3B87 75 42 JNZ SHORT logiclay.6E3D3BCB
6E3D3B89 8B55 EC MOV EDX,DWORD PTR [EBP-14] ; 校验5
6E3D3B8C 0355 E8 ADD EDX,DWORD PTR [EBP-18]
6E3D3B8F 8B45 E4 MOV EAX,DWORD PTR [EBP-1C]
6E3D3B92 8D4C02 05 LEA ECX,DWORD PTR [EDX+EAX+5]
6E3D3B96 81E1 0F000080 AND ECX,8000000F
6E3D3B9C 79 05 JNS SHORT logiclay.6E3D3BA3
6E3D3B9E 49 DEC ECX
6E3D3B9F 83C9 F0 OR ECX,FFFFFFF0
6E3D3BA2 41 INC ECX
6E3D3BA3 394D E0 CMP DWORD PTR [EBP-20],ECX
6E3D3BA6 75 23 JNZ SHORT logiclay.6E3D3BCB
'
' {中间代码省略}
'
6E3D3C14 ^ E9 52FCFFFF JMP logiclay.6E3D386B
>>>>>>>>>>>>>>> 第八部分: 分析注册号的输入规则 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
1. 在 >>> 第七部分: 不要满足直接获取注册号码 <<< 的一大段汇编代码中, 已经按照颜色区别标准了各种处理注册号的逻辑功能.
XXX色块汇编代码: 判断注册号长度是否为0x18(十进制: 24)
XXX色块汇编代码: 把注册号转化为大写
XXX色块汇编代码: 判断注册号前4个字符是否为: 8A77 或 6DFD 或 82DA 或 B4DE 或 75E2 或 84E4 或 E985
XXX色块汇编代码: 判断注册号的每个字符是否在 0~9 或者 A~F 范围
2. Ok, 通过上面分析出的破解规则我们可以尝试输入一个符合规则的测试注册号, 比如“E98556789abcdef123456789”, 这样做的目的是为了更好的进入处理注册号的核心算法. 下面我们重新返回1-click pc tuneup软件的注册对话框, 并输入“E98556789abcdef123456789”, 再次按下"Activate Now",此时我们会再次进入内置"82A63CCD5F3A45AA97DB7A0C"注册号所在的函数, 然后再按下F8(步过), 会来到红颜色块的汇编代码, 这里就是注册号的核心算法了.
>>>>>>>>>>>>>>> 第九部分: 分析注册号码的生成算法 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
1. 通过分析红颜色块的汇编代码, 可以知道, 注册码核心算法流程如下:
1.1 把长度为0x18(十进制: 24)的注册码划分为6段, 每段4个字符.
1.2 头段就是注册号码的特征头: 8A77 或 6DFD 或 82DA 或 B4DE 或 75E2 或 84E4 或 E985
1.3 后面5段的计算方式如下:
1.3.1 每段索引值分别为 1 2 3 4 5
1.3.2 当计算依次计算每段的4个字符时,会先把当前段后面的3个字符当作16进制相加, 然后在加上当前段的索引值.
1.3.3 通过1.3.2的方式计算出来值, 再进行计算出当前段的第1个字符.
假设1.3.2的方式计算出来值为X,当前段的第1个字符为Y, 那么X和Y之间的关系如下:
Y = X and 0x8000000F ;
if (Y < 0)
{
Y := Y - 1 ;
Y := Y or 0xFFFFFFF0 ;
Y := Y + 1 ;
}
2. 经过上面分析,就可以理清整个注册号的生成规则, 并写出1-click pc tuneup软件的注册机了.
- 1-Click PC Tuneup软件-破解实录-[下]
- 1-Click PC Tuneup软件-破解实录-[上]
- 1-Click PC Tuneup软件-破解实录-[中]
- 1-Click PC Tuneup软件-破解实录-[附加篇]编写注册机
- AVG 2017 PC TuneUp
- AVG PC Tuneup 2017(顶级系统优化大师)官方中文破解版64位V16.76.3.18604下载 | 内置avg pc tuneup 2017激活码
- AVG PC Tuneup 2017(顶级系统优化大师)官方中文破解版64位V16.76.3.18604下载 | 内置avg pc tuneup 2017激活码
- Guide: Uninstall AVG PC Tuneup 2013/2012
- Madcrosoft.PC.TuneUp.Tools.2012.v8.0.043-LAXiTY
- IDM破解实录
- 【MyEclipse 2015】 逆向破解实录系列【1】(纯研究)
- 软件破解教程1
- Anthemion DialogBlocks 5.07破解实录
- Click软件路由器实验
- Mac下清理软件CleanMyMac破解版
- mac下UML软件startUML的破解
- linux下的密码破解软件
- PC论坛,破解论坛
- 1-Click PC Tuneup软件-破解实录-[中]
- VIM到帮助文档
- iOS:事件处理
- Project Euler problem 65
- 还是杂谈
- 1-Click PC Tuneup软件-破解实录-[下]
- cocos2dx 2.1.4 shader解析2-CCGLProgram分析
- java stack快排
- c#实现对邮件的发送
- 敏捷开发纵横谈(2)——极限编程
- 将博客搬至CSDN
- Tutorial 02 - Hello dot!
- JQUERY 选择器
- HDU 4768 Flyer(二分)