Index: /trunk/src/VBox/Runtime/common/time/time.cpp
===================================================================
--- /trunk/src/VBox/Runtime/common/time/time.cpp	(revision 34988)
+++ /trunk/src/VBox/Runtime/common/time/time.cpp	(revision 34989)
@@ -34,4 +34,5 @@
 
 #include <iprt/string.h>
+#include <iprt/asm-math.h>
 #include <iprt/assert.h>
 #include "internal/time.h"
@@ -272,6 +273,6 @@
     pTime->fFlags = RTTIME_FLAGS_TYPE_UTC;
     i64Div = pTimeSpec->i64NanosecondsRelativeToUnixEpoch;
-    i32Rem = (int32_t)(i64Div % 1000000000);
-    i64Div /= 1000000000;
+    i32Rem = ASMDivS64ByS32RetS32(i64Div, 1000000000);
+    i64Div = (int64_t)ASMDivS64ByS32RetS32(i64Div, 1000000000);
     if (i32Rem < 0)
     {
@@ -282,5 +283,5 @@
 
     /* second */
-    i32Rem = (int32_t)(i64Div % 60);
+    i32Rem = ASMDivS64ByS32RetS32(i64Div, 60);
     i64Div /= 60;
     if (i32Rem < 0)
