/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400d59b0 FUN_1400d59b0 * Pseudocode, not original source. */ undefined8 * FUN_1400d59b0(undefined8 *param_1) { ulonglong uVar1; undefined8 *puVar2; undefined8 uVar3; undefined8 uVar4; undefined1 *puVar5; uVar1 = 0; *param_1 = 0; param_1[1] = 0; param_1[2] = 0; puVar5 = &LAB_1400d41a0; uVar3 = 0x38; uVar4 = 6; _eh_vector_constructor_iterator_ (param_1 + 3,0x38,6,(_func_void_void_ptr *)&LAB_1400d41a0,FUN_1400d4250); param_1[0x2e] = Proud::AddrPort::vftable; *(undefined4 *)(param_1 + 0x2f) = 0; *(undefined2 *)((longlong)param_1 + 0x17c) = 0; param_1[0x33] = Proud::CFastArray::vftable; param_1[0x34] = 0; param_1[0x35] = 0; param_1[0x36] = 0; param_1[0x37] = 0; FUN_1400f94e0(param_1 + 0x3b); param_1[0x3e] = 0; param_1[0x3f] = 0; param_1[0x3d] = 0; param_1[0x40] = 0; FUN_1400f95c0(param_1 + 0x41); param_1[0x42] = 0; param_1[0x43] = 0; puVar2 = param_1 + 9; do { if (5 < uVar1) { /* WARNING: Subroutine does not return */ FUN_14006be30(puVar2,uVar3,uVar4,puVar5); } *puVar2 = param_1; uVar1 = uVar1 + 1; puVar2 = puVar2 + 7; } while ((longlong)uVar1 < 6); param_1[0x31] = 0xffffffffffffffff; param_1[0x32] = 0; param_1[0x2d] = 0; *(undefined4 *)(param_1 + 0x2f) = DAT_1401ac3d0; *(undefined2 *)((longlong)param_1 + 0x17c) = DAT_1401ac3d4; *(undefined2 *)(param_1 + 0x30) = 0; param_1[0x38] = 0; param_1[0x39] = 0; *(undefined4 *)(param_1 + 0x3a) = 0; *(int *)((longlong)param_1 + 0x1d4) = (int)param_1; return param_1; }