dissect.target 3.16.dev6__tar.gz → 3.16.dev8__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (550) hide show
  1. {dissect.target-3.16.dev6/dissect.target.egg-info → dissect.target-3.16.dev8}/PKG-INFO +1 -1
  2. dissect.target-3.16.dev8/dissect/target/helpers/mui.py +595 -0
  3. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/iexplore.py +1 -1
  4. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/datetime.py +20 -3
  5. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8/dissect.target.egg-info}/PKG-INFO +1 -1
  6. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect.target.egg-info/SOURCES.txt +1 -0
  7. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/browser/test_iexplore.py +2 -1
  8. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_datetime.py +56 -0
  9. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/COPYRIGHT +0 -0
  10. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/LICENSE +0 -0
  11. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/MANIFEST.in +0 -0
  12. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/README.md +0 -0
  13. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/__init__.py +0 -0
  14. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/container.py +0 -0
  15. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/__init__.py +0 -0
  16. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/asdf.py +0 -0
  17. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/ewf.py +0 -0
  18. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/hdd.py +0 -0
  19. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/hds.py +0 -0
  20. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/qcow2.py +0 -0
  21. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/raw.py +0 -0
  22. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/split.py +0 -0
  23. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/vdi.py +0 -0
  24. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/vhd.py +0 -0
  25. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/vhdx.py +0 -0
  26. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/containers/vmdk.py +0 -0
  27. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/data/autocompletion/target_bash_completion.sh +0 -0
  28. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/exceptions.py +0 -0
  29. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystem.py +0 -0
  30. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/__init__.py +0 -0
  31. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/ad1.py +0 -0
  32. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/btrfs.py +0 -0
  33. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/cb.py +0 -0
  34. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/config.py +0 -0
  35. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/dir.py +0 -0
  36. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/exfat.py +0 -0
  37. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/extfs.py +0 -0
  38. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/fat.py +0 -0
  39. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/ffs.py +0 -0
  40. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/itunes.py +0 -0
  41. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/jffs.py +0 -0
  42. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/ntfs.py +0 -0
  43. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/smb.py +0 -0
  44. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/squashfs.py +0 -0
  45. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/tar.py +0 -0
  46. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/vmfs.py +0 -0
  47. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/xfs.py +0 -0
  48. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/filesystems/zip.py +0 -0
  49. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/__init__.py +0 -0
  50. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/cache.py +0 -0
  51. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/compat/__init__.py +0 -0
  52. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/compat/path_310.py +0 -0
  53. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/compat/path_311.py +0 -0
  54. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/compat/path_312.py +0 -0
  55. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/compat/path_39.py +0 -0
  56. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/compat/path_common.py +0 -0
  57. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/config.py +0 -0
  58. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/configutil.py +0 -0
  59. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/cyber.py +0 -0
  60. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/data/windowsZones.xml +0 -0
  61. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/descriptor_extensions.py +0 -0
  62. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/docs.py +0 -0
  63. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/fsutil.py +0 -0
  64. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/hashutil.py +0 -0
  65. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/keychain.py +0 -0
  66. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/lazy.py +0 -0
  67. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/loaderutil.py +0 -0
  68. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/localeutil.py +0 -0
  69. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/mount.py +0 -0
  70. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/network_managers.py +0 -0
  71. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/polypath.py +0 -0
  72. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/record.py +0 -0
  73. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/record_modifier.py +0 -0
  74. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/regutil.py +0 -0
  75. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/shell_folder_ids.py +0 -0
  76. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/ssh.py +0 -0
  77. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/targetd.py +0 -0
  78. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/helpers/utils.py +0 -0
  79. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loader.py +0 -0
  80. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/__init__.py +0 -0
  81. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/ad1.py +0 -0
  82. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/asdf.py +0 -0
  83. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/cb.py +0 -0
  84. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/cyber.py +0 -0
  85. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/dir.py +0 -0
  86. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/hyperv.py +0 -0
  87. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/itunes.py +0 -0
  88. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/kape.py +0 -0
  89. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/local.py +0 -0
  90. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/log.py +0 -0
  91. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/multiraw.py +0 -0
  92. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/ova.py +0 -0
  93. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/ovf.py +0 -0
  94. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/phobos.py +0 -0
  95. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/profile.py +0 -0
  96. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/pvm.py +0 -0
  97. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/pvs.py +0 -0
  98. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/raw.py +0 -0
  99. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/remote.py +0 -0
  100. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/res.py +0 -0
  101. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/smb.py +0 -0
  102. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/tanium.py +0 -0
  103. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/tar.py +0 -0
  104. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/target.py +0 -0
  105. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/targetd.py +0 -0
  106. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/utm.py +0 -0
  107. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/vb.py +0 -0
  108. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/vbox.py +0 -0
  109. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/velociraptor.py +0 -0
  110. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/vma.py +0 -0
  111. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/vmwarevm.py +0 -0
  112. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/vmx.py +0 -0
  113. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/loaders/xva.py +0 -0
  114. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugin.py +0 -0
  115. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/__init__.py +0 -0
  116. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/__init__.py +0 -0
  117. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/av/__init__.py +0 -0
  118. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/av/mcafee.py +0 -0
  119. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/av/sophos.py +0 -0
  120. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/av/symantec.py +0 -0
  121. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/av/trendmicro.py +0 -0
  122. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/__init__.py +0 -0
  123. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/browser.py +0 -0
  124. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/chrome.py +0 -0
  125. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/chromium.py +0 -0
  126. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/edge.py +0 -0
  127. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/browser/firefox.py +0 -0
  128. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/container/__init__.py +0 -0
  129. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/container/docker.py +0 -0
  130. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/remoteaccess/__init__.py +0 -0
  131. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/remoteaccess/anydesk.py +0 -0
  132. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/remoteaccess/remoteaccess.py +0 -0
  133. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/remoteaccess/teamviewer.py +0 -0
  134. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/shell/__init__.py +0 -0
  135. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/shell/powershell.py +0 -0
  136. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/ssh/__init__.py +0 -0
  137. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/ssh/openssh.py +0 -0
  138. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/ssh/opensshd.py +0 -0
  139. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/ssh/putty.py +0 -0
  140. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/ssh/ssh.py +0 -0
  141. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/vpn/__init__.py +0 -0
  142. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/vpn/openvpn.py +0 -0
  143. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/vpn/wireguard.py +0 -0
  144. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webhosting/__init__.py +0 -0
  145. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webhosting/cpanel.py +0 -0
  146. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/__init__.py +0 -0
  147. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/apache.py +0 -0
  148. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/caddy.py +0 -0
  149. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/citrix.py +0 -0
  150. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/iis.py +0 -0
  151. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/nginx.py +0 -0
  152. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/apps/webserver/webserver.py +0 -0
  153. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/child/__init__.py +0 -0
  154. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/child/esxi.py +0 -0
  155. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/child/hyperv.py +0 -0
  156. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/child/virtuozzo.py +0 -0
  157. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/child/vmware_workstation.py +0 -0
  158. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/child/wsl.py +0 -0
  159. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/__init__.py +0 -0
  160. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/acquire_handles.py +0 -0
  161. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/acquire_hash.py +0 -0
  162. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/icat.py +0 -0
  163. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/ntfs/__init__.py +0 -0
  164. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/ntfs/mft.py +0 -0
  165. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/ntfs/mft_timeline.py +0 -0
  166. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/ntfs/usnjrnl.py +0 -0
  167. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/ntfs/utils.py +0 -0
  168. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/resolver.py +0 -0
  169. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/unix/__init__.py +0 -0
  170. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/unix/capability.py +0 -0
  171. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/unix/suid.py +0 -0
  172. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/walkfs.py +0 -0
  173. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/filesystem/yara.py +0 -0
  174. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/__init__.py +0 -0
  175. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/config.py +0 -0
  176. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/default.py +0 -0
  177. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/example.py +0 -0
  178. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/loaders.py +0 -0
  179. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/osinfo.py +0 -0
  180. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/plugins.py +0 -0
  181. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/scrape.py +0 -0
  182. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/general/users.py +0 -0
  183. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/__init__.py +0 -0
  184. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/__init__.py +0 -0
  185. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/_os.py +0 -0
  186. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/_os.py +0 -0
  187. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/citrix/__init__.py +0 -0
  188. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/citrix/_os.py +0 -0
  189. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/citrix/history.py +0 -0
  190. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/freebsd/__init__.py +0 -0
  191. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/freebsd/_os.py +0 -0
  192. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/ios/__init__.py +0 -0
  193. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/ios/_os.py +0 -0
  194. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/openbsd/__init__.py +0 -0
  195. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/openbsd/_os.py +0 -0
  196. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/osx/__init__.py +0 -0
  197. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/osx/_os.py +0 -0
  198. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/bsd/osx/user.py +0 -0
  199. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/cronjobs.py +0 -0
  200. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/datetime.py +0 -0
  201. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/esxi/__init__.py +0 -0
  202. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/esxi/_os.py +0 -0
  203. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/etc.py +0 -0
  204. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/generic.py +0 -0
  205. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/history.py +0 -0
  206. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/__init__.py +0 -0
  207. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/_os.py +0 -0
  208. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/android/__init__.py +0 -0
  209. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/android/_os.py +0 -0
  210. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/cmdline.py +0 -0
  211. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/debian/__init__.py +0 -0
  212. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/debian/_os.py +0 -0
  213. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/debian/apt.py +0 -0
  214. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/debian/dpkg.py +0 -0
  215. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/debian/vyos/__init__.py +0 -0
  216. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/debian/vyos/_os.py +0 -0
  217. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/environ.py +0 -0
  218. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/fortios/__init__.py +0 -0
  219. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/fortios/_os.py +0 -0
  220. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/fortios/generic.py +0 -0
  221. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/fortios/locale.py +0 -0
  222. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/iptables.py +0 -0
  223. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/modules.py +0 -0
  224. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/netstat.py +0 -0
  225. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/proc.py +0 -0
  226. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/processes.py +0 -0
  227. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/redhat/__init__.py +0 -0
  228. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/redhat/_os.py +0 -0
  229. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/redhat/yum.py +0 -0
  230. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/services.py +0 -0
  231. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/sockets.py +0 -0
  232. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/suse/__init__.py +0 -0
  233. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/suse/_os.py +0 -0
  234. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/linux/suse/zypper.py +0 -0
  235. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/locale.py +0 -0
  236. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/__init__.py +0 -0
  237. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/atop.py +0 -0
  238. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/audit.py +0 -0
  239. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/auth.py +0 -0
  240. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/journal.py +0 -0
  241. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/lastlog.py +0 -0
  242. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/messages.py +0 -0
  243. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/log/utmp.py +0 -0
  244. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/packagemanager.py +0 -0
  245. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/unix/shadow.py +0 -0
  246. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/__init__.py +0 -0
  247. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/_os.py +0 -0
  248. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/activitiescache.py +0 -0
  249. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/adpolicy.py +0 -0
  250. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/amcache.py +0 -0
  251. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/catroot.py +0 -0
  252. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/cim.py +0 -0
  253. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/clfs.py +0 -0
  254. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/defender.py +0 -0
  255. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/dpapi/__init__.py +0 -0
  256. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/dpapi/blob.py +0 -0
  257. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/dpapi/crypto.py +0 -0
  258. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/dpapi/dpapi.py +0 -0
  259. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/dpapi/master_key.py +0 -0
  260. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/env.py +0 -0
  261. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/exchange/__init__.py +0 -0
  262. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/exchange/exchange.py +0 -0
  263. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/generic.py +0 -0
  264. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/lnk.py +0 -0
  265. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/locale.py +0 -0
  266. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/__init__.py +0 -0
  267. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/amcache.py +0 -0
  268. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/etl.py +0 -0
  269. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/evt.py +0 -0
  270. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/evtx.py +0 -0
  271. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/pfro.py +0 -0
  272. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/log/schedlgu.py +0 -0
  273. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/notifications.py +0 -0
  274. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/prefetch.py +0 -0
  275. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/recyclebin.py +0 -0
  276. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/7zip.py +0 -0
  277. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/__init__.py +0 -0
  278. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/appxdebugkeys.py +0 -0
  279. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/auditpol.py +0 -0
  280. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/bam.py +0 -0
  281. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/cit.py +0 -0
  282. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/clsid.py +0 -0
  283. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/firewall.py +0 -0
  284. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/mru.py +0 -0
  285. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/muicache.py +0 -0
  286. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/nethist.py +0 -0
  287. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/recentfilecache.py +0 -0
  288. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/regf.py +0 -0
  289. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/runkeys.py +0 -0
  290. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/shellbags.py +0 -0
  291. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/shimcache.py +0 -0
  292. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/trusteddocs.py +0 -0
  293. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/usb.py +0 -0
  294. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/regf/userassist.py +0 -0
  295. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/registry.py +0 -0
  296. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/sam.py +0 -0
  297. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/services.py +0 -0
  298. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/sru.py +0 -0
  299. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/startupinfo.py +0 -0
  300. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/syscache.py +0 -0
  301. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/task_helpers/__init__.py +0 -0
  302. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/task_helpers/tasks_job.py +0 -0
  303. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/task_helpers/tasks_records.py +0 -0
  304. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/task_helpers/tasks_xml.py +0 -0
  305. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/tasks.py +0 -0
  306. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/thumbcache.py +0 -0
  307. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/ual.py +0 -0
  308. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/plugins/os/windows/wer.py +0 -0
  309. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/report.py +0 -0
  310. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/target.py +0 -0
  311. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/__init__.py +0 -0
  312. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/build_pluginlist.py +0 -0
  313. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/dd.py +0 -0
  314. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/dump/__init__.py +0 -0
  315. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/dump/run.py +0 -0
  316. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/dump/state.py +0 -0
  317. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/dump/utils.py +0 -0
  318. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/fs.py +0 -0
  319. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/info.py +0 -0
  320. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/logging.py +0 -0
  321. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/mount.py +0 -0
  322. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/query.py +0 -0
  323. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/reg.py +0 -0
  324. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/shell.py +0 -0
  325. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/tools/utils.py +0 -0
  326. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volume.py +0 -0
  327. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/__init__.py +0 -0
  328. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/bde.py +0 -0
  329. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/ddf.py +0 -0
  330. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/disk.py +0 -0
  331. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/luks.py +0 -0
  332. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/lvm.py +0 -0
  333. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/md.py +0 -0
  334. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect/target/volumes/vmfs.py +0 -0
  335. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect.target.egg-info/dependency_links.txt +0 -0
  336. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect.target.egg-info/entry_points.txt +0 -0
  337. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect.target.egg-info/requires.txt +0 -0
  338. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/dissect.target.egg-info/top_level.txt +0 -0
  339. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/pyproject.toml +0 -0
  340. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/setup.cfg +0 -0
  341. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/__init__.py +0 -0
  342. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/_docs/Makefile +0 -0
  343. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/_docs/conf.py +0 -0
  344. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/_docs/index.rst +0 -0
  345. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/_utils.py +0 -0
  346. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/conftest.py +0 -0
  347. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/containers/__init__.py +0 -0
  348. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/containers/test_split.py +0 -0
  349. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/__init__.py +0 -0
  350. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_cb.py +0 -0
  351. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_config.py +0 -0
  352. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_dir.py +0 -0
  353. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_exfat.py +0 -0
  354. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_fat.py +0 -0
  355. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_ntfs.py +0 -0
  356. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_smb.py +0 -0
  357. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_tar.py +0 -0
  358. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/filesystems/test_zip.py +0 -0
  359. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/__init__.py +0 -0
  360. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_cache.py +0 -0
  361. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_config.py +0 -0
  362. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_configutil.py +0 -0
  363. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_docs.py +0 -0
  364. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_fsutil.py +0 -0
  365. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_hashutil.py +0 -0
  366. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_keychain.py +0 -0
  367. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_loaderutil.py +0 -0
  368. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_localeutil.py +0 -0
  369. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_modifier.py +0 -0
  370. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_record.py +0 -0
  371. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_regutil.py +0 -0
  372. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/helpers/test_utils.py +0 -0
  373. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/__init__.py +0 -0
  374. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_asdf.py +0 -0
  375. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_cb.py +0 -0
  376. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_dir.py +0 -0
  377. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_hyperv.py +0 -0
  378. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_kape.py +0 -0
  379. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_local.py +0 -0
  380. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_log.py +0 -0
  381. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_multiraw.py +0 -0
  382. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_ova.py +0 -0
  383. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_ovf.py +0 -0
  384. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_phobos.py +0 -0
  385. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_pvm.py +0 -0
  386. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_pvs.py +0 -0
  387. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_remote.py +0 -0
  388. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_smb.py +0 -0
  389. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_tanium.py +0 -0
  390. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_tar.py +0 -0
  391. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_utm.py +0 -0
  392. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_vbox.py +0 -0
  393. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_velociraptor.py +0 -0
  394. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/loaders/test_vmwarevm.py +0 -0
  395. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/__init__.py +0 -0
  396. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/__init__.py +0 -0
  397. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/av/__init__.py +0 -0
  398. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/av/test_mcafee.py +0 -0
  399. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/av/test_sophos.py +0 -0
  400. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/av/test_symantec.py +0 -0
  401. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/av/test_trendmicro.py +0 -0
  402. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/browser/__init__.py +0 -0
  403. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/browser/test_chrome.py +0 -0
  404. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/browser/test_chromium.py +0 -0
  405. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/browser/test_edge.py +0 -0
  406. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/browser/test_firefox.py +0 -0
  407. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/container/__init__.py +0 -0
  408. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/container/test_docker.py +0 -0
  409. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/remoteaccess/__init__.py +0 -0
  410. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/remoteaccess/test_anydesk.py +0 -0
  411. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/remoteaccess/test_teamviewer.py +0 -0
  412. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/shell/__init__.py +0 -0
  413. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/shell/test_powershell.py +0 -0
  414. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/ssh/__init__.py +0 -0
  415. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/ssh/test_openssh.py +0 -0
  416. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/ssh/test_opensshd.py +0 -0
  417. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/ssh/test_putty.py +0 -0
  418. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/vpn/__init__.py +0 -0
  419. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/vpn/test_openvpn.py +0 -0
  420. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/vpn/test_wireguard.py +0 -0
  421. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webhosting/__init__.py +0 -0
  422. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webhosting/test_cpanel.py +0 -0
  423. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/__init__.py +0 -0
  424. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/test_apache.py +0 -0
  425. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/test_caddy.py +0 -0
  426. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/test_citrix.py +0 -0
  427. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/test_iis.py +0 -0
  428. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/test_nginx.py +0 -0
  429. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/apps/webserver/test_webserver.py +0 -0
  430. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/child/__init__.py +0 -0
  431. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/child/test_hyperv.py +0 -0
  432. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/child/test_virtuozzo.py +0 -0
  433. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/child/test_wsl.py +0 -0
  434. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/__init__.py +0 -0
  435. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/ntfs/__init__.py +0 -0
  436. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/ntfs/test_mft.py +0 -0
  437. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/ntfs/test_usnjrnl.py +0 -0
  438. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/test_acquire_handles.py +0 -0
  439. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/test_acquire_hash.py +0 -0
  440. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/test_icat.py +0 -0
  441. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/test_resolver.py +0 -0
  442. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/test_walkfs.py +0 -0
  443. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/test_yara.py +0 -0
  444. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/unix/__init__.py +0 -0
  445. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/unix/test_capability.py +0 -0
  446. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/filesystem/unix/test_suid.py +0 -0
  447. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/general/__init__.py +0 -0
  448. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/general/test_config.py +0 -0
  449. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/general/test_default.py +0 -0
  450. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/general/test_plugins.py +0 -0
  451. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/general/test_scrape.py +0 -0
  452. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/general/test_users.py +0 -0
  453. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/__init__.py +0 -0
  454. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/__init__.py +0 -0
  455. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/__init__.py +0 -0
  456. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/citrix/__init__.py +0 -0
  457. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/citrix/test__os.py +0 -0
  458. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/citrix/test_history.py +0 -0
  459. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/osx/__init__.py +0 -0
  460. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/osx/test__os.py +0 -0
  461. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/bsd/osx/test_user.py +0 -0
  462. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/__init__.py +0 -0
  463. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/android/__init__.py +0 -0
  464. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/android/test__os.py +0 -0
  465. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/debian/__init__.py +0 -0
  466. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/debian/test_apt.py +0 -0
  467. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/debian/test_dpkg.py +0 -0
  468. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/redhat/__init__.py +0 -0
  469. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/redhat/test_yum.py +0 -0
  470. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/suse/__init__.py +0 -0
  471. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/suse/test_zypper.py +0 -0
  472. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_cmdline.py +0 -0
  473. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_environ.py +0 -0
  474. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_iptables.py +0 -0
  475. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_modules.py +0 -0
  476. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_netstat.py +0 -0
  477. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_proc.py +0 -0
  478. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_processes.py +0 -0
  479. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_services.py +0 -0
  480. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/linux/test_sockets.py +0 -0
  481. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/__init__.py +0 -0
  482. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/test_atop.py +0 -0
  483. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/test_audit.py +0 -0
  484. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/test_auth.py +0 -0
  485. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/test_lastlog.py +0 -0
  486. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/test_messages.py +0 -0
  487. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/log/test_utmp.py +0 -0
  488. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test__os.py +0 -0
  489. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_generic.py +0 -0
  490. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_history.py +0 -0
  491. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_ips.py +0 -0
  492. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_journal.py +0 -0
  493. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_locale.py +0 -0
  494. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_packagemanager.py +0 -0
  495. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_shadow.py +0 -0
  496. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_users.py +0 -0
  497. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/unix/test_version.py +0 -0
  498. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/__init__.py +0 -0
  499. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/log/test_etl.py +0 -0
  500. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/log/test_evt.py +0 -0
  501. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/log/test_evtx.py +0 -0
  502. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/log/test_schedlgu.py +0 -0
  503. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/__init__.py +0 -0
  504. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/test_appxdebugkeys.py +0 -0
  505. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/test_cit.py +0 -0
  506. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/test_clsid.py +0 -0
  507. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/test_muicache.py +0 -0
  508. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/test_trusteddocs.py +0 -0
  509. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/regf/test_userassist.py +0 -0
  510. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test__os.py +0 -0
  511. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_adpolicy.py +0 -0
  512. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_amcache.py +0 -0
  513. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_clfs.py +0 -0
  514. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_defender.py +0 -0
  515. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_dpapi.py +0 -0
  516. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_env.py +0 -0
  517. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_generic.py +0 -0
  518. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_lnk.py +0 -0
  519. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_locale.py +0 -0
  520. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_mru.py +0 -0
  521. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_notifications.py +0 -0
  522. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_prefetch.py +0 -0
  523. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_recyclebin.py +0 -0
  524. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_registry.py +0 -0
  525. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_sam.py +0 -0
  526. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_shimcache.py +0 -0
  527. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_sru.py +0 -0
  528. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_syscache.py +0 -0
  529. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_tasks.py +0 -0
  530. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_thumbcache.py +0 -0
  531. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_ual.py +0 -0
  532. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/plugins/os/windows/test_wer.py +0 -0
  533. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_container.py +0 -0
  534. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_filesystem.py +0 -0
  535. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_plugin.py +0 -0
  536. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_registration.py +0 -0
  537. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_report.py +0 -0
  538. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_target.py +0 -0
  539. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/test_volume.py +0 -0
  540. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/__init__.py +0 -0
  541. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/test_dump.py +0 -0
  542. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/test_fs.py +0 -0
  543. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/test_mount.py +0 -0
  544. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/test_query.py +0 -0
  545. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/test_shell.py +0 -0
  546. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/tools/test_utils.py +0 -0
  547. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/volumes/__init__.py +0 -0
  548. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/volumes/test_bde.py +0 -0
  549. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tests/volumes/test_md.py +0 -0
  550. {dissect.target-3.16.dev6 → dissect.target-3.16.dev8}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dissect.target
3
- Version: 3.16.dev6
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
@@ -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
+ }
@@ -212,7 +212,7 @@ class InternetExplorerPlugin(BrowserPlugin):
212
212
  ts_end=ts_end,
213
213
  browser="iexplore",
214
214
  id=container_record.EntryId,
215
- path=down_path,
215
+ path=self.target.fs.path(down_path),
216
216
  url=down_url,
217
217
  size=None,
218
218
  state=None,
@@ -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.value("Display").value
141
- self.dlt_name = key.value("Dlt").value
142
- self.std_name = key.value("Std").value
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.dev6
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
@@ -65,6 +65,7 @@ dissect/target/helpers/lazy.py
65
65
  dissect/target/helpers/loaderutil.py
66
66
  dissect/target/helpers/localeutil.py
67
67
  dissect/target/helpers/mount.py
68
+ dissect/target/helpers/mui.py
68
69
  dissect/target/helpers/network_managers.py
69
70
  dissect/target/helpers/polypath.py
70
71
  dissect/target/helpers/record.py