/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400d1dd0 FUN_1400d1dd0 * Pseudocode, not original source. */ void FUN_1400d1dd0(longlong param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4) { int *piVar1; short *psVar2; int *piVar3; longlong *plVar4; longlong lVar5; undefined8 uVar6; short *psVar7; double dVar8; short *local_res8; if (*(longlong *)(param_1 + 0xc0) == 0) { *(undefined8 *)(param_1 + 0xc0) = param_2; plVar4 = (longlong *)(*(longlong *)(param_1 + 0x198) + 0x118); uVar6 = param_2; dVar8 = (double)(**(code **)(*plVar4 + 8))(plVar4,param_2,param_3,param_4,0xfffffffffffffffe); if ((dVar8 - *(double *)(param_1 + 0x5f0) < 0.3) && (*(longlong *)(*(longlong *)(param_1 + 0x198) + 0x17f0) != 0)) { FUN_14006cb70(plVar4,uVar6,param_3,param_4); local_res8 = (short *)PTR_DAT_1401ac010; FUN_140053d20((longlong *)&local_res8, L"**경고** 클라가 들어오자마자 바로 추방되었습니다. 의도입니까, 버그입니까?: %s" ,param_2,param_4); psVar2 = local_res8; psVar7 = local_res8; if (local_res8 == (short *)0x0) { psVar7 = (short *)PTR_DAT_1401ac010; } uVar6 = 0; lVar5 = *(longlong *)(*(longlong *)(param_1 + 0x198) + 0x17f0); FUN_1400cb700(lVar5,0,psVar7,param_4); if (((psVar2 != (short *)0x0) && (psVar2 != (short *)PTR_DAT_1401ac010)) && (psVar2 + -4 != (short *)0x0)) { piVar3 = (int *)FUN_14006cb70(lVar5,uVar6,psVar7,param_4); FUN_14006b350(piVar3); piVar1 = (int *)(psVar2 + -2); *piVar1 = *piVar1 + -1; if (*piVar1 == 0) { FUN_14006cc60(psVar2 + -4); } FUN_14006b3e0((longlong)piVar3); } } } return; }