IopCreateRootEnumeratedDeviceObject
INT64 __fastcall IopCreateRootEnumeratedDeviceObject(_QWORD *a1){
NTSTATUS v2;
DEVICE_OBJECT *v3;
_DEVICE_OBJECT *v4;
UINT64 DeviceCharacteristics;
DEVICE_OBJECT *v7;
v7 = 0i64;
LODWORD(DeviceCharacteristics) = 128;
v2 = IoCreateDevice(PnpDriverObject, 4ui64, 0i64, 4ui64, DeviceCharacteristics, 0, &v7);
if( v2 < 0 )
{
v4 = v7;
}
else
{
v3 = v7;
*a1 = v7;
**((_DWORD **)v3 + 8) = 0;
v4 = 0i64;
}
if( v4 )
IoDeleteDevice(v4);
return(unsigned int)v2;
}Referenced by:
IoReportDetectedDevice
IopInitializeDeviceInstanceKey
IopLegacyResourceAllocation
PiInitializeDevice