Part 16 - ROL Instruction

For a complete table of contents of all the lessons please click below as it will give you a brief of each lesson in addition to the topics it will cover. https://github.com/mytechnotalent/Reverse-Engineering-Tutorial

The ROL command stands for rotate left.

Part 16 - ROL Instruction - 图1

In our simple x64 example on an Ubuntu Linux machine above we see we mov 1 into al and rotate left by 1 bit.

The binary representation is 00000001b. If we ROL 1 bit the value simply becomes 00000010b as demonstrated below.

We first compile and link by:

nasm -f elf64 -o test.o test.asm

ld -o test test.o

Part 16 - ROL Instruction - 图2

We can see here in the debugger that al starts with 1 and when we rotate left it goes to 10b.

You can ROL with additional bits as well. The logic would remain the same as the bits will rotate left just as we demonstrated above.

Next week we will dive into ROR! Stay tuned!