HalpTimerInitPowerManagement

INT64 __fastcall HalpTimerInitPowerManagement(){
  ULONG_PTR v0; 
  unsigned int v1; 
  __int64 v2; 
  POHANDLE **v3; 
  int v5[2]; 
  INT64(__stdcall *v6)(PVOID, _WHEA_ERROR_SEVERITY *); 
  NTSTATUS(__stdcall *v7)(UINT64 *); 
  VOID(__stdcall *v8)(PVOID); 
  __int64 v9; 
  ULONG_PTR v10; 
  __int128 v11; 
  int v12; 
  int v13; 
  __int64 *v14; 
  __int64 v15[2]; 
  int v16; 
  int v17; 
  v17 = 0;
  v15[0] = 0i64;
  v15[1] = 0i64;
  v0 = HalpRegisteredTimers;
  v1 = 0;
  v16 = 10;
  while( (ULONG_PTR *)v0 != &HalpRegisteredTimers )
  {
    v2 = *(_QWORD *)(v0 + 288);
    v9 = 0i64;
    v13 = 0;
    v14 = v15;
    v6 = xHalTimerWatchdogStop;
    v3 = (POHANDLE **)(v2 + 40);
    v11 = 0i64;
    v7 = HalpTimerPowerComponentIdleCallback;
    v5[0] = 1;
    v8 = HalpTimerPowerCriticalTransitionCallback;
    v5[1] = 1;
    v12 = 1;
    v10 = v0;
    v1 = PoFxRegisterCoreDevice((UNICODE_STRING *)(v2 + 24), (__int64)v5, (_QWORD *)(v2 + 40));
    if( (*(_DWORD *)(v0 + 184) & 5) == 4 )
      PoFxActivateComponent(*v3, 0i64, 0i64);
    PoFxStartDevicePowerManagement(*v3);
    v0 = *(_QWORD *)v0;
  }
  return v1;
}

Referenced by:

No references.