首页 > 其他 > 详细

记录:一些有意思的汇编片段

时间:2019-12-20 20:23:19      阅读:97      评论:0      收藏:0      [点我收藏+]

计算一段假码的余数存储到edi+ebx中:

00401664  |.  B9 0A000000   mov ecx,0xA                              ;  把0xA 赋值给ecx
00401669  |>  0FBE041E      /movsx eax,byte ptr ds:[esi+ebx]         ;  将 假码的第一个字节的机器码 赋值给eax
0040166D  |.  99            |cdq                                     ;  扩展命令
0040166E  |.  F7F9          |idiv ecx                                ;  edx 和 eax合并 除以0xA 商放在eax 余数放在edx
00401670  |.  88141F        |mov byte ptr ds:[edi+ebx],dl            ;  将 余数edx 赋值给edi+ebx(用来存储 修改过的假码)
00401673  |.  43            |inc ebx                                 ;  ebx递增1
00401674  |.  3B1D 67344000 |cmp ebx,dword ptr ds:[0x403467]         ;  判断当前的长度是否跟假码的长度相同
0040167A  |.^ 75 ED         \jnz short 软编码序.00401669                 ;  不同 跳回去

记录:一些有意思的汇编片段

原文:https://www.cnblogs.com/zpchcbd/p/12074884.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!