PpmDisableProfile
VOID __stdcall PpmDisableProfile(VOID *Context){
UINT8 v2;
char v3;
__int64 v4;
__int64 v5;
__int64 v6;
__int64 v7;
PpmAcquireLock((_PPM_LOCK *)((char *)&stru_140C23628 + 1048));
v2 = *((_BYTE *)Context + 8);
*((_DWORD *)Context + 7) &= ~1u;
v3 = 1;
PpmResetProfileSettings((_POP_PPM_PROFILE *)Context);
v4 = *(_QWORD *)((char *)Context + 12) - *(_QWORD *)&GUID_POWER_POLICY_PROFILE_LOW_POWER.Data1;
if( !v4 )
v4 = *(_QWORD *)((char *)Context + 20) - *(_QWORD *)GUID_POWER_POLICY_PROFILE_LOW_POWER.Data4;
if( !v4 )
{
PpmLowPowerProfile = 0i64;
goto LABEL_18;
}
v5 = *(_QWORD *)((char *)Context + 12) - *(_QWORD *)&GUID_POWER_POLICY_PROFILE_BACKGROUND.Data1;
if( !v5 )
v5 = *(_QWORD *)((char *)Context + 20) - *(_QWORD *)GUID_POWER_POLICY_PROFILE_BACKGROUND.Data4;
if( !v5 )
{
PpmBackgroundProfile = 0i64;
LABEL_17:
PpmReinitializeHeteroEngine(1);
v3 = 0;
goto LABEL_18;
}
v6 = *(_QWORD *)((char *)Context + 12) - *(_QWORD *)&GUID_POWER_POLICY_PROFILE_ENTRY_LEVEL_PERF.Data1;
if( !v6 )
v6 = *(_QWORD *)((char *)Context + 20) - *(_QWORD *)GUID_POWER_POLICY_PROFILE_ENTRY_LEVEL_PERF.Data4;
if( !v6 )
{
PpmEntryLevelPerfProfile = 0i64;
goto LABEL_17;
}
v7 = *(_QWORD *)((char *)Context + 12) - *(_QWORD *)&GUID_POWER_POLICY_PROFILE_QOS_MULTIMEDIA.Data1;
if( !v7 )
v7 = *(_QWORD *)((char *)Context + 20) - *(_QWORD *)GUID_POWER_POLICY_PROFILE_QOS_MULTIMEDIA.Data4;
if( !v7 )
{
PpmMultimediaQosProfile = 0i64;
goto LABEL_17;
}
LABEL_18:
PpmEventTraceProfileEnable(v2, 0);
if( v3 )
PpmReleaseLock((INT64 *)&stru_140C23628 + 131);
}Referenced by:
PdcPoPpmResetProfile