/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x14010b160 FUN_14010b160 * Pseudocode, not original source. */ undefined4 FUN_14010b160(int *param_1,uint *param_2) { undefined4 uVar1; int iVar2; undefined8 uVar3; undefined4 *puVar4; undefined4 uVar5; uint uVar6; uint uVar7; ulonglong uVar8; uint local_a8 [6]; uint local_90 [4]; undefined4 *local_80; uint local_78 [6]; uint local_60 [4]; undefined4 *local_50; uint local_48 [6]; uint local_30 [6]; uVar6 = *param_1 >> 1; uVar5 = 0xfffffffe; uVar3 = FUN_14010baa0(local_90,uVar6); if ((int)uVar3 == 0) { uVar3 = FUN_14010baa0(local_60,*param_1 - uVar6); if ((int)uVar3 == 0) { uVar3 = FUN_14010baa0(local_a8,*param_1 * 2); if ((int)uVar3 == 0) { uVar3 = FUN_14010baa0(local_30,*param_1 * 2); if ((int)uVar3 == 0) { uVar3 = FUN_14010baa0(local_48,uVar6 * 2); if ((int)uVar3 == 0) { uVar3 = FUN_14010baa0(local_78,(*param_1 - uVar6) * 2); if ((int)uVar3 == 0) { puVar4 = *(undefined4 **)(param_1 + 4); if (0 < (int)uVar6) { uVar8 = (ulonglong)uVar6; do { uVar1 = *puVar4; puVar4 = puVar4 + 1; uVar8 = uVar8 - 1; *local_80 = uVar1; local_80 = local_80 + 1; } while (uVar8 != 0); } uVar7 = uVar6; if ((int)uVar6 < *param_1) { do { uVar7 = uVar7 + 1; *local_50 = *puVar4; puVar4 = puVar4 + 1; local_50 = local_50 + 1; } while ((int)uVar7 < *param_1); } local_60[0] = *param_1 - uVar6; local_90[0] = uVar6; FUN_140109920((int *)local_90); iVar2 = FUN_1401043c0(local_90,local_48); if (iVar2 == 0) { iVar2 = FUN_1401043c0(local_60,local_78); if (iVar2 == 0) { uVar3 = FUN_140109f70(local_60,local_90,local_a8); if ((int)uVar3 == 0) { iVar2 = FUN_1401043c0(local_a8,local_a8); if (iVar2 == 0) { uVar3 = FUN_140109f70(local_48,local_78,local_30); if ((int)uVar3 == 0) { uVar3 = FUN_140109e70(local_a8,local_30,local_a8); if ((int)uVar3 == 0) { uVar3 = FUN_14010ba10((int *)local_a8,uVar6); if ((int)uVar3 == 0) { uVar3 = FUN_14010ba10((int *)local_78,uVar6 * 2); if ((int)uVar3 == 0) { iVar2 = FUN_140103ed0(local_48,local_a8,local_a8); if (iVar2 == 0) { iVar2 = FUN_140103ed0(local_a8,local_78,param_2); uVar5 = 0xfffffffe; if (iVar2 == 0) { uVar5 = 0; } } } } } } } } } } FUN_1401037f0((int *)local_78); } FUN_1401037f0((int *)local_48); } FUN_1401037f0((int *)local_30); } FUN_1401037f0((int *)local_a8); } FUN_1401037f0((int *)local_60); } FUN_1401037f0((int *)local_90); } return uVar5; }