server-re/decomp/MessageServer_Release_x64/full/functions/0x1400adc50.c

62 lines
1.8 KiB
C

/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
* Ghidra 12.1.2 decompiler output for 0x1400adc50 FUN_1400adc50
* Pseudocode, not original source. */
longlong * FUN_1400adc50(longlong param_1,longlong *param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
int *piVar2;
longlong *plVar3;
longlong *plVar4;
undefined8 *puVar5;
wchar_t *pwVar6;
undefined8 uVar7;
undefined8 uVar8;
undefined *local_res18 [2];
undefined8 local_58;
undefined8 local_50;
undefined8 local_48;
undefined8 local_40;
undefined8 local_38;
undefined8 local_30;
undefined4 local_28;
undefined1 local_24;
undefined4 local_20;
local_24 = 0;
local_28 = 0;
local_20 = 0;
local_58 = 0;
local_50 = 0;
local_30 = 0;
local_38 = 0;
local_40 = 0;
local_48 = 0;
plVar4 = (longlong *)(param_1 + 0x70);
puVar5 = &local_58;
plVar3 = plVar4;
(**(code **)(*plVar4 + 0xc0))();
FUN_14006cb70(plVar3,puVar5,param_3,param_4);
*param_2 = (longlong)PTR_DAT_1401ac010;
(**(code **)(*plVar4 + 0xb0))(plVar4,local_res18);
pwVar6 = L"TotalSend=%I64d TotalRecv=%I64d PeerCount=%d/%d NAT Name=%s";
plVar4 = param_2;
uVar7 = local_40;
uVar8 = local_30;
FUN_140053d20(param_2,L"TotalSend=%I64d TotalRecv=%I64d PeerCount=%d/%d NAT Name=%s",local_40,
local_30);
if (((local_res18[0] != (undefined *)0x0) && (local_res18[0] != PTR_DAT_1401ac010)) &&
(local_res18[0] + -8 != (undefined *)0x0)) {
piVar2 = (int *)FUN_14006cb70(plVar4,pwVar6,uVar7,uVar8);
FUN_14006b350(piVar2);
piVar1 = (int *)(local_res18[0] + -4);
*piVar1 = *piVar1 + -1;
if (*piVar1 == 0) {
FUN_14006cc60(local_res18[0] + -8);
}
FUN_14006b3e0((longlong)piVar2);
}
return param_2;
}