When a Unicode 16 string is preceded by a printable character, the detected string is missing the first character.
import rust_strings
enc = ["utf-16le"]
bstr = "test".encode("utf-16le") + b"\x00\x00"
print(rust_strings.strings(bytes=b"\xD0" + bstr, min_length=2, encodings=enc))
print(rust_strings.strings(bytes=b"A" + bstr, min_length=2, encodings=enc))
Output:
[('test', 1)]
[('est', 3)]