This was built to track decompiler and CFG progress.
Unimplemented Opcode: NewObject
{
"frames": []
}
{
"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": 29442
}
},
"ssa_version": 2,
"lhs": {
"Identifier": {
"metadata": {
"properties": {},
"comments": []
},
"node_id": 29441,
"ptr": {
"ssa_version": null,
"id": "temp"
}
}
}
},
"node_id": 29443
}
}
}
}
},
{
"StandaloneNode": {
"Expression": {
"Literal": {
"metadata": {
"properties": {},
"comments": []
},
"ptr": {
"String": "ropguy"
},
"node_id": 29444
}
}
}
},
{
"StandaloneNode": {
"Expression": {
"Literal": {
"metadata": {
"properties": {},
"comments": []
},
"node_id": 29445,
"ptr": {
"String": "TServerPlayer"
}
}
}
}
}
],
"current_instruction": {
"opcode": "NewObject",
"operand": null,
"address": 181
}
}
function regularNew()
{
gbf_new_obj#3 = "ropguy";
new_node#4 = new TServerPlayer(gbf_new_obj#3);
fn_call#7 = <new_node.loadAccount>#6();
<temp.foo>#8 = new_node#4;
fn_call#12 = echo#11(<temp.foo.account>#10);
new_node#16 = new TStaticVar(unknown_object#15);
<temp.var>#17 = new_node#16;
fn_call#18 = echo#11(<temp.var>#17);
new_node#21 = new TStaticVar(unknown_object#15);
<temp.var2>#22 = new_node#21;
fn_call#23 = echo#11(<temp.var2>#22);
return 0;
}
Use the mouse wheel + shift to zoom in and out, and click and drag to pan.
Use the mouse wheel + shift to zoom in and out, and click and drag to pan.
Step 1 of 1