/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401af100 FUN_1401af100 * Pseudocode, not original source. */ void FUN_1401af100(char *param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4) { char *pcVar1; int iVar2; bool bVar3; longlong lVar4; longlong lVar5; longlong lVar6; int iVar7; longlong lVar8; longlong lVar9; undefined8 uVar10; char *pcVar11; uVar10 = 0xfffffffffffffffe; if (*param_1 == '\0') { pcVar1 = param_1 + 0x30; do { pcVar11 = pcVar1; FUN_14016db50(pcVar1); if (*(int *)(param_1 + 0x80) < 100) { FUN_14016dbe0(pcVar1); bVar3 = false; lVar4 = Ordinal_23(2,1,6,param_4,uVar10,pcVar11); if (lVar4 != -1) { bVar3 = true; FUN_14016db50(pcVar1); iVar2 = *(int *)(param_1 + 0x80); if (iVar2 < 0) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } iVar7 = *(int *)(param_1 + 0x80); FUN_14016add0(param_1 + 0x68,iVar7 + 1); iVar7 = iVar7 - iVar2; if ((0 < iVar7) && (iVar7 = iVar7 + -1, lVar8 = (longlong)iVar7, -1 < iVar7)) { lVar9 = (lVar8 + iVar2) * 8 + 8; do { lVar5 = FUN_14016ab80(param_1 + 0x68); lVar6 = FUN_14016ab80(param_1 + 0x68); *(undefined8 *)(lVar6 + lVar9) = *(undefined8 *)(lVar5 + -8 + lVar9); lVar9 = lVar9 + -8; lVar8 = lVar8 + -1; } while (-1 < lVar8); } lVar8 = FUN_14016ab80(param_1 + 0x68); *(longlong *)(lVar8 + (longlong)iVar2 * 8) = lVar4; } } else { FUN_14016dbe0(pcVar1); bVar3 = false; Sleep(10); } if (bVar3) { FUN_14016dbe0(pcVar1); } } while (*param_1 == '\0'); } return; }