IoFreeMapRegistersV2

void __fastcall IoFreeMapRegistersV2(__int64 a1, __int64 a2, unsigned int a3){
  __int64 v3; 
  char v5; 
  unsigned __int8 CurrentIrql; 
  v3 = *(_QWORD *)(a1 + 152);
  if( v3 && a2 )
  {
    v5 = 0;
    CurrentIrql = 0;
    if( KeGetCurrentIrql() < 2u )
    {
      CurrentIrql = KeGetCurrentIrql();
      __writecr8(2ui64);
      v5 = 1;
    }
    if( a3 )
      HalpDmaFreeMapRegisters(a1, a2, a3);
    HalpDmaProcessMapRegisterQueueV2(v3, *(_BYTE *)(a1 + 434));
    if( v5 )
      __writecr8(CurrentIrql);
  }
}

Referenced by:

IoFreeMapRegisters