{"id":15289259,"url":"https://github.com/zeusssz/hercules-obfuscator","last_synced_at":"2025-04-13T09:06:39.610Z","repository":{"id":254682582,"uuid":"847251320","full_name":"zeusssz/hercules-obfuscator","owner":"zeusssz","description":" A powerful Lua obfuscator designed to make your Lua code nearly impossible to reverse-engineer, with multiple layers of advanced obfuscation techniques","archived":false,"fork":false,"pushed_at":"2025-04-12T13:51:33.000Z","size":589,"stargazers_count":109,"open_issues_count":6,"forks_count":53,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-13T09:06:30.829Z","etag":null,"topics":["lua","lua-obfuscator","obfuscator"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zeusssz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-25T09:32:30.000Z","updated_at":"2025-04-13T08:44:54.000Z","dependencies_parsed_at":"2024-10-26T08:30:44.908Z","dependency_job_id":null,"html_url":"https://github.com/zeusssz/hercules-obfuscator","commit_stats":{"total_commits":170,"total_committers":3,"mean_commits":"56.666666666666664","dds":0.03529411764705881,"last_synced_commit":"51f2c4f377d95a90b262b1b5bd535c2b1bbdb270"},"previous_names":["zeusssz/herclues-obfuscator","zeusssz/hercules-obfuscator"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeusssz%2Fhercules-obfuscator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeusssz%2Fhercules-obfuscator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeusssz%2Fhercules-obfuscator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeusssz%2Fhercules-obfuscator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zeusssz","download_url":"https://codeload.github.com/zeusssz/hercules-obfuscator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248688570,"owners_count":21145766,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lua","lua-obfuscator","obfuscator"],"created_at":"2024-09-30T16:00:06.634Z","updated_at":"2025-04-13T09:06:39.604Z","avatar_url":"https://github.com/zeusssz.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/ff2ed207-c95e-45c3-831f-04a32675dbb5?size=32\" alt=\"Banner Image\" /\u003e\n\u003c/p\u003e\n\u003cpre align=\"center\"\u003e\n                                _            \n  /\\  /\\ ___  _ __  ___  _   _ | |  ___  ___ \n / /_/ // _ \\| '__|/ __|| | | || | / _ \\/ __|\n/ __  /|  __/| |  | (__ | |_| || ||  __/\\__ \\\n\\/ /_/  \\___||_|   \\___| \\__,_||_| \\___||___/\n\u003c/pre\u003e\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/stars/zeusssz/hercules-obfuscator?style=flat-square\" alt=\"Stars\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/forks/zeusssz/hercules-obfuscator?style=flat-square\" alt=\"Forks\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/issues/zeusssz/hercules-obfuscator?style=flat-square\" alt=\"Issues\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/license/zeusssz/hercules-obfuscator?style=flat-square\" alt=\"License\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/last-commit/zeusssz/hercules-obfuscator?style=flat-square\" alt=\"Last Commit\" /\u003e\n  \u003cbr\u003e\n\u003ca href=\"https://discord.com/oauth2/authorize?client_id=1293608330123804682\"\u003e\n \u003cimg src=\"https://img.shields.io/badge/Add%20Bot-5865F2?style=flat\u0026logo=discord\u0026logoColor=%23ffffff\" alt=\"Bot Invite\"\u003e\n\u003c/a\u003e\n  \n\u003ca href=\"https://top.gg/bot/1293608330123804682\"\u003e\n  \u003cimg src=\"https://top.gg/api/widget/servers/1293608330123804682.svg\" alt=\"TopGG\" /\u003e\n\u003c/a\u003e\n  \n\u003ca href=\"https://github.com/Serpensin/DiscordBots-Hercules\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/Discord%20Bot%20Repo-181717?style=flat\u0026logo=github\" alt=\"Bot Repo\"/\u003e\n\u003c/a\u003e\n  \n\u003ca href=\"https://www.hercules-obfuscator.xyz/\"\u003e\n  \u003cimg alt=\"Hercules Website\" src=\"https://img.shields.io/badge/Hercules_Website-001944?style=flat\u0026logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjU2cHgiIGhlaWdodD0iMjU2cHgiIHZpZXdCb3g9Ii0xMi44IC0xMi44IDE1My42MCAxNTMuNjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIGFyaWEtaGlkZGVuPSJ0cnVlIiByb2xlPSJpbWciIGNsYXNzPSJpY29uaWZ5IGljb25pZnktLW5vdG8iIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iI2ZmZmZmZiIgc3Ryb2tlLXdpZHRoPSIzLjg0Ij48ZyBpZD0iU1ZHUmVwb19iZ0NhcnJpZXIiIHN0cm9rZS13aWR0aD0iMCI+PC9nPjxnIGlkPSJTVkdSZXBvX3RyYWNlckNhcnJpZXIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PC9nPjxnIGlkPSJTVkdSZXBvX2ljb25DYXJyaWVyIj48cGF0aCBkPSJNMTA5LjQ4IDE2LjM0SDg0Ljg0Yy0xLjI4IDAtMi4zMyAxLjA0LTIuMzMgMi4zM3YzNi4yN0g0NS41VjE4LjY4YzAtMS4yOS0xLjA0LTIuMzMtMi4zNC0yLjMzSDE4LjUzYTIuMzQgMi4zNCAwIDAgMC0yLjM0IDIuMzN2OTkuOTZjMCAxLjI5IDEuMDUgMi4zMyAyLjM0IDIuMzNoMjQuNjNhMi4zNCAyLjM0IDAgMCAwIDIuMzQtMi4zM1Y3Ni4xNWgzNy4wMnY0Mi40OGMwIDEuMjkgMS4wNSAyLjMzIDIuMzMgMi4zM2gyNC42NGMxLjI5IDAgMi4zMy0xLjA1IDIuMzMtMi4zM1YxOC42OGEyLjM1IDIuMzUgMCAwIDAtMi4zNC0yLjM0eiIgZmlsbD0iI2ZmZmZmZiI+PC9wYXRoPjwvZz48L3N2Zz4=\u0026logoColor=white\"\u003e\n\u003c/a\u003e\n\n\u003c/p\u003e\n\n---\n**Hercules** is a powerful Lua obfuscator designed to make your Lua code _nearly_ impossible to reverse-engineer. With multiple layers of advanced obfuscation techniques, Hercules ensures your scripts are secure from prying eyes.\n\u003cbr\u003e\n\u003cbr\u003e\nIf you decide to use/fork Hercules, please do **star it** to show support. It helps out a ton!\n\u003cbr\u003e\n\nContact either `zeusssz_` on Discord for queries, or join the [Discord](https://zeusssz.github.io/hercules-discord/), to use the **Herucles Bot**.\n\u003cbr\u003e\n\n\u003e[!CAUTION]\nObfuscation is not a foolproof method for protecting your code! Always consider additional security measures depending on your use case.\n\n\u003e[!NOTE]\nHercules is very much still in development and may not be the best yet, but we are committed to making it one of the best. Hercules is currently on version: `1.6.1`\n---\n\n## Features\n\n- **String Encoding:** Transform strings into seemingly indecipherable formats using an advanced Caesar Cipher, making reverse engineering a daunting task.\n\n- **Variable Renaming:** Elevates your code's security by replacing original variable names with a unique set of randomly generated identifiers, effectively masking their true intent.\n\n- **Control Flow Obfuscation:** Introduces intricate, deceptive control flow structures to mislead static analysis tools, ensuring your logic remains obscured from prying eyes.\n\n- **Garbage Code Insertion:** Strategically inject meaningless code snippets that bloat your scripts, complicating the analysis and deterring attackers.\n\n- **Bytecode Encoding:** Seamlessly convert critical sections of your script into bytecode, adding an additional layer of complexity that hinders comprehension.\n\n- **Function Inlining:** Enhances obfuscation by embedding function bodies directly into their calls, effectively disguising the original flow and logic of the code.\n\n- **Opaque Predicates:** Utilizes constructed conditions that always evaluate to true or false, creating confusion about the actual functionality of your code.\n\n- **Dynamic Code Generator:** Generates code blocks dynamically from the script itself, complicating static analysis and enhancing security.\n\n- **String to Expressions:** Transform string literals into complex mathematical expressions, making it nearly impossible to deduce their original meaning.\n\n- **Virtual Machinery:** Employs a virtual machine environment to execute obfuscated code, adding a layer of execution complexity that challenges traditional analysis techniques.\n\n- **Wrap In Function:** Encapsulates entire scripts within a function, further obscuring the code's entry points and enhancing overall security.\n\n\u003e[!TIP]\n\u003eYou can customize your obfuscation settings through the `config.lua` file.\n---\n## Installation\n\n\u003e[!IMPORTANT]\n\u003eIt is recommended to use the `Lua 5.4` compiler to run Hercules\n\n1. Clone this repository (alternatively, install the ZIP file):\n    ```bash\n    git clone https://github.com/zeusssz/hercules-obfuscator.git\n    cd hercules-obfuscator/src\n    ```\n\n2. Run the obfuscator:\n    ```bash\n    lua hercules.lua path/to/your/script.lua\n    ```\n\u003e[!NOTE]\n\u003eEnsure you are in the working directory of `hercules.lua`, i.e., `src` by default.\n\n---\n\n## Usage\n\nTo obfuscate a Lua script using Hercules, simply run:\n\n```bash\nlua hercules.lua path/to/your/script.lua\n```\n\nThis will generate an obfuscated version of the script in the same directory, with the filename `*_obfuscated.lua`.\n\n## Example\n\n```bash\nlua hercules.lua my_script.lua\n```\n\nOutput:\n`my_script_obfuscated.lua` – the obfuscated version of your script.\n\u003cbr\u003e\n\u003cbr\u003e\n\n---\nOriginal Script : `file.lua`\n```lua\n-- Function to print a greeting message\nfunction Greet(name)\n    print(\"Hello, \" .. name .. \"!\")\nend\n\n-- Function to add two numbers\nfunction Add(a, b)\n    return a + b\nend\n\n-- Function to test a basic conditional statement\nfunction CheckNumber(num)\n    if num \u003e 0 then\n        print(num .. \" is positive.\")\n    elseif num \u003c 0 then\n        print(num .. \" is negative.\")\n    else\n        print(num .. \" is zero.\")\n    end\nend\n\nGreet(\"You\")\n\nlocal sum = Add(5, 10)\nprint(\"The sum of 5 and 10 is: \" .. sum)\n\nCheckNumber(5)   -- Output: 5 is positive.\nCheckNumber(-3)  -- Output: -3 is negative.\nCheckNumber(0)   -- Output: 0 is zero.\n```\n\u003cbr\u003e\n\nObfuscated Script : `file_obfuscated.lua` (obfuscation was done under `Hercules v1.6.1.1`)\n```lua\n--[Obfuscated by Hercules v1.6 | discord.gg/Hx6RuYs8Ku (server deleted)]\nreturn (function(...) local LULvKZwws,VFNgypmnr,SgJhiuXMa,KYWIsgYa,CbUhWnJMFL,OIJEOabg,VwkgXDdwyt,UhXcNKJBqteo,EeUiNBYECZl LULvKZwws=ipairs;VFNgypmnr=pairs;SgJhiuXMa=math.floor;KYWIsgYa=math.ldexp;CbUhWnJMFL=string.byte;OIJEOabg=string.char;VwkgXDdwyt=string.sub;UhXcNKJBqteo=table.concat;EeUiNBYECZl=table.unpack;hercules,v1,alpha,__,TNSUKtZeTLP=\"Protected By Hercules V1.6\",function()end,true,1,0 local LuaFunc,WrapState,BcToState,gqnneaRQwArE;local IqYTmXOm=50 local JKIQaXlYSHN=select;local function DodtdDeP(TNSUKtZeTLP)return{}end;local XfSoGBtLlOKa=unpack or table.unpack local function Pack(...)return{gLOBLJrAz=JKIQaXlYSHN(\"#\",...),...}end local function hJBjxXlnZ(nlRejAWSOC,RucRnBLVH,yLLLinqfaiEK,OepGTTbBc,EpFtYUUHXazw)for i=TNSUKtZeTLP,yLLLinqfaiEK - RucRnBLVH do EpFtYUUHXazw[OepGTTbBc+i]=nlRejAWSOC[RucRnBLVH+i]end end local function hnpgDrCljfw(VfHqDHlKZwv,qgAfPPbKrX)local kWbSKXNM=TNSUKtZeTLP local xXYuVpLPFoeT=__ while VfHqDHlKZwv\u003eTNSUKtZeTLP and qgAfPPbKrX\u003eTNSUKtZeTLP do if(VfHqDHlKZwv % 2==__)and(qgAfPPbKrX % 2==__)then kWbSKXNM=kWbSKXNM+xXYuVpLPFoeT end xXYuVpLPFoeT=xXYuVpLPFoeT*2 VfHqDHlKZwv=SgJhiuXMa(VfHqDHlKZwv/2)qgAfPPbKrX=SgJhiuXMa(qgAfPPbKrX/2)end return kWbSKXNM end local function SvrpWBsRsv(DQlCEeYLP,gLOBLJrAz)return DQlCEeYLP*2^gLOBLJrAz end local function kzAAZtcC(DQlCEeYLP,gLOBLJrAz)return SgJhiuXMa(DQlCEeYLP/2^gLOBLJrAz)end local function GRPqeOkD(VfHqDHlKZwv,qgAfPPbKrX)local kWbSKXNM=TNSUKtZeTLP local BQzrjiyzAmq=__ while VfHqDHlKZwv\u003eTNSUKtZeTLP or qgAfPPbKrX\u003eTNSUKtZeTLP do local dwkhwNXcleD=VfHqDHlKZwv % 2 local ugsLuMhKX=qgAfPPbKrX % 2 if dwkhwNXcleD==__ or ugsLuMhKX==__ then kWbSKXNM=kWbSKXNM+BQzrjiyzAmq end VfHqDHlKZwv=SgJhiuXMa(VfHqDHlKZwv/2)qgAfPPbKrX=SgJhiuXMa(qgAfPPbKrX/2)BQzrjiyzAmq=BQzrjiyzAmq*2 end return kWbSKXNM end local function FEGbdJFRbwIz(OesjstyO,mLiKyMpC)for i,uv in VFNgypmnr(OesjstyO)do if uv.mLiKyMpC\u003e=mLiKyMpC then uv.m=uv.M[uv.mLiKyMpC];uv.M=uv;uv.mLiKyMpC=\"m\" OesjstyO[i]=nil;end;end;end;local function cyTGqQECKrTi(OesjstyO,mLiKyMpC,EeoiWLMB)local nbLykzNc=OesjstyO[mLiKyMpC]if not nbLykzNc then nbLykzNc={mLiKyMpC=mLiKyMpC,M=EeoiWLMB}OesjstyO[mLiKyMpC]=nbLykzNc;end;return nbLykzNc;end;function sOuJicZHSj(mqVUGYpUKWb,rpYASbzNWG)local tpeONQMgfH,uXPZIEmiBGO=#rpYASbzNWG,{}local dEJladwwXuKY={}for i=1,tpeONQMgfH do dEJladwwXuKY[rpYASbzNWG:sub(i,i)]=i - 1 end for encoded_char in mqVUGYpUKWb:gmatch(\"[^x]+\")do local gLOBLJrAz=0 for i=1,#encoded_char do gLOBLJrAz=gLOBLJrAz*tpeONQMgfH+dEJladwwXuKY[encoded_char:sub(i,i)]end uXPZIEmiBGO[#uXPZIEmiBGO+1]=OIJEOabg(gLOBLJrAz)end mqVUGYpUKWb=UhXcNKJBqteo(uXPZIEmiBGO)local icWdwWaakmqT=__ local function XdYFTRMqSp()local IHtOWLERC=CbUhWnJMFL(mqVUGYpUKWb,icWdwWaakmqT,icWdwWaakmqT)icWdwWaakmqT=icWdwWaakmqT+__ return IHtOWLERC;end;local function HiFfXRcqI()local NaaVlyzja,fVgLkeUU=CbUhWnJMFL(mqVUGYpUKWb,icWdwWaakmqT,icWdwWaakmqT+2)icWdwWaakmqT=icWdwWaakmqT+2;return(fVgLkeUU*256)+NaaVlyzja;end;local function MVQmlaxU()local NaaVlyzja,fVgLkeUU,IXKWOHHcMobk,DEtYJbMFZZ=CbUhWnJMFL(mqVUGYpUKWb,icWdwWaakmqT,icWdwWaakmqT+3)icWdwWaakmqT=icWdwWaakmqT+4;return(DEtYJbMFZZ*16777216)+(IXKWOHHcMobk*65536)+(fVgLkeUU*256)+NaaVlyzja;end;function gqnneaRQwArE()local KwYtejSsu={gLOBLJrAz=XdYFTRMqSp(),c=XdYFTRMqSp(),d=XdYFTRMqSp(),DQlCEeYLP={},D={},fddFqEuOjbyE={}}for i=__,MVQmlaxU()do local dZRhgqxbnAh=MVQmlaxU()local TuemBXJL=XdYFTRMqSp()local UimNsHqv=XdYFTRMqSp()local kUQtxTEsiOU={m=dZRhgqxbnAh,S=TuemBXJL,A=HiFfXRcqI()}local cJVnnTAbbOJt={qgAfPPbKrX=XdYFTRMqSp(),c=XdYFTRMqSp()}if(UimNsHqv==__)then kUQtxTEsiOU.OesjstyO=HiFfXRcqI()kUQtxTEsiOU.C=HiFfXRcqI()kUQtxTEsiOU.s=cJVnnTAbbOJt.qgAfPPbKrX==__ and kUQtxTEsiOU.OesjstyO\u003e0xFF kUQtxTEsiOU.VfHqDHlKZwv=cJVnnTAbbOJt.c==__ and kUQtxTEsiOU.C\u003e0xFF elseif(UimNsHqv==2)then kUQtxTEsiOU.F=MVQmlaxU()kUQtxTEsiOU.g=cJVnnTAbbOJt.qgAfPPbKrX==__ elseif(UimNsHqv==3)then kUQtxTEsiOU.f=MVQmlaxU()- 131071 end;KwYtejSsu.DQlCEeYLP[i]=kUQtxTEsiOU;end;for i=__,MVQmlaxU()do local UimNsHqv=XdYFTRMqSp()if(UimNsHqv==__)then KwYtejSsu.D[i - __]=(XdYFTRMqSp()~=TNSUKtZeTLP)elseif(UimNsHqv==3)then KwYtejSsu.D[i - __]=(function()local NVZSUcrb=MVQmlaxU()local zAtREAZeRT=MVQmlaxU()local gWtsuqhSy=__ local jinIUfAEjfmc=GRPqeOkD(SvrpWBsRsv(hnpgDrCljfw(zAtREAZeRT,0xFFFFF),32),NVZSUcrb);local RbIuSjGnMS=hnpgDrCljfw(kzAAZtcC(zAtREAZeRT,20),0x7FF)local yyaOzQeqUZM=(-__)^kzAAZtcC(zAtREAZeRT,31)if RbIuSjGnMS==TNSUKtZeTLP then if jinIUfAEjfmc==TNSUKtZeTLP then return yyaOzQeqUZM*TNSUKtZeTLP else RbIuSjGnMS=__ gWtsuqhSy=TNSUKtZeTLP end;elseif RbIuSjGnMS==2047 then if jinIUfAEjfmc==TNSUKtZeTLP then return yyaOzQeqUZM*(__/TNSUKtZeTLP)else return yyaOzQeqUZM*(TNSUKtZeTLP/TNSUKtZeTLP)end;end;return KYWIsgYa(yyaOzQeqUZM,RbIuSjGnMS - 1023)*(gWtsuqhSy+(jinIUfAEjfmc/(2^52)))end)()elseif(UimNsHqv==4)then KwYtejSsu.D[i - __]=(function()local chOPLSyU;local kIKgGQJboPUP=MVQmlaxU();if(kIKgGQJboPUP==TNSUKtZeTLP)then return;end;chOPLSyU=VwkgXDdwyt(mqVUGYpUKWb,icWdwWaakmqT,icWdwWaakmqT+kIKgGQJboPUP - __);icWdwWaakmqT=icWdwWaakmqT+kIKgGQJboPUP return chOPLSyU;end)()end end;for i=__,MVQmlaxU()do KwYtejSsu.fddFqEuOjbyE[i - __]=gqnneaRQwArE()end for TNSUKtZeTLP,v in LULvKZwws(KwYtejSsu.DQlCEeYLP)do if v.g then v.D=KwYtejSsu.D[v.F]else if v.s then v.A=KwYtejSsu.D[v.OesjstyO - 256]end;if v.VfHqDHlKZwv then v.C=KwYtejSsu.D[v.C - 256]end;end;end return KwYtejSsu end;return gqnneaRQwArE()end;function AMNSCtLhhZsb(GdEgXOiyeBK,GsyXGZBt,gLOBLJrAz)local DQlCEeYLP=GdEgXOiyeBK.DQlCEeYLP;local fddFqEuOjbyE=GdEgXOiyeBK.Z;local v=GdEgXOiyeBK.v;local wtgyutAm=-__;local NBIypScaTJj={}local EeoiWLMB=GdEgXOiyeBK.EeoiWLMB;local z=GdEgXOiyeBK.z;while alpha do local kUQtxTEsiOU=DQlCEeYLP[z]local S=kUQtxTEsiOU.S;z=z+__;if(S==1)then EeoiWLMB[kUQtxTEsiOU.A]=kUQtxTEsiOU.D elseif(S==2)then EeoiWLMB[kUQtxTEsiOU.A]=kUQtxTEsiOU.OesjstyO~=0 if kUQtxTEsiOU.C~=0 then z=z+1 end;elseif(S==4)then local edmCIHmZj=gLOBLJrAz[kUQtxTEsiOU.OesjstyO]EeoiWLMB[kUQtxTEsiOU.A]=edmCIHmZj.M[edmCIHmZj.mLiKyMpC]elseif(S==5)then EeoiWLMB[kUQtxTEsiOU.A]=GsyXGZBt[kUQtxTEsiOU.D]elseif(S==6)then local mLiKyMpC if kUQtxTEsiOU.VfHqDHlKZwv then mLiKyMpC=kUQtxTEsiOU.C;else mLiKyMpC=EeoiWLMB[kUQtxTEsiOU.C]end EeoiWLMB[kUQtxTEsiOU.A]=EeoiWLMB[kUQtxTEsiOU.OesjstyO][mLiKyMpC]elseif(S==7)then GsyXGZBt[kUQtxTEsiOU.D]=EeoiWLMB[kUQtxTEsiOU.A]elseif(S==0)then EeoiWLMB[kUQtxTEsiOU.A]=EeoiWLMB[kUQtxTEsiOU.OesjstyO];elseif(S==21)then local OesjstyO,C=kUQtxTEsiOU.OesjstyO,kUQtxTEsiOU.C;local WDtyZfbaTV,chOPLSyU=pcall(table.concat,EeoiWLMB,\"\",OesjstyO,C)if not WDtyZfbaTV then chOPLSyU=EeoiWLMB[OesjstyO]or \"\" for i=OesjstyO+1,C do chOPLSyU=chOPLSyU ..(EeoiWLMB[i]or EeoiWLMB[i - 1])end;end;EeoiWLMB[kUQtxTEsiOU.A]=chOPLSyU;elseif(S==22)then z=z+kUQtxTEsiOU.f elseif(S==23)then local Lhs,Rhs;if kUQtxTEsiOU.s then Lhs=kUQtxTEsiOU.A else Lhs=EeoiWLMB[kUQtxTEsiOU.OesjstyO]end if kUQtxTEsiOU.VfHqDHlKZwv then Rhs=kUQtxTEsiOU.C else Rhs=EeoiWLMB[kUQtxTEsiOU.C]end if(Lhs==Rhs)==(kUQtxTEsiOU.A~=0)then z=z+DQlCEeYLP[z].f end;z=z+1 elseif(S==24)then local Lhs,Rhs;if kUQtxTEsiOU.s then Lhs=kUQtxTEsiOU.A else Lhs=EeoiWLMB[kUQtxTEsiOU.OesjstyO]end if kUQtxTEsiOU.VfHqDHlKZwv then Rhs=kUQtxTEsiOU.C else Rhs=EeoiWLMB[kUQtxTEsiOU.C]end if(Lhs\u003cRhs)==(kUQtxTEsiOU.A~=0)then z=z+DQlCEeYLP[z].f end;z=z+1 elseif(S==26)then if(not EeoiWLMB[kUQtxTEsiOU.A])~=(kUQtxTEsiOU.C~=0)then z=z+DQlCEeYLP[z].f end z=z+1 elseif(S==12)then local Lhs,Rhs;if kUQtxTEsiOU.s then Lhs=kUQtxTEsiOU.A else Lhs=EeoiWLMB[kUQtxTEsiOU.OesjstyO]end if kUQtxTEsiOU.VfHqDHlKZwv then Rhs=kUQtxTEsiOU.C else Rhs=EeoiWLMB[kUQtxTEsiOU.C]end EeoiWLMB[kUQtxTEsiOU.A]=Lhs+Rhs elseif(S==28)then local A=kUQtxTEsiOU.A;local OesjstyO=kUQtxTEsiOU.OesjstyO;local C=kUQtxTEsiOU.C;local Params;if OesjstyO==0 then Params=wtgyutAm - A;else Params=OesjstyO - 1;end;local uAVYHNBIh=Pack(EeoiWLMB[A](XfSoGBtLlOKa(EeoiWLMB,A+1,A+Params)))local NUBNQhpF=uAVYHNBIh.gLOBLJrAz;if C==0 then wtgyutAm=A+NUBNQhpF - 1;else NUBNQhpF=C - 1;end;hJBjxXlnZ(uAVYHNBIh,1,NUBNQhpF,A,EeoiWLMB)elseif(S==36)then local nILfDpCJQ=fddFqEuOjbyE[kUQtxTEsiOU.F]local zMTdHzCGAf=nILfDpCJQ.gLOBLJrAz;local UvB;if zMTdHzCGAf~=0 then UvB=DodtdDeP(zMTdHzCGAf - 1)for i=1,zMTdHzCGAf do local swSvMNosKy=DQlCEeYLP[z+i - 1]if(swSvMNosKy.S==0)then UvB[i - 1]=cyTGqQECKrTi(NBIypScaTJj,swSvMNosKy.OesjstyO,EeoiWLMB)elseif(swSvMNosKy.S==4)then UvB[i - 1]=gLOBLJrAz[swSvMNosKy.OesjstyO]end;end;z=z+zMTdHzCGAf end;EeoiWLMB[kUQtxTEsiOU.A]=fXJlVDEVSMfK(nILfDpCJQ,GsyXGZBt,UvB)elseif(S==30)then local A=kUQtxTEsiOU.A;local OesjstyO=kUQtxTEsiOU.OesjstyO;local qgAfPPbKrX;if OesjstyO==0 then qgAfPPbKrX=wtgyutAm - A+1;else qgAfPPbKrX=OesjstyO - 1;end;FEGbdJFRbwIz(NBIypScaTJj,0)return XfSoGBtLlOKa(EeoiWLMB,A,A+qgAfPPbKrX - 1)end GdEgXOiyeBK.z=z;end;end;function fXJlVDEVSMfK(fddFqEuOjbyE,GsyXGZBt,wOAbslmL)local function Wrapped(...)local HHPcDUBdCRr=Pack(...)local EeoiWLMB=DodtdDeP(fddFqEuOjbyE.d)local v={qgAfPPbKrX=TNSUKtZeTLP,OesjstyO={}}hJBjxXlnZ(HHPcDUBdCRr,__,fddFqEuOjbyE.c,TNSUKtZeTLP,EeoiWLMB)if(fddFqEuOjbyE.c\u003cHHPcDUBdCRr.gLOBLJrAz)then local PEAuPJIp=fddFqEuOjbyE.c+__ local qgAfPPbKrX=HHPcDUBdCRr.gLOBLJrAz - fddFqEuOjbyE.c;v.qgAfPPbKrX=qgAfPPbKrX;hJBjxXlnZ(HHPcDUBdCRr,PEAuPJIp,PEAuPJIp+qgAfPPbKrX - __,__,v.OesjstyO)end;local GdEgXOiyeBK={v=v,EeoiWLMB=EeoiWLMB,DQlCEeYLP=fddFqEuOjbyE.DQlCEeYLP,Z=fddFqEuOjbyE.fddFqEuOjbyE,z=__}return AMNSCtLhhZsb(GdEgXOiyeBK,GsyXGZBt,wOAbslmL)end;return Wrapped;end;fXJlVDEVSMfK(sOuJicZHSj(\"\\62\\120\\62\\120\\88\\120\\85\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\123\\120\\42\\62\\120\\62\\120\\62\\120\\123\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\91\\120\\95\\62\\120\\95\\120\\95\\62\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\63\\120\\62\\120\\95\\120\\62\\120\\42\\88\\120\\62\\120\\62\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\89\\120\\42\\62\\120\\51\\62\\120\\62\\120\\89\\120\\42\\120\\42\\120\\62\\120\\62\\120\\42\\120\\42\\120\\62\\120\\42\\120\\42\\120\\95\\42\\120\\95\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\51\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\42\\53\\120\\95\\62\\120\\95\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\51\\120\\62\\120\\95\\120\\62\\120\\61\\120\\95\\62\\120\\51\\62\\120\\62\\120\\61\\120\\42\\120\\62\\120\\62\\120\\42\\120\\42\\120\\42\\120\\62\\120\\95\\120\\42\\120\\91\\120\\42\\62\\120\\62\\120\\95\\62\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\95\\120\\62\\120\\42\\42\\120\\62\\120\\42\\120\\62\\120\\42\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\82\\120\\62\\120\\62\\120\\62\\120\\91\\120\\62\\120\\51\\41\\120\\42\\46\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\84\\120\\51\\46\\120\\42\\120\\62\\120\\95\\120\\62\\120\\95\\62\\120\\62\\120\\95\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\91\\120\\95\\62\\120\\51\\78\\120\\42\\46\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\76\\120\\51\\46\\120\\42\\120\\62\\120\\42\\58\\120\\62\\120\\62\\120\\62\\120\\58\\120\\95\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\52\\120\\42\\62\\120\\42\\120\\62\\120\\52\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\88\\120\\62\\120\\62\\120\\62\\120\\42\\58\\120\\42\\62\\120\\62\\120\\62\\120\\58\\120\\95\\120\\42\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\42\\52\\120\\95\\62\\120\\42\\120\\62\\120\\52\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\89\\120\\62\\120\\62\\120\\62\\120\\42\\58\\120\\95\\62\\120\\62\\120\\62\\120\\58\\120\\95\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\42\\52\\120\\51\\62\\120\\42\\120\\62\\120\\52\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\52\\120\\62\\120\\62\\120\\62\\120\\42\\88\\120\\42\\62\\120\\42\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\88\\120\\62\\120\\62\\120\\62\\120\\95\\42\\120\\62\\120\\95\\120\\62\\120\\42\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\64\\120\\62\\120\\62\\120\\62\\120\\42\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\42\\88\\120\\95\\62\\120\\42\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\89\\120\\62\\120\\62\\120\\62\\120\\95\\42\\120\\42\\62\\120\\95\\120\\62\\120\\42\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\75\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\95\\62\\120\\95\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\63\\120\\62\\120\\62\\120\\62\\120\\42\\53\\120\\95\\62\\120\\95\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\51\\120\\62\\120\\95\\120\\62\\120\\95\\88\\120\\51\\62\\120\\95\\120\\62\\120\\88\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\60\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\62\\120\\51\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\90\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\95\\62\\120\\62\\120\\62\\120\\42\\120\\82\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\51\\77\\120\\62\\120\\95\\42\\120\\42\\120\\77\\120\\42\\120\\51\\120\\62\\120\\62\\120\\62\\120\\51\\120\\62\\120\\82\\120\\62\\120\\95\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\95\\88\\120\\51\\62\\120\\42\\120\\62\\120\\88\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\52\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\42\\62\\120\\95\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\75\\120\\62\\120\\62\\120\\62\\120\\95\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\95\\88\\120\\51\\62\\120\\42\\120\\62\\120\\88\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\52\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\42\\62\\120\\51\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\67\\120\\62\\120\\62\\120\\62\\120\\95\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\95\\88\\120\\51\\62\\120\\42\\120\\62\\120\\88\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\52\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\95\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\44\\120\\62\\120\\95\\62\\120\\62\\120\\44\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\126\\120\\62\\120\\62\\120\\62\\120\\82\\120\\82\\120\\62\\120\\62\\120\\62\\120\\42\\59\\120\\42\\72\\120\\42\\84\\120\\42\\81\\120\\82\\120\\89\\120\\62\\120\\62\\120\\62\\120\\42\\76\\120\\42\\72\\120\\42\\66\\120\\42\\58\\120\\42\\36\\120\\42\\59\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\47\\120\\46\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\83\\120\\42\\49\\120\\42\\62\\120\\82\\120\\88\\120\\62\\120\\62\\120\\62\\120\\42\\52\\120\\42\\76\\120\\42\\125\\120\\42\\125\\120\\42\\84\\120\\82\\120\\51\\120\\62\\120\\62\\120\\62\\120\\42\\42\\120\\42\\58\\120\\42\\58\\120\\82\\120\\60\\120\\62\\120\\62\\120\\62\\120\\42\\51\\120\\42\\81\\120\\42\\125\\120\\42\\37\\120\\42\\70\\120\\42\\126\\120\\42\\33\\120\\42\\59\\120\\42\\57\\120\\42\\125\\120\\42\\76\\120\\82\\120\\51\\120\\62\\120\\62\\120\\62\\120\\42\\124\\120\\42\\36\\120\\42\\33\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\35\\120\\42\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\58\\120\\42\\62\\120\\82\\120\\88\\120\\62\\120\\62\\120\\62\\120\\42\\47\\120\\42\\76\\120\\42\\69\\120\\42\\66\\120\\42\\84\\120\\82\\120\\61\\120\\62\\120\\62\\120\\62\\120\\42\\35\\120\\42\\81\\120\\42\\125\\120\\83\\120\\42\\71\\120\\42\\33\\120\\42\\59\\120\\83\\120\\42\\36\\120\\42\\93\\120\\83\\120\\33\\120\\83\\120\\42\\72\\120\\42\\66\\120\\42\\58\\120\\83\\120\\54\\120\\47\\120\\83\\120\\42\\69\\120\\42\\71\\120\\55\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\64\\120\\51\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\88\\120\\52\\120\\62\\120\\62\\120\\62\\120\\42\\88\\120\\62\\120\\62\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\95\\42\\120\\42\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\95\\120\\62\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\51\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\95\\42\\120\\62\\120\\62\\120\\42\\120\\95\\120\\82\\120\\62\\120\\42\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\77\\120\\62\\120\\42\\120\\42\\120\\77\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\82\\120\\62\\120\\42\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\44\\120\\62\\120\\95\\62\\120\\62\\120\\44\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\82\\120\\88\\120\\62\\120\\62\\120\\62\\120\\42\\47\\120\\42\\76\\120\\42\\69\\120\\42\\66\\120\\42\\84\\120\\82\\120\\89\\120\\62\\120\\62\\120\\62\\120\\42\\64\\120\\42\\125\\120\\42\\40\\120\\42\\40\\120\\42\\36\\120\\40\\120\\82\\120\\42\\120\\62\\120\\62\\120\\62\\120\\72\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\95\\120\\51\\120\\51\\120\\62\\120\\62\\120\\62\\120\\95\\90\\120\\42\\62\\120\\62\\120\\62\\120\\90\\120\\42\\120\\95\\120\\62\\120\\42\\120\\42\\120\\62\\120\\62\\120\\42\\120\\62\\120\\95\\44\\120\\62\\120\\62\\120\\42\\120\\44\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\44\\120\\62\\120\\95\\62\\120\\62\\120\\44\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\82\\120\\91\\120\\62\\120\\62\\120\\62\\120\\74\\120\\62\\120\\62\\120\\95\\62\\120\\74\\120\\42\\120\\62\\120\\62\\120\\42\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\91\\120\\42\\62\\120\\42\\120\\95\\62\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\88\\120\\62\\120\\95\\120\\62\\120\\42\\88\\120\\42\\62\\120\\62\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\95\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\77\\120\\51\\62\\120\\62\\120\\42\\120\\77\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\51\\120\\62\\120\\42\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\91\\120\\62\\120\\51\\120\\95\\62\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\90\\120\\62\\120\\95\\120\\62\\120\\74\\120\\62\\120\\42\\62\\120\\62\\120\\74\\120\\42\\120\\62\\120\\62\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\42\\120\\91\\120\\42\\62\\120\\42\\120\\95\\62\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\88\\120\\62\\120\\95\\120\\62\\120\\42\\88\\120\\42\\62\\120\\62\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\51\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\95\\77\\120\\51\\62\\120\\62\\120\\42\\120\\77\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\51\\120\\62\\120\\42\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\91\\120\\62\\120\\42\\120\\95\\62\\120\\91\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\82\\120\\62\\120\\95\\120\\62\\120\\42\\88\\120\\42\\62\\120\\62\\120\\62\\120\\88\\120\\95\\120\\42\\120\\62\\120\\42\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\51\\42\\120\\62\\120\\42\\120\\62\\120\\42\\120\\95\\120\\51\\120\\62\\120\\42\\120\\62\\120\\82\\120\\62\\120\\62\\120\\62\\120\\95\\77\\120\\51\\62\\120\\62\\120\\42\\120\\77\\120\\42\\120\\95\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\51\\120\\62\\120\\42\\53\\120\\42\\62\\120\\62\\120\\42\\120\\53\\120\\42\\120\\42\\120\\62\\120\\62\\120\\62\\120\\95\\120\\62\\120\\42\\120\\62\\120\\44\\120\\62\\120\\95\\62\\120\\62\\120\\44\\120\\42\\120\\62\\120\\62\\120\\62\\120\\62\\120\\42\\120\\62\\120\\62\\120\\62\\120\\88\\120\\62\\120\\62\\120\\62\\120\\51\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\62\\120\\82\\120\\88\\120\\62\\120\\62\\120\\62\\120\\42\\47\\120\\42\\76\\120\\42\\69\\120\\42\\66\\120\\42\\84\\120\\82\\120\\67\\120\\62\\120\\62\\120\\62\\120\\83\\120\\42\\69\\120\\42\\71\\120\\83\\120\\42\\47\\120\\42\\36\\120\\42\\71\\120\\42\\69\\120\\42\\84\\120\\42\\69\\120\\42\\73\\120\\42\\125\\120\\66\\120\\82\\120\\67\\120\\62\\120\\62\\120\\62\\120\\83\\120\\42\\69\\120\\42\\71\\120\\83\\120\\42\\66\\120\\42\\125\\120\\42\\96\\120\\42\\72\\120\\42\\84\\120\\42\\69\\120\\42\\73\\120\\42\\125\\120\\66\\120\\82\\120\\75\\120\\62\\120\\62\\120\\62\\120\\83\\120\\42\\69\\120\\42\\71\\120\\83\\120\\42\\55\\120\\42\\125\\120\\42\\76\\120\\42\\36\\120\\66\\120\\62\\120\\62\\120\\62\\120\\62\",\"\u003e*_3RXY4@K?\u003cZC~8WV\u0026D#M[=J|{O5+,0SH9%:}]`QEUF(;B$/6LGT!I21^7AN)P.\"),(getfenv and getfenv(0))or _ENV)() end)(...)\n```\n---\n\nIf you specify the overwrite option with the `--overwrite` flag, it will write over to the specified script, instead of creating a new file.\n\u003cbr\u003e\nYou may also specify a preset using `--min`, `--mid`, or `--max`. For Example\n```sh\nlua src\\hercules.lua my_script.lua --max\n```\n\n## Customization\n\nYou can modify or add new modules to the `modules/` directory to create additional layers of obfuscation. The `pipeline.lua` file controls the order of obfuscation steps.\n\n\u003e[!IMPORTANT]\n\u003eWhen adding more modules to the `modules/` directory, ensure you maintain proper order in the pipeline file, to prevent any issues, and remember to add your module to the `pipeline.lua` file.\n\u003cbr\u003eIf you wish for it to be configurable, add it to the `config.lua` file, along with the necessary logic.\n\n---\n\n## Credits\nVM based on [deoxy](https://github.com/deoxyrib0nucleid)'s VM\n\n---\n![image](https://github.com/user-attachments/assets/f0ee0abd-f4d5-4e6c-8801-07e32eec2ad9)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzeusssz%2Fhercules-obfuscator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzeusssz%2Fhercules-obfuscator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzeusssz%2Fhercules-obfuscator/lists"}