Function at 0x436466
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push 0x4011c6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x84
call sub.MSVBVM60.DLL___vbaChkstk
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x401168
and dword [ebp - 0x60], 0
lea eax, [ebp - 0x60]
push eax
push 0x40
push 0x1000
push dword [ebp + 0xc]
call fcn.00403678
call sub.MSVBVM60.DLL___vbaSetSystemError
mov dword [ebp - 0x40], 0x80020004
mov dword [ebp - 0x48], 0xa
lea eax, [ebp - 0x48]
push eax
call sub.MSVBVM60.DLL_rtcRandomize
lea ecx, [ebp - 0x48]
call sub.MSVBVM60.DLL___vbaFreeVar
push 0x40459c
call sub.MSVBVM60.DLL_rtcCharValueBstr
mov word [ebp - 0x2c], ax
mov word [ebp - 0x20], 1
lea eax, [ebp - 0x18]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x58], 0x4003
lea eax, [ebp - 0x58]
push eax
call sub.MSVBVM60.DLL_rtcIsEmpty
movsx eax, ax
mov dword [ebp - 0x14], eax
cmp dword [0x43b8bc], 0
jne 0x436521
push 0x43b8bc
push 0x403580
call sub.MSVBVM60.DLL___vbaNew2
mov dword [ebp - 0x80], 0x43b8bc
jmp 0x436528
mov dword [ebp - 0x80], 0x43b8bc
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
push dword [ebp - 0x64]
call dword [eax + 0x14]
fnclex
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jge 0x436564
push 0x14
push 0x403570
push dword [ebp - 0x64]
push dword [ebp - 0x68]
call sub.MSVBVM60.DLL___vbaHresultCheckObj
mov dword [ebp - 0x84], eax
jmp 0x43656b
and dword [ebp - 0x84], 0
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
push dword [ebp - 0x6c]
call dword [eax + 0x120]
fnclex
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jge 0x4365ab
push 0x120
push 0x403590
push dword [ebp - 0x6c]
push dword [ebp - 0x70]
call sub.MSVBVM60.DLL___vbaHresultCheckObj
mov dword [ebp - 0x88], eax
jmp 0x4365b2
and dword [ebp - 0x88], 0
mov ax, word [ebp - 0x5c]
mov word [ebp - 0x24], ax
lea ecx, [ebp - 0x38]
call sub.MSVBVM60.DLL___vbaFreeObj
push 0xc
call sub.MSVBVM60.DLL_rtcSpaceBstr
mov edx, eax
lea ecx, [ebp - 0x34]
call sub.MSVBVM60.DLL___vbaStrMove
cmp dword [0x43b8bc], 0
jne 0x4365f7
push 0x43b8bc
push 0x403580
call sub.MSVBVM60.DLL___vbaNew2
mov dword [ebp - 0x8c], 0x43b8bc
jmp 0x436601
mov dword [ebp - 0x8c], 0x43b8bc
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
push dword [ebp - 0x64]
call dword [eax + 0x4c]
fnclex
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jge 0x436640
push 0x4c
push 0x403570
push dword [ebp - 0x64]
push dword [ebp - 0x68]
call sub.MSVBVM60.DLL___vbaHresultCheckObj
mov dword [ebp - 0x90], eax
jmp 0x436647
and dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
push dword [ebp - 0x6c]
call dword [eax + 0x20]
fnclex
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jge 0x436681
push 0x20
push 0x4045a4
push dword [ebp - 0x6c]
push dword [ebp - 0x70]
call sub.MSVBVM60.DLL___vbaHresultCheckObj
mov dword [ebp - 0x94], eax
jmp 0x436688
and dword [ebp - 0x94], 0
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 1
and dword [ebp - 0x30], 0
lea ecx, [ebp - 0x38]
call sub.MSVBVM60.DLL___vbaFreeObj
jmp 0x4366ae
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x74]
jo 0x436705
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x78]
jg 0x4366b8
jmp 0x4366a3
push dword [ebp + 0x10]
push dword [ebp + 8]
push dword [ebp + 0xc]
call fcn.00403f8c
call sub.MSVBVM60.DLL___vbaSetSystemError
push 0x4366f4
jmp 0x4366e3
lea ecx, [ebp - 0x28]
call sub.MSVBVM60.DLL___vbaFreeStr
lea ecx, [ebp - 0x34]
call sub.MSVBVM60.DLL___vbaFreeStr
ret
call sub.MSVBVM60.DLL___vbaErrorOverflow