Categories > Coding > Lua >

Deobfuscate this script for free oxygen.

Alternate

stop take my rice

vip

Posts: 707

Threads: 115

Joined: Mar, 2022

Reputation: 36

Posted

So, I found this free Lua obfuscator online. I wanted to test how good it is, so here is a script obfuscated by it that you can deobfuscate. I don't believe the obfuscator has been mentioned before, but if it has sorry for me not knowing. First person to deobfuscate it gets free oxygen.

 

https://hastebin.com/jimiborude.apache

 

NOTE: You must reply with the full script to claim your prize.

  • 0

Added

@_realnickk

It's not a VM paste to my knowledge, try deobfuscating it. Ironbrew probably could deobfuscate it. The obfuscator itself isn't actually a LuaU one (at least I don't think it is) but I just want to see how easy it would be for someone to deobfuscate it.

  • 0

we are dead

SeizureSalad

i love femboys

Posts: 1147

Threads: 79

Joined: Mar, 2021

Reputation: 37

Replied

saw this obfuscator on like either wrd or v3rm but yes it's a ib paste

  • 0

"Questionable intellegence, but I like the mystery" - CubeFaces

https://cdn.discordapp.com/attachments/1136067487847415848/1138948596679589898/sig.png

Posts: 1381

Threads: 71

Joined: May, 2022

Reputation: 17

Replied

oh no a variable scrambler what am i going to do!!

  • 0

Added

i will try this when i get home

  • 0

Did I mention I use arch btw?

Alternate

stop take my rice

vip

Posts: 707

Threads: 115

Joined: Mar, 2022

Reputation: 36

Replied

@mwc94087

I'm dumb when it comes to Lua, what do I do with that LOL?

  • 0

Added

@mwc94087

Neither of the provided scripts are what the actual script is. I included a unused variable that only people who correctly deobfuscate it will be able to find and see.

  • 0

Added

@mwc94087

It's luaobfuscator.com. I don't think it's specifically a LuaU obfuscator, I think it's made for just regular Lua.

 

I haven't seen it mentioned before, either because it's common knowledge, it's horrible, or nobody really knows about it. So I wanted to see if anyone could deobfuscate it.

  • 0

Added

@_realnickk

Alright, I just found something really annoying about that obfuscator. Basically, no matter what you enter into the obfuscator, if you press the actual "Obfuscate" button, it just replaces your input with an obfuscated HelloWorld script (which is what you deobfuscated).


Here is a version of the code that is obfuscated correctly using the other buttons. Try deobfuscating this one, if you suceed you will win your oxygen.

local v0=string.char;local v1=string.byte;local v2=string.sub;local v3=bit32 or bit;local v4=v3.bxor or v3.bxor;local v5=table.concat;local v6=table.insert;local function v7(v13,v14)local v15={};for i=1, #v13 do v6(v15,v0(v4(v1(v2(v13,i,i + 1)),v1(v2(v14,(824 -((1258 -831) + 396)) + ((i-1)% #v14),(1 -0) + ((i-(1 -0))% #v14) + 1 + 0)))%256));end return v5(v15);end print(v7("\20\59\162","\109\94\209\61\212\66\176"));print(v7("\228\64\125","\137\40\16\110\150"));local v8=v7("\158\190\190","\231\219\205\180\235");local v9=v7("\184\79\71","\213\39\42\222\102");print(v8);print(v9);local v10=print;v10(v7("\100\167\89","\29\194\42\221\56\89\191"));local v11=v7("\204\4\182\92","\181\97\215\52\235");local v12=v7("\143\138","\225\229\153\231\65");v10(v11);v10(v12);

 

  • 0

we are dead

Posts: 147

Threads: 16

Joined: Jul, 2020

Reputation: 7

Replied

@Alternate This is extremely easy to get the original source to (hence the original bytecode is right in your face). This code just uses a math equation to convert the bytecode back to it's original format from the randomized format. Terrible way to obfuscate scripts since anyone with common sense can copy and paste the math equation to retrieve the original bytecode.

 

local function format_bytecode(bytecode, format)
	local storage = {}
	
	local original_bytecode = ''
		
	for i = 1, #bytecode do
		table.insert(
			storage,
			string.char(
				bit32.bxor(
					string.byte(string.sub(bytecode, i, i + 1)),
					string.byte(
						string.sub(
							format,
							(824 - ((1258 - 831) + 396)) + ((i - 1) % #format),
							(1 - 0) + ((i - (1 - 0)) % #format) + 1 + 0
						)
					)
				) % 256
			)
		)
		
		
		original_bytecode = original_bytecode..'\\'..bit32.bxor(string.byte(string.sub(bytecode, i, i + 1)), string.byte(string.sub(format, (824 - ((1258 - 831) + 396)) + ((i - 1) % #format), (1 - 0) + ((i - (1 - 0)) % #format) + 1 + 0))) % 256
	end
	
	print('[Original Bytecode]: '..original_bytecode)
	
	return table.concat(storage)
end

-- 'Randomized' Format
warn('Randomized Format')

print('[String]: '..format_bytecode('\20\59\162', '\109\94\209\61\212\66\176')) -- yes
print('[String]: '..format_bytecode('\228\64\125', '\137\40\16\110\150')) -- mhm
print('[String]: '..format_bytecode('\158\190\190', '\231\219\205\180\235')) -- yes
print('[String]: '..format_bytecode('\184\79\71', '\213\39\42\222\102')) -- mhm
print('[String]: '..format_bytecode('\100\167\89', '\29\194\42\221\56\89\191')) -- yes
print('[String]: '..format_bytecode('\204\4\182\92', '\181\97\215\52\235')) -- yeah
print('[String]: '..format_bytecode('\143\138', '\225\229\153\231\65')) -- no

--Original Format
warn('Original Format')

print('[String]: '..'\121\101\115') -- yes
print('[String]: '..'\109\104\109') -- mhm
print('[String]: '..'\121\101\115') -- yes
print('[String]: '..'\109\104\109') -- mhm
print('[String]: '..'\121\101\115') -- yes
print('[String]: '..'\121\101\97\104') -- yeah
print('[String]: '..'\110\111') -- no

--[[ Output
	06:47:46.716  yes
	06:47:46.716  mhm
	06:47:46.716  yes
	06:47:46.716  mhm
	06:47:46.716  yes
	06:47:46.717  yeah
	06:47:46.717  no
  
	print('yes')
	print('mhm')
	print('yes')
	print('mhm')
	print('yes')
	print('yeah')
	print('no')
]]

 

Therefore your script is just:

 

print('yes')
print('mhm')
print('yes')
print('mhm')
print('yes')
print('yeah')
print('no')
  • 0

Alternate

stop take my rice

vip

Posts: 707

Threads: 115

Joined: Mar, 2022

Reputation: 36

Replied

@Reversed

For extremely easy, the last two people (including you) who have claimed to deobfuscate it have gotten it wrong. It's not just a simple print script, there are variables and other things involved (they are not unused variables).

  • 0

we are dead

Users viewing this thread:

( Members: 0, Guests: 1, Total: 1 )