Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

Backtrace

{
  "frames": []
}

Context

{
  "current_block_id": {
    "index": 0,
    "address": 171,
    "block_type": "Entry"
  },
  "current_ast_node_stack": [
    {
      "StandaloneNode": {
        "Expression": {
          "Assignable": {
            "MemberAccess": {
              "metadata": {
                "properties": {},
                "comments": []
              },
              "ptr": {
                "rhs": {
                  "Identifier": {
                    "metadata": {
                      "properties": {},
                      "comments": []
                    },
                    "ptr": {
                      "ssa_version": null,
                      "id": "foo"
                    },
                    "node_id": 29065
                  }
                },
                "lhs": {
                  "Identifier": {
                    "metadata": {
                      "properties": {},
                      "comments": []
                    },
                    "ptr": {
                      "ssa_version": null,
                      "id": "temp"
                    },
                    "node_id": 29064
                  }
                },
                "ssa_version": 2
              },
              "node_id": 29066
            }
          }
        }
      }
    },
    {
      "StandaloneNode": {
        "Expression": {
          "Literal": {
            "metadata": {
              "properties": {},
              "comments": []
            },
            "node_id": 29067,
            "ptr": {
              "String": "ropguy"
            }
          }
        }
      }
    },
    {
      "StandaloneNode": {
        "Expression": {
          "Literal": {
            "metadata": {
              "properties": {},
              "comments": []
            },
            "ptr": {
              "String": "TServerPlayer"
            },
            "node_id": 29068
          }
        }
      }
    }
  ],
  "current_instruction": {
    "opcode": "NewObject",
    "operand": null,
    "address": 181
  }
}
function regularNew()
{
    lit#2 = "ropguy";
    gbf_new_obj#3 = lit#2;
    lit#4 = "TServerPlayer";
    new_node#5 = new lit#4(gbf_new_obj#3);
    fn_call#7 = new_node.loadAccount();
    temp.foo = new_node#5;
    fn_call#10 = echo#9(temp.foo.account);
    lit#13 = "TStaticVar";
    new_node#14 = new lit#13(unknown_object#12);
    temp.var = new_node#14;
    fn_call#15 = echo#9(temp.var);
    lit#17 = "TStaticVar";
    new_node#18 = new lit#17(unknown_object#12);
    temp.var2 = new_node#18;
    fn_call#19 = echo#9(temp.var2);
    lit#20 = 0;
    return lit#20;
}