44 lines
1.3 KiB
C
44 lines
1.3 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401e1fa0 FUN_1401e1fa0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_1401e1fa0(longlong *param_1,longlong param_2)
|
|
|
|
{
|
|
char cVar1;
|
|
bool bVar2;
|
|
|
|
if ((int)param_1[8] != 2) {
|
|
FUN_14016f090(
|
|
L"CLookasideAllocator.Free() is called after the allocator is already disposed! Doing Free before WinMain returns in highly recommended."
|
|
);
|
|
}
|
|
bVar2 = *(int *)(*param_1 + 0x14) != 0;
|
|
if (bVar2) {
|
|
FUN_14016db50(param_1 + 0xe);
|
|
}
|
|
*(undefined1 *)(param_1 + 0x15) = 1;
|
|
if ((*(int *)(*param_1 + 0x14) == 0) && (*(longlong *)(*param_1 + 0x18) != 0)) {
|
|
cVar1 = FUN_14016dc80();
|
|
if (cVar1 == '\0') {
|
|
FUN_14016f090(L"Unsafe heap accessor with thread unsafety is detected!");
|
|
}
|
|
}
|
|
if (*(longlong *)(param_2 + 0x10) == 0) {
|
|
*(longlong *)(param_2 + 0x10) = param_1[9];
|
|
param_1[9] = param_2;
|
|
param_1[10] = param_1[10] + 1;
|
|
}
|
|
else {
|
|
FUN_14016f090(
|
|
L"Not a CLookasideAllocator or owner CFastHeap allocated block! Refer to technical notes for more help."
|
|
);
|
|
*(undefined1 *)(param_1 + 0x15) = 0;
|
|
}
|
|
*(undefined1 *)(param_1 + 0x15) = 0;
|
|
if (bVar2) {
|
|
FUN_14016dbe0(param_1 + 0xe);
|
|
}
|
|
return;
|
|
}
|
|
|