示例#1
0
        static private string format_lbi(string lbi, string bytecode, string opcodes, string opcodes_Closure)
        {
            lbi = lbi.Replace("%%Bytecode%%", bytecode);
            lbi = lbi.Replace("--%%OPCODE_FUNCTIONS_HERE%%--", opcodes);
            lbi = lbi.Replace("--%%CLOSURE_FUNCTIONS_HERE%%--", opcodes_Closure);
            lbi = lbi.Replace("--//Lmao so like, this is kidna worthless", "local lmao_so_this_kinda_worthless = " + EncryptionLib.Xored_Table("Lmao so like, this is kidna worthless"));
            lbi = lbi.Replace("\"instructions\"", EncryptionLib.Xored_Table("instructions"));
            lbi = lbi.Replace("\"constants\"", EncryptionLib.Xored_Table("constants"));
            lbi = lbi.Replace("\"prototypes\"", EncryptionLib.Xored_Table("prototypes"));
            lbi = lbi.Replace("\"opcode\"", EncryptionLib.Xored_Table("opcode"));
            lbi = lbi.Replace("MOVE_OPCODE", MOVE_OPCODE.ToString());
            lbi = lbi.Replace("GETUPVAL_OPCODE", GETUPVAL_OPCODE.ToString());

            if (ObfuscationSettings.discardReturn)
            {
                lbi = lbi.Replace("--return ", "");
            }
            else
            {
                lbi = lbi.Replace("--return ", "return ");
            }

            if (opcodes_first)
            {
                lbi = lbi.Replace("--VM STRING ONE", VM_Strings.INSTRUCTIONS);
                lbi = lbi.Replace("--VM STRING TWO", VM_Strings.CONSTANTS);
            }
            else
            {
                lbi = lbi.Replace("--VM STRING ONE", VM_Strings.CONSTANTS);
                lbi = lbi.Replace("--VM STRING TWO", VM_Strings.INSTRUCTIONS);
            }
            return(lbi);
        }