Advertisement
Guest User

gstgy7sdft5y4tgay

a guest
Dec 5th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.38 KB | None | 0 0
  1. ]]
  2.  
  3. customVarNames = {
  4. "cryptoisgod",
  5. "cryptoislife",
  6. "cryptoisbest",
  7. "cryptoissuperior",
  8. "itsbetterthanxen",
  9. "IiliIiliIiliIiliIiliIiliIili",
  10. "IiliIiiiIiliIilliIiliIiiiIililiilliliili",
  11. "cryptoobfuscatorisgreat",
  12. "IiliIilillIiliIilillIiliIilill",
  13. "woahwoahwoahwoahwoah"
  14. }
  15.  
  16. funcrename = {
  17. ["print"]="loadstring",
  18. ["_G"]="_G",
  19. ["getmetatable"]="getmetatable",
  20. ["warn"]="warn",
  21. ["error"]="error",
  22. ["loadstring"]="local",
  23. ["false"]="false",
  24. ["true"]="true",
  25. ["getfenv"]="getfenv",
  26. ["next"]="next",
  27. ["pairs"]="pairs",
  28. ["nil"]="nil",
  29. ["printidentity"]="printidentity",
  30. ["tostring"]="tostring",
  31. ["unpack"]="unpack",
  32. ["debug"]="debug",
  33. ["string.char"]="string.char"
  34. --["game:HttpGet"]="gaye"
  35. }
  36. --CreateVarName
  37. local chars =[[cryptobfuscator]]
  38.  
  39. local taken = { }
  40. taken[""] = true
  41. local function CreateVar()
  42. local s = ""
  43. while taken[s] do
  44. for i = 1, math.random(5, 10) do
  45. local c = chars:sub(i,i)
  46. s = s..c
  47. end
  48. end
  49. taken[s] = true
  50. return(customVarNames[math.random(1,#customVarNames)].. s)
  51. end
  52.  
  53. --WipeComments
  54. function WipeComment(scr)
  55. scr = scr:gsub("(%-%-%[(=*)%[.-%]%2%])", "")
  56. scr = scr:gsub("(%-%-[^\r\n]*)", "")
  57. return scr
  58. end
  59.  
  60. --WipeStrings
  61. local mamadouseydou = CreateVar()
  62. local mamadouseydou0 = CreateVar()
  63. local mamadouseydou1 = CreateVar()
  64. local GenStr = function(Str)
  65. local R = {}
  66. local Ran = function(n)
  67. local r = math.random(1, 255)
  68. return ((n - r)/2).. ' + ' ..(r/2)
  69. end
  70.  
  71. for c in Str:gmatch('.') do
  72. table.insert(R, Ran(c:byte()))
  73. end
  74.  
  75. return "{"..table.concat(R, ', ').."}"
  76. end
  77.  
  78. function WipeStrings(scrpt)
  79. for each in scrpt:gmatch("%b''") do
  80. scrpt = scrpt:gsub(each, each:gsub("'", '"'))
  81. end
  82. for each in scrpt:gmatch('%b""') do
  83. each = each:gsub('"', '')
  84. scrpt = scrpt:gsub('"'..each..'"', "("..mamadouseydou.."("..GenStr(each).."))")
  85. end
  86.  
  87. return scrpt
  88. end
  89.  
  90. --CoreFuncRename
  91. function CFR(scrpt)
  92. for i,v in pairs(funcrename) do
  93. local pp = CreateVar()
  94. funcrename[i]= pp
  95. end
  96. local setlist = ""
  97. for i,v in pairs(funcrename) do
  98. setlist = setlist..("local "..v.."="..i.."; ")
  99. scrpt = scrpt:gsub(i, v)
  100. end
  101. return(setlist..scrpt)
  102. end
  103.  
  104. --LocalFuncRename
  105. local library = {}
  106. function LFR(scrpt)
  107. for fType in scrpt:gmatch("local%s*function%s*([%w_]+)%(") do
  108. local replacement = CreateVar()
  109. if #fType > 5 then
  110. library[fType] = replacement
  111. scrpt = scrpt:gsub("function " .. fType, "function " .. replacement)
  112. end
  113. end
  114.  
  115. for fCall in scrpt:gmatch("([%w_]+)%s*%(") do
  116. if library[fCall] then
  117. scrpt = scrpt:gsub(fCall .. '%(', library[fCall] .. '%(')
  118. end
  119. end
  120. return scrpt
  121. end
  122.  
  123. --NonLocalFuncRename
  124. function NLFR(scrpt)
  125. for fType in scrpt:gmatch("%s*function%s*([%w_]+)%(") do
  126. local replacement = CreateVar()
  127. if #fType > 5 then
  128. library[fType] = replacement
  129. scrpt = scrpt:gsub("function " .. fType, "function " .. replacement)
  130. end
  131. end
  132.  
  133. for fCall in scrpt:gmatch("([%w_]+)%s*%(") do
  134. if library[fCall] then
  135. scrpt = scrpt:gsub(fCall .. '%(', library[fCall] .. '%(')
  136. end
  137. end
  138. return scrpt
  139. end
  140.  
  141. --RemoveWhitespace
  142. function RW(scrpt)
  143. scrpt = scrpt:gsub("^%s*(.-)%s*$", "%1")
  144. scrpt = scrpt:gsub("(^%s*).*", "")
  145. scrpt = scrpt:gsub(" %s+", " ")
  146. scrpt = scrpt:gsub(";%c+","; ")
  147. return scrpt
  148. end
  149.  
  150. --VarRename
  151.  
  152. function isKeyword(s)
  153. local s2 = 'and break do else elseif end false for function if in local nil not or repeat return then true until'
  154. for w in s2:gmatch("(%w+)") do
  155. if w == s then return true end
  156. end
  157. return false
  158. end
  159.  
  160. function VR(scrpt)
  161. for each in scrpt:gmatch("local%s*([%w_]*)%s*=%s*") do
  162. if #each > 3 and not isKeyword(each) then
  163. local varName = CreateVar()
  164. scrpt = scrpt:gsub(each," "..varName)
  165. end
  166. end
  167. return scrpt
  168. end
  169.  
  170. --obfuscate
  171. function Obfuscate(scr)
  172. scr = WipeComment(scr)
  173. scr = WipeStrings(scr)
  174. scr = 'function '..mamadouseydou..'('..mamadouseydou0..') local '..mamadouseydou1..' = ""; for i,v in pairs('..mamadouseydou0..') do '..mamadouseydou1..' = '..mamadouseydou1..'..string.char(v*2); end return('..mamadouseydou1..') end;'..scr
  175. scr = LFR(scr)
  176. scr = NLFR(scr)
  177. scr = VR(scr)
  178. --scr = RW(scr)
  179. scr = CFR(scr)
  180.  
  181. print(scr)
  182. end
  183.  
  184. do Obfuscate(Script) end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement