103 lines
2.9 KiB
C
103 lines
2.9 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x1400a9ed0 FUN_1400a9ed0
|
|
* Pseudocode, not original source. */
|
|
|
|
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
|
|
|
|
void FUN_1400a9ed0(longlong param_1,uint *param_2,undefined8 param_3,undefined8 param_4)
|
|
|
|
{
|
|
longlong lVar1;
|
|
undefined8 uVar2;
|
|
int *piVar3;
|
|
undefined4 *puVar4;
|
|
SIZE_T SVar5;
|
|
double dVar6;
|
|
double dVar7;
|
|
double local_res18;
|
|
double local_res20;
|
|
undefined4 local_118 [2];
|
|
undefined8 local_110;
|
|
undefined8 local_100;
|
|
undefined8 local_f8;
|
|
undefined **local_f0;
|
|
undefined8 local_e8;
|
|
undefined8 local_e0;
|
|
undefined8 local_d8;
|
|
undefined8 local_d0;
|
|
undefined8 local_c8;
|
|
undefined8 local_c0;
|
|
undefined8 local_b8;
|
|
undefined4 local_a8;
|
|
undefined **local_a0;
|
|
undefined8 local_98;
|
|
undefined8 local_90;
|
|
undefined8 local_88;
|
|
undefined8 local_80;
|
|
undefined **local_70;
|
|
undefined4 local_68;
|
|
undefined2 local_64;
|
|
undefined **local_58;
|
|
undefined8 local_50;
|
|
undefined8 local_48;
|
|
undefined8 local_40;
|
|
undefined8 local_38;
|
|
int *local_28;
|
|
undefined1 local_20;
|
|
undefined8 local_18;
|
|
|
|
local_18 = 0xfffffffffffffffe;
|
|
uVar2 = FUN_140080600(param_2,&local_res18,8);
|
|
if ((char)uVar2 != '\0') {
|
|
SVar5 = 8;
|
|
uVar2 = FUN_140080600(param_2,&local_res20,8);
|
|
if ((char)uVar2 != '\0') {
|
|
piVar3 = (int *)(**(code **)(**(longlong **)(param_1 + 0x108) + 0x58))();
|
|
local_28 = piVar3;
|
|
FUN_14002e6e0(piVar3);
|
|
local_20 = 1;
|
|
dVar6 = FUN_14003a420((char *)(*(longlong *)(param_1 + 0x108) + 0x1620));
|
|
dVar7 = (dVar6 - local_res18) * 0.5;
|
|
*(double *)(*(longlong *)(param_1 + 0x108) + 0x500) = dVar7;
|
|
lVar1 = *(longlong *)(param_1 + 0x108);
|
|
if (*(double *)(lVar1 + 0x4f8) != 0.0) {
|
|
dVar7 = (dVar7 - *(double *)(lVar1 + 0x4f8)) * _DAT_140155108 + *(double *)(lVar1 + 0x4f8);
|
|
}
|
|
*(double *)(lVar1 + 0x4f8) = dVar7;
|
|
*(double *)(*(longlong *)(param_1 + 0x108) + 0x4f0) =
|
|
dVar6 - (local_res20 + *(double *)(*(longlong *)(param_1 + 0x108) + 0x4f8));
|
|
local_110 = 0;
|
|
local_100 = 0;
|
|
local_f8 = 0;
|
|
local_e8 = 0;
|
|
local_e0 = 0;
|
|
local_d8 = 0;
|
|
local_d0 = 0;
|
|
local_f0 = Proud::ByteArray::vftable;
|
|
local_b8 = 0;
|
|
local_c0 = 0;
|
|
local_c8 = 0;
|
|
local_98 = 0;
|
|
local_90 = 0;
|
|
local_88 = 0;
|
|
local_80 = 0;
|
|
local_a0 = Proud::ByteArray::vftable;
|
|
local_70 = Proud::AddrPort::vftable;
|
|
local_68 = 0;
|
|
local_64 = 0;
|
|
local_50 = 0;
|
|
local_48 = 0;
|
|
local_40 = 0;
|
|
local_38 = 0;
|
|
local_58 = Proud::ByteArray::vftable;
|
|
local_118[0] = 0xe;
|
|
local_a8 = 1;
|
|
puVar4 = local_118;
|
|
FUN_14007af60(*(longlong **)(param_1 + 0x108),puVar4,SVar5,param_4);
|
|
FUN_140056f10((longlong)local_118,puVar4,SVar5,param_4);
|
|
FUN_14002e770((longlong)piVar3);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|