PpvUtilCallAddDevice

NTSTATUS __stdcall PpvUtilCallAddDevice(
        _DEVICE_OBJECT *PhysicalDeviceObject,
        _DRIVER_OBJECT *DriverObject,
        INT64 *AddDeviceFunction,
        _DRIVER_OBJECT *a4,
        _DEVICE_OBJECT *a5,
        VF_DEVOBJ_TYPE DevObjType){
  unsigned int v6; 
  NTSTATUS v11; 
  VF_DEVOBJ_TYPE v12; 

  v6 = (unsigned int)a4;
  if( !*(&stru_140CF2E80 + 7336) || (MmVerifierData & 0x200) == 0 )
    return((__int64(__fastcall *)(_DRIVER_OBJECT *, _DEVICE_OBJECT *))AddDeviceFunction)(
             DriverObject,
             PhysicalDeviceObject);
  VfDevObjPreAddDevice(PhysicalDeviceObject, DriverObject, (VF_DEVOBJ_TYPE)AddDeviceFunction);
  v11 = ((__int64(__fastcall *)(_DRIVER_OBJECT *, _DEVICE_OBJECT *))AddDeviceFunction)(
          DriverObject,
          PhysicalDeviceObject);
  VfDevObjPostAddDevice(PhysicalDeviceObject, DriverObject, v12, v6);
  return v11;
}

Referenced by:

PnpCallAddDevice