38 lines
1.2 KiB
C
38 lines
1.2 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x14007dda0 FUN_14007dda0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14007dda0(longlong param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
|
|
|
|
{
|
|
longlong *plVar1;
|
|
longlong lVar2;
|
|
int *piVar3;
|
|
longlong lVar4;
|
|
undefined8 uVar5;
|
|
|
|
plVar1 = (longlong *)(param_1 + -0xa8);
|
|
piVar3 = (int *)(**(code **)(*plVar1 + 0x58))(plVar1);
|
|
FUN_14006b350(piVar3);
|
|
if (DAT_1401b42cf != '\0') {
|
|
(**(code **)(*plVar1 + 200))(plVar1,L"Proud::CNetServerImpl::CloseEveryConnection");
|
|
}
|
|
if (*(longlong *)(param_1 + 0xbf0) == 0) {
|
|
lVar4 = 0;
|
|
}
|
|
else {
|
|
lVar4 = *(longlong *)(param_1 + 0xbe0);
|
|
}
|
|
for (; lVar4 != 0; lVar4 = *(longlong *)(lVar4 + 0x10)) {
|
|
lVar2 = *(longlong *)(lVar4 + 8);
|
|
if ((*(longlong *)(lVar2 + 0x228) == 0) && (*(double *)(lVar2 + 0x758) == 0.0)) {
|
|
uVar5 = (**(code **)(*(longlong *)(param_1 + 0x70) + 8))();
|
|
*(undefined8 *)(lVar2 + 0x758) = uVar5;
|
|
(**(code **)(*(longlong *)(param_1 + 0x400) + 0x100))
|
|
((longlong *)(param_1 + 0x400),*(undefined4 *)(lVar2 + 0x6f8),&DAT_1401b6110);
|
|
}
|
|
}
|
|
FUN_14006b3e0((longlong)piVar3);
|
|
return;
|
|
}
|
|
|