import hashlib
import os
import matplotlib.pyplot as plt

FLAG = "FLAG WAS HERE XD"

def enc(data, key):
    out = bytearray(data)
    for i in range(len(data)):
        out[i] ^= key[i % len(key)]
        if i % 3 == 0:
            out[i] ^= (key[(i * 7) % len(key)] >> 2)
    return bytes(out)

def visualize_key(key):
    plt.figure(figsize=(16, 18))
    plt.plot(list(key), label="Key visualization")
    plt.title("Encryption Key (You might need to decode visually!)")
    plt.legend()
    plt.savefig("key_visual.png")

def main():
    key = os.urandom(16)
    print(key.hex())
    visualize_key(key)

    encrypted = enc(FLAG.encode(), key)
    with open("output.txt", "wb") as f:
        f.write(encrypted)

if __name__ == "__main__":
    main()

