HalpDmaGrowScatterMapBuffers

VOID __stdcall HalpDmaGrowScatterMapBuffers(_HALP_DMA_ADAPTER_OBJECT *Adapter, UINT64 PagesToAllocate){
  _MDL *Mdl; 
  _MDL *v4; 
  VOID *a3; 

  a3 = 0i64;
  Mdl = HalpDmaAllocateScatterMemory((_LARGE_INTEGER *)Adapter, (VOID **)PagesToAllocate, &a3);
  v4 = Mdl;
  if( Mdl )
  {
    if( !HalpDmaCommitScatterMapBuffers(Adapter, a3, 0i64, 0i64, Mdl) )
    {
      if( a3 )
        MmUnmapLockedPages(a3, v4);
      MmFreePagesFromMdl(v4);
    }
    ExFreePoolWithTag(v4, 0);
  }
}

Referenced by:

HalpAllocateMapRegisters
HalpGrowMapBufferWorker