/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x14020c8c0 FUN_14020c8c0 * Pseudocode, not original source. */ ulonglong FUN_14020c8c0(undefined8 param_1,undefined8 param_2,undefined4 *param_3) { int iVar1; uint uVar2; int iVar3; int iVar4; ulonglong uVar5; undefined1 local_68 [24]; undefined1 local_50 [24]; undefined1 local_38 [32]; *param_3 = 0; iVar1 = FUN_140201070(param_2,1); if (iVar1 != 1) { return 0xfffffffd; } uVar5 = FUN_1402091f0(local_50,param_1); if ((int)uVar5 != 0) { return uVar5; } uVar2 = FUN_140201770(local_50,1,local_50); uVar5 = (ulonglong)uVar2; if (uVar2 != 0) goto LAB_14020ca52; uVar2 = FUN_1402091f0(local_38,local_50); uVar5 = (ulonglong)uVar2; if (uVar2 != 0) goto LAB_14020ca52; iVar1 = FUN_1402010d0(local_38); uVar2 = FUN_140209220(local_38,iVar1,local_38,0); uVar5 = (ulonglong)uVar2; if (uVar2 == 0) { uVar2 = FUN_140200df0(local_68); uVar5 = (ulonglong)uVar2; if (uVar2 == 0) { uVar2 = FUN_140202700(param_2,local_38,param_1,local_68); uVar5 = (ulonglong)uVar2; if (uVar2 == 0) { iVar3 = FUN_140201070(local_68,1); if ((iVar3 != 0) && (iVar3 = FUN_140201040(local_68,local_50), iVar3 != 0)) { iVar3 = 1; if (0 < iVar1 + -1) { do { iVar4 = FUN_140201040(local_68,local_50); if (iVar4 == 0) break; uVar2 = FUN_1402023c0(local_68,param_1,local_68); uVar5 = (ulonglong)uVar2; if ((uVar2 != 0) || (iVar4 = FUN_140201070(local_68,1), iVar4 == 0)) goto LAB_14020ca38; iVar3 = iVar3 + 1; } while (iVar3 <= iVar1 + -1); } iVar1 = FUN_140201040(local_68,local_50); if (iVar1 != 0) goto LAB_14020ca38; } *param_3 = 1; } LAB_14020ca38: FUN_140200e50(local_68); } } FUN_140200e50(local_38); LAB_14020ca52: FUN_140200e50(local_50); return uVar5; }