server-re/decomp/AgentManager_Release_x64/full/functions/0x14007a390.c
2026-10-15 09:58:24 -04:00

62 lines
2 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x14007a390 FUN_14007a390
* Pseudocode, not original source. */
void FUN_14007a390(longlong param_1,uint *param_2,longlong param_3,undefined8 param_4)
{
int *piVar1;
undefined8 uVar2;
int *piVar3;
longlong lVar4;
longlong lVar5;
longlong lVar6;
undefined8 local_res18;
longlong local_res20;
undefined **local_50;
undefined4 local_48;
undefined2 local_44;
int *local_40;
undefined1 local_38;
int *local_30;
undefined1 local_28;
if ((param_3 != 0) && (uVar2 = FUN_140074ee0(param_2,&local_res18,8), (char)uVar2 != '\0')) {
piVar3 = (int *)(**(code **)(**(longlong **)(param_1 + 0x148) + 0x58))();
local_40 = piVar3;
FUN_14003d040(piVar3);
local_38 = 1;
if (DAT_14017614f != '\0') {
(**(code **)(**(longlong **)(param_1 + 0x148) + 200))
(*(longlong **)(param_1 + 0x148),
L"Proud::CNetThreads_S::NetWorkerThread_ProcessMessage_ReplyReceiveSpeedAtReceiverSide_NoBypass"
);
}
lVar6 = 0;
if ((*(longlong **)(param_3 + 0x740) == (longlong *)0x0) ||
(lVar4 = **(longlong **)(param_3 + 0x740), lVar5 = lVar4 + 0x40, lVar4 == 0)) {
lVar5 = lVar6;
}
FUN_140091260(&local_res20,lVar5);
lVar4 = lVar6;
if (*(longlong **)(param_3 + 0x740) != (longlong *)0x0) {
lVar4 = **(longlong **)(param_3 + 0x740);
}
piVar1 = (int *)(lVar4 + 0xa8);
local_30 = piVar1;
FUN_14003d040(piVar1);
local_28 = 1;
local_50 = Proud::AddrPort::vftable;
local_48 = *(undefined4 *)(param_3 + 0x710);
local_44 = *(undefined2 *)(param_3 + 0x714);
if (*(longlong **)(param_3 + 0x740) != (longlong *)0x0) {
lVar6 = **(longlong **)(param_3 + 0x740);
}
FUN_14008ca90(*(longlong *)(lVar6 + 0x168),(longlong)&local_50,local_res18);
FUN_14003d0d0((longlong)piVar1);
FUN_140091270(&local_res20);
FUN_14003d0d0((longlong)piVar3);
}
return;
}