assemblyvisual-c++x86movhotpatching

Anyone knows what "mov edi,edi " does?


69A8AB13  int         3    
69A8AB14  int         3    
69A8AB15  mov         edi,edi 
69A8AB17  push        ebp  
69A8AB18  mov         ebp,esp 

mov edi,edi doesn't make sense for me,what's it for?


Solution

  • It's a 2 byte NOP instruction. It gets included at the beginning of any function in an image compiled with the /hotpatch option:

    http://msdn.microsoft.com/en-us/library/ms173507.aspx

    -scott