diff --git a/output.js b/output.js
index a447f3d..6af532e 100644
--- a/output.js
+++ b/output.js
@@ -1,109 +1,504 @@
-//Sat Jun 28 2025 05:18:48 GMT+0000 (Coordinated Universal Time)
+//Sat Jun 28 2025 05:22:58 GMT+0000 (Coordinated Universal Time)
//Base:https://github.com/echo094/decode-js
//Modify:https://github.com/smallfawn/decode_action
-const 服务器 = "103.148.58.86:5005";
-let IP = 服务器;
-var XxHttp = class {
- static ["Get"](_0x46c6ac) {
- return new Promise(_0xa4f822 => {
- chrome.runtime.sendMessage({
- "act": "发送网络请求3_Get",
- "url": _0x46c6ac
- }, _0x3a1f95 => {
- _0xa4f822(_0x3a1f95);
- });
- });
- }
- static ["Post"](_0x2283b5, _0x33b354, _0x418c12 = {}) {
- return new Promise(_0x37c64b => {
- chrome.runtime.sendMessage({
- "act": "发送网络请求3_Post",
- "url": _0x2283b5,
- "data": _0x33b354,
- "headers": _0x418c12
- }, _0xb8a48c => {
- _0x37c64b(_0xb8a48c);
- });
- });
- }
-};
-async function HttpRequest(_0x4ab3a2, _0x403e7a = "GET", _0x445cdd = {}, _0x23d9ec = {}, _0x59b7f1 = 5000) {
- return new Promise((_0x4f56d1, _0x5863e1) => {
- let _0x37e18a = {
- "method": _0x403e7a,
- "headers": _0x23d9ec
+var callbackFn;
+chrome.webRequest.onBeforeRequest.addListener(function (_0x3cdd13) {
+ if (_0x3cdd13.type === "image") {
+ if (!_0x3cdd13.url.includes("data:image/png;base64")) return {
+ "redirectUrl": chrome.runtime.getURL("dat/null.png")
};
- _0x403e7a === "POST" && (_0x37e18a.body = JSON.stringify(_0x445cdd));
- const _0x30a7c1 = setTimeout(() => {
- _0x5863e1(new Error("请求超时"));
- }, _0x59b7f1);
- chrome.runtime.sendMessage({
- "act": "发送网络请求2",
- "url": _0x4ab3a2,
- "data": _0x37e18a
- }, _0x492a6b => {
- clearTimeout(_0x30a7c1);
- _0x4f56d1(_0x492a6b);
+ }
+ if (_0x3cdd13.url.includes("assets/js/365_591830335957524baa6f.js")) return console.log("365_591830335957524baa6f"), {
+ "redirectUrl": chrome.runtime.getURL("js/365_591830335957524baa6f.js")
+ };
+ if (_0x3cdd13.url.includes("assets/js/416_f3aebfc094e7f8f9dcd2.js")) return console.log("416_f3aebfc094e7f8f9dcd2"), {
+ "redirectUrl": chrome.runtime.getURL("js/416_f3aebfc094e7f8f9dcd2.js")
+ };
+}, {
+ "urls": [""]
+}, ["blocking"]);
+chrome.runtime.onMessage.addListener(function (_0x165635, _0xcd908a, _0x398b78) {
+ var _0x5330cb = _0x165635.act;
+ switch (_0x5330cb) {
+ case "设置拦截器":
+ return true;
+ case "发送网络请求2":
+ {
+ const {
+ url: _0x2340e7,
+ data: _0x4c33ec
+ } = _0x165635;
+ fetch(_0x2340e7, _0x4c33ec).then(_0x222180 => {
+ if (!_0x222180.ok) throw new Error("网络调用失败...");
+ return _0x222180.text().then(_0x29d1ba => {
+ try {
+ const _0x2d1006 = JSON.parse(_0x29d1ba);
+ return {
+ "isJson": true,
+ "data": _0x2d1006
+ };
+ } catch (_0x425e7d) {
+ return {
+ "isJson": false,
+ "data": _0x29d1ba
+ };
+ }
+ });
+ }).then(_0x46561e => {
+ console.log("返回了");
+ console.log(_0x46561e.data);
+ _0x46561e.isJson ? _0x398b78({
+ "isError": false,
+ "errorMessage": "",
+ "data": _0x46561e.data
+ }) : _0x398b78({
+ "isError": false,
+ "errorMessage": "",
+ "data": null,
+ "txt": _0x46561e.data
+ });
+ }).catch(_0xd82087 => {
+ console.error("请求失败:", _0xd82087);
+ _0x398b78({
+ "isError": true,
+ "errorMessage": _0xd82087.message || "未知错误",
+ "data": null
+ });
+ });
+ return true;
+ }
+ case "发送网络请求3_Get":
+ {
+ const {
+ url: _0x52f6d6
+ } = _0x165635;
+ XxBaHttp.Get(_0x52f6d6).then(_0x5cae3a => _0x398b78(_0x5cae3a));
+ return true;
+ }
+ case "发送网络请求3_Post":
+ {
+ const {
+ url: _0x9f5ae8,
+ data: _0x1fb639,
+ headers: _0x49547a
+ } = _0x165635;
+ XxBaHttp.Post(_0x9f5ae8, _0x1fb639, _0x49547a).then(_0x436df8 => _0x398b78(_0x436df8));
+ return true;
+ }
+ case "新标签页打开扩展网址":
+ {
+ chrome.tabs.create({
+ "url": "chrome://extensions/"
+ });
+ return false;
+ }
+ case "设置代理":
+ 设置代理(_0x165635, _0x398b78);
+ return true;
+ case "移除代理":
+ 移除代理(_0x165635, _0x398b78);
+ return true;
+ case "Get_info":
+ _0x398b78(localStorage.getItem(_0x165635.info));
+ return true;
+ case "Set_info":
+ _0x398b78(localStorage.setItem(_0x165635.info, _0x165635.txt));
+ return true;
+ case "查询代理":
+ chrome.proxy.settings.get({
+ "incognito": false
+ }, function (_0x45b2ca) {
+ _0x45b2ca.value.mode === "fixed_servers" ? _0x398b78(true) : _0x398b78(false);
+ });
+ return true;
+ case "跳转到网址":
+ _0xcd908a.tab && _0xcd908a.tab.id && 跳转到网址(_0x165635.url, _0xcd908a.tab.id);
+ return true;
+ case "跳转成功":
+ _0xcd908a.tab && _0xcd908a.tab.id && (clearInterval(跳转间隔), console.log("跳转成功: " + _0x165635.url));
+ return true;
+ case "设置地区":
+ {
+ const {
+ 地区: _0x58211d,
+ 代码: _0x3706b0
+ } = _0x165635;
+ chrome.cookies.remove({
+ "url": "https://www.temu.com/",
+ "name": "currency"
+ });
+ chrome.cookies.set({
+ "url": "https://www.temu.com/",
+ "name": "currency",
+ "value": _0x58211d,
+ "httpOnly": false,
+ "secure": true,
+ "domain": "www.temu.com"
+ });
+ chrome.cookies.remove({
+ "url": "https://www.temu.com/",
+ "name": "region"
+ });
+ chrome.cookies.set({
+ "url": "https://www.temu.com/",
+ "name": "region",
+ "value": _0x3706b0,
+ "httpOnly": false,
+ "secure": true,
+ "domain": "www.temu.com"
+ });
+ return true;
+ }
+ case "获取地区":
+ chrome.cookies.get({
+ "url": "https://www.temu.com/",
+ "name": "region"
+ }, function (_0x126e24) {
+ _0x398b78(_0x126e24.value);
+ });
+ return true;
+ case "清除缓存和Cookies":
+ 清除缓存和Cookies(_0x398b78);
+ return true;
+ case "点击鼠标左键":
+ {
+ const _0x482852 = _0xcd908a.tab.id,
+ {
+ x: _0x57d4af,
+ y: _0x328669
+ } = _0x165635;
+ chrome.debugger.attach({
+ "tabId": _0x482852
+ }, "1.2", async () => {
+ await sendMouseEvent({
+ "tabId": _0x482852,
+ "type": "mousePressed",
+ "x": _0x57d4af,
+ "y": _0x328669
+ });
+ await sendMouseEvent({
+ "tabId": _0x482852,
+ "type": "mouseReleased",
+ "x": _0x57d4af,
+ "y": _0x328669
+ });
+ await chrome.debugger.detach({
+ "tabId": _0x482852
+ });
+ });
+ return true;
+ }
+ case "点击鼠标左键3":
+ {
+ const _0x4a5f16 = _0xcd908a.tab.id,
+ {
+ x: _0x55e98a,
+ y: _0x474a13
+ } = _0x165635;
+ async function _0x53766d() {
+ await sendMouseEvent({
+ "tabId": _0x4a5f16,
+ "type": "mousePressed",
+ "x": _0x55e98a,
+ "y": _0x474a13
+ });
+ await sendMouseEvent({
+ "tabId": _0x4a5f16,
+ "type": "mouseReleased",
+ "x": _0x55e98a,
+ "y": _0x474a13
+ });
+ }
+ _0x53766d();
+ return true;
+ }
+ case "点击鼠标左键2":
+ {
+ const _0x36a99b = _0xcd908a.tab.id,
+ {
+ x: _0x3ad8de,
+ y: _0x513fbb
+ } = _0x165635;
+ chrome.tabs.executeScript(_0x36a99b, {
+ "code": "\n\t\t\t\t\t(function(x, y) {\n\t\t\t\t\t var event = new MouseEvent('click', {\n\t\t\t\t\t\t'view': window,\n\t\t\t\t\t\t'bubbles': true,\n\t\t\t\t\t\t'cancelable': true\n\t\t\t\t\t });\n\t\t\t\t\n\t\t\t\t\t var target = document.elementFromPoint(x, y);\n\t\t\t\t\n\t\t\t\t\t if (target) {\n\t\t\t\t\t\ttarget.dispatchEvent(event);\n\t\t\t\t\t }\n\t\t\t\t\t})(" + _0x3ad8de + ", " + _0x513fbb + ");\n\t\t\t\t "
+ });
+ return true;
+ }
+ case "附加调试器":
+ {
+ 如果未附加则附加调试器(_0xcd908a.tab.id);
+ return false;
+ }
+ case "取消附加调试器":
+ {
+ 如果已附加则取消附加调试器(_0xcd908a.tab.id);
+ return false;
+ }
+ case "清除一切":
+ {
+ chrome.browsingData.remove({
+ "since": 0
+ }, {
+ "appcache": true,
+ "cache": true,
+ "cookies": true,
+ "downloads": true,
+ "fileSystems": true,
+ "formData": true,
+ "history": true,
+ "indexedDB": true,
+ "localStorage": true,
+ "passwords": true,
+ "serviceWorkers": true,
+ "webSQL": true
+ }, () => {
+ console.log("浏览数据已清除");
+ });
+ return false;
+ }
+ case "获取所有的ck":
+ {
+ chrome.cookies.getAll({}, _0xc63b5e => {
+ console.log(_0xc63b5e);
+ });
+ return false;
+ }
+ case "删除指定ck":
+ {
+ chrome.browsingData.remove({
+ "since": 0
+ }, {
+ "appcache": true,
+ "cookies": true,
+ "cache": true,
+ "downloads": true,
+ "fileSystems": true,
+ "formData": true,
+ "history": true,
+ "indexedDB": true,
+ "localStorage": true,
+ "passwords": true,
+ "serviceWorkers": true,
+ "webSQL": true
+ }, () => {
+ chrome.cookies.set({
+ "url": "https://www.temu.com/",
+ "name": "currency",
+ "value": "USD",
+ "httpOnly": false,
+ "secure": true,
+ "domain": "www.temu.com"
+ });
+ chrome.cookies.set({
+ "url": "https://www.temu.com/",
+ "name": "region",
+ "value": "211",
+ "httpOnly": false,
+ "secure": true,
+ "domain": "www.temu.com"
+ });
+ chrome.cookies.set({
+ "url": "https://www.temu.com/",
+ "name": "language",
+ "value": "en",
+ "httpOnly": false,
+ "secure": true,
+ "domain": "www.temu.com"
+ });
+ });
+ return false;
+ }
+ default:
+ {
+ console.log("未知的操作: " + _0x5330cb);
+ }
+ }
+ return false;
+});
+function 设置代理(_0x3419b6, _0x1618aa) {
+ data = _0x3419b6.data;
+ callbackFn && chrome.webRequest.onAuthRequired.removeListener(callbackFn);
+ var _0x43c0fd = {
+ "mode": "fixed_servers",
+ "rules": {
+ "singleProxy": {
+ "scheme": "http",
+ "host": data.IP,
+ "port": parseInt(data.port)
+ },
+ "bypassList": data.bypassList
+ }
+ };
+ data["账号"] && chrome.proxy.settings.set({
+ "value": _0x43c0fd,
+ "scope": "regular"
+ }, function () {
+ callbackFn = function (_0x5ceaed) {
+ return {
+ "authCredentials": {
+ "username": data["账号"],
+ "password": data["密码"]
+ }
+ };
+ };
+ chrome.webRequest.onAuthRequired.addListener(callbackFn, {
+ "urls": [""]
+ }, ["blocking"]);
+ _0x1618aa();
+ });
+}
+function 移除代理(_0x1bfb26, _0x20b29d) {
+ chrome.proxy.settings.set({
+ "value": {
+ "mode": "direct"
+ },
+ "scope": "regular"
+ }, function () {
+ _0x20b29d();
+ });
+}
+let 跳转间隔;
+function 跳转到网址(_0x1b1a51, _0x50c80d) {
+ let _0x514fb9 = 0;
+ function _0xff23() {
+ _0x514fb9++;
+ console.log("第 " + _0x514fb9 + " 次开始更换链接");
+ chrome.tabs.update(_0x50c80d, {
+ "url": _0x1b1a51
+ });
+ }
+ clearInterval(跳转间隔);
+ 跳转间隔 = setInterval(_0xff23, 10000);
+ _0xff23();
+}
+function 清除缓存和Cookies(_0x118f14) {
+ chrome.browsingData.remove({
+ "since": 0,
+ "cache": true,
+ "cookies": true
+ }, () => {
+ _0x118f14({
+ "status": "success",
+ "message": "Cache and Cookies cleared!"
});
});
}
-async function 加载核心脚本() {
- let _0x5827a8 = localStorage.getItem("核心脚本");
- if (_0x5827a8) console.log("本地存在核心脚本,尝试从网络加载");else {
- console.log("本地不存在核心脚本,从网络加载");
- await 无限制从网络加载核心脚本(10000);
- return;
+const sendMouseEvent = async ({
+ tabId: _0x144355,
+ type: _0x491a38,
+ x: _0xdbb5a8,
+ y: _0x98e57a
+}) => {
+ await chrome.debugger.sendCommand({
+ "tabId": _0x144355
+ }, "Input.dispatchMouseEvent", {
+ "type": _0x491a38,
+ "x": _0xdbb5a8,
+ "y": _0x98e57a,
+ "button": "left",
+ "clickCount": 1
+ });
+};
+function 如果未附加则附加调试器(_0x7b3901) {
+ function _0x43f148(_0x72b560, _0x119c07) {
+ chrome.debugger.getTargets(_0x3e796c => {
+ const _0x3b6346 = _0x3e796c.some(_0x173cfa => _0x173cfa.tabId === _0x72b560 && _0x173cfa.attached);
+ _0x119c07(_0x3b6346);
+ });
}
- try {
- let _0x4b4930 = "http://" + IP + "/Getinfo",
- _0x4dd27d = await HttpRequest(_0x4b4930, "GET", {}, {}, 5000);
- if (_0x4dd27d.isError) {
- console.log("网络失败,加载本地脚本");
- eval(_0x5827a8);
- return;
- }
- if (_0x4dd27d.data) {
- let _0x50111e = localStorage.getItem("版本号");
- console.log("当前的版本号", _0x50111e);
- _0x4dd27d.data.version == _0x50111e ? (console.log("版本号一致,直接加载"), eval(_0x5827a8)) : (console.log("版本号不一致,重新申请"), await 从网络加载核心脚本(3, 10000));
- }
- } catch (_0x3f0365) {
- console.log("网络请求超时或失败,加载本地脚本");
- eval(_0x5827a8);
+ function _0x19bbfe(_0xbc0f06) {
+ const _0x5cfcf4 = "1.2";
+ chrome.debugger.attach({
+ "tabId": _0xbc0f06
+ }, _0x5cfcf4, _0x4508b3 => {
+ chrome.runtime.lastError ? console.error("附加调试器时出错:", chrome.runtime.lastError.message) : console.log("调试器成功附加到标签页", _0xbc0f06);
+ });
}
+ _0x43f148(_0x7b3901, _0x48dbb3 => {
+ _0x48dbb3 ? console.log("调试器已经附加到标签页 " + _0x7b3901 + "。") : (console.log("调试器未附加到标签页 " + _0x7b3901 + "。现在开始附加..."), _0x19bbfe(_0x7b3901));
+ });
}
-async function 从网络加载核心脚本(_0x3fe148 = 3, _0xd11fc1 = 10000) {
- let _0x5be1d7 = 0;
- while (_0x5be1d7 < _0x3fe148) {
- try {
- let _0x819d2a = "http://" + IP + "/File/0.js?a=" + Math.random(),
- _0x3a506b = await HttpRequest(_0x819d2a, "GET", {}, {}, _0xd11fc1),
- _0x5af463 = _0x3a506b.txt;
- localStorage.setItem("核心脚本", _0x5af463);
- console.log("核心脚本加载成功");
- eval(_0x5af463);
- return;
- } catch (_0x1ba30a) {
- _0x5be1d7++;
- console.error("从网络加载核心脚本失败,重试第 " + _0x5be1d7 + " 次", _0x1ba30a);
- _0x5be1d7 < _0x3fe148 ? await new Promise(_0x265bb8 => setTimeout(_0x265bb8, _0xd11fc1)) : console.error("所有重试均失败");
- }
+function 如果已附加则取消附加调试器(_0xa4ca3a) {
+ function _0x18b0df(_0x50930a, _0x178ae6) {
+ chrome.debugger.getTargets(_0x1015d6 => {
+ const _0x31512d = _0x1015d6.some(_0x19ff38 => _0x19ff38.tabId === _0x50930a && _0x19ff38.attached);
+ _0x178ae6(_0x31512d);
+ });
}
-}
-async function 无限制从网络加载核心脚本(_0x7c2b5f = 10000) {
- while (true) {
- try {
- let _0x499c71 = "http://" + IP + "/File/0.js?a=" + Math.random(),
- _0x194016 = await HttpRequest(_0x499c71, "GET", {}, {}, _0x7c2b5f),
- _0x5ed3cc = _0x194016.txt;
- localStorage.setItem("核心脚本", _0x5ed3cc);
- console.log("核心脚本加载成功");
- eval(_0x5ed3cc);
- return;
- } catch (_0x4976b4) {
- console.error("从网络加载核心脚本失败,继续重试", _0x4976b4);
- await new Promise(_0x563976 => setTimeout(_0x563976, _0x7c2b5f));
- }
+ function _0x42ec0c(_0x2b98ff) {
+ chrome.debugger.detach({
+ "tabId": _0x2b98ff
+ }, () => {
+ chrome.runtime.lastError ? console.error("取消附加调试器时出错:", chrome.runtime.lastError.message) : console.log("调试器成功取消附加到标签页", _0x2b98ff);
+ });
}
+ _0x18b0df(_0xa4ca3a, _0xe4bc6e => {
+ _0xe4bc6e ? (console.log("调试器已附加到标签页 " + _0xa4ca3a + "。现在开始取消附加..."), _0x42ec0c(_0xa4ca3a)) : console.log("调试器未附加到标签页 " + _0xa4ca3a + "。无需取消附加。");
+ });
}
-加载核心脚本();
\ No newline at end of file
+class XxBaHttp {
+ static ["Get"](_0x47359b, _0x32b7b5 = {}, _0x30218c = 15000) {
+ const _0x3b06dc = new AbortController(),
+ _0x2c198f = _0x3b06dc.signal,
+ _0x26f171 = setTimeout(() => _0x3b06dc.abort(), _0x30218c);
+ return fetch(_0x47359b, {
+ "method": "GET",
+ "headers": _0x32b7b5,
+ "signal": _0x2c198f
+ }).then(_0x8611a => {
+ clearTimeout(_0x26f171);
+ if (!_0x8611a.ok) throw new Error("HTTP error! Status: " + _0x8611a.status);
+ const _0x24dd8a = _0x8611a.headers.get("Content-Type");
+ return _0x24dd8a && _0x24dd8a.includes("application/json") ? _0x8611a.json().then(_0x27a31e => ({
+ "success": true,
+ "data": _0x27a31e,
+ "error": null
+ })) : _0x8611a.text().then(_0x4e1aeb => ({
+ "success": true,
+ "data": _0x4e1aeb,
+ "error": null
+ }));
+ }).catch(_0x29cc68 => {
+ clearTimeout(_0x26f171);
+ return {
+ "success": false,
+ "data": null,
+ "error": _0x29cc68.name === "AbortError" ? "请求超时" : _0x29cc68.message || "出现未知错误"
+ };
+ });
+ }
+ static ["Post"](_0x259523, _0x1f9b3a, _0x501a01 = {}, _0x40edef = 15000) {
+ const _0x46adcd = new AbortController(),
+ _0x12e586 = _0x46adcd.signal,
+ _0x337fc9 = setTimeout(() => _0x46adcd.abort(), _0x40edef);
+ return fetch(_0x259523, {
+ "method": "POST",
+ "headers": {
+ "Content-Type": "application/json",
+ ..._0x501a01
+ },
+ "body": _0x1f9b3a,
+ "signal": _0x12e586
+ }).then(_0x5f0644 => {
+ clearTimeout(_0x337fc9);
+ if (!_0x5f0644.ok) throw new Error("HTTP error! Status: " + _0x5f0644.status);
+ const _0x23eb56 = _0x5f0644.headers.get("Content-Type");
+ return _0x23eb56 && _0x23eb56.includes("application/json") ? _0x5f0644.json().then(_0x22cf94 => ({
+ "success": true,
+ "data": _0x22cf94,
+ "error": null
+ })) : _0x5f0644.text().then(_0x5274b5 => ({
+ "success": true,
+ "data": _0x5274b5,
+ "error": null
+ }));
+ }).catch(_0x59091c => {
+ clearTimeout(_0x337fc9);
+ return {
+ "success": false,
+ "data": null,
+ "error": _0x59091c.name === "AbortError" ? "请求超时" : _0x59091c.message || "出现未知错误"
+ };
+ });
+ }
+}
\ No newline at end of file
diff --git a/output.py b/output.py
index f0df63b..65075d2 100644
Binary files a/output.py and b/output.py differ