binary-refinery 0.7.0__tar.gz → 0.7.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {binary_refinery-0.7.0/binary_refinery.egg-info → binary_refinery-0.7.2}/PKG-INFO +76 -76
- {binary_refinery-0.7.0 → binary_refinery-0.7.2/binary_refinery.egg-info}/PKG-INFO +76 -76
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/binary_refinery.egg-info/SOURCES.txt +2 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/binary_refinery.egg-info/entry_points.txt +7 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/__init__.pkl +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/__init__.py +1 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/argformats.py +34 -9
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/argparser.py +4 -4
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/frame.py +4 -4
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/meta.py +12 -3
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/types.py +1 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/__init__.py +85 -58
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/b64.py +26 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/a3x.py +21 -5
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtpyi.py +55 -31
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/vstack.py +14 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/ifps.py +5 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/msi.py +58 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnfields.py +4 -3
- binary_refinery-0.7.2/refinery/units/malware/kramer.py +111 -0
- binary_refinery-0.7.2/refinery/units/meta/__init__.py +48 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/cm.py +1 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/iff.py +2 -4
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/iffp.py +2 -3
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/iffs.py +2 -4
- binary_refinery-0.7.2/refinery/units/meta/iffx.py +13 -0
- binary_refinery-0.7.2/refinery/units/meta/loop.py +78 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/pick.py +21 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/queue.py +3 -2
- binary_refinery-0.7.2/refinery/units/meta/reduce.py +45 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/__init__.py +49 -12
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve.py +30 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/resplit.py +2 -2
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/resub.py +2 -2
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/rex.py +2 -2
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/struct_parser.py +3 -1
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/xtp.py +2 -1
- binary_refinery-0.7.0/refinery/units/meta/__init__.py +0 -57
- binary_refinery-0.7.0/refinery/units/meta/cull.py +0 -19
- binary_refinery-0.7.0/refinery/units/meta/iffx.py +0 -31
- binary_refinery-0.7.0/refinery/units/meta/reduce.py +0 -50
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/LICENSE +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/MANIFEST.in +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/README.md +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/binary_refinery.egg-info/dependency_links.txt +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/binary_refinery.egg-info/requires.txt +75 -75
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/binary_refinery.egg-info/top_level.txt +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/pyproject.toml +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/data/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/data/rich.json +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/explore.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/chunks.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/crypto.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/decompression.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/decorators.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/deobfuscation.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/dex.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/dotnet/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/dotnet/deserialize.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/dotnet/header.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/dotnet/resources.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/dotnet/types.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/environment.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/executable.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/inline.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/java.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/json.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/loader.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/magic.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/mime.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/mscrypto.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/murmur.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/patterns/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/patterns/tlds.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/powershell.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/ripemd128.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/serpent.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/structures.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/suffixtree.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/thirdparty/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/thirdparty/acefile.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/thirdparty/batch_interpreter.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/thirdparty/pcode2code.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/thirdparty/pyflate.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/thirdparty/xxhash.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/tools.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/vfs.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/winclip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/lib/xml.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/shell.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/add.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/alu.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/bitrev.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/bitsnip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/byteswap.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/map.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/neg.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/pack.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/rev.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/rotl.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/rotr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/shl.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/shr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/sub.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/terminate.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/blockwise/xor.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/ap.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/blz.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/bz2.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/decompress.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/jcalg.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lz.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lz4.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lzf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lzg.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lzip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lzjb.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lznt1.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lzo.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/lzw.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/mscf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/nrv.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/qlz.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/szdd.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/zl.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/compression/zstd.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/aes.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/blabla.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/blowfish.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/camellia.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/cast.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/chacha.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/chaskey.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/des.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/des3.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/fernet.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/gost.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/hc128.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/hc256.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/isaac.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rabbit.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rc2.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rc4.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rc4mod.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rc5.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rc6.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rijndael.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rncrypt.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rot.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rsa.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/rsakey.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/salsa.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/seal.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/secstr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/serpent.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/sm4.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/sosemanuk.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/tea.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/vigenere.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/xtea.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/cipher/xxtea.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/checksums.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/cryptographic.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/imphash.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/murmur.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/password_hashes.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/hash/xxhash.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/deskd.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/hkdf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/hmac.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/kblob.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/mscdk.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/mspdb.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/pbkdf1.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/pbkdf2.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/crypto/keyderive/unixcrypt.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/atbash.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/b32.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/b58.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/b85.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/b92.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/base.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/cp1252.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/esc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/hex.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/htmlesc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/netbios.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/ps1str.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/recode.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/u16.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/url.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/uuenc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/encoding/wshenc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xt.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xt7z.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtace.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtasar.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtcab.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtcpio.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtgz.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtiso.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtiss.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtmacho.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtmagtape.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtnode.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtnsis.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtnuitka.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xttar.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtzip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/archive/xtzpaq.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/bat.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/csv.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/deserialize_php.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/dexstr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/email.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/evtx.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/opc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/vaddr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/vmemref.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/vsect.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/exe/vsnip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/hexload.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/html.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/httpresponse.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/ifpsstr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/java/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/java/deserialize.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/java/jvdasm.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/java/jvstr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/json.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/lnk.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/macho/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/macho/machometa.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/msgpack.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/doctxt.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/officecrypt.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/vbapc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/vbastr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/xlmdeobf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/xlxtr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/xtdoc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/xtone.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/xtrtf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/office/xtvba.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pcap.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pcap_http.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pdf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnblob.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dncfx.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnds.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnhdr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnmr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnrc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnsfx.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/dotnet/dnstr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/pedebloat.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/pemeta.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/peoverlay.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/perc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/pesig.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pe/pestrip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pkcs7.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pkcs7sig.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/pyc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/stego.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/tnetmtm.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/winreg.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/formats/xml.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/malware/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/malware/n40.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/chop.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/dedup.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/eat.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/ef.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/emit.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/group.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/groupby.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/max.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/min.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/mvg.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/pad.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/pop.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/push.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/put.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/rmv.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/scope.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/sep.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/sorted.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/swap.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/transpose.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/urn.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/meta/xfcc.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/autoxor.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/couple.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/datefix.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/drp.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/nop.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/urlfix.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/misc/xkey.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/js/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/js/arrays.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/js/getattr.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/js/tuples.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/all.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/b64convert.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/brackets.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/cases.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/concat.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/encodings.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/escape.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/format.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/invoke.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/securestring.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/stringreplace.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/typecast.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/ps1/uncurly.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/all.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/arithmetic.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/brackets.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/char.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/comments.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/concat.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/constants.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/dummies.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/stringreplace.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/stringreverse.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/obfuscation/vba/vba.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_7z.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_json.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_lnk.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_pe.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_rtf.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_xml.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/carve_zip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/defang.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/dnsdomain.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/mimewords.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/subfiles.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/urlguards.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/pattern/xtw.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/asm.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/dump.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/iemap.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/peek.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/ppjscript.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/ppjson.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/sinks/ppxml.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/__init__.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/bruteforce.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/cca.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/ccp.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/cfmt.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/clower.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/cswap.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/cupper.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/ngrams.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/rep.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/repl.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/snip.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/stretch.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/termfit.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/refinery/units/strings/trim.py +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/setup.cfg +0 -0
- {binary_refinery-0.7.0 → binary_refinery-0.7.2}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: binary-refinery
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.2
|
|
4
4
|
Summary: A toolkit to transform and refine (mostly) binary data.
|
|
5
5
|
Home-page: https://github.com/binref/refinery/
|
|
6
6
|
Author: Jesko Huettenhain
|
|
@@ -27,126 +27,126 @@ Requires-Dist: setuptools
|
|
|
27
27
|
Requires-Dist: toml
|
|
28
28
|
Requires-Dist: wheel
|
|
29
29
|
Requires-Dist: python-magic
|
|
30
|
-
Requires-Dist: pyperclip
|
|
31
30
|
Requires-Dist: capstone
|
|
31
|
+
Requires-Dist: pyperclip
|
|
32
32
|
Provides-Extra: all
|
|
33
|
-
Requires-Dist: asn1crypto; extra == "all"
|
|
34
|
-
Requires-Dist: pycdlib; extra == "all"
|
|
35
|
-
Requires-Dist: oletools; extra == "all"
|
|
36
|
-
Requires-Dist: pyzstd; extra == "all"
|
|
37
|
-
Requires-Dist: uncompyle6; extra == "all"
|
|
38
|
-
Requires-Dist: openpyxl; extra == "all"
|
|
39
|
-
Requires-Dist: py7zr; extra == "all"
|
|
40
|
-
Requires-Dist: chardet; extra == "all"
|
|
41
|
-
Requires-Dist: xdis; extra == "all"
|
|
42
|
-
Requires-Dist: msoffcrypto-tool; extra == "all"
|
|
43
|
-
Requires-Dist: pyonenote; extra == "all"
|
|
44
|
-
Requires-Dist: colorama; extra == "all"
|
|
45
|
-
Requires-Dist: angr; extra == "all"
|
|
46
|
-
Requires-Dist: pyxlsb2; extra == "all"
|
|
47
|
-
Requires-Dist: capstone; extra == "all"
|
|
48
|
-
Requires-Dist: jsbeautifier; extra == "all"
|
|
49
|
-
Requires-Dist: phpserialize; extra == "all"
|
|
50
|
-
Requires-Dist: unicorn; extra == "all"
|
|
51
33
|
Requires-Dist: k2l>=2.0; extra == "all"
|
|
52
|
-
Requires-Dist:
|
|
34
|
+
Requires-Dist: unicorn; extra == "all"
|
|
35
|
+
Requires-Dist: cabarchive; extra == "all"
|
|
36
|
+
Requires-Dist: Pillow; extra == "all"
|
|
37
|
+
Requires-Dist: decompyle3; extra == "all"
|
|
53
38
|
Requires-Dist: python-evtx; extra == "all"
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
Requires-Dist: LnkParse3>=1.4.0; extra == "all"
|
|
56
|
-
Requires-Dist: pypdf>=3.1.0; extra == "all"
|
|
57
|
-
Requires-Dist: olefile; extra == "all"
|
|
39
|
+
Requires-Dist: oletools; extra == "all"
|
|
58
40
|
Requires-Dist: xlrd2; extra == "all"
|
|
59
|
-
Requires-Dist:
|
|
41
|
+
Requires-Dist: colorama; extra == "all"
|
|
42
|
+
Requires-Dist: chardet; extra == "all"
|
|
43
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "all"
|
|
44
|
+
Requires-Dist: pypcapkit[scapy]>=1.3; extra == "all"
|
|
60
45
|
Requires-Dist: pyzipper; extra == "all"
|
|
46
|
+
Requires-Dist: openpyxl; extra == "all"
|
|
47
|
+
Requires-Dist: javaobj-py3>=0.4.0.1; extra == "all"
|
|
48
|
+
Requires-Dist: asn1crypto; extra == "all"
|
|
49
|
+
Requires-Dist: intervaltree; extra == "all"
|
|
61
50
|
Requires-Dist: XLMMacroDeobfuscator; extra == "all"
|
|
62
|
-
Requires-Dist:
|
|
63
|
-
Requires-Dist:
|
|
64
|
-
Requires-Dist: decompyle3; extra == "all"
|
|
51
|
+
Requires-Dist: LnkParse3>=1.4.0; extra == "all"
|
|
52
|
+
Requires-Dist: pyxlsb2; extra == "all"
|
|
65
53
|
Requires-Dist: mitmproxy; extra == "all"
|
|
66
|
-
Requires-Dist:
|
|
67
|
-
Requires-Dist:
|
|
54
|
+
Requires-Dist: py7zr; extra == "all"
|
|
55
|
+
Requires-Dist: angr; extra == "all"
|
|
56
|
+
Requires-Dist: pyzstd; extra == "all"
|
|
57
|
+
Requires-Dist: uncompyle6; extra == "all"
|
|
68
58
|
Requires-Dist: python-registry; extra == "all"
|
|
59
|
+
Requires-Dist: olefile; extra == "all"
|
|
60
|
+
Requires-Dist: phpserialize; extra == "all"
|
|
61
|
+
Requires-Dist: msoffcrypto-tool; extra == "all"
|
|
62
|
+
Requires-Dist: numpy; extra == "all"
|
|
63
|
+
Requires-Dist: pyonenote; extra == "all"
|
|
64
|
+
Requires-Dist: pycdlib; extra == "all"
|
|
65
|
+
Requires-Dist: capstone; extra == "all"
|
|
66
|
+
Requires-Dist: xdis; extra == "all"
|
|
67
|
+
Requires-Dist: pypdf>=3.1.0; extra == "all"
|
|
68
|
+
Requires-Dist: jsbeautifier; extra == "all"
|
|
69
69
|
Provides-Extra: speed
|
|
70
70
|
Requires-Dist: numpy; extra == "speed"
|
|
71
71
|
Provides-Extra: default
|
|
72
|
-
Requires-Dist: asn1crypto; extra == "default"
|
|
73
|
-
Requires-Dist: pycdlib; extra == "default"
|
|
74
72
|
Requires-Dist: unicorn; extra == "default"
|
|
75
|
-
Requires-Dist:
|
|
73
|
+
Requires-Dist: cabarchive; extra == "default"
|
|
76
74
|
Requires-Dist: LnkParse3>=1.4.0; extra == "default"
|
|
77
|
-
Requires-Dist: pypdf>=3.1.0; extra == "default"
|
|
78
75
|
Requires-Dist: py7zr; extra == "default"
|
|
79
|
-
Requires-Dist:
|
|
80
|
-
Requires-Dist: chardet; extra == "default"
|
|
76
|
+
Requires-Dist: asn1crypto; extra == "default"
|
|
81
77
|
Requires-Dist: colorama; extra == "default"
|
|
82
|
-
Requires-Dist:
|
|
83
|
-
Requires-Dist: extract-msg<=0.41.0; extra == "default"
|
|
78
|
+
Requires-Dist: chardet; extra == "default"
|
|
84
79
|
Requires-Dist: numpy; extra == "default"
|
|
80
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "default"
|
|
81
|
+
Requires-Dist: pycdlib; extra == "default"
|
|
85
82
|
Requires-Dist: capstone; extra == "default"
|
|
83
|
+
Requires-Dist: pypdf>=3.1.0; extra == "default"
|
|
84
|
+
Requires-Dist: pyzipper; extra == "default"
|
|
85
|
+
Requires-Dist: intervaltree; extra == "default"
|
|
86
86
|
Provides-Extra: extended
|
|
87
|
-
Requires-Dist:
|
|
88
|
-
Requires-Dist:
|
|
87
|
+
Requires-Dist: unicorn; extra == "extended"
|
|
88
|
+
Requires-Dist: cabarchive; extra == "extended"
|
|
89
89
|
Requires-Dist: oletools; extra == "extended"
|
|
90
|
-
Requires-Dist:
|
|
91
|
-
Requires-Dist: openpyxl; extra == "extended"
|
|
92
|
-
Requires-Dist: py7zr; extra == "extended"
|
|
93
|
-
Requires-Dist: chardet; extra == "extended"
|
|
94
|
-
Requires-Dist: xdis; extra == "extended"
|
|
95
|
-
Requires-Dist: pyonenote; extra == "extended"
|
|
90
|
+
Requires-Dist: xlrd2; extra == "extended"
|
|
96
91
|
Requires-Dist: colorama; extra == "extended"
|
|
97
|
-
Requires-Dist:
|
|
98
|
-
Requires-Dist:
|
|
99
|
-
Requires-Dist:
|
|
100
|
-
Requires-Dist:
|
|
92
|
+
Requires-Dist: chardet; extra == "extended"
|
|
93
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "extended"
|
|
94
|
+
Requires-Dist: openpyxl; extra == "extended"
|
|
95
|
+
Requires-Dist: pyzipper; extra == "extended"
|
|
96
|
+
Requires-Dist: asn1crypto; extra == "extended"
|
|
101
97
|
Requires-Dist: intervaltree; extra == "extended"
|
|
98
|
+
Requires-Dist: pyxlsb2; extra == "extended"
|
|
102
99
|
Requires-Dist: LnkParse3>=1.4.0; extra == "extended"
|
|
103
|
-
Requires-Dist:
|
|
100
|
+
Requires-Dist: py7zr; extra == "extended"
|
|
101
|
+
Requires-Dist: uncompyle6; extra == "extended"
|
|
104
102
|
Requires-Dist: olefile; extra == "extended"
|
|
105
|
-
Requires-Dist:
|
|
106
|
-
Requires-Dist:
|
|
107
|
-
Requires-Dist: cabarchive; extra == "extended"
|
|
108
|
-
Requires-Dist: extract-msg<=0.41.0; extra == "extended"
|
|
103
|
+
Requires-Dist: pyonenote; extra == "extended"
|
|
104
|
+
Requires-Dist: pypdf>=3.1.0; extra == "extended"
|
|
109
105
|
Requires-Dist: numpy; extra == "extended"
|
|
106
|
+
Requires-Dist: pycdlib; extra == "extended"
|
|
107
|
+
Requires-Dist: capstone; extra == "extended"
|
|
108
|
+
Requires-Dist: xdis; extra == "extended"
|
|
109
|
+
Requires-Dist: jsbeautifier; extra == "extended"
|
|
110
110
|
Provides-Extra: arc
|
|
111
|
+
Requires-Dist: cabarchive; extra == "arc"
|
|
112
|
+
Requires-Dist: py7zr; extra == "arc"
|
|
111
113
|
Requires-Dist: pyzstd; extra == "arc"
|
|
112
114
|
Requires-Dist: uncompyle6; extra == "arc"
|
|
113
|
-
Requires-Dist: py7zr; extra == "arc"
|
|
114
|
-
Requires-Dist: pyzipper; extra == "arc"
|
|
115
|
-
Requires-Dist: xdis; extra == "arc"
|
|
116
|
-
Requires-Dist: cabarchive; extra == "arc"
|
|
117
115
|
Requires-Dist: decompyle3; extra == "arc"
|
|
118
116
|
Requires-Dist: pycdlib; extra == "arc"
|
|
117
|
+
Requires-Dist: xdis; extra == "arc"
|
|
118
|
+
Requires-Dist: pyzipper; extra == "arc"
|
|
119
119
|
Provides-Extra: python
|
|
120
120
|
Requires-Dist: uncompyle6; extra == "python"
|
|
121
121
|
Requires-Dist: xdis; extra == "python"
|
|
122
122
|
Requires-Dist: decompyle3; extra == "python"
|
|
123
123
|
Provides-Extra: formats
|
|
124
|
-
Requires-Dist:
|
|
125
|
-
Requires-Dist: oletools; extra == "formats"
|
|
124
|
+
Requires-Dist: XLMMacroDeobfuscator; extra == "formats"
|
|
126
125
|
Requires-Dist: LnkParse3>=1.4.0; extra == "formats"
|
|
126
|
+
Requires-Dist: pyxlsb2; extra == "formats"
|
|
127
|
+
Requires-Dist: Pillow; extra == "formats"
|
|
128
|
+
Requires-Dist: python-registry; extra == "formats"
|
|
129
|
+
Requires-Dist: oletools; extra == "formats"
|
|
127
130
|
Requires-Dist: python-evtx; extra == "formats"
|
|
128
|
-
Requires-Dist:
|
|
129
|
-
Requires-Dist:
|
|
130
|
-
Requires-Dist:
|
|
131
|
+
Requires-Dist: msoffcrypto-tool; extra == "formats"
|
|
132
|
+
Requires-Dist: phpserialize; extra == "formats"
|
|
133
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "formats"
|
|
131
134
|
Requires-Dist: olefile; extra == "formats"
|
|
132
135
|
Requires-Dist: xlrd2; extra == "formats"
|
|
133
|
-
Requires-Dist: Pillow; extra == "formats"
|
|
134
|
-
Requires-Dist: XLMMacroDeobfuscator; extra == "formats"
|
|
135
136
|
Requires-Dist: pyonenote; extra == "formats"
|
|
136
|
-
Requires-Dist:
|
|
137
|
-
Requires-Dist:
|
|
138
|
-
Requires-Dist:
|
|
139
|
-
Requires-Dist: python-registry; extra == "formats"
|
|
137
|
+
Requires-Dist: pypdf>=3.1.0; extra == "formats"
|
|
138
|
+
Requires-Dist: openpyxl; extra == "formats"
|
|
139
|
+
Requires-Dist: javaobj-py3>=0.4.0.1; extra == "formats"
|
|
140
140
|
Provides-Extra: office
|
|
141
|
+
Requires-Dist: XLMMacroDeobfuscator; extra == "office"
|
|
142
|
+
Requires-Dist: pyxlsb2; extra == "office"
|
|
143
|
+
Requires-Dist: xlrd2; extra == "office"
|
|
141
144
|
Requires-Dist: oletools; extra == "office"
|
|
142
|
-
Requires-Dist: openpyxl; extra == "office"
|
|
143
145
|
Requires-Dist: olefile; extra == "office"
|
|
144
|
-
Requires-Dist: xlrd2; extra == "office"
|
|
145
|
-
Requires-Dist: XLMMacroDeobfuscator; extra == "office"
|
|
146
|
-
Requires-Dist: pyonenote; extra == "office"
|
|
147
146
|
Requires-Dist: msoffcrypto-tool; extra == "office"
|
|
148
147
|
Requires-Dist: extract-msg<=0.41.0; extra == "office"
|
|
149
|
-
Requires-Dist:
|
|
148
|
+
Requires-Dist: pyonenote; extra == "office"
|
|
149
|
+
Requires-Dist: openpyxl; extra == "office"
|
|
150
150
|
Provides-Extra: display
|
|
151
151
|
Requires-Dist: colorama; extra == "display"
|
|
152
152
|
Requires-Dist: jsbeautifier; extra == "display"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: binary-refinery
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.2
|
|
4
4
|
Summary: A toolkit to transform and refine (mostly) binary data.
|
|
5
5
|
Home-page: https://github.com/binref/refinery/
|
|
6
6
|
Author: Jesko Huettenhain
|
|
@@ -27,126 +27,126 @@ Requires-Dist: setuptools
|
|
|
27
27
|
Requires-Dist: toml
|
|
28
28
|
Requires-Dist: wheel
|
|
29
29
|
Requires-Dist: python-magic
|
|
30
|
-
Requires-Dist: pyperclip
|
|
31
30
|
Requires-Dist: capstone
|
|
31
|
+
Requires-Dist: pyperclip
|
|
32
32
|
Provides-Extra: all
|
|
33
|
-
Requires-Dist: asn1crypto; extra == "all"
|
|
34
|
-
Requires-Dist: pycdlib; extra == "all"
|
|
35
|
-
Requires-Dist: oletools; extra == "all"
|
|
36
|
-
Requires-Dist: pyzstd; extra == "all"
|
|
37
|
-
Requires-Dist: uncompyle6; extra == "all"
|
|
38
|
-
Requires-Dist: openpyxl; extra == "all"
|
|
39
|
-
Requires-Dist: py7zr; extra == "all"
|
|
40
|
-
Requires-Dist: chardet; extra == "all"
|
|
41
|
-
Requires-Dist: xdis; extra == "all"
|
|
42
|
-
Requires-Dist: msoffcrypto-tool; extra == "all"
|
|
43
|
-
Requires-Dist: pyonenote; extra == "all"
|
|
44
|
-
Requires-Dist: colorama; extra == "all"
|
|
45
|
-
Requires-Dist: angr; extra == "all"
|
|
46
|
-
Requires-Dist: pyxlsb2; extra == "all"
|
|
47
|
-
Requires-Dist: capstone; extra == "all"
|
|
48
|
-
Requires-Dist: jsbeautifier; extra == "all"
|
|
49
|
-
Requires-Dist: phpserialize; extra == "all"
|
|
50
|
-
Requires-Dist: unicorn; extra == "all"
|
|
51
33
|
Requires-Dist: k2l>=2.0; extra == "all"
|
|
52
|
-
Requires-Dist:
|
|
34
|
+
Requires-Dist: unicorn; extra == "all"
|
|
35
|
+
Requires-Dist: cabarchive; extra == "all"
|
|
36
|
+
Requires-Dist: Pillow; extra == "all"
|
|
37
|
+
Requires-Dist: decompyle3; extra == "all"
|
|
53
38
|
Requires-Dist: python-evtx; extra == "all"
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
Requires-Dist: LnkParse3>=1.4.0; extra == "all"
|
|
56
|
-
Requires-Dist: pypdf>=3.1.0; extra == "all"
|
|
57
|
-
Requires-Dist: olefile; extra == "all"
|
|
39
|
+
Requires-Dist: oletools; extra == "all"
|
|
58
40
|
Requires-Dist: xlrd2; extra == "all"
|
|
59
|
-
Requires-Dist:
|
|
41
|
+
Requires-Dist: colorama; extra == "all"
|
|
42
|
+
Requires-Dist: chardet; extra == "all"
|
|
43
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "all"
|
|
44
|
+
Requires-Dist: pypcapkit[scapy]>=1.3; extra == "all"
|
|
60
45
|
Requires-Dist: pyzipper; extra == "all"
|
|
46
|
+
Requires-Dist: openpyxl; extra == "all"
|
|
47
|
+
Requires-Dist: javaobj-py3>=0.4.0.1; extra == "all"
|
|
48
|
+
Requires-Dist: asn1crypto; extra == "all"
|
|
49
|
+
Requires-Dist: intervaltree; extra == "all"
|
|
61
50
|
Requires-Dist: XLMMacroDeobfuscator; extra == "all"
|
|
62
|
-
Requires-Dist:
|
|
63
|
-
Requires-Dist:
|
|
64
|
-
Requires-Dist: decompyle3; extra == "all"
|
|
51
|
+
Requires-Dist: LnkParse3>=1.4.0; extra == "all"
|
|
52
|
+
Requires-Dist: pyxlsb2; extra == "all"
|
|
65
53
|
Requires-Dist: mitmproxy; extra == "all"
|
|
66
|
-
Requires-Dist:
|
|
67
|
-
Requires-Dist:
|
|
54
|
+
Requires-Dist: py7zr; extra == "all"
|
|
55
|
+
Requires-Dist: angr; extra == "all"
|
|
56
|
+
Requires-Dist: pyzstd; extra == "all"
|
|
57
|
+
Requires-Dist: uncompyle6; extra == "all"
|
|
68
58
|
Requires-Dist: python-registry; extra == "all"
|
|
59
|
+
Requires-Dist: olefile; extra == "all"
|
|
60
|
+
Requires-Dist: phpserialize; extra == "all"
|
|
61
|
+
Requires-Dist: msoffcrypto-tool; extra == "all"
|
|
62
|
+
Requires-Dist: numpy; extra == "all"
|
|
63
|
+
Requires-Dist: pyonenote; extra == "all"
|
|
64
|
+
Requires-Dist: pycdlib; extra == "all"
|
|
65
|
+
Requires-Dist: capstone; extra == "all"
|
|
66
|
+
Requires-Dist: xdis; extra == "all"
|
|
67
|
+
Requires-Dist: pypdf>=3.1.0; extra == "all"
|
|
68
|
+
Requires-Dist: jsbeautifier; extra == "all"
|
|
69
69
|
Provides-Extra: speed
|
|
70
70
|
Requires-Dist: numpy; extra == "speed"
|
|
71
71
|
Provides-Extra: default
|
|
72
|
-
Requires-Dist: asn1crypto; extra == "default"
|
|
73
|
-
Requires-Dist: pycdlib; extra == "default"
|
|
74
72
|
Requires-Dist: unicorn; extra == "default"
|
|
75
|
-
Requires-Dist:
|
|
73
|
+
Requires-Dist: cabarchive; extra == "default"
|
|
76
74
|
Requires-Dist: LnkParse3>=1.4.0; extra == "default"
|
|
77
|
-
Requires-Dist: pypdf>=3.1.0; extra == "default"
|
|
78
75
|
Requires-Dist: py7zr; extra == "default"
|
|
79
|
-
Requires-Dist:
|
|
80
|
-
Requires-Dist: chardet; extra == "default"
|
|
76
|
+
Requires-Dist: asn1crypto; extra == "default"
|
|
81
77
|
Requires-Dist: colorama; extra == "default"
|
|
82
|
-
Requires-Dist:
|
|
83
|
-
Requires-Dist: extract-msg<=0.41.0; extra == "default"
|
|
78
|
+
Requires-Dist: chardet; extra == "default"
|
|
84
79
|
Requires-Dist: numpy; extra == "default"
|
|
80
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "default"
|
|
81
|
+
Requires-Dist: pycdlib; extra == "default"
|
|
85
82
|
Requires-Dist: capstone; extra == "default"
|
|
83
|
+
Requires-Dist: pypdf>=3.1.0; extra == "default"
|
|
84
|
+
Requires-Dist: pyzipper; extra == "default"
|
|
85
|
+
Requires-Dist: intervaltree; extra == "default"
|
|
86
86
|
Provides-Extra: extended
|
|
87
|
-
Requires-Dist:
|
|
88
|
-
Requires-Dist:
|
|
87
|
+
Requires-Dist: unicorn; extra == "extended"
|
|
88
|
+
Requires-Dist: cabarchive; extra == "extended"
|
|
89
89
|
Requires-Dist: oletools; extra == "extended"
|
|
90
|
-
Requires-Dist:
|
|
91
|
-
Requires-Dist: openpyxl; extra == "extended"
|
|
92
|
-
Requires-Dist: py7zr; extra == "extended"
|
|
93
|
-
Requires-Dist: chardet; extra == "extended"
|
|
94
|
-
Requires-Dist: xdis; extra == "extended"
|
|
95
|
-
Requires-Dist: pyonenote; extra == "extended"
|
|
90
|
+
Requires-Dist: xlrd2; extra == "extended"
|
|
96
91
|
Requires-Dist: colorama; extra == "extended"
|
|
97
|
-
Requires-Dist:
|
|
98
|
-
Requires-Dist:
|
|
99
|
-
Requires-Dist:
|
|
100
|
-
Requires-Dist:
|
|
92
|
+
Requires-Dist: chardet; extra == "extended"
|
|
93
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "extended"
|
|
94
|
+
Requires-Dist: openpyxl; extra == "extended"
|
|
95
|
+
Requires-Dist: pyzipper; extra == "extended"
|
|
96
|
+
Requires-Dist: asn1crypto; extra == "extended"
|
|
101
97
|
Requires-Dist: intervaltree; extra == "extended"
|
|
98
|
+
Requires-Dist: pyxlsb2; extra == "extended"
|
|
102
99
|
Requires-Dist: LnkParse3>=1.4.0; extra == "extended"
|
|
103
|
-
Requires-Dist:
|
|
100
|
+
Requires-Dist: py7zr; extra == "extended"
|
|
101
|
+
Requires-Dist: uncompyle6; extra == "extended"
|
|
104
102
|
Requires-Dist: olefile; extra == "extended"
|
|
105
|
-
Requires-Dist:
|
|
106
|
-
Requires-Dist:
|
|
107
|
-
Requires-Dist: cabarchive; extra == "extended"
|
|
108
|
-
Requires-Dist: extract-msg<=0.41.0; extra == "extended"
|
|
103
|
+
Requires-Dist: pyonenote; extra == "extended"
|
|
104
|
+
Requires-Dist: pypdf>=3.1.0; extra == "extended"
|
|
109
105
|
Requires-Dist: numpy; extra == "extended"
|
|
106
|
+
Requires-Dist: pycdlib; extra == "extended"
|
|
107
|
+
Requires-Dist: capstone; extra == "extended"
|
|
108
|
+
Requires-Dist: xdis; extra == "extended"
|
|
109
|
+
Requires-Dist: jsbeautifier; extra == "extended"
|
|
110
110
|
Provides-Extra: arc
|
|
111
|
+
Requires-Dist: cabarchive; extra == "arc"
|
|
112
|
+
Requires-Dist: py7zr; extra == "arc"
|
|
111
113
|
Requires-Dist: pyzstd; extra == "arc"
|
|
112
114
|
Requires-Dist: uncompyle6; extra == "arc"
|
|
113
|
-
Requires-Dist: py7zr; extra == "arc"
|
|
114
|
-
Requires-Dist: pyzipper; extra == "arc"
|
|
115
|
-
Requires-Dist: xdis; extra == "arc"
|
|
116
|
-
Requires-Dist: cabarchive; extra == "arc"
|
|
117
115
|
Requires-Dist: decompyle3; extra == "arc"
|
|
118
116
|
Requires-Dist: pycdlib; extra == "arc"
|
|
117
|
+
Requires-Dist: xdis; extra == "arc"
|
|
118
|
+
Requires-Dist: pyzipper; extra == "arc"
|
|
119
119
|
Provides-Extra: python
|
|
120
120
|
Requires-Dist: uncompyle6; extra == "python"
|
|
121
121
|
Requires-Dist: xdis; extra == "python"
|
|
122
122
|
Requires-Dist: decompyle3; extra == "python"
|
|
123
123
|
Provides-Extra: formats
|
|
124
|
-
Requires-Dist:
|
|
125
|
-
Requires-Dist: oletools; extra == "formats"
|
|
124
|
+
Requires-Dist: XLMMacroDeobfuscator; extra == "formats"
|
|
126
125
|
Requires-Dist: LnkParse3>=1.4.0; extra == "formats"
|
|
126
|
+
Requires-Dist: pyxlsb2; extra == "formats"
|
|
127
|
+
Requires-Dist: Pillow; extra == "formats"
|
|
128
|
+
Requires-Dist: python-registry; extra == "formats"
|
|
129
|
+
Requires-Dist: oletools; extra == "formats"
|
|
127
130
|
Requires-Dist: python-evtx; extra == "formats"
|
|
128
|
-
Requires-Dist:
|
|
129
|
-
Requires-Dist:
|
|
130
|
-
Requires-Dist:
|
|
131
|
+
Requires-Dist: msoffcrypto-tool; extra == "formats"
|
|
132
|
+
Requires-Dist: phpserialize; extra == "formats"
|
|
133
|
+
Requires-Dist: extract-msg<=0.41.0; extra == "formats"
|
|
131
134
|
Requires-Dist: olefile; extra == "formats"
|
|
132
135
|
Requires-Dist: xlrd2; extra == "formats"
|
|
133
|
-
Requires-Dist: Pillow; extra == "formats"
|
|
134
|
-
Requires-Dist: XLMMacroDeobfuscator; extra == "formats"
|
|
135
136
|
Requires-Dist: pyonenote; extra == "formats"
|
|
136
|
-
Requires-Dist:
|
|
137
|
-
Requires-Dist:
|
|
138
|
-
Requires-Dist:
|
|
139
|
-
Requires-Dist: python-registry; extra == "formats"
|
|
137
|
+
Requires-Dist: pypdf>=3.1.0; extra == "formats"
|
|
138
|
+
Requires-Dist: openpyxl; extra == "formats"
|
|
139
|
+
Requires-Dist: javaobj-py3>=0.4.0.1; extra == "formats"
|
|
140
140
|
Provides-Extra: office
|
|
141
|
+
Requires-Dist: XLMMacroDeobfuscator; extra == "office"
|
|
142
|
+
Requires-Dist: pyxlsb2; extra == "office"
|
|
143
|
+
Requires-Dist: xlrd2; extra == "office"
|
|
141
144
|
Requires-Dist: oletools; extra == "office"
|
|
142
|
-
Requires-Dist: openpyxl; extra == "office"
|
|
143
145
|
Requires-Dist: olefile; extra == "office"
|
|
144
|
-
Requires-Dist: xlrd2; extra == "office"
|
|
145
|
-
Requires-Dist: XLMMacroDeobfuscator; extra == "office"
|
|
146
|
-
Requires-Dist: pyonenote; extra == "office"
|
|
147
146
|
Requires-Dist: msoffcrypto-tool; extra == "office"
|
|
148
147
|
Requires-Dist: extract-msg<=0.41.0; extra == "office"
|
|
149
|
-
Requires-Dist:
|
|
148
|
+
Requires-Dist: pyonenote; extra == "office"
|
|
149
|
+
Requires-Dist: openpyxl; extra == "office"
|
|
150
150
|
Provides-Extra: display
|
|
151
151
|
Requires-Dist: colorama; extra == "display"
|
|
152
152
|
Requires-Dist: jsbeautifier; extra == "display"
|
|
@@ -260,11 +260,11 @@ refinery/units/formats/pe/dotnet/dnrc.py
|
|
|
260
260
|
refinery/units/formats/pe/dotnet/dnsfx.py
|
|
261
261
|
refinery/units/formats/pe/dotnet/dnstr.py
|
|
262
262
|
refinery/units/malware/__init__.py
|
|
263
|
+
refinery/units/malware/kramer.py
|
|
263
264
|
refinery/units/malware/n40.py
|
|
264
265
|
refinery/units/meta/__init__.py
|
|
265
266
|
refinery/units/meta/chop.py
|
|
266
267
|
refinery/units/meta/cm.py
|
|
267
|
-
refinery/units/meta/cull.py
|
|
268
268
|
refinery/units/meta/dedup.py
|
|
269
269
|
refinery/units/meta/eat.py
|
|
270
270
|
refinery/units/meta/ef.py
|
|
@@ -275,6 +275,7 @@ refinery/units/meta/iff.py
|
|
|
275
275
|
refinery/units/meta/iffp.py
|
|
276
276
|
refinery/units/meta/iffs.py
|
|
277
277
|
refinery/units/meta/iffx.py
|
|
278
|
+
refinery/units/meta/loop.py
|
|
278
279
|
refinery/units/meta/max.py
|
|
279
280
|
refinery/units/meta/min.py
|
|
280
281
|
refinery/units/meta/mvg.py
|
|
@@ -51,9 +51,10 @@ cm = refinery.units.meta.cm:cm.run
|
|
|
51
51
|
couple = refinery.units.misc.couple:couple.run
|
|
52
52
|
cp1252 = refinery.units.encoding.cp1252:cp1252.run
|
|
53
53
|
crc32 = refinery.units.crypto.hash.checksums:crc32.run
|
|
54
|
+
csb = refinery.units.pattern.carve:csb.run
|
|
55
|
+
csd = refinery.units.pattern.carve:csd.run
|
|
54
56
|
csv = refinery.units.formats.csv:csv.run
|
|
55
57
|
cswap = refinery.units.strings.cswap:cswap.run
|
|
56
|
-
cull = refinery.units.meta.cull:cull.run
|
|
57
58
|
cupper = refinery.units.strings.cupper:cupper.run
|
|
58
59
|
datefix = refinery.units.misc.datefix:datefix.run
|
|
59
60
|
decompress = refinery.units.compression.decompress:decompress.run
|
|
@@ -135,7 +136,9 @@ jvdasm = refinery.units.formats.java.jvdasm:jvdasm.run
|
|
|
135
136
|
jvstr = refinery.units.formats.java.jvstr:jvstr.run
|
|
136
137
|
kblob = refinery.units.crypto.keyderive.kblob:kblob.run
|
|
137
138
|
keccak256 = refinery.units.crypto.hash.cryptographic:keccak256.run
|
|
139
|
+
kramer = refinery.units.malware.kramer:kramer.run
|
|
138
140
|
lnk = refinery.units.formats.lnk:lnk.run
|
|
141
|
+
loop = refinery.units.meta.loop:loop.run
|
|
139
142
|
lz4 = refinery.units.compression.lz4:lz4.run
|
|
140
143
|
lzf = refinery.units.compression.lzf:lzf.run
|
|
141
144
|
lzg = refinery.units.compression.lzg:lzg.run
|
|
@@ -172,6 +175,9 @@ nrv2e = refinery.units.compression.nrv:nrv2e.run
|
|
|
172
175
|
ntlm = refinery.units.crypto.hash.password_hashes:ntlm.run
|
|
173
176
|
officecrypt = refinery.units.formats.office.officecrypt:officecrypt.run
|
|
174
177
|
opc = refinery.units.formats.exe.opc:opc.run
|
|
178
|
+
p1 = refinery.units.meta.pick:p1.run
|
|
179
|
+
p2 = refinery.units.meta.pick:p2.run
|
|
180
|
+
p3 = refinery.units.meta.pick:p3.run
|
|
175
181
|
pack = refinery.units.blockwise.pack:pack.run
|
|
176
182
|
pad = refinery.units.meta.pad:pad.run
|
|
177
183
|
pbkdf1 = refinery.units.crypto.keyderive.pbkdf1:pbkdf1.run
|
|
Binary file
|
|
@@ -34,7 +34,7 @@ various `refinery.units.Unit`s can be combined.
|
|
|
34
34
|
4. `refinery.units`: writing custom units, add command-line arguments, and how to use refinery
|
|
35
35
|
units within Python code.
|
|
36
36
|
"""
|
|
37
|
-
__version__ = '0.7.
|
|
37
|
+
__version__ = '0.7.2'
|
|
38
38
|
__distribution__ = 'binary-refinery'
|
|
39
39
|
|
|
40
40
|
from typing import Dict, List, Optional, Type, TypeVar, Iterable
|
|
@@ -127,6 +127,7 @@ DelayedType = Callable[[ByteString], FinalType]
|
|
|
127
127
|
MaybeDelayedType = Union[DelayedType[FinalType], FinalType]
|
|
128
128
|
|
|
129
129
|
_DEFAULT_BITS = 64
|
|
130
|
+
_REVERSE_SIGN = '!'
|
|
130
131
|
|
|
131
132
|
|
|
132
133
|
class ParserError(ArgumentTypeError):
|
|
@@ -430,36 +431,45 @@ class DelayedArgumentDispatch:
|
|
|
430
431
|
self.final = {}
|
|
431
432
|
self.units = {}
|
|
432
433
|
|
|
433
|
-
def _get_unit(self, name: str, *args) -> Unit:
|
|
434
|
-
name = normalize_to_identifier(name)
|
|
434
|
+
def _get_unit(self, name: str, *args) -> Optional[Unit]:
|
|
435
|
+
name, rev, empty = normalize_to_identifier(name).partition(_REVERSE_SIGN)
|
|
436
|
+
if empty:
|
|
437
|
+
return None
|
|
435
438
|
uhash = hash((name,) + args)
|
|
436
439
|
if uhash in self.units:
|
|
437
440
|
return self.units[uhash]
|
|
438
441
|
from refinery import load
|
|
439
442
|
unit = load(name)
|
|
440
443
|
unit = unit and unit.assemble(*args).log_detach()
|
|
444
|
+
if rev == _REVERSE_SIGN:
|
|
445
|
+
unit = -unit
|
|
441
446
|
self.units[uhash] = unit
|
|
442
447
|
return unit
|
|
443
448
|
|
|
444
449
|
def __get__(self, instance, t=None):
|
|
445
450
|
return self.Wrapper(self, instance)
|
|
446
451
|
|
|
447
|
-
def __call__(self, instance, data, modifier=None, *args):
|
|
452
|
+
def __call__(self, instance: DelayedArgument, data, modifier=None, *args):
|
|
448
453
|
try:
|
|
449
454
|
handler = self.default if modifier is None else self.handlers[modifier]
|
|
455
|
+
except KeyError:
|
|
456
|
+
unit = self._get_unit(modifier, *args)
|
|
457
|
+
if not unit:
|
|
458
|
+
raise ArgumentTypeError(F'failed to build unit {modifier}')
|
|
459
|
+
result = list(unit.act(data))
|
|
460
|
+
if not result:
|
|
461
|
+
return B''
|
|
462
|
+
return B''.join(result) if len(result) > 1 else result[0]
|
|
463
|
+
else:
|
|
450
464
|
name = next(itertools.islice(inspect.signature(handler).parameters.values(), 1, None)).name
|
|
451
465
|
hint = get_type_hints(handler).get(name, None)
|
|
452
466
|
if hint == Iterable[type(data)]:
|
|
453
467
|
data = (data,)
|
|
454
468
|
if hint == str and isbuffer(data):
|
|
469
|
+
if not isinstance(data, (bytes, bytearray)):
|
|
470
|
+
data = bytes(data)
|
|
455
471
|
data = data.decode('utf8')
|
|
456
472
|
return handler(instance, data, *args)
|
|
457
|
-
except KeyError:
|
|
458
|
-
unit = self._get_unit(modifier, *args)
|
|
459
|
-
if not unit:
|
|
460
|
-
raise ArgumentTypeError(F'failed to build unit {modifier}')
|
|
461
|
-
result = unit.act(data)
|
|
462
|
-
return result if isbuffer(result) else B''.join(result)
|
|
463
473
|
|
|
464
474
|
def can_handle(self, modifier, *args):
|
|
465
475
|
return modifier in self.handlers or bool(self._get_unit(modifier, *args))
|
|
@@ -1390,6 +1400,21 @@ class DelayedRegexpArgument(DelayedArgument):
|
|
|
1390
1400
|
|
|
1391
1401
|
return expression.encode('latin-1')
|
|
1392
1402
|
|
|
1403
|
+
@handler.register('f', final=True)
|
|
1404
|
+
def format(self, name: str) -> bytes:
|
|
1405
|
+
"""
|
|
1406
|
+
The handler `f:[name]` returns a regular expression for to one of the format types
|
|
1407
|
+
supported by `refinery.carve` unit.
|
|
1408
|
+
"""
|
|
1409
|
+
from refinery.lib.patterns import formats
|
|
1410
|
+
try:
|
|
1411
|
+
return formats[name]
|
|
1412
|
+
except LookupError:
|
|
1413
|
+
raise ArgumentTypeError(
|
|
1414
|
+
F'Based on the prefix "f:", the parser looked for a carve format named "{name}".'
|
|
1415
|
+
U' No such format is known; prefix the entire expression with "s:" if this was '
|
|
1416
|
+
U'unintended, otherwise correct the format name spelling.')
|
|
1417
|
+
|
|
1393
1418
|
@handler.register('yara', 'Y')
|
|
1394
1419
|
def yara(self, pattern: bytes) -> bytes:
|
|
1395
1420
|
"""
|
|
@@ -6,7 +6,7 @@ Provides a customized argument parser that is used by all refinery `refinery.uni
|
|
|
6
6
|
from __future__ import annotations
|
|
7
7
|
|
|
8
8
|
from typing import IO, Optional, List, Dict, Any
|
|
9
|
-
from argparse import ArgumentParser, ArgumentError, Action, RawDescriptionHelpFormatter
|
|
9
|
+
from argparse import ArgumentParser, ArgumentError, ArgumentTypeError, Action, RawDescriptionHelpFormatter
|
|
10
10
|
|
|
11
11
|
import sys
|
|
12
12
|
|
|
@@ -136,10 +136,10 @@ class ArgumentParserWithKeywordHooks(ArgumentParser):
|
|
|
136
136
|
self.set_defaults(**self.keywords)
|
|
137
137
|
try:
|
|
138
138
|
parsed = self.parse_args(args=args, namespace=namespace)
|
|
139
|
-
except ArgumentError as e:
|
|
139
|
+
except (ArgumentError, ArgumentTypeError, ArgparseError) as e:
|
|
140
140
|
self.error(str(e))
|
|
141
|
-
except Exception:
|
|
142
|
-
self.error(F'Failed to parse arguments: {args!r}')
|
|
141
|
+
except Exception as e:
|
|
142
|
+
self.error(F'Failed to parse arguments: {args!r}, {e}, {type(e).__name__}')
|
|
143
143
|
for name in keywords:
|
|
144
144
|
param = getattr(parsed, name, None)
|
|
145
145
|
if param != keywords[name]:
|
|
@@ -120,6 +120,7 @@ import json
|
|
|
120
120
|
import base64
|
|
121
121
|
import itertools
|
|
122
122
|
import zlib
|
|
123
|
+
import uuid
|
|
123
124
|
|
|
124
125
|
from typing import Generator, Iterable, BinaryIO, Callable, Optional, List, Dict, ByteString, Any
|
|
125
126
|
from typing import TYPE_CHECKING
|
|
@@ -175,6 +176,7 @@ class Chunk(bytearray):
|
|
|
175
176
|
"""
|
|
176
177
|
temp: Any = None
|
|
177
178
|
meta: LazyMetaOracle
|
|
179
|
+
uuid: uuid.UUID
|
|
178
180
|
|
|
179
181
|
def __init__(
|
|
180
182
|
self,
|
|
@@ -191,6 +193,8 @@ class Chunk(bytearray):
|
|
|
191
193
|
else:
|
|
192
194
|
bytearray.__init__(self, data)
|
|
193
195
|
|
|
196
|
+
self.uuid = uuid.uuid4()
|
|
197
|
+
|
|
194
198
|
if path is None:
|
|
195
199
|
path = []
|
|
196
200
|
if view is None:
|
|
@@ -220,10 +224,6 @@ class Chunk(bytearray):
|
|
|
220
224
|
return data
|
|
221
225
|
return cls(data)
|
|
222
226
|
|
|
223
|
-
@property
|
|
224
|
-
def guid(self) -> int:
|
|
225
|
-
return hash((id(self), *(id(v) for v in self.meta.values())))
|
|
226
|
-
|
|
227
227
|
def set_next_scope(self, visible: bool) -> None:
|
|
228
228
|
self._fill_scope = visible
|
|
229
229
|
|