46 lines
1.8 KiB
C
46 lines
1.8 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x14003df70 FUN_14003df70
|
|
* Pseudocode, not original source. */
|
|
|
|
undefined8 *
|
|
FUN_14003df70(undefined8 *param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
|
|
|
|
{
|
|
HMODULE hModule;
|
|
FARPROC pFVar1;
|
|
exception local_58 [80];
|
|
|
|
hModule = LoadLibraryA("kernel32.dll");
|
|
param_1[0xc] = hModule;
|
|
if (hModule == (HMODULE)0x0) {
|
|
FUN_14003db10(local_58,L"Cannot find kernel32.dll handle!",param_3,param_4);
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_58,(ThrowInfo *)&DAT_14016c210);
|
|
}
|
|
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;
|
|
}
|
|
|