asm__{
lea edi,dword ptr ss:[esp+C] //edi是目标地址
ecx,FFFFFFFF //ecx是-1,我觉得也可是能设置最大的值,意思就一直找呗
xor eax,eax //清零,目的是对比字符串结尾的\0
repne scasb
not ,ecx //非一下就是搜索次数
dec ecx //减去结尾的0
cmp ecx,3 //对比长度是否为3
jne //最后随便意思一下跳转,ret
ret
}
if(strlen(str)-3){
return;
}
repne意思是repeat not equal,scasb意思是SCAN String Byte,这一样一看这两个命令大概能做变形,比如做字符串是否相同时可以变为,repe,相同时继续
博客介绍了汇编命令repne和scasb,repne意为repeat not equal,scasb意为SCAN String Byte,还提到这两个命令可做变形,如在判断字符串是否相同时可变为repe,相同时继续。

1万+

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



