// GHP
HMODULE hGHP = GetModuleHandle("GHP.dll");
if(hGHP != NULL)
{
GHPSetParam SetParam = (GHPSetParam)GetProcAddress(hGHP, "GHPSetParam");
GHPGetParam GetParam = (GHPGetParam)GetProcAddress(hGHP, "GHPGetParam");
if (SetParam != NULL && GetParam != NULL)
{
DWORD MyTime, GHPTime, diffTime;
DWORD APIKey = 0xCFBE3B5C;
DWORD Time_1 = 0x090A1199;
DWORD Time_2 = 0xBC3FFC9C;
MyTime = timeGetTime();
GetParam(APIKey, 0, (UCHAR*)&GHPTime, sizeof(GHPTime));
GHPTime ^= Time_1;
GHPTime -= Time_2;
diffTime = GHPTime - MyTime;
if (diffTime > 2000)
{
ExitProcess(0);
}
char buff[32];
memset(buff, 0, 32);
itoa((int)gUserProfile.CustomerID, buff, 10);
SetParam(APIKey, 0, (UCHAR*)buff, 32);
}
else
{
ExitProcess(0);
}
}
else
{
ExitProcess(0);
}