I have a crash dump (memory.dmp), and I want to extract process (calc.exe) from it. I tried:
!process 0 0 calc.exe
PROCESS ffffb501f8c23580 <-- this is the address
SessionId: 0 Cid: 035c Peb: 481e33000 ParentCid: 02c4
DirBase: 00f10002 ObjectTable: ffff938242cfc680 HandleCount: 1132.
Image: calc.exe
.process /r /p <address>
Process ffffb501`f8c23580 has invalid page directories
So I tried to extract the process memory dump myself.
!process 0 17 calc.exe
PROCESS ffffb501f8c23580
SessionId: 0 Cid: 035c Peb: 481e33000 ParentCid: 02c4
DirBase: 00f10002 ObjectTable: ffff938242cfc680 HandleCount: 1132.
Image: calc.exe
VadRoot ffffb501f8c23490 Vads 143 Clone 0 Private 1372. Modified 441. Locked 6.
DeviceMap ffff938242818d50
Token ffff93824b238360
ElapsedTime 01:09:04.412
UserTime 00:00:00.343
KernelTime 00:00:00.234
QuotaPoolUsage[PagedPool] 148080
QuotaPoolUsage[NonPagedPool] 24344
Working Set Sizes (now,min,max) (3997, 50, 345) (15988KB, 200KB, 1380KB)
PeakWorkingSetSize 3945
VirtualSize 2097247 Mb <--- is this normal?
PeakVirtualSize 2097249 Mb
PageFaultCount 6322
MemoryPriority BACKGROUND
BasePriority 9
CommitCharge 1532
What I intended to do is to just dump the memory at the address ffffb501f8c23580
for the size of the process.
However I notice that I get a virtual size of 2gb? Is there another way to extract this process dump from the crash dump? If so what's the the correct process to do this?