/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401c6130 FUN_1401c6130 * Pseudocode, not original source. */ void FUN_1401c6130(longlong param_1,longlong param_2,undefined4 param_3) { undefined8 *puVar1; undefined8 *puVar2; FUN_14016db50(); if (*(longlong *)(param_2 + 8) == 0) { puVar2 = operator_new(0x80); if (puVar2 != (undefined8 *)0x0) { *puVar2 = 0; puVar2[1] = 0; puVar2[2] = 0; *(undefined4 *)(puVar2 + 4) = 0; *(undefined1 *)(puVar2 + 8) = 0; } puVar2[3] = param_2; *(undefined4 *)((longlong)puVar2 + 0x24) = param_3; *(longlong *)(param_2 + 8) = param_1; puVar1 = (undefined8 *)(param_1 + 0x38); if (puVar2[2] != 0) { FUN_1401c5e50(puVar1,puVar2); } if (*(longlong *)(param_1 + 0x40) == 0) { *puVar1 = puVar2; } else { *(undefined8 **)(*(longlong *)(param_1 + 0x40) + 8) = puVar2; *puVar2 = *(undefined8 *)(param_1 + 0x40); } *(undefined8 **)(param_1 + 0x40) = puVar2; puVar2[2] = puVar1; *(int *)(param_1 + 0x48) = *(int *)(param_1 + 0x48) + 1; FUN_14016dbe0(param_1); return; } /* WARNING: Subroutine does not return */ FUN_14016d6b0(); }