From 562346bb6189aef7634d76930d2979e68c2b3106 Mon Sep 17 00:00:00 2001
From: Chris Pomeroy <cpomeroy@localhost.localdomain>
Date: Fri, 01 Dec 2017 06:08:10 +0000
Subject: [PATCH] Adeed getaaxkey back correctly

---
 getaaxkey/audible_byte#4-4_7_10000x791707_0.rtc |    0 
 getaaxkey/audible_byte#4-4_0_10000x789935_0.rtc |    0 
 getaaxkey/audible_byte#4-4_1_10000x791425_0.rtc |    0 
 getaaxkey/audible_byte#4-4_4_10000x790743_0.rtc |    0 
 getaaxkey/__init__.py                           |    0 
 getaaxkey/audible_byte#4-4_6_10000x791458_0.rtc |    0 
 getaaxkey/rcrack                                |    0 
 getaaxkey/audible_byte#4-4_2_10000x790991_0.rtc |    0 
 getaaxkey/audible_byte#4-4_5_10000x790568_0.rtc |    0 
 getaaxkey/getaaxkey.py                          |   84 ++++++++++++++++++++++++++++++++++++++++++
 getaaxkey/audible_byte#4-4_3_10000x792120_0.rtc |    0 
 getaaxkey/audible_byte#4-4_9_10000x791022_0.rtc |    0 
 getaaxkey/audible_byte#4-4_8_10000x790202_0.rtc |    0 
 13 files changed, 84 insertions(+), 0 deletions(-)

diff --git a/getaaxkey/__init__.py b/getaaxkey/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/getaaxkey/__init__.py
diff --git "a/getaaxkey/audible_byte\0434-4_0_10000x789935_0.rtc" "b/getaaxkey/audible_byte\0434-4_0_10000x789935_0.rtc"
new file mode 100644
index 0000000..6359b7a
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_0_10000x789935_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_1_10000x791425_0.rtc" "b/getaaxkey/audible_byte\0434-4_1_10000x791425_0.rtc"
new file mode 100644
index 0000000..57aa2b1
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_1_10000x791425_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_2_10000x790991_0.rtc" "b/getaaxkey/audible_byte\0434-4_2_10000x790991_0.rtc"
new file mode 100644
index 0000000..0ab3c43
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_2_10000x790991_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_3_10000x792120_0.rtc" "b/getaaxkey/audible_byte\0434-4_3_10000x792120_0.rtc"
new file mode 100644
index 0000000..8e0438c
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_3_10000x792120_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_4_10000x790743_0.rtc" "b/getaaxkey/audible_byte\0434-4_4_10000x790743_0.rtc"
new file mode 100644
index 0000000..1e169c3
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_4_10000x790743_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_5_10000x790568_0.rtc" "b/getaaxkey/audible_byte\0434-4_5_10000x790568_0.rtc"
new file mode 100644
index 0000000..77c2a19
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_5_10000x790568_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_6_10000x791458_0.rtc" "b/getaaxkey/audible_byte\0434-4_6_10000x791458_0.rtc"
new file mode 100644
index 0000000..4f7b21c
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_6_10000x791458_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_7_10000x791707_0.rtc" "b/getaaxkey/audible_byte\0434-4_7_10000x791707_0.rtc"
new file mode 100644
index 0000000..f4b7b06
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_7_10000x791707_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_8_10000x790202_0.rtc" "b/getaaxkey/audible_byte\0434-4_8_10000x790202_0.rtc"
new file mode 100644
index 0000000..e279ee0
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_8_10000x790202_0.rtc"
Binary files differ
diff --git "a/getaaxkey/audible_byte\0434-4_9_10000x791022_0.rtc" "b/getaaxkey/audible_byte\0434-4_9_10000x791022_0.rtc"
new file mode 100644
index 0000000..18e558f
--- /dev/null
+++ "b/getaaxkey/audible_byte\0434-4_9_10000x791022_0.rtc"
Binary files differ
diff --git a/getaaxkey/getaaxkey.py b/getaaxkey/getaaxkey.py
new file mode 100644
index 0000000..a561ac9
--- /dev/null
+++ b/getaaxkey/getaaxkey.py
@@ -0,0 +1,84 @@
+#!/usr/bin/python
+
+import os
+import subprocess
+
+def filechecksum(aaxfile):
+    ret = subprocess.Popen(["ffprobe", "-v", "info", "-hide_banner", os.path.abspath(aaxfile)], stderr=subprocess.PIPE)
+    grep = subprocess.Popen(["grep", "checksum"], stdin=ret.stderr, stdout=subprocess.PIPE)
+    awk = subprocess.Popen(["awk", " { print $8 } "], stdin=grep.stdout, stdout=subprocess.PIPE)
+    hashsum,out = awk.communicate()
+    hashsum = hashsum.strip('\n')
+    return hashsum
+
+
+def writeauthcode(hashsum):
+    try:
+        file = open(".authcode", "a")
+        file.write(hashsum + os.linesep)
+    except (IOError, OSError) as e:
+        print "Can't write to .authcode"
+        return 1
+    finally:
+        file.close()
+        return 0
+
+
+def readauthcode():
+    try:
+      if not os.path.isfile(".authcode"):
+          open (".authcode", "w").close()
+      with open(".authcode") as f:
+          hashes = f.read().split()
+    except (IOError, OSError) as e:
+        print "Can't read in .authcode"
+        return 1
+    finally:
+        f.close()
+        return hashes
+
+
+def newauthcode(checksum):
+    rcwd = os.path.dirname(os.path.realpath(__file__))
+    command = "./rcrack *.rtc -h "
+    command += checksum
+    cmd = subprocess.Popen(command, cwd=rcwd, stdout=subprocess.PIPE, shell=True)
+    grep = subprocess.Popen(["grep","-a", "hex"], stdin=cmd.stdout,stdout=subprocess.PIPE)
+    key,stderr = grep.communicate()
+    key = key.split()
+    return key[2].split(':')[1]
+
+def checkagainstexisting(abytes,aaxfile):
+    ret = subprocess.Popen(["ffprobe","-activation_bytes", abytes ,"-hide_banner" , os.path.abspath(aaxfile)], stderr=subprocess.PIPE)
+    grep = subprocess.Popen(["grep", "mismatch", "-c"], stdin=ret.stderr, stdout=subprocess.PIPE)
+    works,out = grep.communicate()
+    return works.strip('\n')
+
+
+def getcorrectkey(aaxfile):
+    authcodes = readauthcode()
+    abyte = ''
+    for x in authcodes:
+        if (checkagainstexisting(x,aaxfile) == '0'):
+            abyte = x
+            return abyte
+    if (abyte == ''):
+        csum = filechecksum(aaxfile)
+        abyte = newauthcode(csum)
+        writeauthcode(abyte)
+        return abyte
+
+
+if __name__ == "__main__":
+    import sys
+    if len(sys.argv) >= 2:
+        args = sys.argv[1]
+    else:
+        print "I need an file name to lookup"
+        sys.exit(1)
+    checksum = filechecksum(args)
+    out = newauthcode(checksum.strip())
+    if out is not None:
+        print sys.argv[1], "Auth code is:", out
+    else:
+        print sys.argv[1], "no Authcode found"
diff --git a/getaaxkey/rcrack b/getaaxkey/rcrack
new file mode 100755
index 0000000..fc94d4c
--- /dev/null
+++ b/getaaxkey/rcrack
Binary files differ

--
Gitblit v1.10.0