Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

Backtrace

{
  "frames": []
}

Context

{
  "current_block_id": {
    "index": 6,
    "address": 9289,
    "block_type": "Normal"
  },
  "current_ast_node_stack": [],
  "current_instruction": {
    "opcode": "Jne",
    "operand": {
      "Number": 9294
    },
    "address": 9288
  }
}
function GuiRCConsoleTextEdit.onAction()
{
    builtin_fn_call#5 = GuiRCConsoleTextEdit.text.trim();
    temp.text = builtin_fn_call#5;
    lit#6 = "";
    GuiRCConsoleTextEdit.text = lit#6;
    lit#8 = 0;
    builtin_fn_call#9 = GuiRCConsoleTextEdit.history.insert(lit#8, temp.text);
    lit#11 = -1;
    GuiRCConsoleTextEdit.iterator = lit#11;
    lit#12 = "/";
    builtin_fn_call#13 = temp.text.starts(lit#12);
    // RegionId(0)
    // RegionId(1)
    if (builtin_fn_call#13) 
    {
        fn_call#16 = GuiRCTabs.getselectedtext();
        lit#17 = "RC Chat";
        // RegionId(2)
        if (fn_call#16 == lit#17) 
        {
            lit#18 = 1;
            lit#19 = -1;
            builtin_fn_call#20 = temp.text.substring(lit#18, lit#19);
            lit#21 = " ,";
            builtin_fn_call#22 = builtin_fn_call#20.tokenize(lit#21);
            temp.args = builtin_fn_call#22;
            lit#23 = 0;
            lit#24 = "clear";
            // RegionId(2)
            // RegionId(3)
            if (temp.args[lit#23] == lit#24) 
            {
                lit#27 = 0;
                lit#28 = "\n";
                builtin_fn_call#29 = GuiRCConsoleMLText.plaintext.pos(lit#28);
                builtin_fn_call#30 = GuiRCConsoleMLText.plaintext.substring(lit#27, builtin_fn_call#29);
                fn_call#32 = GuiRCConsoleMLText.settext(builtin_fn_call#30);
                fn_call#34 = GuiRCConsoleMLText.scrolltobottom();
            }
            // RegionId(4)
            else
            {
                lit#35 = 0;
                lit#36 = "open";
                // RegionId(4)
                // RegionId(5)
                if (temp.args[lit#35] == lit#36) 
                {
                    lit#37 = 1;
                    lit#38 = null;
                    // RegionId(5)
                    // RegionId(6)
                    if (temp.args[lit#37] == lit#38) 
                    {
                    }
                    // RegionId(7)
                    else
                    {
                        lit#40 = 1;
                    }
                    lit#41 = "playerattributes";
                    fn_call#44 = phi_fn_call({this.queueRequest, lit#41, ...phi<idx=0, regions=()>});
                }
                // RegionId(9)
                else
                {
                    lit#45 = 0;
                    lit#46 = "openflags";
                    // RegionId(9)
                    // RegionId(10)
                    if (temp.args[lit#45] == lit#46) 
                    {
                        lit#47 = 1;
                        lit#48 = null;
                        // RegionId(10)
                        // RegionId(11)
                        if (temp.args[lit#47] == lit#48) 
                        {
                        }
                        // RegionId(12)
                        else
                        {
                            lit#49 = 1;
                        }
                        lit#50 = "playerflags";
                        fn_call#51 = phi_fn_call({this.queueRequest, lit#50, ...phi<idx=0, regions=()>});
                    }
                    // RegionId(14)
                    else
                    {
                        lit#52 = 0;
                        lit#53 = "openweapons";
                        // RegionId(14)
                        // RegionId(15)
                        if (temp.args[lit#52] == lit#53) 
                        {
                            lit#54 = 1;
                            lit#55 = null;
                            // RegionId(15)
                            // RegionId(16)
                            if (temp.args[lit#54] == lit#55) 
                            {
                            }
                            // RegionId(17)
                            else
                            {
                                lit#56 = 1;
                            }
                            lit#57 = "playerweapons";
                            fn_call#58 = phi_fn_call({this.queueRequest, lit#57, ...phi<idx=0, regions=()>});
                        }
                        // RegionId(19)
                        else
                        {
                            lit#59 = 0;
                            lit#60 = "openchests";
                            // RegionId(19)
                            // RegionId(20)
                            if (temp.args[lit#59] == lit#60) 
                            {
                                lit#61 = 1;
                                lit#62 = null;
                                // RegionId(20)
                                // RegionId(21)
                                if (temp.args[lit#61] == lit#62) 
                                {
                                }
                                // RegionId(22)
                                else
                                {
                                    lit#63 = 1;
                                }
                                lit#64 = "playerchests";
                                fn_call#65 = phi_fn_call({this.queueRequest, lit#64, ...phi<idx=0, regions=()>});
                            }
                            // RegionId(24)
                            else
                            {
                                lit#66 = 0;
                                lit#67 = "openacc";
                                // RegionId(24)
                                // RegionId(25)
                                if (temp.args[lit#66] == lit#67) 
                                {
                                    lit#68 = 1;
                                    lit#69 = null;
                                    // RegionId(25)
                                    // RegionId(26)
                                    if (temp.args[lit#68] == lit#69) 
                                    {
                                    }
                                    // RegionId(27)
                                    else
                                    {
                                        lit#70 = 1;
                                    }
                                    lit#71 = "getaccount";
                                    lit#72 = "lister";
                                    fn_call#74 = phi_fn_call({this.queueText, lit#72, lit#71, ...phi<idx=0, regions=()>});
                                }
                                // RegionId(29)
                                else
                                {
                                    lit#75 = 0;
                                    lit#76 = "banhistory";
                                    // RegionId(29)
                                    // RegionId(30)
                                    if (temp.args[lit#75] == lit#76) 
                                    {
                                        lit#77 = 1;
                                        lit#78 = null;
                                        // RegionId(30)
                                        // RegionId(31)
                                        if (temp.args[lit#77] == lit#78) 
                                        {
                                        }
                                        // RegionId(32)
                                        else
                                        {
                                            lit#79 = 1;
                                        }
                                        lit#80 = "getbanhistory";
                                        lit#81 = "lister";
                                        fn_call#82 = phi_fn_call({this.queueText, lit#81, lit#80, ...phi<idx=0, regions=()>});
                                    }
                                    // RegionId(34)
                                    else
                                    {
                                        lit#83 = 0;
                                        lit#84 = "staffactivity";
                                        // RegionId(34)
                                        // RegionId(35)
                                        if (temp.args[lit#83] == lit#84) 
                                        {
                                            lit#85 = 1;
                                            lit#86 = null;
                                            // RegionId(35)
                                            // RegionId(36)
                                            if (temp.args[lit#85] == lit#86) 
                                            {
                                            }
                                            // RegionId(37)
                                            else
                                            {
                                                lit#87 = 1;
                                            }
                                            lit#88 = "getstaffactivity";
                                            lit#89 = "lister";
                                            fn_call#90 = phi_fn_call({this.queueText, lit#89, lit#88, ...phi<idx=0, regions=()>});
                                        }
                                        // RegionId(39)
                                        else
                                        {
                                            lit#91 = 0;
                                            lit#92 = "openaccess";
                                            // RegionId(39)
                                            // RegionId(40)
                                            if (temp.args[lit#91] == lit#92) 
                                            {
                                                lit#93 = 1;
                                                lit#94 = null;
                                                // RegionId(40)
                                                // RegionId(41)
                                                if (temp.args[lit#93] == lit#94) 
                                                {
                                                }
                                                // RegionId(42)
                                                else
                                                {
                                                    lit#95 = 1;
                                                }
                                                lit#96 = "getban";
                                                lit#97 = "lister";
                                                fn_call#98 = phi_fn_call({this.queueText, lit#97, lit#96, ...phi<idx=0, regions=()>});
                                            }
                                            // RegionId(44)
                                            else
                                            {
                                                fn_call#100 = sendtorc#99(temp.text);
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            goto RegionId(46);
        }
    }
    fn_call#101 = sendtorc#99(temp.text);
    lit#102 = 0;
    return lit#102;
}