49 lines
1.8 KiB
C
49 lines
1.8 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401b7920 FUN_1401b7920
|
|
* Pseudocode, not original source. */
|
|
|
|
undefined8 FUN_1401b7920(longlong *param_1,longlong param_2,undefined8 param_3)
|
|
|
|
{
|
|
longlong lVar1;
|
|
char cVar2;
|
|
undefined8 uVar3;
|
|
undefined1 local_68 [96];
|
|
|
|
lVar1 = *param_1;
|
|
if (lVar1 == 0) {
|
|
uVar3 = 0;
|
|
}
|
|
else {
|
|
if (*(int *)(lVar1 + 0x158) + *(int *)(lVar1 + 0x140) + *(int *)(lVar1 + 0x120) +
|
|
*(int *)(lVar1 + 0x108) + *(int *)(lVar1 + 0xe8) + *(int *)(lVar1 + 0xd0) +
|
|
*(int *)(lVar1 + 0xb0) + *(int *)(lVar1 + 0x98) + *(int *)(lVar1 + 0x78) +
|
|
*(int *)(lVar1 + 0x60) + *(int *)(lVar1 + 0x40) + *(int *)(lVar1 + 0x28) +
|
|
*(int *)(lVar1 + 0x1b0) == 0) {
|
|
FUN_14016d300(local_68,L"Unexpected state in RemoteToPacketSendMap!");
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_68,(ThrowInfo *)&DAT_1403417f8);
|
|
}
|
|
uVar3 = (**(code **)(*(longlong *)param_1[3] + 8))();
|
|
FUN_1401b6a80(lVar1,uVar3,param_2);
|
|
if (*(longlong *)(param_2 + 8) == 0) {
|
|
FUN_14016d300(local_68,L"Unexpected state in RemoteToPacketSendMap #2!");
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_68,(ThrowInfo *)&DAT_1403417f8);
|
|
}
|
|
cVar2 = FUN_1401b5850(lVar1,param_3);
|
|
if ((cVar2 == '\0') && (*(longlong *)(lVar1 + 0x10) != 0)) {
|
|
FUN_1401b5640(*(longlong *)(lVar1 + 0x10),lVar1);
|
|
}
|
|
else {
|
|
if (*(longlong *)(lVar1 + 0x10) != 0) {
|
|
FUN_1401b5640(*(longlong *)(lVar1 + 0x10),lVar1);
|
|
}
|
|
FUN_1401b59c0(param_1,lVar1);
|
|
}
|
|
*(undefined8 *)(lVar1 + 0x168) = param_3;
|
|
uVar3 = 1;
|
|
}
|
|
return uVar3;
|
|
}
|
|
|