local replacements = { { "gg.SIGN_EQUAL", 'gg["SIGN_EQUAL"]' }, { "gg.TYPE_AUTO", 'gg["TYPE_AUTO"]' }, { "gg.TYPE_DWORD", 'gg["TYPE_DWORD"]' }, { "gg.TYPE_FLOAT", 'gg["TYPE_FLOAT"]' }, { "gg.TYPE_DOUBLE", 'gg["TYPE_DOUBLE"]' }, { "gg.TYPE_WORD", 'gg["TYPE_WORD"]' }, { "gg.TYPE_BYTE", 'gg["TYPE_BYTE"]' }, { "gg.TYPE_QWORD", 'gg["TYPE_QWORD"]' }, { "gg.TYPE_XOR", 'gg["TYPE_XOR"]' }, { "gg.REGION_ANONYMOUS", 'gg["REGION_ANONYMOUS"]' }, { "gg.REGION_BAD", 'gg["REGION_BAD"]' }, { "gg.REGION_C_ALLOC", 'gg["REGION_C_ALLOC"]' }, { "gg.REGION_C_BSS", 'gg["REGION_C_BSS"]' }, { "gg.REGION_C_DATA", 'gg["REGION_C_DATA"]' }, { "gg.REGION_C_HEAP", 'gg["REGION_C_HEAP"]' }, { "gg.REGION_CODE_APP", 'gg["REGION_CODE_APP"]' }, { "gg.REGION_CODE_SYS", 'gg["REGION_CODE_SYS"]' }, { "gg.REGION_JAVA_HEAP", 'gg["REGION_JAVA_HEAP"]' }, { "gg.REGION_OTHER", 'gg["REGION_OTHER"]' }, { "gg.REGION_PPSSPP", 'gg["REGION_PPSSPP"]' }, { "gg.REGION_STACK", 'gg["REGION_STACK"]' }, { "gg.REGION_VIDEO", 'gg["REGION_VIDEO"]' }, } local class_list = { ["table"] = 1, ["_G"] = 1, ["debug"] = 1, ["os"] = 1, ["io"] = 1, ["package"] = 1, ["bit32"] = 1, ["utf8"] = 1, ["string"] = 1, ["math"] = 1, ["gg"] = 1 } local gettabup = { ["thread"] = 2, ["ipairs"] = 2, ["updateText"] = 2, ["pcall"] = 2, ["require"] = 2, ["import"] = 2, ["getPhoneInfo"] = 2, ["coroutine"] = 2, ["newView"] = 2, ["setStyle"] = 2, ["equals"] = 2, ["Lock"] = 2, ["drawCircle"] = 2, ["getWH"] = 2, ["com"] = 2, ["android"] = 2, ["float"] = 2, ["disDrawAcc"] = 2, ["package"] = 2, ["setWidth"] = 2, ["stack"] = 2, ["utf8"] = 2, ["ArrayListAdapter"] = 2, ["LinearLayout"] = 2, ["loadfile"] = 2, ["setScreenshots"] = 2, ["rawget"] = 2, ["setRange"] = 2, ["loadmenu"] = 2, ["int"] = 2, ["pairs"] = 2, ["http"] = 2, ["string"] = 2, ["removeAllView"] = 2, ["loadbitmap"] = 2, ["error"] = 2, ["updateColor"] = 2, ["drawRect"] = 2, ["math"] = 2, ["setSize"] = 2, ["removeAll"] = 2, ["xpcall"] = 2, ["_VERSION"] = 2, ["web"] = 2, ["drawLine"] = 2, ["dofile"] = 2, ["newPaint"] = 2, ["print"] = 2, ["drawScaled"] = 2, ["drawPicture"] = 2, ["type"] = 2, ["rawlen"] = 2, ["dex"] = 2, ["collectgarbage"] = 2, ["char"] = 2, ["load"] = 2, ["tostring"] = 2, ["table"] = 2, ["toast"] = 2, ["debug"] = 2, ["java"] = 2, ["rawequal"] = 2, ["loadvector"] = 2, ["assert2"] = 2, ["gc"] = 2, ["LuaBitmapDrawable"] = 2, ["updateDraw"] = 2, ["setColor"] = 2, ["activity"] = 2, ["loadBitmap"] = 2, ["gg"] = 2, ["rawset"] = 2, ["getmetatable"] = 2, ["setmetatable"] = 2, ["os"] = 2, ["io"] = 2, ["context"] = 2, ["instanceof"] = 2, ["drawText"] = 2, ["tools"] = 2, ["short"] = 2, ["bit32"] = 2, ["next"] = 2, ["select"] = 2, ["luajava"] = 2, ["data"] = 2, ["LuaDrawable"] = 2, ["removeDraw"] = 2, ["import"] = 2, ["image"] = 2, ["tonumber"] = 2, ["AdapterView"] = 2, ["loadlayout"] = 2, ["assert"] = 2, ["closeMTP"] = 2, ["copyFile"] = 2, ["setOrigin"] = 2, ["double"] = 2, ["ArrayPageAdapter"] = 2, ["long"] = 2, ["byte"] = 2, ["file"] = 2, ["File"] = 2, ["drawProgress"] = 2, ["threadPcall"] = 2, } local characters = "123456789qwertyuiopasdfghjklzxcvbnmQAWSEDRFTGYHUJIKOLPZMXNCBV+-*<>" local strings = { [1] = '%"(.-)%"', [2] = '%"%\\"(.-)%\\"%"', [3] = "%'%\\'(.-)%\\'%'", [4] ='%[==%[(.-)%]==%]', [5] ='%[%[(.-)%]%]', [6] ='%[%[.-(.-)%]%]', [7] ='%[%[(.-)]]', [8] ='[[(.-)]]', [9] ='[=[(.-)]=]', [10] = "%'(.-)%'", [113] = "%'(.-)%'", [12] = '%".-(.-)%"', } local key1 = math.random(1, 255) local key2 = math.random(1, 255) local key3 = math.random(1, 255) local key4 = math.random(1, 255) local key5 = math.random(1, 255) local key6 = math.random(1, 255) local gga = math.random(1, 255) local ggb = math.random(1, 255) local ggc = math.random(1, 255) local ggd = math.random(1, 255) local dex = { [1] = '(function() local s1 = function() return ', [2] = ' end local s2=(function()return s1() end)() return s2 end)()', } local dex2 = { [1] = "(function() local s1,s2 goto ss ::ss1:: s2=(function()return s1() end)() goto ss2 ::ss:: s1 = function() return ", [2] = " end goto ss1 ::ss2:: return s2 end)()" } Lying=gg.prompt({ "" },{ gg.getFile() },{ "file" }) data = io.open(Lying[1],"r"):read("*a") local Min_num = function(...) local arm = {...} local num = nil for i, v in pairs(arm) do if v ~= nil then if not num then num = v elseif num > v then num = v end end end return num end local function replaceFuncs(data, replacements) for _, pattern in ipairs(replacements) do data = data:gsub(pattern[1], pattern[2]) end return data end local function tonumber16(Text) return "(\""..Text:gsub(".", function(jia) return "\\x"..string.format("%02X", (string.byte(jia)) % 256) end):gsub(" ", "+").."\")" end data=data:gsub("%-%-%[%[.-%]%]",""):gsub("%-%-[^\n]+","") data = string.gsub(data,'([^%w_])function%s+([%a_][%w_]*)%s*(%([%w_%.,%s]*%))','%1%2=function%3') function tonum(data) local x=os.clock() local String = {} local StrTab = {} local gr = {} repeat local s1, ss1, x1, xx1, n1, n2, str s1 = string.find(data, "\034")--单引号 ss1 = string.find(data, "\039")--双引号 x1 = string.find(data, "%[[=]*%[")--中括号 xx1 = string.find(data, "%-%-")--注释 n1 = string.find(data, "[^%w_]0[xX][0-9A-Fa-f]+") --Hex n2 = string.find(data, "[^%w_]%d+")--Number str = Min_num(s1, ss1, x1, xx1, n1, n2) if str == nil then break end if str == s1 then data = data:gsub("(.-)(\034.-\034)",function(t1, t2) gr[#gr + 1] = t1 t2 = string.gsub(t2, "\\\\","\\092") t2 = string.gsub(t2, "\\\034", "\\034") if t2:sub(-1, -1) ~= "\034" then return t2 end t3 = load("return "..t2) if not t3 then gg.alert("\034加密失败\n"..t2) os.exit() end gr[#gr + 1] = tonumber16(t3()) return "" end, 1) elseif str == ss1 then data = data:gsub("(.-)(\039.-\039)",function(t1, t2) gr[#gr + 1] = t1 t2 = string.gsub(t2, "\\\\","\\092") t2 = string.gsub(t2, "\\\039", "\\039") if t2:sub(-1, -1) ~= "\039" then return t2 end t3 = load("return "..t2) if not t3 then gg.alert("\039加密失败\n"..t2) os.exit() end gr[#gr + 1] = tonumber16(t3()) return "" end, 1) elseif str == x1 then local g1 = string.match(data,"%[([=]*)%[") data=data:gsub("(.-)(%["..g1.."%[.-%]"..g1.."%])",function(t1, t2) gr[#gr + 1] = t1 t3 = load("return "..t2) if not t3 then gg.alert("[[加密失败\n"..t2) os.exit() end gr[#gr + 1] = tonumber16(t3()) return "" end, 1) elseif str == xx1 then d1, d2, d3, d4 = string.find(data, "%-%-(%[([=]*)%[)") if d1 == xx1 then data = string.gsub(data, "(.-)%-%-%[" .. d4 .. "%[.-%]" .. d4 .. "%]", function(txt1) gr[#gr + 1] = txt1 return " " end, 1) else data = string.gsub(data, "(.-)%-%-[^\n]*", function(txt1) gr[#gr + 1] = txt1 return "" end, 1) end elseif str == n1 then data = data:gsub("(.-[^%w_])(0[xX][0-9A-Fa-f]+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = "("..tonumber16(txt2)..")" return "" end,1) elseif str == n2 then local n3, n4, n5, n6 n3 = string.find(data, "[^%w_]%d+%.%d+[eE][%-%+]%d+") n4 = string.find(data, "[^%w_]%d+%.%d+[eE]%d+") n5 = string.find(data, "[^%w_]%d+[eE]%d+") n6 = string.find(data, "[^%w_]%d+%.%d+") if str == n3 then data = data:gsub("(.-[^%w_])(%d+%.%d+[eE][%-%+]%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..tonumber16(txt2).."" return "" end,1) elseif str == n4 then data = data:gsub("(.-[^%w_])(%d+%.%d+[eE]%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..tonumber16(txt2).."" return "" end,1) elseif str == n5 then data = data:gsub("(.-[^%w_])(%d+[eE]%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..tonumber16(txt2).."" return "" end,1) elseif str == n6 then data = data:gsub("(.-[^%w_])(%d+%.%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..tonumber16(txt2).."" return "" end,1) else data = data:gsub("(.-[^%w_])(%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..tonumber16(txt2).."" return "" end,1) end else break end until not str gr[#gr+1]=data data = table.concat(gr):gsub("return%s+end","return 0\nend") return data end for v, s in pairs(_ENV) do if type(s) == "table" and class_list[v] then for i in pairs(s) do if data:find(v .. "%." .. i) then data = data:gsub("([^%w_])" .. v .. "%." .. i .. "%(", "%1_ENV[\"" .. v .. "\"]" .. "[\"" .. i .. "\"](") data = data:gsub("([^%w_])" .. v .. "%." .. i .. "(%s*[^%w_])", "%1_ENV[\"" .. v .. "\"]" .. "[\"" .. i .. "\"]%2") data = data:gsub("([^%w_])" .. v .. "%." .. i .. "%)", "%1_ENV[\"" .. v .. "\"]" .. "[\"" .. i .. "\"])") end end elseif type(s) == "function" and debug.getinfo(s)["what"] == "Java" then if data:find(v) then data = data:gsub("([^%w_])" .. v .. "%(", "%1_ENV[\"" .. v .. "\"](") end end end data = replaceFuncs(data, replacements) local RanStr = (function() local res = "" for i = 1 , math.random(3,6) do res = res .. "\\" ..math.random(0,255) end return res end) local function Ran_True() local n1,n2,s1,s2,ranx,min,max local ran = math.random(0,3) if ran == 0 then if math.random(0,1) == 0 then local s = RanStr() return "\034"..s.."\034 == \034"..s.."\034" else local n = math.random(0,114514) return n .. "==" .. n end elseif ran == 1 then if math.random(0,1) == 0 then repeat s1 = RanStr() s2 = RanStr() until s1 ~= s2 return "\034"..s1.."\034 ~= \034"..s2.."\034" else repeat n1 = math.random(0,114514) n2 = math.random(0,114514) until n1 ~= n2 return n1 .. "~=" .. n2 end elseif ran == 2 then ranx = math.random(0,2) if ranx == 0 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n1 .. ">" .. n2 elseif ranx == 1 then n = math.random(1,114514) return n .. ">=" .. n elseif ranx == 2 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n1 .. ">=" .. n2 end elseif ran == 3 then ranx = math.random(0,2) if ranx == 0 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n2 .. "<" .. n1 elseif ranx == 1 then n = math.random(1,114514) return n .. "<=" .. n elseif ranx == 2 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n2 .. "<=" .. n1 end end end local function Ran_False() local n1,n2,s1,s2,ranx,min,max local ran = math.random(0,3) if ran == 0 then if math.random(0,1) == 0 then local s = RanStr() return "\034"..s.."\034 ~= \034"..s.."\034" else local n = math.random(0,114514) return n .. "~=" .. n end elseif ran == 1 then if math.random(0,1) == 0 then repeat s1 = RanStr() s2 = RanStr() until s1 ~= s2 return "\034"..s1.."\034 == \034"..s2.."\034" else repeat n1 = math.random(0,114514) n2 = math.random(0,114514) until n1 ~= n2 return n1 .. "==" .. n2 end elseif ran == 2 then ranx = math.random(0,2) if ranx == 0 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n1 .. "<" .. n2 elseif ranx == 1 then repeat n1 = math.random(0,114514) n2 = math.random(0,n1 - 1) until n1 ~= n2 return n1 .. "<=" .. n2 elseif ranx == 2 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n1 .. "<=" .. n2 end elseif ran == 3 then ranx = math.random(0,2) if ranx == 0 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n2 .. ">" .. n1 elseif ranx == 1 then repeat n1 = math.random(0,114514) n2 = math.random(0,n1 - 1) until (n1 ~= n2 and n1 > n2 ) return n2 .. ">=" .. n1 elseif ranx == 2 then n1 = math.random(1,114514) n2 = math.random(0,n1 - 1) return n2 .. ">=" .. n1 end end end local function Ran_Bool(boolean) if boolean == nil then return "_Bool[\034"..RanStr().."\034]" elseif boolean == true then if math.random(0,1) == 0 then return Ran_True() else return "not (" .. Ran_False() ..")" .." or " .. "not (" .. Ran_False() ..")" end elseif boolean == false then if math.random(0,1) == 0 then return Ran_False() else return "not (" .. Ran_True() ..")" .." or " .. "not (" .. Ran_True() ..")" end end end local function bool_Control(data) local BoolTab = { true, false, nil, } for i = 1, #BoolTab do local boolStr = tostring(BoolTab[i]) data = string.gsub(data,"%f[%w_\"]".. boolStr .."%f[^%w_\"]",function() return "("..Ran_Bool(BoolTab[i])..")" end) end return "local _Bool = {}\n"..data end local To_16=function(txt) local sp=string.format("%x",txt) if #sp==1 then sp="0"..sp end return sp end dec=function(Lte) Lte={Lte:byte(0,-1)} local chartab={} for i=1,#Lte do py=math.random(1,255-Lte[i]) local Lt=To_16(Lte[i]+py) chartab[#chartab+1]=",{\34".."\\x"..Lt.."\34,"..py.."}" end return "table.concat(unget({"..table.concat(chartab):gsub(",","",1).."}))" end local Decode = ([[ local function unget(data,py) local tab={} for i,k in pairs(data) do tab[#tab+1]=string.char(string.byte(k[1])-k[2]) end return tab end ]]) local function encodeValue(c) return "(" .. dec(c) .. ")" end local data = bool_Control(data) data=tonum(data) local data=Decode..data io.output('混淆.lua'):write(data):close() local function Keys(c) local res = "" local count = #characters for i = 1, c do local randomize = math.random(1, count) res = res .. characters:sub(randomize, randomize) end return res end ChunkName, ChunkAdd= (function(M);; local C,X = 2,1;local Z = {};;Z[X] = M;local Y = math.floor(#Z[X]) / 4;Z[C] = {};local _ = string.char(0) if tostring(Y):match("%.%d") and tostring(Y):match(string.char(37,46,55,53)) then;; ; Z[X] = tostring(Z[X]).._:rep(1) elseif tostring(Y):match("%.%d") and tostring(Y):match(string.char(37,46,53)) then; Z[X] = tostring(Z[X]).._:rep(2);; elseif tostring(Y):match("%.%d") and tostring(Y):match(string.char(37,46,50,53)) then ;;Z[X] = tostring(Z[X]).._:rep(3) end if (Z[X] and Z[X] ~= nil) then; ; for i = 1, #Z[X]/4 do;;;local W = {31,0,128};W[4]=0;; --RETURN code table.insert(Z[C], table.concat(W,", "));;; ;; end; ;;; Z["N"] = load("return {"..table.concat(Z[C], ", ").."}");; ; ; end;; return Z[X], Z["N"](); -- n, t = ChunkName("YourName") end), (function(Nums);; local Nums,Str = Nums or 58, string.char();; if Nums ~= nil then; for X = 1, Nums do;; ;Str = Str..";do;return;end;" end; end; return ";while(nil)do;"..Str..";end;"; end);-- g = ChunkAdd(#"Num"); g={} Numto16=function(num) if type(num)~="number" or num>255 or num<0 then return num else local sp=string.format("%x",num) if #sp==1 then sp="0"..sp end return "\\x"..sp end end toLuaHex=function(str) return(string.gsub(str,".",function(x) return(Numto16(string.byte(x))) end)) end local String_ = {} function encodeValue(str) Str_ = str if str == "" then return "string.char" end if String_[str] then return String_[Str_] end result = "" ZsQ = 0 for k, v in pairs({string.byte(str,1,#str)}) do if ZsQ ~= 1 then if v < 128 then Key = math.random(128,255) elseif v >= 128 then Key = math.random(1,128) end else Key = math.random(1,128) ZsQ = 0 end v = v ~ Key if v >= 128 then ZsQ = ZsQ + 1 end result = result .. string.char(v,Key) end String_[Str_] = "(StrDec(\034" .. toLuaHex(result) .. "\034))" return String_[Str_] end local aKey1 = Keys(10) local aKey2 = Keys(20) local aKey3 = Keys(30) local aKey4 = Keys(40) local aKey5 = Keys(50) local aKey6 = Keys(60) local sjs = math.random(1, 2) function Encode(str) local sd = {} local gb = {str:byte(1, -1)} local res = '' local LESS = "\000" for i = 1, #gb do gb[i] = bit32.bxor(gb[i], aKey1:byte(), aKey2:byte(), aKey3:byte(), aKey4:byte(), aKey5:byte(), aKey6:byte() + i) % 256 local K = LESS:rep(gb[i]) table.insert(sd, '"' .. K .. '"') end if sjs == 1 then return dex[1].."{liI = {" .. table.concat(sd, ",") .. "}}"..dex[2] else return dex2[1].."{liI = {" .. table.concat(sd, ",") .. "}}"..dex2[2] end -- return dex[1].."{liI = {" .. table.concat(sd, ",") .. "}}"..dex[2] end local Decodef = ([[ local bit32_bxor = bit32.bxor local string_char = string.char local v1 = ]]..tonumber16(aKey1)..[[ local v2 = ]]..tonumber16(aKey2)..[[ local v3 = ]]..tonumber16(aKey3)..[[ local v4 = ]]..tonumber16(aKey4)..[[ local v5 = ]]..tonumber16(aKey5)..[[ local v6 = ]]..tonumber16(aKey6)..[[ local v7 = bit32_bxor local v8 = string_char local function ilI(i) local i = i.liI local r = '' for i, v in ipairs(i) do local b = (#v) b = v7(b, v1:byte(), v2:byte(), v3:byte(), v4:byte(), v5:byte(), v6:byte() + i) % 256 r = r .. v8(b) end return r end ]]) local function encodeValue(c) return "ilI(" .. Encode(c) .. ")" end function StrEnc(data) local x=os.clock() local String = {} local StrTab = {} local gr = {} repeat local s1, ss1, x1, xx1, n1, n2, str s1 = string.find(data, "\034")--单引号 ss1 = string.find(data, "\039")--双引号 x1 = string.find(data, "%[[=]*%[")--中括号 xx1 = string.find(data, "%-%-")--注释 n1 = string.find(data, "[^%w_]0[xX][0-9A-Fa-f]+") --Hex n2 = string.find(data, "[^%w_]%d+")--Number str = Min_num(s1, ss1, x1, xx1, n1, n2) if str == nil then break end if str == s1 then data = data:gsub("(.-)(\034.-\034)",function(t1, t2) gr[#gr + 1] = t1 t2 = string.gsub(t2, "\\\\","\\092") t2 = string.gsub(t2, "\\\034", "\\034") if t2:sub(-1, -1) ~= "\034" then return t2 end t3 = load("return "..t2) if not t3 then gg.alert("\034加密失败\n"..t2) os.exit() end gr[#gr + 1] = encodeValue(t3()) return "" end, 1) elseif str == ss1 then data = data:gsub("(.-)(\039.-\039)",function(t1, t2) gr[#gr + 1] = t1 t2 = string.gsub(t2, "\\\\","\\092") t2 = string.gsub(t2, "\\\039", "\\039") if t2:sub(-1, -1) ~= "\039" then return t2 end t3 = load("return "..t2) if not t3 then gg.alert("\039加密失败\n"..t2) os.exit() end gr[#gr + 1] = encodeValue(t3()) return "" end, 1) elseif str == x1 then local g1 = string.match(data,"%[([=]*)%[") data=data:gsub("(.-)(%["..g1.."%[.-%]"..g1.."%])",function(t1, t2) gr[#gr + 1] = t1 t3 = load("return "..t2) if not t3 then gg.alert("[[加密失败\n"..t2) os.exit() end gr[#gr + 1] = encodeValue(t3()) return "" end, 1) elseif str == xx1 then d1, d2, d3, d4 = string.find(data, "%-%-(%[([=]*)%[)") if d1 == xx1 then data = string.gsub(data, "(.-)%-%-%[" .. d4 .. "%[.-%]" .. d4 .. "%]", function(txt1) gr[#gr + 1] = txt1 return " " end, 1) else data = string.gsub(data, "(.-)%-%-[^\n]*", function(txt1) gr[#gr + 1] = txt1 return "" end, 1) end elseif str == n1 then data = data:gsub("(.-[^%w_])(0[xX][0-9A-Fa-f]+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..encodeValue(txt2).."" return "" end,1) elseif str == n2 then local n3, n4, n5, n6 n3 = string.find(data, "[^%w_]%d+%.%d+[eE][%-%+]%d+") n4 = string.find(data, "[^%w_]%d+%.%d+[eE]%d+") n5 = string.find(data, "[^%w_]%d+[eE]%d+") n6 = string.find(data, "[^%w_]%d+%.%d+") if str == n3 then data = data:gsub("(.-[^%w_])(%d+%.%d+[eE][%-%+]%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..encodeValue(txt2).."" return "" end,1) elseif str == n4 then data = data:gsub("(.-[^%w_])(%d+%.%d+[eE]%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..encodeValue(txt2).."" return "" end,1) elseif str == n5 then data = data:gsub("(.-[^%w_])(%d+[eE]%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..encodeValue(txt2).."" return "" end,1) elseif str == n6 then data = data:gsub("(.-[^%w_])(%d+%.%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..encodeValue(txt2).."" return "" end,1) else data = data:gsub("(.-[^%w_])(%d+)",function(txt1,txt2) gr[#gr + 1] = txt1 gr[#gr + 1] = ""..encodeValue(txt2).."" return "" end,1) end else break end until not str gr[#gr+1]=data data = table.concat(gr):gsub("return%s+end","return 0\nend") return data end data=StrEnc(data) data = data:gsub("\\n","\n"):gsub("\\t","\t") --for i in ipairs(strings) do --data = string.gsub(data, strings[i], encodeValue) --end local data = Decodef..data local data = [[ ]]..data..[[]]..ChunkAdd(55)..[[ ]] local data = ([[ ;(function() ]]..data..[[ end)() ]]) local B = string.gsub(data,"\n"," ") local C = string.gsub(B," "," ") local D = string.gsub(C," "," ") local E = string.gsub(D," "," ") local F = string.gsub(E," "," ") local G = string.gsub(F," "," ") local H = string.gsub(G," "," ") local I = string.gsub(H," "," ") local J = string.gsub(I," "," ") local L = string.gsub(J," "," ") --L = string.dump(load(L), true , true) io.output(Lying[1].. '.lua'):write(data):close()