toupper

NTSTATUS __stdcall toupper(INT64 c){
  NTSTATUS result; 
  UINT64 BytesInUnicodeString; 
  UINT8 *SourceCharacter; 
  NTSTATUS v4; 
  char MultiByteString; 
  unsigned __int8 v6; 
  wchar_t UnicodeString; 
  UINT64 BytesInMultiByteString; 

  v4 = c;
  LODWORD(BytesInMultiByteString) = 0;
  SourceCharacter = (UINT8 *)&v4;
  UnicodeString = RtlAnsiCharToUnicodeChar(&SourceCharacter);
  LODWORD(BytesInUnicodeString) = 2;
  if( RtlUpcaseUnicodeToMultiByteN(
         &MultiByteString,
         2ui64,
         (PULONG)&BytesInMultiByteString,
         &UnicodeString,
         BytesInUnicodeString) < 0 )
    return v4;
  result = (unsigned __int8)MultiByteString;
  if( (_DWORD)BytesInMultiByteString != 1 )
    return v6 | ((unsigned __int8)MultiByteString << 8);
  return result;
}

Referenced by:

AslStringPatternMatchA