/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x14007cf00 FUN_14007cf00 * Pseudocode, not original source. */ undefined8 * FUN_14007cf00(undefined8 *param_1,longlong param_2,SIZE_T param_3) { undefined4 uVar1; int iVar2; undefined8 *puVar3; undefined8 *puVar4; *param_1 = Proud::CFastArray::vftable; if (DAT_1401ac8a0 != 5) { FUN_140078250(); } puVar4 = (undefined8 *)0x0; param_1[1] = *(undefined8 *)(param_2 + 8); uVar1 = *(undefined4 *)(param_2 + 0x24); param_1[2] = 0; param_1[3] = 0; *(undefined4 *)(param_1 + 4) = 0; *(undefined4 *)((longlong)param_1 + 0x24) = uVar1; iVar2 = *(int *)(param_2 + 0x18); if (-1 < iVar2) { FUN_1400146f0((longlong)param_1,iVar2,param_3); puVar3 = puVar4; if (*(int *)(param_2 + 0x18) != 0) { puVar3 = *(undefined8 **)(param_2 + 0x10); } if (*(int *)(param_1 + 3) != 0) { puVar4 = (undefined8 *)param_1[2]; } FUN_140006500(puVar4,puVar3,(longlong)iVar2); return param_1; } /* WARNING: Subroutine does not return */ FUN_14006be00(); }