def configure_subparser(cls, subparsers): sp = subparsers.add_parser('stack', help='display a chunk of stack memory', aliases=('s', 'st')) VoltronView.add_generic_arguments(sp) sp.set_defaults(func=StackView) sp.add_argument('--reverse', '-v', action='store_false', help='(un)reverse the output', default=True) sp.add_argument('--track', '-t', action='store_true', help='track and highlight changes', default=True) sp.add_argument('--no-track', '-T', action='store_false', help='don\'t track and highlight changes')
def configure_subparser(cls, subparsers): sp = subparsers.add_parser('memory', help='display a chunk of memory', aliases=('m', 'mem')) VoltronView.add_generic_arguments(sp) group = sp.add_mutually_exclusive_group(required=False) group.add_argument( '--deref', '-d', action='store_true', help= 'display the data in a column one CPU word wide and dereference any valid pointers', default=False) group.add_argument('--bytes', '-b', action='store', type=int, help='bytes per line (default 16)', default=16) sp.add_argument('--reverse', '-v', action='store_true', help='reverse the output', default=False) sp.add_argument('--track', '-t', action='store_true', help='track and highlight changes', default=True) sp.add_argument('--no-track', '-T', action='store_false', help='don\'t track and highlight changes') group = sp.add_mutually_exclusive_group(required=False) group.add_argument( '--address', '-a', action='store', help= 'address (in hex or decimal) from which to start reading memory') group.add_argument( '--command', '-c', action='store', help= 'command to execute resulting in the address from which to start reading memory. ' 'voltron will do his almighty best to find an address. e.g. "print \$rip + 0x1234"', default=None) group.add_argument( '--register', '-r', action='store', help= 'register containing the address from which to start reading memory', default=None) sp.set_defaults(func=MemoryView)
def configure_subparser(cls, subparsers): sp = subparsers.add_parser('disasm', help='disassembly view', aliases=('d', 'dis')) VoltronView.add_generic_arguments(sp) sp.set_defaults(func=DisasmView) sp.add_argument('--use-capstone', '-c', action='store_true', default=False, help='use capstone') sp.add_argument( '--address', '-a', action='store', default=None, help='address (in hex or decimal) from which to start disassembly')
def configure_subparser(cls, subparsers): sp = subparsers.add_parser('memory', help='display a chunk of memory', aliases=('m', 'mem')) VoltronView.add_generic_arguments(sp) group = sp.add_mutually_exclusive_group(required=False) group.add_argument('--deref', '-d', action='store_true', help='display the data in a column one CPU word wide and dereference any valid pointers', default=False) group.add_argument('--bytes', '-b', action='store', type=int, help='bytes per line (default 16)', default=16) sp.add_argument('--reverse', '-v', action='store_true', help='reverse the output', default=False) group = sp.add_mutually_exclusive_group(required=True) group.add_argument('--address', '-a', action='store', help='address (in hex or decimal) from which to start reading memory') group.add_argument('--command', '-c', action='store', help=('command to execute resulting in the address from which to start reading memory. ' 'voltron will do his almighty best to find an address. e.g. "print \$rip + 0x1234"'), default=None) group.add_argument('--register', '-r', action='store', help='register containing the address from which to start reading memory', default=None) sp.set_defaults(func=MemoryView)
def configure_subparser(cls, subparsers): sp = subparsers.add_parser('stack', help='display a chunk of stack memory', aliases=('s', 'st')) VoltronView.add_generic_arguments(sp) sp.set_defaults(func=StackView)