VB Decompiler Forum Index VB Decompiler
Hosted by TheAutomaters.com
 
  MemberlistMemberlist
 

0D VCallHresult

 
   VB Decompiler Forum Index -> Base
Author Message
Anonymous
New User


Joined: 10 Feb 2008
Posts: 0

Posted: Tue Nov 19, 2002 7:27 pm     Post subject: 0D VCallHresult

NumBytes: 5
ArgStr: vw
SrcStr: %p1
Comments:

Runtime engine:
[asm:3re0n41c]
  1. movzx  eax, word ptr [esi]           ; eax = opcode arg0 (offset to method)
  2. mov    ecx, [ebp-4Ch]                ; ecx = current object
  3. movzx  ebx, word ptr [esi+2]         ; ebx = opcode arg1
  4. push   ecx
  5. mov    edi, eax                      ; edi = eax
  6. cmp    _g_EventMonitorsEnabled, 0
  7. jnz    short lblEventMonitorsEnabled ; if event monitors are enabled
  8. add    eax, [ecx]                    ; eax = offset to current object method
  9. call   dword ptr [eax]               ; call this method
  10.  
  11. lblExitProc:
  12.     mov    edx, [ebp-44h]
  13.     test   word ptr [edx+76h], 2
  14.     jnz    short lblForceReset
  15.     or     eax, eax
  16.     js     short lblRaiseHresultErr
  17.     fnclex
  18.     xor    eax, eax                      ; get next opcode and parse it
  19.     mov    al, [esi+4]
  20.     add    esi, 5
  21.     jmp    ds:_tblByteDisp[eax*4]
  22.  
  23. lblEventMonitorsEnabled:
  24.     pusha
  25.     push   esp
  26.     push   eax
  27.     push   ecx
  28.     call   _VBAEventVtableCall@12        ; VBAEventVtableCall(x,x,x)
  29.     popa
  30.     add    eax, [ecx]
  31.     call   dword ptr [eax]
  32.     pusha
  33.     push   esp
  34.     call   _VBAEventProcExit@4           ; VBAEventProcExit(x)
  35.     popa
  36.     jmp    short lblExitProc
  37.  
  38. lblForceReset:
  39.     mov    eax, 9C68h
  40.     jmp    ErrorEAX
  41.  
  42. lblRaiseHresultErr:
  43.     mov    edx, [ebp-54h]
  44.     push   edi
  45.     cmp    ax, 9C68h
  46.     jnz    short lblExHandleFailure
  47.     mov    ax, 1B8h
  48.  
  49. lblExHandleFailure:
  50.     push   dword ptr [edx+ebx*4]
  51.     push   dword ptr [ebp-4Ch]
  52.     push   eax
  53.     call   _ExHandleFailure@16           ; ExHandleFailure(x,x,x,x)
[/asm:3re0n41c]
Back to top
   VB Decompiler Forum Index -> Base All times are GMT
Page 1 of 1

 
You can post new topics in this forum
You can reply to topics in this forum
You can edit your posts in this forum
You can delete your posts in this forum
You can vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group