Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

Backtrace

{
  "frames": []
}

Context

{
  "current_block_id": {
    "index": 4,
    "address": 19247,
    "block_type": "Normal"
  },
  "current_ast_node_stack": [],
  "current_instruction": {
    "opcode": "Ret",
    "operand": null,
    "address": 19248
  }
}
function ScriptedRCBanHist.onAction()
{
    fn_call#2 = ScriptedRCBanWindowTabSelect.getselectedtext();
    lit#3 = "Global ban";
    lit#4 = "Local ban";
    // RegionId(1)
    if (fn_call#2 in {lit#4, lit#3}) 
    {
        lit#8 = 0;
        temp.acc = ScriptedRCBanHist.acc[lit#8];
        goto RegionId(5);
    }
    // RegionId(2)
    else
    {
        fn_call#9 = ScriptedRCBanWindowTabSelect.getselectedtext();
        lit#10 = "Global PC ban";
        lit#11 = "Computer ban";
        // RegionId(3)
        if (fn_call#9 in {lit#11, lit#10}) 
        {
            lit#12 = 1;
            temp.acc = ScriptedRCBanHist.acc[lit#12];
            lit#13 = "getbanhistory";
            lit#14 = "lister";
            fn_call#16 = sendtext#15(lit#14, lit#13, temp.acc);
            fn_call#20 = this.accountbaninfo.destroy();
            fn_call#22 = this.pcbaninfo.destroy();
            fn_call#24 = ScriptedRCBanWindow.destroy();
            lit#25 = 0;
            return lit#25;
        }
        // RegionId(4)
        else
        {
            lit#26 = 0;
            return lit#26;
        }
    }
}