鱼C论坛

 找回密码
 立即注册
查看: 1467|回复: 1

贴了一段汇编,不太明白

[复制链接]
发表于 2013-11-7 10:25:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这是一个c++写的dll中的一个函数,我这个是debug版
由于没有源代码,我用(vs2003)进这个函数里面,看看运行情况
这是一个编码的解码函数,通过调试后,解码的算法大致了解
问题一
00171D87  xor         cl,0AAh
中的0AAh,这个值是怎么来的呢,是程序里面写死的吗


问题二
看这一句  0171DA4  imul        cl  ,我通过调试发现是将al*cl得到的值赋给al   
为啥不是操作bl呢

附加
有时间的朋友,最好帮我这段代码,注释下,我是初学者,谢谢,感激!!!


00171D80  push        esi  
00171D81  mov         esi,dword ptr [esp+8]
00171D85  mov         cl,byte ptr [esi]
00171D87  xor         cl,0AAh
00171D8A  push        edi  
00171D8B  mov         di,word ptr [esp+10h]
00171D90  mov         byte ptr [esi],cl
00171D92  mov         ecx,1
00171D97  cmp         di,cx
00171D9A  jbe         00171DB2
00171D9C  lea         edx,[esi+1]
00171D9F  push        ebx  
00171DA0  mov         al,byte ptr [esi]
00171DA2  mov         bl,byte ptr [edx]
00171DA4  imul        cl   
00171DA6  xor         bl,al
00171DA8  inc         ecx  
00171DA9  mov         byte ptr [edx],bl
00171DAB  inc         edx  
00171DAC  cmp         cx,di
00171DAF  jb          00171DA0
00171DB1  pop         ebx  
00171DB2  pop         edi  
00171DB3  pop         esi  
00171DB4  ret              
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-11-9 01:23:48 | 显示全部楼层
第10章后面讲到第二个问题,你可以去看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-17 12:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表