Advertisement
Guest User

kour.io cheat deobfuscated & bypassed anticheat

a guest
Jul 11th, 2024
676
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name        The Cheat Central Kour.io Hack
  3. // @namespace   The Cheat Central Scripts
  4. // @match       *://kour.io/*
  5. // @grant       none
  6. // @version     1.0
  7. // @author      Cheat Central
  8. // @description A Kour.io hack by The Cheat Central - https://thecheatcentral.com/
  9. // @run-at      document-start
  10. // ==/UserScript==
  11. Object.defineProperty(Error,"stackTraceLimit",{
  12.   value:1,
  13.   writable:false
  14. })
  15. const serverUrl = "https://sub2krunkercentral.com";
  16. const publicKeyBuffer = new Uint8Array([48, 130, 1, 34, 48, 13, 6, 9, 42, 134, 72, 134, 247, 13, 1, 1, 1, 5, 0, 3, 130, 1, 15, 0, 48, 130, 1, 10, 2, 130, 1, 1, 0, 229, 111, 226, 207, 86, 246, 233, 241, 116, 242, 253, 123, 32, 118, 31, 184, 74, 86, 236, 84, 216, 171, 62, 143, 22, 141, 124, 163, 18, 182, 250, 248, 207, 30, 46, 243, 178, 216, 202, 237, 161, 56, 151, 161, 24, 13, 74, 110, 134, 208, 64, 71, 168, 198, 247, 92, 29, 190, 12, 158, 166, 240, 72, 216, 57, 245, 117, 201, 213, 249, 95, 179, 97, 236, 151, 105, 250, 218, 181, 193, 104, 154, 171, 42, 46, 58, 109, 29, 12, 56, 203, 132, 226, 20, 88, 236, 228, 201, 204, 47, 80, 55, 48, 182, 143, 120, 51, 150, 157, 121, 20, 7, 99, 120, 88, 127, 17, 127, 181, 89, 219, 85, 136, 167, 21, 100, 253, 43, 15, 218, 32, 80, 146, 237, 110, 236, 137, 58, 115, 63, 208, 11, 201, 39, 168, 166, 79, 159, 12, 226, 147, 98, 213, 213, 216, 67, 205, 252, 81, 8, 56, 103, 200, 20, 221, 227, 178, 38, 185, 198, 66, 28, 81, 32, 252, 245, 147, 44, 197, 79, 121, 153, 36, 55, 228, 16, 128, 200, 177, 68, 192, 81, 129, 139, 232, 223, 146, 214, 224, 60, 81, 48, 126, 147, 68, 205, 56, 103, 81, 124, 86, 34, 52, 116, 169, 185, 233, 192, 91, 154, 29, 61, 8, 201, 56, 56, 107, 255, 238, 174, 185, 125, 42, 178, 26, 50, 83, 84, 74, 110, 165, 66, 105, 72, 229, 241, 154, 127, 249, 117, 129, 71, 31, 1, 234, 39, 2, 3, 1, 0, 1]).buffer;
  17. crypto.subtle.importKey("spki", publicKeyBuffer, {
  18.   name: "RSASSA-PKCS1-v1_5",
  19.   hash: {
  20.     name: "SHA-256"
  21.   }
  22. }, true, ["verify"]).then(async _0x307fc1 => {
  23.   async function _0x12da8a(_0x4ce21a) {
  24.  
  25.   }
  26. });
  27. const hackOptions = {
  28.   instakill: false,
  29.   invincibility: true,
  30.   ghost: true,
  31.   speed: true,
  32.   wallhack: true
  33. };
  34. if (localStorage.centralHacks) {
  35.   try {
  36.     Object.assign(hackOptions, JSON.parse(localStorage.centralHacks));
  37.   } catch {}
  38. }
  39. window.addEventListener("DOMContentLoaded", () => {
  40.   const _0x53bb18 = document.createElement("div");
  41.   _0x53bb18.id = "central";
  42.   Object.assign(_0x53bb18.style, {
  43.     position: "fixed",
  44.     left: "10px",
  45.     bottom: "10px",
  46.     width: "260px",
  47.     height: "30px",
  48.     background: "#000000b0",
  49.     color: "white",
  50.     "font-family": "monospace",
  51.     "font-size": "20px",
  52.     "text-align": "center",
  53.     "border-radius": "5px",
  54.     cursor: "pointer",
  55.     display: "flex",
  56.     "flex-direction": "column-reverse"
  57.   });
  58.   const _0x269245 = document.createElement("div");
  59.   _0x269245.innerText = "Kour.io Hacks Menu";
  60.   _0x269245.style["user-select"] = "none";
  61.   _0x53bb18.appendChild(_0x269245);
  62.   const _0x46f5ef = document.createElement("div");
  63.   _0x46f5ef.innerHTML = "\n\t\t<div>\n\t\t\t<a href=\"https://thecheatcentral.com/\" target=\"_blank\" style=\"color: white; text-decoration: none; font-size: 30px; font-weight: bold; padding: 20px; display: block;\">\n\t\t\t\tKour.io Hacks\n\t\t\t</a>\n\t\t</div>\n\t";
  64.   _0x46f5ef.style.display = "none";
  65.   Object.assign(_0x46f5ef.style, {
  66.     "flex-direction": "column",
  67.     width: "350px",
  68.     background: "black",
  69.     "border-radius": "5px",
  70.     margin: "5px 0",
  71.     padding: "0 0 10px",
  72.     "border-radius": "5px"
  73.   });
  74.   const _0x1996c7 = (_0x2f95a4, _0x33e2e4, _0x50893d) => {
  75.     const _0x4b430a = document.createElement("div");
  76.     _0x4b430a.style.display = "flex";
  77.     _0x4b430a.title = _0x50893d;
  78.     const _0x33f25f = document.createElement("div");
  79.     _0x33f25f.innerText = _0x33e2e4;
  80.     _0x4b430a.appendChild(_0x33f25f);
  81.     const _0x4e4a03 = document.createElement("div");
  82.     _0x4e4a03.innerText = hackOptions[_0x2f95a4] ? "[ON]" : "[OFF]";
  83.     Object.assign(_0x4e4a03.style, {
  84.       "font-style": "bold",
  85.       color: hackOptions[_0x2f95a4] ? "limegreen" : "tomato",
  86.       "margin-left": "auto"
  87.     });
  88.     _0x4b430a.appendChild(_0x4e4a03);
  89.     _0x4b430a.style.padding = "10px";
  90.     _0x4b430a.onclick = () => {
  91.       hackOptions[_0x2f95a4] = !hackOptions[_0x2f95a4];
  92.       _0x4e4a03.innerText = hackOptions[_0x2f95a4] ? "[ON]" : "[OFF]";
  93.       _0x4e4a03.style.color = hackOptions[_0x2f95a4] ? "limegreen" : "tomato";
  94.       localStorage.centralHacks = JSON.stringify(hackOptions);
  95.     };
  96.     return _0x4b430a;
  97.   };
  98.   _0x46f5ef.appendChild(_0x1996c7("instakill", "Instakill", "Any gunshot will cause the affected person to die, you don't get score for killing"));
  99.   _0x46f5ef.appendChild(_0x1996c7("invincibility", "Invincibility", "Bullets don't do damage to you"));
  100.   _0x46f5ef.appendChild(_0x1996c7("wallhack", "Wallhack", "Lets you see players behind walls. Changing this setting requires restart."));
  101.   _0x46f5ef.appendChild(_0x1996c7("ghost", "Ghost Mode", "Other players can't see you moving"));
  102.   _0x46f5ef.appendChild(_0x1996c7("speed", "Speedhack (hold X)", "Holding X speeds up everything in the game"));
  103.   _0x53bb18.appendChild(_0x46f5ef);
  104.   let _0x58d5f8 = false;
  105.   _0x269245.onclick = () => {
  106.     _0x58d5f8 = !_0x58d5f8;
  107.     _0x46f5ef.style.display = _0x58d5f8 ? "flex" : "none";
  108.   };
  109.   document.body.appendChild(_0x53bb18);
  110.   wallHack();
  111. });
  112. const SpeedMultiplier = 5;
  113. const _now = performance.now.bind(performance);
  114. let timeOffset = 0;
  115. let speedStart = -1;
  116. window.addEventListener("keydown", _0x1fdd75 => {
  117.   if (_0x1fdd75.key !== "x" || !hackOptions.speed || speedStart !== -1) {
  118.     return;
  119.   }
  120.   _0x1fdd75.stopImmediatePropagation();
  121.   _0x1fdd75.stopPropagation();
  122.   _0x1fdd75.preventDefault();
  123.   speedStart = _now();
  124. });
  125. window.addEventListener("keyup", _0xb540a8 => {
  126.   if (_0xb540a8.key !== "x" || !hackOptions.speed || speedStart === -1) {
  127.     return;
  128.   }
  129.   _0xb540a8.stopImmediatePropagation();
  130.   _0xb540a8.stopPropagation();
  131.   _0xb540a8.preventDefault();
  132.   speedStart = -1;
  133. });
  134. performance.now = function () {
  135.   if (speedStart === -1) {
  136.     return _now() + timeOffset;
  137.   }
  138.   return speedStart + SpeedMultiplier * (_now() - speedStart) + timeOffset;
  139. };
  140. let gameWs = Symbol();
  141. window.WebSocket = new Proxy(WebSocket, {
  142.   construct(_0x30a1d8, _0x489ad8) {
  143.     const _0x218063 = Reflect.construct(_0x30a1d8, _0x489ad8);
  144.     if (_0x489ad8[0]?.includes("/game/")) {
  145.       console.log("Game connected:", _0x489ad8);
  146.       gameWs = _0x218063;
  147.       Object.defineProperty(_0x218063, "onmessage", {
  148.         set(_0x45f9cc) {
  149.           this._onmessage = _0x45f9cc;
  150.         }
  151.       });
  152.       _0x218063.addEventListener("message", function (_0x18e840) {
  153.         let _0x26ee04 = new Uint8Array(_0x18e840.data);
  154.         if (!this._onmessage) {
  155.           return;
  156.         }
  157.         if (_0x26ee04[2] === 200 && hackOptions.invincibility) {
  158.           return;
  159.         }
  160.         this._onmessage.apply(this, arguments);
  161.       });
  162.     }
  163.     return _0x218063;
  164.   }
  165. });
  166. const _send = WebSocket.prototype.send;
  167. WebSocket.prototype.send = function send(_0x52768e) {
  168.   if (this === gameWs) {
  169.     const _0x581385 = new Uint8Array(_0x52768e);
  170.     if (_0x581385[1] === 6) {
  171.       return _send.apply(this, arguments);
  172.     }
  173.     if (_0x581385[6] === 201 || _0x581385[6] === 206 || _0x581385[6] === 200 && [27, 28].includes(_0x581385[_0x581385.length - 1])) {
  174.       if (hackOptions.ghost) {
  175.         return;
  176.       } else {
  177.         return _send.apply(this, arguments);
  178.       }
  179.     }
  180.     if (_0x581385[6] === 200 && _0x581385.length > 60 && hackOptions.instakill) {
  181.       let _0x1adb4c = 0;
  182.       let _0x276bdc = setInterval(() => {
  183.         if (_0x1adb4c++ > 10) {
  184.           return clearInterval(_0x276bdc);
  185.         }
  186.         _send.apply(this, arguments);
  187.       });
  188.     }
  189.   }
  190.   return _send.apply(this, arguments);
  191. };
  192. function wallHack() {
  193.   'use strict';
  194.  
  195.   const _0x8213ff = WebGL2RenderingContext.prototype;
  196.   HTMLCanvasElement.prototype.getContext = new Proxy(HTMLCanvasElement.prototype.getContext, {
  197.     apply(_0x131522, _0x369590, _0x16806f) {
  198.       return Reflect.apply(...arguments);
  199.     }
  200.   });
  201.   if (window.observer != undefined) {
  202.     window.observer.disconnect();
  203.   }
  204.   let MutationObserver = {
  205.     observe: function () {
  206.       console.log("Observed");
  207.     }
  208.   };
  209.   if (window.location.href.indexOf("/a") != -1) {
  210.     window.location.href = "https://kour.io";
  211.   }
  212.   var _0x81ce24 = null;
  213.   const _0x46dd94 = {
  214.     apply(_0x52d799, _0x1e1153, _0x54f8b6) {
  215.       if (!hackOptions.wallhack) {
  216.         return Reflect.apply(...arguments);
  217.       }
  218.       const _0x20160a = _0x1e1153.getParameter(_0x1e1153.CURRENT_PROGRAM);
  219.       if (!_0x20160a.uniforms) {
  220.         _0x20160a.uniforms = {
  221.           enabled: _0x1e1153.getUniformLocation(_0x20160a, "enabled"),
  222.           threshold: _0x1e1153.getUniformLocation(_0x20160a, "threshold")
  223.         };
  224.       }
  225.       var _0x1e77ce = true;
  226.       var _0x352861 = 4.5;
  227.       if (_0x20160a.uniforms.enabled) {
  228.         _0x1e1153.uniform1i(_0x20160a.uniforms.enabled, _0x1e77ce);
  229.       }
  230.       if (_0x20160a.uniforms.threshold) {
  231.         _0x1e1153.uniform1f(_0x20160a.uniforms.threshold, _0x352861);
  232.       }
  233.       if (_0x1e77ce) {
  234.         _0x81ce24 = _0x1e1153;
  235.       }
  236.       Reflect.apply(...arguments);
  237.     }
  238.   };
  239.   _0x8213ff.drawElements = new Proxy(_0x8213ff.drawElements, _0x46dd94);
  240.   _0x8213ff.drawElementsInstanced = new Proxy(_0x8213ff.drawElementsInstanced, _0x46dd94);
  241.   _0x8213ff.shaderSource = new Proxy(_0x8213ff.shaderSource, {
  242.     apply(_0x56826a, _0xc665ad, _0x22965b) {
  243.       if (!hackOptions.wallhack) {
  244.         return Reflect.apply(...arguments);
  245.       }
  246.       let [_0x3f01f0, _0x2bd33c] = _0x22965b;
  247.       if (_0x2bd33c.indexOf("gl_Position") > -1) {
  248.         if (_0x2bd33c.indexOf("OutlineEnabled") > -1) {
  249.           _0x3f01f0.isPlayerShader = true;
  250.         }
  251.         _0x2bd33c = _0x2bd33c.replace("void main()\n{", "\n\t\t\t\t\tout float vDepth;\n\t\t\t\t\tout float enabled;\n\t\t\t\t\tuniform float threshold;\n\n\t\t\t\t\tvoid main() {\n\t\t\t\t\t\tenabled = 0.0;\n\n\t\t\t\t\t");
  252.         if (_0x2bd33c.indexOf("hlslcc_mtx4x4unity_WorldToObject") != -1 && _0x2bd33c.indexOf("_MaskSoftnessX") == -1 && _0x2bd33c.indexOf("vs_TEXCOORD5.xyz = unity_SHC.xyz * vec3(u_xlat16_2) + u_xlat16_3.xyz;") != -1 && _0x2bd33c.indexOf("_DetailAlbedoMap_ST") != -1 && _0x2bd33c.indexOf("vs_TEXCOORD1.w = 0.0;") != -1) {
  253.           _0x2bd33c = _0x2bd33c.replace("enabled = 0.0", "enabled = 1.0;\n\t\t\t\t\t\tif( in_POSITION0.y > 10.0 ) {\n\t\t\t\t\t\t\t//enabled = 2.0;\n\t\t\t\t\t\t}");
  254.           _0x2bd33c = _0x2bd33c.replace(/return;/, "\n\t\t\t\t\t\tgl_Position.z = 0.01 + gl_Position.z * 0.1;\n\t\t\t\t\t");
  255.         }
  256.       } else if (_0x2bd33c.indexOf("SV_Target0") > -1) {
  257.         _0x2bd33c = _0x2bd33c.replace("void main", "\n\n\t\t\t\tin float vDepth;\n\t\t\t\tin float enabled;\n\n\t\t\t\tvoid main\n\n\t\t\t\t").replace(/return;/, "\n\n\t\t\t\tif( enabled > 0.5 && SV_Target0.a == 1.0 ) {\n\n\t\t\t\t\tSV_Target0 = mix( SV_Target0 * 0.8, vec4( 1.0, 0.0, 0.0, 1.0 ), 0.4 );\n\t\t\t\t\tif( enabled > 0.5 ) {\n\t\t\t\t\t\t//SV_Target0.xyz = vec3( 1.0, 0.0, 0.0 );\n\t\t\t\t\t}\n\t\t\t\t\tSV_Target0.a = 1.0;\n\n\t\t\t\t}\n\n\t\t\t\t");
  258.       }
  259.       _0x22965b[1] = _0x2bd33c;
  260.       return Reflect.apply(...arguments);
  261.     }
  262.   });
  263. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement