SddlpUuidFromString

NTSTATUS __stdcall SddlpUuidFromString(WCHAR *ConvertGuidString, _GUID *Guid){
  NTSTATUS v2; 
  UINT64 v5; 
  __int64 v6; 
  WCHAR *v7; 
  _UNICODE_STRING DestinationString; 
  WCHAR Dst[2]; 
  char v11[74]; 

  v2 = 0;
  DestinationString = 0i64;
  if( *ConvertGuidString == 123 )
    goto LABEL_8;
  v5 = -1i64;
  v6 = -1i64;
  do
    ++v6;
  while( ConvertGuidString[v6] );
  if( ConvertGuidString[v6 - 1] == 125 )
  {
LABEL_8:
    v7 = ConvertGuidString;
  }
  else
  {
    *(_DWORD *)Dst = 123;
    memset(v11, 0i64, sizeof(v11));
    do
      ++v5;
    while( ConvertGuidString[v5] );
    wcsncat_s(Dst, 0x27ui64, ConvertGuidString, v5);
    wcsncat_s(Dst, 0x27ui64, (WCHAR *)L"}", 2ui64);
    v7 = Dst;
  }
  RtlInitUnicodeString(&DestinationString, v7);
  LOBYTE(v2) = RtlGUIDFromString(&DestinationString, Guid) >= 0;
  return v2;
}

Referenced by:

LocalGetAclForString