decomp DBCServer_Release and inspect/document database

This commit is contained in:
Benjamin Palko 2026-10-14 23:22:03 -04:00
parent 4b267cbe05
commit 7834b98bf0
28222 changed files with 843300 additions and 144 deletions

View file

@ -0,0 +1,69 @@
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
* Ghidra 12.1.2 decompiler output for 0x1400c2a10 FUN_1400c2a10
* Pseudocode, not original source. */
void FUN_1400c2a10(longlong param_1,undefined8 param_2,SIZE_T *param_3,TypeDescriptor *param_4)
{
int *piVar1;
char cVar2;
short *psVar3;
HANDLE hThread;
__time64_t _Var4;
int *piVar5;
longlong lVar6;
wchar_t *pwVar7;
undefined8 uVar8;
short *psVar9;
double dVar10;
char local_res8 [8];
short *local_res10;
hThread = GetCurrentThread();
pwVar7 = (wchar_t *)0x0;
SetThreadPriorityBoost(hThread,0);
FUN_1400f8570(local_res8);
cVar2 = *(char *)(param_1 + 0x140);
while (cVar2 == '\0') {
pwVar7 = (wchar_t *)0x64;
FUN_140076c10((undefined8 *)(param_1 + 0x150),100);
dVar10 = FUN_140076fb0((char *)(*(longlong *)(param_1 + 0x148) + 0x760));
*(double *)(*(longlong *)(param_1 + 0x148) + 0x1c0) = dVar10;
dVar10 = FUN_140076f50((char *)(*(longlong *)(param_1 + 0x148) + 0x760));
*(double *)(*(longlong *)(param_1 + 0x148) + 0x200) = dVar10;
_Var4 = _time64((__time64_t *)0x0);
*(__time64_t *)(*(longlong *)(param_1 + 0x148) + 0x208) = _Var4;
FUN_1400c18f0(param_1,pwVar7,param_3,param_4);
cVar2 = *(char *)(param_1 + 0x140);
}
lVar6 = *(longlong *)(param_1 + 0x148);
FUN_140088ec0(lVar6,pwVar7,param_3,param_4);
if (*(longlong *)(*(longlong *)(param_1 + 0x148) + 0x17f0) != 0) {
FUN_14006cb70(lVar6,pwVar7,param_3,param_4);
local_res10 = (short *)PTR_DAT_1401ac010;
FUN_140053d20((longlong *)&local_res10,L"%s thread 종료",
L"Proud::CNetThreads_S::Heartbeat_Main",param_4);
psVar3 = local_res10;
psVar9 = local_res10;
if (local_res10 == (short *)0x0) {
psVar9 = (short *)PTR_DAT_1401ac010;
}
uVar8 = 0;
lVar6 = *(longlong *)(*(longlong *)(param_1 + 0x148) + 0x17f0);
FUN_1400cb700(lVar6,0,psVar9,param_4);
if (((psVar3 != (short *)0x0) && (psVar3 != (short *)PTR_DAT_1401ac010)) &&
(psVar3 + -4 != (short *)0x0)) {
piVar5 = (int *)FUN_14006cb70(lVar6,uVar8,psVar9,param_4);
FUN_14006b350(piVar5);
piVar1 = (int *)(psVar3 + -2);
*piVar1 = *piVar1 + -1;
if (*piVar1 == 0) {
FUN_14006cc60(psVar3 + -4);
}
FUN_14006b3e0((longlong)piVar5);
}
}
FUN_1400f85a0(local_res8);
return;
}