server-re/decomp/DBCServer_Release_x64/full/functions/0x14019b180.c

43 lines
1.2 KiB
C

/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
* Ghidra 12.1.2 decompiler output for 0x14019b180 FUN_14019b180
* Pseudocode, not original source. */
undefined8 * FUN_14019b180(undefined1 param_1)
{
undefined4 uVar1;
undefined8 *puVar2;
HANDLE pvVar3;
undefined8 uVar4;
longlong lVar5;
undefined4 local_res8 [2];
undefined *local_res10;
puVar2 = operator_new(0x18);
if (puVar2 == (undefined8 *)0x0) {
puVar2 = (undefined8 *)0x0;
}
else {
*puVar2 = Proud::CMemoryHeapImpl::vftable;
}
pvVar3 = HeapCreate(4,0,0);
puVar2[1] = pvVar3;
if (pvVar3 == (HANDLE)0x0) {
FUN_14016d8c0();
local_res10 = PTR_DAT_1403440a0;
uVar1 = FUN_14016d740(L"FATAL: HeapCreate failed!");
uVar4 = FUN_14004e940(&local_res10,uVar1);
FUN_14016d770(uVar4,L"FATAL: HeapCreate failed!",uVar1);
FUN_14004e560(&local_res10);
FUN_1401be230(&local_res10);
}
local_res8[0] = 2;
lVar5 = FUN_14016f040();
if (*(longlong *)(lVar5 + 8) != 0) {
lVar5 = FUN_14016f040();
(**(code **)(lVar5 + 8))(puVar2[1],0,local_res8,4);
}
*(undefined1 *)(puVar2 + 2) = param_1;
return puVar2;
}