Moonsec V3 Deobfuscator open source
Key RequiredUniversal

Moonsec V3 Deobfuscator open source

Universal ScriptRemoteAbuserRemoteAbuser 1.1K views 72 executesUpdated Mar 22, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•166 lines (4811 chars)
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local player = game.Players.LocalPlayer

local gui = Instance.new("ScreenGui", player.PlayerGui)
gui.Name = "MoonsecDumper"

local frame = Instance.new("Frame", gui)
frame.Size = UDim2.new(0, 400, 0, 300)
frame.Position = UDim2.new(0.5, -200, 0.5, -150)
frame.BackgroundColor3 = Color3.fromRGB(20,20,20)
frame.Active = true

local input = Instance.new("TextBox", frame)
input.Size = UDim2.new(1, -20, 0, 40)
input.Position = UDim2.new(0, 10, 0, 10)
input.PlaceholderText = "paste loadstring..."
input.TextColor3 = Color3.new(1,1,1)
input.BackgroundColor3 = Color3.fromRGB(40,40,40)

local execute = Instance.new("TextButton", frame)
execute.Size = UDim2.new(0.5, -15, 0, 40)
execute.Position = UDim2.new(0, 10, 0, 60)
execute.Text = "EXECUTE"

local copy = Instance.new("TextButton", frame)
copy.Size = UDim2.new(0.5, -15, 0, 40)
copy.Position = UDim2.new(0.5, 5, 0, 60)
copy.Text = "COPY"

local outputBox = Instance.new("TextBox", frame)
outputBox.Size = UDim2.new(1, -20, 1, -120)
outputBox.Position = UDim2.new(0, 10, 0, 110)
outputBox.MultiLine = true
outputBox.TextWrapped = true
outputBox.TextYAlignment = Enum.TextYAlignment.Top
outputBox.TextColor3 = Color3.new(1,1,1)
outputBox.BackgroundColor3 = Color3.fromRGB(30,30,30)

local toggleBtn = Instance.new("TextButton", frame)
toggleBtn.Size = UDim2.new(0, 30, 0, 30)
toggleBtn.Position = UDim2.new(1, -35, 0, 5)
toggleBtn.Text = "-"

local mobileToggle = Instance.new("TextButton", gui)
mobileToggle.Size = UDim2.new(0, 100, 0, 40)
mobileToggle.Position = UDim2.new(0, 10, 0.8, 0)
mobileToggle.Text = "OPEN"

local resize = Instance.new("Frame", frame)
resize.Size = UDim2.new(0, 20, 0, 20)
resize.Position = UDim2.new(1, -20, 1, -20)
resize.BackgroundColor3 = Color3.fromRGB(80,80,80)

local minimized = false
local dragging = false
local dragStart, startPos
local resizing = false
local resizeStart, startSize
local collected = ""

local function addOutput(t)
	collected = collected .. t .. "\n"
	outputBox.Text = collected
end

frame.InputBegan:Connect(function(inputObj)
	if inputObj.UserInputType == Enum.UserInputType.MouseButton1 or inputObj.UserInputType == Enum.UserInputType.Touch then
		dragging = true
		dragStart = inputObj.Position
		startPos = frame.Position
	end
end)

frame.InputEnded:Connect(function(inputObj)
	if inputObj.UserInputType == Enum.UserInputType.MouseButton1 or inputObj.UserInputType == Enum.UserInputType.Touch then
		dragging = false
	end
end)

resize.InputBegan:Connect(function(inputObj)
	if inputObj.UserInputType == Enum.UserInputType.MouseButton1 or inputObj.UserInputType == Enum.UserInputType.Touch then
		resizing = true
		resizeStart = inputObj.Position
		startSize = frame.Size
	end
end)

resize.InputEnded:Connect(function()
	resizing = false
end)

UIS.InputChanged:Connect(function(inputObj)
	if dragging and (inputObj.UserInputType == Enum.UserInputType.MouseMovement or inputObj.UserInputType == Enum.UserInputType.Touch) then
		local delta = inputObj.Position - dragStart
		local goal = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
		TweenService:Create(frame, TweenInfo.new(0.08, Enum.EasingStyle.Quad), {Position = goal}):Play()
	end

	if resizing then
		local delta = inputObj.Position - resizeStart
		frame.Size = UDim2.new(0, startSize.X.Offset + delta.X, 0, startSize.Y.Offset + delta.Y)
	end
end)

toggleBtn.MouseButton1Click:Connect(function()
	minimized = not minimized
	local size = minimized and UDim2.new(0, 400, 0, 40) or UDim2.new(0, 400, 0, 300)
	frame:TweenSize(size, Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.25, true)
	input.Visible = not minimized
	execute.Visible = not minimized
	copy.Visible = not minimized
	outputBox.Visible = not minimized
	toggleBtn.Text = minimized and "+" or "-"
end)

UIS.InputBegan:Connect(function(key, gp)
	if gp then return end
	if key.KeyCode == Enum.KeyCode.K then
		gui.Enabled = not gui.Enabled
	end
end)

mobileToggle.MouseButton1Click:Connect(function()
	gui.Enabled = not gui.Enabled
end)

local function deep_unpack(tbl)
	for _, v in pairs(tbl) do
		if type(v) == "table" then
			deep_unpack(v)
		elseif type(v) == "string" then
			addOutput(v)
		end
	end
end

local old_unpack = unpack or table.unpack

function unpack(...)
	for _, v in ipairs({...}) do
		if type(v) == "table" then
			deep_unpack(v)
		end
	end
	return old_unpack(...)
end

_G.unpack = unpack

execute.MouseButton1Click:Connect(function()
	collected = ""
	outputBox.Text = ""
	local success, err = pcall(function()
		loadstring(input.Text)()
	end)
	if not success then
		addOutput("ERROR: "..err)
	end
end)

copy.MouseButton1Click:Connect(function()
	if setclipboard then
		setclipboard(collected)
	end
end)

Features & Information

Idk deobfuscator

Community Comments (7)

RemoteAbuserRemoteAbuserMar 22, 2026

Leave a commento

zosynzosynMar 22, 2026

top ten stuff that might not work

zosynzosynMar 22, 2026

let me test this

Replying to @zosyn
RemoteAbuserRemoteAbuserMar 22, 2026

@realheckersbrother test it vro

Replying to @RemoteAbuser
zosynzosynMar 22, 2026

@RemoteAbuser vro i have no moonsec scritps

zosynzosynMar 22, 2026

its a dumper not onbfuscator doesnt work btw

Galaxy7657y3Galaxy7657y3Jun 9, 2026

the f u mean this shi works better than ever

More Scripts for Universal Scripts