mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-12-12 07:08:55 +00:00
.. | ||
__init__.py | ||
evalbased.py | ||
javascriptobfuscator.py | ||
myobfuscate.py | ||
packer.py | ||
README.specs.mkd | ||
urlencode.py |
UNPACKERS SPECIFICATIONS
Nothing very difficult: an unpacker is a submodule placed in the directory where this file was found. Each unpacker must define three symbols:
PRIORITY
: integer number expressing the priority in applying this unpacker. Lower number means higher priority. Makes sense only if a source file has been packed with more than one packer.detect(source)
: returnsTrue
if source is packed, otherwise,False
.unpack(source)
: takes asource
string and unpacks it. Must always return valid JavaScript. That is to say, your code should look like:
if detect(source):
return do_your_fancy_things_with(source)
else:
return source
You can safely define any other symbol in your module, as it will be ignored.
__init__
code will automatically load new unpackers, without any further step
to be accomplished. Simply drop it in this directory.