Function at 0x437920
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0x401b16
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4c
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x4019d0
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
xor ebx, ebx
mov edx, 0x407d58
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x4c], ebx
call esi
mov eax, dword [ebp + 8]
mov di, word [eax]
cmp di, 0x51
jne 0x437983
mov edx, 0x408b48
jmp 0x437b73
cmp di, 0x57
jne 0x437993
mov edx, 0x408b50
jmp 0x437b73
cmp di, 0x45
jne 0x4379a3
mov edx, 0x408b58
jmp 0x437b73
cmp di, 0x52
jne 0x4379b3
mov edx, 0x408b60
jmp 0x437b73
cmp di, 0x54
jne 0x4379c3
mov edx, 0x408b68
jmp 0x437b73
cmp di, 0x59
jne 0x4379d3
mov edx, 0x408b70
jmp 0x437b73
cmp di, 0x55
jne 0x4379e3
mov edx, 0x408b78
jmp 0x437b73
cmp di, 0x49
jne 0x4379f3
mov edx, 0x408b80
jmp 0x437b73
cmp di, 0x4f
jne 0x437a03
mov edx, 0x408b88
jmp 0x437b73
cmp di, 0x50
jne 0x437a13
mov edx, 0x408b90
jmp 0x437b73
cmp di, 0xdb
jne 0x437a24
mov edx, 0x408b98
jmp 0x437b73
cmp di, 0xdd
jne 0x437a35
mov edx, 0x408ba0
jmp 0x437b73
cmp di, 0x41
jne 0x437a45
mov edx, 0x408ba8
jmp 0x437b73
cmp di, 0x53
jne 0x437a55
mov edx, 0x408bb0
jmp 0x437b73
cmp di, 0x44
jne 0x437a65
mov edx, 0x408bb8
jmp 0x437b73
cmp di, 0x46
jne 0x437a75
mov edx, 0x408bc0
jmp 0x437b73
cmp di, 0x47
jne 0x437a85
mov edx, 0x408bc8
jmp 0x437b73
cmp di, 0x48
jne 0x437a95
mov edx, 0x408bd0
jmp 0x437b73
cmp di, 0x4a
jne 0x437aa5
mov edx, 0x408a40
jmp 0x437b73
cmp di, 0x4b
jne 0x437ab5
mov edx, 0x408a48
jmp 0x437b73
cmp di, 0x4c
jne 0x437ac5
mov edx, 0x408a50
jmp 0x437b73
cmp di, 0xba
jne 0x437ad6
mov edx, 0x40898c
jmp 0x437b73
cmp di, 0xde
jne 0x437ae7
mov edx, 0x408924
jmp 0x437b73
cmp di, 0x5a
jne 0x437af4
mov edx, 0x40892c
jmp 0x437b73
cmp di, 0x58
jne 0x437b01
mov edx, 0x408934
jmp 0x437b73
cmp di, 0x43
jne 0x437b0e
mov edx, 0x4088cc
jmp 0x437b73
cmp di, 0x56
jne 0x437b1b
mov edx, 0x4088d4
jmp 0x437b73
cmp di, 0x42
jne 0x437b28
mov edx, 0x4086a8
jmp 0x437b73
cmp di, 0x4e
jne 0x437b35
mov edx, 0x4086b0
jmp 0x437b73
cmp di, 0x4d
jne 0x437b42
mov edx, 0x4086b8
jmp 0x437b73
cmp di, 0xbc
jne 0x437b50
mov edx, 0x408630
jmp 0x437b73
cmp di, 0xbe
jne 0x437b5e
mov edx, 0x407f60
jmp 0x437b73
mov ecx, 8
call dword [sym.imp.MSVBVM60.DLL___vbaI2I4]
cmp di, ax
jne 0x437b78
mov edx, 0x408bd8
lea ecx, [ebp - 0x24]
call esi
mov dword [ebp - 0x44], ebx
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaVarMove]
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x4c], 2
call ebx
mov ecx, dword [ebp - 0x24]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrCmp]
push ecx
push 0x407d58
call edi
test eax, eax
je 0x437e29
mov edx, dword [ebp - 0x24]
push edx
push 0x408bd8
call edi
test eax, eax
jne 0x437c2c
mov eax, dword [0x44b054]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
push eax
call edi
test eax, eax
jle 0x437c57
mov ecx, dword [0x44b054]
mov dword [ebp - 0x44], 0x44b054
push ecx
mov dword [ebp - 0x4c], 0x4008
call edi
sub eax, 1
lea edx, [ebp - 0x4c]
jo 0x437e72
push eax
lea eax, [ebp - 0x3c]
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcLeftCharVar]
lea ecx, [ebp - 0x3c]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
mov ecx, 0x44b054
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
lea ecx, [ebp - 0x3c]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
mov edx, dword [0x44b054]
mov ecx, 0x44b058
call esi
jmp 0x437c57
mov edx, dword [0x44b054]
mov ecx, 0x44b058
call esi
mov edx, dword [0x44b054]
mov eax, dword [ebp - 0x24]
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
mov edx, eax
mov ecx, 0x44b054
call dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
push 0x44b054
call fcn.004376f0
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x20]
mov word [ebp - 0x44], ax
mov dword [ebp - 0x4c], 2
call ebx
lea ecx, [ebp - 0x20]
lea edx, [ebp - 0x4c]
xor ebx, ebx
push ecx
push edx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x4c], 0x8002
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstGe]
test ax, ax
je 0x437e1c
mov eax, dword [0x44b010]
cmp eax, ebx
jne 0x437cb5
push 0x44b010
push 0x4091f0
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov eax, dword [0x44b010]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x4fc]
lea edx, [ebp - 0x2c]
push eax
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
mov esi, eax
lea eax, [ebp - 0x20]
lea ecx, [ebp - 0x28]
push eax
mov edi, dword [esi]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarVal]
push eax
push esi
call dword [edi + 0xa4]
cmp eax, ebx
fnclex
jge 0x437cfb
push 0xa4
push 0x408080
push esi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
mov dx, word [0x44b044]
lea eax, [ebp - 0x20]
sub dx, 0x15
lea ecx, [ebp - 0x4c]
mov esi, 0x8002
push eax
jo 0x437e72
push ecx
mov word [ebp - 0x44], dx
mov dword [ebp - 0x4c], esi
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstLt]
test ax, ax
je 0x437dd0
lea edx, [ebp - 0x20]
lea eax, [ebp - 0x4c]
push edx
push eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x4c], esi
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstGt]
test ax, ax
je 0x437d96
lea ecx, [ebp - 0x20]
lea edx, [ebp - 0x4c]
push ecx
lea eax, [ebp - 0x3c]
mov edi, 1
push edx
push eax
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x4c], 2
call dword [sym.imp.MSVBVM60.DLL___vbaVarSub]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaI2Var]
mov word [0x44b04a], ax
mov word [0x44b04c], bx
mov word [0x44b04e], di
lea ecx, [ebp - 0x20]
lea edx, [ebp - 0x4c]
push ecx
push edx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x4c], esi
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstEq]
test ax, ax
je 0x437e10
mov word [0x44b04a], bx
mov word [0x44b04c], bx
mov word [0x44b04e], bx
call fcn.00423bb0
push 0x437e5f
jmp 0x437e4c
mov ax, word [0x44b046]
lea ecx, [ebp - 0x4c]
sub ax, 0x15
lea edx, [ebp - 0x3c]
jo 0x437e72
mov word [0x44b04a], ax
mov word [ebp - 0x44], ax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x4c], 2
push eax
push ecx
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaVarSub]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaI2Var]
mov word [0x44b04e], ax
call fcn.00423bb0
push 0x437e5f
jmp 0x437e4c
mov edx, dword [0x44b058]
mov ecx, 0x44b054
call esi
push 0x437e5f
jmp 0x437e4c
lea ecx, [ebp - 0x20]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
ret
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
nop
nop
nop
nop