- package com.totaljerkface.game
- {
- import com.hurlant.crypto.symmetric.ButtHoleKey;
- import com.hurlant.crypto.symmetric.CBCMode;
- import com.hurlant.crypto.symmetric.ICipher;
- import com.hurlant.crypto.symmetric.IPad;
- import com.hurlant.crypto.symmetric.PKCS5;
- import flash.desktop.Clipboard;
- import flash.desktop.ClipboardFormats;
- import flash.display.Loader;
- import flash.display.MovieClip;
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.external.ExternalInterface;
- import flash.net.URLLoader;
- import flash.net.URLLoaderDataFormat;
- import flash.net.URLRequest;
- import flash.net.URLRequestMethod;
- import flash.net.URLVariables;
- import flash.utils.ByteArray;
- import flash.utils.Timer;
- public class PreLoaderNew extends Sprite
- {
- public var continueButton:MovieClip;
- private var blarb:String = "93b7f60ddaa63cccce503b3c3d490b76";
- private var urlLoader:URLLoader;
- private var loader:Loader;
- private var _introComplete:Boolean;
- private var _gameLoaded:Boolean;
- private var timer:Timer;
- public function PreLoaderNew()
- {
- super();
- ExternalInterface.call("console.log","start");
- this.init();
- }
- private function getCipher(param1:String, param2:IPad) : ICipher
- {
- var _loc3_:ByteArray = new ByteArray();
- _loc3_.writeUTFBytes(param1);
- var _loc4_:CBCMode = new CBCMode(new ButtHoleKey(_loc3_),param2);
- var _loc5_:ByteArray = new ByteArray();
- _loc5_.writeUTFBytes("abcd1234");
- _loc4_.IV = _loc5_;
- return _loc4_;
- }
- private function decryptByteArray(param1:ByteArray, param2:String = "") : void
- {
- var _loc3_:IPad = new PKCS5();
- var _loc4_:ICipher = this.getCipher(param2,_loc3_);
- _loc3_.setBlockSize(_loc4_.getBlockSize());
- _loc4_.decrypt(param1);
- param1.position = 0;
- }
- private function randomNumString(param1:int, param2:int, param3:Boolean) : String
- {
- var _loc4_:int = Math.round(Math.random() * (param2 - param1) + param1) - 1;
- var _loc5_:String = "";
- var _loc6_:int = Math.round(Math.random() * 8 + 1);
- _loc5_ = _loc5_ + _loc6_;
- var _loc7_:int = 1;
- while(_loc7_ < _loc4_)
- {
- _loc6_ = Math.round(Math.random() * 9);
- _loc5_ = _loc5_ + _loc6_;
- _loc7_++;
- }
- _loc6_ = Math.round(Math.random() * 4) * 2;
- if(param3)
- {
- _loc6_++;
- }
- _loc5_ = _loc5_ + _loc6_;
- return _loc5_;
- }
- private function init() : void
- {
- var _loc1_:URLRequest = new URLRequest("http://www.totaljerkface.com/get_level.hw");
- _loc1_.method = URLRequestMethod.POST;
- var _loc2_:URLVariables = new URLVariables();
- _loc2_.level_id = 1;
- _loc2_.action = "get_record";
- _loc2_.ip_tracking = this.randomNumString(4,8,false);
- _loc1_.data = _loc2_;
- ExternalInterface.call("console.log","1");
- var _loc3_:URLLoader = new URLLoader();
- _loc3_.dataFormat = URLLoaderDataFormat.BINARY;
- _loc3_.addEventListener(Event.COMPLETE,this.loadComplete);
- _loc3_.load(_loc1_);
- }
- private function loadComplete(param1:Event) : void
- {
- ExternalInterface.call("console.log","2");
- var _loc7_:Array = null;
- var _loc2_:URLLoader = param1.target as URLLoader;
- _loc2_.removeEventListener(Event.COMPLETE,this.loadComplete);
- var _loc3_:String = String(_loc2_.data);
- var _loc4_:String = _loc3_.substr(0,8);
- if(_loc4_.indexOf("<html>") > -1)
- {
- this._errorString = "system_error";
- dispatchEvent(new ErrorEvent(ErrorEvent.ERROR));
- return;
- }
- if(_loc4_.indexOf("failure") > -1)
- {
- _loc7_ = _loc3_.split(":");
- this._errorString = _loc7_[1];
- dispatchEvent(new ErrorEvent(ErrorEvent.ERROR));
- return;
- }
- var _loc5_:ByteArray = _loc2_.data;
- this.decryptByteArray(_loc5_,"eatshit2");
- _loc5_.uncompress();
- var _loc6_:* = _loc5_.readUTFBytes(_loc5_.length);
- var xml:* = new XML(_loc6_);
- dispatchEvent(new Event(Event.COMPLETE));
- trace("ok");
- var textToCopy:String = _loc6_;
- Clipboard.generalClipboard.clear();
- Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT,textToCopy,false);
- ExternalInterface.call("console.log",_loc6_);
- }
- }
- }