I am attempting to modify the binary data of an executable program in Linux using Ubuntu.
I have a file called a.out. I can dump it in hex using xxd a.out | less. Then in another terminal window, I run vi a.out.
Vi's data is slightly different in many places than the xxd output. Both displays addresses into the file, but the data is different. For example, at the very beginning of the executable, in xxd there are two bytes C006 which in VI display as c380
Does anyone know why they are different? It appears VI is modifying some of the dat for some reason.