>> argv[1] is "gotten" by reading from esi. You then proceed to poke eax and ecx. TIL that SI, AX and CX were implicitly linked. What specifically is going on here?
> Where do you see this?
Here:
mov esi, [esp+8] ; get argv[1] value written to esi; okay
xor eax, eax ; clear the upper bits \ how is writing to eax
xor ecx, ecx ; will hold converted value / and ecx now relevant?!
> lea just does math, it doesn't dereference anything.Right; I said "LEA usage"; the instruction itself I understand, but "[ecx+eax-'0']" is throwing me for a loop.