Function at 0x40da55
Capabilities:
Reference sql statements

Disassembly:
push ebx
mov ebx, esp
push ecx
push ecx
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x40
mov eax, dword [ebx + 8]
xorps xmm1, xmm1
push esi
push edi
mov dword [ebp - 0x18], ecx
mov esi, dword [eax]
mov edx, dword [eax + 4]
mov eax, esi
sub eax, edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x2c], eax
cmp byte [esi], 0x2d
movsd qword [ebp - 0x40], xmm1
jne 0x40da96
inc esi
mov ah, 1
jmp 0x40da98
xor ah, ah
mov al, byte [esi]
xor edx, edx
xor edi, edi
mov byte [ebp - 3], ah
mov dword [ebp - 0xc], edx
xorps xmm0, xmm0
movlpd qword [ebp - 0x20], xmm0
mov byte [ebp - 2], dl
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x28], 0xa
cmp al, 0x30
jne 0x40dad5
mov edi, dword [ebp - 0x1c]
inc esi
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], edx
mov byte [ebp - 1], dl
mov dword [ebp - 8], edi
mov dword [ebp - 0x10], ecx
jmp 0x40dcb4
mov dword [ebp - 0x30], 0xccccccc
mov dword [ebp - 0x34], 0x19999999
cmp al, 0x31
jl 0x40db60
cmp al, 0x39
jg 0x40db60
inc esi
movsx edx, al
sub edx, 0x30
mov dword [ebp - 0xc], edx
mov al, byte [esi]
test ah, ah
je 0x40db5a
jmp 0x40db23
cmp al, 0x39
jg 0x40db78
mov ecx, dword [ebp - 0x30]
cmp edx, ecx
jb 0x40db0e
jne 0x40db29
cmp al, 0x38
jg 0x40db29
imul ecx, edx, 0xa
inc esi
movsx eax, al
lea edx, [eax - 0x30]
mov al, byte [esi]
add edx, ecx
inc edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x14], edi
cmp al, 0x30
jge 0x40dafd
jmp 0x40db78
mov al, 1
mov ecx, edx
xor edi, edi
mov byte [ebp - 2], al
jmp 0x40db81
cmp al, 0x39
jg 0x40db78
mov ecx, dword [ebp - 0x34]
cmp edx, ecx
jb 0x40db45
jne 0x40db29
cmp al, 0x35
jg 0x40db29
imul ecx, edx, 0xa
inc esi
movsx eax, al
lea edx, [eax - 0x30]
mov al, byte [esi]
add edx, ecx
inc edi
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x14], edi
cmp al, 0x30
jge 0x40db34
jmp 0x40db78
mov eax, esi
mov dword [ecx + 0x18], 3
sub eax, dword [ebp - 0x24]
mov dword [ecx + 0x1c], eax
cmp dword [ecx + 0x18], edx
jne 0x40df95
mov edi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov al, byte [ebp - 2]
mov dword [ebp - 8], edi
mov dword [ebp - 0x10], ecx
mov byte [ebp - 1], 0
test al, al
je 0x40dcb4
cmp byte [ebp - 3], 0
mov al, byte [esi]
je 0x40dc14
cmp al, 0x30
jl 0x40dcb4
cmp al, 0x39
jg 0x40dc0a
mov edx, dword [ebp - 0x30]
cmp edi, edx
jb 0x40dbd4
ja 0x40dbb8
cmp ecx, 0xcccccccc
jb 0x40dbd4
cmp ecx, 0xcccccccc
jne 0x40dc79
cmp edi, edx
jne 0x40dc79
cmp al, 0x38
jg 0x40dc79
inc esi
movsx eax, al
mov dword [ebp - 0x1c], esi
xor esi, esi
push esi
push dword [ebp - 0x28]
cdq
push dword [ebp - 8]
mov edi, eax
push ecx
add edi, 0xffffffd0
call fcn.0048da00
add edi, eax
mov ecx, edi
adc esi, edx
mov dword [ebp - 0x10], ecx
inc dword [ebp - 0x14]
mov edi, esi
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 8], edi
mov al, byte [esi]
cmp al, 0x30
jge 0x40dba3
movsd xmm1, qword [ebp - 0x40]
jmp 0x40dcb1
cmp al, 0x30
jl 0x40dcb4
cmp al, 0x39
jg 0x40dc0a
mov edx, dword [ebp - 0x34]
cmp edi, edx
jb 0x40dc41
ja 0x40dc31
cmp ecx, 0x99999999
jb 0x40dc41
cmp ecx, 0x99999999
jne 0x40dc79
cmp edi, edx
jne 0x40dc79
cmp al, 0x35
jg 0x40dc79
inc esi
movsx eax, al
mov dword [ebp - 0x1c], esi
xor esi, esi
push esi
push dword [ebp - 0x28]
cdq
push dword [ebp - 8]
mov edi, eax
push ecx
add edi, 0xffffffd0
call fcn.0048da00
add edi, eax
mov ecx, edi
adc esi, edx
mov dword [ebp - 0x10], ecx
inc dword [ebp - 0x14]
mov edi, esi
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 8], edi
mov al, byte [esi]
cmp al, 0x30
jge 0x40dc1c
jmp 0x40dc0a
mov edx, edi
call 0x48e780
mov byte [ebp - 1], 1
jmp 0x40dca5
cmp al, 0x39
jg 0x40dcae
mulsd xmm1, qword [0x4a78f8]
inc esi
movsx eax, al
sub eax, 0x30
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
mov al, byte [esi]
movaps xmm1, xmm0
cmp al, 0x30
jge 0x40dc86
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
and dword [ebp - 0x1c], 0
cmp byte [esi], 0x2e
jne 0x40dd5b
inc esi
mov al, byte [esi]
cmp al, 0x30
jl 0x40dccc
cmp al, 0x39
jle 0x40dcf0
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x18]
mov dword [eax + 0x18], 0xe
mov eax, esi
sub eax, dword [ebp - 0x24]
mov dword [edi + 0x1c], eax
mov eax, edi
mov edi, dword [ebp - 8]
cmp dword [eax + 0x18], 0
jne 0x40df95
cmp byte [ebp - 1], 0
jne 0x40dd10
cmp byte [ebp - 2], 0
je 0x40dd00
mov edx, edi
jmp 0x40dd04
mov ecx, edx
xor edx, edx
call 0x48e780
movaps xmm1, xmm0
mov byte [ebp - 1], 1
mov al, byte [esi]
cmp al, 0x30
jl 0x40dd5b
mov ecx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
cmp al, 0x39
jg 0x40dd55
inc esi
cmp ecx, 0x11
jge 0x40dd4f
mulsd xmm1, qword [0x4a78f8]
movsx eax, al
sub eax, 0x30
dec edi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
movaps xmm1, xmm0
comisd xmm1, xmmword [0x4a78c8]
jbe 0x40dd4f
inc ecx
mov al, byte [esi]
cmp al, 0x30
jge 0x40dd1c
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 8]
mov al, byte [esi]
xor ecx, ecx
mov dword [ebp - 0x34], ecx
cmp al, 0x65
je 0x40dd6e
cmp al, 0x45
jne 0x40de71
inc esi
cmp byte [ebp - 1], cl
jne 0x40dd94
cmp byte [ebp - 2], cl
je 0x40dd80
mov ecx, dword [ebp - 0x10]
mov edx, edi
jmp 0x40dd85
mov ecx, dword [ebp - 0xc]
xor edx, edx
call 0x48e780
mov ecx, dword [ebp - 0x34]
movaps xmm1, xmm0
mov byte [ebp - 1], 1
mov al, byte [esi]
xor dl, dl
mov byte [ebp - 4], dl
cmp al, 0x2b
je 0x40dda8
cmp al, 0x2d
jne 0x40dda9
inc dl
mov byte [ebp - 4], dl
inc esi
mov al, byte [esi]
cmp al, 0x30
jl 0x40de4d
cmp al, 0x39
jg 0x40de4d
movsx ecx, al
inc esi
mov eax, dword [ebp - 0x1c]
sub ecx, 0x30
test dl, dl
je 0x40de0b
add eax, 0x7ffffff7
cdq
idiv dword [ebp - 0x28]
mov dword [ebp - 0x34], eax
jmp 0x40de02
cmp dl, 0x39
jg 0x40de69
imul ecx, ecx, 0xa
inc esi
movsx eax, dl
add ecx, 0xffffffd0
add ecx, eax
cmp ecx, dword [ebp - 0x34]
jle 0x40de02
mov al, byte [esi]
cmp al, 0x30
jl 0x40de69
cmp al, 0x39
jg 0x40de02
inc esi
mov al, byte [esi]
cmp al, 0x30
jge 0x40ddf7
mov dl, byte [esi]
cmp dl, 0x30
jge 0x40ddd7
jmp 0x40de69
mov edx, 0x134
sub edx, eax
jmp 0x40de45
cmp al, 0x39
jg 0x40de71
imul ecx, ecx, 0xa
inc esi
movsx eax, al
add ecx, 0xffffffd0
add ecx, eax
cmp ecx, edx
jle 0x40de45
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edi
mov edi, dword [ebp - 8]
mov dword [eax + 0x18], 0xd
cmp dword [eax + 0x18], 0
jne 0x40df95
mov al, byte [esi]
cmp al, 0x30
jge 0x40de14
jmp 0x40de71
mov edx, dword [ebp - 0x18]
mov eax, esi
sub eax, dword [ebp - 0x24]
mov dword [edx + 0x18], 0xf
mov dword [edx + 0x1c], eax
cmp dword [edx + 0x18], 0
jne 0x40df95
cmp byte [ebp - 4], 0
je 0x40de71
neg ecx
cmp byte [ebp - 1], 0
je 0x40dee3
add ecx, dword [ebp - 0x1c]
mov eax, 0xfffffecc
cmp ecx, eax
jge 0x40de9a
divsd xmm1, qword [0x4a79b8]
add ecx, 0x134
cmp ecx, eax
jge 0x40de9a
xorps xmm0, xmm0
jmp 0x40dec6
movaps xmm0, xmm1
call fcn.00408b49
comisd xmm0, xmmword [0x4a79c0]
jbe 0x40dec6
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 0x18], 0xd
mov dword [eax + 0x1c], ecx
cmp dword [eax + 0x18], 0
jne 0x40df95
cmp byte [ebp - 3], 0
je 0x40ded3
xorps xmm0, xmmword [0x4a7a00]
mov ecx, dword [ebx + 0xc]
movaps xmm1, xmm0
call fcn.0040e107
jmp 0x40df81
cmp byte [ebp - 2], 0
je 0x40df62
cmp byte [ebp - 3], 0
je 0x40df31
mov ecx, dword [ebx + 0xc]
add ecx, 0x18
mov dword [ebp - 0x34], ecx
mov eax, dword [ecx + 0xc]
add eax, 0x10
cmp eax, dword [ecx + 0x10]
jbe 0x40df0c
push ecx
call fcn.0040e70e
mov ecx, dword [ebp - 0x34]
mov edx, dword [ecx + 0xc]
lea eax, [edx + 0x10]
mov dword [ecx + 0xc], eax
test edx, edx
je 0x40df95
mov eax, dword [ebp - 0x10]
not edi
not eax
mov ecx, edx
add eax, 1
adc edi, 0
push edi
push eax
call fcn.0040e311
jmp 0x40df95
mov edi, dword [ebx + 0xc]
mov eax, dword [edi + 0x24]
add eax, 0x10
cmp eax, dword [edi + 0x28]
jbe 0x40df48
push ecx
lea ecx, [edi + 0x18]
call fcn.0040e70e
mov ecx, dword [edi + 0x24]
lea eax, [ecx + 0x10]
mov dword [edi + 0x24], eax
test ecx, ecx
je 0x40df95
push dword [ebp - 8]
push dword [ebp - 0x10]
call fcn.0040e2bc
jmp 0x40df95
cmp byte [ebp - 3], 0
mov ecx, dword [ebx + 0xc]
je 0x40df79
mov eax, dword [ebp - 0xc]
not eax
inc eax
push eax
call fcn.0040e1ad
jmp 0x40df81
push dword [ebp - 0xc]
call fcn.0040e15b
test al, al
jne 0x40df95
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 0x18], 0x10
mov dword [eax + 0x1c], ecx
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x24]
pop edi
mov dword [eax], esi
mov dword [eax + 4], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8