dissect.target 3.16.dev7__py3-none-any.whl → 3.16.dev8__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- dissect/target/helpers/mui.py +595 -0
- dissect/target/plugins/os/windows/datetime.py +20 -3
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/METADATA +1 -1
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/RECORD +9 -8
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/COPYRIGHT +0 -0
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/LICENSE +0 -0
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/WHEEL +0 -0
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/entry_points.txt +0 -0
- {dissect.target-3.16.dev7.dist-info → dissect.target-3.16.dev8.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,595 @@
|
|
1
|
+
"""Multilingual User Interface (MUI) translations for Windows en-US timezone strings.
|
2
|
+
|
3
|
+
This dictionary was exported from a ``tzres.dll.mui`` file from Windows Server 2019.
|
4
|
+
|
5
|
+
Resources:
|
6
|
+
- Reversing DLL String Table in ``C:/Windows/System32/en-US/tzres.dll.mui``.
|
7
|
+
- https://learn.microsoft.com/en-us/windows/win32/intl/using-registry-string-redirection
|
8
|
+
- https://learn.microsoft.com/en-us/windows/win32/api/winnls/ns-winnls-filemuiinfo
|
9
|
+
"""
|
10
|
+
|
11
|
+
MUI_TZ_MAP = {
|
12
|
+
10: "(UTC-01:00) Azores",
|
13
|
+
11: "Azores Daylight Time",
|
14
|
+
12: "Azores Standard Time",
|
15
|
+
20: "(UTC-01:00) Cape Verde Is.",
|
16
|
+
21: "Cape Verde Daylight Time",
|
17
|
+
22: "Cape Verde Standard Time",
|
18
|
+
30: "(UTC-02:00) Mid-Atlantic",
|
19
|
+
31: "Mid-Atlantic Daylight Time",
|
20
|
+
32: "Mid-Atlantic Standard Time",
|
21
|
+
40: "(UTC-03:00) Brasilia",
|
22
|
+
41: "E. South America Daylight Time",
|
23
|
+
42: "E. South America Standard Time",
|
24
|
+
50: "(UTC-03:00) Greenland",
|
25
|
+
51: "Greenland Daylight Time",
|
26
|
+
52: "Greenland Standard Time",
|
27
|
+
60: "(UTC-03:00) Buenos Aires, Georgetown",
|
28
|
+
61: "SA Eastern Daylight Time",
|
29
|
+
62: "SA Eastern Standard Time",
|
30
|
+
70: "(UTC-03:30) Newfoundland",
|
31
|
+
71: "Newfoundland Daylight Time",
|
32
|
+
72: "Newfoundland Standard Time",
|
33
|
+
80: "(UTC-04:00) Atlantic Time (Canada)",
|
34
|
+
81: "Atlantic Daylight Time",
|
35
|
+
82: "Atlantic Standard Time",
|
36
|
+
90: "(UTC-04:00) Santiago",
|
37
|
+
91: "Pacific SA Daylight Time",
|
38
|
+
92: "Pacific SA Standard Time",
|
39
|
+
100: "(UTC-04:00) Caracas, La Paz",
|
40
|
+
101: "SA Western Daylight Time",
|
41
|
+
102: "SA Western Standard Time",
|
42
|
+
103: "(UTC-04:00) Manaus",
|
43
|
+
104: "Central Brazilian Daylight Time",
|
44
|
+
105: "Central Brazilian Standard Time",
|
45
|
+
110: "(UTC-05:00) Eastern Time (US & Canada)",
|
46
|
+
111: "Eastern Daylight Time",
|
47
|
+
112: "Eastern Standard Time",
|
48
|
+
120: "(UTC-05:00) Bogota, Lima, Quito, Rio Branco",
|
49
|
+
121: "SA Pacific Daylight Time",
|
50
|
+
122: "SA Pacific Standard Time",
|
51
|
+
130: "(UTC-05:00) Indiana (East)",
|
52
|
+
131: "US Eastern Daylight Time",
|
53
|
+
132: "US Eastern Standard Time",
|
54
|
+
140: "(UTC-06:00) Saskatchewan",
|
55
|
+
141: "Canada Central Daylight Time",
|
56
|
+
142: "Canada Central Standard Time",
|
57
|
+
150: "(UTC-06:00) Central America",
|
58
|
+
151: "Central America Daylight Time",
|
59
|
+
152: "Central America Standard Time",
|
60
|
+
160: "(UTC-06:00) Central Time (US & Canada)",
|
61
|
+
161: "Central Daylight Time",
|
62
|
+
162: "Central Standard Time",
|
63
|
+
170: "(UTC-06:00) Guadalajara, Mexico City, Monterrey",
|
64
|
+
171: "Central Daylight Time (Mexico)",
|
65
|
+
172: "Central Standard Time (Mexico)",
|
66
|
+
180: "(UTC-07:00) Chihuahua, La Paz, Mazatlan",
|
67
|
+
181: "Mountain Daylight Time (Mexico)",
|
68
|
+
182: "Mountain Standard Time (Mexico)",
|
69
|
+
190: "(UTC-07:00) Mountain Time (US & Canada)",
|
70
|
+
191: "Mountain Daylight Time",
|
71
|
+
192: "Mountain Standard Time",
|
72
|
+
200: "(UTC-07:00) Arizona",
|
73
|
+
201: "US Mountain Daylight Time",
|
74
|
+
202: "US Mountain Standard Time",
|
75
|
+
210: "(UTC-08:00) Pacific Time (US & Canada)",
|
76
|
+
211: "Pacific Daylight Time",
|
77
|
+
212: "Pacific Standard Time",
|
78
|
+
213: "(UTC-08:00) Tijuana, Baja California",
|
79
|
+
214: "Pacific Daylight Time (Mexico)",
|
80
|
+
215: "Pacific Standard Time (Mexico)",
|
81
|
+
220: "(UTC-09:00) Alaska",
|
82
|
+
221: "Alaskan Daylight Time",
|
83
|
+
222: "Alaskan Standard Time",
|
84
|
+
230: "(UTC-10:00) Hawaii",
|
85
|
+
231: "Hawaiian Daylight Time",
|
86
|
+
232: "Hawaiian Standard Time",
|
87
|
+
240: "(UTC-11:00) Midway Island, Samoa",
|
88
|
+
241: "Samoa Daylight Time",
|
89
|
+
242: "Samoa Standard Time",
|
90
|
+
250: "(UTC-12:00) International Date Line West",
|
91
|
+
251: "Dateline Daylight Time",
|
92
|
+
252: "Dateline Standard Time",
|
93
|
+
260: "(UTC) Dublin, Edinburgh, Lisbon, London",
|
94
|
+
261: "GMT Daylight Time",
|
95
|
+
262: "GMT Standard Time",
|
96
|
+
270: "(UTC) Casablanca, Monrovia, Reykjavik",
|
97
|
+
271: "Greenwich Daylight Time",
|
98
|
+
272: "Greenwich Standard Time",
|
99
|
+
280: "(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",
|
100
|
+
281: "Central Europe Daylight Time",
|
101
|
+
282: "Central Europe Standard Time",
|
102
|
+
290: "(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",
|
103
|
+
291: "Central European Daylight Time",
|
104
|
+
292: "Central European Standard Time",
|
105
|
+
300: "(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",
|
106
|
+
301: "Romance Daylight Time",
|
107
|
+
302: "Romance Standard Time",
|
108
|
+
310: "(UTC+01:00) West Central Africa",
|
109
|
+
311: "W. Central Africa Daylight Time",
|
110
|
+
312: "W. Central Africa Standard Time",
|
111
|
+
320: "(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",
|
112
|
+
321: "W. Europe Daylight Time",
|
113
|
+
322: "W. Europe Standard Time",
|
114
|
+
330: "(UTC+02:00) Minsk",
|
115
|
+
331: "E. Europe Daylight Time",
|
116
|
+
332: "E. Europe Standard Time",
|
117
|
+
333: "(UTC+02:00) Amman",
|
118
|
+
334: "Jordan Daylight Time",
|
119
|
+
335: "Jordan Standard Time",
|
120
|
+
340: "(UTC+02:00) Cairo",
|
121
|
+
341: "Egypt Daylight Time",
|
122
|
+
342: "Egypt Standard Time",
|
123
|
+
350: "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",
|
124
|
+
351: "FLE Daylight Time",
|
125
|
+
352: "FLE Standard Time",
|
126
|
+
360: "(UTC+02:00) Athens, Bucharest, Istanbul",
|
127
|
+
361: "GTB Daylight Time",
|
128
|
+
362: "GTB Standard Time",
|
129
|
+
363: "(UTC+02:00) Beirut",
|
130
|
+
364: "Middle East Daylight Time",
|
131
|
+
365: "Middle East Standard Time",
|
132
|
+
370: "(UTC+02:00) Jerusalem",
|
133
|
+
371: "Jerusalem Daylight Time",
|
134
|
+
372: "Jerusalem Standard Time",
|
135
|
+
380: "(UTC+02:00) Harare, Pretoria",
|
136
|
+
381: "South Africa Daylight Time",
|
137
|
+
382: "South Africa Standard Time",
|
138
|
+
383: "(UTC+02:00) Windhoek",
|
139
|
+
384: "Namibia Daylight Time",
|
140
|
+
385: "Namibia Standard Time",
|
141
|
+
390: "(UTC+03:00) Kuwait, Riyadh",
|
142
|
+
391: "Arab Daylight Time",
|
143
|
+
392: "Arab Standard Time",
|
144
|
+
400: "(UTC+03:00) Baghdad",
|
145
|
+
401: "Arabic Daylight Time",
|
146
|
+
402: "Arabic Standard Time",
|
147
|
+
410: "(UTC+03:00) Nairobi",
|
148
|
+
411: "E. Africa Daylight Time",
|
149
|
+
412: "E. Africa Standard Time",
|
150
|
+
420: "(UTC+03:00) Moscow, St. Petersburg, Volgograd",
|
151
|
+
421: "Russian Daylight Time",
|
152
|
+
422: "Russian Standard Time",
|
153
|
+
430: "(UTC+03:30) Tehran",
|
154
|
+
431: "Iran Daylight Time",
|
155
|
+
432: "Iran Standard Time",
|
156
|
+
433: "(UTC+03:00) Tbilisi",
|
157
|
+
434: "Georgian Daylight Time",
|
158
|
+
435: "Georgian Standard Time",
|
159
|
+
440: "(UTC+04:00) Abu Dhabi, Muscat",
|
160
|
+
441: "Arabian Daylight Time",
|
161
|
+
442: "Arabian Standard Time",
|
162
|
+
447: "(UTC+04:00) Baku",
|
163
|
+
448: "Azerbaijan Daylight Time",
|
164
|
+
449: "Azerbaijan Standard Time",
|
165
|
+
450: "(UTC+04:00) Yerevan",
|
166
|
+
451: "Caucasus Daylight Time",
|
167
|
+
452: "Caucasus Standard Time",
|
168
|
+
460: "(UTC+04:30) Kabul",
|
169
|
+
461: "Afghanistan Daylight Time",
|
170
|
+
462: "Afghanistan Standard Time",
|
171
|
+
470: "(UTC+05:00) Ekaterinburg",
|
172
|
+
471: "Ekaterinburg Daylight Time",
|
173
|
+
472: "Ekaterinburg Standard Time",
|
174
|
+
480: "(UTC+05:00) Islamabad, Karachi, Tashkent",
|
175
|
+
481: "West Asia Daylight Time",
|
176
|
+
482: "West Asia Standard Time",
|
177
|
+
490: "(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",
|
178
|
+
491: "India Daylight Time",
|
179
|
+
492: "India Standard Time",
|
180
|
+
500: "(UTC+05:45) Kathmandu",
|
181
|
+
501: "Nepal Daylight Time",
|
182
|
+
502: "Nepal Standard Time",
|
183
|
+
510: "(UTC+06:00) Astana, Dhaka",
|
184
|
+
511: "Central Asia Daylight Time",
|
185
|
+
512: "Central Asia Standard Time",
|
186
|
+
520: "(UTC+06:00) Almaty, Novosibirsk",
|
187
|
+
521: "N. Central Asia Daylight Time",
|
188
|
+
522: "N. Central Asia Standard Time",
|
189
|
+
530: "(UTC+05:30) Sri Jayawardenepura",
|
190
|
+
531: "Sri Lanka Daylight Time",
|
191
|
+
532: "Sri Lanka Standard Time",
|
192
|
+
540: "(UTC+06:30) Yangon (Rangoon)",
|
193
|
+
541: "Myanmar Daylight Time",
|
194
|
+
542: "Myanmar Standard Time",
|
195
|
+
550: "(UTC+07:00) Krasnoyarsk",
|
196
|
+
551: "North Asia Daylight Time",
|
197
|
+
552: "North Asia Standard Time",
|
198
|
+
560: "(UTC+07:00) Bangkok, Hanoi, Jakarta",
|
199
|
+
561: "SE Asia Daylight Time",
|
200
|
+
562: "SE Asia Standard Time",
|
201
|
+
570: "(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",
|
202
|
+
571: "China Daylight Time",
|
203
|
+
572: "China Standard Time",
|
204
|
+
580: "(UTC+08:00) Irkutsk, Ulaan Bataar",
|
205
|
+
581: "North Asia East Daylight Time",
|
206
|
+
582: "North Asia East Standard Time",
|
207
|
+
590: "(UTC+08:00) Kuala Lumpur, Singapore",
|
208
|
+
591: "Malay Peninsula Daylight Time",
|
209
|
+
592: "Malay Peninsula Standard Time",
|
210
|
+
600: "(UTC+08:00) Taipei",
|
211
|
+
601: "Taipei Daylight Time",
|
212
|
+
602: "Taipei Standard Time",
|
213
|
+
610: "(UTC+08:00) Perth",
|
214
|
+
611: "W. Australia Daylight Time",
|
215
|
+
612: "W. Australia Standard Time",
|
216
|
+
620: "(UTC+09:00) Seoul",
|
217
|
+
621: "Korea Daylight Time",
|
218
|
+
622: "Korea Standard Time",
|
219
|
+
630: "(UTC+09:00) Osaka, Sapporo, Tokyo",
|
220
|
+
631: "Tokyo Daylight Time",
|
221
|
+
632: "Tokyo Standard Time",
|
222
|
+
640: "(UTC+09:00) Yakutsk",
|
223
|
+
641: "Yakutsk Daylight Time",
|
224
|
+
642: "Yakutsk Standard Time",
|
225
|
+
650: "(UTC+09:30) Darwin",
|
226
|
+
651: "AUS Central Daylight Time",
|
227
|
+
652: "AUS Central Standard Time",
|
228
|
+
660: "(UTC+09:30) Adelaide",
|
229
|
+
661: "Cen. Australia Daylight Time",
|
230
|
+
662: "Cen. Australia Standard Time",
|
231
|
+
670: "(UTC+10:00) Canberra, Melbourne, Sydney",
|
232
|
+
671: "AUS Eastern Daylight Time",
|
233
|
+
672: "AUS Eastern Standard Time",
|
234
|
+
680: "(UTC+10:00) Brisbane",
|
235
|
+
681: "E. Australia Daylight Time",
|
236
|
+
682: "E. Australia Standard Time",
|
237
|
+
690: "(UTC+10:00) Hobart",
|
238
|
+
691: "Tasmania Daylight Time",
|
239
|
+
692: "Tasmania Standard Time",
|
240
|
+
700: "(UTC+10:00) Vladivostok",
|
241
|
+
701: "Vladivostok Daylight Time",
|
242
|
+
702: "Vladivostok Standard Time",
|
243
|
+
710: "(UTC+10:00) Guam, Port Moresby",
|
244
|
+
711: "West Pacific Daylight Time",
|
245
|
+
712: "West Pacific Standard Time",
|
246
|
+
720: "(UTC+11:00) Magadan, Solomon Is., New Caledonia",
|
247
|
+
721: "Central Pacific Daylight Time",
|
248
|
+
722: "Central Pacific Standard Time",
|
249
|
+
730: "(UTC+12:00) Fiji, Kamchatka, Marshall Is.",
|
250
|
+
731: "Fiji Daylight Time",
|
251
|
+
732: "Fiji Standard Time",
|
252
|
+
740: "(UTC+12:00) Auckland, Wellington",
|
253
|
+
741: "New Zealand Daylight Time",
|
254
|
+
742: "New Zealand Standard Time",
|
255
|
+
750: "(UTC+13:00) Nuku'alofa",
|
256
|
+
751: "Tonga Daylight Time",
|
257
|
+
752: "Tonga Standard Time",
|
258
|
+
770: "(UTC-03:00) Montevideo",
|
259
|
+
771: "Montevideo Daylight Time",
|
260
|
+
772: "Montevideo Standard Time",
|
261
|
+
790: "(UTC-04:00) La Paz",
|
262
|
+
791: "SA Western Daylight Time",
|
263
|
+
792: "SA Western Standard Time",
|
264
|
+
810: "(UTC-04:30) Caracas",
|
265
|
+
811: "Venezuela Daylight Time",
|
266
|
+
812: "Venezuela Standard Time",
|
267
|
+
830: "(UTC-03:00) Georgetown",
|
268
|
+
831: "SA Eastern Daylight Time",
|
269
|
+
832: "SA Eastern Standard Time",
|
270
|
+
840: "(UTC-03:00) Buenos Aires",
|
271
|
+
841: "Argentina Daylight Time",
|
272
|
+
842: "Argentina Standard Time",
|
273
|
+
860: "(UTC+05:00) Tashkent",
|
274
|
+
870: "(UTC+05:00) Islamabad, Karachi",
|
275
|
+
871: "Pakistan Daylight Time",
|
276
|
+
872: "Pakistan Standard Time",
|
277
|
+
880: "(UTC) Monrovia, Reykjavik",
|
278
|
+
890: "(UTC) Casablanca",
|
279
|
+
891: "Morocco Daylight Time",
|
280
|
+
892: "Morocco Standard Time",
|
281
|
+
910: "(UTC+04:00) Port Louis",
|
282
|
+
911: "Mauritius Daylight Time",
|
283
|
+
912: "Mauritius Standard Time",
|
284
|
+
930: "(UTC) Coordinated Universal Time",
|
285
|
+
931: "Coordinated Universal Time",
|
286
|
+
932: "Coordinated Universal Time",
|
287
|
+
940: "(UTC-03:00) Cayenne",
|
288
|
+
950: "(UTC-04:00) Georgetown, La Paz, San Juan",
|
289
|
+
960: "(UTC-04:00) Asuncion",
|
290
|
+
961: "Paraguay Daylight Time",
|
291
|
+
962: "Paraguay Standard Time",
|
292
|
+
970: "(UTC+12:00) Fiji, Marshall Is.",
|
293
|
+
980: "(UTC+12:00) Petropavlovsk-Kamchatsky",
|
294
|
+
981: "Kamchatka Daylight Time",
|
295
|
+
982: "Kamchatka Standard Time",
|
296
|
+
990: "(UTC-05:00) Bogota, Lima, Quito",
|
297
|
+
1010: "(UTC+06:00) Astana",
|
298
|
+
1020: "(UTC+06:00) Dhaka",
|
299
|
+
1021: "Bangladesh Daylight Time",
|
300
|
+
1022: "Bangladesh Standard Time",
|
301
|
+
1030: "(UTC+08:00) Irkutsk",
|
302
|
+
1040: "(UTC+08:00) Ulaanbaatar",
|
303
|
+
1041: "Ulaanbaatar Daylight Time",
|
304
|
+
1042: "Ulaanbaatar Standard Time",
|
305
|
+
1050: "(UTC-11:00) Samoa",
|
306
|
+
1060: "(UTC-11:00) Midway Islands",
|
307
|
+
1061: "North Pacific Daylight Time",
|
308
|
+
1062: "North Pacific Standard Time",
|
309
|
+
1070: "(UTC+04:00) Tbilisi",
|
310
|
+
1080: "(UTC+06:00) Novosibirsk",
|
311
|
+
1100: "(UTC-08:00) Baja California",
|
312
|
+
1110: "(UTC-03:00) Cayenne, Fortaleza",
|
313
|
+
1120: "(UTC-04:00) Cuiaba",
|
314
|
+
1130: "(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",
|
315
|
+
1140: "(UTC+12:00) Fiji",
|
316
|
+
1150: "(UTC-01:00) Coordinated Universal Time-01",
|
317
|
+
1151: "UTC-01",
|
318
|
+
1152: "UTC-01",
|
319
|
+
1160: "(UTC-02:00) Coordinated Universal Time-02",
|
320
|
+
1161: "UTC-02",
|
321
|
+
1162: "UTC-02",
|
322
|
+
1170: "(UTC-03:00) Coordinated Universal Time-03",
|
323
|
+
1171: "UTC-03",
|
324
|
+
1172: "UTC-03",
|
325
|
+
1180: "(UTC-04:00) Coordinated Universal Time-04",
|
326
|
+
1181: "UTC-04",
|
327
|
+
1182: "UTC-04",
|
328
|
+
1190: "(UTC-05:00) Coordinated Universal Time-05",
|
329
|
+
1191: "UTC-05",
|
330
|
+
1192: "UTC-05",
|
331
|
+
1200: "(UTC-06:00) Coordinated Universal Time-06",
|
332
|
+
1201: "UTC-06",
|
333
|
+
1202: "UTC-06",
|
334
|
+
1210: "(UTC-07:00) Coordinated Universal Time-07",
|
335
|
+
1211: "UTC-07",
|
336
|
+
1212: "UTC-07",
|
337
|
+
1220: "(UTC-08:00) Coordinated Universal Time-08",
|
338
|
+
1221: "UTC-08",
|
339
|
+
1222: "UTC-08",
|
340
|
+
1230: "(UTC-09:00) Coordinated Universal Time-09",
|
341
|
+
1231: "UTC-09",
|
342
|
+
1232: "UTC-09",
|
343
|
+
1240: "(UTC-10:00) Coordinated Universal Time-10",
|
344
|
+
1241: "UTC-10",
|
345
|
+
1242: "UTC-10",
|
346
|
+
1250: "(UTC-11:00) Coordinated Universal Time-11",
|
347
|
+
1251: "UTC-11",
|
348
|
+
1252: "UTC-11",
|
349
|
+
1260: "(UTC-12:00) Coordinated Universal Time-12",
|
350
|
+
1261: "UTC-12",
|
351
|
+
1262: "UTC-12",
|
352
|
+
1270: "(UTC+01:00) Coordinated Universal Time+01",
|
353
|
+
1271: "UTC+01",
|
354
|
+
1272: "UTC+01",
|
355
|
+
1280: "(UTC+02:00) Coordinated Universal Time+02",
|
356
|
+
1281: "UTC+02",
|
357
|
+
1282: "UTC+02",
|
358
|
+
1290: "(UTC+03:00) Coordinated Universal Time+03",
|
359
|
+
1291: "UTC+03",
|
360
|
+
1292: "UTC+03",
|
361
|
+
1300: "(UTC+04:00) Coordinated Universal Time+04",
|
362
|
+
1301: "UTC+04",
|
363
|
+
1302: "UTC+04",
|
364
|
+
1310: "(UTC+05:00) Coordinated Universal Time+05",
|
365
|
+
1311: "UTC+05",
|
366
|
+
1312: "UTC+05",
|
367
|
+
1320: "(UTC+06:00) Coordinated Universal Time+06",
|
368
|
+
1321: "UTC+06",
|
369
|
+
1322: "UTC+06",
|
370
|
+
1330: "(UTC+07:00) Coordinated Universal Time+07",
|
371
|
+
1331: "UTC+07",
|
372
|
+
1332: "UTC+07",
|
373
|
+
1340: "(UTC+08:00) Coordinated Universal Time+08",
|
374
|
+
1341: "UTC+08",
|
375
|
+
1342: "UTC+08",
|
376
|
+
1350: "(UTC+09:00) Coordinated Universal Time+09",
|
377
|
+
1351: "UTC+09",
|
378
|
+
1352: "UTC+09",
|
379
|
+
1360: "(UTC+10:00) Coordinated Universal Time+10",
|
380
|
+
1361: "UTC+10",
|
381
|
+
1362: "UTC+10",
|
382
|
+
1370: "(UTC+11:00) Coordinated Universal Time+11",
|
383
|
+
1371: "UTC+11",
|
384
|
+
1372: "UTC+11",
|
385
|
+
1380: "(UTC+12:00) Coordinated Universal Time+12",
|
386
|
+
1381: "UTC+12",
|
387
|
+
1382: "UTC+12",
|
388
|
+
1390: "(UTC+13:00) Coordinated Universal Time+13",
|
389
|
+
1391: "UTC+13",
|
390
|
+
1392: "UTC+13",
|
391
|
+
1410: "(UTC+02:00) Damascus",
|
392
|
+
1411: "Syria Daylight Time",
|
393
|
+
1412: "Syria Standard Time",
|
394
|
+
1420: "(UTC+12:00) Petropavlovsk-Kamchatsky - Old",
|
395
|
+
1440: "(UTC+01:00) Windhoek",
|
396
|
+
1460: "(UTC+11:00) Solomon Is., New Caledonia",
|
397
|
+
1470: "(UTC+11:00) Magadan",
|
398
|
+
1471: "Magadan Daylight Time",
|
399
|
+
1472: "Magadan Standard Time",
|
400
|
+
1490: "(UTC+02:00) Athens, Bucharest",
|
401
|
+
1500: "(UTC+02:00) Istanbul",
|
402
|
+
1501: "Turkey Daylight Time",
|
403
|
+
1502: "Turkey Standard Time",
|
404
|
+
1520: "(UTC+04:00) Moscow, St. Petersburg, Volgograd",
|
405
|
+
1530: "(UTC+06:00) Ekaterinburg",
|
406
|
+
1540: "(UTC+07:00) Novosibirsk",
|
407
|
+
1550: "(UTC+08:00) Krasnoyarsk",
|
408
|
+
1560: "(UTC+09:00) Irkutsk",
|
409
|
+
1570: "(UTC+10:00) Yakutsk",
|
410
|
+
1580: "(UTC+11:00) Vladivostok",
|
411
|
+
1590: "(UTC+12:00) Magadan",
|
412
|
+
1600: "(UTC+03:00) Kaliningrad",
|
413
|
+
1601: "Kaliningrad Daylight Time",
|
414
|
+
1602: "Kaliningrad Standard Time",
|
415
|
+
1620: "(UTC+03:00) Kaliningrad, Minsk",
|
416
|
+
1630: "(UTC+02:00) Nicosia",
|
417
|
+
1640: "(UTC+13:00) Samoa",
|
418
|
+
1660: "(UTC-03:00) Salvador",
|
419
|
+
1661: "Bahia Daylight Time",
|
420
|
+
1662: "Bahia Standard Time",
|
421
|
+
1680: "(UTC+02:00) E. Europe",
|
422
|
+
1700: "(UTC+03:00) Amman",
|
423
|
+
1720: "(UTC+02:00) Tripoli",
|
424
|
+
1721: "Libya Daylight Time",
|
425
|
+
1722: "Libya Standard Time",
|
426
|
+
1740: "(UTC+05:00) Ashgabat, Tashkent",
|
427
|
+
1760: "(UTC-02:00) Mid-Atlantic - Old",
|
428
|
+
1780: "(UTC+02:00) Tripoli",
|
429
|
+
1800: "(UTC+14:00) Kiritimati Island",
|
430
|
+
1801: "Line Islands Daylight Time",
|
431
|
+
1802: "Line Islands Standard Time",
|
432
|
+
1820: "(UTC+02:00) Kaliningrad (RTZ 1)",
|
433
|
+
1821: "Russia TZ 1 Daylight Time",
|
434
|
+
1822: "Russia TZ 1 Standard Time",
|
435
|
+
1830: "(UTC+03:00) Moscow, St. Petersburg, Volgograd (RTZ 2)",
|
436
|
+
1831: "Russia TZ 2 Daylight Time",
|
437
|
+
1832: "Russia TZ 2 Standard Time",
|
438
|
+
1840: "(UTC+05:00) Ekaterinburg (RTZ 4)",
|
439
|
+
1841: "Russia TZ 4 Daylight Time",
|
440
|
+
1842: "Russia TZ 4 Standard Time",
|
441
|
+
1850: "(UTC+06:00) Novosibirsk (RTZ 5)",
|
442
|
+
1851: "Russia TZ 5 Daylight Time",
|
443
|
+
1852: "Russia TZ 5 Standard Time",
|
444
|
+
1860: "(UTC+07:00) Krasnoyarsk (RTZ 6)",
|
445
|
+
1861: "Russia TZ 6 Daylight Time",
|
446
|
+
1862: "Russia TZ 6 Standard Time",
|
447
|
+
1870: "(UTC+08:00) Irkutsk (RTZ 7)",
|
448
|
+
1871: "Russia TZ 7 Daylight Time",
|
449
|
+
1872: "Russia TZ 7 Standard Time",
|
450
|
+
1880: "(UTC+09:00) Yakutsk (RTZ 8)",
|
451
|
+
1881: "Russia TZ 8 Daylight Time",
|
452
|
+
1882: "Russia TZ 8 Standard Time",
|
453
|
+
1890: "(UTC+04:00) Izhevsk, Samara (RTZ 3)",
|
454
|
+
1891: "Russia TZ 3 Daylight Time",
|
455
|
+
1892: "Russia TZ 3 Standard Time",
|
456
|
+
1910: "(UTC+11:00) Chokurdakh (RTZ 10)",
|
457
|
+
1911: "Russia TZ 10 Daylight Time",
|
458
|
+
1912: "Russia TZ 10 Standard Time",
|
459
|
+
1930: "(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky (RTZ 11)",
|
460
|
+
1931: "Russia TZ 11 Daylight Time",
|
461
|
+
1932: "Russia TZ 11 Standard Time",
|
462
|
+
1950: "(UTC+10:00) Vladivostok, Magadan (RTZ 9)",
|
463
|
+
1951: "Russia TZ 9 Daylight Time",
|
464
|
+
1952: "Russia TZ 9 Standard Time",
|
465
|
+
1970: "(UTC+03:00) Minsk",
|
466
|
+
1971: "Belarus Daylight Time",
|
467
|
+
1972: "Belarus Standard Time",
|
468
|
+
1980: "(UTC+10:00) Magadan",
|
469
|
+
2000: "(UTC-01:00) Cabo Verde Is.",
|
470
|
+
2001: "Cabo Verde Daylight Time",
|
471
|
+
2002: "Cabo Verde Standard Time",
|
472
|
+
2020: "(UTC-03:00) Santiago",
|
473
|
+
2040: "(UTC-05:00) Chetumal",
|
474
|
+
2041: "Eastern Daylight Time (Mexico)",
|
475
|
+
2042: "Eastern Standard Time (Mexico)",
|
476
|
+
2060: "(UTC+08:30) Pyongyang",
|
477
|
+
2061: "North Korea Daylight Time",
|
478
|
+
2062: "North Korea Standard Time",
|
479
|
+
2080: "(UTC-03:00) City of Buenos Aires",
|
480
|
+
2120: "(UTC+10:00) Vladivostok",
|
481
|
+
2140: "(UTC+09:00) Chita",
|
482
|
+
2141: "Transbaikal Daylight Time",
|
483
|
+
2142: "Transbaikal Standard Time",
|
484
|
+
2160: "(UTC+07:00) Barnaul, Gorno-Altaysk",
|
485
|
+
2161: "Altai Daylight Time",
|
486
|
+
2162: "Altai Standard Time",
|
487
|
+
2180: "(UTC+04:00) Astrakhan, Ulyanovsk",
|
488
|
+
2181: "Astrakhan Daylight Time",
|
489
|
+
2182: "Astrakhan Standard Time",
|
490
|
+
2190: "(UTC+05:00) Ekaterinburg",
|
491
|
+
2200: "(UTC+02:00) Kaliningrad",
|
492
|
+
2220: "(UTC+06:00) Novosibirsk",
|
493
|
+
2230: "(UTC+08:00) Irkutsk",
|
494
|
+
2240: "(UTC+07:00) Krasnoyarsk",
|
495
|
+
2250: "(UTC+11:00) Chokurdakh",
|
496
|
+
2260: "(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky",
|
497
|
+
2270: "(UTC+04:00) Izhevsk, Samara",
|
498
|
+
2280: "(UTC+03:00) Moscow, St. Petersburg, Volgograd",
|
499
|
+
2290: "(UTC+09:00) Yakutsk",
|
500
|
+
2310: "(UTC+11:00) Magadan, Sakhalin",
|
501
|
+
2320: "(UTC+11:00) Sakhalin",
|
502
|
+
2321: "Sakhalin Daylight Time",
|
503
|
+
2322: "Sakhalin Standard Time",
|
504
|
+
2340: "(UTC-05:00) Haiti",
|
505
|
+
2341: "Haiti Daylight Time",
|
506
|
+
2342: "Haiti Standard Time",
|
507
|
+
2370: "(UTC-06:00) Easter Island",
|
508
|
+
2371: "Easter Island Daylight Time",
|
509
|
+
2372: "Easter Island Standard Time",
|
510
|
+
2390: "(UTC-10:00) Aleutian Islands",
|
511
|
+
2391: "Aleutian Daylight Time",
|
512
|
+
2392: "Aleutian Standard Time",
|
513
|
+
2410: "(UTC-09:30) Marquesas Islands",
|
514
|
+
2411: "Marquesas Daylight Time",
|
515
|
+
2412: "Marquesas Standard Time",
|
516
|
+
2430: "(UTC-05:00) Havana",
|
517
|
+
2431: "Cuba Daylight Time",
|
518
|
+
2432: "Cuba Standard Time",
|
519
|
+
2450: "(UTC-03:00) Saint Pierre and Miquelon",
|
520
|
+
2451: "Saint Pierre Daylight Time",
|
521
|
+
2452: "Saint Pierre Standard Time",
|
522
|
+
2470: "(UTC+02:00) Gaza, Hebron",
|
523
|
+
2471: "West Bank Gaza Daylight Time",
|
524
|
+
2472: "West Bank Gaza Standard Time",
|
525
|
+
2490: "(UTC+08:45) Eucla",
|
526
|
+
2491: "Aus Central W. Daylight Time",
|
527
|
+
2492: "Aus Central W. Standard Time",
|
528
|
+
2510: "(UTC+10:30) Lord Howe Island",
|
529
|
+
2511: "Lord Howe Daylight Time",
|
530
|
+
2512: "Lord Howe Standard Time",
|
531
|
+
2530: "(UTC+12:45) Chatham Islands",
|
532
|
+
2531: "Chatham Islands Daylight Time",
|
533
|
+
2532: "Chatham Islands Standard Time",
|
534
|
+
2550: "(UTC+07:00) Hovd",
|
535
|
+
2551: "W. Mongolia Daylight Time",
|
536
|
+
2552: "W. Mongolia Standard Time",
|
537
|
+
2570: "(UTC-04:00) Turks and Caicos",
|
538
|
+
2571: "Turks and Caicos Daylight Time",
|
539
|
+
2572: "Turks and Caicos Standard Time",
|
540
|
+
2590: "(UTC-03:00) Araguaina",
|
541
|
+
2591: "Tocantins Daylight Time",
|
542
|
+
2592: "Tocantins Standard Time",
|
543
|
+
2610: "(UTC+11:00) Bougainville Island",
|
544
|
+
2611: "Bougainville Daylight Time",
|
545
|
+
2612: "Bougainville Standard Time",
|
546
|
+
2630: "(UTC+11:00) Norfolk Island",
|
547
|
+
2631: "Norfolk Daylight Time",
|
548
|
+
2632: "Norfolk Standard Time",
|
549
|
+
2650: "(UTC+00:00) Casablanca",
|
550
|
+
2670: "(UTC+00:00) Dublin, Edinburgh, Lisbon, London",
|
551
|
+
2690: "(UTC+00:00) Monrovia, Reykjavik",
|
552
|
+
2710: "(UTC+02:00) Chisinau",
|
553
|
+
2730: "(UTC-04:00) Caracas",
|
554
|
+
2750: "(UTC+07:00) Tomsk",
|
555
|
+
2751: "Tomsk Daylight Time",
|
556
|
+
2752: "Tomsk Standard Time",
|
557
|
+
2770: "(UTC+06:00) Omsk",
|
558
|
+
2771: "Omsk Daylight Time",
|
559
|
+
2772: "Omsk Standard Time",
|
560
|
+
2790: "(UTC+07:00) Novosibirsk",
|
561
|
+
2791: "Novosibirsk Daylight Time",
|
562
|
+
2792: "Novosibirsk Standard Time",
|
563
|
+
2810: "(UTC+03:00) Istanbul",
|
564
|
+
2840: "(UTC+04:00) Saratov",
|
565
|
+
2841: "Saratov Daylight Time",
|
566
|
+
2842: "Saratov Standard Time",
|
567
|
+
2870: "(UTC-03:00) Punta Arenas",
|
568
|
+
2871: "Magallanes Daylight Time",
|
569
|
+
2872: "Magallanes Standard Time",
|
570
|
+
2890: "(UTC+02:00) Khartoum",
|
571
|
+
2891: "Sudan Daylight Time",
|
572
|
+
2892: "Sudan Standard Time",
|
573
|
+
2910: "(UTC-05:00) Turks and Caicos",
|
574
|
+
2940: "(UTC+01:00) Sao Tome",
|
575
|
+
2941: "Sao Tome Daylight Time",
|
576
|
+
2942: "Sao Tome Standard Time",
|
577
|
+
2960: "(UTC+09:00) Pyongyang",
|
578
|
+
2980: "(UTC+03:00) Moscow, St. Petersburg",
|
579
|
+
2990: "(UTC+04:00) Volgograd",
|
580
|
+
2991: "Volgograd Daylight Time",
|
581
|
+
2992: "Volgograd Standard Time",
|
582
|
+
3010: "(UTC+01:00) Casablanca",
|
583
|
+
3030: "(UTC+00:00) Sao Tome",
|
584
|
+
3050: "(UTC+05:00) Qyzylorda",
|
585
|
+
3051: "Qyzylorda Daylight Time",
|
586
|
+
3052: "Qyzylorda Standard Time",
|
587
|
+
3080: "(UTC-08:00) Yukon",
|
588
|
+
3081: "Yukon Daylight Time",
|
589
|
+
3082: "Yukon Standard Time",
|
590
|
+
3090: "(UTC-07:00) Yukon",
|
591
|
+
3110: "(UTC+03:00) Volgograd",
|
592
|
+
3140: "(UTC+02:00) Juba",
|
593
|
+
3141: "South Sudan Daylight Time",
|
594
|
+
3142: "South Sudan Standard Time",
|
595
|
+
}
|
@@ -10,6 +10,7 @@ from dissect.target.exceptions import (
|
|
10
10
|
RegistryValueNotFoundError,
|
11
11
|
UnsupportedPluginError,
|
12
12
|
)
|
13
|
+
from dissect.target.helpers.mui import MUI_TZ_MAP
|
13
14
|
from dissect.target.helpers.regutil import RegistryKey
|
14
15
|
from dissect.target.plugin import Plugin, internal
|
15
16
|
|
@@ -137,9 +138,9 @@ class WindowsTimezone(tzinfo):
|
|
137
138
|
|
138
139
|
def __init__(self, name: str, key: RegistryKey):
|
139
140
|
self.name = name
|
140
|
-
self.display = key
|
141
|
-
self.dlt_name = key
|
142
|
-
self.std_name = key
|
141
|
+
self.display = translate_tz(key, "Display")
|
142
|
+
self.dlt_name = translate_tz(key, "Dlt")
|
143
|
+
self.std_name = translate_tz(key, "Std")
|
143
144
|
self.tzi = parse_tzi(key.value("TZI").value)
|
144
145
|
self.dynamic_dst = parse_dynamic_dst(key)
|
145
146
|
|
@@ -250,3 +251,19 @@ class DateTimePlugin(Plugin):
|
|
250
251
|
UTC datetime object.
|
251
252
|
"""
|
252
253
|
return self.local(dt).astimezone(timezone.utc)
|
254
|
+
|
255
|
+
|
256
|
+
def translate_tz(key: RegistryKey, name: str) -> str:
|
257
|
+
"""Translate a timezone resource string to English.
|
258
|
+
|
259
|
+
Non-English distributions of Windows contain a local translation in the "Display", "Dlt" and "Std" keys.
|
260
|
+
The ``MUI_*`` keys contain a reference to the English timezone name we want, e.g. "@tzres.dll,-1337".
|
261
|
+
"""
|
262
|
+
try:
|
263
|
+
string_id = int(key.value("MUI_" + name).value.replace("@tzres.dll,-", ""))
|
264
|
+
if translation := MUI_TZ_MAP.get(string_id):
|
265
|
+
return translation
|
266
|
+
except (RegistryValueNotFoundError, ValueError):
|
267
|
+
pass
|
268
|
+
|
269
|
+
return key.value(name).value
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: dissect.target
|
3
|
-
Version: 3.16.
|
3
|
+
Version: 3.16.dev8
|
4
4
|
Summary: This module ties all other Dissect modules together, it provides a programming API and command line tools which allow easy access to various data sources inside disk images or file collections (a.k.a. targets)
|
5
5
|
Author-email: Dissect Team <dissect@fox-it.com>
|
6
6
|
License: Affero General Public License v3
|
@@ -53,6 +53,7 @@ dissect/target/helpers/lazy.py,sha256=823VtmdWsbJyVZvNWopDhQdqq2i1xtj6b8IKfveboK
|
|
53
53
|
dissect/target/helpers/loaderutil.py,sha256=YHaIgTY_NhJ76TpNaTvXnEDaXU9XXs8F6UCiqq7LVTQ,2465
|
54
54
|
dissect/target/helpers/localeutil.py,sha256=Y4Fh4jDSGfm5356xSLMriUCN8SZP_FAHg_iodkAxNq4,1504
|
55
55
|
dissect/target/helpers/mount.py,sha256=JxhUYyEbDnHfzPpfuWy4nV9OwCJPoDSGdHHNiyvd_l0,3949
|
56
|
+
dissect/target/helpers/mui.py,sha256=i-7XoHbu4WO2fYapK9yGAMW04rFlgRispknc1KQIS5Q,22258
|
56
57
|
dissect/target/helpers/network_managers.py,sha256=tjqkVWn7i3PpBPkYnKUU0XxhqTTJlIjOc7Y2jpzdzA4,24525
|
57
58
|
dissect/target/helpers/polypath.py,sha256=h8p7m_OCNiQljGwoZh5Aflr9H2ot6CZr6WKq1OSw58o,2175
|
58
59
|
dissect/target/helpers/record.py,sha256=lWl7k2Mp9Axllm0tXzPGJx2zj2zONsyY_p5g424T0Lc,4826
|
@@ -243,7 +244,7 @@ dissect/target/plugins/os/windows/amcache.py,sha256=ZZNOs3bILTf0AGkDkhoatndl0j39
|
|
243
244
|
dissect/target/plugins/os/windows/catroot.py,sha256=yphQ_98Qvi1kKifGj7RH8j20f1l70KIzV_kFVpwB5Pg,5179
|
244
245
|
dissect/target/plugins/os/windows/cim.py,sha256=jsrpu6TZpBUh7VWI9AV2Ib5bebTwsvqOwRfa5gjJd7c,3056
|
245
246
|
dissect/target/plugins/os/windows/clfs.py,sha256=begVsZ-CY97Ksh6S1g03LjyBgu8ERY2hfNDWYPj0GXI,4872
|
246
|
-
dissect/target/plugins/os/windows/datetime.py,sha256=
|
247
|
+
dissect/target/plugins/os/windows/datetime.py,sha256=tuBOkewmbCW8sFXcYp5p82oM5RCsVwmtC79BDCTLz8k,9472
|
247
248
|
dissect/target/plugins/os/windows/defender.py,sha256=sLb0v8hTKZTJCq_v8xTzKphHFe4Y97m7RurmtcfNRWo,23736
|
248
249
|
dissect/target/plugins/os/windows/env.py,sha256=-u9F9xWy6PUbQmu5Tv_MDoVmy6YB-7CbHokIK_T3S44,13891
|
249
250
|
dissect/target/plugins/os/windows/generic.py,sha256=BSvDPfB9faU0uquMj0guw5tnR_97Nn0XAEE4k05BFSQ,22273
|
@@ -322,10 +323,10 @@ dissect/target/volumes/luks.py,sha256=OmCMsw6rCUXG1_plnLVLTpsvE1n_6WtoRUGQbpmu1z
|
|
322
323
|
dissect/target/volumes/lvm.py,sha256=wwQVR9I3G9YzmY6UxFsH2Y4MXGBcKL9aayWGCDTiWMU,2269
|
323
324
|
dissect/target/volumes/md.py,sha256=j1K1iKmspl0C_OJFc7-Q1BMWN2OCC5EVANIgVlJ_fIE,1673
|
324
325
|
dissect/target/volumes/vmfs.py,sha256=-LoUbn9WNwTtLi_4K34uV_-wDw2W5hgaqxZNj4UmqAQ,1730
|
325
|
-
dissect.target-3.16.
|
326
|
-
dissect.target-3.16.
|
327
|
-
dissect.target-3.16.
|
328
|
-
dissect.target-3.16.
|
329
|
-
dissect.target-3.16.
|
330
|
-
dissect.target-3.16.
|
331
|
-
dissect.target-3.16.
|
326
|
+
dissect.target-3.16.dev8.dist-info/COPYRIGHT,sha256=m-9ih2RVhMiXHI2bf_oNSSgHgkeIvaYRVfKTwFbnJPA,301
|
327
|
+
dissect.target-3.16.dev8.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
|
328
|
+
dissect.target-3.16.dev8.dist-info/METADATA,sha256=V6Wsr8sVUanEHxksDnzkZCcq1QHYtPh2aBf8qIazXqE,11112
|
329
|
+
dissect.target-3.16.dev8.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
330
|
+
dissect.target-3.16.dev8.dist-info/entry_points.txt,sha256=tvFPa-Ap-gakjaPwRc6Fl6mxHzxEZ_arAVU-IUYeo_s,447
|
331
|
+
dissect.target-3.16.dev8.dist-info/top_level.txt,sha256=Mn-CQzEYsAbkxrUI0TnplHuXnGVKzxpDw_po_sXpvv4,8
|
332
|
+
dissect.target-3.16.dev8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|