public static void WriteSerString(this IBinaryStreamWriter writer, string value) { if (value == null) { writer.WriteByte(0xFF); return; } var bytes = Encoding.UTF8.GetBytes(value); writer.WriteCompressedUInt32((uint)bytes.Length); writer.WriteBytes(bytes); }