79 lines
2.7 KiB
C
79 lines
2.7 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x14002a830 FUN_14002a830
|
|
* Pseudocode, not original source. */
|
|
|
|
undefined1
|
|
FUN_14002a830(longlong *param_1,undefined8 param_2,SIZE_T param_3,undefined8 param_4,
|
|
longlong *param_5)
|
|
|
|
{
|
|
undefined1 uVar1;
|
|
undefined8 uVar2;
|
|
ulonglong *puVar3;
|
|
uint *puVar4;
|
|
ulonglong *puVar5;
|
|
undefined8 uVar6;
|
|
ulonglong uVar7;
|
|
undefined4 local_40 [2];
|
|
longlong local_38;
|
|
longlong local_30;
|
|
int local_24;
|
|
|
|
uVar7 = param_3 & 0xffffffff;
|
|
uVar2 = param_2;
|
|
uVar6 = param_4;
|
|
FUN_140074fb0(local_40);
|
|
FUN_140074a40((longlong)local_40,uVar2,param_3,uVar6);
|
|
FUN_14002a2d0((longlong)local_40,0x86c6,param_3,uVar6);
|
|
FUN_140029e60((longlong)local_40,(param_5[1] - *param_5) / 0xa0,param_3,uVar6);
|
|
puVar4 = (uint *)*param_5;
|
|
if (puVar4 != (uint *)param_5[1]) {
|
|
puVar5 = (ulonglong *)(puVar4 + 0x1a);
|
|
do {
|
|
FUN_140029e60((longlong)local_40,(ulonglong)*puVar4,param_3,uVar6);
|
|
FUN_140029e60((longlong)local_40,(ulonglong)*(uint *)((longlong)puVar5 + -100),param_3,uVar6);
|
|
FUN_140029e60((longlong)local_40,(ulonglong)(uint)puVar5[-0xc],param_3,uVar6);
|
|
FUN_140029d80((longlong)local_40,(ulonglong)*(byte *)((longlong)puVar5 + -0x5c),param_3,uVar6)
|
|
;
|
|
FUN_140029e60((longlong)local_40,(ulonglong)(uint)puVar5[-0xb],param_3,uVar6);
|
|
FUN_140029e60((longlong)local_40,(ulonglong)*(uint *)((longlong)puVar5 + -0x54),param_3,uVar6)
|
|
;
|
|
FUN_140029e60((longlong)local_40,(ulonglong)(uint)puVar5[-10],param_3,uVar6);
|
|
FUN_140029e60((longlong)local_40,(ulonglong)*(uint *)((longlong)puVar5 + -0x4c),param_3,uVar6)
|
|
;
|
|
FUN_140029d80((longlong)local_40,(ulonglong)(byte)puVar5[-9],param_3,uVar6);
|
|
if (puVar5[-5] < 8) {
|
|
puVar3 = puVar5 + -8;
|
|
}
|
|
else {
|
|
puVar3 = (ulonglong *)puVar5[-8];
|
|
}
|
|
FUN_1400767c0((longlong)local_40,(short *)puVar3);
|
|
if (*puVar5 < 8) {
|
|
puVar3 = puVar5 + -3;
|
|
}
|
|
else {
|
|
puVar3 = (ulonglong *)puVar5[-3];
|
|
}
|
|
FUN_1400767c0((longlong)local_40,(short *)puVar3);
|
|
if (puVar5[5] < 8) {
|
|
puVar3 = puVar5 + 2;
|
|
}
|
|
else {
|
|
puVar3 = (ulonglong *)puVar5[2];
|
|
}
|
|
FUN_1400767c0((longlong)local_40,(short *)puVar3);
|
|
puVar4 = puVar4 + 0x28;
|
|
puVar5 = puVar5 + 0x14;
|
|
} while (puVar4 != (uint *)param_5[1]);
|
|
}
|
|
uVar1 = (**(code **)(*param_1 + 0x18))
|
|
(param_1,param_2,uVar7,param_4,local_40,L"RESP_SERVER_OPTION",0x86c6);
|
|
FUN_14008a320(&local_38);
|
|
if ((local_30 != 0) && (local_24 < 0)) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14003dec0();
|
|
}
|
|
return uVar1;
|
|
}
|
|
|