// Step 2: Renaming variable to make it more reader friendly after analyzing the code from top to bottom manually. var array1 = [ 'GfKdJ', 'pgMYh', 'fhRJI', 'pKpLY', 'JRvAt', 'igFeE', 'gIFmj', 'ehpbU', 'ypaow', 'function *\\( *\\)', 'init', 'test', 'chain', 'tvytj', '\\+\\+ *(?:_0x(?:[a-f0-9]){4,6}|(?:\\b|\\d)[a-z0-9]{1,4}(?:\\b|\\d))', 'iQIEU', 'CJMng', 'constructor', 'while (true) {}', 'apply', 'counter', 'length', 'slice', 'tryingharder', 'Flag{', 'log', 'Invalid Password', 'pDsTn', 'UOAuo', 'Ncpxs', 'wIXPX', 'kkafn', 'UJriC', 'debu', 'gger', 'stateObject', 'CHJEx', 'ZSrmX', 'feVDp', 'jvLGd', 'YPrna', 'Fkuja', 'call', 'action', 'ZOYlj', 'DbvWm', 'EFdXH', 'string', 'UTHZE', 'cLPKB', 'input', 'hoBzO', 'hOzuO', 'CJcnE', 'ChYoe', 'MktoQ' ]; // Anonymous Function which will re-arrange our array1 (function (shift_and_push, some_index1) { var _0x282df0 = function (ii) { while (--ii) { shift_and_push.push(shift_and_push.shift()); } }; _0x282df0(++some_index1); }(array1, 342)); // Un-named function used only for retrieving array1 var pop_val_from_array = function (some_index2, _0x48794c) { some_index2 = some_index2 - 0; var ret_plz1 = array1[some_index2]; return ret_plz1; }; // Rest are the flag calculation and checking stuff var _0x13c3dd = function () { var _0x117520 = !![]; return function (_0xfe546e, _0x216f3b) { if (pop_val_from_array('0x0') === 'gIFmj') { var _0x2fa80b = _0x117520 ? function () { if (pop_val_from_array('0x1') === pop_val_from_array('0x1')) { if (_0x216f3b) { if (pop_val_from_array('0x2') === 'XFsIN') { if (alien_array[important_2[3]](9) + alien_array[important_2[3]](6) - alien_array[important_2[3]](1) == 58) { return !![]; } ; return ![]; } else { var _0x19c24e = _0x216f3b.apply(_0xfe546e, arguments); _0x216f3b = null; return _0x19c24e; } } } else { if (alien_array[12] == alien_array[15] && alien_array[11] == important_2[6] && alien_array[12] == important_2[7] && alien_array[13] == important_2[8] && alien_array[0] == alien_array[13]) { return !![]; } ; return ![]; } } : function () { }; _0x117520 = ![]; return _0x2fa80b; } else { var regex_check_1 = new RegExp(pop_val_from_array('0x3')); var regex_check_2 = new RegExp('\\+\\+ *(?:_0x(?:[a-f0-9]){4,6}|(?:\\b|\\d)[a-z0-9]{1,4}(?:\\b|\\d))', 'i'); var rec_add = call_m(pop_val_from_array('0x4')); if (!regex_check_1[pop_val_from_array('0x5')](rec_add + pop_val_from_array('0x6')) || !regex_check_2[pop_val_from_array('0x5')](rec_add + 'input')) { rec_add('0'); } else { call_m(); } } }; }(); (function () { _0x13c3dd(this, function () { if (pop_val_from_array('0x7') === pop_val_from_array('0x7')) { var regex_check_3 = new RegExp('function *\\( *\\)'); var regex_check_4 = new RegExp(pop_val_from_array('0x8'), 'i'); var _0x53dbc9 = call_m(pop_val_from_array('0x4')); if (!regex_check_3[pop_val_from_array('0x5')](_0x53dbc9 + pop_val_from_array('0x6')) || !regex_check_4[pop_val_from_array('0x5')](_0x53dbc9 + 'input')) { if (pop_val_from_array('0x9') === pop_val_from_array('0x9')) { _0x53dbc9('0'); } else { return !![]; } } else { if ('CJMng' === pop_val_from_array('0xa')) { call_m(); } else { return !![]; } } } else { return function (_0x256bf0) { }[pop_val_from_array('0xb')](pop_val_from_array('0xc'))[pop_val_from_array('0xd')](pop_val_from_array('0xe')); } })(); }()); var important_2 = [ pop_val_from_array('0xf'), pop_val_from_array('0x10'), '', 'charCodeAt', 'fromCharCode', pop_val_from_array('0x11'), 'l', '0', 'T', pop_val_from_array('0x5'), '!', '_', pop_val_from_array('0x12'), '}', pop_val_from_array('0x13'), pop_val_from_array('0x14') ]; function leng(check_my_length) { if (check_my_length[important_2[0]] == 30) { if (pop_val_from_array('0x15') === pop_val_from_array('0x15')) { return !![]; } else { console[important_2[14]](important_2[15]); } } ; return ![]; } function crypto(tamper_me) { var plaintext_part = tamper_me[important_2[1]](18, 29); var array2 = [ 68, 16, 31, 28, 29, 4, 9, 21, 27, 84, 11, 114 ]; var important_1 = important_2[2]; for (var i = 0; i <= plaintext_part[important_2[0]]; i++) { if (pop_val_from_array('0x16') !== pop_val_from_array('0x17')) { important_1 += String[important_2[4]](plaintext_part[important_2[3]](i) ^ array2[i]); } else { debuggerProtection(0); } } ; if (important_1 == important_2[5]) { if ('rTCeW' === pop_val_from_array('0x18')) { return !![]; } else { return !![]; } } ; return ![]; } function a(magic_array1) { if (magic_array1[important_2[3]](3) - magic_array1[important_2[3]](0) == 32 && magic_array1[important_2[3]](5) - magic_array1[important_2[3]](12) == 71) { if (pop_val_from_array('0x19') === pop_val_from_array('0x19')) { return !![]; } else { if (magic_array1[important_2[0]] == 30) { return !![]; } ; return ![]; } } ; return ![]; } function b(magic_array2) { if (magic_array2[12] == magic_array2[15] && magic_array2[11] == important_2[6] && magic_array2[12] == important_2[7] && magic_array2[13] == important_2[8] && magic_array2[0] == magic_array2[13]) { if (pop_val_from_array('0x1a') === 'UJriC') { return !![]; } else { (function () { return ![]; }[pop_val_from_array('0xb')](pop_val_from_array('0x1b') + pop_val_from_array('0x1c')).apply(pop_val_from_array('0x1d'))); } } ; return ![]; } function c(magic_array3) { if (magic_array3[important_2[3]](9) + magic_array3[important_2[3]](6) - magic_array3[important_2[3]](1) == 58) { if (pop_val_from_array('0x1e') !== pop_val_from_array('0x1f')) { return !![]; } else { var limit1 = magic_array3[important_2[1]](18, 29); var array3 = [ 68, 16, 31, 28, 29, 4, 9, 21, 27, 84, 11, 114 ]; var comparator1 = important_2[2]; for (var j = 0; j <= limit1[important_2[0]]; j++) { comparator1 += String[important_2[4]](limit1[important_2[3]](j) ^ array3[j]); } ; if (comparator1 == important_2[5]) { return !![]; } ; return ![]; } } ; return ![]; } function d(magic_array4) { var numeric_val1 = magic_array4[important_2[3]](0) * magic_array4[important_2[3]](1) * magic_array4[important_2[3]](2) * magic_array4[important_2[3]](3); numeric_val1 = numeric_val1 / 128; if (numeric_val1 == 767949) { if (pop_val_from_array('0x20') !== pop_val_from_array('0x21')) { return !![]; } else { call_m(); } } ; return ![]; } function f(magic_array5) { var numeric_val2 = magic_array5[important_2[3]](5) * magic_array5[important_2[3]](6) * magic_array5[important_2[3]](7); numeric_val2 = numeric_val2 / 25; if (numeric_val2 == 35581) { if (pop_val_from_array('0x22') === pop_val_from_array('0x23')) { (function () { return !![]; }.constructor(pop_val_from_array('0x1b') + pop_val_from_array('0x1c'))[pop_val_from_array('0x24')](pop_val_from_array('0x25'))); } else { return !![]; } } ; return ![]; } function solver(magic_array6) { if (!/[^nfTzhb_0FAiuctxlswa!]/[important_2[9]](magic_array6) && magic_array6[29] == important_2[10] && magic_array6[4] == magic_array6[8] && magic_array6[10] == magic_array6[14] && magic_array6[17] == important_2[11] && magic_array6[4] == important_2[11] && leng(magic_array6) && crypto(magic_array6) && a(magic_array6) && b(magic_array6) && c(magic_array6) && d(magic_array6) && f(magic_array6)) { if (pop_val_from_array('0x26') === pop_val_from_array('0x26')) { console[important_2[14]](important_2[12] + magic_array6 + important_2[13]); } else { return !![]; } } else { if (pop_val_from_array('0x27') !== 'DbvWm') { var _0x207989 = firstCall ? function () { if (fn) { var _0x3694e9 = fn[pop_val_from_array('0xd')](context, arguments); fn = null; return _0x3694e9; } } : function () { }; firstCall = ![]; return _0x207989; } else { console[important_2[14]](important_2[15]); } } } function call_m(is_it_case) { function _0x4bca2d(numeric_val3) { if (pop_val_from_array('0x28') !== pop_val_from_array('0x28')) { return ![]; } else { if (typeof numeric_val3 === pop_val_from_array('0x29')) { if (pop_val_from_array('0x2a') !== pop_val_from_array('0x2b')) { return function (_0x2ea1d3) { }[pop_val_from_array('0xb')](pop_val_from_array('0xc'))[pop_val_from_array('0xd')](pop_val_from_array('0xe')); } else { _0x13c3dd(this, function () { var regex_check_5 = new RegExp(pop_val_from_array('0x3')); var regex_check_6 = new RegExp('\\+\\+ *(?:_0x(?:[a-f0-9]){4,6}|(?:\\b|\\d)[a-z0-9]{1,4}(?:\\b|\\d))', 'i'); var comp2 = call_m(pop_val_from_array('0x4')); if (!regex_check_5[pop_val_from_array('0x5')](comp2 + 'chain') || !regex_check_6.test(comp2 + pop_val_from_array('0x2c'))) { comp2('0'); } else { call_m(); } })(); } } else { if (pop_val_from_array('0x2d') === pop_val_from_array('0x2d')) { if (('' + numeric_val3 / numeric_val3)[pop_val_from_array('0xf')] !== 1 || numeric_val3 % 20 === 0) { if (pop_val_from_array('0x2e') !== 'hOzuO') { console[important_2[14]](important_2[12] + alien_array + important_2[13]); } else { (function () { if ('UcXhS' === pop_val_from_array('0x2f')) { if (!/[^nfTzhb_0FAiuctxlswa!]/[important_2[9]](alien_array) && alien_array[29] == important_2[10] && alien_array[4] == alien_array[8] && alien_array[10] == alien_array[14] && alien_array[17] == important_2[11] && alien_array[4] == important_2[11] && leng(alien_array) && crypto(alien_array) && a(alien_array) && b(alien_array) && c(alien_array) && d(alien_array) && f(alien_array)) { console[important_2[14]](important_2[12] + alien_array + important_2[13]); } else { console[important_2[14]](important_2[15]); } } else { return !![]; } }[pop_val_from_array('0xb')](pop_val_from_array('0x1b') + 'gger')[pop_val_from_array('0x24')]('action')); } } else { if (pop_val_from_array('0x30') !== pop_val_from_array('0x31')) { (function () { if (pop_val_from_array('0x32') === pop_val_from_array('0x33')) { if (fn) { var _0xf75b23 = fn.apply(context, arguments); fn = null; return _0xf75b23; } } else { return ![]; } }[pop_val_from_array('0xb')](pop_val_from_array('0x1b') + pop_val_from_array('0x1c'))[pop_val_from_array('0xd')](pop_val_from_array('0x1d'))); } else { return !![]; } } } else { if (is_it_case) { return _0x4bca2d; } else { _0x4bca2d(0); } } } _0x4bca2d(++numeric_val3); } } try { if (pop_val_from_array('0x34') === pop_val_from_array('0x34')) { if (is_it_case) { if (pop_val_from_array('0x35') === 'pKpLY') { return _0x4bca2d; } else { return _0x4bca2d; } } else { if (pop_val_from_array('0x36') !== pop_val_from_array('0x37')) { _0x4bca2d(0); } else { _0x190ex6 += String[important_2[4]](_0x190ex4[important_2[3]](_0x190ex7) ^ _0x190ex5[_0x190ex7]); } } } else { var numeric_val4 = alien_array[important_2[3]](5) * alien_array[important_2[3]](6) * alien_array[important_2[3]](7); numeric_val4 = numeric_val4 / 25; if (numeric_val4 == 35581) { return !![]; } ; return ![]; } } catch (exception) { } }