I\'m using elf64 to compile my assembly x86 code: I\'ve this sub-routine:
printNumber: mov EAX, EDX ; EDX contain some value like \"35\"
I see a push rdx, but nowhere a pop rdx. You keep pushing values on stack and when you reach RET you return to the address which was previously the content of RDX.