/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400ebe10 FUN_1400ebe10 * Pseudocode, not original source. */ void FUN_1400ebe10(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_1401b7760; local_14 = DAT_1401b7764; if (DAT_1401b7750 == (undefined8 *)0x0) { iVar4 = 0; puVar3 = (undefined8 *)PTR_DAT_1401ac008; } else { puVar3 = DAT_1401b7750; if (DAT_1401b7750 == (undefined8 *)PTR_DAT_1401ac008) { iVar4 = 0; } else { iVar4 = *(int *)(DAT_1401b7750 + -1); } } if (*(longlong **)(param_2 + 0x10) == (longlong *)0x0) { lVar2 = 0; } else { lVar2 = **(longlong **)(param_2 + 0x10); } uVar1 = FUN_140073e00(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_14006e8a0((longlong *)(param_2 + 0x10),local_res10); *(undefined4 *)(param_2 + 0x18) = 3; } return; }