decomp DBCServer_Release and inspect/document database
This commit is contained in:
parent
4b267cbe05
commit
7834b98bf0
28222 changed files with 843300 additions and 144 deletions
84
decomp/DBCServer_Release_x64/full/functions/0x1400a7630.c
Normal file
84
decomp/DBCServer_Release_x64/full/functions/0x1400a7630.c
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
||||
* Ghidra 12.1.2 decompiler output for 0x1400a7630 FUN_1400a7630
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
undefined8 FUN_1400a7630(longlong *param_1,ushort *param_2)
|
||||
|
||||
{
|
||||
ushort uVar1;
|
||||
ushort uVar2;
|
||||
bool bVar3;
|
||||
uint uVar4;
|
||||
int iVar5;
|
||||
char *pcVar6;
|
||||
int iVar7;
|
||||
|
||||
EnterCriticalSection((LPCRITICAL_SECTION)(param_1 + 4));
|
||||
uVar1 = *param_2;
|
||||
iVar5 = (int)param_1[1];
|
||||
uVar2 = param_2[1];
|
||||
*(uint *)(param_1 + 9) = (uint)uVar1;
|
||||
uVar4 = iVar5 - *(int *)((longlong)param_1 + 0x14);
|
||||
if (uVar1 != uVar4 && (int)uVar4 <= (int)(uint)uVar1) {
|
||||
LeaveCriticalSection((LPCRITICAL_SECTION)(param_1 + 4));
|
||||
return 0;
|
||||
}
|
||||
iVar7 = (int)param_1[2];
|
||||
if (iVar5 < (int)(iVar7 + (uint)uVar1)) {
|
||||
iVar5 = iVar5 - iVar7;
|
||||
*(int *)((longlong)param_1 + 0x4c) = iVar5;
|
||||
*(uint *)(param_1 + 10) = (uint)uVar1 - iVar5;
|
||||
memcpy((void *)((longlong)iVar7 + *param_1),param_2,(longlong)iVar5);
|
||||
memcpy((void *)*param_1,
|
||||
(void *)((longlong)*(int *)((longlong)param_1 + 0x4c) + (longlong)param_2),
|
||||
(longlong)(int)param_1[10]);
|
||||
*(int *)(param_1 + 2) = (int)param_1[10];
|
||||
}
|
||||
else {
|
||||
memcpy((void *)((longlong)iVar7 + *param_1),param_2,(ulonglong)uVar1);
|
||||
*(int *)(param_1 + 2) = (int)param_1[2] + (int)param_1[9];
|
||||
iVar5 = (int)param_1[2];
|
||||
if (iVar5 == (int)param_1[1]) {
|
||||
iVar5 = 0;
|
||||
}
|
||||
*(int *)(param_1 + 2) = iVar5;
|
||||
}
|
||||
*(int *)(param_1 + 3) = (int)param_1[3] + 1;
|
||||
*(int *)((longlong)param_1 + 0x14) = *(int *)((longlong)param_1 + 0x14) + (int)param_1[9];
|
||||
iVar5 = (int)param_1[3];
|
||||
if (uVar2 < 0x2329) {
|
||||
bVar3 = DAT_140352f38 < iVar5;
|
||||
if (bVar3) {
|
||||
DAT_140352f38 = iVar5;
|
||||
}
|
||||
iVar5 = *(int *)((longlong)param_1 + 0x14);
|
||||
if ((*(int *)((longlong)param_1 + 0x14) <= DAT_140352f40) && (iVar5 = DAT_140352f40, !bVar3))
|
||||
goto LAB_1400a779a;
|
||||
DAT_140352f40 = iVar5;
|
||||
pcVar6 = "Request Queue : Cur[%d] Max[%d]-Len[%d] MaxLen[%d]\n";
|
||||
iVar5 = DAT_140352f40;
|
||||
iVar7 = DAT_140352f38;
|
||||
}
|
||||
else {
|
||||
bVar3 = DAT_140352f3c < iVar5;
|
||||
if (bVar3) {
|
||||
DAT_140352f3c = iVar5;
|
||||
}
|
||||
iVar5 = *(int *)((longlong)param_1 + 0x14);
|
||||
iVar7 = DAT_140352f3c;
|
||||
if (DAT_140352f44 < iVar5) {
|
||||
pcVar6 = "Result Queue : Cur[%d] Max[%d]-Len[%d] MaxLen[%d]\n";
|
||||
DAT_140352f44 = iVar5;
|
||||
}
|
||||
else {
|
||||
if (!bVar3) goto LAB_1400a779a;
|
||||
pcVar6 = "Result Queue : Cur[%d] Max[%d]-Len[%d] MaxLen[%d]\n";
|
||||
iVar5 = DAT_140352f44;
|
||||
}
|
||||
}
|
||||
FUN_1400a6c80(pcVar6,(int)param_1[3],iVar7,*(undefined4 *)((longlong)param_1 + 0x14),iVar5);
|
||||
LAB_1400a779a:
|
||||
LeaveCriticalSection((LPCRITICAL_SECTION)(param_1 + 4));
|
||||
return 1;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue