IopPerfCallDriver

NTSTATUS __stdcall IopPerfCallDriver(DEVICE_OBJECT *DeviceObject, IRP *Irp, PVOID ReturnAddress){
  CHAR *IrpExtension; 
  unsigned __int32 v6; 
  NTSTATUS v7; 
  if( (IopPerfStatus & 2) != 0 )
  {
    if( IopIrpHasValidCombinationOfExtensionTypes(Irp, 1ui64) )
    {
      IrpExtension = IopAllocateIrpExtension((INT64)Irp, 1i64);
      if( IrpExtension )
        *((_QWORD *)IrpExtension + 5) = *(_QWORD *)&KUSER_SHARED_DATA.SystemTime.LowPart;
    }
  }
  if( (IopPerfStatus & 1) == 0 )
    return IopfCallDriver(DeviceObject, Irp);
  ObfReferenceObjectWithTag(DeviceObject, 0x746C6644u);
  v6 = _InterlockedIncrement(&IopPerfDriverUniqueMatchId);
  IopPerfLogCallEvent(*((_DRIVER_OBJECT **)DeviceObject + 1), Irp, v6);
  v7 = IopfCallDriver(DeviceObject, Irp);
  IopPerfLogCallReturnEvent(Irp, v6);
  HalPutDmaAdapter((PADAPTER_OBJECT)DeviceObject);
  return v7;
}

Referenced by:

IofCallDriver
IofCallDriverSpecifyReturn
IovCallDriver
IovpCallDriverNoIrpTracking
IovpCallDriverWithStackBuffer