Function at 0x4ec9d0
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push 0x4106c6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x170
call sub.MSVBVM60.DLL___vbaChkstk
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x14], 0x40fea8
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 1
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x48]
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
mov edx, dword [ebp + 0xc]
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
mov dword [ebp - 4], 2
push 1
call dword [sym.imp.MSVBVM60.DLL___vbaOnError]
mov dword [ebp - 4], 3
mov dword [ebp - 0x138], 0x420e98
mov dword [ebp - 0x140], 8
lea edx, [ebp - 0x140]
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVBVM60.DLL___vbaVarDup]
push 0x41823c
push 0x447044
lea eax, [ebp - 0x70]
push eax
call fcn.004c7510
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x70]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
mov dword [ebp - 4], 4
mov dword [ebp - 0x138], 0x4470d0
mov dword [ebp - 0x140], 8
push 0x22
lea ecx, [ebp - 0x70]
push ecx
call dword [sym.imp.MSVBVM60.DLL_rtcVarBstrFromAnsi]
push 0x22
lea edx, [ebp - 0x90]
push edx
call dword [sym.imp.MSVBVM60.DLL_rtcVarBstrFromAnsi]
mov dword [ebp - 0x148], 0x4176e8
mov dword [ebp - 0x150], 8
push 0x22
lea eax, [ebp - 0xc0]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcVarBstrFromAnsi]
lea ecx, [ebp - 0x5c]
push ecx
mov edx, dword [0x4f3108]
mov eax, dword [edx]
mov ecx, dword [0x4f3108]
push ecx
call dword [eax + 0x104]
fnclex
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x174], 0
jge 0x4ecb2e
push 0x104
push 0x421090
mov edx, dword [0x4f3108]
push edx
mov eax, dword [ebp - 0x174]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov dword [ebp - 0x190], eax
jmp 0x4ecb38
mov dword [ebp - 0x190], 0
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x5c], 0
mov edx, dword [ebp - 0x18c]
mov dword [ebp - 0xd8], edx
mov dword [ebp - 0xe0], 8
push 0x22
lea eax, [ebp - 0x100]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcVarBstrFromAnsi]
mov dword [ebp - 0x158], 0x4176e8
mov dword [ebp - 0x160], 8
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x170], 8
lea edx, [ebp - 0x140]
push edx
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x80]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea edx, [ebp - 0x90]
push edx
lea eax, [ebp - 0xa0]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea ecx, [ebp - 0x150]
push ecx
lea edx, [ebp - 0xb0]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea eax, [ebp - 0xc0]
push eax
lea ecx, [ebp - 0xd0]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea edx, [ebp - 0xe0]
push edx
lea eax, [ebp - 0xf0]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea ecx, [ebp - 0x100]
push ecx
lea edx, [ebp - 0x110]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x120]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
lea edx, [ebp - 0x170]
push edx
lea eax, [ebp - 0x130]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
mov ecx, eax
mov eax, 0x10
call sub.MSVBVM60.DLL___vbaChkstk
mov edx, esp
mov eax, dword [ecx]
mov dword [edx], eax
mov eax, dword [ecx + 4]
mov dword [edx + 4], eax
mov eax, dword [ecx + 8]
mov dword [edx + 8], eax
mov ecx, dword [ecx + 0xc]
mov dword [edx + 0xc], ecx
push 1
push 0x417670
mov edx, dword [ebp - 0x4c]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
mov edx, eax
lea ecx, [ebp - 0x60]
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
push eax
push 0x447068
push 0x80000002
call fcn.004db300
lea ecx, [ebp - 0x60]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea eax, [ebp - 0x130]
push eax
lea ecx, [ebp - 0x120]
push ecx
lea edx, [ebp - 0x110]
push edx
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0xf0]
push ecx
lea edx, [ebp - 0xe0]
push edx
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0xc0]
push ecx
lea edx, [ebp - 0xb0]
push edx
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x90]
push ecx
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp - 0x70]
push eax
push 0xd
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0x38
mov dword [ebp - 4], 5
mov ecx, dword [ebp - 0x34]
push ecx
call fcn.004c8940
jmp 0x4ecd39
call dword [sym.imp.MSVBVM60.DLL___vbaExitProc]
push 0x4ecdf1
jmp 0x4ecdba
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea ecx, [ebp - 0x44]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea ecx, [ebp - 0x48]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x54]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
ret