Exemplo n.º 1
0
 def func_prepare_stdcall(self, ret_addr, *args):
     for index in xrange(min(len(args), 4)):
         setattr(self.cpu, 'X%d' % index, args[index])
     for index in xrange(4, len(args)):
         self.vm.set_mem(self.cpu.SP + 8 * (index - 4), pck64(args[index]))
     self.cpu.LR = ret_addr
Exemplo n.º 2
0
 def push_uint64_t(self, value):
     setattr(self.cpu, self.ira.sp.name,
             getattr(self.cpu, self.ira.sp.name) - self.ira.sp.size / 8)
     self.vm.set_mem(getattr(self.cpu, self.ira.sp.name), pck64(value))
Exemplo n.º 3
0
 def push_uint64_t(self, value):
     self.cpu.SP -= 8
     self.vm.set_mem(self.cpu.SP, pck64(value))
Exemplo n.º 4
0
 def push_uint64_t(self, value):
     self.cpu.RSP -= self.ir_arch.sp.size / 8
     self.vm.set_mem(self.cpu.RSP, pck64(value))
Exemplo n.º 5
0
 def push_uint64_t(self, value):
     self.cpu.RSP -= self.ir_arch.sp.size / 8
     self.vm.set_mem(self.cpu.RSP, pck64(value))
Exemplo n.º 6
0
 def push_uint64_t(self, value):
     setattr(self.cpu, self.ira.sp.name,
             getattr(self.cpu, self.ira.sp.name) - self.ira.sp.size / 8)
     self.vm.set_mem(getattr(self.cpu, self.ira.sp.name), pck64(value))
Exemplo n.º 7
0
 def func_prepare_stdcall(self, ret_addr, *args):
     for index in xrange(min(len(args), 4)):
         setattr(self.cpu, 'X%d' % index, args[index])
     for index in xrange(4, len(args)):
         self.vm.set_mem(self.cpu.SP + 8 * (index - 4), pck64(args[index]))
     self.cpu.LR = ret_addr
Exemplo n.º 8
0
 def push_uint64_t(self, value):
     self.cpu.SP -= 8
     self.vm.set_mem(self.cpu.SP, pck64(value))