Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

Backtrace

{
  "frames": []
}

Context

{
  "current_block_id": {
    "index": 21,
    "address": 2607,
    "block_type": "Normal"
  },
  "current_ast_node_stack": [],
  "current_instruction": {
    "opcode": "Ret",
    "operand": null,
    "address": 2608
  }
}
function printDisconnectError(reason#3, error#2, doclosebutton#1, doreconnectbutton#0)
{
    lit#6 = "";
    // RegionId(0)
    // RegionId(1)
    if (reason#3 != lit#6) 
    {
        temp.msg = reason#3;
    }
    // RegionId(2)
    else
    {
        lit#7 = 2;
        // RegionId(2)
        // RegionId(3)
        if (error#2 == lit#7) 
        {
            lit#8 = "The game server could not be reached.";
            temp.msg = lit#8;
        }
        // RegionId(4)
        else
        {
            lit#9 = "You have been disconnected from the game server.";
            builtin_fn_call#10 = _(lit#9);
            temp.msg = builtin_fn_call#10;
        }
    }
    fn_call#12 = echo#11(temp.msg);
    // RegionId(0)
    // RegionId(6)
    if (doreconnectbutton#0) 
    {
        fn_call#14 = getplatform#13();
        lit#15 = "flash";
        // RegionId(7)
        if (fn_call#14 == lit#15) 
        {
            lit#16 = "javascript:onCannotConnect(\"";
            lit#17 = "\");";
            fn_call#19 = openurl#18((lit#16 @ temp.msg) @ lit#17);
            lit#20 = 0;
            return lit#20;
        }
    }
    // RegionId(8)
    // RegionId(9)
    if (doclosebutton#1) 
    {
        lit#23 = "close";
    }
    // RegionId(10)
    else
    {
        // RegionId(10)
        // RegionId(11)
        if (doreconnectbutton#0) 
        {
            lit#24 = "relogin";
        }
        // RegionId(12)
        else
        {
            lit#25 = "";
        }
    }
    phi<idx=1, regions=()> = phi<idx=0, regions=()>;
    // RegionId(13)
    // RegionId(14)
    if (doclose#27) 
    {
        lit#28 = "Close";
    }
    // RegionId(15)
    else
    {
        // RegionId(15)
        // RegionId(16)
        if (doreconnectbutton#0) 
        {
            lit#29 = "Reconnect";
        }
        // RegionId(17)
        else
        {
            lit#30 = "OK";
            builtin_fn_call#31 = _(lit#30);
        }
    }
    phi<idx=1, regions=()> = phi<idx=0, regions=()>;
    fn_call#32 = getplatform#13();
    lit#33 = "iphone";
    // RegionId(18)
    // RegionId(19)
    if (fn_call#32 == lit#33) 
    {
        lit#34 = "";
        lit#35 = "";
        lit#36 = "Connection Error";
        fn_call#38 = showAppleMessageBox#37(lit#36, temp.msg, lit#35, temp.buttontext, lit#34);
    }
    // RegionId(20)
    else
    {
        MessageBoxDialog_Text.text = temp.msg;
        MessageBoxDialog_Button.text = temp.buttontext;
        fn_call#44 = pushDialog#43(MessageBoxDialog#42);
        lit#46 = false;
        loadingscreenenabled#47 = lit#46;
    }
    lit#48 = 0;
    return lit#48;
}