EmonInitializePebs
VOID __stdcall EmonInitializePebs(){
unsigned __int64 v0;
unsigned __int64 v1;
int v2;
int v3;
int v4;
*(&CmpDummyThreadEvent + 4921) = 0;
if( *(&CmpDummyThreadEvent + 1216) >= 2u && (EDX(__cpuid(1, 0)) & 0x200000) != 0 )
{
v0 = __readmsr(0x1A0u);
if( (v0 & 0x1000) == 0 )
{
*(&CmpDummyThreadEvent + 4920) = 1;
v1 = __readmsr(0x345u);
v2 = ((((unsigned __int64)HIDWORD(v1) << 32) | (unsigned int)v1) >> 8) & 0xF;
if( v2 )
{
v3 = v2 - 1;
if( v3 )
{
v4 = v3 - 1;
if( v4 )
{
if( v4 == 1 )
*(&CmpDummyThreadEvent + 1245) = 200;
else
*(&CmpDummyThreadEvent + 1245) = 0;
}
else
{
*(&CmpDummyThreadEvent + 1245) = 192;
}
}
else
{
*(&CmpDummyThreadEvent + 1245) = 176;
}
}
else
{
*(&CmpDummyThreadEvent + 1245) = 144;
}
*(&CmpDummyThreadEvent + 4921) = 1;
*(&CmpDummyThreadEvent + 1238) = 0;
}
}
}Referenced by:
No references.