Arion 1.0.2-alpha
A high-performance C++ framework for emulating executable binaries.
 
Loading...
Searching...
No Matches
arion_lnx_x86::user_regs_struct Struct Reference

Structure representing the x86 (32-bit) general-purpose registers as saved by the Linux kernel on the stack. More...

#include <lnx_arch_x86.hpp>

Public Attributes

unsigned long bx
 Base register (EBX/BX).
 
unsigned long cx
 Counter register (ECX/CX).
 
unsigned long dx
 Data register (EDX/DX).
 
unsigned long si
 Source Index register (ESI/SI).
 
unsigned long di
 Destination Index register (EDI/DI).
 
unsigned long bp
 Base Pointer register (EBP/BP).
 
unsigned long ax
 Accumulator register (EAX/AX).
 
unsigned long ds
 Data Segment selector (DS).
 
unsigned long es
 Extra Segment selector (ES).
 
unsigned long fs
 FS Segment selector.
 
unsigned long gs
 GS Segment selector.
 
unsigned long orig_ax
 Original value of AX/EAX before a syscall (used to detect syscall return).
 
unsigned long ip
 Instruction Pointer register (EIP/IP).
 
unsigned long cs
 Code Segment selector (CS).
 
unsigned long flags
 Flags register (EFLAGS).
 
unsigned long sp
 Stack Pointer register (ESP/SP).
 
unsigned long ss
 Stack Segment selector (SS).
 

Detailed Description

Structure representing the x86 (32-bit) general-purpose registers as saved by the Linux kernel on the stack.

Member Data Documentation

◆ ax

unsigned long arion_lnx_x86::user_regs_struct::ax

Accumulator register (EAX/AX).

◆ bp

unsigned long arion_lnx_x86::user_regs_struct::bp

Base Pointer register (EBP/BP).

◆ bx

unsigned long arion_lnx_x86::user_regs_struct::bx

Base register (EBX/BX).

◆ cs

unsigned long arion_lnx_x86::user_regs_struct::cs

Code Segment selector (CS).

◆ cx

unsigned long arion_lnx_x86::user_regs_struct::cx

Counter register (ECX/CX).

◆ di

unsigned long arion_lnx_x86::user_regs_struct::di

Destination Index register (EDI/DI).

◆ ds

unsigned long arion_lnx_x86::user_regs_struct::ds

Data Segment selector (DS).

◆ dx

unsigned long arion_lnx_x86::user_regs_struct::dx

Data register (EDX/DX).

◆ es

unsigned long arion_lnx_x86::user_regs_struct::es

Extra Segment selector (ES).

◆ flags

unsigned long arion_lnx_x86::user_regs_struct::flags

Flags register (EFLAGS).

◆ fs

unsigned long arion_lnx_x86::user_regs_struct::fs

FS Segment selector.

◆ gs

unsigned long arion_lnx_x86::user_regs_struct::gs

GS Segment selector.

◆ ip

unsigned long arion_lnx_x86::user_regs_struct::ip

Instruction Pointer register (EIP/IP).

◆ orig_ax

unsigned long arion_lnx_x86::user_regs_struct::orig_ax

Original value of AX/EAX before a syscall (used to detect syscall return).

◆ si

unsigned long arion_lnx_x86::user_regs_struct::si

Source Index register (ESI/SI).

◆ sp

unsigned long arion_lnx_x86::user_regs_struct::sp

Stack Pointer register (ESP/SP).

◆ ss

unsigned long arion_lnx_x86::user_regs_struct::ss

Stack Segment selector (SS).


The documentation for this struct was generated from the following file: