Anonymous New User
Joined: 10 Feb 2008 Posts: 0
|
Posted: Tue Nov 19, 2002 7:27 pm
Post subject: 12 ThisVCallAd / ThisVCallI2
|
|
NumBytes: 3
ArgStr:
SrcStr:
Comments:
Runtime engine:
[asm:3re0n41c]- mov edx, [ebp-44h] ; edx = "me"
- or word ptr [edx+74h], 1 ; ?
- mov ebx, [ebp+8] ; ebx = me.vtable (?)
- movzx eax, word ptr [esi] ; eax = arg0
- push ebx ; save me.vtable (?)
- cmp _g_EventMonitorsEnabled, 0 ; if EventMonitors are enabled
- jnz short lblEventMonitorsEnabled
- add eax, [ebx] ; eax = me.vtable(arg0) (?)
- call dword ptr [eax] ; call proc at vtable
-
- lblEndProc:
- push eax ; save this method
-
- lblNextOpCode:
- xor eax, eax
- mov al, [esi+2]
- add esi, 3
- jmp ds:_tblByteDisp[eax*4]
-
- lblEventMonitorsEnabled:
- pusha
- push esp
- push eax
- push ebx
- call _VBAEventVtableCall@12 ; VBAEventVtableCall(x,x,x)
- popa
- add eax, [ebx]
- call dword ptr [eax]
- pusha
- push esp
- call _VBAEventProcExit@4 ; VBAEventProcExit(x)
- popa
- jmp short lblEndProc
[/asm:3re0n41c]
|
|