Function at 0x46d0d0
Capabilities:
Reference sql statements

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x46d82d
sub esp, 0x98
mov ecx, dword [esp + 0xb0]
lea edx, [ecx - 2]
cmp edx, 0x22
ja 0x46d814
mov dword [esp + 0x53], 0
lea edi, [esp + 0x54]
xor eax, eax
call fcn.0045a170
movzx ecx, byte [esp + 0xb4]
test cl, cl
je 0x46d13b
mov edx, dword [esp + 0xa8]
sub eax, edx
mov edx, 0
mov ebx, dword [esp + 0xac]
sbb edx, ebx
jmp 0x46d149
mov eax, dword [esp + 0xa8]
mov edx, dword [esp + 0xac]
mov ebx, dword [esp + 0xb0]
cmp ebx, 0xa
jne 0x46d15f
mov ebx, 0x41
jmp 0x46d576
lea ebp, [ebx - 1]
test ebx, ebp
jne 0x46d1a9
mov ebp, ebx
neg ebx
and ebx, ebp
imul ebx, ebx, 0x77cb531
shr ebx, 0x1b
lea esi, [0x58b100]
movzx ebx, byte [esi + ebx]
and ebx, 7
mov esi, ebp
sar ebp, 0x1f
mov dword [esp + 0x44], ebp
lea edi, [esi - 1]
mov dword [esp + 0x20], edi
nop
mov dword [esp + 0x48], eax
mov eax, 0x41
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x48]
jmp 0x46d4c6
mov ebp, ebx
sar ebx, 0x1f
mov dword [esp + 0x44], ebx
mov esi, 0x41
jmp 0x46d1d4
mov byte [esp + ebp + 0x52], dl
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0xb0]
mov edx, eax
mov eax, ecx
movzx ecx, byte [esp + 0xb4]
mov dword [esp + 0x28], esi
cmp edx, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp ebp, eax
xchg esi, ebx
setbe bl
xchg esi, ebx
cmp edx, ebx
xchg ebp, ebx
seta bl
xchg ebp, ebx
and esi, edi
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x46d25d
mov dword [esp + 0x40], eax
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [esp + 0xc], ebx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 8], ecx
call fcn.004546a0
mov eax, dword [esp + 0x10]
mov ecx, eax
mov eax, dword [esp + 0xb0]
mul ecx
mov edx, dword [esp + 0x40]
sub edx, eax
mov eax, dword [esp + 0x14]
cmp edx, 0x24
jae 0x46d447
mov ebp, dword [esp + 0x28]
lea esi, [ebp - 1]
lea edi, [0x4ee629]
movzx edx, byte [edi + edx]
cmp esi, 0x41
jb 0x46d1b9
jmp 0x46d43b
cmp eax, 0x24
jae 0x46d431
mov edx, dword [esp + 0x28]
lea ebx, [edx - 1]
lea ebp, [0x4ee629]
movzx ebp, byte [ebp + eax]
cmp ebx, 0x41
jae 0x46d425
xchg ebp, eax
mov byte [esp + edx + 0x52], al
xchg ebp, eax
test cl, cl
je 0x46d29e
lea eax, [ebx - 1]
cmp eax, 0x41
jae 0x46d41b
mov byte [esp + ebx + 0x52], 0x2d
jmp 0x46d2a0
mov eax, ebx
movzx edx, byte [esp + 0xb5]
test dl, dl
je 0x46d39e
cmp eax, 0x41
ja 0x46d411
mov ecx, dword [esp + 0xa0]
mov edx, ecx
sub ecx, eax
add ecx, 0x41
mov dword [esp + 0x3c], ecx
lea ebx, [eax - 0x41]
neg ebx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and eax, ebx
lea eax, [esp + eax + 0x53]
mov ebx, dword [esp + 0xa4]
cmp ebx, ecx
jb 0x46d2f1
mov esi, dword [esp + 0x9c]
jmp 0x46d33f
mov dword [esp + 0x38], ebp
mov dword [esp + 0x94], eax
lea eax, [0x4d7300]
mov dword [esp], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
call fcn.00443e90
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x38]
mov esi, eax
mov ebx, ecx
mov eax, dword [esp + 0x94]
mov dword [esp + 0x94], esi
mov dword [esp + 0x38], ebx
lea ecx, [esi + edx]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
call fcn.0045a880
mov eax, dword [esp + 0x94]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
add esp, 0x98
ret
cmp eax, 0x41
ja 0x46d407
mov dword [esp], 0
lea ecx, [eax - 0x41]
neg ecx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and eax, ecx
lea eax, [esp + eax + 0x53]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00447480
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], ecx
add esp, 0x98
ret
mov ecx, 0x41
call fcn.0045a090
mov ecx, 0x41
call fcn.0045a090
mov ecx, 0x41
call fcn.0045a030
mov eax, ebx
mov ecx, 0x41
call fcn.0045a030
mov ecx, 0x24
call fcn.0045a040
mov eax, esi
mov ecx, 0x41
call fcn.0045a030
mov eax, edx
mov ecx, 0x24
call fcn.0045a040
xchg edi, eax
mov byte [esp + ebp + 0x52], al
xchg edi, eax
lea ebp, [ebx - 0x20]
mov dword [esp + 0x34], ebp
cmp ebp, 0x20
sbb edi, edi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
cmp ebp, 0x20
sbb ecx, ecx
mov dword [esp + 0x30], ecx
mov ecx, ebx
mov edx, dword [esp + 0x40]
shr edx, cl
mov dword [esp + 0x2c], edx
mov ecx, ebp
mov edx, dword [esp + 0x40]
mov ebp, edx
shl edx, cl
mov ecx, dword [esp + 0x30]
and edx, ecx
mov ecx, ebx
shr eax, cl
or eax, edx
mov ecx, dword [esp + 0x34]
shr ebp, cl
and ebp, edi
or eax, ebp
mov ecx, dword [esp + 0xb0]
mov ebp, dword [esp + 0x44]
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
movzx ecx, byte [esp + 0xb4]
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0xb0]
mov dword [esp + 0x40], edx
cmp edx, ebp
xchg ebp, ebx
seta bl
xchg ebp, ebx
sete dl
cmp esi, eax
xchg esi, ebx
setbe bl
xchg esi, ebx
and esi, edx
or esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x46d50c
and edi, eax
cmp edi, 0x24
jae 0x46d556
mov ebp, dword [esp + 0x28]
lea esi, [ebp - 1]
lea edx, [0x4ee629]
movzx edi, byte [edx + edi]
cmp esi, 0x41
jb 0x46d453
jmp 0x46d54a
cmp eax, 0x24
jae 0x46d540
mov edx, dword [esp + 0x28]
lea ebx, [edx - 1]
lea ebp, [0x4ee629]
movzx ebp, byte [eax + ebp]
cmp ebx, 0x41
jae 0x46d534
xchg ebp, eax
mov byte [esp + edx + 0x52], al
xchg ebp, eax
test cl, cl
jmp 0x46d289
mov eax, ebx
mov ecx, 0x41
call fcn.0045a030
mov ecx, 0x24
call fcn.0045a040
mov eax, esi
mov ecx, 0x41
call fcn.0045a030
mov eax, edi
mov ecx, 0x24
call fcn.0045a040
xchg ebp, eax
mov byte [esp + ebx + 0x52], al
xchg ebp, eax
mov ebx, edx
mov edx, eax
mov eax, ecx
movzx ecx, byte [esp + 0xb4]
test edx, edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg esi, ebx
seta bl
xchg esi, ebx
cmp eax, 0x3b9aca00
xchg edi, ebx
setae bl
xchg edi, ebx
and edi, ebp
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x46d625
mov dword [esp + 0x40], eax
mov dword [esp + 0x28], ebx
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x3b9aca00
call fcn.004546a0
mov eax, dword [esp + 0x10]
mov ecx, eax
mov eax, 0x3b9aca00
mul ecx
mov edx, dword [esp + 0x40]
sub edx, eax
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x28]
mov ebp, 4
jmp 0x46d757
mov ebp, edx
shl edx, 1
inc edx
cmp edx, 0xc8
jae 0x46d7d8
lea edx, [ebx - 1]
lea esi, [0x4f189a]
lea ebp, [esi + ebp*2 + 1]
movzx ebp, byte [ebp]
cmp edx, 0x41
jb 0x46d562
jmp 0x46d7cc
mov byte [esp + ebx + 0x51], dl
mov edx, dword [esp + 0x40]
mov ebx, eax
mov eax, edx
cmp eax, 0x64
jb 0x46d693
mov edx, eax
shr eax, 1
mov ebp, eax
mov eax, 0xa3d70a3e
mov esi, edx
mul ebp
shr edx, 5
imul ebp, edx, 0x64
sub esi, ebp
mov eax, esi
shl eax, 1
lea ebp, [eax + 1]
cmp ebp, 0xc8
jae 0x46d736
mov dword [esp + 0x40], edx
lea ebp, [ebx - 1]
lea edi, [0x4f189a]
lea edx, [edi + esi*2 + 1]
movzx edx, byte [edx]
cmp ebp, 0x41
jae 0x46d72a
mov byte [esp + ebx + 0x52], dl
cmp eax, 0xc8
jae 0x46d720
lea eax, [ebx - 2]
lea edx, [edi + esi*2]
movzx edx, byte [edx]
cmp eax, 0x41
jb 0x46d619
jmp 0x46d716
mov edx, eax
shl eax, 1
lea ebp, [eax + 1]
cmp ebp, 0xc8
jae 0x46d70a
lea ebp, [ebx - 1]
lea esi, [0x4f189a]
lea edi, [esi + edx*2 + 1]
movzx edi, byte [edi]
cmp ebp, 0x41
jae 0x46d6fe
xchg edi, eax
mov byte [esp + ebx + 0x52], al
xchg edi, eax
cmp edx, 0xa
jb 0x46d6df
cmp eax, 0xc8
jae 0x46d6f4
lea eax, [ebx - 2]
lea edx, [esi + edx*2]
movzx edx, byte [edx]
cmp eax, 0x41
jae 0x46d6ea
mov byte [esp + ebx + 0x51], dl
test cl, cl
jmp 0x46d6e3
test cl, cl
mov eax, ebp
mov ebx, eax
jmp 0x46d289
mov ecx, 0x41
call fcn.0045a030
mov ecx, 0xc8
call fcn.0045a040
mov eax, ebp
mov ecx, 0x41
call fcn.0045a030
mov eax, ebp
mov ecx, 0xc8
call fcn.0045a040
mov ecx, 0x41
call fcn.0045a030
mov ecx, 0xc8
call fcn.0045a040
mov eax, ebp
mov ecx, 0x41
call fcn.0045a030
mov eax, ebp
mov ecx, 0xc8
call fcn.0045a040
xchg esi, eax
mov byte [esp + ebx + 0x51], al
xchg esi, eax
mov esi, dword [esp + 0x24]
dec esi
mov edi, dword [esp + 0x34]
mov ebp, esi
mov ebx, edx
mov edx, edi
test ebp, ebp
jle 0x46d5e9
mov esi, edx
shr edx, 1
mov edi, eax
mov eax, 0xa3d70a3e
mul edx
shr edx, 5
mov dword [esp + 0x34], edx
mov eax, edi
imul edi, edx, 0x64
sub esi, edi
mov edi, esi
shl esi, 1
lea edx, [esi + 1]
cmp edx, 0xc8
jae 0x46d808
mov dword [esp + 0x24], ebp
lea edx, [ebx - 1]
lea ebp, [0x4f189a]
lea ebp, [ebp + edi*2 + 1]
movzx ebp, byte [ebp]
cmp edx, 0x41
jae 0x46d7fc
xchg ebp, eax
mov byte [esp + ebx + 0x52], al
xchg ebp, eax
cmp esi, 0xc8
jae 0x46d7f0
lea edx, [ebx - 2]
lea ebp, [0x4f189a]
lea esi, [ebp + edi*2]
movzx esi, byte [esi]
cmp edx, 0x41
jb 0x46d742
jmp 0x46d7e4
mov eax, edx
mov ecx, 0x41
call fcn.0045a030
mov eax, edx
mov ecx, 0xc8
call fcn.0045a040
mov eax, edx
mov ecx, 0x41
call fcn.0045a030
mov eax, esi
mov ecx, 0xc8
call fcn.0045a040
mov eax, edx
mov ecx, 0x41
call fcn.0045a030
mov eax, edx
mov ecx, 0xc8
call fcn.0045a040
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50efe8]
mov dword [esp + 4], eax
call fcn.004319f0
nop
call fcn.00458b70
jmp fcn.0046d0d0