Given the above code, i am struggling to understand what happens in line 5 and 6
As i understand it, in line 5 the Adress of the ESP is loaded into the EAX register. While there may be the value 4 stored at ESP at that point, the adress is not known. So given this uncertainty, how can we know in line 6 what the value of EAX is, if we do not know the adress of ESP in Line 5?

esppoints pluseaxelements (likely of 2-byte size) + 4 ... so it's reaching into some sort of structure, I suppose. What's unclear about line 6? The first lines look like the prologue of a function, soespwill point to the top of the stack which we can assume to be already populated ... – 0xC0000022L Apr 26 '21 at 20:37