A free and open source Hyperion deobfuscator.
python -m erebus <input> [output]
If no output is specified, the deobfuscated code will be printed to stdout.
from erebus import deobfuscate
with open("obfuscated.py", "r") as f:
obfuscated = f.read()
print(deobfuscate(obfuscated))
It might make sense to now run the code through a formatter and/or linter.
In my testing, I have noticed that Hyperion sometimes produces code that is not valid Python. erebus will not fix this and likely produce invalid Python code as well.
erebus produces highly readable code when Hyperion was run with the default settings.
If Hyperion was run in Ultra Safe Mode, erebus will produce code that is extremely similar to the original code as variables have not been renamed.
erebus currently does support the Camouflate option of Hyperion.
erebus is licensed under the Unilicense. See LICENSE for more information.