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,53 @@
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
* Ghidra 12.1.2 decompiler output for 0x1400d5870 FUN_1400d5870
* Pseudocode, not original source. */
ulonglong FUN_1400d5870(longlong *param_1,longlong *param_2,double param_3,undefined8 param_4)
{
longlong *plVar1;
bool bVar2;
ulonglong in_RAX;
ulonglong uVar3;
undefined8 in_R8;
longlong *plVar4;
undefined8 uVar5;
exception local_68 [96];
plVar1 = (longlong *)*param_1;
if (plVar1 == (longlong *)0x0) {
uVar3 = in_RAX & 0xffffffffffffff00;
}
else {
if ((int)plVar1[0x2b] + (int)plVar1[0x28] + (int)plVar1[0x24] + (int)plVar1[0x21] +
(int)plVar1[0x1d] + (int)plVar1[0x1a] + (int)plVar1[0x16] + (int)plVar1[0x13] +
(int)plVar1[0xf] + (int)plVar1[0xc] + (int)plVar1[8] + (int)plVar1[5] + (int)plVar1[0x36] ==
0) {
FUN_14006ba50(local_68,L"Unexpected state in RemoteToPacketSendMap!",in_R8,param_4);
/* WARNING: Subroutine does not return */
_CxxThrowException(local_68,(ThrowInfo *)&DAT_1401a93e8);
}
uVar5 = (**(code **)(*(longlong *)param_1[3] + 8))();
plVar4 = param_2;
FUN_1400d4950((short *)plVar1,uVar5,param_2,param_4);
if (param_2[1] == 0) {
FUN_14006ba50(local_68,L"Unexpected state in RemoteToPacketSendMap #2!",plVar4,param_4);
/* WARNING: Subroutine does not return */
_CxxThrowException(local_68,(ThrowInfo *)&DAT_1401a93e8);
}
bVar2 = FUN_1400d3700((longlong)plVar1,param_3);
if ((bVar2) || ((longlong *)plVar1[2] == (longlong *)0x0)) {
if ((longlong *)plVar1[2] != (longlong *)0x0) {
FUN_1400d34f0((longlong *)plVar1[2],plVar1,plVar4,param_4);
}
uVar5 = FUN_1400d3870(param_1,plVar1,plVar4,param_4);
}
else {
uVar5 = FUN_1400d34f0((longlong *)plVar1[2],plVar1,plVar4,param_4);
}
plVar1[0x2d] = (longlong)param_3;
uVar3 = CONCAT71((int7)((ulonglong)uVar5 >> 8),1);
}
return uVar3;
}