I'm trying to write memmove in assembly: the problem is that in my section data I've got two line : source and destination, and when I'm trying to pass 20 byte from source to destination while source got just 15 byte the 16th byte that pass from source to destination need to be the first byte of destination but the first byte of source passed,
- In the first picture we can see that
RAX
is on 21 then the data that need to pass issource+21
= 43, - We can see that the result of
source+21
is 176(176 = source+0) and not 43 like it is supposed to be, - In the last pic we can see that in
RCX
there issource + 22
= 122(122= source+1) and suppose to be 161
It's look like the code is cyclic , thanks for your help!