defdecode_recent_docs_mru(value): """ Decodes recent docs MRU list Returns an array with 1st element being the filename, the second element being the symbolic link name """ value_decoded = [] index = value.find(b"\x00\x00") try: decoded = value[0:index + 1].decode("utf-16-le") except UnicodeDecodeError: try: decoded = value[0:index + 1].decode("utf-8") except UnicodeDecodeError: decoded = "".join([c for c in value[0:index + 1]])
value_decoded.append(decoded) # index+3 because the last char also ends with \x00 + null bytes \x00\x00, +14 is the offset for the link name index_end_link_name = value.find(b"\x00", index + 3 + 14) value_decoded.append(value[index + 3 + 14:index_end_link_name]) return value_decoded