vm.cpu.breakpoints.remove() vm.cpu.breakpoints.add_insn(0x804844b) vm.cpu.breakpoints.add_insn(0x804846b, lambda x:False) while vm.resume(): continue if vm.cpu.gpr.pc != 0x804846b: print "failure 1" vm.detach() print "done 1" #2 vm.cpu.breakpoints.remove() vm.cpu.breakpoints.add_insn(0x8048483) vm.resume() vm.singlestep() if vm.cpu.gpr.pc != 0x8048485: print "failure 2" vm.detach() print "done 2" #3 vm.cpu.breakpoints.remove() vm.cpu.breakpoints.add_hw_insn(0x804849e) vm.resume() vm.singlestep() if vm.cpu.gpr.pc != 0x80484a1: print "failure 3" vm.detach()
vm.cpu.breakpoints.remove() vm.cpu.breakpoints.add_insn(0x804844b) vm.cpu.breakpoints.add_insn(0x804846b, lambda x:False) while vm.resume(): continue if vm.cpu.gpr.pc != 0x804846b: log("fail", "failure 1") vm.detach() log("info", "done 1") #2 vm.cpu.breakpoints.remove() vm.cpu.breakpoints.add_insn(0x8048483) vm.resume() vm.singlestep() if vm.cpu.gpr.pc != 0x8048485: log("fail", "failure 2") vm.detach() log("info", "done 2") #3 vm.cpu.breakpoints.remove() vm.cpu.breakpoints.add_hw_insn(0x804849e) vm.resume() vm.singlestep() if vm.cpu.gpr.pc != 0x80484a1: log("fail", "failure 3") vm.detach()