| string GetCPUID()
{
#ifndef _WINXP
        INT32 dwBuf[4] = { 0 };
        __cpuidex(dwBuf, 1, 1);
        return int2hex(dwBuf[3], 8) + int2hex(dwBuf[0], 8);
#else
        uint32_t s1 = 0, s2 = 0;
        __asm {
                mov eax, 01h;
                xor edx, edx;
                cpuid;
                mov s1, edx;
                mov s2, eax;
        }
        return int2hex(s1, 8) + int2hex(s2, 8);
#endif
}
 
 |