44 lines
1.1 KiB
C
44 lines
1.1 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x1401e28e0 FUN_1401e28e0
|
|
* Pseudocode, not original source. */
|
|
|
|
int FUN_1401e28e0(longlong param_1)
|
|
|
|
{
|
|
char cVar1;
|
|
char cVar2;
|
|
char *pcVar3;
|
|
int iVar4;
|
|
undefined8 *puVar5;
|
|
longlong lVar6;
|
|
|
|
if (param_1 == 0) {
|
|
return 0x10;
|
|
}
|
|
EnterCriticalSection((LPCRITICAL_SECTION)&DAT_14039d1e0);
|
|
iVar4 = 0;
|
|
puVar5 = &DAT_14034fc90;
|
|
do {
|
|
pcVar3 = (char *)*puVar5;
|
|
if (pcVar3 != (char *)0x0) {
|
|
lVar6 = param_1 - (longlong)pcVar3;
|
|
do {
|
|
cVar1 = *pcVar3;
|
|
cVar2 = pcVar3[lVar6];
|
|
if (cVar1 != cVar2) break;
|
|
pcVar3 = pcVar3 + 1;
|
|
} while (cVar2 != '\0');
|
|
if (cVar1 == cVar2) {
|
|
LeaveCriticalSection((LPCRITICAL_SECTION)&DAT_14039d1e0);
|
|
return iVar4;
|
|
}
|
|
}
|
|
iVar4 = iVar4 + 1;
|
|
puVar5 = puVar5 + 0x10;
|
|
if (0x1f < iVar4) {
|
|
LeaveCriticalSection((LPCRITICAL_SECTION)&DAT_14039d1e0);
|
|
return -1;
|
|
}
|
|
} while( true );
|
|
}
|
|
|