Skip to content

Instantly share code, notes, and snippets.

@TobleMiner
Last active November 2, 2018 17:31
Show Gist options
  • Select an option

  • Save TobleMiner/94647a0a71a27b09f9893435a7e2a358 to your computer and use it in GitHub Desktop.

Select an option

Save TobleMiner/94647a0a71a27b09f9893435a7e2a358 to your computer and use it in GitHub Desktop.
Seagate firmware update config decryptor
#!/usr/bin/env python3
import sys
import base64
print(base64.b64decode('ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiosICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwqKioqKi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqICAuKioqLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqLCAgICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKi4gICAgICwqKiouICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiogICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwqKiogICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKiosICAgICAgICAgLCoqKi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqICAgICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuKioqICAgICAgICAgICAgICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqLCAgICAgICAgICAgICAsKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKi4gICAgICAgICAgICAgICAgKioqLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiogICAgICAgICAgICAgICAgICwqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwqKiogICAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKiosICAgICAgICAgICAgICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqICAgICAgICAgICAgICAgICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgLioqKiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogICAgICAgICAKICAgICAgICAgICAgIC4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAsKioqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKi4gICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKioqICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICwsLCwgICAgICAsLCwsICAsLCwuICwsLCwgLiwsLCAgIC4sLCwgICwsLCwgLCwsLCAgLCwsLiAgICwsLCwgLCwsLCAgLCwsLiAsLCwsICAgLCwsLCAgLCwsLiAsLCwsICAgICAgICAgICAgICAgLCoqKioqKiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAqKioqLiAgICAgKioqKiwqKioqKiAqKioqLioqKioqICAqKioqKiwqKioqICoqKiosKioqKiogICwqKioqICoqKiosKioqKiogKioqKiAgICoqKiosKioqKiouKioqKiAgICAgICAgICAgICAqKioqKiouICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgKioqKi4gICAgICoqKiosKioqKiogKioqKi4qKioqKiAgKioqKiosKioqKiAqKioqLCoqKioqICAsKioqKiAqKioqLCoqKioqICoqKiogICAqKioqLCoqKioqLioqKiogICAgICAgICAgKioqKioqLCAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwqKioqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICoqKiogKioqKi4sKioqKiAqKioqICoqKiogKioqKiAqKioqICwqKiosICoqKiogKioqKiAqKioqICoqKiogKioqKiwsKioqKioqKiouICAgKioqKi4qKioqLCoqKiosICAgKioqKioqKioqKioqKioqLCoqKiogICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAqKioqICoqKiouLCoqKiogKioqKiAqKioqICoqKiogKioqKiAsKioqLCAqKioqICoqKiogKioqKiAqKioqICoqKiosLCoqKioqKioqLiAgICoqKiouKioqKiwqKioqLCAgICoqKioqKioqKioqKioqKiwqKioqICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgKioqKioqKiAqKioqICoqKiogKioqKiAsKioqLC4qKioqICoqKiogKioqKiAqKioqICoqKiouLCoqKi4gKioqKiAqKioqICoqKioqKiAgICAqKioqLiwqKiosLioqKiogICAqKioqKioqKioqKioqKiouKioqKiAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICoqKioqKiogKioqKiAqKioqICoqKiouKioqKiwsKioqKiAqKioqICoqKiogKioqKiAqKioqLCoqKiosLioqKiogKioqKiAqKioqKiouICAgKioqKiwqKioqKioqKioqICAgKioqKioqKioqKioqKioqLioqKiogICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAsLCwsLCwuICwsLCwgLCwsLCAuLCwsICAsLCwgICwsLC4gLCwsLiAsLCwsICwsLCwgLiwsLCAgLCwsICAsLCwgICwsLCwgLCwsLCwsICAgIC4sLCwgICwsLCAgLCwsLiAgIC4qKiouLCoqKi4uKioqLC4qKioqICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgKioqKioqKiogKioqKiAqKioqICoqKiosLioqKiogKioqKiAqKioqICoqKiogKioqKi4sKioqKiAqKioqICoqKiogKioqKioqKioqKi4gICAgICAgICAgICAgICAgICAgICAqKioqKioqKioqKioqKiouKioqKiAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqICoqKiogKioqKiAqKioqLC4qKioqICoqKiogKioqKiAqKioqICoqKiouLCoqKiogKioqKiAqKioqICoqKioqKioqKiouICAgICAgICAgICAgICAgICAgICAgKioqKioqKioqKioqKioqLioqKiogICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAsLCwsLCwsLCwsICAsLCwsICwsLCwgLiwsLCAgLCwsICAsLCwgICwsLC4gLCwsLCAsLCwsIC4sLCwgICwsLCAgLCwsLCwsLCwsLCwsICAgICAgICAgKioqKiogICAgICAgICwqKiosKioqKiwsKioqKiAqKioqICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgKioqKioqKioqKiogKioqKiAqKioqICoqKiogKioqKi4sKioqKi4qKioqICoqKiogKioqKiAqKioqICoqKiosLCoqKioqKioqKioqKi4gICAgICAgICoqKioqICAgICAgICAqKioqKioqKioqKioqKiouKioqKiAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqKiosICoqKiogKioqKiAqKioqICoqKiouLioqKiouKioqKiAqKioqICoqKiogKioqKiAqKioqLCwqKioqKioqKioqKiogICAgICAgICAuKioqICAgICAgICAgKioqKioqKioqKioqKioqLioqKiogICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAqKioqKioqICAgICAgKioqKioqKiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqKioqKioqICAgICAgKioqKioqLiAgICoqKiosKioqKioqKioqKiAgICoqKioqKioqKioqKioqKi4qKioqICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgKioqKioqKiAgICAgICoqKioqKiogKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogKioqKioqKiAgICAgICoqKioqKi4gICAqKioqLCoqKioqKioqKiogICAqKioqKioqKioqKioqKiouKioqKiAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuKioqICAgICAgICAgICAgICAgICAgICAgICAgIC4qKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAuKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgKioqKioqKioqKi4gICAgICAgICAgICAgICAgICAgICAgICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICwqKioqKiwgICAqKioqKiogICAgICAgICAgICAgICAgICAgICAgKioqLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiAgICAgICAgICAgICAgICAgICAgKioqKioqICAgICAgICAgKioqKioqICAgICAgICAgICAgICAgICAgIC4qKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiogICAgICAgICAgICAgICAgICoqKioqKiAgICAgICAgICAgICAgLCoqKioqKiAgICAgICAgICAgICAgICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiogICAgICAgICAgICAgICAqKioqKiosICAgICAgICAgICAgICAgICAgICoqKioqKiwgICAgICAgICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKiouICAgICAgICAgICAgLioqKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKiogICAgICAgICAgICAgLioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqICAgICAgICAgICAqKioqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKioqICAgICAgICAgICAqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsKioqICAgICAgICAgLCoqKioqLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKioqLCAgICAgICAgICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqLCAgICAgIC4qKioqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKi4gICAgICAsKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKiAgICAgKioqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKiogICAgICoqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCoqKiAgICoqKioqKiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsKioqKioqICAgKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKiosKioqKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqKioqKiwqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoqKioqKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKiosICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4qKioqKiosICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsKioqKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKiogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKioqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgo=').decode('ascii'))
tbl = [
['+', 'S'],
['H', '0'],
[',', 'T'],
['<', 'D'],
['E', 'M'],
['J', '2'],
['M', '5'],
['I', '1'],
['K', '3'],
['e', '-'],
['Q', '9'],
['1', 'Y'],
['F', 'N'],
['N', '6'],
['S', ';'],
[b'\x85', '\r'],
[b'\x82', '\n'],
['D', 'L'],
['G', 'O'],
['f', '.'],
['?', 'G'],
['*', 'R'],
[';', 'C'],
['L', '4'],
['@', 'H'],
['9', 'A'],
['[', '#'],
['O', '7'],
['W', '?'],
[':', 'B'],
['P', '8'],
['X', ' '],
['>', 'F'],
['/', 'W'],
[b'\x1c', 'D'],
[b'\x21', 'I'],
[b'\x0b', 'S'],
[b'\x23', 'K'],
[b'\x1b', 'C'],
[b'\x27', 'O'],
[b'\x26', 'N'],
[b'\x1e', 'F'],
[b'\x1f', 'G'],
[b'\x0d', 'U'],
[b'\x0a', 'R'],
[' ', 'H'],
[b'\x1d', 'E'],
[b'\x19', 'A'],
[b'\x0c', 'T'],
[b'\x24', 'L'],
[b'\x1a', 'B'],
[b'\x42', 'J'],
[b'\x67', '_'],
[b'\x64', ','],
]
for e in tbl:
for i in [0, 1]:
if isinstance(e[i], str):
e[i] = bytes(e[i], 'ascii')
if len(sys.argv) < 2:
print('Input file missing')
sys.exit(1)
with open(sys.argv[1], 'rb') as f:
ptext = f.readline()
ctext = f.read()
for i in range(len(ctext)):
c = ctext[i:i+1]
p = ('\\' + c.hex()).encode('ascii')
for xlate in tbl:
if xlate[0] == c:
p = xlate[1]
break
ptext += p
print(ptext.decode('ascii', 'replace'))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment