Provided by: radare2_5.5.0+dfsg-1.1ubuntu3_amd64 bug

NAME

       ESIL - Evaluable Strings Intermediate Language

DESCRIPTION

       ESIL  aims  to  describe  a  Forth-like  representation  for  every  target  CPU  opcode  semantics. ESIL
       representations can be evaluated (interpreted) in order to emulate individual instructions.

SYNTAX

       Each command of an ESIL expression is separated by a comma

       <source0>,<source1>,<operation>

       <source>,<destination>,<operation>

       <source_destination>,<operation>

BASIC OPERATIONS

       These operations should be enough to emulate most instructions of any architecture

       =      sets the value of the destination to the value of the source

       +      adds the values of source0 and source1 and pushes the result on the esil stack

       -      subtracts the value of source0 from the value of source1 and pushes the result on the esil stack

       *      multiplies the values of source0 and source1 and pushes the result on the esil stack

       /      divides the value of source1 by the value of source0

BASIC OPERATIONS EXAMPLES (x86)

       jmp eax -> eax,eip,=

SEE ALSO

       radare2(1)

                                                                                                         ESIL(7)