server-re/decomp/Agent_Release_x64/full/functions/0x1400b6d90.c
2026-10-14 16:45:19 -04:00

53 lines
1.9 KiB
C

/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
* Ghidra 12.1.2 decompiler output for 0x1400b6d90 FUN_1400b6d90
* Pseudocode, not original source. */
void FUN_1400b6d90(longlong param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
{
longlong *plVar1;
longlong *plVar2;
char cVar3;
uint uVar4;
undefined8 uVar5;
longlong lVar6;
longlong lVar7;
double dVar8;
undefined **local_18;
undefined4 local_10;
undefined2 local_c;
(**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x118) + 0x78) + 0x10))
(*(longlong *)(param_1 + 0x118) + 0x78);
if ((*(double *)(param_1 + 0x148) == 0.0) && (*(char *)(param_1 + 0x80) == '\0')) {
lVar7 = 0;
lVar6 = lVar7;
if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) {
lVar6 = **(longlong **)(param_1 + 0x100);
}
cVar3 = FUN_140035730(lVar6);
if (cVar3 == '\0') {
plVar1 = *(longlong **)(param_1 + 0x110);
plVar2 = *(longlong **)(param_1 + 0x108);
dVar8 = (double)(**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x118) + 0x70) + 0x1c0))
(*(longlong *)(param_1 + 0x118) + 0x70);
uVar5 = FUN_140099370(plVar2,plVar1,dVar8,param_4);
if (((char)uVar5 != '\0') && (0 < *(longlong *)(*(longlong *)(param_1 + 0x110) + 8))) {
plVar1 = *(longlong **)(param_1 + 0x110);
*(undefined1 *)(param_1 + 0x80) = 1;
local_18 = Proud::AddrPort::vftable;
local_10 = (undefined4)plVar1[0xd5];
local_c = *(undefined2 *)((longlong)plVar1 + 0x6ac);
if (*(longlong **)(param_1 + 0x100) != (longlong *)0x0) {
lVar7 = **(longlong **)(param_1 + 0x100);
}
uVar4 = FUN_140037090(lVar7,plVar1,(longlong)&local_18,(ulonglong)*(uint *)(plVar1 + 0xd6));
if (uVar4 != 0) {
*(undefined1 *)(param_1 + 0x80) = 0;
}
}
}
}
return;
}