Last active
August 29, 2023 09:53
-
-
Save nicoandmee/2175538b38b9f0b5018c4d320bf01b19 to your computer and use it in GitHub Desktop.
cvs browser fingerprinting
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
! function e(t, r, n) { | |
function i(o, s) { | |
if (!r[o]) { | |
if (!t[o]) { | |
var c = "function" == typeof require && require; | |
if (!s && c) return c(o, !0); | |
if (a) return a(o, !0); | |
var d = new Error("Cannot find module '" + o + "'"); | |
throw d.code = "MODULE_NOT_FOUND", d | |
} | |
var u = r[o] = { | |
exports: {} | |
}; | |
t[o][0].call(u.exports, function(e) { | |
var r = t[o][1][e]; | |
return i(r ? r : e) | |
}, u, u.exports, e, t, r, n) | |
} | |
return r[o].exports | |
} | |
for (var a = "function" == typeof require && require, o = 0; o < n.length; o++) i(n[o]); | |
return i | |
}({ | |
1: [function(e, t, r) { | |
var n = e("./sha1"), | |
i = e("./wiring"), | |
a = function(e) { | |
var t = { | |
hashImages: !0 | |
}; | |
this.options = this.extend(e, t), this.nativeForEach = Array.prototype.forEach, this.nativeMap = Array.prototype.map | |
}; | |
a.prototype = { | |
extend: function(e, t) { | |
if (null == e) return t; | |
for (var r in e) null != e[r] && t[r] !== e[r] && (t[r] = e[r]); | |
return t | |
}, | |
addIfDefined: function(e, t, r) { | |
return void 0 !== r && (e[t] = r), e | |
}, | |
interrogate: function(e) { | |
var t = {}; | |
t = this.userAgentKey(t), t = this.languageKey(t), t = this.screenKey(t), t = this.timezoneKey(t), t = this.indexedDbKey(t), t = this.addBehaviorKey(t), t = this.openDatabaseKey(t), t = this.cpuClassKey(t), t = this.platformKey(t), t = this.doNotTrackKey(t), t = this.pluginsKey(t), t = this.canvasKey(t), t = this.webglKey(t), t = this.touchSupportKey(t), t = this.videoKey(t), t = this.audioKey(t), t = this.vendorKey(t), t = this.productKey(t), t = this.productSubKey(t), t = this.browserKey(t), t = this.windowKey(t), this.keys = t, this.parallel([this.fontsKey], e) | |
}, | |
userAgentKey: function(e) { | |
return this.options.excludeUserAgent ? e : (e.userAgent = this.getUserAgent(), e) | |
}, | |
getUserAgent: function() { | |
return window.navigator.userAgent | |
}, | |
languageKey: function(e) { | |
return this.options.excludeLanguage ? e : (e.language = navigator.language, e) | |
}, | |
screenKey: function(e) { | |
return this.options.excludeScreen ? e : (e.screen = this.getScreen(e), e) | |
}, | |
getScreen: function() { | |
var e = {}; | |
return e.width = screen.width, e.height = screen.height, e = this.addIfDefined(e, "availHeight", screen.availHeight), e = this.addIfDefined(e, "availWidth", screen.availWidth), e = this.addIfDefined(e, "pixelDepth", screen.pixelDepth), e = this.addIfDefined(e, "innerWidth", window.innerWidth), e = this.addIfDefined(e, "innerHeight", window.innerHeight), e = this.addIfDefined(e, "outerWidth", window.outerWidth), e = this.addIfDefined(e, "outerHeight", window.outerHeight), e = this.addIfDefined(e, "devicePixelRatio", window.devicePixelRatio) | |
}, | |
timezoneKey: function(e) { | |
return this.options.excludeTimezone ? e : (e.timezone = (new Date).getTimezoneOffset() / -60, e) | |
}, | |
indexedDbKey: function(e) { | |
return this.options.excludeIndexedDB || this.options.excludeIndexedDb ? e : (e.indexedDb = this.hasIndexedDb(), e) | |
}, | |
hasIndexedDb: function() { | |
return !!window.indexedDB | |
}, | |
addBehaviorKey: function(e) { | |
return this.options.excludeAddBehavior ? e : (e.addBehavior = this.hasAddBehavior(), e) | |
}, | |
hasAddBehavior: function() { | |
return !!document.body.addBehavior | |
}, | |
openDatabaseKey: function(e) { | |
return this.options.excludeOpenDatabase ? e : (e.openDatabase = this.hasOpenDatabase(), e) | |
}, | |
hasOpenDatabase: function() { | |
return !!window.openDatabase | |
}, | |
cpuClassKey: function(e) { | |
return this.options.excludeCpuClass ? e : (e.cpuClass = this.getNavigatorCpuClass(), e) | |
}, | |
getNavigatorCpuClass: function() { | |
return navigator.cpuClass ? navigator.cpuClass : "unknown" | |
}, | |
platformKey: function(e) { | |
return this.options.excludePlatform ? e : (e.platform = this.getNavigatorPlatform(), e) | |
}, | |
getNavigatorPlatform: function() { | |
return navigator.platform ? navigator.platform : "unknown" | |
}, | |
doNotTrackKey: function(e) { | |
return this.options.excludeDoNotTrack ? e : (e.doNotTrack = this.getDoNotTrack(), e) | |
}, | |
getDoNotTrack: function() { | |
return navigator.doNotTrack ? navigator.doNotTrack : "unknown" | |
}, | |
pluginsKey: function(e) { | |
return this.options.excludePlugins ? e : (e.plugins = this.isIE() ? this.getIEPlugins() : this.getPlugins(), e) | |
}, | |
getPlugins: function() { | |
for (var e = [], t = 0, r = navigator.plugins.length; r > t; ++t) e.push(navigator.plugins[t]); | |
return e = e.sort(function(e, t) { | |
return e.name > t.name ? 1 : e.name < t.name ? -1 : 0 | |
}), this.map(e, function(e) { | |
var t = this.map(e, function(e) { | |
return [e.type, e.suffixes].join("~") | |
}).join(","); | |
return [e.name, e.description, t].join("::") | |
}, this).join(";") | |
}, | |
getIEPlugins: function() { | |
if (window.ActiveXObject) { | |
var e = ["AcroPDF.PDF", "Adodb.Stream", "AgControl.AgControl", "DevalVRXCtrl.DevalVRXCtrl.1", "MacromediaFlashPaper.MacromediaFlashPaper", "Msxml2.DOMDocument", "Msxml2.XMLHTTP", "PDF.PdfCtrl", "QuickTime.QuickTime", "QuickTimeCheckObject.QuickTimeCheck.1", "RealPlayer", "RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)", "RealVideo.RealVideo(tm) ActiveX Control (32-bit)", "Scripting.Dictionary", "SWCtl.SWCtl", "Shell.UIHelper", "ShockwaveFlash.ShockwaveFlash", "Skype.Detection", "TDCCtl.TDCCtl", "WMPlayer.OCX", "rmocx.RealPlayer G2 Control", "rmocx.RealPlayer G2 Control.1"]; | |
return this.map(e, function(e) { | |
try { | |
return new ActiveXObject(e), e | |
} catch (t) { | |
return null | |
} | |
}).join(";") | |
} | |
return "" | |
}, | |
canvasKey: function(e) { | |
return this.options.excludeCanvas ? void 0 : (e.canvas = this.isCanvasSupported() ? this.getCanvasFp() : "unsupported", e) | |
}, | |
isCanvasSupported: function() { | |
var e = document.createElement("canvas"); | |
return !(!e.getContext || !e.getContext("2d")) | |
}, | |
getCanvasFp: function() { | |
var e = {}, | |
t = document.createElement("canvas"); | |
t.width = 600, t.height = 160, t.style.display = "inline"; | |
var r = t.getContext("2d"); | |
r.rect(1, 1, 11, 11), r.rect(3, 3, 7, 7), e.winding = r.isPointInPath(6, 6, "evenodd") === !1 ? "yes" : "no", e.towebp = !1; | |
try { | |
var i = document.createElement("canvas"); | |
i.width = 1, i.height = 1, e.towebp = 0 === i.toDataURL("image/webp").indexOf("data:image/webp") | |
} catch (a) { | |
e.towebp = "error" | |
} | |
e.blending = function() { | |
var e = document.createElement("canvas").getContext("2d"); | |
try { | |
return e.globalCompositeOperation = "screen", "screen" === e.globalCompositeOperation | |
} catch (t) { | |
return !1 | |
} | |
}(), r.textBaseline = "alphabetic", r.fillStyle = "#f60", r.fillRect(125, 1, 62, 20), r.fillStyle = "#069", r.font = "11pt Arial", r.fillText("Cwm fjordbank glyphs vext quiz,", 2, 15), r.fillStyle = "rgba(102, 204, 0, 0.7)", r.font = "18pt Arial", r.fillText("Cwm fjordbank glyphs vext quiz,", 4, 45); | |
try { | |
r.globalCompositeOperation = "multiply" | |
} catch (a) {} | |
return r.fillStyle = "rgb(255,0,255)", r.beginPath(), r.arc(50, 50, 50, 0, 2 * Math.PI, !0), r.closePath(), r.fill(), r.fillStyle = "rgb(0,255,255)", r.beginPath(), r.arc(100, 50, 50, 0, 2 * Math.PI, !0), r.closePath(), r.fill(), r.fillStyle = "rgb(255,255,0)", r.beginPath(), r.arc(75, 100, 50, 0, 2 * Math.PI, !0), r.closePath(), r.fill(), r.fillStyle = "rgb(255,0,255)", r.arc(75, 75, 75, 0, 2 * Math.PI, !0), r.arc(75, 75, 25, 0, 2 * Math.PI, !0), r.fill("evenodd"), this.options.hashImages ? e.img = n(t.toDataURL()) : e.img = t.toDataURL(), e | |
}, | |
fontsKey: function(e, t, r) { | |
return r.options.excludeFonts ? void t() : void r.getFonts(e, t, r) | |
}, | |
getFonts: function(e, t) { | |
setTimeout(function() { | |
var r = ["monospace", "sans-serif", "serif"], | |
n = "mmmmmmmmlli", | |
a = "72px"; | |
try { | |
if (!document.getElementById("d__fFH")) { | |
var o = document.createElement("div"); | |
o.id = "d__fFH", i.overrideStyle(o, "position", "absolute"), i.overrideStyle(o, "top", "-5000px"), i.overrideStyle(o, "left", "-5000px"), o.innerHTML = '<object id="d_dlg" classid="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" width="0px" height="0px"></object><span id="d__fF" style="font-family:serif;font-size:200px;visibility:hidden"></span>', document.body.appendChild(o) | |
} | |
} catch (s) {} | |
try { | |
var c = document.getElementById("d__fF"); | |
i.overrideStyle(c, "font-size", a), c.innerHTML = n; | |
var d = {}, | |
u = {}; | |
for (var h in r) i.overrideStyle(c, "font-family", r[h]), d[r[h]] = c.offsetWidth, u[r[h]] = c.offsetHeight; | |
for (var l = function(e) { | |
for (var t in r) | |
if (i.overrideStyle(c, "font-family", e + "," + r[t]), c.offsetWidth !== d[r[t]] || c.offsetHeight !== u[r[t]]) return !0; | |
return !1 | |
}, g = ["ARNOPRO", "AgencyFB", "ArabicTypesetting", "ArialUnicodeMS", "AvantGardeBkBT", "BankGothicMdBT", "Batang", "BitstreamVeraSansMono", "Calibri", "Century", "CenturyGothic", "Clarendon", "EUROSTILE", "FranklinGothic", "FuturaBkBT", "FuturaMdBT", "GOTHAM", "GillSans", "HELV", "Haettenschweiler", "HelveticaNeue", "Humanst521BT", "Leelawadee", "LetterGothic", "LevenimMT", "LucidaBright", "LucidaSans", "MSMincho", "MSOutlook", "MSReferenceSpecialty", "MSUIGothic", "MTExtra", "MYRIADPRO", "Marlett", "MeiryoUI", "MicrosoftUighur", "MinionPro", "MonotypeCorsiva", "PMingLiU", "Pristina", "SCRIPTINA", "SegoeUILight", "Serifa", "SimHei", "SmallFonts", "Staccato222BT", "TRAJANPRO", "UniversCE55Medium", "Vrinda", "ZWAdobeF"], f = [], p = 0, m = g.length; m > p; ++p) l(g[p]) && f.push(g[p]); | |
e.fonts = f.join(";") | |
} catch (s) { | |
e.fonts = ";" | |
} | |
t() | |
}, 1) | |
}, | |
videoKey: function(e) { | |
return this.options.excludeVideo ? e : (e.video = this.getVideo(), e) | |
}, | |
getVideo: function() { | |
var e = document.createElement("video"), | |
t = !1; | |
try { | |
(t = !!e.canPlayType) && (t = new Boolean(t), t.ogg = e.canPlayType('video/ogg; codecs="theora"'), t.h264 = e.canPlayType('video/mp4; codecs="avc1.42E01E"'), t.webm = e.canPlayType('video/webm; codecs="vp8, vorbis"')) | |
} catch (r) { | |
return "errored" | |
} | |
return t ? { | |
ogg: t.ogg, | |
h264: t.h264, | |
webm: t.webm | |
} : !1 | |
}, | |
audioKey: function(e) { | |
return this.options.excludeAudio ? e : (e.audio = this.getAudio(), e) | |
}, | |
getAudio: function() { | |
var e = document.createElement("audio"), | |
t = !1; | |
return (t = !!e.canPlayType) && (t = new Boolean(t), t.ogg = e.canPlayType('audio/ogg; codecs="vorbis"') || "nope", t.mp3 = e.canPlayType("audio/mpeg;") || "nope", t.wav = e.canPlayType('audio/wav; codecs="1"') || "nope", t.m4a = e.canPlayType("audio/x-m4a;") || e.canPlayType("audio/aac;") || "nope"), t ? { | |
ogg: t.ogg, | |
mp3: t.mp3, | |
wav: t.wav, | |
m4a: t.m4a | |
} : !1 | |
}, | |
webglKey: function(e) { | |
return this.options.excludeWebGL ? e : (e.webGL = this.getWebglFp(), e) | |
}, | |
getWebglFp: function() { | |
var e = this.getWebglCanvas(); | |
if (!e) return "unsupported"; | |
var t = function(t) { | |
return e.clearColor(0, 0, 0, 1), e.enable(e.DEPTH_TEST), e.depthFunc(e.LEQUAL), e.clear(e.COLOR_BUFFER_BIT | e.DEPTH_BUFFER_BIT), "[" + t[0] + ", " + t[1] + "]" | |
}, | |
r = function(e) { | |
var t, r = e.getExtension("EXT_texture_filter_anisotropic") || e.getExtension("WEBKIT_EXT_texture_filter_anisotropic") || e.getExtension("MOZ_EXT_texture_filter_anisotropic"); | |
return r ? (t = e.getParameter(r.MAX_TEXTURE_MAX_ANISOTROPY_EXT), 0 === t && (t = 2), t) : null | |
}, | |
i = {}, | |
a = "attribute vec2 attrVertex;varying vec2 varyinTexCoordinate;uniform vec2 uniformOffset;void main(){varyinTexCoordinate=attrVertex+uniformOffset;gl_Position=vec4(attrVertex,0,1);}", | |
o = "precision mediump float;varying vec2 varyinTexCoordinate;void main() {gl_FragColor=vec4(varyinTexCoordinate,0,1);}", | |
s = e.createBuffer(); | |
e.bindBuffer(e.ARRAY_BUFFER, s); | |
var c = new Float32Array([-.2, -.9, 0, .4, -.26, 0, 0, .732134444, 0]); | |
e.bufferData(e.ARRAY_BUFFER, c, e.STATIC_DRAW), s.itemSize = 3, s.numItems = 3; | |
var d = e.createProgram(), | |
u = e.createShader(e.VERTEX_SHADER); | |
e.shaderSource(u, a), e.compileShader(u); | |
var h = e.createShader(e.FRAGMENT_SHADER); | |
return e.shaderSource(h, o), e.compileShader(h), e.attachShader(d, u), e.attachShader(d, h), e.linkProgram(d), e.useProgram(d), d.vertexPosAttrib = e.getAttribLocation(d, "attrVertex"), d.offsetUniform = e.getUniformLocation(d, "uniformOffset"), e.enableVertexAttribArray(d.vertexPosArray), e.vertexAttribPointer(d.vertexPosAttrib, s.itemSize, e.FLOAT, !1, 0, 0), e.uniform2f(d.offsetUniform, 1, 1), e.drawArrays(e.TRIANGLE_STRIP, 0, s.numItems), null != e.canvas && (this.options.hashImages === !0 ? i.img = n(e.canvas.toDataURL()) : i.img = e.canvas.toDataURL()), i.extensions = e.getSupportedExtensions().join(";"), i["aliased line width range"] = t(e.getParameter(e.ALIASED_LINE_WIDTH_RANGE)), i["aliased point size range"] = t(e.getParameter(e.ALIASED_POINT_SIZE_RANGE)), i["alpha bits"] = e.getParameter(e.ALPHA_BITS), i.antialiasing = e.getContextAttributes().antialias ? "yes" : "no", i["blue bits"] = e.getParameter(e.BLUE_BITS), i["depth bits"] = e.getParameter(e.DEPTH_BITS), i["green bits"] = e.getParameter(e.GREEN_BITS), i["max anisotropy"] = r(e), i["max combined texture image units"] = e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS), i["max cube map texture size"] = e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE), i["max fragment uniform vectors"] = e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS), i["max render buffer size"] = e.getParameter(e.MAX_RENDERBUFFER_SIZE), i["max texture image units"] = e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS), i["max texture size"] = e.getParameter(e.MAX_TEXTURE_SIZE), i["max varying vectors"] = e.getParameter(e.MAX_VARYING_VECTORS), i["max vertex attribs"] = e.getParameter(e.MAX_VERTEX_ATTRIBS), i["max vertex texture image units"] = e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS), i["max vertex uniform vectors"] = e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS), i["max viewport dims"] = t(e.getParameter(e.MAX_VIEWPORT_DIMS)), i["red bits"] = e.getParameter(e.RED_BITS), i.renderer = e.getParameter(e.RENDERER), i["shading language version"] = e.getParameter(e.SHADING_LANGUAGE_VERSION), i["stencil bits"] = e.getParameter(e.STENCIL_BITS), i.vendor = e.getParameter(e.VENDOR), i.version = e.getParameter(e.VERSION), e.getShaderPrecisionFormat ? (i["vertex shader high float precision"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.HIGH_FLOAT).precision, i["vertex shader high float precision rangeMin"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.HIGH_FLOAT).rangeMin, i["vertex shader high float precision rangeMax"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.HIGH_FLOAT).rangeMax, i["vertex shader medium float precision"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_FLOAT).precision, i["vertex shader medium float precision rangeMin"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_FLOAT).rangeMin, i["vertex shader medium float precision rangeMax"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_FLOAT).rangeMax, i["vertex shader low float precision"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.LOW_FLOAT).precision, i["vertex shader low float precision rangeMin"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.LOW_FLOAT).rangeMin, i["vertex shader low float precision rangeMax"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.LOW_FLOAT).rangeMax, i["fragment shader high float precision"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.HIGH_FLOAT).precision, i["fragment shader high float precision rangeMin"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.HIGH_FLOAT).rangeMin, i["fragment shader high float precision rangeMax"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.HIGH_FLOAT).rangeMax, i["fragment shader medium float precision"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_FLOAT).precision, i["fragment shader medium float precision rangeMin"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_FLOAT).rangeMin, i["fragment shader medium float precision rangeMax"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_FLOAT).rangeMax, i["fragment shader low float precision"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.LOW_FLOAT).precision, i["fragment shader low float precision rangeMin"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.LOW_FLOAT).rangeMin, i["fragment shader low float precision rangeMax"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.LOW_FLOAT).rangeMax, i["vertex shader high int precision"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.HIGH_INT).precision, i["vertex shader high int precision rangeMin"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.HIGH_INT).rangeMin, i["vertex shader high int precision rangeMax"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.HIGH_INT).rangeMax, i["vertex shader medium int precision"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_INT).precision, i["vertex shader medium int precision rangeMin"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_INT).rangeMin, i["vertex shader medium int precision rangeMax"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_INT).rangeMax, i["vertex shader low int precision"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.LOW_INT).precision, i["vertex shader low int precision rangeMin"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.LOW_INT).rangeMin, i["vertex shader low int precision rangeMax"] = e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.LOW_INT).rangeMax, i["fragment shader high int precision"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.HIGH_INT).precision, i["fragment shader high int precision rangeMin"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.HIGH_INT).rangeMin, i["fragment shader high int precision rangeMax"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.HIGH_INT).rangeMax, i["fragment shader medium int precision"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_INT).precision, i["fragment shader medium int precision rangeMin"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_INT).rangeMin, i["fragment shader medium int precision rangeMax"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_INT).rangeMax, i["fragment shader low int precision"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.LOW_INT).precision, i["fragment shader low int precision rangeMin"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.LOW_INT).rangeMin, i["fragment shader low int precision rangeMax"] = e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.LOW_INT).rangeMax, i) : i | |
}, | |
touchSupportKey: function(e) { | |
return this.options.excludeTouchSupport ? e : (e.touch = this.getTouchSupport(), e) | |
}, | |
getTouchSupport: function() { | |
var e = 0, | |
t = !1; | |
"undefined" != typeof navigator.maxTouchPoints ? e = navigator.maxTouchPoints : "undefined" != typeof navigator.msMaxTouchPoints && (e = navigator.msMaxTouchPoints); | |
try { | |
document.createEvent("TouchEvent"), t = !0 | |
} catch (r) { | |
t = !1 | |
} | |
var n = "ontouchstart" in window; | |
return { | |
maxTouchPoints: e, | |
touchEvent: t, | |
touchStart: n | |
} | |
}, | |
getWebglCanvas: function() { | |
var e = document.createElement("canvas"), | |
t = null; | |
try { | |
t = e.getContext("webgl") || e.getContext("experimental-webgl") | |
} catch (r) { | |
return null | |
} | |
return t || (t = null), t | |
}, | |
vendorKey: function(e) { | |
return this.options.excludeVendor ? e : (e.vendor = this.getVendor(), e) | |
}, | |
getVendor: function() { | |
return window.navigator.vendor | |
}, | |
productKey: function(e) { | |
return this.options.excludeProduct ? e : (e.product = this.getProduct(), e) | |
}, | |
getProduct: function() { | |
return window.navigator.product | |
}, | |
productSubKey: function(e) { | |
return this.options.excludeProductSub ? e : (e.productSub = this.getProductSub(), e) | |
}, | |
getProductSub: function() { | |
return window.navigator.productSub | |
}, | |
browserKey: function(e) { | |
return this.options.excludeBrowser ? e : (e.browser = this.getBrowser(), e) | |
}, | |
getBrowser: function() { | |
return { | |
ie: this.isIE(), | |
chrome: this.isChrome(), | |
webdriver: this.isWebdriver() | |
} | |
}, | |
isIE: function() { | |
return "Microsoft Internet Explorer" === navigator.appName ? !0 : !("Netscape" !== navigator.appName || !/Trident/.test(navigator.userAgent)) | |
}, | |
isChrome: function() { | |
return "undefined" != typeof window.chrome | |
}, | |
isWebdriver: function() { | |
return !!navigator.webdriver | |
}, | |
windowKey: function(e) { | |
return this.options.excludeWindow ? e : (e.window = this.getWindow(), e) | |
}, | |
getWindow: function() { | |
var e = {}; | |
return e = this.getHistoryLength(e), e = this.getHardwareConcurrency(e), e = this.isIFrame(e) | |
}, | |
getHistoryLength: function(e) { | |
return this.addIfDefined(e, "historyLength", window.history.length) | |
}, | |
getHardwareConcurrency: function(e) { | |
return this.addIfDefined(e, "hardwareConcurrency", navigator.hardwareConcurrency) | |
}, | |
isIFrame: function(e) { | |
return e.iframe = window.self !== window.top, e | |
}, | |
parallel: function(e, t) { | |
if (e.constructor != Array || 0 === e.length) return void t(this.keys); | |
var r = e.length, | |
n = this; | |
this.each(e, function(e) { | |
e(n.keys, function() { | |
r -= 1, 0 === r && t(n.keys) | |
}, n) | |
}) | |
}, | |
map: function(e, t, r) { | |
var n = []; | |
return null == e ? n : this.nativeMap && e.map === this.nativeMap ? e.map(t, r) : (this.each(e, function(e, i, a) { | |
n[n.length] = t.call(r, e, i, a) | |
}), n) | |
}, | |
each: function(e, t, r) { | |
if (null !== e) | |
if (this.nativeForEach && e.forEach === this.nativeForEach) e.forEach(t, r); | |
else if (e.length === +e.length) { | |
for (var n = 0, i = e.length; i > n; n++) | |
if (t.call(r, e[n], n, e) === {}) return | |
} else | |
for (var a in e) | |
if (e.hasOwnProperty(a) && t.call(r, e[a], a, e) === {}) return | |
} | |
}, t.exports = a | |
}, { | |
"./sha1": 5, | |
"./wiring": 7 | |
}], | |
2: [function(e, t, r) { | |
var n = function() {}, | |
i = e("./wiring"); | |
n.prototype = { | |
get: function() { | |
if (this.alreadySent) return null; | |
var e = {}; | |
try { | |
e.cookies = navigator.cookieEnabled ? 1 : 0 | |
} catch (t) { | |
e.cookies = 0 | |
} | |
try { | |
e.setTimeout = setTimeout.toString().replace(/\s/g, "") === "function setTimeout() { [native code] }".replace(/\s/g, "") ? 0 : 1 | |
} catch (t) { | |
e.setTimeout = 0 | |
} | |
try { | |
e.setInterval = setInterval.toString().replace(/\s/g, "") === "function setInterval() { [native code] }".replace(/\s/g, "") ? 0 : 1 | |
} catch (t) { | |
e.setInterval = 0 | |
} | |
try { | |
e.appName = navigator.appName | |
} catch (t) { | |
e.appName = 0 | |
} | |
try { | |
e.platform = navigator.platform | |
} catch (t) { | |
e.platform = 0 | |
} | |
try { | |
e.syslang = navigator.systemLanguage ? navigator.systemLanguage : navigator.language | |
} catch (t) { | |
e.syslang = "" | |
} | |
try { | |
e.userlang = navigator.userLanguage ? navigator.userLanguage : navigator.language | |
} catch (t) { | |
e.userlang = "" | |
} | |
try { | |
e.cpu = navigator.oscpu || navigator.cpuClass || "" | |
} catch (t) { | |
e.cpu = "" | |
} | |
try { | |
e.productSub = navigator.productSub ? navigator.productSub : 0 | |
} catch (t) { | |
e.productSub = 0 | |
} | |
e.plugins = [], e.mimeTypes = [], e.screen = {}, e.fonts = []; | |
try { | |
if (navigator.plugins) | |
for (var r in navigator.plugins) "object" == typeof navigator.plugins[r] && e.plugins.push(navigator.plugins[r].name + " " + (navigator.plugins[r].version ? navigator.plugins[r].version : "")) | |
} catch (t) {} | |
try { | |
if (navigator.mimeTypes) | |
for (var r in navigator.mimeTypes) "object" == typeof navigator.mimeTypes[r] && e.mimeTypes.push(navigator.mimeTypes[r].description + " " + navigator.mimeTypes[r].type) | |
} catch (t) {} | |
try { | |
screen && (e.screen.width = screen.width, e.screen.height = screen.height, e.screen.colorDepth = screen.colorDepth) | |
} catch (t) {} | |
try { | |
if (!document.getElementById("d__fFH")) { | |
var n = document.createElement("DIV"); | |
n.id = "d__fFH", i.overrideStyle(n, "position", "absolute"), i.overrideStyle(n, "top", "-5000px"), i.overrideStyle(n, "left", "-5000px"), n.innerHTML = '<OBJECT id="d_dlg" CLASSID="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" width="0px" height="0px"></OBJECT><SPAN id="d__fF" style="font-family:serif;font-size:200px;visibility:hidden"></SPAN>', document.body.appendChild(n) | |
} | |
} catch (t) {} | |
try { | |
var a = document.getElementById("d_dlg"); | |
if (a && a.fonts) { | |
e.fonts.push("dlg"); | |
for (var r = 1; r <= a.fonts.count; r++) e.fonts.push(a.fonts(r)) | |
} else { | |
var o = document.getElementById("d__fF"), | |
s = ["\x73\x65\x72\x69\x66", "\x43\x61\x6C\x69\x62\x72\x69", "\x43\x61\x6D\x62\x72\x69\x61", "\x48\x6F\x65\x66\x6C\x65\x72\x20\x54\x65\x78\x74", "\x55\x74\x6F\x70\x69\x61", "\x4C\x69\x62\x65\x72\x61\x74\x69\x6F\x6E\x20\x53\x65\x72\x69\x66", "\x4E\x69\x6D\x62\x75\x73\x20\x52\x6F\x6D\x61\x6E\x20\x4E\x6F\x39\x20\x4C", "\x54\x69\x6D\x65\x73", "\x4D\x6F\x6E\x61\x63\x6F", "\x54\x65\x72\x6D\x69\x6E\x61\x6C", "\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65", "\x43\x6F\x6E\x73\x74\x61\x6E\x74\x69\x61", "\x4C\x75\x63\x69\x64\x61\x20\x42\x72\x69\x67\x68\x74", "\x44\x65\x6A\x61\x56\x75\x20\x53\x65\x72\x69\x66", "\x42\x69\x74\x73\x74\x72\x65\x61\x6D\x20\x56\x65\x72\x61\x20\x53\x65\x72\x69\x66", "\x47\x65\x6F\x72\x67\x69\x61", "\x53\x65\x67\x6F\x65\x20\x55\x49", "\x43\x61\x6E\x64\x61\x72\x61", "\x42\x69\x74\x73\x74\x72\x65\x61\x6D\x20\x56\x65\x72\x61\x20\x53\x61\x6E\x73", "\x44\x65\x6A\x61\x56\x75\x20\x53\x61\x6E\x73", "\x54\x72\x65\x62\x75\x63\x68\x65\x74\x20\x4D\x53", "\x56\x65\x72\x64\x61\x6E\x61", "\x43\x6F\x6E\x73\x6F\x6C\x61\x73", "\x41\x6E\x64\x61\x6C\x65\x20\x4D\x6F\x6E\x6F", "\x4C\x75\x63\x69\x64\x61\x20\x43\x6F\x6E\x73\x6F\x6C\x65", "\x4C\x75\x63\x69\x64\x61\x20\x53\x61\x6E\x73\x20\x54\x79\x70\x65\x77\x72\x69\x74\x65\x72", "\x44\x65\x6A\x61\x56\x75\x20\x53\x61\x6E\x73\x20\x4D\x6F\x6E\x6F", "\x42\x69\x74\x73\x74\x72\x65\x61\x6D\x20\x56\x65\x72\x61\x20\x53\x61\x6E\x73\x20\x4D\x6F\x6E\x6F", "\x4C\x69\x62\x65\x72\x61\x74\x69\x6F\x6E\x20\x4D\x6F\x6E\x6F", "\x4E\x69\x6D\x62\x75\x73\x20\x4D\x6F\x6E\x6F\x20\x4C", "\x4D\x6F\x6E\x61\x63\x6F", "\x43\x6F\x75\x72\x69\x65\x72\x20\x4E\x65\x77", "\x43\x6F\x75\x72\x69\x65\x72"]; | |
o.innerHTML = "The quick brown fox jumps over the lazy dog.", i.overrideStyle(o, "font-family", s[0]); | |
for (var c = o.offsetWidth, r = 1; r < s.length; r++) i.overrideStyle(o, "font-family", '"' + s[r] + '",' + s[0]), c != o.offsetWidth && e.fonts.push(s[r]) | |
} | |
} catch (t) {} | |
return e | |
} | |
}, t.exports = n | |
}, { | |
"./wiring": 7 | |
}], | |
3: [function(e, t, r) { | |
var n = e("./legacy"), | |
i = e("./stringify"), | |
a = e("./xhr"), | |
o = e("./miner"), | |
s = e("./interrogator"), | |
c = e("./wiring"); | |
FingerprintWrapper = function(e) { | |
var t = null, | |
r = new n; | |
c.rebuildXMLHttpRequest(e.ajax_header), c.fetchAjaxHeaders(e); | |
var d = function(n) { | |
if (!t) { | |
t = n ? n.type : "manual/other"; | |
var d = function(t) { | |
var r = a(); | |
if (r) { | |
var n = encodeURIComponent(i(t, !0).replace(/[\s]+/g, "")); | |
r.onreadystatechange = function() { | |
if (4 == r.readyState && 200 == r.status) { | |
h("DistilPostResponse"); | |
try { | |
var e = r.getResponseHeader("X-UID") | |
} catch (t) {} | |
if (document.getElementById("distilIdentificationBlock")) { | |
var n = encodeURIComponent(document.location.pathname + document.location.search), | |
i = "/distil_identify_cookie.html?httpReferrer=" + n; | |
e && (i = i + "&uid=" + e), document.location.hash && (i += document.location.hash), document.location.replace(i) | |
} else if (document.getElementById("distil_ident_block")) { | |
var a = "d_ref=" + document.location.pathname.replace(/&/, "%26"); | |
a += "&qs=" + document.location.search + document.location.hash, e && (a = "uid=" + e + "&" + a), document.location.replace("/distil_identify_cookie.html?" + a) | |
} else(document.getElementById("distil_ident_block_POST") || document.getElementById("distilIdentificationBlockPOST")) && (c.isSafariOrIOS() ? window.history.go(-1) : window.location.reload()) | |
} | |
}, r.open("POST", e.path, !0), h("DistilPostSent"), r.send("p=" + n) | |
} | |
}, | |
u = function(e, t) { | |
for (var r = {}, n = e.length, i = 0, a = e.length; a > i; ++i) e[i](function(e) { | |
for (var i in e) e.hasOwnProperty(i) && (r[i] = e[i]); | |
n -= 1, 0 === n && t(r) | |
}) | |
}; | |
u([function(e) { | |
setTimeout(function() { | |
function t(e) { | |
for (var t = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", r = "", n = 0; e > n; ++n) r += t.substr(Math.floor(Math.random() * t.length), 1); | |
return r | |
} | |
h("DistilProofOfWorkStart"); | |
var r = new o, | |
n = (new Date).getTime() + ":" + t(20); | |
r.mine(n, 8, function(t) { | |
h("DistilProofOfWorkStop"), e({ | |
proof: t | |
}) | |
}) | |
}, 1) | |
}, function(e) { | |
setTimeout(function() { | |
h("DistilFP2Start"); | |
var t = new s; | |
t.interrogate(function(t) { | |
h("DistilFP2End"), e({ | |
fp2: t | |
}) | |
}) | |
}, 1) | |
}, function(e) { | |
setTimeout(function() { | |
setTimeout(function() { | |
h("DistilLegacyStart"); | |
var t = r.get(); | |
h("DistilLegacyEnd"), e(t) | |
}, 1) | |
}, 1) | |
}], function(e) { | |
d(e) | |
}) | |
} | |
}, | |
u = !1, | |
h = function(e) {}, | |
l = document.getElementById("d__inj"); | |
l && l.className && (l.className.indexOf("delayed") > -1 && (u = !0), l.className.indexOf("perfmarks") > -1 && void 0 != performance && void 0 != performance.mark && (h = function(e) { | |
performance.mark(e) | |
})), u ? window.document.readyState && "complete" == window.document.readyState ? d() : window.addEventListener ? window.addEventListener("load", d, !1) : window.document.attachEvent && window.document.attachEvent("onload", d) : window.document.readyState && "loading" == window.document.readyState ? d() : window.addEventListener ? (window.addEventListener("DOMContentLoaded", d, !1), window.addEventListener("load", d, !1)) : window.document.attachEvent && (window.document.attachEvent("onreadystatechange", d), window.document.attachEvent("onload", d)) | |
}, FingerprintWrapper({ | |
path: "/tnadstlinj.js?PID=0B459DF1-2695-3173-882B-64908F679262", | |
ajax_header: "xebztatfusvxtdxdzzerd", | |
interval: 27e4 | |
}) | |
}, { | |
"./interrogator": 1, | |
"./legacy": 2, | |
"./miner": 4, | |
"./stringify": 6, | |
"./wiring": 7, | |
"./xhr": 8 | |
}], | |
4: [function(e, t, r) { | |
var n = e("./sha1.js"), | |
i = function(e) { | |
var t = {}; | |
this.options = this.extend(e, t) | |
}; | |
i.prototype = { | |
extend: function(e, t) { | |
if (null == e) return t; | |
for (var r in e) null != e[r] && t[r] !== e[r] && (t[r] = e[r]); | |
return t | |
}, | |
mine: function(e, t, r) { | |
for (var i = 0, a = Math.pow(2, 32 - t);;) { | |
var o = i.toString(16) + ":" + e; | |
i++; | |
var s = n(o); | |
if (parseInt(s.substr(0, 8), 16) < a) return void r(o) | |
} | |
} | |
}, t.exports = i | |
}, { | |
"./sha1.js": 5 | |
}], | |
5: [function(e, t, r) { | |
"use strict"; | |
var n = {}; | |
n.hash = function(e) { | |
e = e.utf8Encode(); | |
var t = [1518500249, 1859775393, 2400959708, 3395469782]; | |
e += String.fromCharCode(128); | |
for (var r = e.length / 4 + 2, i = Math.ceil(r / 16), a = new Array(i), o = 0; i > o; o++) { | |
a[o] = new Array(16); | |
for (var s = 0; 16 > s; s++) a[o][s] = e.charCodeAt(64 * o + 4 * s) << 24 | e.charCodeAt(64 * o + 4 * s + 1) << 16 | e.charCodeAt(64 * o + 4 * s + 2) << 8 | e.charCodeAt(64 * o + 4 * s + 3) | |
} | |
a[i - 1][14] = 8 * (e.length - 1) / Math.pow(2, 32), a[i - 1][14] = Math.floor(a[i - 1][14]), a[i - 1][15] = 8 * (e.length - 1) & 4294967295; | |
for (var c, d, u, h, l, g = 1732584193, f = 4023233417, p = 2562383102, m = 271733878, v = 3285377520, y = new Array(80), o = 0; i > o; o++) { | |
for (var E = 0; 16 > E; E++) y[E] = a[o][E]; | |
for (var E = 16; 80 > E; E++) y[E] = n.ROTL(y[E - 3] ^ y[E - 8] ^ y[E - 14] ^ y[E - 16], 1); | |
c = g, d = f, u = p, h = m, l = v; | |
for (var E = 0; 80 > E; E++) { | |
var S = Math.floor(E / 20), | |
T = n.ROTL(c, 5) + n.f(S, d, u, h) + l + t[S] + y[E] & 4294967295; | |
l = h, h = u, u = n.ROTL(d, 30), d = c, c = T | |
} | |
g = g + c & 4294967295, f = f + d & 4294967295, p = p + u & 4294967295, m = m + h & 4294967295, v = v + l & 4294967295 | |
} | |
return n.toHexStr(g) + n.toHexStr(f) + n.toHexStr(p) + n.toHexStr(m) + n.toHexStr(v) | |
}, n.f = function(e, t, r, n) { | |
switch (e) { | |
case 0: | |
return t & r ^ ~t & n; | |
case 1: | |
return t ^ r ^ n; | |
case 2: | |
return t & r ^ t & n ^ r & n; | |
case 3: | |
return t ^ r ^ n | |
} | |
}, n.ROTL = function(e, t) { | |
return e << t | e >>> 32 - t | |
}, n.toHexStr = function(e) { | |
for (var t, r = "", n = 7; n >= 0; n--) t = e >>> 4 * n & 15, r += t.toString(16); | |
return r | |
}, "undefined" == typeof String.prototype.utf8Encode && (String.prototype.utf8Encode = function() { | |
return unescape(encodeURIComponent(this)) | |
}), "undefined" == typeof String.prototype.utf8Decode && (String.prototype.utf8Decode = function() { | |
try { | |
return decodeURIComponent(escape(this)) | |
} catch (e) { | |
return this | |
} | |
}), "undefined" != typeof t && t.exports && (t.exports = n.hash) | |
}, {}], | |
6: [function(e, t, r) { | |
function n(e) { | |
return c.lastIndex = 0, '"' + (c.test(e) ? e.replace(c, s) : e) + '"' | |
} | |
function i(e, t) { | |
for (var r = "", n = 0; e > n; ++n) r += "0"; | |
return (r + (t || 0)).slice(-e) | |
} | |
function a(e, t) { | |
if (void 0 == e) return "null"; | |
var r = Object.prototype.toString, | |
i = typeof e, | |
o = void 0; | |
"object" == i && (o = r.call(e)); | |
var s = "[object Boolean]", | |
c = "[object Number]", | |
d = "[object String]", | |
u = "[object Array]"; | |
switch (o || i) { | |
case "boolean": | |
case s: | |
return "" + e; | |
case "number": | |
case c: | |
return e > -1 / 0 && 1 / 0 > e ? "" + e : "null"; | |
case "string": | |
case d: | |
return n("" + e) | |
} | |
if ("object" == typeof e) { | |
if (o != u || t) { | |
var h = "{"; | |
for (var l in e) "function" != typeof e[l] && (h += '"' + l + '":' + a(e[l], t) + ","); | |
return 1 == h.length ? "{}" : h.substring(0, h.length - 1) + "}" | |
} | |
for (var g = [], f = 0, p = e.length; p > f; ++f) el = a(e[f], t), g.push(void 0 === el ? "null" : el); | |
return "[" + g.join(",") + "]" | |
} | |
return '""' | |
} | |
var o = "\\u00", | |
s = function(e) { | |
var t = e.charCodeAt(0), | |
r = d[t]; | |
return r ? r : o + i(2, t.toString(16)) | |
}, | |
c = /[\x00-\x1f\x22\x5c]/g, | |
d = { | |
92: "\\\\", | |
34: '\\"', | |
8: "\\b", | |
12: "\\f", | |
10: "\\n", | |
13: "\\r", | |
9: "\\t" | |
}; | |
t.exports = a | |
}, {}], | |
7: [function(e, t, r) { | |
var n = e("./xhr"), | |
i = function(e) { | |
var t = !1, | |
r = function() { | |
try { | |
var r = n(); | |
r.dH && (r.onreadystatechange = function() { | |
try { | |
4 == r.readyState && 200 == r.status ? (r.getResponseHeader("X-JU") && (e.path = r.getResponseHeader("X-JU"), XMLHttpRequest.prototype.dU = r.getResponseHeader("X-JU")), r.getResponseHeader("X-AH") && (XMLHttpRequest.prototype.dH = r.getResponseHeader("X-AH"))) : 4 == r.readyState && 200 != r.status && clearInterval(t) | |
} catch (n) {} | |
}, r.open("HEAD", e.path, !0), r.send()) | |
} catch (i) {} | |
}; | |
t = setInterval(r, e.interval) | |
}, | |
a = function(e) { | |
try { | |
window.XMLHttpRequest && !window.XMLHttpRequest.prototype.dH && (XMLHttpRequest.prototype.dH = e, function() { | |
var e = XMLHttpRequest.prototype; | |
e.dOpen = e.open, e.open = function(t, r, n, i, a) { | |
e.dOpen.apply(this, arguments); | |
var o = new RegExp("^(((https?:)?//" + location.hostname + "([/]|$))|(/[^/]))"); | |
(r.match(o) || !r.match(/^https?:\/\//) && r.match(/^[a-zA-Z0-9\-_\.]/) && -1 == r.indexOf("://")) && e.setRequestHeader.apply(this, ["X-Distil-Ajax", e.dH]) | |
}, XMLHttpRequest.prototype.open = e.open | |
}()) | |
} catch (t) {} | |
}, | |
o = function() { | |
return !!navigator.userAgent.match(/Version\/[\d\.]+.*Safari|iPhone|iPad|iPod/) && !window.MSStream | |
}, | |
s = function(e, t, r) { | |
if (e.style.setProperty) e.style.setProperty(t, r, "important"); | |
else { | |
var n = t.replace(/\-([a-z])/, function(e, t, r) { | |
return t.toUpperCase() | |
}); | |
e.style[n] = r | |
} | |
}; | |
t.exports = { | |
fetchAjaxHeaders: i, | |
isSafariOrIOS: o, | |
rebuildXMLHttpRequest: a, | |
overrideStyle: s | |
} | |
}, { | |
"./xhr": 8 | |
}], | |
8: [function(e, t, r) { | |
t.exports = function() { | |
try { | |
var e; | |
if (window.XMLHttpRequest) e = new XMLHttpRequest; | |
else if ("undefined" == typeof XMLHttpRequest) try { | |
e = new ActiveXObject("Msxml2.XMLHTTP.6.0") | |
} catch (t) { | |
try { | |
e = new ActiveXObject("Msxml2.XMLHTTP.3.0") | |
} catch (t) { | |
try { | |
e = new ActiveXObject("Microsoft.XMLHTTP") | |
} catch (t) { | |
return 0 | |
} | |
} | |
} | |
} catch (t) { | |
return 0 | |
} | |
return e | |
} | |
}, {}] | |
}, {}, [3]); | |
; | |
var _0x174c = ["/tnadstlinj.js?PID=0B459DF1-2695-3173-882B-64908F679262", "\x49\x6E\x74\x65\x72\x6E\x65\x74\x20\x45\x78\x70\x6C\x6F\x72\x65\x72", "\x46\x69\x72\x65\x66\x6F\x78", "\x43\x68\x72\x6F\x6D\x65", "\x43\x68\x72\x6F\x6D\x69\x75\x6D", "\x53\x61\x66\x61\x72\x69", "\x4D\x61\x63\x49\x6E\x74\x65\x6C", "\x57\x69\x6E\x33\x32", "\x57\x69\x6E\x36\x34", "\x57\x69\x6E\x64\x6F\x77\x73", "\x57\x69\x6E\x4E\x54", "\x4F\x53\x58", "\x4C\x69\x6E\x75\x78", "\x65\x76\x61\x6C", "\x4F", "\x53\x6E\x6F\x77\x20\x4C\x65\x6F\x70\x61\x72\x64", "\x4C\x69\x6F\x6E\x2F\x4D\x6F\x75\x6E\x74\x61\x69\x6E\x20\x4C\x69\x6F\x6E", "\x59\x6F\x73\x65\x6D\x69\x74\x65", "\x4D\x61\x76\x65\x72\x69\x63\x6B\x73", "\x64", "\x58\x4D\x4C\x48\x74\x74\x70\x52\x65\x71\x75\x65\x73\x74", "\x75\x6E\x64\x65\x66\x69\x6E\x65\x64", "\x4D\x73\x78\x6D\x6C\x32\x2E\x58\x4D\x4C\x48\x54\x54\x50\x2E\x36\x2E\x30", "\x4D\x73\x78\x6D\x6C\x32\x2E\x58\x4D\x4C\x48\x54\x54\x50\x2E\x33\x2E\x30", "\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x58\x4D\x4C\x48\x54\x54\x50", "\x6C\x65\x6E\x67\x74\x68", "\x73\x75\x62\x73\x74\x72\x69\x6E\x67", "\x73\x6C\x69\x63\x65", "\x6E", "\x73\x75\x62\x73\x74\x72", "", "\x6E\x61\x76\x69\x67\x61\x74\x6F\x72", "\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65", "\x61", "\x68", "\x72\x65\x70\x6C\x61\x63\x65", "\x74", "\x24\x32\x24\x31", "\x70\x6C\x61\x74\x66\x6F\x72\x6D", "\x73\x63\x72\x69\x70\x74", "\x6F\x62\x6A\x65\x63\x74", "\x73\x63\x72\x65\x65\x6E", "\x66\x6F\x6E\x74\x73", "\x63\x70\x75", "\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72", "\x5F\x5F", "\x5F", "\x75\x61\x74\x65", "\x5F\x5F\x77\x65\x62", "\x5F\x5F\x73", "\x5F\x5F\x66\x78", "\x5F\x75\x6E\x77\x72\x61\x70\x70\x65\x64", "\x5F\x73\x63\x72\x69\x70\x74\x5F", "\x74\x69\x6F\x6E", "\x5F\x66\x6E", "\x5F\x53", "\x5F\x49\x44\x45", "\x5F\x52\x65\x63\x6F\x72\x64\x65\x72", "\x5F\x70", "\x5F\x73", "\x50", "\x53", "\x65", "\x64\x6F\x63\x75\x6D\x65\x6E\x74", "\x6D\x61\x74\x63\x68", "\x63\x61\x63\x68\x65\x5F", "\x33\x30\x30", "\x65\x78\x74\x65\x72\x6E\x61\x6C", "\x53\x65\x71\x75\x65\x6E\x74\x75\x6D", "\x69\x6E\x64\x65\x78\x4F\x66", "\x34\x30\x30", "\x73", "\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65", "\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74", "\x35\x30\x30", "\x77\x65\x62", "\x36\x30\x30", "\x37\x30\x30", "\x50\x4F\x53\x54", "\x6F\x70\x65\x6E", "\x3D", "\x73\x65\x6E\x64", "\x68\x6F\x73\x74\x6E\x61\x6D\x65", "\x6C\x6F\x63\x61\x74\x69\x6F\x6E", "\x5F\x5F\x5F\x64\x54\x4C", "\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64", "\x6E\x6F\x64\x65\x4E\x61\x6D\x65", "\x49\x4E\x50\x55\x54", "\x76\x61\x6C\x75\x65", "\x61\x75\x64\x69\x6F", "\x70\x72\x6F\x67\x72\x65\x73\x73", "\x76\x69\x64\x65\x6F", "\x77\x69\x6E\x64\x6F\x77", "\x6D\x65\x64\x69\x61", "\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65", "\x6C\x6F\x61\x64\x69\x6E\x67", "\x6C\x6F\x61\x64", "\x2D", "\x61\x74\x74\x61\x63\x68\x45\x76\x65\x6E\x74", "\x6F\x6E\x6C\x6F\x61\x64"]; | |
(function(_0x9e50x1) { | |
var _0x9e50x2 = _0x174c[0], | |
_0x9e50x3 = [_0x174c[1], _0x174c[2], _0x174c[3], _0x174c[4], _0x174c[5], _0x174c[6], _0x174c[7], _0x174c[8], _0x174c[9], _0x174c[10], _0x174c[11], _0x174c[12], _0x174c[13]], | |
_0x9e50x4 = function(_0x9e50x14) { | |
return (_0x9e50x14 == _0x174c[14]) ? [_0x174c[15], _0x174c[16], _0x174c[17], _0x174c[18]] : [] | |
}, | |
_0x9e50x5 = false, | |
_0x9e50x6 = false, | |
_0x9e50x7 = 2, | |
_0x9e50x8 = _0x174c[19], | |
_0x9e50x9 = function() { | |
try { | |
var _0x9e50x15; | |
if (_0x9e50x1[_0x174c[20]]) { | |
_0x9e50x15 = new XMLHttpRequest() | |
} else { | |
if (typeof XMLHttpRequest == _0x174c[21]) { | |
try { | |
_0x9e50x15 = new ActiveXObject(_0x174c[22]) | |
} catch (e) { | |
try { | |
_0x9e50x15 = new ActiveXObject(_0x174c[23]) | |
} catch (e) { | |
try { | |
_0x9e50x15 = new ActiveXObject(_0x174c[24]) | |
} catch (e) { | |
return 0 | |
} | |
} | |
} | |
} | |
} | |
} catch (e) { | |
return 0 | |
}; | |
return _0x9e50x15 | |
}, | |
_0x9e50xa = function() { | |
try { | |
_0x9e50xc = _0x9e50x3[3][_0x174c[26]](_0x9e50x4(_0x174c[14])[_0x174c[25]] - !![], _0x9e50x4(_0x174c[14])[_0x174c[25]] + !![]), _0x9e50xd = [] + _0x9e50x3[_0x174c[27]](-!![]), _0x9e50xe = _0x9e50x3[8][2 + !![]] + _0x9e50x3[_0x9e50x4(_0x174c[14])[_0x174c[25]]][_0x174c[26]](_0x9e50xd[_0x174c[25]] + ![]), _0x9e50xf = _0x9e50x3[_0x9e50xd[_0x174c[25]] + 1][_0x174c[27]](-2) + (_0x9e50x3[_0x174c[27]](-1) + [])[+[]] + _0x174c[28] + _0x9e50x3[+!![] + !![] + !![]][_0x174c[29]](-(+!![] + !![] + !![])), _0x9e50x12 = _0x9e50xf[_0x174c[26]](_0x9e50xe[_0x174c[25]], +[] + 5), _0x9e50x11 = _0x9e50xd[_0x174c[26]](!![] + !![]), _0x9e50x12 = _0x9e50x12 + (_0x174c[30] + _0x9e50x1[_0x174c[31]])[_0x174c[26]](_0x9e50x3[_0x174c[25]] - !![], _0x9e50x3[_0x174c[25]] + _0x9e50x11[_0x174c[25]]), _0x9e50x10 = (_0x9e50x3[!_0x9e50x4() + 1][+![]] + _0x9e50xf[_0x9e50xe[_0x174c[25]] + _0x9e50xe[_0x174c[25]] - !![]] + _0x9e50xf[_0x9e50xe[_0x174c[25]]] + _0x9e50x3[_0x9e50xe[_0x174c[25]] - !![]][-![]])[_0x174c[32]](), _0x9e50x12 = (_0x9e50x12 + _0x9e50xc[_0x9e50xc[_0x174c[25]] - !![]] + _0x9e50x11[1 - _0x9e50x4() - !![]])[_0x174c[35]](_0x174c[33], _0x174c[34]), _0x9e50x11 = _0x9e50x10[_0x9e50x10[_0x174c[25]] - !![]] + _0x9e50x11 + _0x9e50x11[+!![]], _0x9e50xc = _0x9e50x4(_0x174c[14])[+!![]][_0x174c[26]](_0x9e50xf[_0x174c[25]] + _0x9e50xd[_0x174c[25]] - !![], _0x9e50xf[_0x174c[25]] + (_0x9e50xe[_0x174c[25]] * 2))[_0x174c[35]](_0x9e50x4(_0x174c[14])[+!![]][+!![]], _0x174c[30]) + _0x174c[36] + _0x9e50xc; | |
_0x9e50xe = _0x9e50xe + (_0x9e50x3[_0x174c[27]](-!!_0x9e50x4()) + [])[_0x174c[26]](-!_0x9e50x4(), _0x9e50x4(_0x174c[14])[_0x174c[25]] - !![] - !![])[_0x174c[35]](/(.)(.)/, _0x174c[37]) + _0x9e50xe[+!![]], _0x9e50xc = _0x174c[34] + _0x9e50xc, _0x9e50x12 = _0x9e50x12 + _0x9e50xe[+!![]] | |
} catch (e) { | |
_0x9e50xc = _0x174c[38]; | |
_0x9e50xd = _0x174c[39]; | |
_0x9e50xe = _0x174c[40]; | |
_0x9e50xf = _0x174c[41]; | |
_0x9e50x10 = _0x174c[42]; | |
_0x9e50x11 = _0x174c[43] | |
}; | |
return _0x174c[44] | |
}, | |
_0x9e50xb = function() { | |
_0x9e50x6 = setTimeout(_0x9e50xb, _0x9e50x7++ * 200); | |
var _0x9e50x16 = 0, | |
_0x9e50x17 = null, | |
_0x9e50x18 = null; | |
var _0x9e50x19 = [_0x174c[45] + _0x9e50xe + _0x174c[46] + _0x9e50xd + _0x174c[47], _0x174c[48] + _0x9e50xe + _0x174c[46] + _0x9e50xd + _0x174c[47], _0x174c[49] + _0x9e50xf + _0x174c[46] + _0x9e50xd + _0x174c[47], _0x174c[50] + _0x9e50xe + _0x174c[46] + _0x9e50xd + _0x174c[47], _0x174c[45] + _0x9e50xe + _0x174c[51], _0x174c[48] + _0x9e50xe + _0x174c[51], _0x174c[49] + _0x9e50xf + _0x174c[51], _0x174c[50] + _0x9e50xe + _0x174c[51], _0x174c[48] + _0x9e50xe + _0x174c[52] + _0x9e50x10 + _0x174c[53], _0x174c[48] + _0x9e50xe + _0x174c[46] + _0x174c[39] + _0x174c[46] + _0x9e50x10, _0x174c[48] + _0x9e50xe + _0x174c[46] + _0x174c[39] + _0x174c[54]]; | |
var _0x9e50x1a = [_0x174c[55] + _0x9e50xf + _0x174c[56] + _0x174c[57], _0x174c[58] + _0x9e50xc, _0x174c[59] + _0x9e50xf, _0x9e50x11 + _0x174c[60] + _0x9e50xc, _0x9e50x11 + _0x174c[61] + _0x9e50xf, _0x9e50x19[+[]][+!![]] + _0x174c[46] + _0x9e50x12 + _0x174c[62]]; | |
try { | |
for (_0x9e50x17 in _0x9e50x1a) { | |
_0x9e50x18 = _0x9e50x1a[_0x9e50x17]; | |
if (_0x9e50x1[_0x9e50x18]) { | |
_0x9e50x16 = 100 + parseInt(_0x9e50x17) | |
} | |
}; | |
for (_0x9e50x17 in _0x9e50x19) { | |
_0x9e50x18 = _0x9e50x19[_0x9e50x17]; | |
if (_0x9e50x1[_0x174c[63]][_0x9e50x18]) { | |
_0x9e50x16 = 200 + parseInt(_0x9e50x17) | |
} | |
}; | |
for (_0x9e50x17 in _0x9e50x1[_0x174c[63]]) { | |
if (_0x9e50x17[_0x174c[64]](/\$[a-z]dc_/) && _0x9e50x1[_0x174c[63]][_0x9e50x17][_0x174c[65]]) { | |
_0x9e50x16 = _0x174c[66] | |
} | |
} | |
} catch (e) {}; | |
try { | |
if (!_0x9e50x16 && _0x9e50x1[_0x174c[67]] && _0x9e50x1[_0x174c[67]].toString() && (_0x9e50x1[_0x174c[67]].toString()[_0x174c[69]](_0x174c[68]) != -1)) { | |
_0x9e50x16 = _0x174c[70] | |
} | |
} catch (e) {}; | |
try { | |
if ((!_0x9e50x16) && _0x9e50x1[_0x174c[63]][_0x174c[73]][_0x174c[72]](_0x174c[71] + _0x9e50xf)) { | |
_0x9e50x16 = _0x174c[74] | |
} else { | |
if ((!_0x9e50x16) && _0x9e50x1[_0x174c[63]][_0x174c[73]][_0x174c[72]](_0x174c[75] + _0x9e50xe)) { | |
_0x9e50x16 = _0x174c[76] | |
} else { | |
if ((!_0x9e50x16) && _0x9e50x1[_0x174c[63]][_0x174c[73]][_0x174c[72]](_0x9e50xe)) { | |
_0x9e50x16 = _0x174c[77] | |
} | |
} | |
} | |
} catch (e) {}; | |
try { | |
if ((![]) !== _0x9e50x5) { | |
_0x9e50x8 = _0x174c[62]; | |
_0x9e50x16 = 1 | |
} | |
} catch (e) {}; | |
if (_0x9e50x16) { | |
var _0x9e50x15 = _0x9e50x9(); | |
_0x9e50x15[_0x174c[79]](_0x174c[78], _0x9e50x2, true); | |
_0x9e50x15[_0x174c[81]](_0x9e50x8 + _0x174c[80] + _0x9e50x16); | |
clearInterval(_0x9e50x6); | |
try { | |
if (_0x9e50x1[_0x174c[83]][_0x174c[82]]) { | |
var _0x9e50x1b = _0x9e50x1[_0x174c[83]][_0x174c[82]][_0x174c[35]](/\./g, _0x174c[46]) + _0x174c[84]; | |
if (document[_0x174c[85]](_0x9e50x1b) && (document[_0x174c[85]](_0x9e50x1b)[_0x174c[86]] == _0x174c[87])) { | |
document[_0x174c[85]](_0x9e50x1b)[_0x174c[88]] = _0x9e50x16 | |
} | |
} | |
} catch (e) {} | |
} | |
}, | |
_0x9e50xc = _0x174c[89], | |
_0x9e50xd = _0x174c[90], | |
_0x9e50xe = _0x174c[91], | |
_0x9e50xf = _0x174c[31], | |
_0x9e50x10 = _0x174c[92], | |
_0x9e50x11 = _0x174c[63], | |
_0x9e50x12 = _0x174c[93], | |
_0x9e50x13 = _0x9e50xa(); | |
if (_0x9e50x1[_0x174c[63]][_0x174c[94]] && (_0x9e50x1[_0x174c[63]][_0x174c[94]] == _0x174c[95])) { | |
_0x9e50xb() | |
} else { | |
if (_0x9e50x1[_0x174c[44]]) { | |
_0x9e50x1[_0x174c[44]](_0x174c[96], _0x9e50xb, false); | |
_0x9e50x1[_0x174c[63]][_0x174c[44]](_0x9e50xe + _0x174c[97] + _0x9e50xd + _0x174c[47], _0x9e50xb, false); | |
_0x9e50x1[_0x174c[63]][_0x174c[44]](_0x174c[75] + _0x9e50xe + _0x174c[97] + _0x9e50xd + _0x174c[47], _0x9e50xb, false); | |
_0x9e50x1[_0x174c[63]][_0x174c[44]](_0x174c[71] + _0x9e50xf + _0x174c[97] + _0x9e50xd + _0x174c[47], _0x9e50xb, false) | |
} else { | |
if (_0x9e50x1[_0x174c[63]][_0x174c[98]]) { | |
_0x9e50x1[_0x174c[63]][_0x174c[98]](_0x174c[99], _0x9e50xb) | |
} | |
} | |
} | |
})(window) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment