2010-12-15 00:14:14 +08:00
|
|
|
#
|
|
|
|
#
|
|
|
|
#
|
|
|
|
|
|
|
|
import sys
|
|
|
|
from pykd import *
|
|
|
|
|
|
|
|
def symreload():
|
|
|
|
|
|
|
|
reloadModule( "/f" )
|
|
|
|
|
|
|
|
PsLoadedModuleList = getOffset( "nt", "PsLoadedModuleList" )
|
|
|
|
|
|
|
|
loadedModulesInfo = typedVarList( PsLoadedModuleList, "nt", "_LDR_DATA_TABLE_ENTRY", "InLoadOrderLinks" )
|
|
|
|
|
|
|
|
for module in loadedModulesInfo:
|
|
|
|
|
|
|
|
if "" == getPdbFile( module.DllBase ):
|
|
|
|
baseName = loadUnicodeString( module.BaseDllName.getAddress() )
|
2011-01-15 01:58:28 +08:00
|
|
|
if baseName=="ntoskrnl.exe": baseName = "nt"
|
2010-12-15 00:14:14 +08:00
|
|
|
reloadModule( " /u " + str(baseName) )
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
|
|
|
if not isSessionStart():
|
|
|
|
dprintln( "script is launch out of windbg" )
|
|
|
|
quit( 0 )
|
|
|
|
|
|
|
|
symreload()
|