Short answer: vmss2core converts a VM checkpoint (a snapshot with memory, .vmsn + .vmem, or a suspend file, .vmss + .vmem) into a memory dump for WinDbg or the Linux crash utility. Get the current build from VMware Workstation Pro or Fusion; the standalone Fling in Broadcom’s Free Downloads is older (build 8456865) and does not support Windows 11, Server 2019 or Server 2025. Run vmss2core.exe -W8 vm.vmsn vm.vmem for modern Windows, -N for Linux.

What the vmss2core tool does and which files it needs
vmss2core reads VMware checkpoint state and writes a core or memory dump that standard debuggers understand: memory.dmp for Windows (WinDbg) or vmss.core for Linux (crash, GDB). It is useful when a guest hangs and you cannot force a crash dump from inside the OS.
| Method | Files to copy | Notes |
|---|---|---|
| Snapshot with memory | <name>-SnapshotN.vmsn + <name>-SnapshotN.vmem | VM keeps running. Pick the newest pair by timestamp. |
| Suspend | <name>.vmss + <name>.vmem | Hardware version 11 or newer, or VMs on vVols, write a separate .vmem. Hardware version 10 or lower keeps everything in the .vmss. |
The .vmem file is the guest memory image. The .vmsn/.vmss file holds the device and CPU state. You always pass the state file first and the .vmem second.
vmss2core download: where to get it now
The old Flings site and vmwa.re/flings links are gone. Flings now live in the Free Downloads section of the Broadcom Support Portal, which needs a free Broadcom account (personal email addresses are accepted).
| Source | Version | Use it for |
|---|---|---|
| Broadcom Support Portal > Free Downloads > Flings > VMSS2Core | Legacy standalone build 8456865 (Windows and Linux binaries) | Older guests only. Not for Windows 11, Server 2019 or Server 2025. |
| VMware Workstation Pro (Free Downloads) | Current, bundled | Any supported guest, including Windows 11 and Server 2025 |
| VMware Fusion Pro (Free Downloads) | Current, bundled | Same, on macOS |
Once Workstation or Fusion is installed, the binary is here:
- Windows 64-bit:
C:\Program Files (x86)\VMware\VMware Workstation\vmss2core.exe - Windows 32-bit:
C:\Program Files\VMware\VMware Workstation\ - Linux:
/usr/bin/(Broadcom’s KB calls the Linux binaryvmss2core-Linux64; same syntax) - macOS (Fusion):
/Library/Application Support/VMware Fusion/
Get the latest vmss2core.exe without installing Workstation
- Download the VMware Workstation Pro installer from Free Downloads (Broadcom’s example:
VMware-Workstation-Full-25H2u1-25219725.exe). - Open the installer with 7-Zip, then open
Workstation.cabinside it. - Copy
vmss2core.exeand_zlib1.dllto one folder, for exampleC:\Temp\vmss2core. - Rename
_zlib1.dlltozlib1.dll. Without this you get “The code execution cannot proceed because zlib1.dll was not found.”
Get the snapshot or suspend files from ESXi

