Function at 0x40a854
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push 0x403776
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x98
call sub.MSVBVM60.DLL___vbaChkstk
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x14], 0x401890
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 1
mov dword [ebp - 4], 2
push 0xffffffffffffffff
call sub.MSVBVM60.DLL___vbaOnError
mov dword [ebp - 4], 3
push 0
call sub.MSVBVM60.DLL___vbaStrI2
mov edx, eax
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaStrMove
push eax
lea eax, [ebp - 0x40]
push eax
call sub.MSVBVM60.DLL_rtcFileDateTime
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaFreeStr
lea ecx, [ebp - 0x40]
call sub.MSVBVM60.DLL___vbaFreeVar
mov dword [ebp - 4], 4
mov edx, dword [0x426110]
lea ecx, [ebp - 0x28]
call sub.MSVBVM60.DLL___vbaStrCopy
mov dword [ebp - 4], 5
mov eax, dword [ebp + 8]
movsx eax, word [eax]
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0x2c], 1
jmp 0x40a926
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0xa0]
jo 0x40aaf9
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0xa4]
jg 0x40aa34
mov dword [ebp - 4], 6
push 0
call sub.MSVBVM60.DLL___vbaStrI2
mov edx, eax
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaStrMove
push eax
lea eax, [ebp - 0x40]
push eax
call sub.MSVBVM60.DLL_rtcFileDateTime
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaFreeStr
lea ecx, [ebp - 0x40]
call sub.MSVBVM60.DLL___vbaFreeVar
mov dword [ebp - 4], 7
push dword [ebp - 0x28]
call sub.MSVBVM60.DLL___vbaLenBstr
mov ecx, eax
call sub.MSVBVM60.DLL___vbaI2I4
mov word [ebp - 0x98], ax
mov word [ebp - 0x94], 1
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.0041f081
mov word [ebp - 0x9c], ax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x90], 8
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x40], 2
lea eax, [ebp - 0x28]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x70], 0x4008
lea eax, [ebp - 0x40]
push eax
movsx eax, word [ebp - 0x9c]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x50]
push eax
call sub.MSVBVM60.DLL_rtcMidCharVar
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x60]
push eax
call sub.MSVBVM60.DLL___vbaVarCat
push eax
call sub.MSVBVM60.DLL___vbaStrVarMove
mov edx, eax
lea ecx, [ebp - 0x24]
call sub.MSVBVM60.DLL___vbaStrMove
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
push 3
call sub.MSVBVM60.DLL___vbaFreeVarList
add esp, 0x10
mov dword [ebp - 4], 8
jmp 0x40a914
mov dword [ebp - 4], 9
push 0
call sub.MSVBVM60.DLL___vbaStrI2
mov edx, eax
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaStrMove
push eax
lea eax, [ebp - 0x40]
push eax
call sub.MSVBVM60.DLL_rtcGetTimeValue
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaFreeStr
lea ecx, [ebp - 0x40]
call sub.MSVBVM60.DLL___vbaFreeVar
mov dword [ebp - 4], 0xa
call sub.MSVBVM60.DLL_rtcDoEvents
mov dword [ebp - 4], 0xb
push 0
call sub.MSVBVM60.DLL___vbaStrI2
mov edx, eax
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaStrMove
push eax
lea eax, [ebp - 0x40]
push eax
call sub.MSVBVM60.DLL_rtcFileDateTime
lea ecx, [ebp - 0x30]
call sub.MSVBVM60.DLL___vbaFreeStr
lea ecx, [ebp - 0x40]
call sub.MSVBVM60.DLL___vbaFreeVar
push 0x40aae5
jmp 0x40aadc
lea ecx, [ebp - 0x28]
call sub.MSVBVM60.DLL___vbaFreeStr
ret
call sub.MSVBVM60.DLL___vbaErrorOverflow