/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x140078c10 FUN_140078c10 * Pseudocode, not original source. */ longlong * FUN_140078c10(longlong *param_1,undefined8 param_2,SIZE_T param_3,longlong *param_4,longlong param_5 ) { int iVar1; undefined8 *puVar2; undefined8 *puVar3; undefined8 uVar4; undefined8 *puVar5; SIZE_T SVar6; longlong *plVar7; puVar5 = (undefined8 *)0x0; uVar4 = param_2; SVar6 = param_3; plVar7 = param_4; puVar2 = (undefined8 *)FUN_14006cbf0(0x60); puVar3 = puVar5; if (puVar2 != (undefined8 *)0x0) { puVar3 = FUN_1400789e0(puVar2,uVar4,SVar6,plVar7); } FUN_1400641d0(param_1,(longlong)puVar3,SVar6,plVar7); puVar3 = puVar5; if (*param_1 != 0) { puVar3 = *(undefined8 **)(*param_1 + 0x38); } *(int *)puVar3 = (int)param_2; puVar3 = puVar5; if (*param_1 != 0) { puVar3 = *(undefined8 **)(*param_1 + 0x38); } *(int *)((longlong)puVar3 + 0xc) = (int)param_3; puVar3 = puVar5; if (*param_1 != 0) { puVar3 = *(undefined8 **)(*param_1 + 0x38); } FUN_140003110(puVar3 + 2,param_4,SVar6,plVar7); puVar3 = puVar5; if (*param_1 != 0) { puVar3 = *(undefined8 **)(*param_1 + 0x38); } iVar1 = *(int *)(param_5 + 0x18); if (-1 < iVar1) { FUN_1400146f0((longlong)(puVar3 + 5),iVar1,SVar6); puVar2 = puVar5; if (*(int *)(param_5 + 0x18) != 0) { puVar2 = *(undefined8 **)(param_5 + 0x10); } if (*(int *)(puVar3 + 8) != 0) { puVar5 = (undefined8 *)puVar3[7]; } FUN_140006500(puVar5,puVar2,(longlong)iVar1); return param_1; } /* WARNING: Subroutine does not return */ FUN_14006be00(); }