mirror of
https://github.com/javascript-obfuscator/javascript-obfuscator
synced 2026-08-09 12:42:29 +00:00
rc4 string literal encoding preparation
This commit is contained in:
Vendored
+170
-172
@@ -88,7 +88,7 @@ module.exports =
|
||||
/******/ __webpack_require__.p = "";
|
||||
/******/
|
||||
/******/ // Load entry module and return exports
|
||||
/******/ return __webpack_require__(__webpack_require__.s = 82);
|
||||
/******/ return __webpack_require__(__webpack_require__.s = 81);
|
||||
/******/ })
|
||||
/************************************************************************/
|
||||
/******/ ([
|
||||
@@ -102,7 +102,7 @@ var _createClass = (function () { function defineProperties(target, props) { for
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var chance_1 = __webpack_require__(76);
|
||||
var chance_1 = __webpack_require__(75);
|
||||
var JSFuck_1 = __webpack_require__(19);
|
||||
|
||||
var Utils = function () {
|
||||
@@ -259,7 +259,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
||||
var escodegen = __webpack_require__(11);
|
||||
var esprima = __webpack_require__(22);
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
|
||||
@@ -425,7 +425,7 @@ var _createClass = (function () { function defineProperties(target, props) { for
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
|
||||
var Nodes = function () {
|
||||
function Nodes() {
|
||||
@@ -555,41 +555,6 @@ var AppendState = exports.AppendState;
|
||||
|
||||
/***/ },
|
||||
/* 5 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var AbstractCustomNode = function () {
|
||||
function AbstractCustomNode(options) {
|
||||
_classCallCheck(this, AbstractCustomNode);
|
||||
|
||||
this.options = options;
|
||||
}
|
||||
|
||||
_createClass(AbstractCustomNode, [{
|
||||
key: "getAppendState",
|
||||
value: function getAppendState() {
|
||||
return this.appendState;
|
||||
}
|
||||
}, {
|
||||
key: "getNode",
|
||||
value: function getNode() {
|
||||
return this.getNodeStructure();
|
||||
}
|
||||
}]);
|
||||
|
||||
return AbstractCustomNode;
|
||||
}();
|
||||
|
||||
exports.AbstractCustomNode = AbstractCustomNode;
|
||||
|
||||
/***/ },
|
||||
/* 6 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -626,6 +591,41 @@ exports.NodeType = Utils_1.Utils.strEnumify({
|
||||
WhileStatement: 'WhileStatement'
|
||||
});
|
||||
|
||||
/***/ },
|
||||
/* 6 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var AbstractCustomNode = function () {
|
||||
function AbstractCustomNode(options) {
|
||||
_classCallCheck(this, AbstractCustomNode);
|
||||
|
||||
this.options = options;
|
||||
}
|
||||
|
||||
_createClass(AbstractCustomNode, [{
|
||||
key: "getAppendState",
|
||||
value: function getAppendState() {
|
||||
return this.appendState;
|
||||
}
|
||||
}, {
|
||||
key: "getNode",
|
||||
value: function getNode() {
|
||||
return this.getNodeStructure();
|
||||
}
|
||||
}]);
|
||||
|
||||
return AbstractCustomNode;
|
||||
}();
|
||||
|
||||
exports.AbstractCustomNode = AbstractCustomNode;
|
||||
|
||||
/***/ },
|
||||
/* 7 */
|
||||
/***/ function(module, exports) {
|
||||
@@ -1187,7 +1187,7 @@ var esprima = __webpack_require__(22);
|
||||
var escodegen = __webpack_require__(11);
|
||||
var ObfuscationResult_1 = __webpack_require__(18);
|
||||
var Obfuscator_1 = __webpack_require__(26);
|
||||
var Options_1 = __webpack_require__(55);
|
||||
var Options_1 = __webpack_require__(54);
|
||||
var SourceMapCorrector_1 = __webpack_require__(27);
|
||||
|
||||
var JavaScriptObfuscatorInternal = function () {
|
||||
@@ -1255,23 +1255,23 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
||||
|
||||
var estraverse = __webpack_require__(3);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var CatchClauseObfuscator_1 = __webpack_require__(46);
|
||||
var ConsoleOutputNodesGroup_1 = __webpack_require__(41);
|
||||
var DebugProtectionNodesGroup_1 = __webpack_require__(42);
|
||||
var DomainLockNodesGroup_1 = __webpack_require__(43);
|
||||
var FunctionDeclarationObfuscator_1 = __webpack_require__(47);
|
||||
var FunctionObfuscator_1 = __webpack_require__(48);
|
||||
var LiteralObfuscator_1 = __webpack_require__(49);
|
||||
var MemberExpressionObfuscator_1 = __webpack_require__(50);
|
||||
var MethodDefinitionObfuscator_1 = __webpack_require__(51);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var CatchClauseObfuscator_1 = __webpack_require__(45);
|
||||
var ConsoleOutputNodesGroup_1 = __webpack_require__(40);
|
||||
var DebugProtectionNodesGroup_1 = __webpack_require__(41);
|
||||
var DomainLockNodesGroup_1 = __webpack_require__(42);
|
||||
var FunctionDeclarationObfuscator_1 = __webpack_require__(46);
|
||||
var FunctionObfuscator_1 = __webpack_require__(47);
|
||||
var LiteralObfuscator_1 = __webpack_require__(48);
|
||||
var MemberExpressionObfuscator_1 = __webpack_require__(49);
|
||||
var MethodDefinitionObfuscator_1 = __webpack_require__(50);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
var ObjectExpressionObfuscator_1 = __webpack_require__(52);
|
||||
var SelfDefendingNodesGroup_1 = __webpack_require__(44);
|
||||
var UnicodeArrayNodesGroup_1 = __webpack_require__(45);
|
||||
var VariableDeclarationObfuscator_1 = __webpack_require__(53);
|
||||
var StackTraceAnalyzer_1 = __webpack_require__(58);
|
||||
var ObjectExpressionObfuscator_1 = __webpack_require__(51);
|
||||
var SelfDefendingNodesGroup_1 = __webpack_require__(43);
|
||||
var UnicodeArrayNodesGroup_1 = __webpack_require__(44);
|
||||
var VariableDeclarationObfuscator_1 = __webpack_require__(52);
|
||||
var StackTraceAnalyzer_1 = __webpack_require__(57);
|
||||
|
||||
var Obfuscator = function () {
|
||||
function Obfuscator(options) {
|
||||
@@ -1470,8 +1470,8 @@ var _createClass = (function () { function defineProperties(target, props) { for
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var fs = __webpack_require__(79);
|
||||
var mkdirp = __webpack_require__(80);
|
||||
var fs = __webpack_require__(78);
|
||||
var mkdirp = __webpack_require__(79);
|
||||
var path = __webpack_require__(23);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
|
||||
@@ -1562,7 +1562,7 @@ var _createClass = (function () { function defineProperties(target, props) { for
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var commander = __webpack_require__(78);
|
||||
var commander = __webpack_require__(77);
|
||||
var path = __webpack_require__(23);
|
||||
var SourceMapMode_1 = __webpack_require__(12);
|
||||
var DefaultPreset_1 = __webpack_require__(21);
|
||||
@@ -1700,8 +1700,8 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
|
||||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
||||
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var ConsoleOutputDisableExpressionTemplate_1 = __webpack_require__(63);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var ConsoleOutputDisableExpressionTemplate_1 = __webpack_require__(62);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var CustomNodeAppender_1 = __webpack_require__(15);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
|
||||
@@ -1751,8 +1751,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var DebufProtectionFunctionCallTemplate_1 = __webpack_require__(64);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var DebufProtectionFunctionCallTemplate_1 = __webpack_require__(63);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
|
||||
var DebugProtectionFunctionCallNode = function (_AbstractCustomNode_) {
|
||||
@@ -1804,8 +1804,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var DebugProtectionFunctionIntervalTemplate_1 = __webpack_require__(65);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var DebugProtectionFunctionIntervalTemplate_1 = __webpack_require__(64);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
|
||||
var DebugProtectionFunctionIntervalNode = function (_AbstractCustomNode_) {
|
||||
@@ -1857,8 +1857,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var DebugProtectionFunctionTemplate_1 = __webpack_require__(66);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var DebugProtectionFunctionTemplate_1 = __webpack_require__(65);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
|
||||
@@ -1923,8 +1923,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var DomainLockNodeTemplate_1 = __webpack_require__(67);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var DomainLockNodeTemplate_1 = __webpack_require__(66);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var CustomNodeAppender_1 = __webpack_require__(15);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
@@ -1986,8 +1986,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var NoCustomNodesPreset_1 = __webpack_require__(17);
|
||||
var SelfDefendingTemplate_1 = __webpack_require__(68);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var SelfDefendingTemplate_1 = __webpack_require__(67);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var JavaScriptObfuscator_1 = __webpack_require__(9);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
var CustomNodeAppender_1 = __webpack_require__(15);
|
||||
@@ -2041,13 +2041,13 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var NoCustomNodesPreset_1 = __webpack_require__(17);
|
||||
var AtobTemplate_1 = __webpack_require__(62);
|
||||
var SelfDefendingTemplate_1 = __webpack_require__(83);
|
||||
var UnicodeArrayCallsWrapperTemplate_1 = __webpack_require__(69);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var AtobTemplate_1 = __webpack_require__(61);
|
||||
var SelfDefendingTemplate_1 = __webpack_require__(68);
|
||||
var UnicodeArrayAtobDecodeNodeTemplate_1 = __webpack_require__(69);
|
||||
var UnicodeArrayCallsWrapperTemplate_1 = __webpack_require__(70);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var JavaScriptObfuscator_1 = __webpack_require__(9);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
var UnicodeArrayAtobDecodeNodeTemplate_1 = __webpack_require__(84);
|
||||
|
||||
var UnicodeArrayCallsWrapper = function (_AbstractCustomNode_) {
|
||||
_inherits(UnicodeArrayCallsWrapper, _AbstractCustomNode_);
|
||||
@@ -2085,21 +2085,22 @@ var UnicodeArrayCallsWrapper = function (_AbstractCustomNode_) {
|
||||
}, {
|
||||
key: 'getDecodeUnicodeArrayTemplate',
|
||||
value: function getDecodeUnicodeArrayTemplate() {
|
||||
var forLoopFunctionName = 'forLoopFunc';
|
||||
var decodeFunctionName = 'decodeFunction';
|
||||
var code = void 0;
|
||||
if (this.options.selfDefending) {
|
||||
code = SelfDefendingTemplate_1.SelfDefendingTemplate().formatUnicorn({
|
||||
forLoopFunctionName: forLoopFunctionName,
|
||||
decodeFunctionName: decodeFunctionName,
|
||||
unicodeArrayCallsWrapperName: this.unicodeArrayCallsWrapperName,
|
||||
unicodeArrayName: this.unicodeArrayName
|
||||
});
|
||||
} else {
|
||||
code = forLoopFunctionName + '();';
|
||||
code = 'value = ' + decodeFunctionName + '(decodedValues, index, value);';
|
||||
}
|
||||
return UnicodeArrayAtobDecodeNodeTemplate_1.UnicodeArrayAtobDecodeNodeTemplate().formatUnicorn({
|
||||
atobPolyfill: AtobTemplate_1.AtobTemplate(),
|
||||
code: code,
|
||||
forLoopFunctionName: forLoopFunctionName,
|
||||
unicodeArrayName: this.unicodeArrayName
|
||||
decodeFunctionName: decodeFunctionName,
|
||||
unicodeArrayCallsWrapperName: this.unicodeArrayCallsWrapperName
|
||||
});
|
||||
}
|
||||
}, {
|
||||
@@ -2120,8 +2121,7 @@ var UnicodeArrayCallsWrapper = function (_AbstractCustomNode_) {
|
||||
exports.UnicodeArrayCallsWrapper = UnicodeArrayCallsWrapper;
|
||||
|
||||
/***/ },
|
||||
/* 38 */,
|
||||
/* 39 */
|
||||
/* 38 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2139,8 +2139,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var UnicodeArrayTemplate_1 = __webpack_require__(72);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var UnicodeArrayTemplate_1 = __webpack_require__(71);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
|
||||
var UnicodeArrayNode = function (_AbstractCustomNode_) {
|
||||
@@ -2207,7 +2207,7 @@ UnicodeArrayNode.UNICODE_ARRAY_RANDOM_LENGTH = 4;
|
||||
exports.UnicodeArrayNode = UnicodeArrayNode;
|
||||
|
||||
/***/ },
|
||||
/* 40 */
|
||||
/* 39 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2226,9 +2226,9 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
__webpack_require__(8);
|
||||
var AppendState_1 = __webpack_require__(4);
|
||||
var NoCustomNodesPreset_1 = __webpack_require__(17);
|
||||
var SelfDefendingTemplate_1 = __webpack_require__(73);
|
||||
var UnicodeArrayRotateFunctionTemplate_1 = __webpack_require__(74);
|
||||
var AbstractCustomNode_1 = __webpack_require__(5);
|
||||
var SelfDefendingTemplate_1 = __webpack_require__(72);
|
||||
var UnicodeArrayRotateFunctionTemplate_1 = __webpack_require__(73);
|
||||
var AbstractCustomNode_1 = __webpack_require__(6);
|
||||
var JavaScriptObfuscator_1 = __webpack_require__(9);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
@@ -2291,7 +2291,7 @@ var UnicodeArrayRotateFunctionNode = function (_AbstractCustomNode_) {
|
||||
exports.UnicodeArrayRotateFunctionNode = UnicodeArrayRotateFunctionNode;
|
||||
|
||||
/***/ },
|
||||
/* 41 */
|
||||
/* 40 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2327,7 +2327,7 @@ var ConsoleOutputNodesGroup = function (_AbstractNodesGroup_) {
|
||||
exports.ConsoleOutputNodesGroup = ConsoleOutputNodesGroup;
|
||||
|
||||
/***/ },
|
||||
/* 42 */
|
||||
/* 41 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2371,7 +2371,7 @@ var DebugProtectionNodesGroup = function (_AbstractNodesGroup_) {
|
||||
exports.DebugProtectionNodesGroup = DebugProtectionNodesGroup;
|
||||
|
||||
/***/ },
|
||||
/* 43 */
|
||||
/* 42 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2407,7 +2407,7 @@ var DomainLockNodesGroup = function (_AbstractNodesGroup_) {
|
||||
exports.DomainLockNodesGroup = DomainLockNodesGroup;
|
||||
|
||||
/***/ },
|
||||
/* 44 */
|
||||
/* 43 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2443,7 +2443,7 @@ var SelfDefendingNodesGroup = function (_AbstractNodesGroup_) {
|
||||
exports.SelfDefendingNodesGroup = SelfDefendingNodesGroup;
|
||||
|
||||
/***/ },
|
||||
/* 45 */
|
||||
/* 44 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2458,8 +2458,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
var AbstractNodesGroup_1 = __webpack_require__(10);
|
||||
var UnicodeArray_1 = __webpack_require__(28);
|
||||
var UnicodeArrayCallsWrapper_1 = __webpack_require__(37);
|
||||
var UnicodeArrayNode_1 = __webpack_require__(39);
|
||||
var UnicodeArrayRotateFunctionNode_1 = __webpack_require__(40);
|
||||
var UnicodeArrayNode_1 = __webpack_require__(38);
|
||||
var UnicodeArrayRotateFunctionNode_1 = __webpack_require__(39);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
|
||||
var UnicodeArrayNodesGroup = function (_AbstractNodesGroup_) {
|
||||
@@ -2499,7 +2499,7 @@ var UnicodeArrayNodesGroup = function (_AbstractNodesGroup_) {
|
||||
exports.UnicodeArrayNodesGroup = UnicodeArrayNodesGroup;
|
||||
|
||||
/***/ },
|
||||
/* 46 */
|
||||
/* 45 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2514,7 +2514,7 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
|
||||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
||||
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var IdentifierReplacer_1 = __webpack_require__(14);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
@@ -2570,7 +2570,7 @@ var CatchClauseObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.CatchClauseObfuscator = CatchClauseObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 47 */
|
||||
/* 46 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2585,7 +2585,7 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
|
||||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
||||
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var IdentifierReplacer_1 = __webpack_require__(14);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
@@ -2645,7 +2645,7 @@ var FunctionDeclarationObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.FunctionDeclarationObfuscator = FunctionDeclarationObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 48 */
|
||||
/* 47 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2660,7 +2660,7 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
|
||||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
||||
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var IdentifierReplacer_1 = __webpack_require__(14);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
@@ -2726,7 +2726,7 @@ var FunctionObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.FunctionObfuscator = FunctionObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 49 */
|
||||
/* 48 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2744,7 +2744,7 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
var escodegen = __webpack_require__(11);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var BooleanLiteralReplacer_1 = __webpack_require__(54);
|
||||
var BooleanLiteralReplacer_1 = __webpack_require__(53);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
var NumberLiteralReplacer_1 = __webpack_require__(20);
|
||||
var StringLiteralReplacer_1 = __webpack_require__(16);
|
||||
@@ -2791,7 +2791,7 @@ var LiteralObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.LiteralObfuscator = LiteralObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 50 */
|
||||
/* 49 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2807,7 +2807,7 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
var escodegen = __webpack_require__(11);
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
var StringLiteralReplacer_1 = __webpack_require__(16);
|
||||
@@ -2876,7 +2876,7 @@ var MemberExpressionObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.MemberExpressionObfuscator = MemberExpressionObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 51 */
|
||||
/* 50 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2937,7 +2937,7 @@ var MethodDefinitionObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.MethodDefinitionObfuscator = MethodDefinitionObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 52 */
|
||||
/* 51 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -2953,7 +2953,7 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function"
|
||||
|
||||
var escodegen = __webpack_require__(11);
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
@@ -3023,7 +3023,7 @@ var ObjectExpressionObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.ObjectExpressionObfuscator = ObjectExpressionObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 53 */
|
||||
/* 52 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3038,7 +3038,7 @@ function _possibleConstructorReturn(self, call) { if (!self) { throw new Referen
|
||||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
||||
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var AbstractNodeObfuscator_1 = __webpack_require__(7);
|
||||
var IdentifierReplacer_1 = __webpack_require__(14);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
@@ -3100,7 +3100,7 @@ var VariableDeclarationObfuscator = function (_AbstractNodeObfuscat) {
|
||||
exports.VariableDeclarationObfuscator = VariableDeclarationObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 54 */
|
||||
/* 53 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3139,7 +3139,7 @@ var BooleanLiteralReplacer = function (_AbstractReplacer_1$A) {
|
||||
exports.BooleanLiteralReplacer = BooleanLiteralReplacer;
|
||||
|
||||
/***/ },
|
||||
/* 55 */
|
||||
/* 54 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3160,11 +3160,11 @@ var __decorate = undefined && undefined.__decorate || function (decorators, targ
|
||||
var __metadata = undefined && undefined.__metadata || function (k, v) {
|
||||
if ((typeof Reflect === "undefined" ? "undefined" : _typeof(Reflect)) === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
var class_validator_1 = __webpack_require__(77);
|
||||
var TSourceMapMode_1 = __webpack_require__(75);
|
||||
var class_validator_1 = __webpack_require__(76);
|
||||
var TSourceMapMode_1 = __webpack_require__(74);
|
||||
var DefaultPreset_1 = __webpack_require__(21);
|
||||
var OptionsNormalizer_1 = __webpack_require__(56);
|
||||
var ValidationErrorsFormatter_1 = __webpack_require__(57);
|
||||
var OptionsNormalizer_1 = __webpack_require__(55);
|
||||
var ValidationErrorsFormatter_1 = __webpack_require__(56);
|
||||
|
||||
var Options = function Options(obfuscatorOptions) {
|
||||
_classCallCheck(this, Options);
|
||||
@@ -3210,7 +3210,7 @@ exports.Options = Options;
|
||||
var _a;
|
||||
|
||||
/***/ },
|
||||
/* 56 */
|
||||
/* 55 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3379,7 +3379,7 @@ OptionsNormalizer.normalizerRules = [OptionsNormalizer.domainLockRule, OptionsNo
|
||||
exports.OptionsNormalizer = OptionsNormalizer;
|
||||
|
||||
/***/ },
|
||||
/* 57 */
|
||||
/* 56 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3446,7 +3446,7 @@ var ValidationErrorsFormatter = function () {
|
||||
exports.ValidationErrorsFormatter = ValidationErrorsFormatter;
|
||||
|
||||
/***/ },
|
||||
/* 58 */
|
||||
/* 57 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3457,10 +3457,10 @@ var _createClass = (function () { function defineProperties(target, props) { for
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
var estraverse = __webpack_require__(3);
|
||||
var NodeType_1 = __webpack_require__(6);
|
||||
var FunctionDeclarationCalleeDataExtractor_1 = __webpack_require__(59);
|
||||
var FunctionExpressionCalleeDataExtractor_1 = __webpack_require__(60);
|
||||
var ObjectExpressionCalleeDataExtractor_1 = __webpack_require__(61);
|
||||
var NodeType_1 = __webpack_require__(5);
|
||||
var FunctionDeclarationCalleeDataExtractor_1 = __webpack_require__(58);
|
||||
var FunctionExpressionCalleeDataExtractor_1 = __webpack_require__(59);
|
||||
var ObjectExpressionCalleeDataExtractor_1 = __webpack_require__(60);
|
||||
var Nodes_1 = __webpack_require__(2);
|
||||
var NodeUtils_1 = __webpack_require__(1);
|
||||
|
||||
@@ -3537,7 +3537,7 @@ var StackTraceAnalyzer = function () {
|
||||
exports.StackTraceAnalyzer = StackTraceAnalyzer;
|
||||
|
||||
/***/ },
|
||||
/* 59 */
|
||||
/* 58 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3596,7 +3596,7 @@ var FunctionDeclarationCalleeDataExtractor = function () {
|
||||
exports.FunctionDeclarationCalleeDataExtractor = FunctionDeclarationCalleeDataExtractor;
|
||||
|
||||
/***/ },
|
||||
/* 60 */
|
||||
/* 59 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3658,7 +3658,7 @@ var FunctionExpressionCalleeDataExtractor = function () {
|
||||
exports.FunctionExpressionCalleeDataExtractor = FunctionExpressionCalleeDataExtractor;
|
||||
|
||||
/***/ },
|
||||
/* 61 */
|
||||
/* 60 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3789,7 +3789,7 @@ var ObjectExpressionCalleeDataExtractor = function () {
|
||||
exports.ObjectExpressionCalleeDataExtractor = ObjectExpressionCalleeDataExtractor;
|
||||
|
||||
/***/ },
|
||||
/* 62 */
|
||||
/* 61 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3801,7 +3801,7 @@ function AtobTemplate() {
|
||||
exports.AtobTemplate = AtobTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 63 */
|
||||
/* 62 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3813,7 +3813,7 @@ function ConsoleOutputDisableExpressionTemplate() {
|
||||
exports.ConsoleOutputDisableExpressionTemplate = ConsoleOutputDisableExpressionTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 64 */
|
||||
/* 63 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3825,7 +3825,7 @@ function DebugProtectionFunctionCallTemplate() {
|
||||
exports.DebugProtectionFunctionCallTemplate = DebugProtectionFunctionCallTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 65 */
|
||||
/* 64 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3837,7 +3837,7 @@ function DebugProtectionFunctionIntervalTemplate() {
|
||||
exports.DebugProtectionFunctionIntervalTemplate = DebugProtectionFunctionIntervalTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 66 */
|
||||
/* 65 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3850,7 +3850,7 @@ function DebugProtectionFunctionTemplate() {
|
||||
exports.DebugProtectionFunctionTemplate = DebugProtectionFunctionTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 67 */
|
||||
/* 66 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3863,7 +3863,7 @@ function DomainLockNodeTemplate() {
|
||||
exports.DomainLockNodeTemplate = DomainLockNodeTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 68 */
|
||||
/* 67 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3875,6 +3875,19 @@ function SelfDefendingTemplate() {
|
||||
}
|
||||
exports.SelfDefendingTemplate = SelfDefendingTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 68 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
function SelfDefendingTemplate() {
|
||||
return '\n var func = function(){return \'dev\';};\n \n !{unicodeArrayCallsWrapperName}.flag ? ({unicodeArrayCallsWrapperName}.flag = true, Function(' + Utils_1.Utils.stringToUnicode('return/\\w+ *\\(\\) *{\\w+ *[\'|"].+[\'|"];? *}/') + ')()[\'test\'](func[\'toString\']()) !== true && !{unicodeArrayName}++ ? [][\'filter\'][\'constructor\'](' + Utils_1.Utils.stringToJSFuck('while') + ' + \'(true){}\')() : (value = Function(\'a\', \'b\', \'c\', \'d\', \'return a.call(null, b, c, d)\')({decodeFunctionName}, decodedValues, index, value)) ? [][\'filter\'][\'constructor\'](' + Utils_1.Utils.stringToJSFuck('while') + ' + \'(false){}\')() : [][\'filter\'][\'constructor\'](' + Utils_1.Utils.stringToJSFuck('while') + ' + \'(false){}\')()) : (value = Function(\'a\', \'b\', \'c\', \'d\', \'return a.call(null, b, c, d)\')({decodeFunctionName}, decodedValues, index, value));\n ';
|
||||
}
|
||||
exports.SelfDefendingTemplate = SelfDefendingTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 69 */
|
||||
/***/ function(module, exports) {
|
||||
@@ -3882,15 +3895,25 @@ exports.SelfDefendingTemplate = SelfDefendingTemplate;
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
function UnicodeArrayAtobDecodeNodeTemplate() {
|
||||
return " \n {atobPolyfill}\n \n var decodedValues = {unicodeArrayCallsWrapperName}.data || {};\n \n var {decodeFunctionName} = function (decodedValues, index, value) {\n if (!decodedValues[index]) {\n value = decodeURI(atob(value));\n decodedValues[index] = value;\n } else {\n value = decodedValues[index];\n } \n \n {unicodeArrayCallsWrapperName}.data = decodedValues;\n \n return value;\n }\n \n {code}\n ";
|
||||
}
|
||||
exports.UnicodeArrayAtobDecodeNodeTemplate = UnicodeArrayAtobDecodeNodeTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 70 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
function UnicodeArrayCallsWrapperTemplate() {
|
||||
return "\n var {unicodeArrayCallsWrapperName} = function (index, key) {\n var value = {unicodeArrayName}[parseInt(index, 0x010)]\n \n {decodeNodeTemplate}\n \n return value;\n };\n ";
|
||||
return "\n var {unicodeArrayCallsWrapperName} = function (index, key) {\n var index = parseInt(index, 0x010);\n var value = {unicodeArrayName}[index];\n \n {decodeNodeTemplate}\n \n return value;\n };\n ";
|
||||
}
|
||||
exports.UnicodeArrayCallsWrapperTemplate = UnicodeArrayCallsWrapperTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 70 */,
|
||||
/* 71 */,
|
||||
/* 72 */
|
||||
/* 71 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3902,7 +3925,7 @@ function UnicodeArrayTemplate() {
|
||||
exports.UnicodeArrayTemplate = UnicodeArrayTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 73 */
|
||||
/* 72 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3915,7 +3938,7 @@ function SelfDefendingTemplate() {
|
||||
exports.SelfDefendingTemplate = SelfDefendingTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 74 */
|
||||
/* 73 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
@@ -3927,45 +3950,45 @@ function UnicodeArrayRotateFunctionTemplate() {
|
||||
exports.UnicodeArrayRotateFunctionTemplate = UnicodeArrayRotateFunctionTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 75 */
|
||||
/* 74 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
/***/ },
|
||||
/* 76 */
|
||||
/* 75 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
module.exports = require("chance");
|
||||
|
||||
/***/ },
|
||||
/* 77 */
|
||||
/* 76 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
module.exports = require("class-validator");
|
||||
|
||||
/***/ },
|
||||
/* 78 */
|
||||
/* 77 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
module.exports = require("commander");
|
||||
|
||||
/***/ },
|
||||
/* 79 */
|
||||
/* 78 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ },
|
||||
/* 80 */
|
||||
/* 79 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
module.exports = require("mkdirp");
|
||||
|
||||
/***/ },
|
||||
/* 81 */,
|
||||
/* 82 */
|
||||
/* 80 */,
|
||||
/* 81 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
@@ -3977,31 +4000,6 @@ if (!global._babelPolyfill) {
|
||||
}
|
||||
module.exports = JavaScriptObfuscator_1.JavaScriptObfuscator;
|
||||
|
||||
/***/ },
|
||||
/* 83 */
|
||||
/***/ function(module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
var Utils_1 = __webpack_require__(0);
|
||||
function SelfDefendingTemplate() {
|
||||
return '\n var func = function(){return \'dev\';};\n \n Function(' + Utils_1.Utils.stringToUnicode('return/\\w+ *\\(\\) *{\\w+ *[\'|"].+[\'|"];? *}/') + ')()[\'test\'](func[\'toString\']()) !== true && !{unicodeArrayName}++ ? [][\'filter\'][\'constructor\'](' + Utils_1.Utils.stringToJSFuck('while') + ' + \'(true){}\')() : Function(\'a\', atob(' + Utils_1.Utils.stringToUnicode(Utils_1.Utils.btoa('a.call()')) + '))({forLoopFunctionName}) ? [][\'filter\'][\'constructor\'](' + Utils_1.Utils.stringToJSFuck('while') + ' + \'(false){}\')() : [][\'filter\'][\'constructor\'](' + Utils_1.Utils.stringToJSFuck('while') + ' + \'(false){}\')();\n ';
|
||||
}
|
||||
exports.SelfDefendingTemplate = SelfDefendingTemplate;
|
||||
|
||||
/***/ },
|
||||
/* 84 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
"use strict";
|
||||
"use strict";
|
||||
|
||||
function UnicodeArrayAtobDecodeNodeTemplate() {
|
||||
return "\n var decodedIndices = [];\n \n if (decodedIndices.indexOf(index) === -1) {\n value = atob(value);\n }\n ";
|
||||
}
|
||||
exports.UnicodeArrayAtobDecodeNodeTemplate = UnicodeArrayAtobDecodeNodeTemplate;
|
||||
|
||||
/***/ }
|
||||
/******/ ]);
|
||||
//# sourceMappingURL=index.js.map
|
||||
@@ -12,13 +12,13 @@ import { NO_CUSTOM_NODES_PRESET } from '../../preset-options/NoCustomNodesPreset
|
||||
|
||||
import { AtobTemplate } from '../../templates/custom-nodes/AtobTemplate';
|
||||
import { SelfDefendingTemplate } from '../../templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/SelfDefendingTemplate';
|
||||
import { UnicodeArrayAtobDecodeNodeTemplate } from '../../templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayAtobDecodeNodeTemplate';
|
||||
import { UnicodeArrayCallsWrapperTemplate } from '../../templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayCallsWrapperTemplate';
|
||||
|
||||
import { AbstractCustomNode } from '../AbstractCustomNode';
|
||||
import { JavaScriptObfuscator } from '../../JavaScriptObfuscator';
|
||||
import { NodeUtils } from '../../NodeUtils';
|
||||
import { UnicodeArray } from '../../UnicodeArray';
|
||||
import { UnicodeArrayAtobDecodeNodeTemplate } from '../../templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayAtobDecodeNodeTemplate';
|
||||
|
||||
export class UnicodeArrayCallsWrapper extends AbstractCustomNode {
|
||||
/**
|
||||
@@ -86,27 +86,28 @@ export class UnicodeArrayCallsWrapper extends AbstractCustomNode {
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {any}
|
||||
* @returns {string}
|
||||
*/
|
||||
protected getDecodeUnicodeArrayTemplate (): string {
|
||||
const forLoopFunctionName: string = 'forLoopFunc';
|
||||
const decodeFunctionName: string = 'decodeFunction';
|
||||
|
||||
let code: string;
|
||||
|
||||
if (this.options.selfDefending) {
|
||||
code = SelfDefendingTemplate().formatUnicorn({
|
||||
forLoopFunctionName,
|
||||
decodeFunctionName,
|
||||
unicodeArrayCallsWrapperName: this.unicodeArrayCallsWrapperName,
|
||||
unicodeArrayName: this.unicodeArrayName
|
||||
});
|
||||
} else {
|
||||
code = `${forLoopFunctionName}();`;
|
||||
code = `value = ${decodeFunctionName}(decodedValues, index, value);`;
|
||||
}
|
||||
|
||||
return UnicodeArrayAtobDecodeNodeTemplate().formatUnicorn({
|
||||
atobPolyfill: AtobTemplate(),
|
||||
code,
|
||||
forLoopFunctionName,
|
||||
unicodeArrayName: this.unicodeArrayName
|
||||
decodeFunctionName,
|
||||
unicodeArrayCallsWrapperName: this.unicodeArrayCallsWrapperName
|
||||
})
|
||||
}
|
||||
|
||||
@@ -114,12 +115,14 @@ export class UnicodeArrayCallsWrapper extends AbstractCustomNode {
|
||||
* @returns {ESTree.Node}
|
||||
*/
|
||||
protected getNodeStructure (): ESTree.Node {
|
||||
let decodeNodeTemplate: string = this.options.encodeUnicodeLiterals ? this.getDecodeUnicodeArrayTemplate() : '';
|
||||
const decodeNodeTemplate: string = this.options.encodeUnicodeLiterals ?
|
||||
this.getDecodeUnicodeArrayTemplate() :
|
||||
'';
|
||||
|
||||
return NodeUtils.convertCodeToStructure(
|
||||
JavaScriptObfuscator.obfuscate(
|
||||
UnicodeArrayCallsWrapperTemplate().formatUnicorn({
|
||||
decodeNodeTemplate: decodeNodeTemplate,
|
||||
decodeNodeTemplate,
|
||||
unicodeArrayCallsWrapperName: this.unicodeArrayCallsWrapperName,
|
||||
unicodeArrayName: this.unicodeArrayName
|
||||
}),
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@ import { Utils } from '../../../../Utils';
|
||||
export function SelfDefendingTemplate (): string {
|
||||
return `
|
||||
var func = function(){return 'dev';};
|
||||
|
||||
Function(${Utils.stringToUnicode(`return/\\w+ *\\(\\) *{\\w+ *['|"].+['|"];? *}/`)})()['test'](func['toString']()) !== true && !{unicodeArrayName}++ ? []['filter']['constructor'](${Utils.stringToJSFuck('while')} + '(true){}')() : Function('a', atob(${Utils.stringToUnicode(Utils.btoa('a.call()'))}))({forLoopFunctionName}) ? []['filter']['constructor'](${Utils.stringToJSFuck('while')} + '(false){}')() : []['filter']['constructor'](${Utils.stringToJSFuck('while')} + '(false){}')();
|
||||
|
||||
!{unicodeArrayCallsWrapperName}.flag ? ({unicodeArrayCallsWrapperName}.flag = true, Function(${Utils.stringToUnicode(`return/\\w+ *\\(\\) *{\\w+ *['|"].+['|"];? *}/`)})()['test'](func['toString']()) !== true && !{unicodeArrayName}++ ? []['filter']['constructor'](${Utils.stringToJSFuck('while')} + '(true){}')() : (value = Function('a', 'b', 'c', 'd', 'return a.call(null, b, c, d)')({decodeFunctionName}, decodedValues, index, value)) ? []['filter']['constructor'](${Utils.stringToJSFuck('while')} + '(false){}')() : []['filter']['constructor'](${Utils.stringToJSFuck('while')} + '(false){}')()) : (value = Function('a', 'b', 'c', 'd', 'return a.call(null, b, c, d)')({decodeFunctionName}, decodedValues, index, value));
|
||||
`;
|
||||
}
|
||||
|
||||
+18
-5
@@ -2,11 +2,24 @@
|
||||
* @returns {string}
|
||||
*/
|
||||
export function UnicodeArrayAtobDecodeNodeTemplate (): string {
|
||||
return `
|
||||
var decodedIndices = [];
|
||||
|
||||
if (decodedIndices.indexOf(index) === -1) {
|
||||
value = atob(value);
|
||||
return `
|
||||
{atobPolyfill}
|
||||
|
||||
var decodedValues = {unicodeArrayCallsWrapperName}.data || {};
|
||||
|
||||
var {decodeFunctionName} = function (decodedValues, index, value) {
|
||||
if (!decodedValues[index]) {
|
||||
value = decodeURI(atob(value));
|
||||
decodedValues[index] = value;
|
||||
} else {
|
||||
value = decodedValues[index];
|
||||
}
|
||||
|
||||
{unicodeArrayCallsWrapperName}.data = decodedValues;
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
{code}
|
||||
`;
|
||||
}
|
||||
|
||||
+2
-1
@@ -4,7 +4,8 @@
|
||||
export function UnicodeArrayCallsWrapperTemplate (): string {
|
||||
return `
|
||||
var {unicodeArrayCallsWrapperName} = function (index, key) {
|
||||
var value = {unicodeArrayName}[parseInt(index, 0x010)]
|
||||
var index = parseInt(index, 0x010);
|
||||
var value = {unicodeArrayName}[index];
|
||||
|
||||
{decodeNodeTemplate}
|
||||
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ describe('UnicodeArrayCallsWrapper', () => {
|
||||
|
||||
assert.match(
|
||||
obfuscationResult.getObfuscatedCode(),
|
||||
/var *_0x([a-z0-9]){4,6} *= *_0x([a-z0-9]){4}\[parseInt\(_0x([a-z0-9]){4,6}, *0x10\)\];/
|
||||
/var *_0x([a-z0-9]){4,6} *= *parseInt\(_0x([a-z0-9]){4,6}, *0x10\);/
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
import 'format-unicorn';
|
||||
|
||||
import { AtobTemplate } from '../../../../../src/templates/custom-nodes/AtobTemplate';
|
||||
import { UnicodeArrayAtobDecodeNodeTemplate } from '../../../../../src/templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayAtobDecodeNodeTemplate';
|
||||
import { UnicodeArrayCallsWrapperTemplate } from '../../../../../src/templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayCallsWrapperTemplate';
|
||||
|
||||
import { Utils } from '../../../../../src/Utils';
|
||||
|
||||
const assert: Chai.AssertStatic = require('chai').assert;
|
||||
|
||||
/**
|
||||
* @param templateData
|
||||
* @param unicodeArrayName
|
||||
* @param unicodeArrayCallsWrapperName
|
||||
* @param index
|
||||
* @returns {Function}
|
||||
*/
|
||||
function getFunctionFromTemplate (
|
||||
templateData: any,
|
||||
unicodeArrayName: string,
|
||||
unicodeArrayCallsWrapperName: string,
|
||||
index: string
|
||||
) {
|
||||
let unicodeArrayCallsWrapperTemplate: string = UnicodeArrayCallsWrapperTemplate().formatUnicorn(templateData);
|
||||
|
||||
return Function(`
|
||||
var ${unicodeArrayName} = ['${Utils.btoa('test1')}'];
|
||||
|
||||
${unicodeArrayCallsWrapperTemplate}
|
||||
|
||||
return ${unicodeArrayCallsWrapperName}(${index});
|
||||
`)();
|
||||
}
|
||||
|
||||
describe('UnicodeArrayCallsWrapperNodeTemplate (): string', () => {
|
||||
let decodeFunctionName: string = 'decodeFunction',
|
||||
unicodeArrayName: string = 'unicodeArrayName',
|
||||
unicodeArrayCallsWrapperName: string = 'unicodeArrayCallsWrapperName',
|
||||
atobDecodeNodeTemplate: string = UnicodeArrayAtobDecodeNodeTemplate().formatUnicorn({
|
||||
atobPolyfill: AtobTemplate(),
|
||||
code: `value = ${decodeFunctionName}(decodedValues, index, value);`,
|
||||
decodeFunctionName,
|
||||
unicodeArrayCallsWrapperName
|
||||
});
|
||||
|
||||
it('should correctly returns decoded value with atob encoding', () => {
|
||||
assert.deepEqual(getFunctionFromTemplate({
|
||||
decodeNodeTemplate: atobDecodeNodeTemplate,
|
||||
unicodeArrayCallsWrapperName,
|
||||
unicodeArrayName
|
||||
}, unicodeArrayName, unicodeArrayCallsWrapperName, '0x0'), 'test1');
|
||||
});
|
||||
|
||||
});
|
||||
-41
@@ -1,41 +0,0 @@
|
||||
import 'format-unicorn';
|
||||
|
||||
import { AtobTemplate } from '../../../../../src/templates/custom-nodes/AtobTemplate';
|
||||
import { UnicodeArrayAtobDecodeNodeTemplate } from '../../../../../src/templates/custom-nodes/unicode-array-nodes/unicode-array-calls-wrapper/UnicodeArrayAtobDecodeNodeTemplate';
|
||||
|
||||
import { Utils } from '../../../../../src/Utils';
|
||||
|
||||
const assert: Chai.AssertStatic = require('chai').assert;
|
||||
|
||||
/**
|
||||
* @param templateData
|
||||
* @param unicodeArrayName
|
||||
* @returns {Function}
|
||||
*/
|
||||
function getFunctionFromTemplate (templateData: any, unicodeArrayName: string) {
|
||||
let domainLockTemplate: string = UnicodeArrayAtobDecodeNodeTemplate().formatUnicorn(templateData);
|
||||
|
||||
return Function(`
|
||||
var ${unicodeArrayName} = ['${Utils.btoa('test1')}', '${Utils.btoa('test2')}'];
|
||||
|
||||
${domainLockTemplate}
|
||||
|
||||
return ${unicodeArrayName};
|
||||
`)();
|
||||
}
|
||||
|
||||
describe('UnicodeArrayAtobDecodeNodeTemplate (): string', () => {
|
||||
let forLoopFunctionName: string = 'forLoop',
|
||||
code: string = `${forLoopFunctionName}();`,
|
||||
unicodeArrayName: string = 'unicodeArray';
|
||||
|
||||
it('should correctly decode unicode array items from Base64', () => {
|
||||
assert.deepEqual(getFunctionFromTemplate({
|
||||
atobPolyfill: AtobTemplate(),
|
||||
code,
|
||||
forLoopFunctionName,
|
||||
unicodeArrayName: unicodeArrayName
|
||||
}, unicodeArrayName), ['test1', 'test2']);
|
||||
});
|
||||
|
||||
});
|
||||
+1
-1
@@ -37,7 +37,7 @@ import './functional-tests/node-obfuscators/ObjectExpressionObfuscator.spec';
|
||||
import './functional-tests/node-obfuscators/VariableDeclarationObfuscator.spec';
|
||||
import './functional-tests/stack-trace-analyzer/StackTraceAnalyzer.spec';
|
||||
import './functional-tests/templates/custom-nodes/domain-lock-nodes/DomainLockNodeTemplate.spec';
|
||||
import './functional-tests/templates/custom-nodes/unicode-array-nodes/UnicodeArrayDecodeNodeTemplate.spec';
|
||||
import './functional-tests/templates/custom-nodes/unicode-array-nodes/UnicodeArrayCallsWrapperNodeTemplate.spec';
|
||||
|
||||
/**
|
||||
* Performance tests
|
||||
|
||||
Reference in New Issue
Block a user