It is still unlikely that the user will run the game just in the minutes or hour the timer will flip to the neative min of the signed 32 bit number. However, likelyhood shound not be a criterium for good programmers. Simply check if millisecs is lower than the previous millisecs value, and if so, do the required steps.
the highest and lowest values of this signed 32 Bit int are:
2147483647
-2147483648
Or in binary:
%01111111111111111111111111111111
%10000000000000000000000000000000
The very first bit from the left side controls the interpretation of the int. If it's set, then it's a negative number, beginning at the min (-2147483648), plus the normal binary value of the other 31 bits.
For delta timing code you will not have to do special steps, because eg:
ms_now=%100000000000000000000000000001111
ms_old=%01111111111111111111111111110000
print ms_now-ms_old
ms_old was taken 16 millisecs before the counter was reset, ms_now 15 milliseconds after it was reset. the diffrence is still 31 Millisecs. So (-2147483632) - 2147483633 is 31.