I can't for the love of me figure this one out.
I'd assume the instruction
lea 0x0(,%rcx,4),%esi
to mean "set %esi to the result of multiplication of %rcx by 4". But that's not it. So what does it mean? It's odd in the first place that the offset is 0x0 and that mul isn't used instead...
EDIT: I think something is implicitly used as a base. But I don't know what.