PpmPerfAction
VOID __stdcall PpmPerfAction(KDPC *Dpc, PVOID Context, PVOID Arg1, PVOID Arg2){
char v5;
__int64 v6;
v5 = _InterlockedExchange((volatile __int32 *)Context + 8276, 0);
if( (v5 & 1) != 0 )
PpmPerfSnapDeliveredPerformance((INT64)Context + 33128, 0, 0i64, Arg2);
if( (v5 & 2) != 0 )
PpmParkReportUnparkedCore((__int64)Context);
if( (v5 & 4) != 0 )
{
v6 = *((_QWORD *)Context + 4142);
if( *(_BYTE *)(v6 + 124) )
{
*(_BYTE *)(v6 + 124) = 0;
PpmPerfApplyProcessorState((__int64)Context, 1);
}
PpmPerfApplyProcessorState((__int64)Context, 0);
}
if( (v5 & 8) != 0 )
PpmParkReportParkedCore((__int64)Context);
if( (v5 & 0x10) != 0 )
PpmParkReportSoftParkChange((__int64)Context);
if( _InterlockedExchangeAdd(&PpmCheckCount, 0xFFFFFFFF) == 1 )
PpmCheckContinueExecution();
}Referenced by:
No references.