This was built to track decompiler and CFG progress.
Unimplemented Opcode: Inc
{
"frames": []
}
{
"current_block_id": {
"index": 12,
"address": 1369,
"block_type": "Normal"
},
"current_ast_node_stack": [
{
"StandaloneNode": {
"Expression": {
"Assignable": {
"Phi": {
"metadata": {
"properties": {},
"comments": []
},
"ptr": {
"region_ids": [
[
{
"index": 11
},
"Fallthrough"
]
],
"index": 0,
"ssa_version": null
},
"node_id": 244198
}
}
}
}
},
{
"StandaloneNode": {
"Expression": {
"Assignable": {
"Identifier": {
"metadata": {
"properties": {},
"comments": []
},
"node_id": 244199,
"ptr": {
"ssa_version": 46,
"id": "builtin_fn_call"
}
}
}
}
}
},
{
"StandaloneNode": {
"Expression": {
"Assignable": {
"MemberAccess": {
"metadata": {
"properties": {},
"comments": []
},
"ptr": {
"rhs": {
"Identifier": {
"metadata": {
"properties": {},
"comments": []
},
"node_id": 244201,
"ptr": {
"ssa_version": null,
"id": "i"
}
}
},
"lhs": {
"Identifier": {
"metadata": {
"properties": {},
"comments": []
},
"node_id": 244200,
"ptr": {
"ssa_version": null,
"id": "temp"
}
}
},
"ssa_version": 6
},
"node_id": 244202
}
}
}
}
}
],
"current_instruction": {
"opcode": "Inc",
"operand": null,
"address": 1382
}
}
function sendPasswordAndIDs(account#0)
{
fn_call#6 = this.client.setLoginAccount(temp.account);
lit#7 = "guest";
// RegionId(0)
// RegionId(1)
if (account#0 == lit#7)
{
lit#9 = 63;
builtin_fn_call#10 = char(lit#9);
lit#11 = 160;
builtin_fn_call#12 = char(lit#11);
lit#13 = 96;
builtin_fn_call#14 = char(lit#13);
lit#15 = 245;
builtin_fn_call#16 = char(lit#15);
lit#17 = 118;
builtin_fn_call#18 = char(lit#17);
lit#19 = 201;
builtin_fn_call#20 = char(lit#19);
lit#21 = 134;
builtin_fn_call#22 = char(lit#21);
lit#23 = 26;
builtin_fn_call#24 = char(lit#23);
temp.passcode = ((((((builtin_fn_call#10 @ builtin_fn_call#12) @ builtin_fn_call#14) @ builtin_fn_call#16) @ builtin_fn_call#18) @ builtin_fn_call#20) @ builtin_fn_call#22) @ builtin_fn_call#24;
lit#26 = "T5sd0g6J";
fn_call#28 = des_decrypt#27(lit#26, temp.passcode);
temp.password = fn_call#28;
}
// RegionId(2)
else
{
fn_call#30 = this.client.getPassword();
temp.password = fn_call#30;
}
fn_call#33 = getplatform#32();
lit#34 = "win";
// RegionId(3)
// RegionId(4)
if (fn_call#33 == lit#34)
{
lit#35 = "G3D2204D";
}
// RegionId(5)
else
{
fn_call#36 = getplatform#32();
lit#37 = "mac";
// RegionId(5)
// RegionId(6)
if (fn_call#36 == lit#37)
{
lit#38 = "G3D2304D";
}
// RegionId(7)
else
{
fn_call#39 = getplatform#32();
lit#40 = "linux";
// RegionId(7)
// RegionId(8)
if (fn_call#39 == lit#40)
{
lit#41 = "G3D2404D";
}
// RegionId(9)
else
{
lit#42 = "G3D2504D";
}
}
}
phi<idx=1, regions=()> = phi<idx=0, regions=()>;
temp.idlist = {};
fn_call#44 = getplatform#32();
builtin_fn_call#45 = temp.idlist.add(fn_call#44);
lit#46 = 0;
temp.i = lit#46;
lit#47 = 4;
while (temp.i < lit#47)
{
fn_call#49 = Adventure_getSystemID#48(temp.i);
builtin_fn_call#50 = temp.idlist.add(fn_call#49);
temp.i++;
}
fn_call#52 = get1PlusTextNetString#51(temp.account);
fn_call#53 = get1PlusTextNetString#51(temp.password);
lit#54 = 5;
fn_call#56 = this.client.sendData(lit#54, ((temp.clientversion @ fn_call#52) @ fn_call#53) @ idlist#43);
fn_call#58 = this.client.flush();
lit#60 = 37;
fn_call#61 = this.client.sendData(lit#60, $pref::Graal::language#59);
lit#62 = "DownloadControl";
fn_call#64 = isObject#63(lit#62);
// RegionId(13)
// RegionId(14)
if (fn_call#64)
{
fn_call#68 = DownloadControl.checkEnableScriptedDownloads(this.loginserver);
}
fn_call#70 = this.client.requestBaseFiles();
fn_call#71 = this.client.flush();
lit#72 = 0;
return lit#72;
}
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 23