你挑着担,我牵着马,迎来日出,送走晚霞 踏平坎坷,成大道,斗罢艰险,又出发,又出发 啦啦…一番番春秋冬夏。一场场酸甜苦辣。敢问路在何方 路在脚下。
[请允许我献上一曲] 缓解压力
我特地复制了好长的代码
0042A8E7 57 push edi
0042A8E8 8D8C24 A0050000 lea ecx, dword ptr [esp+5A0]
0042A8EF E8 5C0A0100 call 0043B350
0042A8F4 8B4D 48 mov ecx, dword ptr [ebp+48]
0042A8F7 8B10 mov edx, dword ptr [eax]
0042A8F9 6A 01 push 1
0042A8FB 8991 CC020000 mov dword ptr [ecx+2CC], edx
0042A901 8D8C24 A0050000 lea ecx, dword ptr [esp+5A0]
0042A908 E8 430A0100 call 0043B350
0042A90D 8B4D 48 mov ecx, dword ptr [ebp+48]
0042A910 8B10 mov edx, dword ptr [eax]
0042A912 6A 01 push 1
0042A914 8991 C8020000 mov dword ptr [ecx+2C8], edx
0042A91A 8D8C24 A0050000 lea ecx, dword ptr [esp+5A0]
0042A921 E8 2A0A0100 call 0043B350
0042A926 8B4D 48 mov ecx, dword ptr [ebp+48]
0042A929 8B10 mov edx, dword ptr [eax]
0042A92B BE 02000000 mov esi, 2
0042A930 8991 E0020000 mov dword ptr [ecx+2E0], edx
0042A936 8D8C24 9C050000 lea ecx, dword ptr [esp+59C]
0042A93D E8 EE090100 call 0043B330
0042A942 3BC6 cmp eax, esi
0042A944 7E 5D jle short 0042A9A3
0042A946 56 push esi
0042A947 8D8C24 A0050000 lea ecx, dword ptr [esp+5A0]
0042A94E E8 FD090100 call 0043B350
0042A953 8B4D 48 mov ecx, dword ptr [ebp+48]
0042A956 8B00 mov eax, dword ptr [eax]
0042A958 56 push esi
0042A959 8B89 C8020000 mov ecx, dword ptr [ecx+2C8]
0042A95F 8D14C9 lea edx, dword ptr [ecx+ecx*8]
0042A962 8B4D 4C mov ecx, dword ptr [ebp+4C]
0042A965 8B54D1 08 mov edx, dword ptr [ecx+edx*8+8]
0042A969 8D8C24 A0050000 lea ecx, dword ptr [esp+5A0]
0042A970 8944B2 FC mov dword ptr [edx+esi*4-4], eax
0042A974 E8 D7090100 call 0043B350
0042A979 8B4D 48 mov ecx, dword ptr [ebp+48]
0042A97C 8B00 mov eax, dword ptr [eax]
0042A97E 46 inc esi
0042A97F 8B89 C8020000 mov ecx, dword ptr [ecx+2C8]
0042A985 8D14C9 lea edx, dword ptr [ecx+ecx*8]
0042A988 8B4D 4C mov ecx, dword ptr [ebp+4C]
0042A98B 8B54D1 08 mov edx, dword ptr [ecx+edx*8+8]
0042A98F 8D8C24 9C050000 lea ecx, dword ptr [esp+59C]
0042A996 8944B2 2C mov dword ptr [edx+esi*4+2C], eax
0042A99A E8 91090100 call 0043B330
0042A99F 3BF0 cmp esi, eax
0042A9A1 ^ 7C A3 jl short 0042A946
下面是call 0043B350中的内容
0043B350 8B41 04 mov eax, dword ptr [ecx+4]
0043B353 8B4C24 04 mov ecx, dword ptr [esp+4]
0043B357 8D0488 lea eax, dword ptr [eax+ecx*4]
0043B35A C2 0400 retn 4
首先这是一段对数组进行赋值的 循环
上面的绿色 地址[edx+esi*4+2C]是我硬件断点断下 处(当时那把光标,停留下面的call位置)
0042A996 8944B2 2C mov dword ptr [edx+esi*4+2C], eax eax是每次赋给数组的值
这是我找他赋值关系
ecx= [ebp+48]
ecx= [ecx+2C8]
edx= [ecx+ecx*8]
ecx= [ebp+4C]
edx= [ecx+edx*8+8]
[edx+3*4+2C] 最后找到这个地址是我想要的地址。 经过拿寄存器中的值测试 是正确、
可是这个ebp的值究竟到哪找呢,还是我找错的了.
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!