server-re/decomp/Agent_Release_x64/full/functions/0x14004ded0.c
2026-10-14 16:45:19 -04:00

42 lines
1.4 KiB
C

/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
* Ghidra 12.1.2 decompiler output for 0x14004ded0 FUN_14004ded0
* Pseudocode, not original source. */
longlong * FUN_14004ded0(longlong *param_1,longlong *param_2,undefined8 param_3,undefined8 param_4)
{
undefined8 *puVar1;
longlong lVar2;
longlong lVar3;
exception local_50 [72];
lVar3 = 0;
puVar1 = (undefined8 *)
(**(code **)(*param_2 + 8))(param_2,0x30,param_3,param_4,0xfffffffffffffffe);
if (puVar1 != (undefined8 *)0x0) {
*puVar1 = Proud::CFastArray<Proud::CCompressedFrameNumbers::Elem,1>::vftable;
puVar1[1] = 0;
puVar1[2] = 0;
puVar1[3] = 0;
*(undefined4 *)(puVar1 + 4) = 0;
*(undefined4 *)((longlong)puVar1 + 0x24) = 1;
}
FUN_140043ba0(param_1,param_2,(longlong)puVar1,param_4);
lVar2 = lVar3;
if ((longlong *)*param_1 != (longlong *)0x0) {
lVar2 = *(longlong *)*param_1;
}
*(longlong **)(lVar2 + 0x28) = param_2;
if ((longlong *)*param_1 != (longlong *)0x0) {
lVar3 = *(longlong *)*param_1;
}
if (*(int *)(lVar3 + 0x1c) < 1) {
*(longlong **)(lVar3 + 8) = param_2;
return param_1;
}
FUN_14002f1e0(local_50,(wchar_t *)PTR_u_Collection_object_can_use_fast_h_1401551d0,puVar1,param_4)
;
/* WARNING: Subroutine does not return */
_CxxThrowException(local_50,(ThrowInfo *)&DAT_140151b88);
}