HalpMiscInitializeKsr

NTSTATUS __stdcall HalpMiscInitializeKsr(){
  NTSTATUS result; 
  WCHAR v1; 
  struct _UNICODE_STRING DestinationString; 
  struct _OBJECT_ATTRIBUTES ObjectAttributes; 
  PCALLBACK_OBJECT CallbackObject; 
  __int64 v5; 
  CallbackObject = 0i64;
  v5 = 0i64;
  *(&ObjectAttributes.Length + 1) = 0;
  *(&ObjectAttributes.Attributes + 1) = 0;
  DestinationString = 0i64;
  result = KsrGetFirmwareInformation(&v5);
  if( result >= 0 )
  {
    RtlInitUnicodeString(&DestinationString, L"\\Callback\\SoftRestart", v1);
    ObjectAttributes.RootDirectory = 0i64;
    ObjectAttributes.ObjectName = &DestinationString;
    ObjectAttributes.Length = 48;
    ObjectAttributes.Attributes = 80;
    *(_OWORD *)&ObjectAttributes.SecurityDescriptor = 0i64;
    result = ExCreateCallback(&CallbackObject, &ObjectAttributes, 0, 1u);
    if( result >= 0 )
      return(unsigned int)ExRegisterCallback(CallbackObject, HalpKsrCallbackRoutine, 0i64);
  }
  return result;
}

Referenced by:

HalpMiscInitSystem