| 
 嗯,我开头也没有注意看。 
因为 MOV DL,BYTE PTR DS:[ECX+1] 是单字节,而 MOV ECX,EDX 是四字节,所以要进行零扩展。 
也可以改成以下几种方式: 
1、在MOV DL,BYTE PTR DS:[ECX+1]的前面加一条XOR EDX,EDX 
2、将MOV DL,BYTE PTR DS:[ECX+1]改成MOVZX EDX,BYTE PTR DS:[ECX+1] 
以上两种都可以省去AND ECX,0FF 
3、 
MOV EDX,DWORD PTR SS:[EBP-4] 
MOVZX ECX,BYTE PTR DS:[EDX+1] 
这样还可以省多一条MOV ECX,EDX 
4、将 
AND ECX, 0FF 
IMUL ECX,ECX,24 
ADD ECX,Ekd5.004B2C50 
写成一个自定义函数,直接CALL就是了,这样以后在其他地方修改也更方便一些。 
 |