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

41 lines
959 B
C

/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
* Ghidra 12.1.2 decompiler output for 0x140118fb0 FUN_140118fb0
* Pseudocode, not original source. */
void FUN_140118fb0(longlong param_1,longlong param_2)
{
longlong *_Src;
longlong *plVar1;
longlong lVar2;
longlong *_Dst;
_Dst = *(longlong **)(param_1 + 0x70);
_Src = *(longlong **)(param_1 + 0x78);
if (_Dst == _Src) {
return;
}
while (*_Dst != param_2) {
_Dst = _Dst + 1;
if (_Dst == _Src) goto LAB_140119008;
}
plVar1 = _Dst;
if (_Dst == _Src) {
return;
}
while (plVar1 = plVar1 + 1, plVar1 != _Src) {
if (*plVar1 != param_2) {
*_Dst = *plVar1;
_Dst = _Dst + 1;
}
}
LAB_140119008:
if (_Dst == _Src) {
return;
}
lVar2 = *(longlong *)(param_1 + 0x78) - (longlong)_Src >> 3;
memmove(_Dst,_Src,lVar2 * 8);
*(longlong **)(param_1 + 0x78) = _Dst + lVar2;
return;
}