# LICENSE

ta thấy rằng để có flag thì phải qua được 2 hàm `sub_1209` và `sub_1345` , src phải có 17 ký tự

Tại `sub_1209`

hàm `sub_1209` dùng để kiểm tra 8 ký tự đầu
## Script1:
```python=
def inputt(target):
decimal_values = []
for i in range(8):
v1 = i % 3
transformed_char = ord(target[i]) ^ 0x33
if v1 == 2:
input_char = transformed_char + 37
elif v1 == 1:
input_char = transformed_char - 16
else: # v1 == 0
input_char = transformed_char ^ 0x5A
decimal_values.append(input_char)
return decimal_values
target = "Xsl3BDxP"
decimal_values = inputt(target)
print(decimal_values)
```

Tại `sub_1345`

## Script2:
```python=
s = ""
n = "mzXaPLzR"
for i in range(8):
a = ""
for j in range(32, 127):
if chr(j).islower():
a = chr((j - 92) % 26 + 97)
elif chr(j).isupper():
a = chr((j - 48) % 26 + 65)
if a == n[i]:
s += chr(j)
break
print(s)
```

ký tự giữa sẽ là '-'

vì 8 ký tự đầu khi nhập tay sẽ bị lỗi format nên phải dùng pwntools
## Script:
```python=
from pwn import *
p = remote("challs.tfcctf.com", 30257)
part1 = [49, 48, 132, 90, 97, 156, 17, 83]
s1 = b''.join(bytes([x]) for x in part1)
s2 = b"huGvYUuA"
mid = b'-'
print(len(s1+mid+s2))
p.sendline(s1 + mid + s2)
p.interactive()
```

flag: `TFCCTF{ac1da9096a8ad2fcb839565621bf09e892a470a6a7a0498b6259e09525096b9d}`