我现在找出一个程序里面的一个CALL所在,CALL在Switch内部,
先调用的时候,碰到不解的地方
push 0
mov dword ptr [ecx+3370], eax
mov dword ptr [ecx+3374], edx
call dword ptr [<&GameFrame.CGameFrameView::UpdateGameView>] ;
这里的dword ptr [ecx+3370]和dword ptr [ecx+3374]这个地址,我应该怎么去找,或者是找哪个地址?
我在想,ecx应该是一个基址,但是我有点分不清楚了,我这里ecx中,查找的应该是虚拟的映射地址呢,还是内存地址。
00405680 /$ 8A4424 04 mov al, byte ptr [esp+4]
00405684 |. 3C 08 cmp al, 8 ; Switch (cases 1..8)
00405686 |. 0F87 15010000 ja 004057A1
0040568C |. 3C 01 cmp al, 1
0040568E |. 75 1F jnz short 004056AF
00405690 |. 8B4424 08 mov eax, dword ptr [esp+8] ; Case 1 of switch 00405684
00405694 |. 8B5424 0C mov edx, dword ptr [esp+C]
00405698 |. 6A 00 push 0
0040569A |. 8981 70330000 mov dword ptr [ecx+3370], eax
004056A0 |. 8991 74330000 mov dword ptr [ecx+3374], edx
004056A6 |. FF15 7CD04000 call dword ptr [<&GameFrame.CGameFrameView::UpdateGameView>] ; GameFram.CGameFrameView::UpdateGameView
004056AC |. C2 0C00 retn 0C
004056AF |> 3C 02 cmp al, 2
004056B1 |. 75 1F jnz short 004056D2
004056B3 |. 8B4424 08 mov eax, dword ptr [esp+8] ; Case 2 of switch 00405684
004056B7 |. 8B5424 0C mov edx, dword ptr [esp+C]
004056BB |. 6A 00 push 0
004056BD |. 8981 60330000 mov dword ptr [ecx+3360], eax
004056C3 |. 8991 64330000 mov dword ptr [ecx+3364], edx
004056C9 |. FF15 7CD04000 call dword ptr [<&GameFrame.CGameFrameView::UpdateGameView>] ; GameFram.CGameFrameView::UpdateGameView
004056CF |. C2 0C00 retn 0C
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课