On 32 bits WinXP, the virtual address space of processes and applications is limited to 2 GB, unless the process is image_file_large_address_aware and the /3GB flag is set in boot.ini.
http://msdn.microsoft.com/en-us/wind...dware/gg487508
If you don't have the 3GB option enabled, there's probably no need to "find" the full 4GB because no single process will be able to address more than 2GB anyway. If you do have the option enabled, and NSIS doesn't support large virtual address space (I don't know if this is the case), you'll probably have to create and execute a new process that
does support it, and then have that report back to NSIS.