41 lines
1.2 KiB
C
41 lines
1.2 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x14002dff0 FUN_14002dff0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14002dff0(undefined8 *param_1)
|
|
|
|
{
|
|
undefined8 *puVar1;
|
|
undefined8 *puVar2;
|
|
ulonglong uVar3;
|
|
char *local_res8;
|
|
undefined **local_40 [3];
|
|
undefined8 *local_28;
|
|
undefined8 local_20;
|
|
undefined8 local_18;
|
|
ulonglong local_10;
|
|
|
|
local_28 = param_1 + 2;
|
|
puVar1 = (undefined8 *)0x0;
|
|
local_18 = 0;
|
|
local_20 = 0;
|
|
uVar3 = param_1[1] + 1;
|
|
if ((uVar3 != 0) &&
|
|
((local_10 = uVar3, 0x1fffffffffffffff < uVar3 ||
|
|
(puVar1 = operator_new(uVar3 * 8), puVar1 == (undefined8 *)0x0)))) {
|
|
local_res8 = (char *)0x0;
|
|
std::exception::exception((exception *)local_40,&local_res8);
|
|
local_40[0] = std::bad_alloc::vftable;
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_40,(ThrowInfo *)&DAT_140151ad0);
|
|
}
|
|
for (puVar2 = puVar1; puVar2 != puVar1 + uVar3; puVar2 = puVar2 + 1) {
|
|
if (puVar2 != (undefined8 *)0x0) {
|
|
*puVar2 = 0;
|
|
}
|
|
}
|
|
puVar1[param_1[1]] = puVar1 + param_1[1];
|
|
*param_1 = puVar1;
|
|
return;
|
|
}
|
|
|