一、lea esi,[esi+0]
mov ebx, [ebp+hash]test ebx, ebxmov eax, ebxjz short loc_80484D3nop ; paddinglea esi, [esi+0] ; padding; ESI doesn’t changing hereloc_80484B8:mov ecx, eax ; save previous state of
hash to ECXxor al, [esi+edx] ; AL=*(key+i)add edx, 1 ; i++shr ecx, 8 ; ECX=hash>>8movzx eax, al ; EAX=*(key+i)mov eax, dword ptr ds:crctab[eax*4] ; EAX=crctab[EAX]xor eax, ecx ;
hash=EAX^ECX
GCC在循环开始的时候通过填入NOP和lea esi,[esi+0]来按8字节对齐
443

被折叠的 条评论
为什么被折叠?



