IovpCheckIrpForCriticalTracking

UINT64 __stdcall IovpCheckIrpForCriticalTracking(_IRP *Irp){
  unsigned int v1; 
  _IOV_DATABASE_HEADER *v3; 
  unsigned int Flags; 

  v1 = 0;
  if( (Irp->Flags & 0xC0000000) == 0 )
  {
    v3 = VfIrpDatabaseEntryFindAndLock(Irp);
    Flags = Irp->Flags;
    if( v3 )
    {
      Irp->Flags = Flags | 0x40000000;
      goto LABEL_6;
    }
    Irp->Flags = Flags | 0x80000000;
    return 0i64;
  }
  if( (Irp->Flags & 0xC0000000) != 0x40000000 )
    return 0i64;
  v3 = VfIrpDatabaseEntryFindAndLock(Irp);
LABEL_6:
  if( *((_QWORD *)v3 + 30) )
    v1 = 1;
  else
    v3[14] |= 0x80000u;
  VfIrpDatabaseEntryReleaseLock(v3);
  return v1;
}

Referenced by:

VfIrpAllocateCallDriverData