目标程序:MediaChance Photo-Brush v5.3

文件: PhotoBrush.exe
大小: 4685824 字节
文件版本: 5, 1, 0, 0
修改时间: 2011年1月5日 星期三, 13:16:04
MD5: 9BAC3410001254E145DED24872F92CD9
SHA1: 7555B4CE260D4B737A7EEBDB9D07F824D88D4260
CRC32: 028C2CD9


注册验证:
00509030    55                       push ebp
00509031    8BEC                     mov ebp,esp
00509033    6A FF                    push -1
00509035    68 B8566800              push 006856B8
0050903A    64:A1 00000000           mov eax,dword ptr fs:[0]
00509040    50                       push eax
00509041    64:8925 00000000         mov dword ptr fs:[0],esp
00509048    83EC 28                  sub esp,28
0050904B    53                       push ebx
0050904C    56                       push esi
0050904D    57                       push edi
0050904E    8BF1                     mov esi,ecx
00509050    8D45 08                  lea eax,dword ptr ss:[ebp+8]
00509053    8D4D E8                  lea ecx,dword ptr ss:[ebp-18]
00509056    50                       push eax
00509057    C745 FC 00000000         mov dword ptr ss:[ebp-4],0
0050905E    E8 AC841400              call 0065150F
00509063    8D4D E8                  lea ecx,dword ptr ss:[ebp-18]
00509066    C645 FC 01               mov byte ptr ss:[ebp-4],1
0050906A    E8 1B0D1400              call 00649D8A
0050906F    8D4D E8                  lea ecx,dword ptr ss:[ebp-18]
00509072    E8 C70C1400              call 00649D3E
00509077    68 101F7200              push 00721F10                                       ; ASCII "0000000000000000000"
0050907C    8D4D E8                  lea ecx,dword ptr ss:[ebp-18]
0050907F    E8 F28A1400              call 00651B76
...


验证算法:
-------------------------------------------------------------------
#define PB_CALC(x)      ((abs(x) % 10) + '0')

TCHAR   Key[20] = "0000-0000-0000-0000";    // 可随机生成
TCHAR  sz[12] = {0};
int    val;

// 0
val = Key[0] + Key[1] + Key[2] + Key[2] * 3;
sz[0] = PB_CALC(val);

// 1
val = Key[0] * 5 + (Key[4] + Key[6] * 2) * 2 + Key[3];
sz[1] = PB_CALC(val);

// 2
val = (Key[1] + Key[3]) * 3 + Key[5] * 2 + Key[2];
sz[2] = PB_CALC(val);

// 3
val = (Key[2] + Key[4] * 2 + Key[5] + Key[7]) * 2;
sz[3] = PB_CALC(val);

// 4
sz[4] = '-';

// 5
val = (Key[3] * 2 + Key[5]) * 3 + Key[6];
sz[5] = PB_CALC(val);

// 6
val = (Key[3] + Key[5] + Key[7]) * 3 + Key[3] * 2;
sz[6] = PB_CALC(val);

// 7
val = Key[0] + Key[2] * 5 + (Key[1] + Key[4]) * 4;
sz[7] = PB_CALC(val);

// 8
val = Key[0] + Key[1] + (Key[2] + Key[3]) * 2 + Key[3] * 3;
sz[8] = PB_CALC(val);

// 1
val = (Key[1] + Key[3] + Key[6]) * 3 + Key[7] * 2;
sz[1] = PB_CALC(val);

// 2
val = Key[5] * 5 + (Key[7] * 2 + Key[8]) * 4;
sz[2] = PB_CALC(val);

// 6
val = ((Key[3] + Key[8]) * 2 + Key[6]) * 2 + Key[3] * 5;
sz[6] = PB_CALC(val);

Key[10 + 1] = sz[1];
Key[10 + 2] = sz[2];
Key[10 + 6] = sz[6];

// 至此得到注册码 0000-0000-0860-0000,与用户名无关

-------------------------------------------------------------------
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\MediaChance.Info\Photo-Brush 5]
"SerialNum"="0000-0000-0860-0000"
"UserName"="rocktx"
-------------------------------------------------------------------

疏漏之处,望请海涵。。。

上传的附件 PBKeygen.zip