]> git.sesse.net Git - shamaz/blob - decrypt.c
Initial commit.
[shamaz] / decrypt.c
1 #include <stdio.h>
2 #include <string.h>
3 #include "ice.h"
4
5 #define SIZE 24169
6
7 //#define OVERRIDE "\x2D\x21\xDD\x71\x7A\x8F\xD8\x68\xF4\xFF\x01\x85\x36\xD2\x7B\x00\x85\xAE\x78\xA9\xA4\xF9\xB6\xC0\x4E\xD6\x39\xC6\x7D\x27\xF0\xD4"
8 //#define OVERRIDE "\x2D\x21\xDD\x71\x7A\x8F\xD8\x68\xF4\xFF\x01\x85\x36\xD2\x7B\x00\x85\xAE\x78\xA9\xA4\xF9\xB6\xC0\xC9\xB5\x42\xD3\xF2\x80\x4F\xEF"
9 //#define OVERRIDE "\x02\xC0\xD0\x66\x8E\x80\x12\x00\x58\xC9\x51\x24\x7D\x1A\xFA\x17\x3A\x64\xC9\xFB\xEC\xD2\xF2\x04\x5A\x18\xEC\xF7\x63\x52\x87\x8E\x9E\xEE\xD5\x1D\x5E\x07\x13\xBD\x30\xDA\x82\xD9\xAF\x85\x48\x07\x46\x21\xF7\x22\x35\x1C\x00\x88\x2F\xD9\x60\xD3\x05\x08\x49\x5A\x4C\x48\x51\x65\xE5\x9A\xFD\x1A\x7C\x8F\x7B\xAB\xF6\x8A\xBF\x2B\xBA\x68\x6D\x0B\xC6\x2B\x6A\x69\x39\x2B\xD8\x24\x30\xE1\xDF\x77\xAF\xEF\xF5\x05\x79\x07\xD2\x66\xC0\x76\x50\x7D\x54\x1F\x3D\xF4\x59\xF6\x15\x64\x7C\x8A\x00\x18\x46\x72\xDD\xAA\x63\xF7\x3D\x0E\x72\x75\x30\xC8\x69\x90\xDE\xF9"
10 //#define OVERRIDE "\xF1\x36\x0E\x2D\x9D\x9F\xB8\x98\xE7\x43\xED\x6C\xEF\x4E\xAB\xB8"
11 //#define OVERRIDE "\x2D\x21\xDD\x71\x7A\x8F\xD8\x68\xF4\xFF\x01\x85\x36\xD2\x7B\x00\x85\xAE\x78\xA9\xA4\xF9\xB6\xC0\x4E\xD6\x39\xC6\x7D\x27\xF0\xD4"
12 //#define OVERRIDE "\xF1\xA1\xC0\x23\xBF\xF8\x94\x77\xF7\x86\x51\x7C\x0C\x39\x09\xB0"
13 //#define OVERRIDE "\x2D\x21\xDD\x71\x7A\x8F\xD8\x68\xF4\xFF\x01\x85\x36\xD2\x7B\x00\x85\xAE\x78\xA9\xA4\xF9\xB6\xC0\x4E\xD6\x39\xC6\x7D\x27\xF0\xD4"
14 //#define OVERRIDE "\x3B\xF6\xCC\x26\x9B\xE4\x5F\xCB\x1F\x82\x6C\x2E\xD5\xE4\x77\x3B"
15 //#define OVERRIDE "\x80\xF9\x72\xA5\x94\x52\xF4\xC8\xE0\x96\xF4\x27\x6B\xA9\x15\x49"
16 //#define OVERRIDE "\x72\x11\xC5\x95\xDC\xFF\x32\x0C\x78\x48\x85\x50\x10\xE2\x79\x2C"
17 //#define OVERRIDE "\xF1\xA1\xC0\x23\xBF\xF8\x94\x77\xF7\x86\x51\x7C\x0C\x39\x09\xB0"
18 #define OVERRIDE "\xC9\x91\xCC\x4E\xFD\x1A\xC7\xD2"
19
20 #ifdef OVERRIDE
21 #undef SIZE
22 #define SIZE (sizeof(OVERRIDE)-1)
23 #endif
24
25 unsigned char keymat[] = { 0x5C, 0x09, 0xD8, 0x3A, 0x2A, 0x3A, 0x47, 0x8A };
26
27 int main(int argc, char **argv)
28 {
29         FILE *amr = fopen(argv[1], "rb");
30         unsigned char in[SIZE], out[SIZE];
31         int i;
32         ICE_KEY *key = ice_key_create(1);  //?
33         ice_key_set(key, keymat);
34
35 #ifdef OVERRIDE
36         memcpy(in, OVERRIDE, SIZE);
37 #else
38         fread(in, SIZE, 1, amr);
39 #endif
40         
41         for (i = 0; i < SIZE; i += 8) {
42                 ice_key_decrypt(key, in + i, out + i);
43         }
44         fwrite(out, SIZE, 1, stdout);
45 }