server-re/decomp/MessageServer_Release_x64/full/functions/0x14010fef0.c

42 lines
1,021 B
C

/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
* Ghidra 12.1.2 decompiler output for 0x14010fef0 FUN_14010fef0
* Pseudocode, not original source. */
int FUN_14010fef0(undefined8 *param_1,undefined8 *param_2)
{
void *_Buf2;
void *_Buf1;
uint uVar1;
int iVar2;
uint uVar3;
uint uVar4;
uVar3 = *(uint *)(param_1 + 1);
uVar4 = *(uint *)(param_2 + 1);
_Buf2 = (void *)*param_2;
_Buf1 = (void *)*param_1;
uVar1 = uVar4;
if (uVar3 < uVar4) {
uVar1 = uVar3;
}
iVar2 = memcmp(_Buf1,_Buf2,(ulonglong)uVar1);
if ((iVar2 == 0) && (uVar3 != uVar4)) {
if (uVar4 < uVar3) {
for (; uVar4 < uVar3; uVar4 = uVar4 + 1) {
if (*(char *)((ulonglong)uVar4 + (longlong)_Buf1) != '\0') {
return 1;
}
}
}
else {
for (; uVar3 < uVar4; uVar3 = uVar3 + 1) {
if (*(char *)((ulonglong)uVar3 + (longlong)_Buf2) != '\0') {
return -1;
}
}
}
}
return iVar2;
}