dlldiag/subcommands/trace.py
def parseLine(prefix, function, details):
		'''
		Parses a single output line from a loader snaps trace.
		Output lines follow this format:
		
		"ab12:cd34 @ 123456789 - Function - [ENTER|RETURN]: [DLL|Status]: PAYLOAD"
		'''
		components = details.split(':', 2)
		return {
			'prefix': prefix.split(' @ ', 2)[0],
			'function': function,
			'operation': components[0],
			'dll': components[2].strip() if components[0] == 'ENTER' else None,
			'result': components[2].strip() if components[0] == 'RETURN' else None
		}

		Parses a single output line from a loader snaps trace.
		Output lines follow this format:
		
		"ab12:cd34 @ 123456789 - Function - [ENTER|RETURN]: [DLL|Status]: PAYLOAD"
		
Parses a single output line from a loader snaps trace.
Output lines follow this format.


Parses a single output line from a loader snaps trace . Output lines follow this format .
def parseLine(prefix, function, details):
		components = details.split(':', 2)
		return {
			'prefix': prefix.split(' @ ', 2)[0],
			'function': function,
			'operation': components[0],
			'dll': components[2].strip() if components[0] == 'ENTER' else None,
			'result': components[2].strip() if components[0] == 'RETURN' else None
		}
def parseLine ( prefix , function , details ) : components = details . split ( ':' , 2 ) return { 'prefix' : prefix . split ( ' @ ' , 2 ) [ 0 ] , 'function' : function , 'operation' : components [ 0 ] , 'dll' : components [ 2 ] . strip ( ) if components [ 0 ] == 'ENTER' else None , 'result' : components [ 2 ] . strip ( ) if components [ 0 ] == 'RETURN' else None }
Parses a single output line from a loader snaps trace.
Parses a single output line from a loader snaps trace .
'''
		Parses a single output line from a loader snaps trace.
		Output lines follow this format:
		
		"ab12:cd34 @ 123456789 - Function - [ENTER|RETURN]: [DLL|Status]: PAYLOAD"
		'''
prefix
function
details