dashingsoft / pyarmor

A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.

Home Page:http://pyarmor.dashingsoft.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[BUG] `Too many function arguments, the program crashes`

17Reset opened this issue · comments

When there are too many function arguments, the program crashes with no output error after encryption with pyarmor.
I have a PyQt6 program, I put the menu production in a function, part of the content is shown below, after testing, when the function parameters passed too much, using pyarmor after confusing the code can not be used normally, I use the command is:

pyarmor cfg data_files=*
pyarmor gen --recursive --enable-bcc --obf-code 2 --output xapp_dist_pyarmor xapp_workspace

In the following example, if my argument is passed into the callback13 position, the muddled code still runs, but when one more argument is passed, it starts to crash without any error output

def rtl_source(
        menu,
        item_type,
        top_module,
        check_status,
        callback1,
        callback2,
        callback3,
        callback4,
        callback5,
        callback6,
        callback7,
        callback8,
        callback9,
        callback10,
        callback11,
        callback12,
        callback13,
        # callback14,
        # callback15,
        # callback16,
        # callback17,
        # callback18,
        # callback19,
        # callback20,
):
 pass

When the --enable-bcc option is not used, the pyarmor obfuscated program works fine

commented

Reproduced, I'll check it and fix it when I'm back office next Monday.