Function at 0x531590
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push 0x402556
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x98
push ebx
push esi
push edi
mov dword [ebp - 0x14], esp
mov dword [ebp - 0x10], 0x401740
xor ebx, ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x90], ebx
push 1
call dword [sym.imp.MSVBVM60.DLL___vbaOnError]
mov edx, 0x40b6f0
lea ecx, [ebp - 0x24]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
call esi
mov edx, 0x410e1c
lea ecx, [ebp - 0x20]
call esi
cmp word [0x587068], bx
jl 0x531694
mov eax, dword [ebp - 0x20]
push eax
push 0x410e98
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
call edi
mov edx, eax
lea ecx, [ebp - 0x30]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
call esi
push eax
mov cx, word [0x587068]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaStrI2]
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
call edi
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
push 0x4101a4
call edi
mov edx, eax
lea ecx, [ebp - 0x20]
call esi
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x30]
push ecx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0x10
jmp 0x5316a0
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaStrMove]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
mov edx, dword [ebp - 0x20]
push edx
push 0x410ec8
call edi
mov edx, eax
lea ecx, [ebp - 0x30]
call esi
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call edi
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
push 0x4101a4
call edi
mov edx, eax
lea ecx, [ebp - 0x20]
call esi
lea edx, [ebp - 0x34]
push edx
lea eax, [ebp - 0x30]
push eax
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
add esp, 0xc
mov ecx, dword [ebp - 0x20]
push ecx
push 0x410ef8
call edi
mov edx, eax
lea ecx, [ebp - 0x20]
call esi
cmp dword [0x587050], ebx
jne 0x53170e
push 0x587050
push 0x40c61c
call dword [sym.imp.MSVBVM60.DLL___vbaNew2]
mov edi, dword [0x587050]
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x90], 3
mov dword [ebp - 0x8c], 1
mov dword [ebp - 0x88], ebx
mov edx, dword [edi]
lea eax, [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x84]
push ecx
lea eax, [ebp - 0x90]
push eax
lea ecx, [ebp - 0x8c]
push ecx
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x20]
push ecx
push edi
call dword [edx + 0xdc]
fnclex
cmp eax, ebx
jge 0x53177d
push 0xdc
push 0x40c4f0
push edi
push eax
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
call edi
jmp 0x531783
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
push 0x40be58
mov edx, dword [ebp - 0x3c]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaCastObj]
push eax
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaObjSet]
lea ecx, [ebp - 0x3c]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
lea edx, [ebp - 0x88]
push edx
push eax
call dword [ecx + 0xdc]
fnclex
cmp eax, ebx
jge 0x5317d0
push 0xdc
push 0x40c6fc
mov ecx, dword [ebp - 0x28]
push ecx
push eax
call edi
cmp dword [ebp - 0x88], 1
jne 0x531ace
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
lea ecx, [ebp - 0x84]
push ecx
push eax
call dword [edx + 0x50]
fnclex
cmp eax, ebx
jge 0x531801
push 0x50
push 0x40c6fc
mov edx, dword [ebp - 0x28]
push edx
push eax
call edi
cmp word [ebp - 0x84], bx
jne 0x531ace
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
jmp 0x531818
xor ebx, ebx
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
lea edx, [ebp - 0x84]
push edx
push eax
call dword [ecx + 0x50]
fnclex
cmp eax, ebx
jge 0x531840
push 0x50
push 0x40c6fc
mov ecx, dword [ebp - 0x28]
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
cmp word [ebp - 0x84], bx
jne 0x531ad4
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x70], 0x4008
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x50]
push ecx
call dword [sym.imp.MSVBVM60.DLL_rtcTrimVar]
mov dword [ebp - 0x78], 0x40b6f0
mov dword [ebp - 0x80], 0x8008
lea edx, [ebp - 0x50]
push edx
lea eax, [ebp - 0x80]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstNe]
mov bx, ax
lea ecx, [ebp - 0x50]
call edi
test bx, bx
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
lea edx, [ebp - 0x3c]
push edx
push eax
je 0x5319b5
call dword [ecx + 0x54]
fnclex
test eax, eax
jge 0x5318ba
push 0x54
push 0x40c6fc
mov ecx, dword [ebp - 0x28]
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x68], 0x410f24
mov ecx, 8
mov dword [ebp - 0x70], ecx
mov edx, dword [eax]
lea ebx, [ebp - 0x40]
push ebx
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [ebx + 4], ecx
mov ecx, dword [ebp - 0x68]
mov dword [ebx + 8], ecx
mov ecx, dword [ebp - 0x64]
mov dword [ebx + 0xc], ecx
push eax
call dword [edx + 0x28]
fnclex
test eax, eax
jge 0x531910
push 0x28
push 0x40c900
mov edx, dword [ebp - 0x98]
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x40]
mov ebx, eax
mov ecx, dword [eax]
lea edx, [ebp - 0x50]
push edx
push eax
call dword [ecx + 0x34]
fnclex
test eax, eax
jge 0x531934
push 0x34
push 0x40c910
push ebx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x2c]
push eax
push 0x40d9c4
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaStrCat]
call ebx
mov edx, eax
lea ecx, [ebp - 0x34]
call esi
push eax
push 0
push 0xffffffffffffffff
push 1
push 0x40b6f0
push 0x40c560
lea ecx, [ebp - 0x50]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x30]
call esi
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcReplace]
mov edx, eax
lea ecx, [ebp - 0x38]
call esi
push eax
call ebx
mov edx, eax
lea ecx, [ebp - 0x2c]
call esi
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x30]
push ecx
push 3
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStrList]
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0x3c]
push eax
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
add esp, 0x1c
lea ecx, [ebp - 0x50]
jmp 0x531a9c
call dword [ecx + 0x54]
fnclex
test eax, eax
jge 0x5319d0
push 0x54
push 0x40c6fc
mov ecx, dword [ebp - 0x28]
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x98], eax
mov ecx, 0x410f24
mov dword [ebp - 0x68], ecx
mov edx, 8
mov dword [ebp - 0x70], edx
mov edi, dword [eax]
lea ebx, [ebp - 0x40]
push ebx
sub esp, 0x10
mov ebx, esp
mov dword [ebx], edx
mov edx, dword [ebp - 0x6c]
mov dword [ebx + 4], edx
mov dword [ebx + 8], ecx
mov ecx, dword [ebp - 0x64]
mov dword [ebx + 0xc], ecx
push eax
call dword [edi + 0x28]
fnclex
test eax, eax
jge 0x531a24
push 0x28
push 0x40c900
mov edx, dword [ebp - 0x98]
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [ebp - 0x40]
mov edi, eax
mov ecx, dword [eax]
lea edx, [ebp - 0x50]
push edx
push eax
call dword [ecx + 0x34]
fnclex
test eax, eax
jge 0x531a48
push 0x34
push 0x40c910
push edi
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
push 0
push 0xffffffffffffffff
push 1
push 0x40b6f0
push 0x40c560
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x30]
call esi
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcReplace]
mov edx, eax
lea ecx, [ebp - 0x2c]
call esi
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
lea ecx, [ebp - 0x40]
push ecx
lea edx, [ebp - 0x3c]
push edx
push 2
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObjList]
add esp, 0xc
lea ecx, [ebp - 0x50]
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
call edi
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
push eax
call dword [ecx + _CIatan]
fnclex
test eax, eax
jge 0x531816
push _CIatan
push 0x40c6fc
mov edx, dword [ebp - 0x28]
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
jmp 0x531816
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaFreeVar]
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x68], eax
mov ebx, 0x4008
mov dword [ebp - 0x70], ebx
push 0x14
lea ecx, [ebp - 0x70]
push ecx
lea edx, [ebp - 0x50]
push edx
call dword [sym.imp.MSVBVM60.DLL_rtcLeftVar]
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x2c]
call esi
lea ecx, [ebp - 0x50]
call edi
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x70], ebx
push 1
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcRightCharVar]
mov dword [ebp - 0x78], 0x40d9c4
mov dword [ebp - 0x80], 0x8008
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x80]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaVarTstEq]
mov bx, ax
lea ecx, [ebp - 0x50]
call edi
test bx, bx
je 0x531b8f
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x70], 0x4008
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaLenBstr]
sub eax, 1
jo 0x531c9d
push eax
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.MSVBVM60.DLL_rtcLeftCharVar]
lea ecx, [ebp - 0x50]
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaStrVarMove]
mov edx, eax
lea ecx, [ebp - 0x2c]
call esi
lea ecx, [ebp - 0x50]
call edi
mov edx, dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
call dword [fcn.004010b4]
push 0x531c87
jmp 0x531c6d
lea ecx, [ebp - 0x20]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaFreeStr]
call esi
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVBVM60.DLL___vbaFreeObj]
lea ecx, [ebp - 0x2c]
call esi
ret
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop