python-decompile3 icon indicating copy to clipboard operation
python-decompile3 copied to clipboard

decompyle failure

Open pfremy opened this issue 2 years ago • 1 comments

Description

Decompyle3 failed at decompiling some code, where uncompyle6 was successful.

That's too bad because the generated code is of higher quality.

How to Reproduce

See attached sources: logh_utils.zip

I included the pyc file, the uncompyle3 output, the decompyle6 output.

(.env) C:\work\logh_home\log_enhancer.exe_extracted>python ..\python-decompile3\decompyle3\bin\decompile.py C:\work\logh_home\log_enhancer.exe_extracted\src\logh_utils.pyc  1>C:\work\logh_home\log_enhancer.exe_extracted\src\logh_utils.py

# file C:\work\logh_home\log_enhancer.exe_extracted\src\logh_utils.pyc
# Deparsing stopped due to parse error

Output Given

def sub_interp_node_to_string--- This code section failed: ---

L. 82 0 BUILD_LIST_0 0 2 STORE_FAST 'ret'

L. 83 4 LOAD_STR '%s %s' 6 LOAD_FAST 'prefix' ...

(see attached decompiled py)

Environment

(.env) C:\work\logh_home>pip list
Package      Version    Location
------------ ---------- -----------------------------------
click        8.1.7
colorama     0.4.6
decompyle3   3.9.1.dev0 c:\work\logh_home\python-decompile3
pip          21.2.4
setuptools   58.1.0
six          1.16.0
spark-parser 1.8.9
uncompyle6   3.9.0
xdis         6.1.0.dev0

(.env) C:\work\logh_home>python --version
Python 3.10.2

Platform : Windows 10 22H2

Workarounds

Use uncompyle6

Priority

Up to you

pfremy avatar Nov 16 '23 10:11 pfremy

@mosadegh22 Please don't attach random bug reports onto someone else's ticket.

mosadegh22 avatar Mar 28 '24 07:03 mosadegh22