/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400a25f0 FUN_1400a25f0 * Pseudocode, not original source. */ void FUN_1400a25f0(longlong *param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4) { int *piVar1; undefined4 *puVar2; bool bVar3; piVar1 = (int *)*param_1; if (piVar1 != (int *)0x0) { FUN_14006b350(piVar1); bVar3 = true; *(longlong *)(*param_1 + 0x40) = *(longlong *)(*param_1 + 0x40) + -1; if (*(longlong *)(*param_1 + 0x40) == 0) { FUN_14006b3e0((longlong)piVar1); bVar3 = false; puVar2 = (undefined4 *)*param_1; if (*(undefined8 **)(puVar2 + 0xe) != (undefined8 *)0x0) { param_2 = 1; (**(code **)**(undefined8 **)(puVar2 + 0xe))(); } FUN_14006b400(puVar2,param_2,param_3,param_4); FUN_14006cc60(puVar2); } if (bVar3) { FUN_14006b3e0((longlong)piVar1); } } return; }