/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x14004f230 FUN_14004f230 * Pseudocode, not original source. */ void FUN_14004f230(ulonglong *param_1,void *param_2) { void *pvVar1; longlong lVar2; pvVar1 = (void *)param_1[1]; if ((param_2 < pvVar1) && ((void *)*param_1 <= param_2)) { lVar2 = (longlong)param_2 - (longlong)*param_1; lVar2 = lVar2 + SUB168(SEXT816(-0x608b85ead287c92f) * SEXT816(lVar2),8); if (pvVar1 == (void *)param_1[2]) { FUN_140051f20((longlong *)param_1,1); } if ((void *)param_1[1] != (void *)0x0) { memcpy((void *)param_1[1],(void *)(((lVar2 >> 9) - (lVar2 >> 0x3f)) * 0x336 + *param_1),0x336) ; } param_1[1] = param_1[1] + 0x336; return; } if (pvVar1 == (void *)param_1[2]) { FUN_140051f20((longlong *)param_1,1); } if ((void *)param_1[1] != (void *)0x0) { memcpy((void *)param_1[1],param_2,0x336); } param_1[1] = param_1[1] + 0x336; return; }