debug版本的汇编通常看到这样的代码片段
lea edi, DWORD PTR [ebp-64] ;edi,hode the address of memory [ebp-64]
mov ecx, 16 ;ecx= 00000010H
mov eax, -858993460 ; ccccccccH
rep stosd ;rep stosd for eax(16)times
lea 取内存单元地址指令
mov 数据拷贝指令
rep 反复执行后面的指令ecx次
stosd 把eax中的内容拷贝到地址为edi的内存中,并让edi+4
结合看来,这四句的作用就是把 ebp-64到ebp 这16个dword的内容设为0xcccccccc
和stosd相关还有:
stosb ;mov [tag],eal edi+1
stosw ;mov [tag],eax edi+2