Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

function showGralatChest(temp.g, temp.chestid)
{
    lit#6 = null;
    // RegionId(0)
    // RegionId(1)
    if (temp.g == lit#6) 
    {
        lit#7 = null;
    }
    // RegionId(3)
    if (phi<idx=0, regions=()>) 
    {
        lit#8 = 0;
        return lit#8;
    }
    // RegionId(4)
    else
    {
        // RegionId(5)
        if (temp.chestid == this.lastOpenedChest) 
        {
            lit#11 = 0;
            return lit#11;
        }
        // RegionId(6)
        else
        {
            lit#13 = 0;
            // RegionId(7)
            if (temp.chestid != player.attemptingChest[lit#13]) 
            {
                lit#14 = 0;
                return lit#14;
            }
            // RegionId(8)
            else
            {
                lit#16 = 1;
                // RegionId(9)
                if (timevar2#15 > player.attemptingChest[lit#16]) 
                {
                    lit#17 = 0;
                    return lit#17;
                }
                // RegionId(10)
                else
                {
                    lit#19 = "|";
                    builtin_fn_call#20 = temp.chestid.tokenize(lit#19);
                    temp.chest = builtin_fn_call#20;
                    lit#22 = 0;
                    temp.lvl = temp.chest[lit#22];
                    lit#24 = 1;
                    temp.x = temp.chest[lit#24];
                    lit#26 = 2;
                    temp.y = temp.chest[lit#26];
                    // RegionId(11)
                    if (temp.lvl != player.level.name) 
                    {
                        lit#29 = 0;
                        return lit#29;
                    }
                    // RegionId(12)
                    else
                    {
                        lit#30 = 0;
                        fn_call#32 = freezeplayer#31(lit#30);
                        this.lastOpenedChest = temp.chestid;
                        lit#33 = null;
                        fn_call#37 = setAni#36(client.idleani, lit#33);
                        lit#38 = 5000;
                        lit#40 = "HideGralatChest";
                        lit#41 = 1;
                        fn_call#43 = scheduleEvent#42(lit#41, lit#40, lit#38 + this.imgindex);
                        lit#44 = 1;
                        lit#45 = 5;
                        this.imgindex = (this.imgindex + lit#44) % lit#45;
                        lit#46 = 2;
                        lit#47 = 2;
                        fn_call#49 = findareanpcs#3(player.attemptingChestNPC.x, player.attemptingChestNPC.y, lit#47, lit#46);
                        lit#50 = 0;
                        for (phi<idx=0, regions=()> : phi<idx=1, regions=()>) 
                        {
                            lit#51 = 0;
                            // RegionId(14)
                            // RegionId(15)
                            if (temp.i.chestid == player.attemptingChest[lit#51]) 
                            {
                                lit#52 = "onChangeOpen";
                                fn_call#54 = temp.i.trigger(lit#52);
                            }
                            phi<idx=0, regions=()>++;
                        }
                        lit#55 = 0;
                        return lit#55;
                    }
                }
            }
        }
    }
}