kcrong 2015. 1. 15. 13:56
# -*- coding: cp949 -*-
import my_debugger

debugger = my_debugger.debugger()
pid = raw_input("Enter the PID of the process to attach to: ")
debugger.attach(int(pid))

list = debugger.enumerate_threads()

# 스레드 리스트의 각 스레드에 대한
# 레지스터 값을 출력한다.
for thread in list:
    
    thread_context = debugger.get_thread_context(thread)
    
    # 레지스터의 내용을 출력한다.
    print "[*] Dumping registers for thread ID: 0x%08x" % thread
    print "[**] EIP: 0x%08x" % thread_context.Eip
    print "[**] ESP: 0x%08x" % thread_context.Esp
    print "[**] EBP: 0x%08x" % thread_context.Ebp
    print "[**] EAX: 0x%08x" % thread_context.Eax
    print "[**] EBX: 0x%08x" % thread_context.Ebx
    print "[**] ECX: 0x%08x" % thread_context.Ecx
    print "[**] EDX: 0x%08x" % thread_context.Edx
    print "[*] END DUMP" 

debugger.detach()