char *__fastcall sub_5EAC(__int64 a1, char *src, unsigned __int64 count)
{
unsigned __int64 v6; // rbp
if ( !count ) /*0x5ec9*/
return dst; /*0x5ecb*/
v6 = count - 1; /*0x5ee2*/
if ( count - 1 > -1 - (__int64)dst ) /*0x5ee9*/
sub_5450( /*0x5efe*/
(__int64)"e:\\hs\\MdePkg\\Library\\BaseMemoryLibRepStr\\CopyMemWrapper.c",
56,
(__int64)"(Length - 1) <= (0xFFFFFFFFFFFFFFFFULL - (UINTN)DestinationBuffer)");
if ( v6 > ~(unsigned __int64)src ) /*0x5f0c*/
sub_5450( /*0x5f21*/
(__int64)"e:\\hs\\MdePkg\\Library\\BaseMemoryLibRepStr\\CopyMemWrapper.c",
57,
(__int64)"(Length - 1) <= (0xFFFFFFFFFFFFFFFFULL - (UINTN)SourceBuffer)");
if ( dst == src ) /*0x5f29*/
return dst; /*0x5f2b*/
else
return sub_350(dst, src, count); /*0x5f39*/
}