Function at 0x422770
Capabilities:
Swap mouse buttons

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push 0x403516
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x140
call sub.MSVBVM60.DLL___vbaChkstk
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x14], 0x402138
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 1
mov edx, dword [ebp + 0xc]
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
push 3
push 0x4064d4
lea eax, [ebp - 0x3c]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaAryConstruct2]
mov dword [ebp - 4], 2
push 0xffffffffffffffff
call dword [sym.imp.MSVBVM60.DLL___vbaOnError]
mov dword [ebp - 4], 3
push 0
push 0
push 0
push 0
call fcn.00405fc8
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 4
push 0
push 0
call dword [sym.imp.ADVAPI32.DLL_GetNumberOfEventLogRecords]
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0x9c], 0x4008
push 0
push 0x80
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcStrConvVar2]
lea ecx, [ebp - 0x78]
push ecx
lea edx, [ebp - 0x8c]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaVar2Vec]
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x48]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaAryMove]
lea ecx, [ebp - 0x78]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
mov dword [ebp - 4], 6
push 0
push 0
call fcn.00405dec
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 7
mov dword [ebp - 0xcc], 0xff
mov dword [ebp - 0xc8], 1
mov dword [ebp - 0x60], 0
jmp 0x4228af
mov edx, dword [ebp - 0x60]
add edx, dword [ebp - 0xc8]
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0xcc]
jg 0x422920
mov dword [ebp - 4], 8
push 0
push 0
push 0
push 0
call fcn.00405fc8
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 9
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0xb4], ecx
cmp dword [ebp - 0xb4], 0x100
jae 0x4228fc
mov dword [ebp - 0xf4], 0
jmp 0x422908
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0xf4], eax
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x60]
mov dword [eax + edx*4], ecx
mov dword [ebp - 4], 0xa
jmp 0x4228a3
mov dword [ebp - 4], 0xb
push 0
call dword [sym.imp.USER32.DLL_SwapMouseButton]
mov dword [ebp - 4], 0xc
push 0
push 0
call fcn.00405dec
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x60], 0
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x78], 2
lea edx, [ebp - 0x78]
push edx
lea eax, [ebp - 0x88]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcVarFromError]
lea ecx, [ebp - 0x88]
push ecx
lea edx, [ebp - 0x78]
push edx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0xc
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x5c], 0
mov dword [ebp - 4], 0x10
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x78], 2
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x88]
push ecx
call dword [sym.imp.MSVBVM60.DLL_rtcGetSecondOfMinute]
lea edx, [ebp - 0x88]
push edx
lea eax, [ebp - 0x78]
push eax
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0xc
mov dword [ebp - 4], 0x11
push 0
call dword [sym.imp.USER32.DLL_SwapMouseButton]
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0x13
mov dword [ebp - 0xb0], 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb0]
push ecx
call fcn.0040600c
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 0x14
mov dword [ebp - 0xd4], 0xff
mov dword [ebp - 0xd0], 1
mov dword [ebp - 0x60], 0
jmp 0x422a51
mov edx, dword [ebp - 0x60]
add edx, dword [ebp - 0xd0]
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0xd4]
jg 0x422c6f
mov dword [ebp - 4], 0x15
mov dword [ebp - 0xb0], 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xb0]
push ecx
call fcn.0040600c
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 0x16
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0xb4], edx
cmp dword [ebp - 0xb4], 0x100
jae 0x422ab3
mov dword [ebp - 0xf8], 0
jmp 0x422abf
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0x48], 0
je 0x422b20
mov eax, dword [ebp - 0x48]
cmp word [eax], 1
jne 0x422b20
mov ecx, dword [ebp - 0x54]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
mov ecx, eax
mov eax, dword [ebp - 0x60]
cdq
idiv ecx
mov eax, dword [ebp - 0x48]
sub edx, dword [eax + 0x14]
mov dword [ebp - 0xb8], edx
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0xb8]
cmp edx, dword [ecx + 0x10]
jae 0x422b06
mov dword [ebp - 0xfc], 0
jmp 0x422b12
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x100], eax
jmp 0x422b2c
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x5c]
add eax, dword [edx + ecx*4]
mov ecx, dword [ebp - 0x48]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x100]
xor ebx, ebx
mov bl, byte [edx + ecx]
add eax, ebx
and eax, 0x800000ff
jns 0x422b5c
dec eax
or eax, 0xffffff00
inc eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 4], 0x17
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0xb4], edx
cmp dword [ebp - 0xb4], 0x100
jae 0x422b87
mov dword [ebp - 0x104], 0
jmp 0x422b93
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x30]
mov dl, byte [ecx + eax*4]
mov byte [ebp - 0x44], dl
mov dword [ebp - 4], 0x18
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0x100
jae 0x422bca
mov dword [ebp - 0x108], 0
jmp 0x422bd6
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0xb4], ecx
cmp dword [ebp - 0xb4], 0x100
jae 0x422bf7
mov dword [ebp - 0x10c], 0
jmp 0x422c03
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x10c], eax
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xb8]
mov esi, dword [ebp - 0x30]
mov ecx, dword [esi + ecx*4]
mov dword [eax + edx*4], ecx
mov dword [ebp - 4], 0x19
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xb4], edx
cmp dword [ebp - 0xb4], 0x100
jae 0x422c43
mov dword [ebp - 0x110], 0
jmp 0x422c4f
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x44]
and eax, 0xff
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x30]
mov dword [edx + ecx*4], eax
mov dword [ebp - 4], 0x1a
jmp 0x422a45
mov dword [ebp - 4], 0x1b
mov dword [ebp - 0x60], 0
mov dword [ebp - 4], 0x1c
mov dword [ebp - 0x5c], 0
mov dword [ebp - 4], 0x1d
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0x1e
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x78], 2
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x88]
push ecx
call dword [sym.imp.MSVBVM60.DLL_rtcGetHourOfDay]
lea edx, [ebp - 0x88]
push edx
lea eax, [ebp - 0x78]
push eax
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0xc
mov dword [ebp - 4], 0x1f
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x94], ecx
mov dword [ebp - 0x9c], 0x6011
push 0
push 0x40
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcStrConvVar2]
lea ecx, [ebp - 0x78]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
lea ecx, [ebp - 0x78]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
mov dword [ebp - 4], 0x20
mov edx, dword [ebp - 0x4c]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], 1
mov dword [ebp - 0x60], 0
jmp 0x422d58
mov eax, dword [ebp - 0x60]
add eax, dword [ebp - 0xd8]
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x60]
cmp ecx, dword [ebp - 0xdc]
jg 0x4234e5
mov dword [ebp - 4], 0x21
mov edx, dword [ebp - 0x5c]
add edx, 1
and edx, 0x800000ff
jns 0x422d84
dec edx
or edx, 0xffffff00
inc edx
mov dword [ebp - 0x5c], edx
mov dword [ebp - 4], 0x22
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.00405e94
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov dword [ebp - 4], 0x23
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x50], eax
mov dword [ebp - 4], 0x24
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0xb4], ecx
cmp dword [ebp - 0xb4], 0x100
jae 0x422dda
mov dword [ebp - 0x114], 0
jmp 0x422de6
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x114], eax
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x50]
add ecx, dword [eax + edx*4]
and ecx, 0x800000ff
jns 0x422e05
dec ecx
or ecx, 0xffffff00
inc ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], 0x25
cmp dword [0x43ac24], 0
jne 0x422e34
push 0x43ac24
push 0x4060a0
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov dword [ebp - 0x118], 0x43ac24
jmp 0x422e3e
mov dword [ebp - 0x118], 0x43ac24
mov edx, dword [ebp - 0x118]
mov eax, dword [edx]
mov dword [ebp - 0xb4], eax
lea ecx, [ebp - 0x68]
push ecx
mov edx, dword [ebp - 0xb4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xb4]
push ecx
call dword [eax + 0x1c]
fnclex
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0
jge 0x422e96
push 0x1c
push 0x406090
mov edx, dword [ebp - 0xb4]
push edx
mov eax, dword [ebp - 0xb8]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov dword [ebp - 0x11c], eax
jmp 0x422ea0
mov dword [ebp - 0x11c], 0
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0x94], 0x80020004
mov dword [ebp - 0x9c], 0xa
mov eax, 0x10
call sub.MSVBVM60.DLL___vbaChkstk
mov edx, esp
mov eax, dword [ebp - 0x9c]
mov dword [edx], eax
mov ecx, dword [ebp - 0x98]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x94]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x90]
mov dword [edx + 0xc], ecx
push 0
call dword [sym.imp.MSVBVM60.DLL___vbaStrI2]
mov edx, eax
lea ecx, [ebp - 0x64]
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
push eax
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xbc]
push ecx
call dword [eax + 0x60]
fnclex
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 0
jge 0x422f46
push 0x60
push 0x4060b0
mov edx, dword [ebp - 0xbc]
push edx
mov eax, dword [ebp - 0xc0]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov dword [ebp - 0x120], eax
jmp 0x422f50
mov dword [ebp - 0x120], 0
lea ecx, [ebp - 0x64]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x68]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
mov dword [ebp - 4], 0x26
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x78], 2
lea ecx, [ebp - 0x78]
push ecx
lea edx, [ebp - 0x88]
push edx
call dword [sym.imp.MSVBVM60.DLL_rtcVarFromError]
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x78]
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0xc
mov dword [ebp - 4], 0x27
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xb4], edx
cmp dword [ebp - 0xb4], 0x100
jae 0x422fc6
mov dword [ebp - 0x124], 0
jmp 0x422fd2
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x30]
mov dl, byte [ecx + eax*4]
mov byte [ebp - 0x44], dl
mov dword [ebp - 4], 0x28
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0x100
jae 0x423009
mov dword [ebp - 0x128], 0
jmp 0x423015
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0xb4], ecx
cmp dword [ebp - 0xb4], 0x100
jae 0x423036
mov dword [ebp - 0x12c], 0
jmp 0x423042
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x12c], eax
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xb8]
mov esi, dword [ebp - 0x30]
mov ecx, dword [esi + ecx*4]
mov dword [eax + edx*4], ecx
mov dword [ebp - 4], 0x29
cmp dword [0x43ac24], 0
jne 0x423086
push 0x43ac24
push 0x4060a0
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov dword [ebp - 0x130], 0x43ac24
jmp 0x423090
mov dword [ebp - 0x130], 0x43ac24
mov edx, dword [ebp - 0x130]
mov eax, dword [edx]
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xac], 2
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x9c], 2
lea ecx, [ebp - 0x78]
push ecx
mov eax, 0x10
call sub.MSVBVM60.DLL___vbaChkstk
mov edx, esp
mov eax, dword [ebp - 0xac]
mov dword [edx], eax
mov ecx, dword [ebp - 0xa8]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0xa4]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0xa0]
mov dword [edx + 0xc], ecx
mov eax, 0x10
call sub.MSVBVM60.DLL___vbaChkstk
mov edx, esp
mov eax, dword [ebp - 0x9c]
mov dword [edx], eax
mov ecx, dword [ebp - 0x98]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x94]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x90]
mov dword [edx + 0xc], ecx
mov edx, dword [ebp - 0xb4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xb4]
push ecx
call dword [eax + 0x38]
fnclex
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0
jge 0x42316e
push 0x38
push 0x406090
mov edx, dword [ebp - 0xb4]
push edx
mov eax, dword [ebp - 0xb8]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov dword [ebp - 0x134], eax
jmp 0x423178
mov dword [ebp - 0x134], 0
lea ecx, [ebp - 0x78]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
mov dword [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xb4], ecx
cmp dword [ebp - 0xb4], 0x100
jae 0x4231a9
mov dword [ebp - 0x138], 0
jmp 0x4231b5
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x138], eax
mov edx, dword [ebp - 0x44]
and edx, 0xff
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x30]
mov dword [ecx + eax*4], edx
mov dword [ebp - 4], 0x2b
cmp dword [0x43ac24], 0
jne 0x4231f6
push 0x43ac24
push 0x4060a0
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov dword [ebp - 0x13c], 0x43ac24
jmp 0x423200
mov dword [ebp - 0x13c], 0x43ac24
mov edx, dword [ebp - 0x13c]
mov eax, dword [edx]
mov dword [ebp - 0xb4], eax
lea ecx, [ebp - 0x68]
push ecx
mov edx, dword [ebp - 0xb4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xb4]
push ecx
call dword [eax + 0x1c]
fnclex
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0
jge 0x423258
push 0x1c
push 0x406090
mov edx, dword [ebp - 0xb4]
push edx
mov eax, dword [ebp - 0xb8]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov dword [ebp - 0x140], eax
jmp 0x423262
mov dword [ebp - 0x140], 0
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0x94], 0x80020004
mov dword [ebp - 0x9c], 0xa
mov eax, 0x10
call sub.MSVBVM60.DLL___vbaChkstk
mov edx, esp
mov eax, dword [ebp - 0x9c]
mov dword [edx], eax
mov ecx, dword [ebp - 0x98]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x94]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x90]
mov dword [edx + 0xc], ecx
push 0
call dword [sym.imp.MSVBVM60.DLL___vbaStrI2]
mov edx, eax
lea ecx, [ebp - 0x64]
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
push eax
mov edx, dword [ebp - 0xbc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xbc]
push ecx
call dword [eax + 0x60]
fnclex
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 0
jge 0x423308
push 0x60
push 0x4060b0
mov edx, dword [ebp - 0xbc]
push edx
mov eax, dword [ebp - 0xc0]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov dword [ebp - 0x144], eax
jmp 0x423312
mov dword [ebp - 0x144], 0
lea ecx, [ebp - 0x64]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x68]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
mov dword [ebp - 4], 0x2c
mov word [ebp - 0x58], 0x100
mov dword [ebp - 4], 0x2d
mov ecx, dword [ebp + 8]
cmp dword [ecx], 0
je 0x423392
mov edx, dword [ebp + 8]
mov eax, dword [edx]
cmp word [eax], 1
jne 0x423392
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x60]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xb8]
cmp eax, dword [edx + 0x10]
jae 0x423378
mov dword [ebp - 0x148], 0
jmp 0x423384
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x148], eax
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0x14c], ecx
jmp 0x42339e
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x14c], eax
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0xbc], edx
cmp dword [ebp - 0xbc], 0x100
jae 0x4233bf
mov dword [ebp - 0x150], 0
jmp 0x4233cb
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 0x100
jae 0x4233ec
mov dword [ebp - 0x154], 0
jmp 0x4233f8
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0x30]
mov eax, dword [edx + ecx*4]
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ebp - 0x30]
add eax, dword [edx + ecx*4]
movsx ecx, word [ebp - 0x58]
cdq
idiv ecx
mov dword [ebp - 0xc4], edx
cmp dword [ebp - 0xc4], 0x100
jae 0x423435
mov dword [ebp - 0x158], 0
jmp 0x423441
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x158], eax
mov edx, dword [ebp + 8]
cmp dword [edx], 0
je 0x42349b
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
cmp word [ecx], 1
jne 0x42349b
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x60]
sub ecx, dword [eax + 0x14]
mov dword [ebp - 0xb4], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xb4]
cmp ecx, dword [eax + 0x10]
jae 0x423481
mov dword [ebp - 0x15c], 0
jmp 0x42348d
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x15c], eax
mov edx, dword [ebp - 0xb4]
mov dword [ebp - 0x160], edx
jmp 0x4234a7
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp + 8]
xor ecx, ecx
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
mov eax, dword [ebp - 0x14c]
xor ecx, ecx
mov cl, byte [edx + eax]
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x30]
xor ecx, dword [eax + edx*4]
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x160]
mov byte [edx + eax], cl
mov dword [ebp - 4], 0x2e
jmp 0x422d4c
push 0x42355b
jmp 0x423524
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0xb0], ecx
lea edx, [ebp - 0xb0]
push edx
push 0
call dword [sym.imp.MSVBVM60.DLL___vbaAryDestruct]
lea eax, [ebp - 0x48]
push eax
push 0
call dword [sym.imp.MSVBVM60.DLL___vbaAryDestruct]
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
ret