/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186 * Ghidra 12.1.2 decompiler output for 0x1400c7db0 FUN_1400c7db0 * Pseudocode, not original source. */ void FUN_1400c7db0(longlong param_1,undefined8 param_2,undefined **param_3,uint ******param_4) { char cVar1; DWORD DVar2; HANDLE hThread; IMAGE_DOS_HEADER *pIVar3; double dVar4; DVar2 = GetCurrentThreadId(); FUN_140046070(DVar2,"PNCliWorker"); DVar2 = GetCurrentThreadId(); *(DWORD *)(param_1 + 0x284) = DVar2; if (DAT_14016f147 != '\0') { hThread = GetCurrentThread(); SetThreadPriority(hThread,1); } *(undefined1 *)(param_1 + 0x28c) = 0; cVar1 = *(char *)(param_1 + 0x80); while( true ) { if (cVar1 != '\0') { *(undefined1 *)(param_1 + 0x28c) = 1; return; } if (DAT_140176450 != '\0') break; pIVar3 = (IMAGE_DOS_HEADER *)(ulonglong)DAT_14016f074; FUN_1400c7ad0(param_1,DAT_14016f074,param_3,param_4); if (*(char *)(param_1 + 0x280) != '\0') { *(undefined1 *)(param_1 + 0x280) = 0; FUN_14003d040((int *)(param_1 + 0x88)); dVar4 = FUN_140048960((char *)(param_1 + 0x48)); *(double *)(param_1 + 0xc0) = dVar4; dVar4 = FUN_1400489c0((char *)(param_1 + 0x48)); *(double *)(param_1 + 0x100) = dVar4; *(double *)(param_1 + 0x180) = (*(double *)(param_1 + 0x100) - *(double *)(param_1 + 0x180)) * 0.3 + *(double *)(param_1 + 0x180); *(undefined1 *)(param_1 + 0x1c0) = 1; FUN_14003d0d0(param_1 + 0x88); FUN_1400c7c40(param_1,pIVar3,param_3,(undefined ***)param_4); if (*(uint ********)(param_1 + 0x2b0) != (uint *******)0x0) { FUN_1400ce6b0(*(uint ********)(param_1 + 0x2b0),(uint ****)pIVar3,param_3,param_4); } } cVar1 = *(char *)(param_1 + 0x80); } return; }