Facebook
From Gamboge Human, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 57
  1. package com.totaljerkface.game
  2. {
  3.    import com.hurlant.crypto.symmetric.ButtHoleKey;
  4.    import com.hurlant.crypto.symmetric.CBCMode;
  5.    import com.hurlant.crypto.symmetric.ICipher;
  6.    import com.hurlant.crypto.symmetric.IPad;
  7.    import com.hurlant.crypto.symmetric.PKCS5;
  8.    import flash.desktop.Clipboard;
  9.    import flash.desktop.ClipboardFormats;
  10.    import flash.display.Loader;
  11.    import flash.display.MovieClip;
  12.    import flash.display.Sprite;
  13.    import flash.events.Event;
  14.    import flash.external.ExternalInterface;
  15.    import flash.net.URLLoader;
  16.    import flash.net.URLLoaderDataFormat;
  17.    import flash.net.URLRequest;
  18.    import flash.net.URLRequestMethod;
  19.    import flash.net.URLVariables;
  20.    import flash.utils.ByteArray;
  21.    import flash.utils.Timer;
  22.    
  23.    public class PreLoaderNew extends Sprite
  24.    {
  25.        
  26.      
  27.       public var continueButton:MovieClip;
  28.      
  29.       private var blarb:String = "93b7f60ddaa63cccce503b3c3d490b76";
  30.      
  31.       private var urlLoader:URLLoader;
  32.      
  33.       private var loader:Loader;
  34.      
  35.       private var _introComplete:Boolean;
  36.      
  37.       private var _gameLoaded:Boolean;
  38.      
  39.       private var timer:Timer;
  40.      
  41.       public function PreLoaderNew()
  42.       {
  43.          super();
  44.          ExternalInterface.call("console.log","start");
  45.          this.init();
  46.       }
  47.      
  48.       private function getCipher(param1:String, param2:IPad) : ICipher
  49.       {
  50.          var _loc3_:ByteArray = new ByteArray();
  51.          _loc3_.writeUTFBytes(param1);
  52.          var _loc4_:CBCMode = new CBCMode(new ButtHoleKey(_loc3_),param2);
  53.          var _loc5_:ByteArray = new ByteArray();
  54.          _loc5_.writeUTFBytes("abcd1234");
  55.          _loc4_.IV = _loc5_;
  56.          return _loc4_;
  57.       }
  58.      
  59.       private function decryptByteArray(param1:ByteArray, param2:String = "") : void
  60.       {
  61.          var _loc3_:IPad = new PKCS5();
  62.          var _loc4_:ICipher = this.getCipher(param2,_loc3_);
  63.          _loc3_.setBlockSize(_loc4_.getBlockSize());
  64.          _loc4_.decrypt(param1);
  65.          param1.position = 0;
  66.       }
  67.      
  68.       private function randomNumString(param1:int, param2:int, param3:Boolean) : String
  69.       {
  70.          var _loc4_:int = Math.round(Math.random() * (param2 - param1) + param1) - 1;
  71.          var _loc5_:String = "";
  72.          var _loc6_:int = Math.round(Math.random() * 8 + 1);
  73.          _loc5_ = _loc5_ + _loc6_;
  74.          var _loc7_:int = 1;
  75.          while(_loc7_ < _loc4_)
  76.          {
  77.             _loc6_ = Math.round(Math.random() * 9);
  78.             _loc5_ = _loc5_ + _loc6_;
  79.             _loc7_++;
  80.          }
  81.          _loc6_ = Math.round(Math.random() * 4) * 2;
  82.          if(param3)
  83.          {
  84.             _loc6_++;
  85.          }
  86.          _loc5_ = _loc5_ + _loc6_;
  87.          return _loc5_;
  88.       }
  89.      
  90.       private function init() : void
  91.       {
  92.          var _loc1_:URLRequest = new URLRequest("http://www.totaljerkface.com/get_level.hw");
  93.          _loc1_.method = URLRequestMethod.POST;
  94.          var _loc2_:URLVariables = new URLVariables();
  95.          _loc2_.level_id = 1;
  96.          _loc2_.action = "get_record";
  97.          _loc2_.ip_tracking = this.randomNumString(4,8,false);
  98.          _loc1_.data = _loc2_;
  99.          ExternalInterface.call("console.log","1");
  100.          var _loc3_:URLLoader = new URLLoader();
  101.          _loc3_.dataFormat = URLLoaderDataFormat.BINARY;
  102.          _loc3_.addEventListener(Event.COMPLETE,this.loadComplete);
  103.          _loc3_.load(_loc1_);
  104.       }
  105.      
  106.       private function loadComplete(param1:Event) : void
  107.       {
  108.          ExternalInterface.call("console.log","2");
  109.          var _loc7_:Array = null;
  110.          var _loc2_:URLLoader = param1.target as URLLoader;
  111.          _loc2_.removeEventListener(Event.COMPLETE,this.loadComplete);
  112.          var _loc3_:String = String(_loc2_.data);
  113.          var _loc4_:String = _loc3_.substr(0,8);
  114.          if(_loc4_.indexOf("<html>") > -1)
  115.          {
  116.             this._errorString = "system_error";
  117.             dispatchEvent(new ErrorEvent(ErrorEvent.ERROR));
  118.             return;
  119.          }
  120.          if(_loc4_.indexOf("failure") > -1)
  121.          {
  122.             _loc7_ = _loc3_.split(":");
  123.             this._errorString = _loc7_[1];
  124.             dispatchEvent(new ErrorEvent(ErrorEvent.ERROR));
  125.             return;
  126.          }
  127.          var _loc5_:ByteArray = _loc2_.data;
  128.          this.decryptByteArray(_loc5_,"eatshit2");
  129.          _loc5_.uncompress();
  130.          var _loc6_:* = _loc5_.readUTFBytes(_loc5_.length);
  131.          var xml:* = new XML(_loc6_);
  132.          dispatchEvent(new Event(Event.COMPLETE));
  133.          trace("ok");
  134.          var textToCopy:String = _loc6_;
  135.          Clipboard.generalClipboard.clear();
  136.          Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT,textToCopy,false);
  137.          ExternalInterface.call("console.log",_loc6_);
  138.       }
  139.    }
  140. }
  141.