INNER CODE UNIT · Python
s
bongtrop/hbctool · hbctool/hbc/hbc59/__init__.py:116
s = bytes(stringStorage[offset:offset + length])
return s.hex() if isUTF16 else s.decode("utf-8"), (isUTF16, offset, length)
def setString(self, sid, val):
assert sid >= 0 and sid < self.getStringCount(), "Invalid string ID"
stringTableEntry = self.getObj()["stringTableEntries"][sid]
stringStorage = self.getObj()["stringStorage"]
stringTableOverflowEntries = self.getObj()["stringTableOverflowEntries"]
isUTF16 = stringTableEntry["isUTF16"]
offset = stringTableEntry["offset"]
length = stringTableEntry["length"]
if length >= INVALID_LENGTH:
stringTableOverflowEntry = stringTableOverflowEntries[offset]
offset = stringTableOverflowEntry["offset"]
length = stringTableOverflowEntry["length"]