PopPdcRegister

NTSTATUS __stdcall PopPdcRegister(POWER_PDC_INPUT *PdcInput, POWER_PDC_OUTPUT *PdcOutput){
  NTSTATUS v2; 

  v2 = 0;
  if( !PdcOutput )
    return -1073741811;
  PopAcquirePolicyLock();
  PopModernStandbyTransitionInfo = 0i64;
  *(_OWORD *)&PoPdcCallbacks = *(_OWORD *)(PdcInput + 2);
  *((_OWORD *)&PoPdcCallbacks + 1) = *(_OWORD *)(PdcInput + 6);
  *((_OWORD *)&PoPdcCallbacks + 2) = *(_OWORD *)(PdcInput + 10);
  *((_OWORD *)&PoPdcCallbacks + 3) = *(_OWORD *)(PdcInput + 14);
  *((_OWORD *)&PoPdcCallbacks + 4) = *(_OWORD *)(PdcInput + 18);
  *((_OWORD *)&PoPdcCallbacks + 5) = *(_OWORD *)(PdcInput + 22);
  *((_OWORD *)&PoPdcCallbacks + 6) = *(_OWORD *)(PdcInput + 26);
  *((_OWORD *)&PoPdcCallbacks + 7) = *(_OWORD *)(PdcInput + 30);
  *((_OWORD *)&PoPdcCallbacks + 8) = *(_OWORD *)(PdcInput + 34);
  *((_OWORD *)&PoPdcCallbacks + 9) = *(_OWORD *)(PdcInput + 38);
  *((_OWORD *)&PoPdcCallbacks + 10) = *(_OWORD *)(PdcInput + 42);
  *(_QWORD *)PdcOutput = PdcPoResiliencyClient;
  *((_QWORD *)PdcOutput + 1) = PdcPoLowPower;
  *((_QWORD *)PdcOutput + 2) = PdcPoSetPowerAction;
  *((_QWORD *)PdcOutput + 3) = PdcPoReportButton;
  *((_QWORD *)PdcOutput + 4) = PdcPoReportLidState;
  *((_QWORD *)PdcOutput + 5) = PdcPoRecordButton;
  *((_QWORD *)PdcOutput + 6) = PdcPoVerifyActionPolicy;
  *((_QWORD *)PdcOutput + 7) = PdcPoVerifyPowerState;
  *((_QWORD *)PdcOutput + 8) = PopBlockSessionSwitch;
  *((_QWORD *)PdcOutput + 9) = PopControlMonitor;
  *((_QWORD *)PdcOutput + 10) = PopNotifyCsStateExited;
  *((_QWORD *)PdcOutput + 11) = PdcPoCurrentPdcPhase;
  *((_QWORD *)PdcOutput + 12) = PdcPoIdleScanEnabled;
  *((_QWORD *)PdcOutput + 13) = PdcPoPpmRegisterProfiles;
  *((_QWORD *)PdcOutput + 14) = PdcPoPpmApplyProfile;
  *((_QWORD *)PdcOutput + 15) = PdcPoPpmResetProfile;
  *((_QWORD *)PdcOutput + 16) = PdcPoNetworkResiliency;
  *((_QWORD *)PdcOutput + 17) = PpmQueryDripsResidency;
  *((_QWORD *)PdcOutput + 18) = PdcPoSleepStudyHelperSetPhaseActive;
  *((_QWORD *)PdcOutput + 19) = PdcPoPowerRequestBlockingCallback;
  PopReleasePolicyLock();
  return v2;
}

Referenced by:

PopPdcInvocation