VfIoAllocateIrp2

VOID __stdcall VfIoAllocateIrp2(_IRP *Irp, VOID **StackTrace){
  _IOV_REQUEST_PACKET *v4; 

  if( !VfIoDisabled )
  {
    v4 = VfPacketCreateAndLock(Irp);
    if( v4 )
    {
      _InterlockedIncrement(v4 + 5);
      ++v4[6];
      v4[14] |= 0x200000u;
      Irp->Flags |= 0x40000000u;
      if( StackTrace )
      {
        *(_OWORD *)(v4 + 30) = *(_OWORD *)StackTrace;
        *(_OWORD *)(v4 + 34) = *((_OWORD *)StackTrace + 1);
        *(_OWORD *)(v4 + 38) = *((_OWORD *)StackTrace + 2);
        *(_OWORD *)(v4 + 42) = *((_OWORD *)StackTrace + 3);
      }
      else
      {
        *((_QWORD *)v4 + 15) = 0i64;
      }
      VfIrpDatabaseEntryReleaseLock(v4);
    }
  }
}

Referenced by:

IovAllocateIrp