System/core: Use memmove

For an explaination to those who will be blindly
cherrypicking this
Memcpy is implemented in a simple but faster manner.
It just loops over the data and may render the source being overwritten
while its being read
Memmove performs a test to determine in which direction to loop in order
to avoid curropting the data
In the case  of overlap this datas are larger then bytes so memmove is used

Change-Id: I268a173db40a4be54232958e37aa8a03c2a885ee