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,36 @@
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
* Ghidra 12.1.2 decompiler output for 0x140002630 FUN_140002630
* Pseudocode, not original source. */
void FUN_140002630(undefined8 *param_1)
{
int iVar1;
undefined2 local_res8 [4];
*param_1 = CmdQueue::vftable;
if (param_1[1] != 0) {
local_res8[0] = 0;
EnterCriticalSection((LPCRITICAL_SECTION)(param_1 + 7));
iVar1 = FUN_1400a7630(param_1[3],local_res8);
if (iVar1 != 0) {
ReleaseSemaphore((HANDLE)param_1[2],1,(LPLONG)0x0);
}
LeaveCriticalSection((LPCRITICAL_SECTION)(param_1 + 7));
WaitForSingleObject((HANDLE)param_1[1],0xffffffff);
CloseHandle((HANDLE)param_1[1]);
printf("command thread end!\n");
}
if ((HANDLE)param_1[2] != (HANDLE)0x0) {
CloseHandle((HANDLE)param_1[2]);
}
if (param_1[3] != 0) {
FUN_1400026f0();
param_1[3] = 0;
}
/* WARNING: Could not recover jumptable at 0x0001400026e7. Too many branches */
/* WARNING: Treating indirect jump as call */
DeleteCriticalSection((LPCRITICAL_SECTION)(param_1 + 7));
return;
}