PpmReapplyPerfPolicy
void __fastcall PpmReapplyPerfPolicy(_WORD *a1){
char v2;
int v3;
char v4;
char v5;
if( (*(_DWORD *)a1 & 0x1800) != 0 )
{
PopInitializeHeteroProcessors();
if( (*(_DWORD *)a1 & 0x800) != 0 || v2 )
*(_DWORD *)a1 |= 0x200Eu;
}
PpmUpdateProcessorPolicy(a1, 0i64);
v3 = *(_DWORD *)a1;
if( (*(_DWORD *)a1 & 4) != 0 )
{
PpmParkApplyPolicy();
v3 = *(_DWORD *)a1;
}
if( (v3 & 0x10) != 0 )
{
PpmPerfResizeHistoryAll();
v3 = *(_DWORD *)a1;
}
if( (v3 & 8) != 0 )
{
PpmCheckReInit();
v3 = *(_DWORD *)a1;
}
v4 = 0;
v5 = 1;
if( (v3 & 2) != 0 )
{
v5 = 0;
v4 = 1;
PpmPerfUpdateDomainPolicy(0);
v3 = *(_DWORD *)a1;
}
if( (v3 & 4) != 0 )
{
if( v4 )
{
PpmAcquireLock(&PpmPerfPolicyLock);
v3 = *(_DWORD *)a1;
}
v5 = 0;
if( (v3 & 0x2000) != 0 )
{
PpmCheckInitProcessors(1i64);
return;
}
PpmCheckApplyParkConstraints();
}
if( v5 )
PpmReleaseLock(&PpmPerfPolicyLock);
}Referenced by:
PpmCompareAndApplyPolicySettings
PpmPerfProcCapFloorSettingCallback
PpmReinitializeHeteroEngine
PpmSetProfilePolicySetting