import gmpy2
import libnum

from KEY impory key
n=0xba94dc08d76e6f761431a7d34997a6dec45409b61ed1faea119f1121642a62df
magic_message =  "welcometoYLCTF"

def encode(message,key):
    new_message = magic_message+message
    message = new_message.encode("utf-8")
    length = len(message)
    blocks = [message[i * 16:(i + 1) * 16] for i in range((length + 15) // 16)]
    blocks[-1] = blocks[-1].ljust(16, b'\x00')
    c= []
    for i in blocks:
        num = int.from_bytes(i, byteorder='big')
        c_blocak = (num*key*2024)%n
        c.append(c_blocak)
        key -= 0x114514
    encode = b''.join(
        int(c_blocak).to_bytes(32, byteorder='big') for c_blocak in c
    )
    return encode

fp = open("/flag","r")
flag = fp.read()
fp.close()
c = encode(flag,key)
print(c.hex())
