Gateway Mods

This script adds some functions to speed up HP operations

Verzia zo dňa 22.07.2015. Pozri najnovšiu verziu.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, Greasemonkey alebo Violentmonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey, % alebo Violentmonkey.

Na nainštalovanie skriptu si budete musieť nainštalovať rozšírenie, ako napríklad Tampermonkey alebo Userscripts.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie, ako napríklad Tampermonkey.

Na inštaláciu tohto skriptu je potrebné nainštalovať rozšírenie správcu používateľských skriptov.

(Už mám správcu používateľských skriptov, nechajte ma ho nainštalovať!)

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie, ako napríklad Stylus.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

Na inštaláciu tohto štýlu je potrebné nainštalovať rozšírenie správcu používateľských štýlov.

(Už mám správcu používateľských štýlov, nechajte ma ho nainštalovať!)

// ==UserScript==
// @name         Gateway Mods
// @namespace    http://www.hacker-project.com/
// @version      1.4
// @description  This script adds some functions to speed up HP operations
// @author       Kevin Mitnick
// @match        http://www.hacker-project.com/*
// @match        http://hacker-project.com/*
// @grant        none
// @require      http://code.jquery.com/jquery-latest.js
// ==/UserScript==

function setup() {
    // Setup jQuery
    var jQueryScript = document.createElement("script");
    jQueryScript.setAttribute("src", "http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js");
    document.head.appendChild(jQueryScript);
    
    if (new String(window.location).indexOf("hacker-project.com/index.php?action=gate&a2=files") > -1) {
        
        // Batch script
        var batchScript = document.createElement("script");
        batchScript.setAttribute("type", "text/javascript");
        batchScript.innerHTML = "function runPWB(pid, times, rem) { for (var i = 0; i < times; i++) { var iframe = document.createElement('iframe'); iframe.src = 'index.php?action=gate&a2=run&pid='+pid+'&rem='+rem; iframe.style.display='none'; document.body.appendChild(iframe); } }";
        document.body.appendChild(batchScript);
        
        // Spec scan
        var psWindow = document.createElement("iframe");
        psWindow.src="/index.php?action=gate&a2=run";
        if (new String(window.location).indexOf("&rem=1")>-1) psWindow.src += "&rem=1";
        psWindow.style.display="none";
        psWindow.id = "psWindow";
        document.body.appendChild(psWindow);
        
        $("#psWindow").load(function() {
            var dc = psWindow.contentWindow.document || psWindow.contentDocument || psWindow.document;
            var dctds = dc.getElementsByTagName("td");
            var specTd;
            for (var dci = 0; dci < dctds.length; dci++) if (dctds[dci].getElementsByTagName("span").length==10) specTd = dctds[dci];
            var specSpans = specTd.getElementsByTagName("span");
            var usedCpu = parseFloat(removeComma(specSpans[1].innerHTML));
            var totalCpu = parseFloat(removeComma(specSpans[2].innerHTML));
            var usedMem = parseFloat(removeComma(specSpans[4].innerHTML));
            var totalMem = parseFloat(removeComma(specSpans[5].innerHTML));
            var usedBand = parseFloat(removeComma(specSpans[7].innerHTML));
            var totalBand = parseFloat(removeComma(specSpans[8].innerHTML));
            var table = document.getElementsByName("frm_files")[0].getElementsByTagName("table")[0];
            table.getElementsByTagName("tbody")[0].appendChild(specTd);
            var itd = document.createElement("td");
            itd.innerHTML = "Executable";
            itd.width="100";
            table.getElementsByTagName("tbody")[0].getElementsByTagName("tr")[2].appendChild(itd);
            for (var numberOfRows = table.rows.length, i = 1; i<numberOfRows-3; i++) {
                var itd2 = document.createElement("td");
                itd.width="100";
                var tr = table.getElementsByTagName("tbody")[0].getElementsByTagName("tr")[i*3];
                var tds = tr.getElementsByTagName("td");
                var versionPoint = 11;
                if (tds[11].innerHTML=="Password Break") versionPoint = 13;
                var content = tds[versionPoint].getElementsByTagName("small")[0].innerHTML;
                var cpuNeed = parseFloat(content.substring(0, content.indexOf(" M")));
                var memNeed = parseFloat(content.substring(content.indexOf("U, ")+3, content.indexOf(" k")));
                var bandNeed = 0;
                if (content.indexOf("Band")>-1) bandNeed = parseFloat(content.substring(content.indexOf("M, ")+3, content.length));
                itd2.innerHTML = "<b><p style='color: red'>No</p></b>";
                if (cpuNeed<=totalCpu-usedCpu && memNeed<=totalMem-usedMem && bandNeed<=totalBand-usedBand) itd2.innerHTML = "<b><p style='color: green'>Yes</p></b>";
                tr.appendChild(itd2);
            }
        });

        var table = document.getElementsByName("frm_files")[0].getElementsByTagName("table")[0];
        for (var numberOfRows = table.rows.length, i = 1; i<numberOfRows-3; i++) {
            var tr = table.getElementsByTagName("tbody")[0].getElementsByTagName("tr")[i*3];
            var tds = tr.getElementsByTagName("td");
            var filename = tds[9].innerHTML;
            var versionPoint = 11;
            if (filename == "Password Break") versionPoint = 11;
            var version = parseFloat(tds[versionPoint].innerHTML);

            // File type testing and calculations
            var hd, cpu, mem, band;
            switch (filename) {
                case "Firewall Protect":{  hd = 7.50;  mem = 3000;  cpu = 50;  band = 0; break; }
                case "Firewall Bypass":{  hd = 37.50;  mem = 7000;  cpu = 80;  band = 0; break; }
                case "Password Protect":{  hd = 8.50;  mem = 5000;  cpu = 100;  band = 0; break; }
                case "Password Break":{  hd = 84.96;  mem = 12500;  cpu = 200;  band = 0; break; }
                case "Hide Files":{  hd = 100.00;  mem = 9000;  cpu = 100;  band = 0; break; }
                case "Unhide Files":{  hd = 200.00;  mem = 9000;  cpu = 100;  band = 0; break; }
                case "Encryptor":{  hd = 341.80;  mem = 30000;  cpu = 600;  band = 0; break; }
                case "Decryptor":{  hd = 439.45;  mem = 40000;  cpu = 900;  band = 0; break; }
                case "SpyWare":{  hd = 50.00;  mem = 900;  cpu = 300;  band = 0; break; }
                case "Anti-SpyWare":{  hd = 100.00;  mem = 22500;  cpu = 150;  band = 0; break; }
                case "Malware Logic Bomb":{  hd = 585.94;  mem = 5000;  cpu = 300;  band = 0; break; }
                case "Malware Overload Bomb":{  hd = 976.56;  mem = 7000;  cpu = 550;  band = 0; break; }
                case "Malware Anti-Virus":{  hd = 200.00;  mem = 1500;  cpu = 300;  band = 0; break; }
                case "Adware Spam Daemon":{  hd = 100.00;  mem = 5000;  cpu = 50;  band = 3; break; }
                case "Adware Anti-Virus":{  hd = 174.22;  mem = 10000;  cpu = 250;  band = 0; break; }
                case "File Share Virus":{  hd = 3200.00;  mem = 10000;  cpu = 250;  band = 50; break; }
                case "File Share Anti-Virus":{  hd = 1000.00;  mem = 20000;  cpu = 500;  band = 0; break; }
                case "Sniffer Daemon":{  hd = 151.17;  mem = 3000;  cpu = 50;  band = 0; break; }
                case "IP Cloaker":{  hd = 151.17;  mem = 6000;  cpu = 100;  band = 0; break; }
                case "IP Scanner":{  hd = 369.53;  mem = 10000;  cpu = 200;  band = 0; break; }
                case "Scan Blocker":{  hd = 200.00;  mem = 10000;  cpu = 200;  band = 0; break; }
                case "Data uplink hijack":{  hd = 395.31;  mem = 20000;  cpu = 300;  band = 0; break; }
                case "Data hijack Anti-Virus":{  hd = 200.00;  mem = 30000;  cpu = 500;  band = 0; break; }
                case "Log Deleter":{  hd = 5.00;  mem = 1000;  cpu = 30;  band = 0; break; }
                case "Log UnDeleter":{  hd = 15.00;  mem = 3000;  cpu = 50;  band = 0; break; }
                case "Virus break;er":{  hd = 174.21;  mem = 11500;  cpu = 300;  band = 0; break; }
                case "Faith Anti-Virus":{  hd = 20000.00;  mem = 1200000;  cpu = 20000;  band = 0; break; }
                case "Virus Identifier":{  hd = 17.42;  mem = 1150;  cpu = 30;  band = 0; break; }
                case "Process Tracer":{  hd = 174.22;  mem = 92000;  cpu = 2400;  band = 0; break; }
                case "Revelation Virus":{  hd = 20000.00;  mem = 600000;  cpu = 10000;  band = 400; break; }
                case "Robber Baron Virus":{  hd = 96000.00;  mem = 300000;  cpu = 7500;  band = 1500; break; }
                case "Robber Baron Anti-Virus":{  hd = 30000.00;  mem = 600000;  cpu = 15000;  band = 0; break; }
                case "Remote Attack Disruptor":{  hd = 174.22;  mem = 92000;  cpu = 2400;  band = 0; break; }
                case "IP Leech":{  hd = 75.00;  mem = 1350;  cpu = 450;  band = 0; break; }
                case "IP Leech Anti-Virus":{  hd = 150.00;  mem = 21600;  cpu = 225;  band = 0; break; }
                case "Remote Virus Injector":{  hd = 4000.00;  mem = 125000;  cpu = 2500;  band = 2; break; }
                case "RV Injector Anti-Virus":{  hd = 4000.00;  mem = 250000;  cpu = 5000;  band = 0; break; }
                case "Overload Signer":{  hd = 174.21;  mem = 92000;  cpu = 2400;  band = 0; break; }
                case "Mutant Revelation Virus":{  hd = 96000.00;  mem = 3000000;  cpu = 50000;  band = 2000; break; }
                case "MutantR Accelerator":{  hd = 174.21;  mem = 92000;  cpu = 2400;  band = 100; break; }
                case "MutantR Decelerator":{  hd = 174.21;  mem = 278000;  cpu = 9600;  band = 0; break; }
                case "MutantR Acc Stopper":{  hd = 174.21;  mem = 46000;  cpu = 1200;  band = 0; break; }
                case "MutantR Dec Stopper":{  hd = 174.21;  mem = 46000;  cpu = 1200;  band = 0; break; }
            }
            band = +band.toFixed(2);
            if (band===0) tds[versionPoint].innerHTML += ("<br/><small class='pi'> "+Math.round(version*cpu*10)+" MHz CPU, "+Math.round(version*mem*10)+" kB RAM</small>");
            else tds[versionPoint].innerHTML += ("<br/><small class='pi'> "+Math.round(version*cpu*10)+" MHz CPU, "+Math.round(version*mem*10)+" kB RAM, "+version*band*10+" kB/s Bandwidth</small>");

            if (filename == "Password Break") {
                var buttonBox = tds[0];
                var buttonBody = buttonBox.getElementsByTagName("tbody")[0];
                
                var tad1 = document.createElement("td");
                buttonBody.getElementsByTagName("tr")[0].appendChild(tad1);
                
                var tad2 = document.createElement("td");
                buttonBody.getElementsByTagName("tr")[1].appendChild(tad2);
                
                var bbutton = document.createElement("a");
                bbutton.innerHTML = "Batch";
                var bhref = buttonBody.getElementsByTagName("a")[0].getAttribute("href");
                var pid = bhref.substring(bhref.indexOf("pid=")+4);
                var rem = 0;
                if (bhref.indexOf("rem=1") > -1) rem = 1;
                var inputBox = document.createElement("input");
                inputBox.setAttribute("type", "number");
                inputBox.style.width = "50px";
                inputBox.id = "mpwb"+pid;
                tad1.appendChild(inputBox);
                bbutton.setAttribute("href", "javascript: runPWB("+pid+", document.getElementById('mpwb"+pid+"').value, "+rem+")");
                tad2.appendChild(bbutton);
            }
        }
        
    }
}
function removeComma(str) {
    while (str.indexOf(",") > -1) {
        var index = str.indexOf(",");
        var first = str.substring(0, index);
        var last = str.substring(index + 1, str.length);
        str = first + last;
    }
    return str;
}
setup();