A program probably not so much, but perhaps there could be some command prompt/powershell script. For example:
forfiles /P $Drive:\ /M *.* /S /D +"01/01/2014" /C "cmd /c if @fsize gtr 209715200 echo @path @fsize @fdate @ftime"
This was an answer from the following question: Is there a Windows command-line utility to list largest files exceeding specific size in sub-directories?
You can easily use the Powershell command
-Confirm before making any changes, but I do not see why you cannot create a command to list files based upon size, then move them to an explicit folder on your new hard-drive.
I actually love this program! It has command-like compatibility, such as:
-time show date and modification time
-flattime show date and time in a more compact format
-tab separate columns by tab characters, not blanks
-size[=n] show size of files [n characters wide]
-kbytes or -kb lists sizes in kbytes instead of bytes
-mbytes or -gbytes lists sizes in mbytes or gbytes
-kbpure list without "kb" postfix
-stat show statistics (number of files, dirs, bytes)
and tell if hidden files or dirs were skipped.
-nofollow or -nofo does not follow symbolic directory links.
use this if list runs in an endless recursion.
-withdirs list also directories
-justdirs list just directories
-hidden list also hidden or system files
-arc list contents of well known zip, tar.gz and
tar.bz2 archives as deep as possible, including
nested archives. type "sfk help opt" for the
list of well known file extensions.
-qarc quick list archives, lists only archive entries
at the top level, skipping nested archives.
-xarc list contents of any zip file, regardless of
file extension, and tar.gz and tar.bz2 files.
reads the first bytes of every file and will
therefore perform slower then -arc.
-qxarc quick list any archive content.
-sort[=n] sort by name, list all or last n files
-sortrev sort by name, in reverse order
-late[=n] sort by time, list latest [n] files last
-old[=n] sort by time, list oldest [n] files last
-big[=n] sort by size, list biggest [n] files last
-small[=n] sort by size, list smallest [n] files last
-skiplate=n sort by time, select all except newest n
-minsize=s list only files >= size, like 10b or 100k
-maxsize=s list only files <= size, like 10m or 4g
b=bytes k=kbytes m=megabytes g=gigabytes
-late=all sort by time, list all files
-notime don't list time, after -late or -old
-nosize don't list size, after -big or -small
-pure pure list of filenames, leave out time, size,
headline or statistics.
-quot surround filenames by double quotes. needed when
post-processing filename lists containing blanks.
-quiet do not show the "scan" progress information
-since list only files since this timestamp, e.g.
"2006-01-31 12:15:59" or 20060131121559
2006-01-31 or 20060131
today : files changed since midnight of today
1d : changed since 1 day, i.e. not counting
from midnight, but 24 hours into the past
5h, 30m, 10s : 5 hours, 30 minutes, 10 seconds.
-before select files modified before that timestamp.
-today short replacement for "-since today".
-usectime use or list creation time instead of modification time.
may not be available on some filesystems.
-utc or -gmt lists UTC/GMT time instead of local time.
-sincedir compare against another directory, list files that
or -sd have been added, have different time, or content.
does not list files which have been removed.
-sinceadd like -sincedir, list only added files.
-sincedif like -sincedir, list only changed files.
does not list files with diff. time but same content.
does not list added files.
-sincechg list files with different content, and added files.
or -sc does not list files with diff. time but same content.
-relnames list filenames relative to specified directory(s),
i.e. strip root directory names at the beginning.
-tofile x write all names directly to file x (using less memory
than the chain command +tofile x).
-maxfiles=n list a maximum of n files only.
-fileoff[set]=n from all selected files, list only a subset,
starting at index n. first file has index 0.
Personally I would recommend using this (and please give props to the original answer as this was also listed).