- Reproduce the problem so the guest is in the state you want to capture. The guest kernel must be loaded; a VM stuck in BIOS/POST or before the OS boots gives no usable data.
- In the vSphere Client, right-click the VM and take a snapshot with the VM’s memory included, or suspend it (Power > Suspend). From the ESXi Shell you can suspend with
vim-cmd vmsvc/getallvmsandvim-cmd vmsvc/power.suspend <VMID>. - Browse the datastore to the VM folder (
/vmfs/volumes/<datastore>/<vm_name>/) and download the.vmsnor.vmssfile and the matching.vmem. - Copy them to the folder that contains vmss2core.
On vSAN the .vmem is an object; Broadcom KB 326327 describes reading its object ID and exposing it with objtool before copying. For Horizon desktops, put full clones in maintenance mode before suspending; for instant clones, use a memory snapshot instead. The Broadcom KBs are written for ESXi 8.x; memory snapshots and suspend work the same way in vSphere 9.
vmss2core for Windows: -W or -W8
| Option | Guest OS (Broadcom KB 323788) |
|---|---|
-W | Windows 7, Windows 10, Windows Server 2008, 2008 R2 |
-W8 | Windows 8, 8.1, Windows 11, Windows Server 2012, 2016, 2019, 2025 |
-N | Linux |
vmss2core.exe -W8 test-vm.vmsn test-vm.vmem
vmss2core.exe -W8 test-vm.vmss test-vm.vmem
vmss2core.exe -W old-vm.vmsn old-vm.vmem
KB 181598 phrases it slightly differently: -W8 for Windows 8 / Server 2012 and later, -W for older Windows. The two KBs disagree on Windows 10. Success produces memory.dmp in the current folder.
vmss2core for Linux guests: -N
./vmss2core-Linux64 -N vm-Snapshot1.vmsn vm-Snapshot1.vmem
vmss2core.exe -N vm-Snapshot1.vmsn vm-Snapshot1.vmem
The result is vmss.core, a Red Hat crash-format core. The tool’s help says -N uses kernel structure offsets passed with -l, generated by getlinuxoffsets. Here is my own -N run from the original version of this post (vmss2core build 20800274, about 2,000 MB written, progress lines shortened):
vmss2core.exe -N VM-Snapshot1.vmsn VM-Snapshot1.vmem
vmss2core version 20800274 Copyright (C) 1998-2022 VMware, Inc. All rights reserved.
Started core writing.
Writing note section header.
Writing 1 memory section headers.
Writing notes.
... 100 MBs written.
... 200 MBs written.
...
... 1900 MBs written.
... 2000 MBs written.
Finished writing core.
Analyze the VMware memory dump
- Windows, WinDbg:
windbg -y <SymbolPath> -z memory.dmp, or File > Open Crash Dump (Ctrl+D). Start with!analyze -v, then.bugcheck,lmand!process 0 0. - Linux, crash:
crash vmlinux vmss.core. crash needs two arguments for a dump file: the uncompressed kernel (vmlinuxwith debug info matching the guest kernel) and the dump.
vmss2core errors and fixes
| Symptom | Cause and fix |
|---|---|
Unrecognized .vmss file (magic 4f434e45), 0 KB memory.dmp | VM files are encrypted (Windows 11 / Server 2025 with vTPM). Suspend the VM, decrypt on ESXi with crypto-util (below), convert the decrypted files with the current vmss2core. |
Error parsing Windows data. Cannot create memory.dmp | Windows kernel was not loaded yet (stuck in POST, no boot device, boot failure). Capture again after the OS is up. |
0 KB dump, or a .core file instead of memory.dmp | VBS or Hyper-V is enabled in the guest. Check vhv.enable = "TRUE" in the .vmx; the KB says to set it to "FALSE". Also update old Windows builds. |
Access is Denied | Use the latest vmss2core from Workstation Pro. |
EFI VM freezes on a black screen, Cannot translate linear address | EFI SMM deadlock on hardware version below 14 (ESXi 7.0). Fixed in ESXi 8.0; workaround is hardware version 14 or later (KB 318382). |
crypto-util encobj decrypt --related vm-###.vmx vm-###.vmem vm-###-decrypted.vmem
crypto-util encobj decrypt --related vm-###.vmx vm-###.vmss vm-###-decrypted.vmss
vmss2core.exe -W8 vm-###-decrypted.vmss vm-###-decrypted.vmem
Do not remove the vTPM to get around encryption: Broadcom warns that this makes encrypted data unrecoverable and stops Windows 11 from booting.
vmss2core options reference
Output of vmss2core.exe without arguments on my machine (build 20800274, abridged):
Usage:
GENERAL: vmss2core [[options] | [-l linuxoffsets options]] \
<vmss file> [<vmem file>]
Without options one vmss.core<N> per vCPU with linear view of
memory is generated.
-q Quiet(er) operation.
-M Create core file with physical memory view (vmss.core).
-l str Offset stringset expressed as 0xHEXNUM,0xHEXNUM,... .
-N Red Hat crash core file for arbitrary Linux version
described by the "-l" option (vmss.core).
-N4 Red Hat crash core file for Linux 2.4 (vmss.core).
-N6 Red Hat crash core file for Linux 2.6 (vmss.core).
-O <x> Use <x> as the offset of the entrypoint.
-U <i> Create linear core file for vCPU <i> only.
-P Print list of processes in Linux VM.
-P<pid> Create core file for Linux process <pid> (core.<pid>).
-S Create core for 64-bit Solaris (vmcore.0, unix.0).
-S32 Create core for 32-bit Solaris (vmcore.0, unix.0).
-W Create WinDbg file (memory.dmp) with commonly used
build numbers ("2195" for Win32, "6000" for Win64).
-W<num> Create WinDbg file (memory.dmp), with <num> as the
build number (for example: "-W2600").
-WK Create a Windows kernel memory only dump file (memory.dmp).
-WDDB<num> or -W8DDB<num>
Create WinDbg file (memory.dmp), with <num> as the
debugger data block address in hex.
-WSCAN Scan all of memory for Windows debugger data blocks
(instead of just low 256 MB).
-W8 Generate a memory dump file from a suspended Windows 8 VM.
-X32 <mach_kernel> Create core for 32-bit Mac OS.
-X64 <mach_kernel> Create core for 64-bit Mac OS.
-F Create core for an EFI firmware exception.
Sources
- Broadcom KB 323788: Converting a snapshot file to memory dump using the vmss2core tool (formerly VMware KB 2003941)
- Broadcom KB 382514: Where to download vmss2core.exe
- Broadcom KB 439391: Obtaining the latest version of vmss2core.exe without installing VMware Workstation Pro
- Broadcom KB 181598: Converting virtual machine snapshots to memory dumps in VMware vSphere
- Broadcom KB 414452: Unable to convert a Windows 11 VM snapshot to a memory dump
- Broadcom KB 326327: Suspending a virtual machine on ESX/ESXi to collect diagnostic information
- Broadcom KB 318382: EFI firmware freeze with black screen when creating VM memory dump
- Broadcom Support Portal: Free Downloads (login required)
- Microsoft Learn: Analyze a kernel-mode dump file by using WinDbg
- crash-utility/crash README