HalpAcpiRealTimeToUtcTime

NTSTATUS __stdcall HalpAcpiRealTimeToUtcTime(ACPI_REAL_TIME *AcpiRealTime, LARGE_INTEGER *UtcTime){
  NTSTATUS v4; 
  __int64 TimeZone; 
  struct _TIME_FIELDS TimeFields; 
  union _LARGE_INTEGER Time; 
  TimeFields.Year = AcpiRealTime->Year;
  TimeFields.Month = AcpiRealTime->Month;
  v4 = 0;
  TimeFields.Day = AcpiRealTime->Day;
  TimeFields.Hour = AcpiRealTime->Hour;
  TimeFields.Minute = AcpiRealTime->Minute;
  TimeFields.Second = AcpiRealTime->Second;
  TimeFields.Milliseconds = AcpiRealTime->Milliseconds;
  Time.QuadPart = 0i64;
  TimeFields.Weekday = 0;
  if( !RtlTimeFieldsToTime(&TimeFields, &Time) )
    return -1073741823;
  TimeZone = AcpiRealTime->TimeZone;
  if( (unsigned __int16)(TimeZone + 1440) > 0xB40u )
    ExLocalTimeToSystemTime(&Time, UtcTime);
  else
    UtcTime->QuadPart = Time.QuadPart + 600000000 * TimeZone;
  return v4;
}

Referenced by:

HalQueryRealTimeClock