The atoi() function has undefined usage when trying to convert numbers outside the range of int.
When parsing numbers >= 2^31, GNU libc seems to truncate the number to 2^31-1; however, with MSVC, such a number would wrap, and when cast to an unsigned integer, numbers within an unsigned int are preserved.
Should Wine care about such undefined behaviour? Currently, it seems Wine uses the GNU libc implementation, giving a different result than when running in Windows.
(In my case, an IP address was given as a string, and ended up as "127.255.255.255" when running in Wine. I've now fixed that specific bug in the source code, but with other programs, that might not be an option...)