title: What does MOV EAX, DWORD PTR DS:[ESI] mean and what does it do?
body: <p>Alright so I have this line in my assembly</p>
  
  <pre><code>MOV EAX, DWORD PTR DS:[ESI]
  </code></pre>
  
  <p>where ESI is <code>00402050</code> (ascii, "123456789012")</p>
  
  <p>After this instruction: <code>EAX = 34333231</code></p>
  
  <p>What really happened here? How is this value calculated, and why?<br>
  Where could I get some good reference on this kind of thing?</p>