def load_and_decode_value(text, index, table):
current_char = ord(text[index])
return table[current_char]
def text_to_hex(text):
with open("DECODE_TABLE.bin", mode='rb') as file:
DECODE_TABLE = file.read()
decoded = []
val_indexchar_index = 0
text_len = len(text)
for i in range(0, 5):
val_0 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_1 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_next_0 = (val_0 * 2048) | (val_1 * 64)
val_1 = (val_next_0 // 256) & 0xFF
decoded.append(val_1)
if i == 4:
break
val_2 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_3 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_next_1 = (((val_2 * 2) | val_next_0) * 16777216) | (val_3 * 1048576)
val_3 = (val_next_1 // 16777216) & 0xFF
decoded.append(val_3)
val_4 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_next_2 = val_next_1 | (val_4 * 32768)
val_4 = (val_next_2 // 65536) & 0xFF
decoded.append(val_4)
val_5 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_6 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_next_2 = val_next_2 | (val_5 * 1024)
val_next_3 = val_next_2 | (val_6 * 32)
val_6 = (val_next_3 // 256) & 0xFF
decoded.append(val_6)
val_7 = load_and_decode_value(text, val_indexchar_index, DECODE_TABLE)
val_indexchar_index += 1
val_8 = (val_next_3 | val_7) & 0xFF
decoded.append(val_8)
return decoded