Skip to content

Error when obfuscating js code in a vanilla website #9

Description

@pablo-s-dev

game.js:99 Uncaught (in promise) TypeError: _0x8b3302 is not a function
at Object.RyAxy (game.js:99:24)
at beginVideo (game.js:124:343)
at Object.NZUyd (intro.js:1109:24)
at onVidProvided (intro.js:1121:56)
¨

I think the plugin can't handle Optional chaining (?.) correctly, because I just managed to fix this problem by changing

breakCheckingTimeGap?.();

(which I have consoled logged and seen it was null at the time of the error)

to:

if (typeof breakCheckingTimeGap === "function") {
breakCheckingTimeGap();
}

but I am pretty sure just would work, because breakCheckingTimeGap is always either null or a function

if (!breakCheckingTimeGap) {
breakCheckingTimeGap();
}

async function beginVideo(_0x1db133, _0x364696, _0x525395, _0x877b30) {
const _0x4b9ab3 = _0x528806, _0xc1620c = {
'kRhif': function (_0x3e4e01, _0x262cdc) {
return _0x3e4e01 === _0x262cdc;
},
'TXlzH': 'iframe',
'srLoJ': function (_0xbd1c78, _0x11b517, _0x430580) {
return _0xbd1c78(_0x11b517, _0x430580);
},
'hkdlt': _0x4b9ab3(0x237) + _0x4b9ab3(0x1c5) + _0x4b9ab3(0x258) + _0x4b9ab3(0x264) + 'e',
'wcxPt': function (_0x1979b4) {
return _0x1979b4();
},
'ogqmY': function (_0x263d4b, _0x1c0265, _0x331311) {
return _0x263d4b(_0x1c0265, _0x331311);
},
'ToLnB': _0x4b9ab3(0x162),
'dNgzl': function (_0x30d6bf, _0x1e2ca7) {
return _0x30d6bf ?? _0x1e2ca7;
},
'Xlzau': function (_0x1ab485, _0x29d743) {
return _0x1ab485 === _0x29d743;
},
'aLqCX': _0x4b9ab3(0x1b6),
'ZnjXv': _0x4b9ab3(0x232),
'gFDVu': function (_0x20bc4f, _0x5bf478) {
return _0x20bc4f(_0x5bf478);
},
'FooYB': function (_0x46623d, _0x266acf) {
return _0x46623d * _0x266acf;
},
'qTbfz': function (_0x16f99d, _0x5ce821) {
return _0x16f99d / _0x5ce821;
},
'bNXQo': function (_0x41b5a4, _0x268d91) {
return _0x41b5a4 + _0x268d91;
},
'RxCEo': _0x4b9ab3(0x15c)
};
video_id = _0x1db133, video_title = _0x877b30, beginning = !![], cur = -0x1 * -0x1f01 + 0x919 * -0x2 + -0xccf, seekTimerId = null, creatingInputsPromise = null, cur_inputs = [], ja_input[_0x4b9ab3(0x1f3)] = '', inputs_div['innerHTML'] = '', progress_bar['value'] = -0x9ef + 0x16 * -0x1b5 + -0x2f7d * -0x1, _0xc1620c_0x4b9ab3(0x16c), gapEnd = ![], guess = '', _0xc1620c[_0x4b9ab3(0x25b)](setTimeout, () => {
const _0x2433af = _0x4b9ab3;
_0xc1620c[_0x2433af(0x1d8)](document_0x2433af(0x187) + _0x2433af(0x1ef)[_0x2433af(0x10d)], 0x3d5 * -0x5 + 0x3a2 * -0x6 + -0x3 * -0xda7) && _0xc1620c[_0x2433af(0x113)](toast, _0xc1620c[_0x2433af(0x25a)], -0x8d3 + 0x1d1d * 0x1 + -0x892);
}, 0x30b * 0x1 + 0x2 * 0xe51 + -0x17dd), await playerReadyPromise, lang = _0x364696;
const _0x19f157 = document_0x4b9ab3(0x187) + 'ById';
_0x19f157['innerText'] = _0xc1620c'dNgzl';
_0xc1620c_0x4b9ab3(0x1c4) ? (showAns_btn['onclick'] = showAns, showAns_btn[_0x4b9ab3(0x157)] = _0xc1620c['aLqCX']) : (showAns_btn['innerText'] = _0xc1620c['ZnjXv'], showAns_btn[_0x4b9ab3(0x122)] = showWord);
subs = _0xc1620c[_0x4b9ab3(0x233)](improveSubs, _0x525395);
const _0x284f6f = _0xc1620c[_0x4b9ab3(0x1be)](_0xc1620c[_0x4b9ab3(0x106)](_0xc1620c[_0x4b9ab3(0x283)](cur, 0x11fb + 0x13 * 0x7b + -0x1b1b), subs[_0x4b9ab3(0x10d)]), 0x5 * -0x42c + 0x1f5b + -0xd * 0xc7);
progress_container[_0x4b9ab3(0x139)][_0x4b9ab3(0x253)] = _0xc1620c[_0x4b9ab3(0x269)], progress_bar[_0x4b9ab3(0x1f3)] = _0x284f6f, player[_0x4b9ab3(0x11d) + _0x4b9ab3(0x1ed)](_0x1db133, -0x2ce + -0xb * -0xc5 + 0x5a9 * -0x1);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions