import time
import random
import datetime
import ctypes

libc = ctypes.CDLL('libc.so.6')

# Known timestamp: 2024-08-30 14:40:42 UTC
dt = datetime.datetime.strptime("2024-08-30 14:40:42", "%Y-%m-%d %H:%M:%S").replace(tzinfo=datetime.timezone.utc)
base_time = int(dt.timestamp())

charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"

candidates = []

for ms in range(1000):
    seed = base_time * 1000 + ms
    libc.srand(seed)
    password = ''.join([charset[libc.rand() % 62] for _ in range(20)])
    candidates.append((seed, password))

# Print all candidate passwords
# for seed, pwd in candidates:
#     print(f"{seed}: {pwd}")

# put all candidate passwords in a file
with open('passwords.txt', 'w') as f:
    for seed, pwd in candidates:
        f.write(pwd + '\n')