/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x14010d390 FUN_14010d390 * Pseudocode, not original source. */ ulonglong FUN_14010d390(uint *param_1,uint *param_2,undefined4 *param_3) { int iVar1; uint uVar2; uint uVar3; int iVar4; ulonglong uVar5; undefined8 uVar6; ulonglong uVar7; uint local_68 [6]; uint local_50 [6]; uint local_38 [8]; *param_3 = 0; iVar1 = FUN_140103a10((int *)param_2,1); if (iVar1 != 1) { return 0xfffffffd; } uVar5 = FUN_140109cc0(local_50,param_1); if ((int)uVar5 != 0) { return uVar5; } uVar5 = FUN_140104110((int *)local_50,1,(int *)local_50); uVar7 = uVar5 & 0xffffffff; if ((int)uVar5 != 0) goto LAB_14010d522; uVar2 = FUN_140109cc0(local_38,local_50); uVar7 = (ulonglong)uVar2; if (uVar2 != 0) goto LAB_14010d522; uVar2 = FUN_140103a70((int *)local_38); uVar5 = FUN_140109cf0(local_38,uVar2,local_38,(undefined8 *)0x0); uVar7 = uVar5 & 0xffffffff; if ((int)uVar5 == 0) { uVar5 = FUN_140103790(local_68); uVar7 = uVar5 & 0xffffffff; if ((int)uVar5 == 0) { uVar3 = FUN_1401050a0(param_2,local_38,param_1,(undefined8 *)local_68); uVar7 = (ulonglong)uVar3; if (uVar3 == 0) { iVar1 = FUN_140103a10((int *)local_68,1); if ((iVar1 != 0) && (uVar6 = FUN_1401039e0((int *)local_68,(int *)local_50), (int)uVar6 != 0)) { iVar1 = 1; if (0 < (int)(uVar2 - 1)) { do { uVar6 = FUN_1401039e0((int *)local_68,(int *)local_50); if ((int)uVar6 == 0) break; uVar5 = FUN_140104d60(local_68,param_1,local_68); uVar7 = uVar5 & 0xffffffff; if (((int)uVar5 != 0) || (iVar4 = FUN_140103a10((int *)local_68,1), iVar4 == 0)) goto LAB_14010d508; iVar1 = iVar1 + 1; } while (iVar1 <= (int)(uVar2 - 1)); } uVar6 = FUN_1401039e0((int *)local_68,(int *)local_50); if ((int)uVar6 != 0) goto LAB_14010d508; } *param_3 = 1; } LAB_14010d508: FUN_1401037f0((int *)local_68); } } FUN_1401037f0((int *)local_38); LAB_14010d522: FUN_1401037f0((int *)local_50); return uVar7; }