lua-obfuscator 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release.yml +40 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +18 -14
- package/dist/prometheus/LICENSE +661 -661
- package/dist/prometheus/build.bat +9 -9
- package/dist/prometheus/doc/README.md +11 -11
- package/dist/prometheus/doc/SUMMARY.md +27 -27
- package/dist/prometheus/doc/advanced/using-prometheus-in-your-lua-application.md +31 -31
- package/dist/prometheus/doc/getting-started/command-line-options.md +13 -13
- package/dist/prometheus/doc/getting-started/installation.md +11 -11
- package/dist/prometheus/doc/getting-started/obfuscating-your-first-script.md +50 -50
- package/dist/prometheus/doc/getting-started/presets.md +10 -10
- package/dist/prometheus/doc/getting-started/the-config-object.md +58 -58
- package/dist/prometheus/doc/getting-started/writing-a-custom-config-file.md +56 -56
- package/dist/prometheus/doc/steps/anti-tamper.md +11 -11
- package/dist/prometheus/doc/steps/constantarray.md +71 -71
- package/dist/prometheus/doc/steps/encryptstrings.md +86 -86
- package/dist/prometheus/doc/steps/proxifylocals.md +47 -47
- package/dist/prometheus/doc/steps/splitstrings.md +40 -40
- package/dist/prometheus/doc/steps/vmify.md +9 -9
- package/dist/prometheus/doc/steps/wrapinfunction.md +29 -29
- package/dist/prometheus/readme.md +57 -57
- package/dist/prometheus/readme.txt +4 -4
- package/package.json +5 -1
- package/src/index.ts +81 -75
- package/tsconfig.json +12 -12
- package/src/prometheus/.editorconfig +0 -4
- package/src/prometheus/.gitattributes +0 -2
- package/src/prometheus/.gitbook.yaml +0 -1
- package/src/prometheus/.github/ISSUE_TEMPLATE/bug_report.md +0 -25
- package/src/prometheus/.github/workflows/Build.yml +0 -49
- package/src/prometheus/.github/workflows/Test.yml +0 -19
- package/src/prometheus/LICENSE +0 -661
- package/src/prometheus/benchmark.lua +0 -34
- package/src/prometheus/build.bat +0 -10
- package/src/prometheus/cli.lua +0 -12
- package/src/prometheus/doc/README.md +0 -11
- package/src/prometheus/doc/SUMMARY.md +0 -27
- package/src/prometheus/doc/advanced/using-prometheus-in-your-lua-application.md +0 -31
- package/src/prometheus/doc/getting-started/command-line-options.md +0 -13
- package/src/prometheus/doc/getting-started/installation.md +0 -11
- package/src/prometheus/doc/getting-started/obfuscating-your-first-script.md +0 -50
- package/src/prometheus/doc/getting-started/presets.md +0 -10
- package/src/prometheus/doc/getting-started/the-config-object.md +0 -58
- package/src/prometheus/doc/getting-started/writing-a-custom-config-file.md +0 -56
- package/src/prometheus/doc/steps/anti-tamper.md +0 -11
- package/src/prometheus/doc/steps/constantarray.md +0 -71
- package/src/prometheus/doc/steps/encryptstrings.md +0 -86
- package/src/prometheus/doc/steps/proxifylocals.md +0 -47
- package/src/prometheus/doc/steps/splitstrings.md +0 -40
- package/src/prometheus/doc/steps/vmify.md +0 -9
- package/src/prometheus/doc/steps/wrapinfunction.md +0 -29
- package/src/prometheus/prometheus-main.lua +0 -1
- package/src/prometheus/readme.md +0 -57
- package/src/prometheus/readme.txt +0 -5
- package/src/prometheus/src/cli.lua +0 -154
- package/src/prometheus/src/colors.lua +0 -61
- package/src/prometheus/src/highlightlua.lua +0 -61
- package/src/prometheus/src/logger.lua +0 -62
- package/src/prometheus/src/presets.lua +0 -174
- package/src/prometheus/src/prometheus/ast.lua +0 -792
- package/src/prometheus/src/prometheus/bit.lua +0 -521
- package/src/prometheus/src/prometheus/compiler/compiler.lua +0 -2365
- package/src/prometheus/src/prometheus/enums.lua +0 -106
- package/src/prometheus/src/prometheus/namegenerators/Il.lua +0 -41
- package/src/prometheus/src/prometheus/namegenerators/confuse.lua +0 -169
- package/src/prometheus/src/prometheus/namegenerators/mangled.lua +0 -26
- package/src/prometheus/src/prometheus/namegenerators/mangled_shuffled.lua +0 -35
- package/src/prometheus/src/prometheus/namegenerators/number.lua +0 -11
- package/src/prometheus/src/prometheus/namegenerators.lua +0 -7
- package/src/prometheus/src/prometheus/parser.lua +0 -969
- package/src/prometheus/src/prometheus/pipeline.lua +0 -250
- package/src/prometheus/src/prometheus/randomLiterals.lua +0 -41
- package/src/prometheus/src/prometheus/randomStrings.lua +0 -24
- package/src/prometheus/src/prometheus/scope.lua +0 -332
- package/src/prometheus/src/prometheus/step.lua +0 -79
- package/src/prometheus/src/prometheus/steps/AddVararg.lua +0 -33
- package/src/prometheus/src/prometheus/steps/AntiTamper.lua +0 -194
- package/src/prometheus/src/prometheus/steps/ConstantArray.lua +0 -521
- package/src/prometheus/src/prometheus/steps/EncryptStrings.lua +0 -239
- package/src/prometheus/src/prometheus/steps/NumbersToExpressions.lua +0 -82
- package/src/prometheus/src/prometheus/steps/ProxifyLocals.lua +0 -313
- package/src/prometheus/src/prometheus/steps/SplitStrings.lua +0 -338
- package/src/prometheus/src/prometheus/steps/Vmify.lua +0 -30
- package/src/prometheus/src/prometheus/steps/Watermark.lua +0 -61
- package/src/prometheus/src/prometheus/steps/WatermarkCheck.lua +0 -50
- package/src/prometheus/src/prometheus/steps/WrapInFunction.lua +0 -45
- package/src/prometheus/src/prometheus/steps.lua +0 -12
- package/src/prometheus/src/prometheus/tokenizer.lua +0 -546
- package/src/prometheus/src/prometheus/unparser.lua +0 -866
- package/src/prometheus/src/prometheus/util.lua +0 -297
- package/src/prometheus/src/prometheus/visitast.lua +0 -245
- package/src/prometheus/src/prometheus.lua +0 -71
- package/src/prometheus/tests/closures.lua +0 -12
- package/src/prometheus/tests/fibonacci.lua +0 -10
- package/src/prometheus/tests/loops.lua +0 -8
- package/src/prometheus/tests/primes.lua +0 -18
- package/src/prometheus/tests.lua +0 -149
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: >-
|
|
3
|
-
This Step will Extract all Constants and put them into an Array at the
|
|
4
|
-
beginning of the script
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# ConstantArray
|
|
8
|
-
|
|
9
|
-
### Settings
|
|
10
|
-
|
|
11
|
-
| Name | type | description |
|
|
12
|
-
| -------------------- | ------- | ------------------------------------------------------------------------------------------------------------ |
|
|
13
|
-
| Treshold | number | The relative amount of nodes that will be affected" |
|
|
14
|
-
| StringsOnly | boolean | Wether to only Extract Strings |
|
|
15
|
-
| Shuffle | boolean | Wether to shuffle the order of Elements in the Array |
|
|
16
|
-
| Rotate | boolean | Wether to rotate the String Array by a specific (random) amount. This will be undone on runtime. |
|
|
17
|
-
| LocalWrapperTreshold | number | The relative amount of nodes functions, that will get local wrappers |
|
|
18
|
-
| LocalWrapperCount | number | The number of Local wrapper Functions per scope. This only applies if LocalWrapperTreshold is greater than 0 |
|
|
19
|
-
| LocalWrapperArgCount | number | The number of Arguments to the Local wrapper Functions |
|
|
20
|
-
| MaxWrapperOffset | number | The Max Offset for the Wrapper Functions |
|
|
21
|
-
|
|
22
|
-
### Example
|
|
23
|
-
|
|
24
|
-
{% code title="in.lua" %}
|
|
25
|
-
```lua
|
|
26
|
-
print("1")
|
|
27
|
-
print("2")
|
|
28
|
-
print("3")
|
|
29
|
-
print("4")
|
|
30
|
-
```
|
|
31
|
-
{% endcode %}
|
|
32
|
-
|
|
33
|
-
{% code title="out.lua" %}
|
|
34
|
-
```lua
|
|
35
|
-
-- LocalWrapperCount = 3
|
|
36
|
-
-- LocalWrapperArgCount = 5
|
|
37
|
-
local F = {"4", "3", "2", "1"}
|
|
38
|
-
do
|
|
39
|
-
local y, G = 1, 4
|
|
40
|
-
while y < G do
|
|
41
|
-
F[y], F[G] = F[G], F[y]
|
|
42
|
-
y, G = y + 1, G - 1
|
|
43
|
-
end
|
|
44
|
-
y, G = 1, 3
|
|
45
|
-
while y < G do
|
|
46
|
-
F[y], F[G] = F[G], F[y]
|
|
47
|
-
y, G = y + 1, G - 1
|
|
48
|
-
end
|
|
49
|
-
y, G = 4, 4
|
|
50
|
-
while y < G do
|
|
51
|
-
F[y], F[G] = F[G], F[y]
|
|
52
|
-
y, G = y + 1, G - 1
|
|
53
|
-
end
|
|
54
|
-
end
|
|
55
|
-
local function y(y)
|
|
56
|
-
return F[y + 440]
|
|
57
|
-
end
|
|
58
|
-
local G = {cb = function(F, G, R, p, b)
|
|
59
|
-
return y(G - 2277)
|
|
60
|
-
end, n = function(F, G, R, p, b)
|
|
61
|
-
return y(p + 47178)
|
|
62
|
-
end, B = function(F, G, R, p, b)
|
|
63
|
-
return y(F + 31775)
|
|
64
|
-
end}
|
|
65
|
-
print(G.cb(1575, 1840, 2367, 1293, 1280))
|
|
66
|
-
print(G.B(-32213, -31781, -31538, -32780, -32728))
|
|
67
|
-
print(G.B(-32214, -33004, -31973, -32125, -31855))
|
|
68
|
-
print(G.B(-32211, -31884, -31217, -32222, -31210))
|
|
69
|
-
|
|
70
|
-
```
|
|
71
|
-
{% endcode %}
|
|
1
|
+
---
|
|
2
|
+
description: >-
|
|
3
|
+
This Step will Extract all Constants and put them into an Array at the
|
|
4
|
+
beginning of the script
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# ConstantArray
|
|
8
|
+
|
|
9
|
+
### Settings
|
|
10
|
+
|
|
11
|
+
| Name | type | description |
|
|
12
|
+
| -------------------- | ------- | ------------------------------------------------------------------------------------------------------------ |
|
|
13
|
+
| Treshold | number | The relative amount of nodes that will be affected" |
|
|
14
|
+
| StringsOnly | boolean | Wether to only Extract Strings |
|
|
15
|
+
| Shuffle | boolean | Wether to shuffle the order of Elements in the Array |
|
|
16
|
+
| Rotate | boolean | Wether to rotate the String Array by a specific (random) amount. This will be undone on runtime. |
|
|
17
|
+
| LocalWrapperTreshold | number | The relative amount of nodes functions, that will get local wrappers |
|
|
18
|
+
| LocalWrapperCount | number | The number of Local wrapper Functions per scope. This only applies if LocalWrapperTreshold is greater than 0 |
|
|
19
|
+
| LocalWrapperArgCount | number | The number of Arguments to the Local wrapper Functions |
|
|
20
|
+
| MaxWrapperOffset | number | The Max Offset for the Wrapper Functions |
|
|
21
|
+
|
|
22
|
+
### Example
|
|
23
|
+
|
|
24
|
+
{% code title="in.lua" %}
|
|
25
|
+
```lua
|
|
26
|
+
print("1")
|
|
27
|
+
print("2")
|
|
28
|
+
print("3")
|
|
29
|
+
print("4")
|
|
30
|
+
```
|
|
31
|
+
{% endcode %}
|
|
32
|
+
|
|
33
|
+
{% code title="out.lua" %}
|
|
34
|
+
```lua
|
|
35
|
+
-- LocalWrapperCount = 3
|
|
36
|
+
-- LocalWrapperArgCount = 5
|
|
37
|
+
local F = {"4", "3", "2", "1"}
|
|
38
|
+
do
|
|
39
|
+
local y, G = 1, 4
|
|
40
|
+
while y < G do
|
|
41
|
+
F[y], F[G] = F[G], F[y]
|
|
42
|
+
y, G = y + 1, G - 1
|
|
43
|
+
end
|
|
44
|
+
y, G = 1, 3
|
|
45
|
+
while y < G do
|
|
46
|
+
F[y], F[G] = F[G], F[y]
|
|
47
|
+
y, G = y + 1, G - 1
|
|
48
|
+
end
|
|
49
|
+
y, G = 4, 4
|
|
50
|
+
while y < G do
|
|
51
|
+
F[y], F[G] = F[G], F[y]
|
|
52
|
+
y, G = y + 1, G - 1
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
local function y(y)
|
|
56
|
+
return F[y + 440]
|
|
57
|
+
end
|
|
58
|
+
local G = {cb = function(F, G, R, p, b)
|
|
59
|
+
return y(G - 2277)
|
|
60
|
+
end, n = function(F, G, R, p, b)
|
|
61
|
+
return y(p + 47178)
|
|
62
|
+
end, B = function(F, G, R, p, b)
|
|
63
|
+
return y(F + 31775)
|
|
64
|
+
end}
|
|
65
|
+
print(G.cb(1575, 1840, 2367, 1293, 1280))
|
|
66
|
+
print(G.B(-32213, -31781, -31538, -32780, -32728))
|
|
67
|
+
print(G.B(-32214, -33004, -31973, -32125, -31855))
|
|
68
|
+
print(G.B(-32211, -31884, -31217, -32222, -31210))
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
{% endcode %}
|
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: This Step will encrypt all String constants in your code
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# EncryptStrings
|
|
6
|
-
|
|
7
|
-
## Settings
|
|
8
|
-
|
|
9
|
-
None
|
|
10
|
-
|
|
11
|
-
## Example
|
|
12
|
-
|
|
13
|
-
{% code title="in.lua" %}
|
|
14
|
-
```lua
|
|
15
|
-
print("Hello, World!")
|
|
16
|
-
```
|
|
17
|
-
{% endcode %}
|
|
18
|
-
|
|
19
|
-
{% code title="out.lua" %}
|
|
20
|
-
```lua
|
|
21
|
-
-- Settings: None
|
|
22
|
-
local x, F
|
|
23
|
-
do
|
|
24
|
-
local k = math.floor
|
|
25
|
-
local I = math.random
|
|
26
|
-
local Y = table.remove
|
|
27
|
-
local i = string.char
|
|
28
|
-
local K = 0
|
|
29
|
-
local J = 2
|
|
30
|
-
local Q = {}
|
|
31
|
-
local W = {}
|
|
32
|
-
local q = 0
|
|
33
|
-
local R = {}
|
|
34
|
-
for F = 1, 256, 1 do
|
|
35
|
-
R[F] = F
|
|
36
|
-
end
|
|
37
|
-
repeat
|
|
38
|
-
local F = I(1, #R)
|
|
39
|
-
local x = Y(R, F)
|
|
40
|
-
W[x] = i(x - 1)
|
|
41
|
-
until #R == 0
|
|
42
|
-
local j = {}
|
|
43
|
-
local function B()
|
|
44
|
-
if #j == 0 then
|
|
45
|
-
K = (K * 173 + 8408159861491) % 35184372088832
|
|
46
|
-
repeat
|
|
47
|
-
J = (J * 160) % 257
|
|
48
|
-
until J ~= 1
|
|
49
|
-
local F = J % 32
|
|
50
|
-
local x = (k(K / 2 ^ (13 - (J - F) / 32)) % 4294967296) / 2 ^ F
|
|
51
|
-
local I = k((x % 1) * 4294967296) + k(x)
|
|
52
|
-
local Y = I % 65536
|
|
53
|
-
local i = (I - Y) / 65536
|
|
54
|
-
local Q = Y % 256
|
|
55
|
-
local W = (Y - Q) / 256
|
|
56
|
-
local q = i % 256
|
|
57
|
-
local R = (i - q) / 256
|
|
58
|
-
j = {Q, W, q, R}
|
|
59
|
-
end
|
|
60
|
-
return table.remove(j)
|
|
61
|
-
end
|
|
62
|
-
local d = {}
|
|
63
|
-
x = setmetatable({}, {__index = d, __metatable = nil})
|
|
64
|
-
function F(x, k)
|
|
65
|
-
local I = d
|
|
66
|
-
if I[k] then
|
|
67
|
-
else
|
|
68
|
-
j = {}
|
|
69
|
-
local F = W
|
|
70
|
-
K = k % 35184372088832
|
|
71
|
-
J = k % 255 + 2
|
|
72
|
-
local Y = string.len(x)
|
|
73
|
-
I[k] = ""
|
|
74
|
-
local i = 198
|
|
75
|
-
for Y = 1, Y, 1 do
|
|
76
|
-
i = ((string.byte(x, Y) + B()) + i) % 256
|
|
77
|
-
I[k] = I[k] .. F[i + 1]
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
return k
|
|
81
|
-
end
|
|
82
|
-
end
|
|
83
|
-
print(x[F("\219\018Q%~Y\225\128u\128\208&\155", 6909832146399)])
|
|
84
|
-
|
|
85
|
-
```
|
|
86
|
-
{% endcode %}
|
|
1
|
+
---
|
|
2
|
+
description: This Step will encrypt all String constants in your code
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# EncryptStrings
|
|
6
|
+
|
|
7
|
+
## Settings
|
|
8
|
+
|
|
9
|
+
None
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
{% code title="in.lua" %}
|
|
14
|
+
```lua
|
|
15
|
+
print("Hello, World!")
|
|
16
|
+
```
|
|
17
|
+
{% endcode %}
|
|
18
|
+
|
|
19
|
+
{% code title="out.lua" %}
|
|
20
|
+
```lua
|
|
21
|
+
-- Settings: None
|
|
22
|
+
local x, F
|
|
23
|
+
do
|
|
24
|
+
local k = math.floor
|
|
25
|
+
local I = math.random
|
|
26
|
+
local Y = table.remove
|
|
27
|
+
local i = string.char
|
|
28
|
+
local K = 0
|
|
29
|
+
local J = 2
|
|
30
|
+
local Q = {}
|
|
31
|
+
local W = {}
|
|
32
|
+
local q = 0
|
|
33
|
+
local R = {}
|
|
34
|
+
for F = 1, 256, 1 do
|
|
35
|
+
R[F] = F
|
|
36
|
+
end
|
|
37
|
+
repeat
|
|
38
|
+
local F = I(1, #R)
|
|
39
|
+
local x = Y(R, F)
|
|
40
|
+
W[x] = i(x - 1)
|
|
41
|
+
until #R == 0
|
|
42
|
+
local j = {}
|
|
43
|
+
local function B()
|
|
44
|
+
if #j == 0 then
|
|
45
|
+
K = (K * 173 + 8408159861491) % 35184372088832
|
|
46
|
+
repeat
|
|
47
|
+
J = (J * 160) % 257
|
|
48
|
+
until J ~= 1
|
|
49
|
+
local F = J % 32
|
|
50
|
+
local x = (k(K / 2 ^ (13 - (J - F) / 32)) % 4294967296) / 2 ^ F
|
|
51
|
+
local I = k((x % 1) * 4294967296) + k(x)
|
|
52
|
+
local Y = I % 65536
|
|
53
|
+
local i = (I - Y) / 65536
|
|
54
|
+
local Q = Y % 256
|
|
55
|
+
local W = (Y - Q) / 256
|
|
56
|
+
local q = i % 256
|
|
57
|
+
local R = (i - q) / 256
|
|
58
|
+
j = {Q, W, q, R}
|
|
59
|
+
end
|
|
60
|
+
return table.remove(j)
|
|
61
|
+
end
|
|
62
|
+
local d = {}
|
|
63
|
+
x = setmetatable({}, {__index = d, __metatable = nil})
|
|
64
|
+
function F(x, k)
|
|
65
|
+
local I = d
|
|
66
|
+
if I[k] then
|
|
67
|
+
else
|
|
68
|
+
j = {}
|
|
69
|
+
local F = W
|
|
70
|
+
K = k % 35184372088832
|
|
71
|
+
J = k % 255 + 2
|
|
72
|
+
local Y = string.len(x)
|
|
73
|
+
I[k] = ""
|
|
74
|
+
local i = 198
|
|
75
|
+
for Y = 1, Y, 1 do
|
|
76
|
+
i = ((string.byte(x, Y) + B()) + i) % 256
|
|
77
|
+
I[k] = I[k] .. F[i + 1]
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
return k
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
print(x[F("\219\018Q%~Y\225\128u\128\208&\155", 6909832146399)])
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
{% endcode %}
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: This Step wraps all locals into Proxy Objects
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# ProxifyLocals
|
|
6
|
-
|
|
7
|
-
### Settings
|
|
8
|
-
|
|
9
|
-
| Name | type | description | values |
|
|
10
|
-
| ----------- | ---- | ------------------------------------------- | --------------------------------------- |
|
|
11
|
-
| LiteralType | enum | The type of the randomly generated literals | "dictionary", "number", "string", "any" |
|
|
12
|
-
|
|
13
|
-
### Example
|
|
14
|
-
|
|
15
|
-
{% code title="in.lua" %}
|
|
16
|
-
```lua
|
|
17
|
-
local x = "Hello, World!"
|
|
18
|
-
print(x)
|
|
19
|
-
```
|
|
20
|
-
{% endcode %}
|
|
21
|
-
|
|
22
|
-
{% code title="out.lua" %}
|
|
23
|
-
```lua
|
|
24
|
-
-- LiteralType = "dictionary"
|
|
25
|
-
local n = setmetatable
|
|
26
|
-
local D =
|
|
27
|
-
n(
|
|
28
|
-
{Wz = function()
|
|
29
|
-
end},
|
|
30
|
-
{__div = function(R, n)
|
|
31
|
-
R.Wz = n
|
|
32
|
-
end, __concat = function(R, n)
|
|
33
|
-
return R.Wz
|
|
34
|
-
end}
|
|
35
|
-
)
|
|
36
|
-
local R =
|
|
37
|
-
n(
|
|
38
|
-
{Js = "Hello, World!"},
|
|
39
|
-
{__add = function(R, n)
|
|
40
|
-
R.Js = n
|
|
41
|
-
end, __index = function(R, n)
|
|
42
|
-
return rawget(R, "Js")
|
|
43
|
-
end}
|
|
44
|
-
)
|
|
45
|
-
print(R.Muirgen)
|
|
46
|
-
```
|
|
47
|
-
{% endcode %}
|
|
1
|
+
---
|
|
2
|
+
description: This Step wraps all locals into Proxy Objects
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# ProxifyLocals
|
|
6
|
+
|
|
7
|
+
### Settings
|
|
8
|
+
|
|
9
|
+
| Name | type | description | values |
|
|
10
|
+
| ----------- | ---- | ------------------------------------------- | --------------------------------------- |
|
|
11
|
+
| LiteralType | enum | The type of the randomly generated literals | "dictionary", "number", "string", "any" |
|
|
12
|
+
|
|
13
|
+
### Example
|
|
14
|
+
|
|
15
|
+
{% code title="in.lua" %}
|
|
16
|
+
```lua
|
|
17
|
+
local x = "Hello, World!"
|
|
18
|
+
print(x)
|
|
19
|
+
```
|
|
20
|
+
{% endcode %}
|
|
21
|
+
|
|
22
|
+
{% code title="out.lua" %}
|
|
23
|
+
```lua
|
|
24
|
+
-- LiteralType = "dictionary"
|
|
25
|
+
local n = setmetatable
|
|
26
|
+
local D =
|
|
27
|
+
n(
|
|
28
|
+
{Wz = function()
|
|
29
|
+
end},
|
|
30
|
+
{__div = function(R, n)
|
|
31
|
+
R.Wz = n
|
|
32
|
+
end, __concat = function(R, n)
|
|
33
|
+
return R.Wz
|
|
34
|
+
end}
|
|
35
|
+
)
|
|
36
|
+
local R =
|
|
37
|
+
n(
|
|
38
|
+
{Js = "Hello, World!"},
|
|
39
|
+
{__add = function(R, n)
|
|
40
|
+
R.Js = n
|
|
41
|
+
end, __index = function(R, n)
|
|
42
|
+
return rawget(R, "Js")
|
|
43
|
+
end}
|
|
44
|
+
)
|
|
45
|
+
print(R.Muirgen)
|
|
46
|
+
```
|
|
47
|
+
{% endcode %}
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: This Step splits Strings to a specific or random length
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# SplitStrings
|
|
6
|
-
|
|
7
|
-
### Settings
|
|
8
|
-
|
|
9
|
-
| Name | type | description | Values |
|
|
10
|
-
| ------------------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- |
|
|
11
|
-
| Treshold | number | The relative amount of nodes that will be affected | 0 <= x <= 1 |
|
|
12
|
-
| MinLength | number | The minimal length for the chunks in that the Strings are splitted | x > 0 |
|
|
13
|
-
| MaxLength | number | The maximal length for the chunks in that the Strings are splitted | x >= MinLength |
|
|
14
|
-
| ConcatenationType | enum | The Functions used for Concatenation. Note that when using custom, the String Array will also be Shuffled | "strcat", "table", "custom" |
|
|
15
|
-
| CustomFunctionType | enum | <p>The Type of Function code injection This Option only applies when custom Concatenation is selected.<br>Note that when chosing inline, the code size may increase significantly!</p> | "global", "local", "inline" |
|
|
16
|
-
| CustomLocalFunctionsCount | number | The number of local functions per scope. This option only applies when CustomFunctionType = local | x > 0 |
|
|
17
|
-
|
|
18
|
-
### Example
|
|
19
|
-
|
|
20
|
-
{% code title="in.lua" %}
|
|
21
|
-
```lua
|
|
22
|
-
print("Hello, World!")
|
|
23
|
-
```
|
|
24
|
-
{% endcode %}
|
|
25
|
-
|
|
26
|
-
{% code title="out.lua" %}
|
|
27
|
-
```lua
|
|
28
|
-
-- MinLength = 1
|
|
29
|
-
-- MaxLength = 1
|
|
30
|
-
local f = function(f)
|
|
31
|
-
local k, C = f[#f], ""
|
|
32
|
-
for j = 1, #k, 1 do
|
|
33
|
-
C = C .. k[f[j]]
|
|
34
|
-
end
|
|
35
|
-
return C
|
|
36
|
-
end
|
|
37
|
-
print(f({13, 11, 4, 12, 1, 6, 8, 10, 9, 7, 3, 2, 5, {"o", "d", "l", "l", "!", ",", "r", " ", "o", "W", "e", "l", "H"}}))
|
|
38
|
-
|
|
39
|
-
```
|
|
40
|
-
{% endcode %}
|
|
1
|
+
---
|
|
2
|
+
description: This Step splits Strings to a specific or random length
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# SplitStrings
|
|
6
|
+
|
|
7
|
+
### Settings
|
|
8
|
+
|
|
9
|
+
| Name | type | description | Values |
|
|
10
|
+
| ------------------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- |
|
|
11
|
+
| Treshold | number | The relative amount of nodes that will be affected | 0 <= x <= 1 |
|
|
12
|
+
| MinLength | number | The minimal length for the chunks in that the Strings are splitted | x > 0 |
|
|
13
|
+
| MaxLength | number | The maximal length for the chunks in that the Strings are splitted | x >= MinLength |
|
|
14
|
+
| ConcatenationType | enum | The Functions used for Concatenation. Note that when using custom, the String Array will also be Shuffled | "strcat", "table", "custom" |
|
|
15
|
+
| CustomFunctionType | enum | <p>The Type of Function code injection This Option only applies when custom Concatenation is selected.<br>Note that when chosing inline, the code size may increase significantly!</p> | "global", "local", "inline" |
|
|
16
|
+
| CustomLocalFunctionsCount | number | The number of local functions per scope. This option only applies when CustomFunctionType = local | x > 0 |
|
|
17
|
+
|
|
18
|
+
### Example
|
|
19
|
+
|
|
20
|
+
{% code title="in.lua" %}
|
|
21
|
+
```lua
|
|
22
|
+
print("Hello, World!")
|
|
23
|
+
```
|
|
24
|
+
{% endcode %}
|
|
25
|
+
|
|
26
|
+
{% code title="out.lua" %}
|
|
27
|
+
```lua
|
|
28
|
+
-- MinLength = 1
|
|
29
|
+
-- MaxLength = 1
|
|
30
|
+
local f = function(f)
|
|
31
|
+
local k, C = f[#f], ""
|
|
32
|
+
for j = 1, #k, 1 do
|
|
33
|
+
C = C .. k[f[j]]
|
|
34
|
+
end
|
|
35
|
+
return C
|
|
36
|
+
end
|
|
37
|
+
print(f({13, 11, 4, 12, 1, 6, 8, 10, 9, 7, 3, 2, 5, {"o", "d", "l", "l", "!", ",", "r", " ", "o", "W", "e", "l", "H"}}))
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
{% endcode %}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: This Step will Compile your script and run it within a Vm
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Vmify
|
|
6
|
-
|
|
7
|
-
### Settings
|
|
8
|
-
|
|
9
|
-
None
|
|
1
|
+
---
|
|
2
|
+
description: This Step will Compile your script and run it within a Vm
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Vmify
|
|
6
|
+
|
|
7
|
+
### Settings
|
|
8
|
+
|
|
9
|
+
None
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: This Step Wraps the Entire Script into a Function
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# WrapInFunction
|
|
6
|
-
|
|
7
|
-
### Settings
|
|
8
|
-
|
|
9
|
-
| Name | type | description |
|
|
10
|
-
| ---------- | ------ | ------------------------ |
|
|
11
|
-
| Iterations | number | The Number Of Iterations |
|
|
12
|
-
|
|
13
|
-
### Example
|
|
14
|
-
|
|
15
|
-
{% code title="in.lua" %}
|
|
16
|
-
```lua
|
|
17
|
-
print("Hello, World!")
|
|
18
|
-
```
|
|
19
|
-
{% endcode %}
|
|
20
|
-
|
|
21
|
-
{% code title="out.lua" %}
|
|
22
|
-
```lua
|
|
23
|
-
-- Iterations = 1
|
|
24
|
-
return (function()
|
|
25
|
-
print("Hello, World!")
|
|
26
|
-
end)()
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
{% endcode %}
|
|
1
|
+
---
|
|
2
|
+
description: This Step Wraps the Entire Script into a Function
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# WrapInFunction
|
|
6
|
+
|
|
7
|
+
### Settings
|
|
8
|
+
|
|
9
|
+
| Name | type | description |
|
|
10
|
+
| ---------- | ------ | ------------------------ |
|
|
11
|
+
| Iterations | number | The Number Of Iterations |
|
|
12
|
+
|
|
13
|
+
### Example
|
|
14
|
+
|
|
15
|
+
{% code title="in.lua" %}
|
|
16
|
+
```lua
|
|
17
|
+
print("Hello, World!")
|
|
18
|
+
```
|
|
19
|
+
{% endcode %}
|
|
20
|
+
|
|
21
|
+
{% code title="out.lua" %}
|
|
22
|
+
```lua
|
|
23
|
+
-- Iterations = 1
|
|
24
|
+
return (function()
|
|
25
|
+
print("Hello, World!")
|
|
26
|
+
end)()
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
{% endcode %}
|