HalpDmaInitSystem

NTSTATUS __stdcall HalpDmaInitSystem(
        _HAL_INIT_PHASE HalPhase,
        _LOADER_PARAMETER_BLOCK *LoaderBlock,
        _LOADER_PARAMETER_BLOCK *a3){
  NTSTATUS v3; 
  __int32 v4; 
  __int32 v5; 
  __int32 v6; 
  __int32 v7; 
  int v8; 
  int v9; 
  NTSTATUS v11; 

  v3 = 0;
  v4 = HalPhase - 4;
  if( !v4 )
    return v3;
  v5 = v4 - 3;
  if( !v5 )
  {
    HalpDmaPdoListLock = 0i64;
    qword_140C49B08 = &qword_140C49B00;
    qword_140C49B00 = (INT64)&qword_140C49B00;
    qword_140C4BC48 = (__int64)&HalpDmaHibernateAdapters;
    HalpDmaHibernateAdapters = (__int64)&HalpDmaHibernateAdapters;
    qword_140C4BC28 = (__int64)&HalpDmaPdoList;
    HalpDmaPdoList = (__int64)&HalpDmaPdoList;
    return v3;
  }
  v6 = v5 - 1;
  if( !v6 )
    return HalpDmaInitDiscard(a3);
  v7 = v6 - 1;
  if( !v7 )
    return v3;
  v8 = v7 - 16;
  if( !v8 )
  {
    HalpDmaInit();
    return v11;
  }
  v9 = v8 - 2;
  if( !v9 )
  {
    HalpDmaFinalizeDoubleBufferingDisposition();
    return v3;
  }
  if( v9 == 2 )
    return HalpDmaInitPowerManagement();
  return v3;
}

Referenced by:

No references.