symbolrenamer.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:PjOrion-Deobfuscator 作者: extremecoders-re 项目源码 文件源码
def rename(code_obj):
    mod_const = []
    for const in code_obj.co_consts:
        if isinstance(const, types.CodeType):
            mod_const.append(rename(const))
        else:
            mod_const.append(const)

    co_argcount = code_obj.co_argcount
    co_nlocals = code_obj.co_nlocals
    co_stacksize = code_obj.co_stacksize
    co_flags = code_obj.co_flags
    co_codestring = code_obj.co_code
    co_constants = tuple(mod_const)
    co_names = code_obj.co_names
    co_varnames = tuple('var{}'.format(i) for i in range(len(code_obj.co_varnames)))
    co_filename = code_obj.co_filename
    co_name = 'co' + str(random.randint(100,999))
    co_firstlineno = code_obj.co_firstlineno
    co_lnotab = code_obj.co_lnotab

    return types.CodeType(co_argcount, co_nlocals, co_stacksize, \
                          co_flags, co_codestring, co_constants, co_names, \
                          co_varnames, co_filename, co_name, co_firstlineno, co_lnotab)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号