Да, вы правы. Ошибся.
StringOf использует текущую кодировку на платформе, на Windows - это ANSI, на мобильных платформах - это UTF8:
function StringOf(const Bytes: TBytes): UnicodeString;
begin
if Assigned(Bytes) then
Result := TEncoding.Default.GetString(Bytes, Low(Bytes), High(Bytes) + 1)
else
Result := '';
end;
Поэтому лучше используйте TEncoding.ANSII:
TEncoding.ANSI.GetString(BufferOfBytes, Low(BufferOfBytes), High(BufferOfBytes) + 1);