Files
ctf/2026/cscg/rev/intro2/decode_password.py
2026-04-10 03:31:12 +02:00

20 lines
465 B
Python

import ida_bytes
def calc_flag(start_ea, length):
raw_data = ida_bytes.get_bytes(start_ea, length)
if not raw_data:
return None
data = bytearray(raw_data)
for i in range(len(data)):
data[i] = (data[i] + 119) & 0xFF
return data
result = calc_flag(0x2020, 25)
if result:
print(f"Result (hex): {result.hex()}")
print(f"Result (string): {''.join(chr(b) for b in result if 32 <= b <= 126)}")