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

59 lines
1.7 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400d74b0 FUN_1400d74b0
* Pseudocode, not original source. */
void FUN_1400d74b0(uint *param_1,uint *param_2,uint *param_3,undefined8 *param_4)
{
bool bVar1;
int iVar2;
undefined8 uVar3;
ulonglong uVar4;
undefined7 extraout_var;
uint local_38 [6];
uint local_20 [6];
if (param_3[2] != 1) {
if (param_2[2] == 1) {
uVar3 = FUN_1400d5ba0(local_38);
if ((int)uVar3 == 0) {
uVar4 = FUN_1400d71e0(param_1,param_3,(undefined8 *)local_38);
if (((int)uVar4 == 0) && (uVar3 = FUN_1400d5ba0(local_20), (int)uVar3 == 0)) {
uVar3 = FUN_1400dfe30(param_2,local_20);
if ((int)uVar3 == 0) {
FUN_1400d74b0(local_38,local_20,param_3,param_4);
FUN_1400dfe60((int *)local_38);
}
else {
FUN_1400dfe60((int *)local_38);
}
}
else {
FUN_1400d5c00((int *)local_38);
}
}
}
else {
bVar1 = FUN_1400e1620(param_3);
if ((int)CONCAT71(extraout_var,bVar1) == 1) {
iVar2 = 1;
}
else {
uVar3 = FUN_1400e1060((int *)param_3);
iVar2 = (int)uVar3;
if (iVar2 == 0) {
uVar3 = FUN_1400e0ff0((int *)param_3);
iVar2 = (int)uVar3 * 2;
}
if (((0 < (int)*param_3) && ((**(byte **)(param_3 + 4) & 1) != 0)) || (iVar2 != 0)) {
FUN_1400e0a30(param_1,(int *)param_2,param_3,param_4,iVar2);
return;
}
iVar2 = 0;
}
FUN_1400e10a0(param_1,(int *)param_2,param_3,param_4,iVar2);
}
}
return;
}