If you drag files to a new location and they are a mixture of folders and files with some of the files in the folders selected - which is easy to do without thinking in a program such as this - the action needs to perform the move on the items in order of parent path length, shortest first. This will preserve the files in their correct folder structure, otherwise files in a subfolder that is also moved when processed first (before the subfolder) will end up at the base of the target rather than in the subfolder.
Just did that a moment ago and had to work to fix the result
![Smile :)](./images/smilies/icon_e_smile.gif)
(I anticipate there would be a similar issue with copy though there you would have the additional issue of files duplicated into different places; in doing them in parent path order I'm sure they would also benefit from noting folders copied to avoid a second effort on files and subfolders that had been copied via their folder copy, and then after the move dispensing with the folder list so made - with a move the file at least will disappear on their folder's move so only get moved once even though to an unintended place)
Cheers, David