HalpDmaAllocateTranslationBuffer

__int64 __fastcall HalpDmaAllocateTranslationBuffer(__int64 a1, __int64 a2){
  __int64 v3; 
  __int64 v4; 
  __int64 v5; 
  __int64 v6; 
  __int64 v7; 
  __int64 result; 
  v4 = HalpMmAllocCtxAlloc(a1, 24i64);
  if( v4 )
  {
    v5 = HalpMmAllocCtxAlloc(v3, 0x4000i64);
    v7 = v5;
    if( v5 )
    {
      *(_QWORD *)v4 = 0i64;
      *(_DWORD *)(v4 + 12) = 0;
      memset(v5, 0i64);
      *(_DWORD *)(v4 + 8) = 227;
      result = v4;
      *(_QWORD *)(v4 + 16) = v7;
      *(_DWORD *)(a2 + 8) = 0;
      *(_QWORD *)a2 = v4;
      return result;
    }
    HalpMmAllocCtxFree(v6, v4);
  }
  return 0i64;
}

Referenced by:

HalpDmaInitializeMasterAdapter