首页
社区
课程
招聘
[旧帖] [求助]OD中汇编,如何改变某一存储单元的值 0.00雪花
2008-4-18 01:38 4432

[旧帖] [求助]OD中汇编,如何改变某一存储单元的值 0.00雪花

2008-4-18 01:38
4432
00702180    51              push    ecx
00702181    B9 40217000     mov     ecx, 00702140                    ; ASCII "11111111111111111111111111111111"
00702186    81FE 389A4701   cmp     esi, 1579A39                     ; ASCII "22222222222222222222222222222222"
0070218C    75 0A           jnz     short 00702198
0070218E    81FA B0203E01   cmp     edx, 13E2000
00702194    75 02           jnz     short 00702198
00702196    87CE            xchg    esi, ecx                         ; test.00702140
00702198    59              pop     ecx

执行上述语句后,寄存器如下:

ECX 01479A38  ASCII "11111111111111111111111111111111"

ESI 00702140   ASCII "22222222222222222222222222222222"

Ecx与ESI互换了,但实际内存存储单元未变化,请问如果将ESI所指存单单元的值改为Ecx所指的存存单元的值,最好不互换.,不懂汇编,请大侠帮助,谢谢!

[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞0
打赏
分享
最新回复 (6)
雪    币: 113
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
OrochiZ 2008-4-18 03:41
2
0
ESI 所指的内存单运不是 32位数啊 ,是个字符串啊
你的用 字符串函数操作下吧

我可能比你更菜
雪    币: 141
活跃值: (162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
crbb 2008-4-18 07:17
3
0
那位大侠能给出代码,谢谢!
雪    币: 7651
活跃值: (493)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
achillis 15 2008-4-18 09:12
4
0
[QUOTE=crbb;442638]将ESI所指存单单元的值改为Ecx所指的存存单元的值,最好不互换QUOTE]

按你的意思,把ECX所指内存单元的值copy到esi所指内存单元中?
memcpy不就可以了嘛。你看看memcpy是怎么写的。不过好像也不用这么麻烦
雪    币: 119
活跃值: (298)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
渗透 2008-4-18 19:50
5
0
有必要吗? 指针指向 不是更好?
雪    币: 141
活跃值: (162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
crbb 2008-4-18 22:56
6
0
能说的具体些,给个代码?//
雪    币: 141
活跃值: (162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
crbb 2008-4-20 20:31
7
0
顶一下,那位给个具体点的思路或者代码来实现,谢谢
游客
登录 | 注册 方可回帖
返回