Understanding push and pop: https://www.youtube.com/watch?v=lRbIxN7NAqQ This video shows how to push and pop register and flags to preserve data so that you can restore them back after you have used the registers and cmp instructions in your injected code.