server-re/decomp/AgentManager_Release_x64/full/functions/0x1400c7db0.c
2026-10-15 09:58:24 -04:00

53 lines
1.8 KiB
C

/* 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;
}