Sharing Python programs is a pain, and one solution to this problem is to package up all of the python code, the interpreter and the dependencies into an executable for distribution. PyInstaller
is a popular program to perform this task.
But what if someone hands you a compiled binary and you want to read the source code? Although, PyInstaller has a well described format
and a tool
, that enable you to start decompiling the programs, it is much better to use another tool that was written specifically for decompilation, namely pyinstxtractor.py
. With this tool in hand it’s a simple:
python pyinstxtractor.py file_to_decompile
And voila! You can read the previously obfuscated source (and find what they were ashamed of).