| 163 | return cls(c) |
| 164 | |
| 165 | def _init_dispatch_handlers(self): |
| 166 | dbg_evt_dispatch = {} |
| 167 | dbg_evt_dispatch[EXCEPTION_DEBUG_EVENT] = self._handle_exception |
| 168 | dbg_evt_dispatch[CREATE_THREAD_DEBUG_EVENT] = self._handle_create_thread |
| 169 | dbg_evt_dispatch[CREATE_PROCESS_DEBUG_EVENT] = self._handle_create_process |
| 170 | dbg_evt_dispatch[EXIT_PROCESS_DEBUG_EVENT] = self._handle_exit_process |
| 171 | dbg_evt_dispatch[EXIT_THREAD_DEBUG_EVENT] = self._handle_exit_thread |
| 172 | dbg_evt_dispatch[LOAD_DLL_DEBUG_EVENT] = self._handle_load_dll |
| 173 | dbg_evt_dispatch[UNLOAD_DLL_DEBUG_EVENT] = self._handle_unload_dll |
| 174 | dbg_evt_dispatch[RIP_EVENT] = self._handle_rip |
| 175 | dbg_evt_dispatch[OUTPUT_DEBUG_STRING_EVENT] = self._handle_output_debug_string |
| 176 | self._DebugEventCode_dispatch = dbg_evt_dispatch |
| 177 | |
| 178 | def _debug_event_generator(self): |
| 179 | while True: |