0049598D |. 8D85 78FFFFFF lea eax, dword ptr [ebp-88]
00495993 |. 50 push eax ;eax=0012F520
00495994 |. 8D85 74FFFFFF lea eax, dword ptr [ebp-8C] 堆栈地址=0012F51C eax=0012F520
0049599A |. 8BD3 mov edx, ebx ; ebx=00A19685, (ASCII 30,"0020O120303432032423424242")edx=0012F4B0
0049599C |. E8 BBEAF6FF call 0040445C
004959A1 |. 8B85 74FFFFFF mov eax, dword ptr [ebp-8C] ;堆栈 ss:[0012F51C]=00A17B68, (ASCII 30,"0020O120303432032423424242") eax=0012F51C
004959A7 |. B9 05000000 mov ecx, 5
004959AC |. BA 01000000 mov edx, 1
004959B1 |. E8 CEEDF6FF call 00404784 ;取前4位
004959B6 8B85 78FFFFFF mov eax, dword ptr [ebp-88] 堆栈 ss:[0012F520]=00A17C3C, (ASCII "00020") eax=0012F520
004959BC |. E8 CB33F7FF call 00408D8C
004959C1 |. 8D95 7CFFFFFF lea edx, dword ptr [ebp-84]
004959C7 |. E8 8432F7FF call 00408C50 ;取整数
004959CC |. FFB5 7CFFFFFF push dword ptr [ebp-84] 堆栈 ss:[0012F524]=00A17C50, (ASCII "20")
004959D2 |. 68 C85D4900 push 00495DC8
004959D7 |. 8D45 80 lea eax, dword ptr [ebp-80]
在这段代码中用OD调试中在MOV 语句中显示,堆栈 ss:[0012F520]=00A17C3C, (ASCII "00020") eax=0012F520
我想将其中的ASCII "00020"改成"00030"怎么改呢?
我在百度上搜了一下,看到有类似以下的解答:
你先跳转到一个空白的地方,然后加一句
mov [eax+30],30h
再跳转回去就行了。注意把跳转指令占用的代码也补齐
但我这样改的:
将004959B6 8B85 78FFFFFF mov eax, dword ptr [ebp-88] 改成jmp 00495D01(这个地方是空白)
然后在00495D01这个地方 插入mov [ebp-88],30h
但OD提示“请指定操作数大小”,不让进行,请大侠们帮解答一下,谢谢!!!!
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!