server-re/decomp/AgentManager_Release_x64/full/functions/0x1400b7470.c
2026-10-15 09:58:24 -04:00

44 lines
1.1 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x1400b7470 FUN_1400b7470
* Pseudocode, not original source. */
int FUN_1400b7470(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_14017d440);
iVar4 = 0;
puVar5 = &DAT_140179540;
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_14017d440);
return iVar4;
}
}
iVar4 = iVar4 + 1;
puVar5 = puVar5 + 10;
if (0x1f < iVar4) {
LeaveCriticalSection((LPCRITICAL_SECTION)&DAT_14017d440);
return -1;
}
} while( true );
}