PpmIdleCheckProcessorStateEligibility
__int64 __fastcall PpmIdleCheckProcessorStateEligibility(
__int64 a1,
unsigned int a2,
__int64 a3,
unsigned __int64 a4,
unsigned int a5,
char a6){
__int64 v6;
__int64 result;
unsigned int v9;
__int64 v10;
unsigned int v11;
__int64 v12;
unsigned int v13;
v6 = *(_QWORD *)(a1 + 0x8000);
if( *(_DWORD *)(v6 + 36) == 3 && PpmIdleVetoBias )
return 4294967294i64;
v9 = a5;
v10 = 248i64 * a5;
if( *(_BYTE *)(v10 + v6 + 1063) )
return 2147483658i64;
if( a2 != -1 && a5 > a2 )
return 2147483656i64;
if( !*(_BYTE *)(v10 + v6 + 1058) && *(_BYTE *)(v6 + 539) )
return 2147483655i64;
if( a6 )
goto LABEL_19;
v11 = PpmCheckIdleVeto(v10 + v6 + 1016);
if( v11 )
return v11 | 0x100000000i64;
if( *(_DWORD *)(v12 + v6 + 1000) > v13 )
return 2147483650i64;
if( *(unsigned int *)(v12 + v6 + 1004) > a4 )
return 2147483651i64;
LABEL_19:
result = *(_QWORD *)(v6 + 448);
if( result )
return((unsigned int(__fastcall *)(_QWORD, _QWORD))result)(*(_QWORD *)(v6 + 488), v9);
return result;
}Referenced by:
PpmIdleSelectCoordinatedProcessorDependency