WinXP should be fine with 4 cores, WinXP is fine with max 4GB ram (32bit) 4+GB ram (64bit)
32 vs 64 doesn't mean anything on the number of cores, not all support multi cpus though which is a different thing then multiple cores (a licensing question) but for most homeusers WinXP and Vista supports 2 CPU's with multiple cores.
+1 Godiwa - I was going to point out it's not the processor that is hampered by 32/64 bit OS, but the amount of usable memory (RAM).
32 vs 64 bit OS has little to do with core optimization.
That all depends on how the programmers wrote the code - if they wrote it for 4 cores, then yes, but very few programs, let alone games, write code to utilize all 4 cores. More are starting to go that way, but many apps are just single or dual threaded.
So Crysis will use the number of cores it was written to use.
As mentioned, 32-bit vs. 64-bit has nothing to do with whether XP will see all four cores. Under both versions, you'll have a single 4-core processor available. Whether games (or whatever you are running) uses all four would be a different issue, but they are definitely all going to be available if the software wants to use them.