| 87 | # class FunctionParamDumpBP(Breakpoint): |
| 88 | class FunctionParamDumpBPAbstract(object): |
| 89 | def __init__(self, addr=None, target=None): |
| 90 | if target is None: |
| 91 | try: |
| 92 | target = self.TARGET |
| 93 | except AttributeError as e: |
| 94 | raise ValueError("{0} bp without a <target> must have a <TARGET> class attribute") |
| 95 | if addr is None: |
| 96 | addr = "{0}!{1}".format(target.target_dll, target.target_func) |
| 97 | super(FunctionParamDumpBPAbstract, self).__init__(addr) |
| 98 | self.target = target |
| 99 | self.target_args = target.prototype._argtypes_ |
| 100 | self.target_params = target.params |
| 101 | |
| 102 | def extract_arguments_32bits(self, cproc, cthread): |
| 103 | x = windows.debug.X86ArgumentRetriever() |