47 lines
1.2 KiB
Python
47 lines
1.2 KiB
Python
#!/usr/bin/env python3
|
|
|
|
import pathlib
|
|
|
|
mapping = {}
|
|
|
|
for file in pathlib.Path("src").iterdir():
|
|
if "Main" in file.name:
|
|
continue
|
|
name = file.name.replace(".java", "")
|
|
with file.open("r") as f:
|
|
data = f.read()
|
|
thisfile = {}
|
|
mname = None
|
|
for line in data.split("\n"):
|
|
if mname is None:
|
|
if "public String" in line:
|
|
mname = line.strip().split(" ")[2].replace("()", "")
|
|
else:
|
|
val = line.strip().split(" ")[1].replace('"', "").replace(";", "")
|
|
thisfile[mname] = val
|
|
mname = None
|
|
mapping[name] = thisfile
|
|
|
|
import pprint
|
|
pprint.pprint(mapping)
|
|
|
|
start = "javautil"
|
|
|
|
def rfind(what):
|
|
for file,data in mapping.items():
|
|
for k,v in data.items():
|
|
if v == what and k in data.values():
|
|
for k2, v2 in data.items():
|
|
if v2 == k and k2 in data.values():
|
|
for k3, v3 in data.items():
|
|
if v3 == k2:
|
|
return file + k3
|
|
|
|
data = rfind("ja") + rfind("va") + rfind("ut") + rfind("il")
|
|
|
|
data = bytearray(data.encode())
|
|
for i in range(len(data)):
|
|
data[i] ^= 2
|
|
|
|
print(data)
|