RtlpGetTimeZoneInfoHandle

NTSTATUS __stdcall RtlpGetTimeZoneInfoHandle(BOOL WriteAccess, PHANDLE Key){
  UINT8 v3; 
  NTSTATUS result; 
  UINT64 v5; 
  UINT64 v6[2]; 
  __int16 KeyName[264]; 
  v3 = WriteAccess;
  if( dword_140C4C2EC == 2 )
    return RtlpGetRegistryHandle(2ui64, L"TimeZoneInformation", v3, Key);
  LODWORD(v5) = 520;
  result = RtlGetPersistedStateLocation(
             (WCHAR *)L"TimeZoneInformationSettings",
             L"TargetNtPath",
             0i64,
             0i64,
             KeyName,
             v5,
             v6);
  if( result >= 0 )
  {
    dword_140C4C2EC = 1;
    result = RtlpGetRegistryHandle(0i64, (const WCHAR *)KeyName, v3, Key);
    if( result != -1073741772 )
      return result;
    return RtlpGetRegistryHandle(2ui64, L"TimeZoneInformation", v3, Key);
  }
  if( result == -1073741772 )
  {
    dword_140C4C2EC = 2;
    return RtlpGetRegistryHandle(2ui64, L"TimeZoneInformation", v3, Key);
  }
  return result;
}

Referenced by:

RtlSetActiveTimeBias
RtlpQueryTimeZoneInformationWorker
RtlpSetTimeZoneInformationWorker