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

52 lines
1.3 KiB
C

/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
* Ghidra 12.1.2 decompiler output for 0x1400af3b0 FUN_1400af3b0
* Pseudocode, not original source. */
void FUN_1400af3b0(undefined8 param_1,longlong param_2)
{
uint uVar1;
longlong lVar2;
undefined8 *puVar3;
int iVar4;
longlong local_res10 [3];
undefined **local_20;
undefined4 local_18;
undefined2 local_14;
*(undefined1 *)(param_2 + 0x80) = 1;
local_20 = Proud::AddrPort::vftable;
local_18 = DAT_14015f460;
local_14 = DAT_14015f464;
if (DAT_14015f450 == (undefined8 *)0x0) {
iVar4 = 0;
puVar3 = (undefined8 *)PTR_DAT_140155008;
}
else {
puVar3 = DAT_14015f450;
if (DAT_14015f450 == (undefined8 *)PTR_DAT_140155008) {
iVar4 = 0;
}
else {
iVar4 = *(int *)(DAT_14015f450 + -1);
}
}
if (*(longlong **)(param_2 + 0x10) == (longlong *)0x0) {
lVar2 = 0;
}
else {
lVar2 = **(longlong **)(param_2 + 0x10);
}
uVar1 = FUN_1400372d0(lVar2,puVar3,(undefined **)(ulonglong)(iVar4 + 1),(longlong)&local_20);
if ((uVar1 == 0) || (uVar1 == 0x3e5)) {
*(undefined4 *)(param_2 + 0x18) = 1;
}
else {
*(undefined1 *)(param_2 + 0x80) = 0;
local_res10[0] = 0;
FUN_140031f40((longlong *)(param_2 + 0x10),local_res10);
*(undefined4 *)(param_2 + 0x18) = 3;
}
return;
}