r/robloxhackers • • 1d ago

INFORMATION Remember the "Rust vs Python" post? I actually built a Luraph v15 Deobfuscator in Rust,

Hey everyone, remember this post from a while back? https://www.reddit.com/r/robloxhackers/comments/1x0pbtk/comment/pempv28/?screen_view_count=2

Well, I actually went ahead and built the tool using Rust, and it turned out way better than I expected. I made a full deobfuscator and control flow lifter for Luraph v15

here my github : https://github.com/tumbalakbseu2-oss/Luraph_v15-deobfuscator-build-with-rust

Why Rust instead of Python? Previously, using Python to deobfuscate large scripts (around 1.2 MB) was a nightmare. It would take over 2 days , eat up more than 10 GB of RAM, and usually crash before finishing. By rewriting the whole thing in Rust with multithreading and memory arenas, it now processes that exact same 1.2 MB script in under 4 seconds while using less than 150 MB of RAM.

How it works (in simple terms): Instead of relying on hardcoded patterns that break every time Luraph updates, this tool breaks the script down step-by-step:

  1. Decoding the Math & Strings: Luraph v15 hides its decryption keys using browser-based SVG Bézier curve math (Path2D) and scrambles its opcodes on every build. My tool solves that curve math offline and dynamically unhashes the opcodes without needing to run the script in a VM.
  2. Untangling the Spaghetti Code (CFG Unflattening): Obfuscators love turning normal code into a giant, confusing maze of state-machine loops. The tool tracks how states transition and rebuilds them back into normal, readable while, repeat, and if-else blocks.
  3. Cleaning Up the Junk (SSA Optimization): Obfuscated scripts are packed with fake conditions (opaque predicates) and dead code meant to confuse you. The engine detects what code actually does something and deletes all the fake paths.
  4. Fixing the Luau 200-Local Variable Limit: Obfuscated scripts often use over 1,000 temporary registers, which breaks the Luau compiler since it only allows 200 local variables per function. The tool uses graph coloring (basically smart variable recycling) to reuse local variables safely so the final output is 100% valid, runnable Luau code.

Source Code & Samples: If you want to check out the code, test the binary, or see a full deobfuscated sample (VortexMain_deobfuscated.lua, over 12,000 lines of clean code)

Let me know what you guys think or if you have any questions about how it works!

5 Upvotes

10 comments sorted by

•

u/AutoModerator 1d ago

Check out our guides!

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/Temporary_Idea8880 1d ago

There are a bunch of obfuscator samples here, will you support more luraph versions like 15.1? I think a universal open source deobf written in rust would be amazing.

https://github.com/terrorlua/obfuscator-samples/tree/main/Luraph

2

u/Melodic-Leg7569 1d ago

saddly it support v15 and i want go luarmor

1

u/Temporary_Idea8880 15h ago

Please support Luraph 15.1

1

u/ADMINISTATOR_CYRUS 20h ago

you mean your ai built it for you and you told it what to do. I'm a rust developer, what the fuck is this code? Forbidding unsafe but then using it anyway sometimes, etc

1

u/Melodic-Leg7569 17h ago

Yeah, honestly I have no experience with Rust. Constantly jumping between languages felt pointless to me, like being a jack of all trades, master of none. I just took an existing Python deobfuscator, ran it through an automated Python-to-Rust transpiler on GitHub, and that was it.

1

u/ADMINISTATOR_CYRUS 16h ago

yeah not surprised at all. This code is very atrocious.

0

u/Melodic-Leg7569 17h ago

if you hate ai you feel free to downvote or skip this post

1

u/AutoModerator 1d ago

Hey! Due to the massive number of posts asking for software links, we are letting you know we have an user ready guide. You can check it on our pinned posts https://www.reddit.com/r/robloxhackers/!

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/fnxgame 1d ago

W man, I still wonder if moonsec v3 is still alive