UserAssistParser / MUIcacheParser
Developed by Eric Zimmerman, these targeted command-line utilities parse offline NTUSER.DAT hives, automatically decode ROT13 strings, and output chronologically sorted CSV files.
The primary purpose of the UserAssist registry key is to populate the “Most Frequently Used” programs list in the Windows Start Menu. To achieve this, the explorer.exe process tracks every executable or LNK File launched directly via the GUI (e.g., double-clicking an icon).
NTUSER.DAT (User Profile)Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\CountInterestingly, Microsoft obfuscates the executable paths within this key using ROT13, a simple letter substitution cipher. While not a security boundary, it prevents simple string searches from immediately revealing the contents, requiring dedicated parsing tools.
Parsing the UserAssist key yields critical forensic metadata:
The MUIcache serves a completely different operational purpose. Windows uses this cache to store the “Friendly Names” of applications (extracted from the PE header metadata) to display them quickly in interface elements, such as the “Open With…” dialog box.
NTUSER.DATSoftware\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCacheMUIcache is populated when the Windows Shell inspects an executable. This can happen upon execution, but it can also be triggered simply by a user right-clicking the file or viewing its properties. Therefore, MUIcache proves existence and shell awareness, but it does not definitively prove execution.
| Feature | UserAssist | MUIcache |
|---|---|---|
| Proof of Execution | High (Proves GUI launch) | Low (Proves shell awareness) |
| Timestamp Available | Yes (Last execution time) | No |
| Run Count | Yes | No |
| Obfuscation | ROT13 | Cleartext |
In incident response, UserAssist is the ultimate tool for attributing an action to human intent and dismantling “I didn’t run that” defenses.
mimikatz.exe) or a portable hacking tool is found within a specific user’s UserAssist key, it confirms the tool was launched interactively within that user’s graphical session.Due to the ROT13 encoding of UserAssist and the binary structure of registry hives, manual analysis via regedit is inefficient and prone to error.
UserAssistParser / MUIcacheParser
Developed by Eric Zimmerman, these targeted command-line utilities parse offline NTUSER.DAT hives, automatically decode ROT13 strings, and output chronologically sorted CSV files.
RegRipper
Utilize the userassist_tln and muicache plugins within RegRipper to extract and format these specific keys during comprehensive registry triage.