Advertisement
gabeisdumblol

ByteProtect v2.1

Jun 26th, 2018
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.80 KB | None | 0 0
  1. local SCRIPT = [[
  2.  
  3. ]]
  4.  
  5. function OBFUSCATE(SOURCE)
  6.  
  7. -- important stuff
  8.  
  9. local VARIABLECHARS = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}
  10.  
  11. function RANDOMNUM(num1, num2)
  12. return math.random(num1, num2)
  13. end
  14.  
  15. function RANDOMVAR(length)
  16. local VARNAME = ""
  17. for i=1,length do
  18. if i==1 then
  19. VARNAME = VARIABLECHARS[RANDOMNUM(1, #VARIABLECHARS)]
  20. else
  21. VARNAME = VARNAME.. VARIABLECHARS[RANDOMNUM(1, #VARIABLECHARS)]
  22. end
  23. end
  24. return VARNAME
  25. end
  26.  
  27. function RANDOMSYM()
  28. local SYMBOL = ""
  29. local RANDOM = RANDOMNUM(1,4)
  30. if RANDOM == 4 then
  31. return "*"
  32. elseif RANDOM == 3 then
  33. return "/"
  34. elseif RANDOM == 2 then
  35. return "+"
  36. else
  37. return "-"
  38. end
  39. end
  40.  
  41. function RANDOMMATH()
  42. return "("..RANDOMNUM(1,10)..RANDOMSYM()..RANDOMNUM(1,10)..RANDOMSYM()..RANDOMNUM(1,10)..RANDOMSYM()..RANDOMNUM(1,10)..RANDOMSYM()..RANDOMNUM(1,10)..RANDOMSYM()..RANDOMNUM(1,10)..")"
  43. end
  44.  
  45. local VARIABLES = {}
  46. for i=1,30 do
  47. table.insert(VARIABLES, RANDOMVAR(30))
  48. end
  49.  
  50. -- useless stuff
  51.  
  52. local CONFUSION, CONFUSION2, CONFUSION3, CONFUSION4, CONFUSION5 = VARIABLES[2] .." = "..RANDOMMATH(), VARIABLES[3] .." = ".. RANDOMMATH(), VARIABLES[6].." = ''", "function "..VARIABLES[7].."("..VARIABLES[8]..") function "..VARIABLES[9].."("..VARIABLES[10]..")"..VARIABLES[11].." = "..RANDOMMATH().." end end;"..VARIABLES[7].."("..RANDOMNUM(800000,1000000)..")", "function "..VARIABLES[12].."("..VARIABLES[13]..") function "..VARIABLES[14].."("..VARIABLES[15]..")"..VARIABLES[16].." = "..RANDOMMATH().." end end;"..VARIABLES[12].."("..RANDOMNUM(8000,10000)..")"
  53.  
  54. -- other stuff
  55.  
  56. function BYTES(SCRIPT)
  57. local BYTESTRING = ""
  58. for i=1, string.len(SCRIPT) do
  59. BYTESTRING = BYTESTRING .. "'\\" .. string.byte(SOURCE, i) .. "',"
  60. BYTESTRING = BYTESTRING .. "'".."".."',"
  61. end
  62. return VARIABLES[5].." = {"..BYTESTRING.."}"
  63. end
  64.  
  65. local WATERMARK = "--// ByteProtect v2.0 source rewrite W.I.P"
  66. local LOADSTRINGVARIABLE = VARIABLES[1] .." = loadstring"
  67. local CONCATVARIABLE = VARIABLES[4] .." = table.concat"
  68. local WARN, PRINT, ERROR = VARIABLES[17].. " = warn", VARIABLES[18].. " = print", VARIABLES[19].. " = error"
  69. local LOADSTRINGPROTECT = "if loadstring == "..VARIABLES[17].." or loadstring == "..VARIABLES[18].." or loadstring == "..VARIABLES[19].." then return'nice' end"
  70.  
  71. -- final stuff
  72.  
  73. local FINAL = WATERMARK.."\n\n"..CONFUSION..";"..WARN..";"..CONFUSION2..";"..PRINT..";"
  74. ..CONFUSION5..";"..ERROR..";"..LOADSTRINGPROTECT..";"..CONFUSION3..";"..CONCATVARIABLE..";"..LOADSTRINGVARIABLE..";"..BYTES(SOURCE).." "..CONFUSION4.." "..VARIABLES[1].."("..VARIABLES[4].."("..VARIABLES[5]..","..VARIABLES[6].."))()"
  75. print(FINAL)
  76.  
  77. end
  78.  
  79. -- ending (printing the obfuscated version)
  80.  
  81. OBFUSCATE(SCRIPT)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement