64 lines
1.8 KiB
C
64 lines
1.8 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x140010e40 FUN_140010e40
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_140010e40(longlong param_1)
|
|
|
|
{
|
|
longlong lVar1;
|
|
undefined8 *puVar2;
|
|
char *local_res8;
|
|
undefined **local_88 [5];
|
|
undefined8 uStack_60;
|
|
undefined8 local_58;
|
|
undefined8 uStack_50;
|
|
undefined8 local_48;
|
|
undefined8 uStack_40;
|
|
undefined8 local_38;
|
|
undefined8 uStack_30;
|
|
undefined8 local_28;
|
|
undefined8 uStack_20;
|
|
undefined8 local_18;
|
|
|
|
lVar1 = *(longlong *)(param_1 + 8);
|
|
if (lVar1 != 0) {
|
|
if (0xf < *(ulonglong *)(lVar1 + 0x48)) {
|
|
operator_delete(*(void **)(lVar1 + 0x30));
|
|
}
|
|
*(undefined8 *)(lVar1 + 0x48) = 0xf;
|
|
*(undefined8 *)(lVar1 + 0x40) = 0;
|
|
*(undefined1 *)(lVar1 + 0x30) = 0;
|
|
if (0xf < *(ulonglong *)(lVar1 + 0x20)) {
|
|
operator_delete(*(void **)(lVar1 + 8));
|
|
}
|
|
*(undefined8 *)(lVar1 + 0x20) = 0xf;
|
|
*(undefined8 *)(lVar1 + 0x18) = 0;
|
|
*(undefined1 *)(lVar1 + 8) = 0;
|
|
*(undefined1 *)(param_1 + 0x11) = 0;
|
|
return;
|
|
}
|
|
*(undefined2 *)(param_1 + 0x10) = 0;
|
|
puVar2 = operator_new(0x58);
|
|
if (puVar2 != (undefined8 *)0x0) {
|
|
*(undefined8 **)(param_1 + 8) = puVar2;
|
|
*puVar2 = 0;
|
|
puVar2[1] = uStack_60;
|
|
puVar2[2] = local_58;
|
|
puVar2[3] = uStack_50;
|
|
puVar2[4] = local_48;
|
|
puVar2[5] = uStack_40;
|
|
puVar2[6] = local_38;
|
|
puVar2[7] = uStack_30;
|
|
puVar2[8] = local_28;
|
|
puVar2[9] = uStack_20;
|
|
puVar2[10] = local_18;
|
|
*(undefined1 *)(param_1 + 0x10) = 1;
|
|
return;
|
|
}
|
|
local_res8 = (char *)0x0;
|
|
std::exception::exception((exception *)local_88,&local_res8);
|
|
local_88[0] = std::bad_alloc::vftable;
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_88,(ThrowInfo *)&DAT_14016c158);
|
|
}
|
|
|