Новичок
Профиль
Группа: Участник
Сообщений: 3
Регистрация: 4.5.2014
Репутация: нет Всего: нет
|
Добрый день! Впервые столкнулся с AS3, и необходима помощь: Есть два скрипта которые раскриптовывают определенную константу. Для меня, как человека не знакомого даже с синтаксисом AS, перевести их на С или VB будет достаточно долго. А запустить эти скрипты в среде AS не получается. Если кто-то мне может помочь, расшифруйте пожалуйста константу _key. Спасибо заранее... Скрипт Key.as6: Код | package { public class SecureKey extends Object { public function SecureKey () { super(); } public static const _key:String = "`165`dgc`8dg580:7f1:`60e63`e76`:"; public static function key(param1:Function) : String { return MD5.encrypt(param1(_key)); } } }
|
Скрипт MD5.as: Код | package { public class MD5 extends Object { public function MD5() { super(); } public static function encrypt(param1:String) :0 String { var _loc2_:Array = null; var _loc3_:uint = 0; var _loc4_:uint = 0; var _loc5_:uint = 0; var _loc6_:uint = 0; var _loc7_:uint = 0; var _loc8_:uint = 0; var _loc9_:uint = 0; var _loc10_:uint = 0; var _loc11_:uint = 0; var _loc12_:uint = 7; var _loc13_:uint = 12; var _loc14_:uint = 17; var _loc15_:uint = 22; var _loc16_:uint = 5; var _loc17_:uint = 9; var _loc18_:uint = 14; var _loc19_:uint = 20; var _loc20_:uint = 4; var _loc21_:uint = 11; var _loc22_:uint = 16; var _loc23_:uint = 23; var _loc24_:uint = 6; var _loc25_:uint = 10; var _loc26_:uint = 15; var _loc27_:uint = 21; var param1:String = u8e(due(param1)); _loc2_ = cwa(param1); _loc8_ = 1732584193; _loc9_ = 4.023233417E9; _loc10_ = 2.562383102E9; _loc11_ = 271733878; _loc3_ = 0; while(_loc3_ < _loc2_.length) { _loc4_ = _loc8_; _loc5_ = _loc9_; _loc6_ = _loc10_; _loc7_ = _loc11_; _loc8_ = FF(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 0],_loc12_,3.61409036E9); _loc11_ = FF(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 1],_loc13_,3.90540271E9); _loc10_ = FF(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 2],_loc14_,606105819); _loc9_ = FF(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 3],_loc15_,3.250441966E9); _loc8_ = FF(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 4],_loc12_,4.118548399E9); _loc11_ = FF(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 5],_loc13_,1200080426); _loc10_ = FF(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 6],_loc14_,2.821735955E9); _loc9_ = FF(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 7],_loc15_,4.249261313E9); _loc8_ = FF(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 8],_loc12_,1770035416); _loc11_ = FF(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 9],_loc13_,2.336552879E9); _loc10_ = FF(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 10],_loc14_,4.294925233E9); _loc9_ = FF(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 11],_loc15_,2.304563134E9); _loc8_ = FF(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 12],_loc12_,1804603682); _loc11_ = FF(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 13],_loc13_,4.254626195E9); _loc10_ = FF(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 14],_loc14_,2.792965006E9); _loc9_ = FF(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 15],_loc15_,1236535329); _loc8_ = GG(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 1],_loc16_,4.129170786E9); _loc11_ = GG(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 6],_loc17_,3.225465664E9); _loc10_ = GG(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 11],_loc18_,643717713); _loc9_ = GG(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 0],_loc19_,3.921069994E9); _loc8_ = GG(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 5],_loc16_,3.593408605E9); _loc11_ = GG(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 10],_loc17_,38016083); _loc10_ = GG(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 15],_loc18_,3.634488961E9); _loc9_ = GG(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 4],_loc19_,3.889429448E9); _loc8_ = GG(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 9],_loc16_,568446438); _loc11_ = GG(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 14],_loc17_,3.275163606E9); _loc10_ = GG(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 3],_loc18_,4.107603335E9); _loc9_ = GG(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 8],_loc19_,1163531501); _loc8_ = GG(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 13],_loc16_,2.850285829E9); _loc11_ = GG(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 2],_loc17_,4.243563512E9); _loc10_ = GG(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 7],_loc18_,1735328473); _loc9_ = GG(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 12],_loc19_,2.368359562E9); _loc8_ = HH(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 5],_loc20_,4.294588738E9); _loc11_ = HH(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 8],_loc21_,2.272392833E9); _loc10_ = HH(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 11],_loc22_,1839030562); _loc9_ = HH(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 14],_loc23_,4.25965774E9); _loc8_ = HH(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 1],_loc20_,2.763975236E9); _loc11_ = HH(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 4],_loc21_,1272893353); _loc10_ = HH(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 7],_loc22_,4.139469664E9); _loc9_ = HH(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 10],_loc23_,3.200236656E9); _loc8_ = HH(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 13],_loc20_,681279174); _loc11_ = HH(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 0],_loc21_,3.936430074E9); _loc10_ = HH(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 3],_loc22_,3.572445317E9); _loc9_ = HH(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 6],_loc23_,76029189); _loc8_ = HH(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 9],_loc20_,3.654602809E9); _loc11_ = HH(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 12],_loc21_,3.873151461E9); _loc10_ = HH(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 15],_loc22_,530742520); _loc9_ = HH(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 2],_loc23_,3.299628645E9); _loc8_ = II(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 0],_loc24_,4.096336452E9); _loc11_ = II(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 7],_loc25_,1126891415); _loc10_ = II(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 14],_loc26_,2.878612391E9); _loc9_ = II(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 5],_loc27_,4.237533241E9); _loc8_ = II(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 12],_loc24_,1700485571); _loc11_ = II(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 3],_loc25_,2.39998069E9); _loc10_ = II(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 10],_loc26_,4.293915773E9); _loc9_ = II(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 1],_loc27_,2.240044497E9); _loc8_ = II(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 8],_loc24_,1873313359); _loc11_ = II(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 15],_loc25_,4.264355552E9); _loc10_ = II(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 6],_loc26_,2.734768916E9); _loc9_ = II(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 13],_loc27_,1309151649); _loc8_ = II(_loc8_,_loc9_,_loc10_,_loc11_,_loc2_[_loc3_ + 4],_loc24_,4.149444226E9); _loc11_ = II(_loc11_,_loc8_,_loc9_,_loc10_,_loc2_[_loc3_ + 11],_loc25_,3.174756917E9); _loc10_ = II(_loc10_,_loc11_,_loc8_,_loc9_,_loc2_[_loc3_ + 2],_loc26_,718787259); _loc9_ = II(_loc9_,_loc10_,_loc11_,_loc8_,_loc2_[_loc3_ + 9],_loc27_,3.951481745E9); _loc8_ = adu(_loc8_,_loc4_); _loc9_ = adu(_loc9_,_loc5_); _loc10_ = adu(_loc10_,_loc6_); _loc11_ = adu(_loc11_,_loc7_); _loc3_ = _loc3_ + 16; } var _loc28_:String = wth(_loc8_) + wth(_loc9_) + wth(_loc10_) + wth(_loc11_); return _loc28_.toLowerCase(); } private static function rot_l(param1:uint, param2:uint) : uint { return param1 << param2 | param1 >>> 32 - param2; } private static function adu(param1:uint, param2:uint) : uint { var _loc3_:uint = 0; var _loc4_:uint = 0; var _loc5_:uint = 0; var _loc6_:uint = 0; var _loc7_:uint = 0; _loc5_ = param1 & 2.147483648E9; _loc6_ = param2 & 2.147483648E9; _loc3_ = param1 & 1073741824; _loc4_ = param2 & 1073741824; _loc7_ = (param1 & 1073741823) + (param2 & 1073741823); if(_loc3_ & _loc4_) { return _loc7_ ^ 2.147483648E9 ^ _loc5_ ^ _loc6_; } if(_loc3_ | _loc4_) { if(_loc7_ & 1073741824) { return _loc7_ ^ 3.221225472E9 ^ _loc5_ ^ _loc6_; } return _loc7_ ^ 1073741824 ^ _loc5_ ^ _loc6_; } return _loc7_ ^ _loc5_ ^ _loc6_; } private static function F(param1:uint, param2:uint, param3:uint) : uint { return param1 & param2 | ~param1 & param3; } private static function G(param1:uint, param2:uint, param3:uint) : uint { return param1 & param3 | param2 & ~param3; } private static function H(param1:uint, param2:uint, param3:uint) : uint { return param1 ^ param2 ^ param3; } private static function I(param1:uint, param2:uint, param3:uint) : uint { return param2 ^ (param1 | ~param3); } private static function FF(param1:uint, param2:uint, param3:uint, param4:uint, param5:uint, param6:uint, param7:uint) : uint { var param1:uint = adu(param1,adu(adu(F(param2,param3,param4),param5),param7)); return adu(rot_l(param1,param6),param2); } private static function GG(param1:uint, param2:uint, param3:uint, param4:uint, param5:uint, param6:uint, param7:uint) : uint { var param1:uint = adu(param1,adu(adu(G(param2,param3,param4),param5),param7)); return adu(rot_l(param1,param6),param2); } private static function HH(param1:uint, param2:uint, param3:uint, param4:uint, param5:uint, param6:uint, param7:uint) : uint { var param1:uint = adu(param1,adu(adu(H(param2,param3,param4),param5),param7)); return adu(rot_l(param1,param6),param2); } private static function II(param1:uint, param2:uint, param3:uint, param4:uint, param5:uint, param6:uint, param7:uint) : uint { var param1:uint = adu(param1,adu(adu(I(param2,param3,param4),param5),param7)); return adu(rot_l(param1,param6),param2); } private static function cwa(param1:String) : Array { var _loc2_:uint = 0; var _loc3_:uint = param1.length; var _loc4_:* = _loc3_ + 8; var _loc5_:uint = (_loc4_ - _loc4_ % 64) / 64; var _loc6_:uint = (_loc5_ + 1) * 16; var _loc7_:Array = new Array(_loc6_ - 1); var _loc8_:uint = 0; var _loc9_:uint = 0; while(_loc9_ < _loc3_) { _loc2_ = (_loc9_ - _loc9_ % 4) / 4; _loc8_ = _loc9_ % 4 * 8; _loc7_[_loc2_] = _loc7_[_loc2_] | param1.charCodeAt(_loc9_) << _loc8_; _loc9_++; } _loc2_ = (_loc9_ - _loc9_ % 4) / 4; _loc8_ = _loc9_ % 4 * 8; _loc7_[_loc2_] = _loc7_[_loc2_] | 128 << _loc8_; _loc7_[_loc6_ - 2] = _loc3_ << 3; _loc7_[_loc6_ - 1] = _loc3_ >>> 29; return _loc7_; } private static function wth(param1:uint) : String { var _loc4_:uint = 0; var _loc5_:uint = 0; var _loc2_:* = ""; var _loc3_:* = ""; _loc5_ = 0; while(_loc5_ <= 3) { _loc4_ = param1 >>> _loc5_ * 8 & 255; _loc3_ = "0" + _loc4_.toString(16); _loc2_ = _loc2_ + _loc3_.substr(_loc3_.length - 2,2); _loc5_++; } return _loc2_; } private static function u8e(param1:String) : String { var _loc4_:uint = 0; var _loc2_:* = ""; var _loc3_:uint = 0; while(_loc3_ < param1.length) { _loc4_ = param1.charCodeAt(_loc3_); if(_loc4_ < 128) { _loc2_ = _loc2_ + String.fromCharCode(_loc4_); } else if(_loc4_ > 127 && _loc4_ < 2048) { _loc2_ = _loc2_ + String.fromCharCode(_loc4_ >> 6 | 192); _loc2_ = _loc2_ + String.fromCharCode(_loc4_ & 63 | 128); } else { _loc2_ = _loc2_ + String.fromCharCode(_loc4_ >> 12 | 224); _loc2_ = _loc2_ + String.fromCharCode(_loc4_ >> 6 & 63 | 128); _loc2_ = _loc2_ + String.fromCharCode(_loc4_ & 63 | 128); } _loc3_++; } return _loc2_; } private static function due(param1:String) : String { var _loc2_:* = ""; var _loc3_:* = 0; while(_loc3_ < param1.length) { _loc2_ = _loc2_ + String.fromCharCode(param1.charCodeAt(_loc3_) ^ (!_loc3_?param1.length % 5:(param1.charCodeAt(_loc3_ - 1) + _loc3_) % 5)); _loc3_++; } return _loc2_; } } }
|
|