PpmAcquireLock

VOID __stdcall PpmAcquireLock(_PPM_LOCK *Lock){
  _ETHREAD *CurrentThread; 

  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --CurrentThread->Tcb.SpecialApcDisable;
  KeWaitForSingleObject((UINT64)Lock + 8, 0, 0, 0, 0i64);
  *(_QWORD *)Lock = KeGetCurrentThread();
}

Referenced by:

PdcPoPpmResetProfile
PoInitSystem
PoNotifyVSyncChange
PopCheckResiliencyScenarios
PopDeepSleepEvaluateCallback
PopEnforceResiliencyScenarios
PopIntSteerSetMode
PopPerfBoostPowerRequest
PopPowerInformationInternal
PopPpmHeteroPolicyCallback
PopSetupHighPerfPowerRequest
PopWnfFullscreenVideoCallback
PpmApplyProfile
PpmCheckInitProcessors
PpmCheckPausePpmEngineForSx
PpmCheckResumePpmEngineFromSx
PpmClearExitLatencySamplingPercentage
PpmClearSimulatedLoad
PpmDisableProfile
PpmEnableProfile
PpmEventTraceControlCallback
PpmHeteroHgsUpdateWorker
PpmMediaBufferingWorker
PpmParkApplyForcedMask
PpmParkClearForcedMask
PpmParkSetLpiCap
PpmPerfClearBootOverrides
PpmPerfGetBrandedFrequency
PpmPerfLatencySensitivityHintWorker
PpmPerfProcCapFloorSettingCallback
PpmPerfReApplyStates
PpmPerfTelemetryWorker
PpmProfileAcDcUpdate
PpmReapplyPerfPolicy
PpmRegisterPerfCap
PpmRegisterPerfStates
PpmRegisterProfiles
PpmRegisterSpmSettings
PpmSetExitLatencySamplingPercentage
PpmSetProfilePolicySetting
PpmSetSimulatedLoad
PpmUpdatePerfStates