Function at 0x461ef0
Capabilities:
Acquire debug privileges

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push 0x402c56
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x548
push ebx
push esi
push edi
mov dword [ebp - 0x14], esp
mov dword [ebp - 0x10], 0x402708
xor esi, esi
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], esi
mov dword [ebp - 0x24], esi
mov ecx, 0x8b
xor eax, eax
lea edi, [ebp - 0x258]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x268], esi
mov dword [ebp - 0x274], esi
mov dword [ebp - 0x278], esi
mov dword [ebp - 0x288], esi
mov dword [ebp - 0x298], esi
mov dword [ebp - 0x2a8], esi
mov dword [ebp - 0x2b8], esi
mov dword [ebp - 0x2c8], esi
mov dword [ebp - 0x2fc], esi
mov ecx, 0x4a
lea edi, [ebp - 0x42c]
rep stosd dword es:[edi], eax
mov ecx, 0x4a
lea edi, [ebp - 0x554]
rep stosd dword es:[edi], eax
push 1
call dword [sym.imp.MSVBVM60.DLL___vbaOnError]
mov dword [ebp - 0x2c], esi
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
mov ecx, eax
call dword [sym.imp.MSVBVM60.DLL___vbaI2I4]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x258], 0x128
mov dword [ebp - 0x2fc], esi
lea ecx, [ebp - 0x2fc]
push ecx
push 2
call fcn.00405bb4
mov edi, eax
mov dword [ebp - 0x300], edi
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x42c]
push eax
push 0x407f30
call dword [sym.imp.MSVBVM60.DLL___vbaRecUniToAnsi]
push eax
push edi
call fcn.00405bfc
mov dword [ebp - 0x2fc], eax
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
lea ecx, [ebp - 0x42c]
push ecx
lea edx, [ebp - 0x258]
push edx
push 0x407f30
call dword [sym.imp.MSVBVM60.DLL___vbaRecAnsiToUni]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
cmp dword [ebp - 0x2fc], esi
je 0x461db6
lea eax, [ebp - 0x234]
push eax
push 0x104
call dword [sym.imp.MSVBVM60.DLL___vbaStrFixstr]
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x298], 8
push esi
lea ecx, [ebp - 0x288]
push ecx
call dword [sym.imp.MSVBVM60.DLL_rtcVarBstrFromAnsi]
push 1
lea edx, [ebp - 0x298]
push edx
lea eax, [ebp - 0x288]
push eax
push esi
lea ecx, [ebp - 0x2a8]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaInStrVar]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaI2Var]
mov esi, eax
lea edx, [ebp - 0x2a8]
push edx
lea eax, [ebp - 0x298]
push eax
lea ecx, [ebp - 0x288]
push ecx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeVarList]
add esp, 0x10
sub si, 1
jo 0x461ee6
movsx edx, si
push edx
lea eax, [ebp - 0x234]
push eax
push 0x104
call dword [sym.imp.MSVBVM60.DLL___vbaStrFixstr]
mov edx, eax
lea ecx, [ebp - 0x274]
call edi
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcLeftCharBstr]
mov edx, eax
lea ecx, [ebp - 0x278]
call edi
mov ecx, dword [ebp - 0x274]
push ecx
lea edx, [ebp - 0x234]
push edx
push 0x104
call dword [sym.imp.MSVBVM60.DLL___vbaLsetFixstr]
mov eax, dword [ebp - 0x278]
push eax
mov esi, dword [sym.imp.MSVBVM60.DLL_rtcLowerCaseBstr]
call esi
mov edx, eax
lea ecx, [ebp - 0x268]
call edi
lea ecx, [ebp - 0x278]
push ecx
lea edx, [ebp - 0x274]
push edx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0xc
mov eax, dword [ebx]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
push eax
mov ecx, dword [ebp - 0x268]
push ecx
call dword [sym.imp.MSVBVM60.DLL_rtcRightCharBstr]
mov edx, eax
lea ecx, [ebp - 0x274]
call edi
push eax
mov edx, dword [ebx]
push edx
call esi
mov edx, eax
lea ecx, [ebp - 0x278]
call edi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrCmp]
mov esi, eax
neg esi
sbb esi, esi
inc esi
neg esi
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x274]
push ecx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0xc
test si, si
je 0x461d64
mov edx, dword [ebp - 0x268]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
movsx ecx, word [ebp - 0x25c]
cmp eax, ecx
jne 0x461d64
mov dword [ebp - 0x24], 0xffffffff
mov dx, word [ebp - 0x2c]
add dx, 1
jo 0x461ee6
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x250]
push eax
push 0
push 0
call fcn.004060b8
mov dword [ebp - 0x2fc], eax
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
push 0
mov ecx, dword [ebp - 0x250]
push ecx
call 0x461ef0
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x554]
push eax
push 0x407f30
call dword [sym.imp.MSVBVM60.DLL___vbaRecUniToAnsi]
push eax
mov ecx, dword [ebp - 0x300]
push ecx
call fcn.00405c54
mov dword [ebp - 0x2fc], eax
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
lea edx, [ebp - 0x554]
push edx
lea eax, [ebp - 0x258]
push eax
push 0x407f30
call dword [sym.imp.MSVBVM60.DLL___vbaRecAnsiToUni]
xor esi, esi
jmp 0x461ba2
mov ecx, dword [ebp - 0x300]
push ecx
call fcn.00405d28
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
call dword [sym.imp.MSVBVM60.DLL___vbaExitProc]
push 0x461ecf
jmp 0x461ec2
lea ecx, [ebp - 0x268]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
ret
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
push ebp
mov ebp, esp
sub esp, 8
push 0x402c56
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x34
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x402730
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x34], ebx
call fcn.00407fd8
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov edi, eax
call esi
cmp edi, ebx
jl 0x461ff0
call fcn.00408024
mov edi, eax
call esi
lea ecx, [ebp - 0x28]
push ecx
push 0x28
push edi
call fcn.00408070
mov edi, eax
call esi
xor edx, edx
cmp edi, ebx
sete dl
neg edx
test dx, dx
jne 0x462058
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrToAnsi]
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x34]
push 0x40c080
push ecx
call edi
push eax
lea edx, [ebp - 0x30]
push 0x40535c
push edx
call edi
push eax
call fcn.004080c0
mov edi, eax
call esi
xor eax, eax
cmp edi, ebx
lea ecx, [ebp - 0x34]
lea edx, [ebp - 0x30]
sete al
push ecx
push edx
neg eax
push 2
mov edi, eax
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0xc
cmp di, bx
jne 0x462058
mov ecx, dword [ebp - 0x28]
push ebx
push ebx
lea eax, [ebp - 0x24]
push ebx
push eax
push ebx
push ecx
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x18], 2
call fcn.00408110
mov edi, eax
call esi
cmp edi, ebx
je 0x462058
mov edx, dword [ebp + 8]
push edx
push ebx
push 0x1f0fff
call fcn.004060b8
mov edi, eax
call esi
test edi, edi
mov ebx, edi
je 0x46202b
mov eax, dword [ebp + 0xc]
push eax
push edi
call fcn.00407f78
mov edi, eax
call esi
xor ecx, ecx
push ebx
test edi, edi
setne cl
neg ecx
mov dword [ebp - 0x2c], ecx
call fcn.00405d28
call esi
call fcn.00407fd8
mov edi, eax
call esi
test edi, edi
jl 0x462067
mov eax, dword [ebp - 0x28]
push 0
push 0
lea edx, [ebp - 0x24]
push 0
push edx
push 0
push eax
mov dword [ebp - 0x18], 0
call fcn.00408110
call esi
xor ebx, ebx
mov eax, dword [ebp - 0x28]
cmp eax, ebx
je 0x462067
push eax
call fcn.00405d28
call esi
push 0x462083
jmp 0x462082
ret