How to change all dates on file and preserve them during file move?
You cannot controlctime.ctime is set with the creation of the inode. ctime changes to the mtime when you modify a file. ctime is set to the current date and time when you modify the inode metadata, such as changing mtime, file permissions, or renaming a file. 

The closest you can come to matching atime,mtime, and ctime would be totouch a file which will set all three to the current date and time. But at anytime ctime may change, even OS X applications can cause changes to the inode metadata without changing the content of a file.

btime or birthtime will not change when moving files on the same filesystem.

Tools that support preserving file metadata are ditto, pax, and cp with the p option. None of these tools support preserving birthtime across filesystems.