Recent review C language, for disassembly of interest, use the lower figure shows an example to explain my understanding, if wrong, please also advise chiefs.
First of all, recognize two commonly used commands:
lea ---> address-assignment mov ---> (same type) assignment
Second, understand dword ptr []:
dword (double word) that is a double word, i.e. four bytes
ptr (point) i.e. Pointer
[] Is put an address value, the address corresponding to a four-byte data
For chestnut, dword ptr [p1] represents: p1 (address value) corresponding to the four bytes of data (content)
Explanation over, now put out to various parts of the assembly instructions to test