IoRegisterBootDriverCallback

VOID **__fastcall IoRegisterBootDriverCallback(VOID *a1, VOID *a2){
  _UNICODE_STRING v5; 
  _OBJECT_ATTRIBUTES ObjectAttributes; 

  *(&ObjectAttributes.Length + 1) = 0;
  *(&ObjectAttributes.Attributes + 1) = 0;
  v5 = 0i64;
  if( *(&stru_140C452E0 + 312) )
    return 0i64;
  if( !PnpBootDriverCallbackObject
    && (RtlInitUnicodeString(&v5, L"\\Callback\\BootDriver"),
        ObjectAttributes.RootDirectory = 0i64,
        ObjectAttributes.Length = 48,
        ObjectAttributes.Attributes = 576,
        ObjectAttributes.ObjectName = &v5,
        *(_OWORD *)&ObjectAttributes.SecurityDescriptor = 0i64,
        ExCreateCallback(&PnpBootDriverCallbackObject, &ObjectAttributes, 1u, 1u) < 0) )
  {
    return 0i64;
  }
  else
  {
    return(VOID **)ExRegisterCallback(PnpBootDriverCallbackObject, (PCALLBACK_FUNCTION)a1, a2);
  }
}

Referenced by:

No references.