Deploy cool-vast
Deploy and Host cool-vast with Railway
deobfuscator
Just deployed
Deploy and Host Lunr Bot Deobfuscator on Railway
Lunr Bot Deobfuscator is a Discord bot that fetches obfuscated Lua scripts from Roblox asset IDs or URLs and runs them through a multi-engine deobfuscation pipeline. It supports Luraph, MoonSec, IronBrew, Prometheus, and PSU using VM devirtualization (Java), static analysis (TypeScript/De4Lua), hex decoding, and loadstring chain resolution.
About Hosting Lunr Bot Deobfuscator
Hosting this bot requires setting up a Python 3.10 environment with Discord.py, aiohttp, and lupa. The bot orchestrates external tools: LuraphDevirtualizer.jar (VM devirtualization), unluac.jar (bytecode decompilation), and the De4Lua TypeScript framework. Railway handles always-on deployment, automatically rebuilds on GitHub pushes, and manages environment variables like DISCORD_TOKEN. The bot processes scripts in temporary files and cleans up automatically after each request. No database is required.
Common Use Cases
- Lua Script Recovery - Restore readable source code from obfuscated Roblox scripts for analysis
- Security Research - Study how different obfuscators (Luraph, MoonSec, IronBrew, Prometheus) transform Lua code
- Game Cheat Analysis - Deobfuscate malicious scripts to understand and prevent cheating in games
Dependencies for Lunr Bot Deobfuscator Hosting
- Python 3.10+ (runtime.txt specifies 3.10.12)
- Java 8+ runtime (for LuraphDevirtualizer.jar and unluac.jar)
- Node.js + npm (for De4Lua TypeScript framework to run
npm run start)
Deployment Dependencies
- LuraphDeobfuscator Release - Download
LuraphDevirtualizer.jar - unluac Decompiler - Download
unluac.jar - De4Lua Repository - Clone:
git clone https://github.com/ShufflePerson/De4Lua - Obfuscator Samples - Optional test suite for validation
Implementation Details
The bot uses a 5-stage pipeline:
# Stage 1: Hex decoding
script_content = decode_hex_string(script_content)
# Stage 2: Resolve loadstring chains recursively
script_content = await resolve_loadstring_chain(script_content)
# Stage 3: Detect obfuscator type
detection = detect_obfuscator(script_content)
# Stage 4: Route to appropriate engine
if detection['obfuscator'] == 'luraph':
subprocess.run(['java', '-jar', 'LuraphDevirtualizer.jar', '-i', input_path, '-o', luac_path])
subprocess.run(['java', '-jar', 'unluac.jar', luac_path])
else:
subprocess.run(['npm', 'run', 'start', '--', input_path, output_path], cwd='De4Lua')
# Stage 5: Return deobfuscated code to Discord
Required Environment Variable (Railway Variables tab):
DISCORD_TOKEN= Your Discord bot token
Bot Commands:
.get- Fetch and follow loadstring chains.deobf- Run full deobfuscation pipeline on last fetched script
Why Deploy Lunr Bot Deobfuscator on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Lunr Bot Deobfuscator on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
deobfuscator
zenos-source/deobfuscator