PipCriticalDeviceWaitCallback

INT64 __fastcall PipCriticalDeviceWaitCallback(INT64 a1, const CHAR *a2, UNICODE_STRING *a3){
  int v4; 
  INT8 v5; 
  void *FileHandle; 
  struct _STRING DestinationString; 
  struct _OBJECT_ATTRIBUTES ObjectAttributes; 
  struct _IO_STATUS_BLOCK IoStatusBlock; 
  char pszDest[256]; 
  FileHandle = 0i64;
  DestinationString = 0i64;
  IoStatusBlock = 0i64;
  memset(&ObjectAttributes, 0, sizeof(ObjectAttributes));
  if( a2 )
  {
    v4 = RtlStringCchPrintfA(pszDest, 0x100ui64, (INT8 *)"\\ArcName\\%s");
    if( v4 >= 0 )
    {
      RtlInitAnsiString(&DestinationString, pszDest, v5);
      v4 = RtlAnsiStringToUnicodeString(a3, &DestinationString, 1u);
      if( v4 >= 0 )
      {
        ObjectAttributes.RootDirectory = 0i64;
        ObjectAttributes.Length = 48;
        ObjectAttributes.Attributes = 576;
        *(_OWORD *)&ObjectAttributes.SecurityDescriptor = 0i64;
        ObjectAttributes.ObjectName = a3;
        v4 = ZwOpenFile((UNICODE_STRING *)&FileHandle, (PWCHAR)0x80);
      }
    }
    if( FileHandle )
      ZwClose(FileHandle);
  }
  else
  {
    return(unsigned int)-1073741811;
  }
  return(unsigned int)v4;
}

Referenced by:

No references.