/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x14020f230 FUN_14020f230 * Pseudocode, not original source. */ ulonglong FUN_14020f230(undefined8 param_1,uint *param_2,undefined8 param_3) { uint uVar1; int iVar2; uint uVar3; ulonglong uVar4; undefined1 local_28 [32]; uVar3 = *param_2; uVar4 = FUN_1402091f0(local_28,param_1); if ((int)uVar4 != 0) { return uVar4; } FUN_14020aec0(local_28,uVar3 - 1); if (uVar3 < 0x8000001) { uVar1 = FUN_140210990(local_28,param_3,local_28,uVar3); } else { uVar1 = FUN_1402018b0(); } uVar4 = (ulonglong)uVar1; if (uVar1 == 0) { FUN_14020aec0(local_28,uVar3 + 1); uVar1 = FUN_14020ed30(param_1,(uVar3 + 1) * 0x1c,param_1); uVar4 = (ulonglong)uVar1; if (uVar1 == 0) { uVar1 = FUN_1402095d0(local_28,param_2,local_28,uVar3 + 1); uVar4 = (ulonglong)uVar1; if (uVar1 == 0) { uVar1 = FUN_1402016f0(param_1,local_28,param_1); uVar4 = (ulonglong)uVar1; if (uVar1 == 0) { iVar2 = FUN_140201070(param_1,0); if (iVar2 == -1) { FUN_14020b9f0(local_28,1); uVar3 = FUN_14020af40(local_28,uVar3 + 1); uVar4 = (ulonglong)uVar3; if (uVar3 != 0) goto LAB_14020f389; uVar3 = FUN_140201530(param_1,local_28,param_1); uVar4 = (ulonglong)uVar3; if (uVar3 != 0) goto LAB_14020f389; } iVar2 = FUN_140201040(param_1,param_2); while (iVar2 != -1) { uVar3 = FUN_1402093a0(param_1,param_2,param_1); uVar4 = (ulonglong)uVar3; if (uVar3 != 0) break; iVar2 = FUN_140201040(param_1,param_2); } } } } } LAB_14020f389: FUN_140200e50(local_28); return uVar4; }