def xor_with_key(cmp, key):
key_bytes = key.encode('utf-8')
result = []
for i in range(len(cmp)):
key_byte = key_bytes[i % len(key_bytes)]
cmp_byte = cmp[i]
xor_result = key_byte ^ cmp_byte
result.append(chr(xor_result))
return ''.join(result)
cmp = [
0x76, 0x11, 0x02, 0x50, 0x09, 0x7d, 0x06, 0x16, 0x71, 0x42,
0x00, 0x51, 0x5e, 0x29, 0x57, 0x14, 0x7a, 0x41, 0x58, 0x05,
0x5e, 0x29, 0x07, 0x13, 0x76, 0x16, 0x03, 0x02, 0x5a, 0x29,
0x57, 0x47, 0x75, 0x44, 0x04, 0x07, 0x5f, 0x74, 0x04, 0x43
]
key = "CrackMe!CrackMe!"
result_string = xor_with_key(cmp, key)
print(f"XOR result as string: {result_string}")