pycdc
pycdc copied to clipboard
Unsupported opcode: JUMP_IF_NOT_EXC_MATCH
Unsupported opcode: JUMP_IF_NOT_EXC_MATCH
any fix/update?
Same issue with me
I also had a similar error last night, when I tried to decompile the pyc file compiled with python 3.10, the message "Unsupported opcode: BLA_BLA_BLA" appears.
I think this is an error because the pyc file that will be decoded is a bytecode file compiled with python 3.9 and above, and the opcodes that are not supported by pycdc are opcodes that just appeared in python version 3.9 and above.
so I tried reading the ASTree.cpp file and studying it, then I realized that the opcode that was printed as an error was not in the "case block" of the ASTree.cpp file.
I tried to change it a little by adding the opcodes printed in the error message into the case block (on line 1166)
case Pyc::JUMP_IF_NOT_EXC_MATCH_A:
case Pyc::RERAISE_A:
then rebuild it. I don't know what happened but it solved my problem when trying to decompile python 3.9 and above bytecode. everything is done!
i have the same error , how can i solve it ?
I am trying to analyze malware, and I received this error when putting the above file into pycdc.
Same issue with me
Same issue... how can i resolved it?
same
Temporary fix:
I tried to comment out the line return new ASTNodeList(defblock->nodes());
in ASTree.cpp (this is the line that stops when it reaches an unknown opcode, in the default:
)
The output is not completely correct, I had places where the try-catch was not in place, but all the decompiled code is readable, and after minor corrections it worked perfectly.
Duplicate #450