-
-
[求助]算法已经分析完成,但是这个CM的注册机该怎么写呢?
-
发表于:
2017-6-7 17:23
3709
-
[求助]算法已经分析完成,但是这个CM的注册机该怎么写呢?
这个CM是160个CM练习里面的,关于整个流程我已经分析出来了,正向算法也知道了,但是反向算法该怎么写倒是难住我了 - -!,求各位大大帮帮看看
算法如下:
void loc_401269( const char * strUserName, DWORD dwSerial )
{
char strClassName[10] = { 0 };
strcpy_s( strClassName, 10, "CTEX" );
DWORD dwNum = *((DWORD*)strClassName);
for ( int i = 0; i < 10; i++)
dwNum += *((DWORD*)(strUserName+i));
dwNum += dwSerial;
DWORD dwTmp2 = dwNum ^ 0x584554;
dwNum >>= 0x10;
*((WORD*)(&dwTmp2)) -= *((WORD*)(&dwNum));
// 只要保证 *((WORD*)(&dwTmp2)) == 0x26EB 就可以
}
我只需要保证最后的计算结果,dwTmp2 的低位是 0x26EB 就行,看了半天,都没想出计算 dwSerial 的反向算法怎么写 - -!,求大家能指点下,我脑子打结了。。。。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!