Advertisement
Stranck

Fuck fools2018's room 3 & 4 (+ notes)

Apr 2nd, 2018
1,374
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 16.72 KB | None | 0 0
  1. //⚠️I'M HOSTING AN UNOFFICIAL SERVER OF FOOLS2018! Check it out: https://fools2018.stranck.ovh
  2.  
  3. //Enjoy some shit written in Java. Inb4 I'm not a good programmer. (Ganix love u)
  4. //I'll upload a full walkthrough on my YouTube channel: https://www.youtube.com/channel/UCmMWUz0QZ7WhIBx-1Dz-IGg
  5. //Stay updated on my future projects on my Telegram channel: https://t.me/Stranck
  6. /*
  7. *██╗     ██╗███╗   ██╗██╗  ██╗███████╗
  8. *██║     ██║████╗  ██║██║ ██╔╝██╔════╝
  9. *██║     ██║██╔██╗ ██║█████╔╝ ███████╗
  10. *██║     ██║██║╚██╗██║██╔═██╗ ╚════██║
  11. *███████╗██║██║ ╚████║██║  ██╗███████║
  12. *╚══════╝╚═╝╚═╝  ╚═══╝╚═╝  ╚═╝╚══════╝
  13. *Paper notes: https://imgur.com/a/yErS8
  14. *Google drive with all files: https://drive.google.com/open?id=1rRboru6WI87PRH0pbBMNn5EDJ94ur_SF
  15. *Telegram shitpost channel: https://t.me/Stranck
  16. *YouTube channel: https://www.youtube.com/channel/UCmMWUz0QZ7WhIBx-1Dz-IGg
  17. */
  18. /*
  19. *   ██████╗  ██████╗  ██████╗ ███╗   ███╗    ██████╗
  20. *   ██╔══██╗██╔═══██╗██╔═══██╗████╗ ████║    ╚════██╗
  21. *   ██████╔╝██║   ██║██║   ██║██╔████╔██║     █████╔╝
  22. *   ██╔══██╗██║   ██║██║   ██║██║╚██╔╝██║     ╚═══██╗
  23. *   ██║  ██║╚██████╔╝╚██████╔╝██║ ╚═╝ ██║    ██████╔╝
  24. *   ╚═╝  ╚═╝ ╚═════╝  ╚═════╝ ╚═╝     ╚═╝    ╚═════╝
  25. */
  26. public class KeyBruteforcer implements Runnable{
  27.     public static final byte[] original_c660 = {(byte)0x7D, (byte)0xBC, (byte)0x5D, (byte)0x92, (byte)0xC7, (byte)0x66, (byte)0xFB, (byte)0x16, (byte)0xB3, (byte)0xC7, (byte)0x25, (byte)0x39, (byte)0x07, (byte)0x65, (byte)0xE4, (byte)0x00, (byte)0x2E, (byte)0xCE, (byte)0xBC, (byte)0xA8, (byte)0xDF, (byte)0x6A, (byte)0x85, (byte)0xE7, (byte)0x8E, (byte)0x5E, (byte)0x49, (byte)0x51, (byte)0xD9, (byte)0x8E, (byte)0xFC, (byte)0x5C, (byte)0xD5, (byte)0xCA, (byte)0x3E, (byte)0x0E, (byte)0x90, (byte)0xF8, (byte)0x6A, (byte)0x3E, (byte)0x38, (byte)0xC1, (byte)0xBE, (byte)0x33, (byte)0xDC, (byte)0x4B, (byte)0xCE, (byte)0x04, (byte)0x50, (byte)0x4D, (byte)0x50, (byte)0xA3, (byte)0xE7, (byte)0x80, (byte)0x88, (byte)0xDB, (byte)0xEF, (byte)0x6D, (byte)0xC8, (byte)0xB4, (byte)0x3F, (byte)0xEB, (byte)0x3B, (byte)0x39, (byte)0xA0, (byte)0x64, (byte)0xEE, (byte)0xC4, (byte)0xE3, (byte)0xA0, (byte)0x89, (byte)0x2F, (byte)0x83, (byte)0xD1, (byte)0x98, (byte)0x62, (byte)0xB6, (byte)0xFF, (byte)0xEB, (byte)0x07, (byte)0x0F, (byte)0xC2, (byte)0xE8, (byte)0xDB, (byte)0x53, (byte)0xDA, (byte)0x0B, (byte)0xFA, (byte)0x16, (byte)0x53, (byte)0x9B, (byte)0x51, (byte)0x6F, (byte)0xB3, (byte)0xD8, (byte)0x5E, (byte)0xBD, (byte)0x05, (byte)0xD1, (byte)0xD6, (byte)0x0D, (byte)0xF6, (byte)0x66, (byte)0xBC, (byte)0x89, (byte)0x84, (byte)0x44, (byte)0xAD, (byte)0x68, (byte)0x09, (byte)0x4C, (byte)0x00, (byte)0x9F, (byte)0x60, (byte)0x8D, (byte)0x79, (byte)0xAB, (byte)0x73, (byte)0xF8, (byte)0x12, (byte)0x98, (byte)0xE1, (byte)0x56, (byte)0x62, (byte)0x36, (byte)0x9B, (byte)0xDF, (byte)0xE7};
  28.     public byte[] _c660 = new byte[original_c660.length];
  29.     public byte[] string = new byte[10];
  30.     public byte[] original_string = new byte[10];
  31.     public static final byte[] original_b680 = {(byte)0x6D, (byte)0xE5, (byte)0x9A, (byte)0x4C, (byte)0xC7, (byte)0x35, (byte)0x1A, (byte)0x3B, (byte)0x78, (byte)0xFB, (byte)0x02, (byte)0x84, (byte)0x7B, (byte)0x4B, (byte)0x4A, (byte)0xC0, (byte)0x6C, (byte)0x9B, (byte)0x36, (byte)0x1F, (byte)0x34, (byte)0x4D, (byte)0xCE, (byte)0x24, (byte)0xB9, (byte)0xE0, (byte)0x29, (byte)0x54, (byte)0x99, (byte)0x67, (byte)0x19, (byte)0x21, (byte)0x73, (byte)0xCB, (byte)0x57, (byte)0x46, (byte)0x2F, (byte)0xDF, (byte)0x5E, (byte)0x43, (byte)0x72, (byte)0x7A, (byte)0x28, (byte)0xB0, (byte)0x0F, (byte)0xF6, (byte)0x49, (byte)0xE2, (byte)0x12, (byte)0xF0, (byte)0x09, (byte)0x44, (byte)0xCD, (byte)0x69, (byte)0x95, (byte)0x6B, (byte)0xD3, (byte)0xD1, (byte)0xE6, (byte)0x87, (byte)0x92, (byte)0xF7, (byte)0xDD, (byte)0x89, (byte)0xC2, (byte)0x63, (byte)0xEA, (byte)0x1D, (byte)0xBB, (byte)0xA7, (byte)0x0A, (byte)0x48, (byte)0x93, (byte)0x90, (byte)0xC1, (byte)0x08, (byte)0x14, (byte)0x1B, (byte)0x79, (byte)0x91, (byte)0x65, (byte)0xF8, (byte)0x0D, (byte)0xD8, (byte)0xD0, (byte)0x47, (byte)0xE1, (byte)0xF9, (byte)0x15, (byte)0x9E, (byte)0x05, (byte)0x41, (byte)0xC8, (byte)0xB7, (byte)0x0E, (byte)0x7E, (byte)0x22, (byte)0xE9, (byte)0xDA, (byte)0xB1, (byte)0x62, (byte)0x13, (byte)0x26, (byte)0x42, (byte)0xAB, (byte)0xD4, (byte)0x5C, (byte)0x4F, (byte)0x74, (byte)0xC4, (byte)0x04, (byte)0x66, (byte)0xD6, (byte)0x5F, (byte)0x38, (byte)0x4E, (byte)0x10, (byte)0xA5, (byte)0x75, (byte)0x52, (byte)0xAA, (byte)0xFE, (byte)0xF2, (byte)0xA3, (byte)0x70, (byte)0x25, (byte)0x82, (byte)0x3A, (byte)0x0C, (byte)0x9D, (byte)0x97, (byte)0x56, (byte)0x7D, (byte)0xD5, (byte)0xA4, (byte)0xE8, (byte)0xAF, (byte)0x11, (byte)0xB8, (byte)0x33, (byte)0xE4, (byte)0xF4, (byte)0x3E, (byte)0x60, (byte)0xCC, (byte)0x5A, (byte)0xFD, (byte)0x71, (byte)0xDE, (byte)0x94, (byte)0x7F, (byte)0x40, (byte)0x53, (byte)0xD7, (byte)0xF3, (byte)0x03, (byte)0x96, (byte)0xBF, (byte)0x17, (byte)0x2C, (byte)0x98, (byte)0xF5, (byte)0x50, (byte)0x8A, (byte)0x88, (byte)0x59, (byte)0xAC, (byte)0x6E, (byte)0x8E, (byte)0x77, (byte)0xC5, (byte)0x58, (byte)0x8D, (byte)0xC9, (byte)0xB5, (byte)0xBE, (byte)0x3F, (byte)0xEC, (byte)0xA2, (byte)0xBC, (byte)0xA0, (byte)0x23, (byte)0x0B, (byte)0x85, (byte)0xB2, (byte)0x86, (byte)0x07, (byte)0x61, (byte)0xD9, (byte)0xA1, (byte)0x8F, (byte)0x7C, (byte)0x01, (byte)0x64, (byte)0xAD, (byte)0x3C, (byte)0xFF, (byte)0x06, (byte)0x8B, (byte)0xA8, (byte)0xE3, (byte)0x76, (byte)0x31, (byte)0x80, (byte)0xEF, (byte)0x81, (byte)0x51, (byte)0x32, (byte)0x45, (byte)0xDB, (byte)0x3D, (byte)0x1E, (byte)0x20, (byte)0xBA, (byte)0x8C, (byte)0x27, (byte)0x30, (byte)0x6A, (byte)0xD2, (byte)0xB3, (byte)0x18, (byte)0xB4, (byte)0xC6, (byte)0xFC, (byte)0x55, (byte)0x1C, (byte)0xDC, (byte)0xEB, (byte)0xAE, (byte)0xF1, (byte)0xA6, (byte)0xCA, (byte)0x6F, (byte)0x5B, (byte)0x9F, (byte)0x16, (byte)0x9C, (byte)0xCF, (byte)0xB6, (byte)0xEE, (byte)0x39, (byte)0xA9, (byte)0x2A, (byte)0x68, (byte)0x37, (byte)0xFA, (byte)0x5D, (byte)0x83, (byte)0x00, (byte)0x2D, (byte)0xED, (byte)0x2E, (byte)0x2B, (byte)0xE7, (byte)0xBD, (byte)0xC3};
  32.     public byte[] _b680 = new byte[original_b680.length];
  33.     public byte b, hl, de, a;
  34.     public int cMain, c, n, asd;
  35.     public long gen;
  36.     public static long attempts = 0;
  37.     public static int threadsNo = 1;
  38.     public static Random r = new Random();
  39.    
  40.     public static synchronized long getAttempts(){
  41.         attempts++;
  42.         return attempts;
  43.     }
  44.    
  45.     public void print() {
  46.         System.out.println("Attemp no: " + attempts);
  47.         System.out.print("ORIGINAL:\t");
  48.         for(c = 0; c < original_string.length; c++) System.out.print(((original_string[c] & 0xFF) - 0xf6) + " ");
  49.         System.out.println();
  50.        
  51.         System.out.print("RESULT:\t");
  52.         for(c = 0; c < 0xf; c++) System.out.print(Integer.toHexString(_c660[c] & 0xFF) + " ");
  53.         System.out.println("\n");
  54.         System.exit(0);
  55.     }
  56.    
  57.     public void generateNextString(){
  58.         for(c = 0; c < string.length; c++) original_string[c] = string[c] = (byte) 0xf6;
  59.         gen = getAttempts();
  60.         if(gen % 100000 == 0) System.out.println("Total ttempts: " + gen);
  61.         //System.out.println(attempts);
  62.         c = 0;
  63.         while(gen > 0 && c < string.length) {
  64.             original_string[c] = string[c] += gen % 10;
  65.             //System.out.println(((original_string[c] & 0xFF) - 0xf6) + " ");
  66.             gen /= 10;
  67.             c++;
  68.         }
  69.     }
  70.    
  71.     public static void main(String[] args){
  72.         System.out.println("computing");
  73.         threadsNo = Integer.parseInt(args[0]);
  74.         if(args.length > 1)
  75.             attempts = Long.parseLong(args[1]);
  76.        
  77.         for(int i = 0; i < threadsNo; i++)
  78.             new Thread(new KeyBruteforcer()).start();
  79.     }
  80.    
  81.    
  82.    
  83.     public void doThingsWithInput(){
  84.         hl = 0;
  85.         for(c = 0x0a; c > 0; c--){
  86.             a = (byte) (b680plusA((byte)((rotateRight(string[hl]) ^ 0x5C) + 0x1E)) ^ b);
  87.             /*a = string[hl];
  88.             a = rotateRight(a);
  89.             a = (byte) (a ^ 0x5C);
  90.             a = (byte) (a + 0x1E);
  91.             a = b680plusA(a);
  92.             a = (byte) (a ^ b);*/
  93.             b = a;
  94.             string[hl] = a;
  95.             hl++;
  96.         }
  97.     }
  98.    
  99.     public void inputXor(){
  100.         hl = 0;
  101.         de = 0;
  102.         for(c = 0x80; c > 0; c--){
  103.             _c660[de] = (byte) (_c660[de] ^ string[hl]);
  104.             de++;
  105.             string[hl] = b680plusA(string[hl]);
  106.             /*a = string[hl];
  107.             a = b680plusA(a);
  108.             string[hl] = a;*/
  109.             hl++;
  110.             if(hl == 10) hl = 0;
  111.         }
  112.     }
  113.    
  114.     public byte b680plusA(byte a){
  115.         return _b680[a & 0xFF];
  116.     }
  117.    
  118.     public static byte rotateRight(byte bits){
  119.          return (byte)(((bits & 0xff)  >>> 1) | ((bits & 0xff) << (8 - 1)));
  120.     }
  121.  
  122.     @Override
  123.     public void run() {
  124.         while(true){
  125.             for(c = 0; c < original_c660.length; c++) _c660[c] = original_c660[c];
  126.             for(c = 0; c < original_b680.length; c++) _b680[c] = original_b680[c];
  127.             //for(c = 0; c < string.length; c++) original_string[c] = string[c] = (byte) (0xf6);
  128.             generateNextString();
  129.            
  130.             for(cMain = 0x19; cMain > 0; cMain--){
  131.                 b = string[9];
  132.                 doThingsWithInput();
  133.             }
  134.             inputXor();
  135.            
  136.             for(c = 0; c < string.length && _c660[c] == 0; c++);
  137.             if(c == string.length) print();
  138.             //print();
  139.         }
  140.     }
  141. }
  142.  
  143. /*
  144. *   ██████╗  ██████╗  ██████╗ ███╗   ███╗    ██╗  ██╗
  145. *   ██╔══██╗██╔═══██╗██╔═══██╗████╗ ████║    ██║  ██║
  146. *   ██████╔╝██║   ██║██║   ██║██╔████╔██║    ███████║
  147. *   ██╔══██╗██║   ██║██║   ██║██║╚██╔╝██║    ╚════██║
  148. *   ██║  ██║╚██████╔╝╚██████╔╝██║ ╚═╝ ██║         ██║
  149. *   ╚═╝  ╚═╝ ╚═════╝  ╚═════╝ ╚═╝     ╚═╝         ╚═╝
  150. */
  151. public class Checksum {
  152.     public static byte[] _c660; // = {(byte) 0xFF, (byte) 0x00};
  153.     public static byte d, e;
  154.    
  155.     public static void main(String[] args){
  156.         _c660 = new byte[args.length];
  157.         for(int c = 0; c < _c660.length; c++)
  158.             _c660[c] = (byte)(Integer.parseInt(args[c], 16));
  159.        
  160.         startChecksumIHope();
  161.                
  162.         System.out.print("OUTPUT:\t");
  163.         for(int c = 0; c < _c660.length; c++)
  164.             System.out.print(Integer.toHexString(_c660[c] & 0xFF) + " ");
  165.         System.out.println("\n");
  166.     }
  167.    
  168.     public static void startChecksumIHope(){
  169.         checksumFuckingCalcs();
  170.         int hl =  2;
  171.         _c660[hl++] = e;
  172.         _c660[hl] = d;
  173.     }
  174.    
  175.     public static void checksumFuckingCalcs(){
  176.         int hl = 0, bc = (_c660[hl++] & 0xff) + ((_c660[hl] & 0xff) << 8);
  177.         //System.out.println(bc);
  178.         hl += 4;
  179.         bc -= 5;
  180.         d = (byte) 0x5a;
  181.         e = (byte) 0xa5;
  182.         while(bc > 0){
  183.             //System.out.println(d + " " + e + " " + hl + " " + bc);
  184.             d = (byte) (_c660[hl] ^ d);
  185.             e = (byte) (e + _c660[hl]);
  186.             hl++;
  187.             bc--;
  188.         }
  189.     }
  190. }
  191.  
  192. /*
  193. ███████╗██╗   ██╗███╗   ███╗    ███████╗██╗██╗     ███████╗
  194. ██╔════╝╚██╗ ██╔╝████╗ ████║    ██╔════╝██║██║     ██╔════╝
  195. ███████╗ ╚████╔╝ ██╔████╔██║    █████╗  ██║██║     █████╗  
  196. ╚════██║  ╚██╔╝  ██║╚██╔╝██║    ██╔══╝  ██║██║     ██╔══╝  
  197. ███████║   ██║   ██║ ╚═╝ ██║    ██║     ██║███████╗███████╗
  198. ╚══════╝   ╚═╝   ╚═╝     ╚═╝    ╚═╝     ╚═╝╚══════╝╚══════╝
  199. 02:B673 B680plusA
  200. 02:B63F DoThingsWithInput
  201. 02:B602 StartIThink
  202. 02:B680 B680Data
  203. 02:b656 InputXorC660+80
  204. 03:ad2d CreatePacket
  205. 01:db6c StartChecksumIHope
  206. 01:db4d ChecksumFuckingCalcs
  207.  
  208.  
  209. ███╗   ██╗ ██████╗ ████████╗███████╗███████╗
  210. ████╗  ██║██╔═══██╗╚══██╔══╝██╔════╝██╔════╝
  211. ██╔██╗ ██║██║   ██║   ██║   █████╗  ███████╗
  212. ██║╚██╗██║██║   ██║   ██║   ██╔══╝  ╚════██║
  213. ██║ ╚████║╚██████╔╝   ██║   ███████╗███████║
  214. ╚═╝  ╚═══╝ ╚═════╝    ╚═╝   ╚══════╝╚══════╝
  215. ***********************room2.txt***********************
  216. Second room:
  217. MACs4wMNRQFa/zEBWQEH/wRjLf4GASljHx9Y/ymcBJf//////////////////4wx
  218. 30 00 ac e3 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 8c 31
  219. BwBi5wQxjA==
  220. 07 00 62 e7 04 31 8c
  221.  
  222.       XX XX                                                                                                                               XX XX
  223.  
  224. First room:
  225. MACr5AMNRQFa/zEBWQEH/wRjLf4GASljHx9Y/ymcBJf//////////////////4sx
  226. 30 00 ab e4 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 8b 31
  227. BwBh4AQxiw==
  228. 07 00 61 e0 04 31 8b
  229.  
  230. 1337:
  231.  
  232.  
  233. Center:
  234. MAAATwMNRQFa/zEBWQEH/wRjLf4GASljHx9Y/ymcBJf//////////////////xAB
  235. 30 00 00 4f 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 10 01
  236. BwC2SwQBEA==
  237. 07 00 b6 4b 04 01 10
  238.  
  239. North:
  240. MAA2eQMNRQFa/zEBWQEH/wRjLf4GASljHx9Y/ymcBJf//////////////////zEW
  241. 30 00 36 79 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 31 16
  242. BwDsfQQWMQ==
  243.  
  244.  
  245.  
  246. 30 00 ac e3 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 8c 31
  247.       XX XX                                                                                                                               XX XX
  248. 30 00 ab e4 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 8b 31
  249.       XX XX                                                                                                                               XX XX
  250. 30 00 00 4f 03 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 10 01
  251.  
  252. 07 00 62 e7 04 31 8c            00000111 00000000 01100010 11100111 00000100 00110001 10001100
  253.       XX XX    XX XX
  254. 07 00 61 e0 04 31 8b            00000111 00000000 01100001 11100000 00000100 00110001 10001011
  255.       XX XX    XX XX
  256. 07 00 b6 4b 04 01 10            00000111 00000000 10110110 01001011 00000100 00000001 00010000
  257.  
  258. ***********************room3CH.txt***********************
  259. base    hex     rotate  xor     add         value
  260. 0       f6      7b      27      45          a7
  261. 1       f7      fb      a7      c5          06
  262. 2       f8      7c      20      3e          dd
  263. 3       f9      fc      a0      be          8f
  264. 4       fa      7d      21      3f          89
  265. 5       fb      fd      a1      bf          7c
  266. 6       fc      7e      22      40          c2
  267. 7       fd      fe      a2      c0          01
  268. 8       fe      7f      23      41          63
  269. 9       ff      ff      a3      c1          64
  270.  
  271. 0 45
  272. 1 c5
  273. 2 3e
  274. 3 be
  275. 4 3f
  276. 5 bf
  277. 6 40
  278. 7 c0
  279. 8 41
  280. 9 c1
  281.  
  282. 7d 0111 1101
  283.    1000 0100
  284. 89 + f4
  285.  
  286. 84, b3
  287. ***********************room4messages.txt***********************
  288. Casino:
  289. BgCkpQf/
  290. 06 00 a4 a5 07 ff       00000110 00000000 10100100 10100101 00000111 11111111
  291.  
  292. Change map to casino:
  293. BwAyMwQacw==
  294. 07 00 32 33 04 1a 73    00000111 00000000 00110010 00110011 00000100 00011010 01110011
  295.  
  296. Key verify:
  297. FQDIBQn8/vn2/P34///7UAAAAAAA
  298. 15 00 c8 05 09 fc fe f9 f6 fc fd f8 ff ff fb 50 00 00 00 00 00
  299.  
  300. 4th cave challenge:
  301. zABLtncTNw==
  302. cc 00 4b b6 77 13 37    01110111 00000000 01001011 10110110 00010011 00110111 11001100
  303. ----------------------------------------
  304. 08 00 00 00 77 13 37 cc
  305.  
  306. 4th cave room:
  307. BwBk5QQxjg==
  308. 07 00 64 e5 04 31 8e    00000111 00000000 01100100 11100101 00000100 00110001 10001110
  309.  
  310. 2th cave mystery room:
  311. BwDvfgQTNw==
  312. 07 00 ef 7e 04 13 37    00000111 00000000 11101111 01111110 00000100 00010011 00110111
  313.  
  314. 2th cave mystery room registration:
  315. MgDECQWt3jcTDUUBWv8xAVkBB/8EYy3+BgEpYx8fWP8pnASX//////////////////8=
  316. 32 00 c4 09 05 ad de 37 13 0d 45 01 5a ff 31 01 59 01 07 ff 04 63 2d fe 06 01 29 63 1f 1f 58 ff 29 9c 04 97 ff ff ff ff ff ff ff ff ff ff ff ff ff ff
  317. /*
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement