/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x14016eef0 FUN_14016eef0 * Pseudocode, not original source. */ undefined8 * FUN_14016eef0(undefined8 *param_1) { HMODULE hModule; FARPROC pFVar1; undefined1 local_58 [80]; hModule = LoadLibraryA("kernel32.dll"); param_1[0xc] = hModule; if (hModule == (HMODULE)0x0) { FUN_14016d300(local_58,L"Cannot find kernel32.dll handle!"); /* WARNING: Subroutine does not return */ _CxxThrowException(local_58,(ThrowInfo *)&DAT_1403417f8); } pFVar1 = GetProcAddress(hModule,"CreateIoCompletionPort"); *param_1 = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"HeapSetInformation"); param_1[1] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"QueueUserWorkItem"); param_1[2] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"GetQueuedCompletionStatus"); param_1[3] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"GetQueuedCompletionStatusEx"); param_1[4] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"AddVectoredExceptionHandler"); param_1[5] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"CreateTimerQueue"); param_1[6] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"CreateTimerQueueTimer"); param_1[7] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"DeleteTimerQueueTimer"); param_1[8] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"DeleteTimerQueueEx"); param_1[9] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"InitializeCriticalSectionEx"); param_1[10] = pFVar1; pFVar1 = GetProcAddress((HMODULE)param_1[0xc],"GetLogicalProcessorInformation"); param_1[0xb] = pFVar1; return param_1; }