42 lines
1.4 KiB
C
42 lines
1.4 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x14008a380 FUN_14008a380
|
|
* Pseudocode, not original source. */
|
|
|
|
longlong * FUN_14008a380(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_14007ff90(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_14006ba50(local_50,(wchar_t *)PTR_u_Collection_object_can_use_fast_h_1401ac1d0,puVar1,param_4)
|
|
;
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_50,(ThrowInfo *)&DAT_1401a93e8);
|
|
}
|
|
|