Function at 0x40acb9
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push 0x4012a6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x3e0
call fcn.004012a0
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x401270
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x160]
call sub.MSVBVM60.DLL___vbaStrCopy
mov eax, dword [ebp + 0xc]
push dword [eax]
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryLock
push 0x40
mov eax, dword [ebp - 0x2c0]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [eax + 0xc]
add eax, ecx
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00401fa8
call sub.MSVBVM60.DLL___vbaSetSystemError
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryUnlock
movsx eax, word [ebp - 0x5c]
cmp eax, 0x5a4d
je 0x40ae09
mov dword [ebp - 0x300], 0x80020004
mov dword [ebp - 0x308], 0xa
mov dword [ebp - 0x2f0], 0x80020004
mov dword [ebp - 0x2f8], 0xa
mov dword [ebp - 0x328], 0x402890
mov dword [ebp - 0x330], 8
lea edx, [ebp - 0x330]
lea ecx, [ebp - 0x2e8]
call sub.MSVBVM60.DLL___vbaVarDup
mov dword [ebp - 0x318], 0x402964
mov dword [ebp - 0x320], 8
lea edx, [ebp - 0x320]
lea ecx, [ebp - 0x2d8]
call sub.MSVBVM60.DLL___vbaVarDup
lea eax, [ebp - 0x308]
push eax
lea eax, [ebp - 0x2f8]
push eax
lea eax, [ebp - 0x2e8]
push eax
push 0x10
lea eax, [ebp - 0x2d8]
push eax
call sub.MSVBVM60.DLL_rtcMsgBox
lea eax, [ebp - 0x308]
push eax
lea eax, [ebp - 0x2f8]
push eax
lea eax, [ebp - 0x2e8]
push eax
lea eax, [ebp - 0x2d8]
push eax
push 4
call sub.MSVBVM60.DLL___vbaFreeVarList
add esp, 0x14
jmp 0x40c263
mov eax, dword [ebp + 0xc]
push dword [eax]
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryLock
push 0xf8
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [ebp - 0x20]
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [eax + 0xc]
add eax, ecx
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.00401fa8
call sub.MSVBVM60.DLL___vbaSetSystemError
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryUnlock
cmp dword [ebp - 0x15c], 0x4550
je 0x40af24
mov dword [ebp - 0x300], 0x80020004
mov dword [ebp - 0x308], 0xa
mov dword [ebp - 0x2f0], 0x80020004
mov dword [ebp - 0x2f8], 0xa
mov dword [ebp - 0x328], 0x402890
mov dword [ebp - 0x330], 8
lea edx, [ebp - 0x330]
lea ecx, [ebp - 0x2e8]
call sub.MSVBVM60.DLL___vbaVarDup
mov dword [ebp - 0x318], 0x402998
mov dword [ebp - 0x320], 8
lea edx, [ebp - 0x320]
lea ecx, [ebp - 0x2d8]
call sub.MSVBVM60.DLL___vbaVarDup
lea eax, [ebp - 0x308]
push eax
lea eax, [ebp - 0x2f8]
push eax
lea eax, [ebp - 0x2e8]
push eax
push 0x10
lea eax, [ebp - 0x2d8]
push eax
call sub.MSVBVM60.DLL_rtcMsgBox
lea eax, [ebp - 0x308]
push eax
lea eax, [ebp - 0x2f8]
push eax
lea eax, [ebp - 0x2e8]
push eax
lea eax, [ebp - 0x2d8]
push eax
push 4
call sub.MSVBVM60.DLL___vbaFreeVarList
add esp, 0x14
jmp 0x40c263
mov dword [ebp - 0x27c], 0x44
lea eax, [ebp - 0x160]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4008
push 0
push 0x80
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x2d8]
push eax
call sub.MSVBVM60.DLL_rtcStrConvVar2
lea eax, [ebp - 0x2d8]
push eax
lea eax, [ebp - 0x30c]
push eax
call sub.MSVBVM60.DLL___vbaVar2Vec
lea eax, [ebp - 0x30c]
push eax
lea eax, [ebp - 0x14]
push eax
call sub.MSVBVM60.DLL___vbaAryMove
lea ecx, [ebp - 0x2d8]
call sub.MSVBVM60.DLL___vbaFreeVar
xor edx, edx
lea ecx, [ebp - 0x60]
call sub.MSVBVM60.DLL___vbaStrCopy
push 0
push 9
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
push dword [ebp - 0x60]
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 3
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
push dword [ebp - 0x14]
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryLock
mov eax, dword [ebp - 0x2c0]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [eax + 0xc]
add eax, ecx
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryUnlock
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
and dword [ebp - 0x338], 0
mov dword [ebp - 0x340], 2
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
and dword [ebp - 0x348], 0
mov dword [ebp - 0x350], 2
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
and dword [ebp - 0x358], 0
mov dword [ebp - 0x360], 0xb
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov dword [ebp - 0x368], 4
mov dword [ebp - 0x370], 2
lea edx, [ebp - 0x370]
mov eax, dword [ebp - 0x310]
push 5
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
and dword [ebp - 0x378], 0
mov dword [ebp - 0x380], 2
lea edx, [ebp - 0x380]
mov eax, dword [ebp - 0x310]
push 6
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
and dword [ebp - 0x388], 0
mov dword [ebp - 0x390], 2
lea edx, [ebp - 0x390]
mov eax, dword [ebp - 0x310]
push 7
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x27c]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x398], eax
mov dword [ebp - 0x3a0], 3
lea edx, [ebp - 0x3a0]
mov eax, dword [ebp - 0x310]
push 8
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x28c]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3b0], 3
lea edx, [ebp - 0x3b0]
mov eax, dword [ebp - 0x310]
push 9
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x4029e4
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
mov dword [ebp - 0x3b8], eax
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
xor eax, eax
cmp dword [ebp - 0x3b8], 0
sete al
neg eax
mov word [ebp - 0x3bc], ax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
movsx eax, word [ebp - 0x3bc]
test eax, eax
je 0x40b2bc
jmp 0x40c263
mov dword [ebp - 0x230], 0x10002
push 0
push 1
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x288]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x230]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402a08
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
xor eax, eax
cmp dword [ebp - 0x3b4], 0
sete al
neg eax
mov word [ebp - 0x3bc], ax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
movsx eax, word [ebp - 0x3bc]
test eax, eax
je 0x40b3ea
jmp 0x40c243
push 0
push 4
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov eax, dword [ebp - 0x18c]
add eax, 8
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x164]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x340], 3
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov dword [ebp - 0x348], 4
mov dword [ebp - 0x350], 2
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
and dword [ebp - 0x358], 0
mov dword [ebp - 0x360], 2
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402a30
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
cmp dword [ebp - 0x164], 0
jne 0x40b59e
jmp 0x40c243
push 0
push 1
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x164]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 0x4003
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov edx, 0x402a70
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x402a58
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
xor eax, eax
cmp dword [ebp - 0x3b4], 0
setne al
neg eax
mov word [ebp - 0x3bc], ax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
movsx eax, word [ebp - 0x3bc]
test eax, eax
je 0x40b6bc
jmp 0x40c243
push 0
push 4
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x128]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 0x4003
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x340], 0x4003
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov dword [ebp - 0x348], 0x3000
mov dword [ebp - 0x350], 3
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov dword [ebp - 0x358], 4
mov dword [ebp - 0x360], 3
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402aa0
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x238], eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
cmp dword [ebp - 0x238], 0
jne 0x40b87c
jmp 0x40c243
push 0
push 4
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x238]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 0x4003
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov eax, dword [ebp + 0xc]
push dword [eax]
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryLock
mov eax, dword [ebp - 0x2c0]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [eax + 0xc]
add eax, ecx
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryUnlock
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x340], 3
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x108]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x350], 0x4003
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x64]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x360], 3
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402ac4
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
mov eax, dword [ebp - 0x20]
add eax, 0xf8
mov dword [ebp - 0x18], eax
mov ax, word [ebp - 0x156]
sub ax, 1
movsx eax, ax
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0x3e8], 1
and dword [ebp - 0x1c], 0
jmp 0x40ba9d
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x3e8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x3ec]
jg 0x40bed0
mov eax, dword [ebp + 0xc]
push dword [eax]
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryLock
push 0x28
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x18]
add ecx, eax
mov eax, dword [ebp - 0x2c0]
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [eax + 0xc]
add eax, ecx
push eax
lea eax, [ebp - 0x2bc]
push eax
lea eax, [ebp - 0x3e4]
push eax
push 0x402578
call sub.MSVBVM60.DLL___vbaRecUniToAnsi
push eax
call fcn.00401fa8
call sub.MSVBVM60.DLL___vbaSetSystemError
lea eax, [ebp - 0x3e4]
push eax
lea eax, [ebp - 0x2bc]
push eax
push 0x402578
call sub.MSVBVM60.DLL___vbaRecAnsiToUni
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryUnlock
push 0
push 4
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov eax, dword [ebp - 0x238]
add eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov eax, dword [ebp + 0xc]
push dword [eax]
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryLock
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [ebp - 0x2a0]
sub ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c0]
mov eax, dword [eax + 0xc]
add eax, ecx
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x2c0]
push eax
call sub.MSVBVM60.DLL___vbaAryUnlock
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x340], 3
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x2a4]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x350], 0x4003
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x64]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x360], 3
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402ac4
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
push 0
push 4
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov eax, dword [ebp - 0x238]
add eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x2ac]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x340], 0x4003
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
push dword [ebp - 0x290]
call fcn.0040c318
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x350], 3
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x164]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x360], 3
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402af0
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
jmp 0x40ba91
push 0
push 4
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov eax, dword [ebp - 0x18c]
add eax, 8
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x238]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x340], 3
lea edx, [ebp - 0x340]
mov eax, dword [ebp - 0x310]
push 2
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov dword [ebp - 0x348], 4
mov dword [ebp - 0x350], 2
lea edx, [ebp - 0x350]
mov eax, dword [ebp - 0x310]
push 3
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
lea eax, [ebp - 0x64]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x360], 3
lea edx, [ebp - 0x360]
mov eax, dword [ebp - 0x310]
push 4
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402ac4
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
mov eax, dword [ebp - 0x238]
add eax, dword [ebp - 0x134]
mov dword [ebp - 0x180], eax
push 0
push 1
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x288]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
lea eax, [ebp - 0x230]
push eax
call sub.MSVBVM60.DLL_VarPtr
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x330], 3
lea edx, [ebp - 0x330]
mov eax, dword [ebp - 0x310]
push 1
pop ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarMove
mov edx, 0x402b18
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
push 0
push 0
push 1
push 0
lea eax, [ebp - 0x310]
push eax
push 0x10
push 0x880
call sub.MSVBVM60.DLL___vbaRedim
add esp, 0x1c
lea eax, [ebp - 0x288]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x320], 0x4003
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0x310]
xor ecx, ecx
sub ecx, dword [eax + 0x14]
shl ecx, 4
mov eax, dword [ebp - 0x310]
mov eax, dword [eax + 0xc]
add ecx, eax
call sub.MSVBVM60.DLL___vbaVarZero
mov edx, 0x402b40
lea ecx, [ebp - 0x2c8]
call sub.MSVBVM60.DLL___vbaStrCopy
mov edx, 0x4029cc
lea ecx, [ebp - 0x2c4]
call sub.MSVBVM60.DLL___vbaStrCopy
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.004097be
lea eax, [ebp - 0x310]
push eax
push 0
call sub.MSVBVM60.DLL___vbaErase
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x2c4]
push eax
push 2
call sub.MSVBVM60.DLL___vbaFreeStrList
add esp, 0xc
jmp 0x40c263
push dword [ebp - 0x288]
call fcn.0040231c
call sub.MSVBVM60.DLL___vbaSetSystemError
push dword [ebp - 0x28c]
call fcn.0040231c
call sub.MSVBVM60.DLL___vbaSetSystemError
push 0x40c301
jmp 0x40c2d1
lea eax, [ebp - 0x14]
push eax
push 0
call sub.MSVBVM60.DLL___vbaAryDestruct
lea ecx, [ebp - 0x60]
call sub.MSVBVM60.DLL___vbaFreeStr
lea ecx, [ebp - 0x160]
call sub.MSVBVM60.DLL___vbaFreeStr
lea eax, [ebp - 0x27c]
push eax
push 0x402524
call sub.MSVBVM60.DLL___vbaRecDestruct
ret