Source code for revenge.cpu.contexts.x64

import logging
logger = logging.getLogger(__name__)

from termcolor import cprint, colored

from . import CPUContextBase

[docs]class X64Context(CPUContextBase): REGS = ['rip', 'rsp', 'rbp', 'rax', 'rbx', 'rcx', 'rdx', 'rsi', 'rdi', 'r8', 'r9', 'r10', 'r11', 'r12', 'r13', 'r14', 'r15'] REGS_ALL = { 'sp' : 'self.rsp', 'bp' : 'self.rbp', 'ip' : 'self.rip', 'rax' : 'self.rax', 'eax' : 'self.rax & 0xffffffff', 'ax' : 'self.rax & 0xffff', 'al' : 'self.rax & 0xff', 'ah' : '(self.rax>>8) & 0xff', 'rbx' : 'self.rbx', 'ebx' : 'self.rbx & 0xffffffff', 'bx' : 'self.rbx & 0xffff', 'bl' : 'self.rbx & 0xff', 'bh' : '(self.rbx>>8) & 0xff', 'rcx' : 'self.rcx', 'ecx' : 'self.rcx & 0xffffffff', 'cx' : 'self.rcx & 0xffff', 'cl' : 'self.rcx & 0xff', 'ch' : '(self.rcx>>8) & 0xff', 'rdx' : 'self.rdx', 'edx' : 'self.rdx & 0xffffffff', 'dx' : 'self.rdx & 0xffff', 'dl' : 'self.rdx & 0xff', 'dh' : '(self.rdx>>8) & 0xff', 'r8' : 'self.r8', 'r8d' : 'self.r8 & 0xffffffff', 'r8w' : 'self.r8 & 0xffff', 'r8b' : 'self.r8 & 0xff', 'r9' : 'self.r9', 'r9d' : 'self.r9 & 0xffffffff', 'r9w' : 'self.r9 & 0xffff', 'r9b' : 'self.r9 & 0xff', 'r10' : 'self.r10', 'r10d': 'self.r10 & 0xffffffff', 'r10w': 'self.r10 & 0xffff', 'r10b': 'self.r10 & 0xff', 'r11' : 'self.r11', 'r11d': 'self.r11 & 0xffffffff', 'r11w': 'self.r11 & 0xffff', 'r11b': 'self.r11 & 0xff', 'r12' : 'self.r12', 'r12d': 'self.r12 & 0xffffffff', 'r12w': 'self.r12 & 0xffff', 'r12b': 'self.r12 & 0xff', 'r13' : 'self.r13', 'r13d': 'self.r13 & 0xffffffff', 'r13w': 'self.r13 & 0xffff', 'r13b': 'self.r13 & 0xff', 'r14' : 'self.r14', 'r14d': 'self.r14 & 0xffffffff', 'r14w': 'self.r14 & 0xffff', 'r14b': 'self.r14 & 0xff', 'r15' : 'self.r15', 'r15d': 'self.r15 & 0xffffffff', 'r15w': 'self.r15 & 0xffff', 'r15b': 'self.r15 & 0xff', 'rsi' : 'self.rsi', 'esi' : 'self.rsi & 0xffffffff', 'si' : 'self.rsi & 0xffff', 'sil' : 'self.rsi & 0xff', 'rdi' : 'self.rdi', 'edi' : 'self.rdi & 0xffffffff', 'di' : 'self.rdi & 0xffff', 'dil' : 'self.rdi & 0xff', 'rbp' : 'self.rbp', 'ebp' : 'self.rbp & 0xffffffff', 'bp' : 'self.rbp & 0xffff', 'bpl' : 'self.rbp & 0xff', 'rsp' : 'self.rsp', 'esp' : 'self.rsp & 0xffffffff', 'sp' : 'self.rsp & 0xffff', 'spl' : 'self.rsp & 0xff', 'rip' : 'self.rip', } __slots__ = REGS
from ... import types, common from ...exceptions import *