There are a few hundred ways. I might suggest you use MS way of doing stuff.
Create a new 20G xp and don't even need to activate it. Then use ntbackup with system state and put it to an extra virtual hard drive. This extra virtual hard drive can then be added to the new 20g system and do a restore.
One might be able to mess with expanding this. https://forums.virtualbox.org/viewtopic.php?t=10348
Some people might be able to create a new 10G disk and attach it as dynamic disk. Or attach it to a folder or use it as a drive letter.