psarc.py 文件源码

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

项目:rocksmith 作者: 0x0L 项目源码 文件源码
def create_entry(name, data):
    zlength = []
    output = BytesIO()

    for i in range(0, len(data), BLOCK_SIZE):
        raw = data[i: i + BLOCK_SIZE]
        compressed = zlib.compress(raw, zlib.Z_BEST_COMPRESSION)
        if len(compressed) < len(raw):
            output.write(compressed)
            zlength.append(len(compressed))
        else:
            output.write(raw)
            zlength.append(len(raw) % BLOCK_SIZE)

    return {
        'md5': md5(name.encode()).digest() if name != '' else bytes(16),
        'zlength': zlength,
        'length': len(data),
        'data': output.getvalue()
    }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号