HalpDmaInitPowerManagement

NTSTATUS __stdcall HalpDmaInitPowerManagement(){
  INT64 v0; 
  NTSTATUS v1; 
  NTSTATUS v3; 
  POHANDLE *v4; 
  INT64 a2[10]; 
  __int64 v6[2]; 
  int v7; 
  int v8; 

  v8 = 0;
  v6[0] = 0i64;
  v6[1] = 0i64;
  v0 = qword_140C49B00;
  v1 = 0;
  v7 = 10;
  while( (INT64 *)v0 != &qword_140C49B00 )
  {
    memset(a2, 0i64, sizeof(a2));
    a2[0] = 0x100000001i64;
    a2[9] = (INT64)v6;
    a2[3] = (INT64)HalpDmaPowerCriticalTransitionCallback;
    LODWORD(a2[8]) = 1;
    a2[5] = v0;
    v3 = PoFxRegisterCoreDevice((_UNICODE_STRING *)(v0 + 192), (INT64)a2, (_POP_FX_DEVICE **)(v0 + 208));
    if( v3 < 0 )
      v1 = v3;
    PoFxActivateComponent(*(POHANDLE **)(v0 + 208), 0i64, 1ui64);
    v4 = *(POHANDLE **)(v0 + 208);
    *(_BYTE *)(v0 + 216) = 1;
    PoFxStartDevicePowerManagement(v4);
    v0 = *(_QWORD *)v0;
  }
  return v1;
}

Referenced by:

HalpDmaInitSystem