HalpDriverEntry

NTSTATUS __stdcall HalpDriverEntry(_DRIVER_OBJECT *DriverObject, _UNICODE_STRING *RegistryPath){
  _DRIVER_EXTENSION *DriverExtension; 
  NTSTATUS result; 
  _DEVICE_OBJECT *PhysicalDeviceObject; 

  DriverExtension = DriverObject->DriverExtension;
  PhysicalDeviceObject = 0i64;
  qword_140C49EC0 = DriverObject;
  DriverExtension->AddDevice = (int(__fastcall *)(_DRIVER_OBJECT *, _DEVICE_OBJECT *))HalpAddDevice;
  DriverObject->MajorFunction[27] = (int(__fastcall *)(_DEVICE_OBJECT *, _IRP *))HalpDispatchPnp;
  DriverObject->MajorFunction[22] = (int(__fastcall *)(_DEVICE_OBJECT *, _IRP *))HalpDispatchPower;
  DriverObject->MajorFunction[23] = (int(__fastcall *)(_DEVICE_OBJECT *, _IRP *))HalpDispatchWmi;
  result = IoReportDetectedDevice(
             DriverObject,
             InterfaceTypeUndefined,
             0xFFFFFFFFui64,
             0xFFFFFFFFui64,
             0i64,
             0i64,
             0,
             &PhysicalDeviceObject);
  if( result >= 0 )
  {
    HalpAddDevice(DriverObject, PhysicalDeviceObject);
    return 0;
  }
  return result;
}

Referenced by:

No references.