PopPowerAggregatorInvokeStateMachine

NTSTATUS __stdcall PopPowerAggregatorInvokeStateMachine(){
  __int64 v0; 
  NTSTATUS v1; 
  __int64 v2; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  __int64 v5; 
  int v6; 
  int v7; 

  LODWORD(v0) = PopPowerAggregatorAllocateLogEntry((INT64)&PopIrpWorkerControlEvent + 3008, 3i64);
  UserData.Reserved = 0;
  v7 = 0;
  *(_OWORD *)(v0 + 24) = *(_OWORD *)((char *)&PopIrpWorkerControlEvent + 3032);
  UserData.Size = 4;
  v6 = 4;
  *(_OWORD *)(v0 + 40) = *(_OWORD *)((char *)&PopIrpWorkerControlEvent + 3048);
  *(_OWORD *)(v0 + 56) = *(_OWORD *)((char *)&PopIrpWorkerControlEvent + 3064);
  *(_OWORD *)(v0 + 72) = *(_OWORD *)((char *)&PopIrpWorkerControlEvent + 3080);
  *(_OWORD *)(v0 + 88) = *(_OWORD *)((char *)&PopIrpWorkerControlEvent + 3096);
  UserData.Ptr = (unsigned __int64)&PopIrpWorkerControlEvent + 3032;
  v5 = (__int64)&PopIrpWorkerControlEvent + 3080;
  PopPowerAggregatorDiagTraceEvent(&POP_ETW_EVENT_POWER_AGGREGATOR_HANDLER_INVOKE, 2u, &UserData);
  v1 = ((__int64(__fastcall *)(char *))*(&PopPowerAggregatorInternalStateContexts[4
                                                                                 * *(&PopIrpWorkerControlEvent + 770)]
                                        + *(&PopIrpWorkerControlEvent + 758)))((char *)&PopIrpWorkerControlEvent + 3008);
  LODWORD(v2) = PopPowerAggregatorAllocateLogEntry((INT64)&PopIrpWorkerControlEvent + 3008, 4i64);
  *(_DWORD *)(v2 + 24) = v1;
  return v1;
}

Referenced by:

PopPowerAggregatorWorker