Function at 0x4a2e30
Capabilities:
Parse pe header
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push 0x403e56
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x9c
push ebx
push esi
push edi
mov dword [ebp - 0xc], esp
mov dword [ebp - 8], 0x402cd8
mov edi, dword [ebp + 8]
mov esi, dword [sym.imp.MSVBVM60.DLL_rtcTrimVar]
xor eax, eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0x70]
mov dword [ebp - 0x68], edi
push eax
push ecx
mov dword [ebp - 0x70], 0x4008
call esi
lea edx, [ebp - 0x40]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
mov ecx, edi
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea ecx, [ebp - 0x40]
call ebx
mov eax, dword [edi]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
test eax, eax
jg 0x4a2ee9
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x68], 0x406b38
mov dword [ebp - 0x70], 8
call dword [sym.imp.MSVBVM60.DLL___vbaVarCopy]
push 0x4a3082
jmp 0x4a3065
lea ecx, [ebp - 0x70]
lea edx, [ebp - 0x40]
push ecx
push edx
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x70], 0x4008
call esi
lea eax, [ebp - 0x40]
lea ecx, [ebp - 0x50]
push eax
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaLenVar]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaI2Var]
mov esi, 1
lea ecx, [ebp - 0x40]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x18], esi
call ebx
mov ebx, dword [sym.imp.MSVBVM60.DLL_rtcMidCharVar]
cmp si, word [ebp - 0xa8]
jg 0x4a302b
movsx esi, si
lea edx, [ebp - 0x40]
lea eax, [ebp - 0x70]
push edx
push esi
lea ecx, [ebp - 0x50]
push eax
push ecx
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x40], 2
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x70], 0x4008
call ebx
lea edx, [ebp - 0x50]
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVBVM60.DLL___vbaVarMove]
lea ecx, [ebp - 0x40]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea edx, [ebp - 0xa0]
lea eax, [ebp - 0x70]
push edx
push eax
mov dword [ebp - 0x68], 0x4088bc
mov dword [ebp - 0x70], 0x8008
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstEq]
test ax, ax
jne 0x4a3016
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 0x40]
mov dword [ebp - 0x88], ecx
push edx
lea eax, [ebp - 0x70]
push esi
lea ecx, [ebp - 0x50]
push eax
push ecx
mov dword [ebp - 0x90], 8
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x40], 2
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x70], 0x4008
call ebx
lea edx, [ebp - 0x90]
lea eax, [ebp - 0x50]
push edx
lea ecx, [ebp - 0x60]
push eax
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaVarCat]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x1c]
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
lea edx, [ebp - 0x60]
lea eax, [ebp - 0x50]
push edx
lea ecx, [ebp - 0x40]
push eax
push ecx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0x10
mov eax, 1
add ax, word [ebp - 0x18]
jo 0x4a3098
mov dword [ebp - 0x18], eax
mov esi, eax
jmp 0x4a2f2b
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x20]
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
push 0x4a3082
jmp 0x4a3065
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea ecx, [ebp - 0xa0]
call esi
lea ecx, [ebp - 0x1c]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x30]
call esi
ret
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop