Variables
- Negative offsets: variables
dword ptr -4 - Positive: parameters!
Global vs local variables
Global: 
Local:

You must rename ebp-4 to something more meaningful, otherwise you would not understand anything!!!!
Arithmetic Operations
Just normal add, sub, div, mul. Only the modulo operator is translate as div + mov, as we’re effectively dividing by an integer number and store the remainder of the integer division.
Ifs

If nested, you should check for unconditional jmp.
For

While
Similar to loops, but increment is absent
Switch statements
Just as they would in normal code, they’re a mess.
Usually a JMP table is created.

Arrays
In assembly, arrays are accessed using a base address as a starting point.
The size of each element is not always obvious, but it can be determined by seeing how the array is being indexed.

![[Pasted image 20251019180215.png
Structs
- TBD
Linked Lists
- TBD