Function at 0x4a0e30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x13c
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x138], eax
cmp byte [edx*2 + 0x4ce279], 0
mov eax, ecx
push ebx
push esi
push edi
mov ebx, dword [eax + 4]
mov esi, dword [eax]
mov dword [esp + 0x44], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x38], esi
jne 0x4a0eca
cmp esi, dword [eax + 0x648]
jb 0x4a0eca
lea edi, [eax + 8]
cmp esi, edi
jbe 0x4a0ea0
mov ebx, eax
nop
lea eax, [esi - 0x10]
mov ecx, ebx
mov dword [ebx], eax
lea eax, [esi + 4]
mov dl, byte [esi + 2]
push eax
call fcn.004a0cf0
mov esi, dword [ebx]
add esp, 4
cmp esi, edi
ja 0x4a0e80
mov ebx, dword [esp + 0x1c]
push str.parser_stack_overflow
push ebx
call fcn.00413380
mov edi, dword [esp + 0x44]
add esp, 8
mov dword [edi + 4], ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x138]
xor ecx, esp
call fcn.004ac4d4
mov esp, ebp
pop ebp
ret
cmp edx, 0x10f
ja case.0x4a0edd.198
movzx eax, byte [edx + 0x4a585c]
jmp dword [eax*4 + 0x4a5570]
mov byte [ebx + 0x18f], 1
jmp case.0x4a0edd.198
mov byte [ebx + 0x18f], 2
jmp case.0x4a0edd.198
mov ecx, ebx
call fcn.0045a5b0
jmp case.0x4a0edd.198
mov edx, dword [esi - 0xc]
mov ecx, ebx
call fcn.00462b80
jmp case.0x4a0edd.198
mov dword [esi + 0x14], 7
jmp case.0x4a0edd.198
movzx eax, byte [esi + 2]
mov dword [esi + 4], eax
jmp case.0x4a0edd.198
mov cl, byte [esi - 0xe]
xor eax, eax
cmp cl, 0xc
mov byte [esp + 0x17], cl
mov ecx, dword [ebx]
sete al
mov dword [esp + 0x18], eax
cmp byte [ecx + 0x9d], 0
jne 0x4a0fcc
cmp byte [ebx + 0x190], 0
jne 0x4a0fcc
mov edx, dword [ecx + 0x130]
test edx, edx
je 0x4a0fcc
push dword [ebx + 0x1b8]
cmp byte [esp + 0x1b], 0xc
mov eax, str.ROLLBACK
push 0
push 0
mov edi, str.COMMIT
cmovne eax, edi
push eax
push 0x16
push dword [ecx + 0x134]
call edx
mov edi, eax
add esp, 0x18
cmp edi, 1
jne 0x4a0fa5
push str.not_authorized
push ebx
call fcn.00413380
mov dword [ebx + 0xc], 0x17
jmp 0x4a0fc1
test edi, edi
je 0x4a0fcc
cmp edi, 2
je 0x4a0fc4
push str.authorizer_malfunction
push ebx
mov edi, 1
call fcn.00413380
mov dword [ebx + 0xc], edi
add esp, 8
test edi, edi
jne case.0x4a0edd.198
mov edi, dword [ebx + 8]
test edi, edi
jne 0x4a0ff5
cmp dword [ebx + 0x78], edi
jne 0x4a0fe4
mov eax, dword [ebx]
test byte [eax + 0x44], 8
jne 0x4a0fe4
mov byte [ebx + 0x17], 1
mov ecx, ebx
call fcn.00434280
mov edi, eax
test edi, edi
je case.0x4a0edd.198
mov eax, dword [edi + 0xc]
mov ecx, dword [edi + 0x88]
mov edx, dword [esp + 0x18]
cmp dword [eax + 0x30], ecx
jg 0x4a101d
push 0
push edx
push 1
mov edx, 1
mov ecx, edi
call fcn.00434530
jmp 0x4a54ed
lea eax, [ecx + 1]
mov dword [edi + 0x88], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x58]
mov dword [eax + ecx*4], 1
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp case.0x4a0edd.198
lea eax, [esi + 4]
xor edx, edx
push eax
mov ecx, ebx
call fcn.00462d70
add esp, 4
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov edx, 1
push eax
mov ecx, ebx
call fcn.00462d70
add esp, 4
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov edx, 2
push eax
mov ecx, ebx
call fcn.00462d70
add esp, 4
jmp case.0x4a0edd.198
push dword [esi - 0x1c]
lea eax, [esi + 4]
mov ecx, ebx
push 0
push 0
push dword [esi - 0x3c]
lea edx, [esi - 0xc]
push eax
call fcn.0045bfd0
add esp, 0x14
jmp case.0x4a0edd.198
inc byte [ebx + 0x18]
mov eax, dword [ebx]
inc dword [eax + 0x108]
jmp case.0x4a0edd.198
mov dword [esi - 0x1c], 1
jmp case.0x4a0edd.198
movzx eax, byte [esi + 4]
lea edx, [esi - 0x1c]
push 0
push eax
lea eax, [esi - 0xc]
mov ecx, ebx
push eax
call fcn.0045e0b0
jmp 0x4a54ed
push dword [esi + 4]
xor edx, edx
mov ecx, ebx
push 0
push 0
call fcn.0045e0b0
mov edx, dword [esi + 4]
add esp, 0xc
test edx, edx
je case.0x4a0edd.198
mov ecx, dword [ebx]
push 1
call fcn.0047b970
add esp, 4
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
cmp eax, 5
jne 0x4a1194
mov edi, dword [esi + 4]
mov edx, eax
test edi, edi
je 0x4a1194
mov eax, str.rowid
mov dword [esp + 0xc], eax
mov cl, byte [edi]
dec edx
mov byte [esp + 0x17], cl
test cl, cl
je 0x4a1169
movzx ecx, byte [eax]
movzx eax, byte [esp + 0x17]
movzx eax, byte [eax + 0x4cf348]
cmp al, byte [ecx + 0x4cf348]
mov eax, dword [esp + 0xc]
jne 0x4a1169
inc eax
inc edi
mov dword [esp + 0xc], eax
test edx, edx
jg 0x4a1138
dec edx
test edx, edx
js 0x4a1185
movzx eax, byte [eax]
movzx ecx, byte [eax + 0x4cf348]
movzx eax, byte [edi]
movzx eax, byte [eax + 0x4cf348]
sub eax, ecx
jne 0x4a1191
mov dword [esi - 0xc], 0x60
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
mov dword [esi - 0xc], 0
push dword [esi + 4]
push eax
push str.unknown_table_option:__.s
push ebx
call fcn.00413380
add esp, 0x10
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov ecx, ebx
push eax
lea edx, [esi - 0xc]
call fcn.0045ca70
add esp, 4
jmp case.0x4a0edd.198
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], 0
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
sub eax, dword [esi - 0x2c]
add eax, dword [esi + 4]
mov dword [esi - 0x28], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
sub eax, dword [esi - 0x4c]
add eax, dword [esi + 4]
mov dword [esi - 0x48], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
sub eax, dword [esi - 0xc]
add eax, dword [esi + 4]
mov dword [esi - 8], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], ecx
jmp case.0x4a0edd.198
lea edx, [esi + 4]
mov ecx, ebx
call fcn.0045cf40
jmp case.0x4a0edd.198
lea edx, [esi - 0xc]
mov ecx, ebx
call fcn.0045cf40
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x20], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a12a7
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x94
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a1285
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a12b8
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
jmp 0x4a12b8
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a12b8
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov eax, dword [esi - 0xc]
lea edx, [esp + 0x20]
mov dword [esp + 0x24], eax
mov ecx, ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], eax
call fcn.0045cf40
jmp case.0x4a0edd.198
push dword [esi + 8]
mov edx, ebx
lea ecx, [esp + 0x24]
push dword [esi + 4]
push 0x61
call fcn.004a07d0
add esp, 0xc
lea edx, [esp + 0x20]
mov ecx, ebx
call fcn.0045cf40
jmp case.0x4a0edd.198
mov edi, dword [ebx + 0x1b0]
test edi, edi
je case.0x4a0edd.198
movzx eax, word [edi + 0x2a]
cmp ax, 1
jl case.0x4a0edd.198
mov ecx, dword [edi + 4]
movsx edx, ax
mov al, byte [esi + 4]
add edx, edx
mov byte [ecx + edx*8 - 4], al
or dword [edi + 0x24], 0x200
jmp case.0x4a0edd.198
push dword [esi - 0x1c]
xor edx, edx
mov ecx, ebx
push dword [esi + 4]
push dword [esi - 0xc]
call fcn.0045d130
jmp 0x4a54ed
push 1
push 0
push 0
push 0
push 0
push dword [esi + 4]
push 0
push 0
push 0
xor edx, edx
mov ecx, ebx
call fcn.00460840
add esp, 0x24
jmp case.0x4a0edd.198
mov edx, dword [esi - 0xc]
mov ecx, ebx
call fcn.0045d3d0
jmp case.0x4a0edd.198
push dword [esi + 4]
lea eax, [esi - 0x1c]
xor edx, edx
push dword [esi - 0xc]
mov ecx, ebx
push eax
call fcn.0045fa80
jmp 0x4a54ed
mov eax, dword [ebx + 0x1b0]
test eax, eax
je case.0x4a0edd.198
mov ecx, dword [eax + 0x10]
test ecx, ecx
je case.0x4a0edd.198
mov al, byte [esi + 4]
mov byte [ecx + 0x18], al
jmp case.0x4a0edd.198
lea edx, [esi + 4]
mov ecx, ebx
call fcn.0045d520
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
not eax
and eax, dword [esi - 0xc]
or eax, dword [esi + 4]
mov dword [esi - 0xc], eax
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 0
mov dword [esi - 8], 0
jmp case.0x4a0edd.198
mov dword [esi - 0x1c], 0
mov dword [esi - 0x18], 0
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov dword [esi - 0x1c], eax
mov dword [esi - 0x18], 0xff
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
shl eax, 8
mov dword [esi - 0x1c], eax
mov dword [esi - 0x18], 0xff00
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 7
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 8
jmp case.0x4a0edd.198
mov dword [esi + 4], 9
jmp case.0x4a0edd.198
mov dword [esi + 4], 6
jmp case.0x4a0edd.198
mov dword [esi - 0x1c], 0
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov dword [esi - 0xc], eax
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 1
jmp case.0x4a0edd.198
mov dword [ebx + 0x54], 0
jmp case.0x4a0edd.198
mov edx, dword [esi - 0x2c]
mov ecx, ebx
push 0
push dword [esi - 0x1c]
push dword [esi + 4]
call fcn.0045d130
jmp 0x4a54ed
push 1
push 0
push 0
push 0
push 0
push dword [esi + 4]
push dword [esi - 0x1c]
jmp 0x4a135d
mov edx, dword [esi - 0x1c]
mov ecx, ebx
call fcn.0045d3d0
jmp case.0x4a0edd.198
push dword [esi - 0xc]
mov edx, dword [esi - 0x5c]
lea eax, [esi - 0x2c]
push dword [esi - 0x1c]
mov ecx, ebx
push eax
call fcn.0045fa80
mov ecx, dword [ebx + 0x1b0]
add esp, 0xc
test ecx, ecx
je case.0x4a0edd.198
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je case.0x4a0edd.198
mov al, byte [esi + 4]
mov byte [ecx + 0x18], al
jmp case.0x4a0edd.198
mov dword [esi + 0x14], 0xa
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov dword [esi - 0x1c], eax
jmp case.0x4a0edd.198
mov dword [esi + 4], 4
jmp case.0x4a0edd.198
mov dword [esi + 4], 5
jmp case.0x4a0edd.198
push dword [esi - 0xc]
mov edx, dword [esi + 4]
mov ecx, ebx
push 0
call fcn.0045f6a0
add esp, 8
jmp case.0x4a0edd.198
push dword [esi - 0x4c]
lea eax, [esi - 0x2c]
push dword [esi - 0x6c]
lea ecx, [esi - 0x3c]
push dword [esi + 4]
lea edx, [esi - 0x7c]
push dword [esi - 0x1c]
push eax
push ecx
mov ecx, ebx
call fcn.0045eb10
add esp, 0x18
jmp case.0x4a0edd.198
push dword [esi - 0xc]
mov edx, dword [esi + 4]
mov ecx, ebx
push 1
call fcn.0045f6a0
add esp, 8
jmp case.0x4a0edd.198
xorps xmm0, xmm0
mov byte [esp + 0x50], 9
lea eax, [esp + 0x50]
mov dword [esp + 0x64], 0
movups xmmword [esp + 0x54], xmm0
mov edx, dword [esi + 4]
mov ecx, ebx
push eax
call fcn.004866b0
mov edx, dword [esi + 4]
add esp, 4
test edx, edx
je case.0x4a0edd.198
mov ecx, dword [ebx]
push 1
call fcn.0047b970
add esp, 4
jmp case.0x4a0edd.198
mov edi, dword [esi + 4]
mov edx, dword [esi - 0xc]
test edi, edi
je 0x4a1620
mov dword [edi + 0x40], edx
cmp dword [edi + 0x30], 0
je 0x4a1627
xor edx, edx
mov eax, edi
xor ecx, ecx
mov dword [eax + 0x34], edx
inc ecx
or dword [eax + 8], 0x100
mov edx, eax
mov eax, dword [eax + 0x30]
test eax, eax
jne 0x4a15e0
test dword [edi + 8], 0x400
jne 0x4a1627
mov eax, dword [ebx]
mov eax, dword [eax + 0x74]
test eax, eax
jle 0x4a1627
cmp ecx, eax
jle 0x4a1627
push str.too_many_terms_in_compound_SELECT
push ebx
call fcn.00413380
add esp, 8
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
call fcn.00463ee0
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
mov edi, dword [esi + 4]
mov ecx, dword [esi - 0x1c]
mov dword [esp + 0x18], ecx
test edi, edi
je 0x4a16c1
cmp dword [edi + 0x30], 0
je 0x4a1694
mov edx, edi
mov dword [esp + 0x24], 0
mov ecx, ebx
call fcn.004a0780
push 0
push 0
push edi
lea eax, [esp + 0x2c]
xor edx, edx
push eax
push 0
push 0
mov ecx, ebx
call fcn.004629a0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
xor edx, edx
mov ecx, ebx
call fcn.0047baa0
mov ecx, dword [esp + 0x50]
mov edi, eax
add esp, 0x38
test edi, edi
je 0x4a16c1
mov al, byte [esi - 0xc]
mov byte [edi + 4], al
mov dword [edi + 0x30], ecx
test ecx, ecx
je 0x4a16a8
and dword [ecx + 8], 0xfffffbff
and dword [edi + 8], 0xfffffbff
cmp dword [esi - 0xc], 0x74
je 0x4a16d3
mov byte [ebx + 0x16], 1
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
test ecx, ecx
je 0x4a16d3
mov edx, ecx
mov ecx, dword [ebx]
push 1
call fcn.0047b970
add esp, 4
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 0x74
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
mov ecx, dword [ebx]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x34], eax
mov eax, dword [esi - 0x6c]
mov dword [esp + 0x30], eax
mov eax, dword [esi - 0xc]
mov dword [esp + 0x40], eax
mov eax, dword [esi - 0x1c]
mov dword [esp + 0x38], eax
mov eax, dword [esi - 0x2c]
mov dword [esp + 0x1c], eax
mov eax, dword [esi - 0x3c]
mov dword [esp + 0x18], eax
mov eax, dword [esi - 0x4c]
mov dword [esp + 0xc], eax
mov eax, dword [esi - 0x5c]
push 0
push 0x44
mov dword [esp + 0x18], eax
call fcn.00410430
add esp, 8
lea edi, [esp + 0x68]
test eax, eax
cmovne edi, eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x4a17cd
mov ecx, dword [ebx]
push eax
push 0x31
call fcn.00410430
add esp, 8
mov dword [esp + 0x2c], eax
test eax, eax
je 0x4a1789
push 0x30
push 0
push eax
call fcn.004ad600
mov ecx, dword [esp + 0x38]
add esp, 0xc
or eax, 0xffffffff
mov byte [ecx], 0x9a
mov word [ecx + 0x22], ax
lea eax, [ecx + 0x30]
mov dword [ecx + 8], eax
mov byte [eax], 0
mov dword [ecx + 0x18], 1
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x18], eax
call fcn.00410430
mov edx, dword [esp + 0x34]
add esp, 8
test eax, eax
je 0x4a17be
mov dword [eax], 1
xorps xmm0, xmm0
movups xmmword [eax + 8], xmm0
mov dword [eax + 0x18], 0
mov dword [eax + 4], edx
jmp 0x4a17cd
test edx, edx
je 0x4a17cb
mov ecx, dword [esp + 0x10]
call fcn.0044c7a0
xor eax, eax
mov dword [edi], eax
mov eax, dword [esp + 0x30]
mov byte [edi + 4], 0x77
mov dword [edi + 8], eax
xor eax, eax
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xffffffff
mov dword [edi + 0x18], 0xffffffff
mov word [edi + 6], ax
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4a1835
mov ecx, dword [ebx]
push eax
push 0x58
test ecx, ecx
je 0x4a1814
call fcn.00410430
jmp 0x4a1819
call fcn.0040fd60
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x4a1835
push 0x58
push 0
push eax
call fcn.004ad600
mov eax, dword [esp + 0x18]
add esp, 0xc
mov dword [edi + 0x1c], eax
mov eax, dword [esp + 0x18]
mov dword [edi + 0x20], eax
mov eax, dword [esp + 0x1c]
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x38]
mov dword [edi + 0x28], eax
mov eax, dword [esp + 0x40]
mov dword [edi + 0x2c], eax
mov eax, dword [esp + 0x34]
mov dword [edi + 0x30], 0
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], eax
mov eax, dword [esp + 0x20]
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], 0
mov ecx, dword [ebx]
cmp byte [ecx + 0x49], 0
je 0x4a1897
xor eax, eax
lea edx, [esp + 0x68]
cmp edi, edx
mov edx, edi
setne al
push eax
call fcn.0047b970
add esp, 4
xor edi, edi
mov dword [esi - 0x7c], edi
jmp case.0x4a0edd.198
mov eax, dword [esi - 0xc]
mov ecx, dword [ebx]
push 0
push 0x44
mov dword [esp + 0x28], eax
call fcn.00410430
add esp, 8
lea edi, [esp + 0xb0]
test eax, eax
cmovne edi, eax
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x4a1950
mov ecx, dword [ebx]
push eax
push 0x31
call fcn.00410430
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x4a190c
push 0x30
push 0
push eax
call fcn.004ad600
mov ecx, dword [esp + 0x18]
add esp, 0xc
or eax, 0xffffffff
mov byte [ecx], 0x9a
mov word [ecx + 0x22], ax
lea eax, [ecx + 0x30]
mov dword [ecx + 8], eax
mov byte [eax], 0
mov dword [ecx + 0x18], 1
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
mov edx, dword [esp + 0x14]
add esp, 8
test eax, eax
je 0x4a1941
mov dword [eax], 1
xorps xmm0, xmm0
movups xmmword [eax + 8], xmm0
mov dword [eax + 0x18], 0
mov dword [eax + 4], edx
jmp 0x4a1950
test edx, edx
je 0x4a194e
mov ecx, dword [esp + 0x20]
call fcn.0044c7a0
xor eax, eax
mov dword [edi], eax
xor eax, eax
mov byte [edi + 4], 0x77
mov dword [edi + 8], 0x200
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xffffffff
mov dword [edi + 0x18], 0xffffffff
mov word [edi + 6], ax
mov ecx, dword [ebx]
push eax
push 0x58
test ecx, ecx
je 0x4a198f
call fcn.00410430
jmp 0x4a1994
call fcn.0040fd60
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
je 0x4a19b0
push 0x58
push 0
push eax
call fcn.004ad600
mov eax, dword [esp + 0x24]
add esp, 0xc
mov dword [edi + 0x1c], eax
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], 0
mov ecx, dword [ebx]
cmp byte [ecx + 0x49], 0
je 0x4a1a15
xor eax, eax
lea edx, [esp + 0xb0]
cmp edi, edx
mov edx, edi
setne al
push eax
call fcn.0047b970
add esp, 4
xor edi, edi
mov dword [esi - 0x2c], edi
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x3c]
mov ecx, dword [ebx]
mov dword [esp + 0x34], eax
mov eax, dword [esi - 0xc]
push 0
push 0x44
mov dword [esp + 0x28], eax
call fcn.00410430
add esp, 8
lea edi, [esp + 0xf8]
test eax, eax
cmovne edi, eax
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x4a1ad5
mov ecx, dword [ebx]
push eax
push 0x31
call fcn.00410430
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x4a1a91
push 0x30
push 0
push eax
call fcn.004ad600
mov ecx, dword [esp + 0x18]
add esp, 0xc
or eax, 0xffffffff
mov byte [ecx], 0x9a
mov word [ecx + 0x22], ax
lea eax, [ecx + 0x30]
mov dword [ecx + 8], eax
mov byte [eax], 0
mov dword [ecx + 0x18], 1
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
mov edx, dword [esp + 0x14]
add esp, 8
test eax, eax
je 0x4a1ac6
mov dword [eax], 1
xorps xmm0, xmm0
movups xmmword [eax + 8], xmm0
mov dword [eax + 0x18], 0
mov dword [eax + 4], edx
jmp 0x4a1ad5
test edx, edx
je 0x4a1ad3
mov ecx, dword [esp + 0x20]
call fcn.0044c7a0
xor eax, eax
mov dword [edi], eax
xor eax, eax
mov byte [edi + 4], 0x77
mov dword [edi + 8], 0x600
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xffffffff
mov dword [edi + 0x18], 0xffffffff
mov word [edi + 6], ax
mov ecx, dword [ebx]
push eax
push 0x58
test ecx, ecx
je 0x4a1b14
call fcn.00410430
jmp 0x4a1b19
call fcn.0040fd60
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
je 0x4a1b35
push 0x58
push 0
push eax
call fcn.004ad600
mov eax, dword [esp + 0x24]
add esp, 0xc
mov dword [edi + 0x1c], eax
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], 0
mov ecx, dword [ebx]
cmp byte [ecx + 0x49], 0
je 0x4a1b9a
xor eax, eax
lea edx, [esp + 0xf8]
cmp edi, edx
mov edx, edi
setne al
push eax
call fcn.0047b970
add esp, 4
xor edi, edi
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4a1ba9
and dword [eax + 8], 0xfffffbff
test edi, edi
je 0x4a1bbc
mov byte [edi + 4], 0x74
mov dword [edi + 0x30], eax
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
mov edi, eax
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
mov edi, dword [esi - 0x1c]
mov eax, dword [esi - 0xc]
mov ecx, dword [ebx]
mov dword [esp + 0x2c], eax
mov dword [esp + 0xc], ecx
test edi, edi
jne 0x4a1bf3
push edi
push 0x1c
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a1ce8
xor edx, edx
jmp 0x4a1c4f
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a1c4f
lea eax, [edx + edx*2]
xor edx, edx
shl eax, 4
add eax, 4
mov dword [esp + 0x18], eax
cmp edi, dword [ecx + 0x128]
jb 0x4a1cd4
cmp edi, dword [ecx + 0x12c]
jae 0x4a1cd4
movzx eax, word [ecx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a1cce
jb 0x4a1c49
mov eax, dword [esp + 0x18]
cmp eax, dword [esp + 0x20]
ja 0x4a1cd2
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x2c]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0x1c], edi
cmp dword [esi + 8], 0
jbe 0x4a1c8a
lea eax, [esi + 4]
mov edx, edi
push 1
push eax
mov ecx, ebx
call fcn.0044d8f0
add esp, 8
mov ecx, dword [esi - 0x1c]
mov ebx, dword [ebx]
test ecx, ecx
je case.0x4a0edd.198
mov eax, dword [ecx]
lea eax, [eax + eax*2]
lea eax, [eax*8 - 0xc]
add eax, ecx
mov dword [esp + 0x40], eax
mov edi, dword [eax]
test edi, edi
je 0x4a1d89
test ebx, ebx
je 0x4a1d31
cmp dword [ebx + 0x1d0], 0
je 0x4a1d11
mov edx, edi
mov ecx, ebx
call fcn.0040ffa0
jmp 0x4a1d89
mov eax, dword [esp + 0x18]
xor edx, edx
push edx
push eax
mov edx, edi
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a1c4b
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4a1cfb
mov ecx, dword [esp + 0xc]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a1d0a
mov ecx, dword [esp + 0xc]
mov edx, edi
call fcn.0044d9a0
xor edi, edi
jmp 0x4a1c6f
cmp edi, dword [ebx + 0x128]
jb 0x4a1d31
cmp edi, dword [ebx + 0x12c]
jae 0x4a1d31
mov eax, dword [ebx + 0x124]
mov dword [edi], eax
mov dword [ebx + 0x124], edi
jmp 0x4a1d89
cmp dword [0x4d9a98], 0
je 0x4a1d7f
mov eax, dword [0x4defd8]
test eax, eax
je 0x4a1d4d
push eax
call dword [0x4d9af4]
add esp, 4
push edi
call dword [0x4d9ad0]
sub dword [0x4dede0], eax
add esp, 4
dec dword [0x4dee04]
push edi
call dword [0x4d9ac8]
mov eax, dword [0x4defd8]
add esp, 4
test eax, eax
je 0x4a1d89
push eax
call dword [0x4d9afc]
jmp 0x4a1d86
push edi
call dword [0x4d9ac8]
add esp, 4
mov ecx, dword [esi - 8]
mov eax, dword [esi - 4]
sub eax, ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], eax
test ecx, ecx
jne 0x4a1daa
mov eax, dword [esp + 0x40]
xor edi, edi
mov dword [eax], edi
jmp case.0x4a0edd.198
cdq
mov ecx, ebx
add eax, 1
adc edx, 0
push edx
push eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a1dd9
mov ebx, dword [esp + 0x20]
push ebx
push dword [esp + 0x38]
push edi
call fcn.004ae080
add esp, 0xc
mov byte [edi + ebx], 0
mov eax, dword [esp + 0x40]
mov dword [eax], edi
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
push 0
push 0x31
call fcn.00410430
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x4a1e23
push 0x30
push 0
push edi
call fcn.004ad600
mov byte [edi], 0x9a
add esp, 0xc
or eax, 0xffffffff
mov word [edi + 0x22], ax
lea eax, [edi + 0x30]
mov dword [edi + 8], eax
mov byte [eax], 0
mov dword [edi + 0x18], 1
mov edi, dword [esi - 0xc]
mov ebx, dword [ebx]
test edi, edi
jne 0x4a1e47
push edi
push 0x1c
mov ecx, ebx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a1ec5
xor edx, edx
jmp 0x4a1e89
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a1e89
lea ecx, [edx + edx*2]
xor eax, eax
shl ecx, 4
add ecx, 4
mov dword [esp + 0x20], eax
cmp edi, dword [ebx + 0x128]
jb 0x4a1eb3
cmp edi, dword [ebx + 0x12c]
jae 0x4a1eb3
movzx eax, word [ebx + 0x10c]
cdq
cmp dword [esp + 0x20], edx
ja 0x4a1eb1
jb 0x4a1e83
cmp ecx, eax
ja 0x4a1eb1
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x18]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
xor eax, eax
push eax
push ecx
mov edx, edi
mov ecx, ebx
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a1e85
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a1ed6
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a1ee3
mov edx, edi
mov ecx, ebx
call fcn.0044d9a0
xor edi, edi
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
push 0
push 0x30
call fcn.00410430
mov edi, eax
add esp, 8
mov dword [esp + 0xc], edi
test edi, edi
je 0x4a1f3c
push 0x30
push 0
push edi
call fcn.004ad600
add esp, 0xc
mov byte [edi], 0x9a
or eax, 0xffffffff
mov ecx, edi
mov word [edi + 0x22], ax
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a1f3c
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov ecx, dword [ebx]
lea eax, [esi - 0x1c]
push 1
push eax
mov edx, 0x3b
call fcn.0044c010
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x28], eax
call fcn.00410430
mov edi, eax
add esp, 0x10
mov dword [esp + 0x2c], edi
test edi, edi
je 0x4a1fcf
push 0x30
push 0
push edi
call fcn.004ad600
mov edx, dword [esp + 0x18]
or eax, 0xffffffff
add esp, 0xc
mov byte [edi], 0x7a
mov word [edi + 0x22], ax
test edx, edx
je 0x4a1f97
mov dword [edi + 0x10], edx
mov eax, dword [edx + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a1fad
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a1ff1
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
jmp 0x4a1ff1
mov eax, dword [esp + 0x18]
mov edi, dword [ebx]
test eax, eax
je 0x4a1fe2
mov edx, eax
mov ecx, edi
call fcn.0044c7a0
mov edx, dword [esp + 0xc]
test edx, edx
je 0x4a1ff1
mov ecx, edi
call fcn.0044c7a0
mov edi, dword [esi - 0x2c]
mov ebx, dword [ebx]
test edi, edi
jne 0x4a2015
push edi
push 0x1c
mov ecx, ebx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a2093
xor edx, edx
jmp 0x4a2057
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a2057
lea ecx, [edx + edx*2]
xor eax, eax
shl ecx, 4
add ecx, 4
mov dword [esp + 0x20], eax
cmp edi, dword [ebx + 0x128]
jb 0x4a2081
cmp edi, dword [ebx + 0x12c]
jae 0x4a2081
movzx eax, word [ebx + 0x10c]
cdq
cmp dword [esp + 0x20], edx
ja 0x4a207f
jb 0x4a2051
cmp ecx, eax
ja 0x4a207f
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x2c]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0x2c], edi
jmp case.0x4a0edd.198
xor eax, eax
push eax
push ecx
mov edx, edi
mov ecx, ebx
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a2053
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4a20a4
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a20b1
mov edx, edi
mov ecx, ebx
call fcn.0044d9a0
xor edi, edi
mov dword [esi - 0x2c], edi
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi - 0xc], eax
mov dword [esi - 8], ecx
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
push 0
push 0x58
test ecx, ecx
je 0x4a20dd
call fcn.00410430
jmp 0x4a20e2
call fcn.0040fd60
mov edi, eax
add esp, 8
test edi, edi
je 0x4a20f8
push 0x58
push 0
push edi
call fcn.004ad600
add esp, 0xc
mov dword [esi + 0x14], edi
jmp case.0x4a0edd.198
mov ebx, dword [esi + 4]
mov dword [esi - 0xc], ebx
test ebx, ebx
je case.0x4a0edd.198
mov edx, dword [ebx]
dec edx
test edx, edx
jle 0x4a212e
lea edi, [edx + edx*4]
shl edi, 4
add edi, 0x2c
add edi, ebx
mov al, byte [edi - 0x50]
lea edi, [edi - 0x50]
dec edx
mov byte [edi + 0x50], al
test edx, edx
jg 0x4a2120
mov byte [ebx + 0x2c], 0
jmp case.0x4a0edd.198
mov edx, dword [esi - 0xc]
test edx, edx
je case.0x4a0edd.198
mov eax, dword [edx]
test eax, eax
jle case.0x4a0edd.198
lea ecx, [eax + eax*4]
mov al, byte [esi + 4]
add ecx, ecx
mov byte [edx + ecx*8 - 0x24], al
jmp case.0x4a0edd.198
push dword [esi + 4]
mov edx, dword [esi - 0x5c]
lea eax, [esi - 0x2c]
push dword [esi - 0xc]
lea ecx, [esi - 0x3c]
push 0
push eax
push ecx
lea eax, [esi - 0x4c]
mov ecx, ebx
push eax
call fcn.004629a0
mov ecx, eax
add esp, 0x18
mov dword [esi - 0x5c], ecx
test ecx, ecx
je case.0x4a0edd.198
mov edi, dword [esi - 0x18]
test edi, edi
je case.0x4a0edd.198
mov eax, dword [ecx]
lea eax, [eax + eax*4]
shl eax, 4
add eax, ecx
mov dword [esp + 0xc], eax
cmp edi, 1
jne 0x4a21b7
cmp dword [esi - 0x1c], 0
jne 0x4a21b7
or dword [eax - 0x20], edi
jmp case.0x4a0edd.198
mov ecx, dword [esi - 0x1c]
mov dword [esp + 0x20], ecx
test ecx, ecx
jne 0x4a21cd
mov dword [eax], ecx
or dword [eax - 0x20], 2
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
xor eax, eax
mov edx, edi
add edx, 1
adc eax, eax
push eax
push edx
call fcn.00410430
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4a21fa
push edi
push dword [esp + 0x24]
push ebx
call fcn.004ae080
add esp, 0xc
mov byte [edi + ebx], 0
mov ecx, ebx
test ebx, ebx
je 0x4a2255
mov dl, byte [ebx]
movzx eax, dl
mov byte [esp + 0x17], dl
cmp byte [eax + 0x4cea18], 0
jge 0x4a2255
cmp byte [esp + 0x17], 0x5b
lea ecx, [ebx + 1]
movzx edx, dl
mov eax, 0x5d
mov esi, ebx
cmove edx, eax
xor edi, edi
mov dword [esp + 0x20], esi
nop dword [eax]
mov al, byte [ecx]
lea ebx, [edi + esi]
cmp al, dl
jne 0x4a2244
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], dl
jne 0x4a224a
mov al, dl
inc ecx
mov byte [ebx], al
inc edi
jmp 0x4a2230
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x20]
mov byte [ebx], 0
mov eax, dword [esp + 0xc]
mov dword [eax], ecx
or dword [eax - 0x20], 2
jmp case.0x4a0edd.198
push dword [esi + 4]
mov edx, dword [esi - 0x7c]
lea eax, [esi - 0x1c]
push dword [esi - 0xc]
mov ecx, ebx
push 0
push eax
lea eax, [esi - 0x5c]
push eax
lea eax, [esi - 0x6c]
push eax
call fcn.004629a0
add esp, 0x18
mov dword [esi - 0x7c], eax
mov edx, dword [esi - 0x3c]
test eax, eax
je 0x4a22a3
mov ecx, dword [eax]
lea ecx, [ecx + ecx*4]
add ecx, ecx
mov dword [eax + ecx*8], edx
or dword [eax + ecx*8 - 0x20], 4
jmp case.0x4a0edd.198
test edx, edx
je case.0x4a0edd.198
mov ecx, dword [ebx]
call fcn.0044d9a0
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov edx, dword [esi - 0x5c]
mov ecx, dword [esi - 0xc]
mov edi, dword [ebx]
mov dword [esp + 0x2c], eax
mov eax, dword [esi - 0x3c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
test edx, edx
jne 0x4a2343
test ecx, ecx
jne 0x4a2320
cmp dword [esp + 0x2c], edx
jne 0x4a2320
push edx
push 0x58
mov ecx, edi
call fcn.00410430
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4a24a4
push 0x50
lea ecx, [ebx + 8]
mov dword [ebx + 4], 1
push 0
push ecx
mov dword [ebx], 1
call fcn.004ad600
add esp, 0xc
mov dword [ebx + 0x38], 0xffffffff
jmp 0x4a2353
test ecx, ecx
mov edx, str.USING
mov eax, 0x4d49d0
cmove eax, edx
push eax
push str.a_JOIN_clause_is_required_before__s
push ebx
call fcn.00413380
add esp, 0xc
jmp 0x4a2493
push dword [edx]
mov ecx, edi
push 1
call fcn.00462340
add esp, 8
mov ebx, eax
cmp byte [edi + 0x49], 0
je 0x4a2367
mov edx, ebx
mov ecx, edi
call fcn.004625e0
jmp 0x4a2493
mov eax, dword [ebx]
xor edx, edx
mov ecx, dword [esp + 0xc]
lea edi, [eax + eax*4]
add edi, edi
call fcn.0045bd70
mov dword [ebx + edi*8 - 0x40], eax
mov dword [ebx + edi*8 - 0x44], 0
test ebx, ebx
je 0x4a248f
mov eax, dword [ebx]
test eax, eax
je 0x4a248f
lea ecx, [eax + eax*4]
mov edx, ebx
mov eax, dword [esi - 0x18]
shl ecx, 4
add ecx, ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
test eax, eax
je 0x4a2472
mov ecx, dword [esi - 0x1c]
mov dword [esp + 0x20], ecx
test ecx, ecx
jne 0x4a23c4
jmp 0x4a2469
mov ecx, dword [esp + 0xc]
mov edx, eax
xor eax, eax
add edx, 1
adc eax, eax
push eax
push edx
call fcn.00410430
mov edi, eax
add esp, 8
mov dword [esp + 0x34], edi
test edi, edi
je 0x4a23fe
push dword [esp + 0x18]
push dword [esp + 0x24]
push edi
call fcn.004ae080
mov eax, dword [esp + 0x24]
add esp, 0xc
mov byte [edi + eax], 0
mov edx, ebx
mov ecx, edi
test edi, edi
je 0x4a2469
mov al, byte [edi]
mov byte [esp + 0x17], al
movzx eax, al
cmp byte [eax + 0x4cea18], 0
jge 0x4a2469
mov eax, dword [esp + 0x34]
mov ecx, 0x5d
cmp byte [esp + 0x17], 0x5b
mov esi, eax
movzx edx, byte [esp + 0x17]
cmove edx, ecx
mov dword [esp + 0x34], ebx
xor edi, edi
mov dword [esp + 0x20], esi
lea ecx, [eax + 1]
nop dword [eax]
mov al, byte [ecx]
lea ebx, [esi + edi]
cmp al, dl
jne 0x4a2454
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], dl
jne 0x4a245a
mov al, dl
inc ecx
mov byte [ebx], al
inc edi
jmp 0x4a2440
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x34]
mov byte [ebx], 0
mov eax, dword [esp + 0x1c]
mov dword [eax - 0x3c], ecx
mov ecx, eax
mov eax, dword [esp + 0x10]
mov dword [ecx - 0x34], eax
mov eax, dword [esp + 0x30]
mov dword [ecx - 0x14], eax
mov eax, dword [esp + 0x2c]
mov dword [ecx - 0x10], eax
mov dword [esi - 0x5c], edx
jmp case.0x4a0edd.198
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a24a4
mov edx, eax
mov ecx, edi
call fcn.0044c7a0
mov edx, dword [esp + 0x2c]
mov ecx, edi
call fcn.004620a0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a24c5
push 1
mov edx, eax
mov ecx, edi
call fcn.0047b970
add esp, 4
xor edx, edx
mov dword [esi - 0x5c], edx
jmp case.0x4a0edd.198
mov edx, dword [esi - 0x5c]
test edx, edx
jne 0x4a24f0
cmp dword [esi - 0x18], edx
jne 0x4a24f0
cmp dword [esi - 0xc], edx
jne 0x4a24f0
cmp dword [esi + 4], edx
jne 0x4a24f0
mov eax, dword [esi - 0x3c]
mov dword [esi - 0x5c], eax
jmp case.0x4a0edd.198
mov ecx, dword [esi - 0x3c]
lea edi, [esi - 0x1c]
cmp dword [ecx], 1
jne 0x4a260c
mov eax, dword [esi + 4]
mov ecx, dword [esi - 0xc]
mov edi, dword [ebx]
mov dword [esp + 0x30], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x20], edi
test edx, edx
jne 0x4a2572
test ecx, ecx
jne 0x4a251f
test eax, eax
je 0x4a2572
test ecx, ecx
mov edx, str.USING
mov eax, 0x4d49d0
cmove eax, edx
push eax
push str.a_JOIN_clause_is_required_before__s
push ebx
call fcn.00413380
add esp, 0xc
mov edx, dword [esp + 0x10]
mov ecx, edi
call fcn.0044c960
mov edx, dword [esp + 0x30]
mov ecx, edi
call fcn.004620a0
xor edx, edx
mov ecx, edi
call fcn.0047bc50
mov dword [esi - 0x5c], 0
mov edx, dword [esi - 0x3c]
mov ecx, dword [ebx]
call fcn.004625e0
jmp case.0x4a0edd.198
push 0
push 0
mov ecx, edi
call fcn.004624a0
mov ecx, eax
add esp, 8
mov dword [esp + 0x34], ecx
test ecx, ecx
je 0x4a253d
mov eax, dword [ecx]
test eax, eax
je 0x4a253d
lea edi, [eax + eax*4]
shl edi, 4
lea edx, [esi - 0x1c]
add edi, ecx
cmp dword [edx + 4], 0
je 0x4a25b1
mov ecx, dword [esp + 0x20]
call fcn.0045bd70
mov ecx, dword [esp + 0x34]
mov dword [edi - 0x3c], eax
mov edx, dword [esp + 0x10]
mov dword [edi - 0x34], 0
mov dword [edi - 0x14], edx
mov edx, dword [esp + 0x30]
mov dword [edi - 0x10], edx
mov dword [esi - 0x5c], ecx
mov eax, dword [ecx]
mov edx, dword [esi - 0x3c]
lea eax, [eax + eax*4]
shl eax, 4
add ecx, eax
mov eax, dword [edx + 0x10]
mov dword [ecx - 0x40], eax
mov eax, dword [edx + 0xc]
mov dword [ecx - 0x44], eax
mov eax, dword [edx + 0x1c]
mov dword [ecx - 0x34], eax
mov dword [edx + 0xc], 0
mov dword [edx + 0x10], 0
mov dword [edx + 0x1c], 0
mov edx, dword [esi - 0x3c]
mov ecx, dword [ebx]
call fcn.004625e0
jmp case.0x4a0edd.198
call fcn.00462b40
push 0
push 0
push 0x800
push 0
push 0
push 0
push 0
push dword [esi - 0x3c]
xor edx, edx
mov ecx, ebx
call fcn.0047baa0
push dword [esi + 4]
mov edx, dword [esi - 0x5c]
mov ecx, ebx
push dword [esi - 0xc]
push eax
push edi
push 0
push 0
call fcn.004629a0
add esp, 0x38
mov dword [esi - 0x5c], eax
jmp case.0x4a0edd.198
mov ebx, dword [ebx]
mov ecx, ebx
push 0
push 0x58
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
jne 0x4a266d
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
push 0x50
lea eax, [edi + 8]
mov dword [edi + 4], 1
push 0
push eax
mov dword [edi], 1
call fcn.004ad600
add esp, 0xc
mov dword [edi + 0x38], 0xffffffff
cmp byte [ebx + 0x49], 0
je 0x4a26aa
mov edx, edi
mov ecx, ebx
call fcn.004625e0
xor edi, edi
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
mov eax, dword [edi]
lea ecx, [esi + 4]
lea eax, [eax + eax*4]
shl eax, 4
test ecx, ecx
je 0x4a26f0
cmp dword [ecx], 0
jne 0x4a26f0
lea ecx, [edi - 0x40]
add ecx, eax
mov dword [esp + 0xc], ecx
lea ecx, [edi - 0x44]
add ecx, eax
mov dword [esp + 0x10], ecx
lea edx, [esi - 0xc]
mov ecx, ebx
call fcn.0045bd70
mov ecx, dword [esp + 0xc]
mov dword [ecx], eax
xor ecx, ecx
mov eax, dword [esp + 0x10]
mov dword [eax], ecx
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
lea edx, [edi - 0x40]
add edx, eax
add eax, 0xffffffbc
add eax, edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
test ecx, ecx
je 0x4a26d0
mov edx, ecx
mov ecx, ebx
call fcn.0045bd70
mov ecx, dword [esp + 0xc]
lea edx, [esi - 0xc]
mov dword [ecx], eax
mov ecx, ebx
call fcn.0045bd70
mov ecx, eax
mov eax, dword [esp + 0x10]
mov dword [eax], ecx
mov dword [esi - 0xc], edi
jmp case.0x4a0edd.198
push 0
push 0
lea edx, [esi - 0xc]
mov ecx, ebx
call fcn.0047bc70
add esp, 8
mov dword [esi - 0xc], eax
jmp case.0x4a0edd.198
lea eax, [esi - 0xc]
mov ecx, ebx
push 0
push eax
lea edx, [esi - 0x1c]
call fcn.0047bc70
add esp, 8
mov dword [esi - 0x1c], eax
jmp case.0x4a0edd.198
lea eax, [esi - 0xc]
mov ecx, ebx
push eax
lea eax, [esi - 0x1c]
push eax
lea edx, [esi - 0x2c]
call fcn.0047bc70
add esp, 8
mov dword [esi - 0x2c], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi - 0x1c], eax
mov dword [esi - 0x18], ecx
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 0
mov dword [esi - 8], 1
jmp case.0x4a0edd.198
mov eax, dword [esi - 0xc]
mov dword [esi - 0x2c], eax
jmp case.0x4a0edd.198
mov edi, dword [esi - 0x2c]
mov eax, dword [esi - 0xc]
mov ebx, dword [ebx]
mov dword [esp + 0x10], eax
test edi, edi
jne 0x4a27da
push edi
push 0x1c
mov ecx, ebx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a2874
xor edx, edx
jmp 0x4a281c
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a281c
lea ecx, [edx + edx*2]
xor eax, eax
shl ecx, 4
add ecx, 4
mov dword [esp + 0x20], eax
cmp edi, dword [ebx + 0x128]
jb 0x4a2862
cmp edi, dword [ebx + 0x12c]
jae 0x4a2862
movzx eax, word [ebx + 0x10c]
cdq
cmp dword [esp + 0x20], edx
ja 0x4a2860
jb 0x4a2816
cmp ecx, eax
ja 0x4a2860
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x10]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0x2c], edi
test edi, edi
je case.0x4a0edd.198
mov ecx, dword [esi + 4]
test ecx, ecx
js case.0x4a0edd.198
mov eax, dword [edi]
lea eax, [eax + eax*2]
mov byte [edi + eax*8 - 8], cl
jmp case.0x4a0edd.198
xor eax, eax
push eax
push ecx
mov edx, edi
mov ecx, ebx
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a2818
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a2885
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a2892
mov edx, edi
mov ecx, ebx
call fcn.0044d9a0
mov dword [esi - 0x2c], 0
jmp case.0x4a0edd.198
mov ebx, dword [ebx]
mov ecx, ebx
mov edi, dword [esi - 0xc]
push 0
push 0x1c
call fcn.00410430
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a28ea
mov dword [ecx], 1
xorps xmm0, xmm0
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edi
mov dword [esi - 0xc], ecx
mov edx, dword [esi + 4]
test edx, edx
js case.0x4a0edd.198
mov eax, dword [ecx]
lea eax, [eax + eax*2]
mov byte [ecx + eax*8 - 8], dl
jmp case.0x4a0edd.198
test edi, edi
je case.0x4a0edd.53
mov edx, edi
mov ecx, ebx
call fcn.0044c7a0
mov dword [esi - 0xc], 0
jmp case.0x4a0edd.198
mov dword [esi + 0x14], 0xffffffff
jmp case.0x4a0edd.198
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], 0
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov dword [esi - 0xc], eax
mov dword [esi - 8], 0
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
mov dword [esi - 0x2c], eax
mov eax, dword [esi + 4]
mov dword [esi - 0x28], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
mov dword [esi - 0x28], eax
mov eax, dword [esi + 4]
mov dword [esi - 0x2c], eax
jmp case.0x4a0edd.198
mov ecx, dword [esi - 0x4c]
test ecx, ecx
je 0x4a2972
mov eax, dword [ebx + 0x1d0]
mov dword [ecx + 4], eax
mov dword [ebx + 0x1d0], ecx
mov dword [ebx + 0x1d4], ecx
mov edx, dword [esi - 0x1c]
test edx, edx
je 0x4a2a6c
mov ecx, dword [esi - 8]
mov dword [esp + 0x10], ecx
test ecx, ecx
je 0x4a2a6c
mov eax, dword [edx]
lea eax, [eax + eax*4]
shl eax, 4
add eax, edx
mov dword [esp + 0xc], eax
cmp ecx, 1
jne 0x4a29ad
cmp dword [esi - 0xc], 0
jne 0x4a29ad
or dword [eax - 0x20], ecx
jmp 0x4a2a6c
mov edx, dword [esi - 0xc]
mov dword [esp + 0x20], edx
test edx, edx
jne 0x4a29bf
xor ecx, ecx
jmp 0x4a2a66
mov edx, ecx
xor eax, eax
mov ecx, dword [ebx]
add edx, 1
adc eax, eax
push eax
push edx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a29f3
push dword [esp + 0x10]
push dword [esp + 0x24]
push edi
call fcn.004ae080
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov byte [edi + eax], 0
mov ecx, edi
test edi, edi
je 0x4a2a62
mov dl, byte [edi]
movzx eax, dl
mov byte [esp + 0x17], dl
cmp byte [eax + 0x4cea18], 0
jge 0x4a2a62
cmp byte [esp + 0x17], 0x5b
mov eax, 0x5d
movzx edx, dl
cmove edx, eax
mov eax, ecx
mov esi, eax
xor edi, edi
mov dword [esp + 0x34], esi
lea ecx, [eax + 1]
nop dword [eax + eax]
mov al, byte [ecx]
lea ebx, [edi + esi]
mov dword [esp + 0x20], ebx
cmp al, dl
jne 0x4a2a48
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], dl
jne 0x4a2a4f
mov al, dl
mov byte [edi + esi], al
inc ecx
inc edi
jmp 0x4a2a30
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
mov byte [eax], 0
mov eax, dword [esp + 0xc]
mov dword [eax], ecx
or dword [eax - 0x20], 2
push dword [esi + 4]
mov edx, dword [esi - 0x1c]
mov ecx, ebx
call fcn.00464ed0
add esp, 4
jmp case.0x4a0edd.198
mov ecx, dword [esi - 0x6c]
test ecx, ecx
je 0x4a2a9d
mov eax, dword [ebx + 0x1d0]
mov dword [ecx + 4], eax
mov dword [ebx + 0x1d0], ecx
mov dword [ebx + 0x1d4], ecx
mov edx, dword [esi - 0x3c]
test edx, edx
je 0x4a2b8f
mov ecx, dword [esi - 0x28]
mov dword [esp + 0x10], ecx
test ecx, ecx
je 0x4a2b8f
mov eax, dword [edx]
lea eax, [eax + eax*4]
shl eax, 4
add eax, edx
mov dword [esp + 0xc], eax
cmp ecx, 1
jne 0x4a2ad8
cmp dword [esi - 0x2c], 0
jne 0x4a2ad8
or dword [eax - 0x20], ecx
jmp 0x4a2b8f
mov edx, dword [esi - 0x2c]
mov dword [esp + 0x20], edx
test edx, edx
jne 0x4a2aea
xor ecx, ecx
jmp 0x4a2b89
mov edx, ecx
xor eax, eax
mov ecx, dword [ebx]
add edx, 1
adc eax, eax
push eax
push edx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a2b1e
push dword [esp + 0x10]
push dword [esp + 0x24]
push edi
call fcn.004ae080
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov byte [edi + eax], 0
mov ecx, edi
test edi, edi
je 0x4a2b85
mov dl, byte [edi]
movzx eax, dl
mov byte [esp + 0x17], dl
cmp byte [eax + 0x4cea18], 0
jge 0x4a2b85
cmp byte [esp + 0x17], 0x5b
mov eax, 0x5d
movzx edx, dl
cmove edx, eax
mov eax, ecx
mov esi, eax
xor edi, edi
mov dword [esp + 0x34], esi
lea ecx, [eax + 1]
mov al, byte [ecx]
lea ebx, [edi + esi]
mov dword [esp + 0x20], ebx
cmp al, dl
jne 0x4a2b6b
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], dl
jne 0x4a2b72
mov al, dl
mov byte [edi + esi], al
inc ecx
inc edi
jmp 0x4a2b53
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
mov byte [eax], 0
mov eax, dword [esp + 0xc]
mov dword [eax], ecx
or dword [eax - 0x20], 2
mov eax, dword [esi - 0xc]
test eax, eax
je 0x4a2bb2
mov ecx, dword [ebx]
mov eax, dword [eax]
cmp eax, dword [ecx + 0x6c]
jle 0x4a2bb2
push str.set_list
push str.too_many_columns_in__s
push ebx
call fcn.00413380
add esp, 0xc
push dword [esi - 0x4c]
mov edx, dword [esi - 0x3c]
mov ecx, ebx
push dword [esi + 4]
push dword [esi - 0xc]
call fcn.0048c1c0
jmp 0x4a54ed
mov edi, dword [esi - 0x3c]
mov eax, dword [esi + 4]
mov ecx, dword [ebx]
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], ecx
test edi, edi
jne 0x4a2bf7
push edi
push 0x1c
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a2c93
xor edx, edx
jmp 0x4a2c43
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a2c43
lea eax, [edx + edx*2]
xor edx, edx
shl eax, 4
add eax, 4
mov dword [esp + 0x10], eax
cmp edi, dword [ecx + 0x128]
jb 0x4a2c83
cmp edi, dword [ecx + 0x12c]
jae 0x4a2c83
movzx eax, word [ecx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a2c7d
jb 0x4a2c3d
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x20]
ja 0x4a2c81
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x18]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
lea eax, [esi - 0x1c]
mov dword [esi - 0x3c], edi
push 1
push eax
mov edx, edi
mov ecx, ebx
call fcn.0044d8f0
add esp, 8
jmp case.0x4a0edd.198
mov eax, dword [esp + 0x10]
xor edx, edx
push edx
push eax
mov edx, edi
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a2c3f
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a2ca6
mov ecx, dword [esp + 0x30]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a2cb5
mov ecx, dword [esp + 0x30]
mov edx, edi
call fcn.0044d9a0
xor edi, edi
jmp 0x4a2c63
push dword [esi + 4]
mov edx, dword [esi - 0x5c]
mov ecx, ebx
push dword [esi - 0x2c]
call fcn.0044d690
add esp, 8
mov dword [esi - 0x5c], eax
jmp case.0x4a0edd.198
mov eax, dword [ebx]
mov ecx, eax
mov edi, dword [esi + 4]
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
je 0x4a2d0c
mov dword [eax], 1
xorps xmm0, xmm0
movups xmmword [eax + 8], xmm0
mov dword [eax + 0x18], 0
mov dword [eax + 4], edi
jmp 0x4a2d21
test edi, edi
je 0x4a2d1b
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044c7a0
xor eax, eax
mov dword [esp + 0x10], eax
lea edi, [esi - 0x1c]
mov edx, eax
push 1
push edi
mov ecx, ebx
call fcn.0044d8f0
mov eax, dword [esp + 0x18]
add esp, 8
mov dword [edi], eax
jmp case.0x4a0edd.198
push dword [esi + 4]
xor edx, edx
mov ecx, ebx
push dword [esi - 0x2c]
call fcn.0044d690
add esp, 8
mov dword [esi - 0x3c], eax
jmp case.0x4a0edd.198
mov ecx, dword [esi - 0x4c]
test ecx, ecx
je 0x4a2d74
mov eax, dword [ebx + 0x1d0]
mov dword [ecx + 4], eax
mov dword [ebx + 0x1d0], ecx
mov dword [ebx + 0x1d4], ecx
push dword [esi - 0x3c]
mov edx, dword [esi - 0x1c]
mov ecx, ebx
push dword [esi - 0xc]
push dword [esi + 4]
call fcn.0046e3a0
jmp 0x4a54ed
mov ecx, dword [esi - 0x5c]
test ecx, ecx
je 0x4a2da8
mov eax, dword [ebx + 0x1d0]
mov dword [ecx + 4], eax
mov dword [ebx + 0x1d0], ecx
mov dword [ebx + 0x1d4], ecx
push dword [esi - 0x4c]
mov edx, dword [esi - 0x2c]
mov ecx, ebx
push dword [esi - 0x1c]
push 0
call fcn.0046e3a0
jmp 0x4a54ed
mov edi, dword [esi - 0x1c]
mov ebx, dword [ebx]
mov dword [esp + 0xc], edi
test edi, edi
jne 0x4a2dfb
push edi
push 8
test ebx, ebx
je 0x4a2de2
mov ecx, ebx
call fcn.00410430
mov edi, eax
mov dword [esp + 0x14], edi
jmp 0x4a2ded
call fcn.0040fd60
mov edi, eax
mov dword [esp + 0x14], eax
add esp, 8
test edi, edi
je 0x4a2e29
xorps xmm0, xmm0
movq qword [edi], xmm0
mov edx, dword [edi]
lea eax, [esp + 0x20]
push eax
lea eax, [edi + 4]
mov ecx, ebx
push eax
push 8
call fcn.00461fd0
mov dword [edi], eax
add esp, 0xc
mov eax, dword [esp + 0x20]
mov dword [esp + 0x34], eax
test eax, eax
jns 0x4a2e33
mov edx, edi
mov ecx, ebx
call fcn.004620a0
xor edi, edi
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
lea ecx, [esi + 4]
test ecx, ecx
je 0x4a2eef
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [esp + 0x10], eax
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x4a2eef
mov ecx, eax
xor eax, eax
add ecx, 1
adc eax, eax
push eax
push ecx
mov ecx, ebx
call fcn.00410430
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4a2ef1
push dword [esp + 0x10]
push dword [esp + 0x24]
push ebx
call fcn.004ae080
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov byte [ebx + eax], 0
test ebx, ebx
je 0x4a2ef1
mov cl, byte [ebx]
movzx eax, cl
cmp byte [eax + 0x4cea18], 0
jge 0x4a2ef1
cmp cl, 0x5b
movzx edx, cl
mov eax, 0x5d
lea ecx, [ebx + 1]
cmove edx, eax
xor esi, esi
mov al, byte [ecx]
lea edi, [esi + ebx]
mov dword [esp + 0x20], edi
cmp al, dl
jne 0x4a2ec8
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], dl
jne 0x4a2ecf
mov al, dl
mov byte [esi + ebx], al
inc ecx
inc esi
jmp 0x4a2eb0
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov byte [eax], 0
mov eax, dword [edi]
mov dword [eax + ecx*8], ebx
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
xor ebx, ebx
mov eax, dword [edi]
mov ecx, dword [esp + 0x34]
mov dword [eax + ecx*8], ebx
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
mov edi, dword [ebx]
push 0
push 8
test edi, edi
je 0x4a2f1b
mov ecx, edi
call fcn.00410430
mov ebx, eax
mov dword [esp + 0x38], ebx
jmp 0x4a2f26
call fcn.0040fd60
mov ebx, eax
mov dword [esp + 0x38], eax
add esp, 8
test ebx, ebx
je 0x4a2f62
lea eax, [esp + 0x20]
xorps xmm0, xmm0
push eax
lea eax, [ebx + 4]
movq qword [ebx], xmm0
mov edx, dword [ebx]
mov ecx, edi
push eax
push 8
call fcn.00461fd0
mov dword [ebx], eax
add esp, 0xc
mov eax, dword [esp + 0x20]
mov dword [esp + 0x34], eax
test eax, eax
jns 0x4a2f6c
mov edx, ebx
mov ecx, edi
call fcn.004620a0
xor ebx, ebx
mov dword [esi + 4], ebx
jmp case.0x4a0edd.198
lea eax, [esi + 4]
test eax, eax
je 0x4a3026
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x20], eax
test eax, eax
je 0x4a3026
xor eax, eax
add ecx, 1
adc eax, eax
push eax
push ecx
mov ecx, edi
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3028
push dword [esp + 0x10]
push dword [esp + 0x24]
push edi
call fcn.004ae080
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov byte [eax + edi], 0
test edi, edi
je 0x4a3028
mov cl, byte [edi]
movzx eax, cl
cmp byte [eax + 0x4cea18], 0
jge 0x4a3028
cmp cl, 0x5b
movzx edx, cl
mov eax, 0x5d
lea ecx, [edi + 1]
cmove edx, eax
xor ebx, ebx
mov al, byte [ecx]
lea esi, [ebx + edi]
mov dword [esp + 0x20], esi
cmp al, dl
jne 0x4a2fff
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], dl
jne 0x4a3006
mov al, dl
mov byte [ebx + edi], al
inc ecx
inc ebx
jmp 0x4a2fe7
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov byte [eax], 0
mov eax, dword [ebx]
mov dword [eax + ecx*8], edi
mov dword [esi + 4], ebx
jmp case.0x4a0edd.198
xor edi, edi
mov eax, dword [ebx]
mov ecx, dword [esp + 0x34]
mov dword [eax + ecx*8], edi
mov dword [esi + 4], ebx
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
mov dword [esi - 0x18], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x14], eax
mov eax, dword [esi - 0xc]
mov dword [esi - 0x1c], eax
jmp case.0x4a0edd.198
push dword [esi + 8]
lea ecx, [esi + 4]
mov edx, ebx
push dword [ecx]
push 0x3b
call fcn.004a07d0
jmp 0x4a54ed
mov ecx, dword [esp + 0x1c]
lea ebx, [esi - 0x1c]
push 1
push ebx
mov edx, 0x3b
mov ecx, dword [ecx]
call fcn.0044c010
mov dword [esp + 0x18], eax
lea edi, [esi + 4]
mov eax, dword [esp + 0x24]
mov edx, 0x3b
push 1
push edi
mov ecx, dword [eax]
call fcn.0044c010
mov ecx, dword [ebx]
mov ebx, dword [esp + 0x2c]
mov dword [esi - 0x18], ecx
mov ecx, dword [edi + 4]
add ecx, dword [edi]
mov dword [esi - 0x14], ecx
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x48], eax
call fcn.00410430
mov edi, eax
add esp, 0x18
test edi, edi
je 0x4a3131
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x7a
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a30ef
mov dword [edi + 0x10], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a3105
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a16d3
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
mov eax, dword [esp + 0x10]
mov ebx, dword [ebx]
test eax, eax
je 0x4a3144
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a16d3
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
lea eax, [esi - 0x3c]
push 1
push eax
mov edx, 0x3b
call fcn.0044c010
lea ecx, [esi - 0x1c]
mov dword [esp + 0x20], eax
push 1
push ecx
mov ecx, dword [ebx]
mov edx, 0x3b
call fcn.0044c010
lea ecx, [esi + 4]
mov dword [esp + 0x20], eax
push 1
push ecx
mov ecx, dword [ebx]
mov edx, 0x3b
call fcn.0044c010
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x50], eax
call fcn.00410430
mov edi, eax
add esp, 0x20
test edi, edi
je 0x4a321c
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x7a
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a31e4
mov dword [edi + 0x10], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a31fa
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a3244
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
jmp 0x4a3244
mov eax, dword [esp + 0x10]
mov ecx, dword [ebx]
mov dword [esp + 0x20], ecx
test eax, eax
je 0x4a3235
mov edx, eax
call fcn.0044c7a0
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a3244
mov edx, eax
call fcn.0044c7a0
mov eax, dword [esi - 0x3c]
mov dword [esi - 0x38], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x34], eax
mov ecx, dword [ebx]
push 0
push 0x30
call fcn.00410430
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x4a32d6
push 0x30
push 0
push eax
call fcn.004ad600
mov ecx, dword [esp + 0x18]
or eax, 0xffffffff
add esp, 0xc
mov byte [ecx], 0x7a
mov word [ecx + 0x22], ax
test edi, edi
je 0x4a3296
mov dword [ecx + 0x10], edi
mov eax, dword [edi + 4]
and eax, 0x200100
or dword [ecx + 4], eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a32ac
mov dword [ecx + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [ecx + 4], eax
call fcn.0044bef0
mov eax, dword [ebx]
mov edi, dword [esp + 0xc]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a32fa
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
mov eax, dword [esp + 0x18]
mov ebx, dword [ebx]
test eax, eax
je 0x4a32e9
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a32f6
mov edx, edi
mov ecx, ebx
call fcn.0044c7a0
mov edi, dword [esp + 0xc]
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
push dword [esi + 8]
movzx eax, byte [esi + 2]
lea ecx, [esi + 4]
push dword [ecx]
mov edx, ebx
push eax
call fcn.004a07d0
jmp 0x4a54ed
mov ecx, dword [ebx]
lea edi, [esi + 4]
push 1
push edi
mov edx, 0x86
call fcn.0044c010
mov edx, dword [edi]
add esp, 8
mov ecx, dword [esi + 8]
mov dword [edi], eax
mov dword [edi + 4], edx
lea eax, [ecx + edx]
mov dword [edi + 8], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
lea ecx, [esi + 4]
cmp byte [eax], 0x23
jne 0x4a33d0
movzx eax, byte [eax + 1]
test byte [eax + 0x4cea18], 4
je 0x4a33d0
mov eax, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], ecx
mov dword [esi + 8], ecx
mov eax, dword [esp + 0x4c]
add eax, dword [esp + 0x48]
mov dword [esi + 0xc], eax
cmp byte [ebx + 0x12], 0
jne 0x4a339e
lea eax, [esp + 0x48]
push eax
push str.near___T_:_syntax_error
push ebx
call fcn.00413380
mov dword [esi + 4], 0
jmp 0x4a54ed
push 0
push 0
mov edx, 0x96
mov ecx, ebx
call fcn.0044c160
add esp, 8
mov dword [esi + 4], eax
test eax, eax
je case.0x4a0edd.198
mov ecx, dword [esp + 0x48]
lea edx, [eax + 0x1c]
lea ecx, [ecx + 1]
call fcn.00413ed0
jmp case.0x4a0edd.198
push dword [ecx + 4]
mov edi, dword [esi + 8]
mov edx, ebx
push dword [ecx]
push 0x87
call fcn.004a07d0
mov edx, dword [esi + 4]
add esp, 0xc
mov ecx, ebx
push edi
call fcn.0044c450
add esp, 4
jmp case.0x4a0edd.198
cmp dword [esi + 8], 0
lea eax, [esi + 4]
mov edi, dword [esi - 0x1c]
jbe 0x4a3428
mov ecx, dword [ebx]
mov edx, 0x5e
push 1
push eax
call fcn.0044c010
add esp, 8
test eax, eax
je 0x4a3428
mov dword [eax + 0xc], edi
mov edi, eax
or dword [eax + 4], 0x1100
mov dword [esi - 0x1c], edi
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x14], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x4c]
mov edx, 0x24
mov dword [esi - 0x48], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x44], eax
lea eax, [esi - 0xc]
mov ecx, dword [ebx]
push 1
push eax
call fcn.0044c010
mov ecx, eax
add esp, 8
mov dword [esi - 0x4c], ecx
mov eax, dword [esi - 0x2c]
test ecx, ecx
jne 0x4a347f
test eax, eax
je case.0x4a0edd.198
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
jmp case.0x4a0edd.198
test eax, eax
je 0x4a3491
mov dword [ecx + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [ecx + 4], eax
call fcn.0044bef0
jmp case.0x4a0edd.198
mov eax, dword [esi - 0xc]
test eax, eax
je 0x4a34bd
mov ecx, dword [ebx]
mov eax, dword [eax]
cmp eax, dword [ecx + 0x7c]
jle 0x4a34bd
lea eax, [esi - 0x3c]
push eax
push str.too_many_arguments_on_function__T
push ebx
call fcn.00413380
add esp, 0xc
mov eax, dword [esi - 0xc]
lea ecx, [esi - 0x3c]
mov dword [esp + 0x10], eax
mov edx, 0x90
mov eax, dword [ebx]
push 1
push ecx
mov ecx, eax
mov dword [esp + 0x28], eax
call fcn.0044c010
mov edi, eax
add esp, 8
mov eax, dword [esp + 0x10]
test edi, edi
jne 0x4a34fc
test eax, eax
je 0x4a34f8
mov ecx, dword [esp + 0x20]
mov edx, eax
call fcn.0044d9a0
xor edi, edi
jmp 0x4a3525
mov dword [edi + 0x14], eax
cmp dword [ebx + 0x24], 0
jne 0x4a3525
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a3525
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp dword [esi - 0x1c], 1
mov ecx, dword [esi - 0x3c]
jne 0x4a353c
test edi, edi
je 0x4a353c
or dword [edi + 4], 0x10
mov dword [esi - 0x3c], edi
mov dword [esi - 0x38], ecx
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
lea eax, [esi - 0x2c]
push 1
push eax
mov edx, 0x90
call fcn.0044c010
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3592
mov dword [edi + 0x14], 0
cmp dword [ebx + 0x24], 0
jne 0x4a3592
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a3592
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov eax, dword [esi + 4]
mov ecx, dword [esi - 0x2c]
mov dword [esi - 0x2c], edi
mov dword [esi - 0x28], ecx
add eax, dword [esi + 8]
mov dword [esi - 0x24], eax
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
lea eax, [esi + 4]
push 1
push eax
mov edx, 0x90
call fcn.0044c010
mov edi, eax
add esp, 8
test edi, edi
je 0x4a35f1
mov dword [edi + 0x14], 0
cmp dword [ebx + 0x24], 0
jne 0x4a35f1
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a35f1
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
add eax, ecx
mov dword [esi + 4], edi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp case.0x4a0edd.198
mov edi, dword [esi - 0x2c]
mov eax, dword [esi - 0xc]
mov ecx, dword [ebx]
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], ecx
test edi, edi
jne 0x4a3634
push edi
push 0x1c
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a372b
xor edx, edx
jmp 0x4a3690
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a3690
lea eax, [edx + edx*2]
xor edx, edx
shl eax, 4
add eax, 4
mov dword [esp + 0x10], eax
cmp edi, dword [ecx + 0x128]
jb 0x4a3717
cmp edi, dword [ecx + 0x12c]
jae 0x4a3717
movzx eax, word [ecx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a3711
jb 0x4a368a
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x20]
ja 0x4a3715
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x18]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov ecx, dword [ebx]
push 0
push 0x30
call fcn.00410430
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x4a3754
push 0x30
push 0
push eax
call fcn.004ad600
mov ecx, dword [esp + 0x18]
add esp, 0xc
or eax, 0xffffffff
mov byte [ecx], 0x97
mov word [ecx + 0x22], ax
call fcn.0044bef0
mov eax, dword [ebx]
mov ecx, dword [eax + 0x70]
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x18], ecx
jle 0x4a3754
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov eax, dword [esp + 0x18]
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x4a375c
mov eax, dword [esp + 0x10]
xor edx, edx
push edx
push eax
mov edx, edi
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a368c
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a373e
mov ecx, dword [esp + 0x30]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a374d
mov ecx, dword [esp + 0x30]
mov edx, edi
call fcn.0044d9a0
xor edi, edi
jmp 0x4a36b0
mov dword [esp + 0x20], eax
test eax, eax
je 0x4a377f
mov dword [eax + 0x14], edi
mov eax, dword [esi - 0x3c]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
movq xmm0, qword [esp + 0x20]
movq qword [esi - 0x3c], xmm0
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
test edi, edi
je 0x4a378c
mov ecx, dword [ebx]
mov edx, edi
call fcn.0044d9a0
movq xmm0, qword [esp + 0x20]
mov eax, dword [esp + 0x28]
movq qword [esi - 0x3c], xmm0
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
movzx edx, byte [esi - 0xe]
lea eax, [esi + 4]
push eax
lea eax, [esi - 0x1c]
mov ecx, ebx
push eax
call fcn.004a08d0
add esp, 8
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi - 0xc], eax
mov dword [esi - 8], ecx
or dword [esi - 8], 0x80000000
jmp case.0x4a0edd.198
mov eax, dword [esi - 8]
mov ecx, eax
and eax, 0x7fffffff
and ecx, 0x80000000
mov dword [esi - 8], eax
mov eax, dword [ebx]
mov edi, dword [esi + 4]
mov dword [esp + 0x34], ecx
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a38c8
mov dword [ecx], 1
xorps xmm0, xmm0
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edi
mov edi, ecx
mov eax, dword [ebx]
mov edx, dword [esi - 0x1c]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx]
mov dword [esp + 0xc], eax
dec eax
test dword [ecx], eax
jne 0x4a3904
mov eax, dword [ecx]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*2]
shl eax, 4
add eax, 4
mov dword [esp + 0xc], eax
cmp ecx, dword [edx + 0x128]
jb 0x4a3894
cmp ecx, dword [edx + 0x12c]
jae 0x4a3894
mov eax, dword [esi - 0x1c]
mov dword [esp + 0x38], eax
movzx eax, word [edx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a389f
jb 0x4a3887
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x20]
ja 0x4a38a3
mov eax, dword [ecx]
mov edi, ecx
mov edx, dword [esi - 0x1c]
mov dword [esp + 0xc], eax
jmp 0x4a3908
mov eax, dword [esi - 0x1c]
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0xc]
push 0
mov edx, ecx
mov ecx, dword [esp + 0x20]
push eax
call fcn.004104d0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a3928
mov eax, dword [ecx]
mov edi, ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 0xc], eax
jmp 0x4a3908
test edi, edi
je 0x4a38d7
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044c7a0
mov eax, dword [esi - 0x1c]
mov dword [esp + 0x38], eax
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x24], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3928
mov edx, dword [esp + 0x38]
xor eax, eax
mov dword [esp + 0xc], eax
jmp 0x4a3908
mov eax, dword [esp + 0xc]
lea eax, [eax + eax*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
mov eax, dword [esp + 0xc]
inc eax
mov dword [edi], eax
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edx
jmp 0x4a394c
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4a393b
mov ecx, dword [esp + 0x1c]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a394a
mov ecx, dword [esp + 0x1c]
mov edx, edi
call fcn.0044d9a0
xor edi, edi
mov ecx, dword [ebx]
lea eax, [esi - 0xc]
push 1
push eax
mov edx, 0x90
mov dword [esp + 0x28], ecx
call fcn.0044c010
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4a3980
test edi, edi
je 0x4a397c
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044d9a0
xor eax, eax
jmp 0x4a39b1
mov dword [eax + 0x14], edi
cmp dword [ebx + 0x24], 0
jne 0x4a39b1
mov ecx, eax
call fcn.0044bef0
mov eax, dword [ebx]
mov ecx, dword [eax + 0x70]
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x18], ecx
jle 0x4a39b1
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov edx, dword [esp + 0x34]
mov ecx, ebx
mov dword [esi - 0x1c], eax
lea eax, [esi - 0x1c]
push eax
call fcn.004a09c0
mov eax, dword [esi + 0xc]
add esp, 4
mov dword [esi - 0x14], eax
mov eax, dword [esi - 0x1c]
test eax, eax
je case.0x4a0edd.198
or dword [eax + 4], 0x80
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x28]
mov ecx, eax
and eax, 0x7fffffff
and ecx, 0x80000000
mov dword [esi - 0x28], eax
mov eax, dword [ebx]
mov edi, dword [esi - 0x1c]
mov dword [esp + 0x34], ecx
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a3adc
mov dword [ecx], 1
xorps xmm0, xmm0
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edi
mov edi, ecx
mov eax, dword [ebx]
mov edx, dword [esi - 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx]
mov dword [esp + 0xc], eax
dec eax
test dword [ecx], eax
jne 0x4a3b1c
mov eax, dword [ecx]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*2]
shl eax, 4
add eax, 4
mov dword [esp + 0xc], eax
cmp ecx, dword [edx + 0x128]
jb 0x4a3aa4
cmp ecx, dword [edx + 0x12c]
jae 0x4a3aa4
mov eax, dword [esi - 0x3c]
mov dword [esp + 0x38], eax
movzx eax, word [edx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a3aaf
jb 0x4a3a94
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x20]
ja 0x4a3ab3
mov eax, dword [ecx]
mov edi, ecx
mov edx, dword [esi - 0x3c]
mov dword [esp + 0xc], eax
jmp 0x4a3b20
mov eax, dword [esi - 0x3c]
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0xc]
push 0
mov edx, ecx
mov ecx, dword [esp + 0x20]
push eax
call fcn.004104d0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a3be2
mov eax, dword [ecx]
mov edi, ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 0xc], eax
jmp 0x4a3b20
test edi, edi
je 0x4a3aeb
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044c7a0
mov eax, dword [esi - 0x3c]
mov dword [esp + 0x38], eax
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x24], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3be2
mov edx, dword [esp + 0x38]
xor eax, eax
mov dword [esp + 0xc], eax
jmp 0x4a3b20
mov eax, dword [esp + 0xc]
lea eax, [eax + eax*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
mov eax, dword [esp + 0xc]
inc eax
mov dword [edi], eax
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edx
mov eax, dword [esi + 4]
mov ecx, dword [ebx]
mov dword [esp + 0x1c], eax
mov dword [esp + 0xc], ecx
test edi, edi
je 0x4a3c11
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a3c25
lea edx, [edx + edx*2]
shl edx, 4
add edx, 4
mov dword [esp + 0x2c], edx
cmp edi, dword [ecx + 0x128]
jb 0x4a3bbd
cmp edi, dword [ecx + 0x12c]
jae 0x4a3bbd
mov eax, dword [esi + 4]
mov dword [esp + 0x1c], eax
mov eax, ecx
mov dword [esp + 0x38], edi
mov dword [esp + 0xc], ecx
movzx eax, word [eax + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a3bc5
jb 0x4a3bac
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x20]
ja 0x4a3bc9
mov eax, dword [esi + 4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x38]
mov edi, eax
mov edx, dword [eax]
jmp 0x4a3c25
mov eax, dword [esp + 0x2c]
mov edx, edi
jmp 0x4a3bcd
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x38]
push 0
push eax
call fcn.004104d0
add esp, 8
test eax, eax
je 0x4a3c47
mov edx, dword [eax]
mov edi, eax
jmp 0x4a3c25
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4a3bf5
mov ecx, dword [esp + 0x1c]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a3c04
mov ecx, dword [esp + 0x1c]
mov edx, edi
call fcn.0044d9a0
mov eax, dword [esi + 4]
mov ecx, dword [ebx]
mov dword [esp + 0x1c], eax
mov dword [esp + 0xc], ecx
push 0
push 0x1c
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3c47
xor edx, edx
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x1c]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
jmp 0x4a3c6b
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4a3c5a
mov ecx, dword [esp + 0xc]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a3c69
mov ecx, dword [esp + 0xc]
mov edx, edi
call fcn.0044d9a0
xor edi, edi
mov ecx, dword [ebx]
lea eax, [esi - 0x2c]
push 1
push eax
mov edx, 0x90
mov dword [esp + 0x28], ecx
call fcn.0044c010
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4a3c9f
test edi, edi
je 0x4a3c9b
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044d9a0
xor eax, eax
jmp 0x4a3cd0
mov dword [eax + 0x14], edi
cmp dword [ebx + 0x24], 0
jne 0x4a3cd0
mov ecx, eax
call fcn.0044bef0
mov eax, dword [ebx]
mov ecx, dword [eax + 0x70]
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x18], ecx
jle 0x4a3cd0
push ecx
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov edx, dword [esp + 0x34]
mov ecx, ebx
mov dword [esi - 0x3c], eax
lea eax, [esi - 0x3c]
push eax
call fcn.004a09c0
mov eax, dword [esi + 0xc]
add esp, 4
mov dword [esi - 0x34], eax
mov eax, dword [esi - 0x3c]
test eax, eax
je case.0x4a0edd.198
or dword [eax + 4], 0x80
jmp case.0x4a0edd.198
movzx edx, byte [esi + 2]
lea eax, [esi + 4]
push eax
lea eax, [esi - 0xc]
mov ecx, ebx
push eax
call fcn.004a0a60
add esp, 8
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3d9a
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x33
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a3d65
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a3428
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov dword [esi - 0x1c], edi
add esp, 0xc
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x14], eax
jmp case.0x4a0edd.198
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a3428
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov dword [esi - 0x1c], edi
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x14], eax
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov edx, 0x2d
push eax
lea edi, [esi - 0x1c]
mov ecx, ebx
push edi
call fcn.004a08d0
mov edi, dword [edi]
add esp, 8
mov ecx, dword [ebx]
test edi, edi
je case.0x4a0edd.198
mov eax, dword [esi + 4]
test eax, eax
je case.0x4a0edd.198
cmp byte [eax], 0x65
jne case.0x4a0edd.198
mov byte [edi], 0x32
mov edx, dword [edi + 0x10]
test edx, edx
je 0x4a3e06
call fcn.0044c7a0
mov dword [edi + 0x10], 0
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov edx, 0x8f
push eax
lea edi, [esi - 0x2c]
mov ecx, ebx
push edi
call fcn.004a08d0
mov edi, dword [edi]
add esp, 8
mov ecx, dword [ebx]
test edi, edi
je case.0x4a0edd.198
mov eax, dword [esi + 4]
test eax, eax
je case.0x4a0edd.198
cmp byte [eax], 0x65
jne case.0x4a0edd.198
mov byte [edi], 0x33
jmp 0x4a3dfa
lea ecx, [esi - 0xc]
mov edx, ebx
push ecx
lea eax, [esi + 4]
push eax
movzx eax, byte [esi - 0xe]
push eax
call fcn.004a0b20
jmp 0x4a54ed
mov eax, dword [esi - 0xc]
mov dword [esi - 8], eax
mov eax, dword [esi + 4]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3ee3
push 0x30
push 0
push edi
call fcn.004ad600
mov byte [edi], 0x94
or eax, 0xffffffff
add esp, 0xc
mov word [edi + 0x22], ax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a3eb5
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a3ef4
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov dword [esi - 0xc], edi
add esp, 0xc
mov eax, dword [esi + 0xc]
mov dword [esi - 4], eax
jmp case.0x4a0edd.198
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a3ef4
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov dword [esi - 0xc], edi
mov eax, dword [esi + 0xc]
mov dword [esi - 4], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0xc]
mov dword [esi - 8], eax
mov eax, dword [esi + 4]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3ee3
push 0x30
push 0
push edi
call fcn.004ad600
mov byte [edi], 0x95
jmp 0x4a3e95
mov dword [esi + 4], 0
jmp case.0x4a0edd.198
mov eax, dword [ebx]
mov ecx, eax
mov edi, dword [esi - 0x1c]
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a4024
mov dword [ecx], 1
xorps xmm0, xmm0
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edi
mov eax, dword [ecx]
mov edi, dword [esi + 4]
mov edx, dword [ebx]
mov dword [esp + 0x20], eax
dec eax
mov dword [esp + 0x1c], edi
mov edi, ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0xc], edi
test dword [ecx], eax
jne 0x4a4064
mov eax, dword [ecx]
lea edi, [eax + eax*2]
shl edi, 4
add edi, 4
mov dword [esp + 0xc], edi
cmp ecx, dword [edx + 0x128]
jb 0x4a3ff2
cmp ecx, dword [edx + 0x12c]
jae 0x4a3ff2
mov eax, dword [esi + 4]
mov edi, ecx
mov dword [esp + 0x1c], eax
movzx eax, word [edx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a3fff
jb 0x4a3fe1
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x20]
ja 0x4a4003
mov eax, dword [esi + 4]
mov edi, ecx
mov edx, dword [ecx]
mov dword [esp + 0x1c], eax
mov dword [esp + 0xc], edi
jmp 0x4a4068
mov eax, dword [esi + 4]
mov edi, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0xc]
push 0
mov edx, ecx
mov ecx, dword [esp + 0x30]
push eax
call fcn.004104d0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a408a
mov edx, dword [ecx]
mov edi, ecx
mov dword [esp + 0xc], edi
jmp 0x4a4068
test edi, edi
je 0x4a4033
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044c7a0
mov eax, dword [esi + 4]
mov dword [esp + 0x1c], eax
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x1c
mov dword [esp + 0x34], eax
call fcn.00410430
mov edi, eax
add esp, 8
mov dword [esp + 0xc], edi
test edi, edi
je 0x4a408a
mov eax, dword [esp + 0x1c]
xor edx, edx
mov dword [esp + 0x1c], eax
jmp 0x4a4068
mov edx, dword [esp + 0x20]
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x1c]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
jmp 0x4a40b4
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4a409d
mov ecx, dword [esp + 0x2c]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a40ac
mov ecx, dword [esp + 0x2c]
mov edx, edi
call fcn.0044d9a0
mov dword [esp + 0xc], 0
mov eax, dword [esi - 0x3c]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a412a
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x30
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a40fc
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a411c
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov eax, edi
mov dword [esi - 0x3c], eax
mov eax, dword [esp + 0xc]
mov dword [edi + 0x14], eax
jmp 0x4a414f
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a413b
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov eax, dword [esp + 0xc]
mov dword [esi - 0x3c], edi
test eax, eax
je 0x4a414f
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044d9a0
mov edx, dword [esi - 0x2c]
lea eax, [esi - 0x3c]
push eax
mov ecx, ebx
call fcn.004a09c0
mov eax, dword [esi + 0xc]
add esp, 4
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0xc]
test eax, eax
jne 0x4a41ad
mov edx, dword [esi - 0x3c]
test edx, edx
je 0x4a4180
mov ecx, dword [ebx]
call fcn.0044c7a0
mov eax, dword [esi - 0x2c]
mov edx, 0x86
mov ecx, dword [ebx]
push 1
lea eax, [eax*8 + 0x4d04a8]
push eax
call fcn.0044c010
mov dword [esi - 0x3c], eax
add esp, 8
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
cmp dword [eax], 1
jne 0x4a4203
mov edi, dword [eax + 4]
mov dword [eax + 4], 0
mov edx, dword [esi - 0xc]
mov ecx, dword [ebx]
call fcn.0044dc30
test edi, edi
je 0x4a41da
mov eax, dword [edi + 4]
and eax, 0xfffffeff
or eax, 0x200
mov dword [edi + 4], eax
mov edx, dword [esi - 0x2c]
mov ecx, ebx
neg edx
push edi
push dword [esi - 0x3c]
sbb edx, edx
add edx, 0x35
call fcn.0044c160
mov dword [esi - 0x3c], eax
add esp, 8
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
lea edi, [esi - 0x3c]
mov edx, 0x31
push 0
push dword [edi]
mov ecx, ebx
call fcn.0044c160
add esp, 8
mov dword [edi], eax
mov edx, dword [esi - 0xc]
test eax, eax
je 0x4a4230
mov dword [eax + 0x14], edx
mov ecx, ebx
mov edx, dword [edi]
call fcn.0044bfd0
jmp 0x4a4237
mov ecx, dword [ebx]
call fcn.0044dc30
push edi
mov edx, dword [esi - 0x2c]
mov ecx, ebx
call fcn.004a09c0
mov eax, dword [esi + 8]
add esp, 4
add eax, dword [esi + 4]
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
mov dword [esi - 0x18], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x14], eax
mov ecx, dword [ebx]
push 0
push 0x30
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a42b5
push 0x30
push 0
push edi
call fcn.004ad600
add esp, 0xc
mov byte [edi], 0x77
or eax, 0xffffffff
mov ecx, edi
mov word [edi + 0x22], ax
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a42b5
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov dword [esi - 0x1c], edi
add esp, 0xc
mov edx, dword [esi - 0xc]
jmp 0x4a42c3
mov dword [esi - 0x1c], edi
mov edx, dword [esi - 0xc]
test edi, edi
je 0x4a1105
mov dword [edi + 0x14], edx
or dword [edi + 4], 0x200800
cmp dword [ebx + 0x24], 0
jne case.0x4a0edd.198
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle case.0x4a0edd.198
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
jmp 0x4a54ed
mov eax, dword [esi - 0x3c]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a43a8
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x31
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a4349
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a4369
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov dword [esi - 0x3c], edi
mov eax, dword [esi - 0xc]
mov dword [edi + 0x14], eax
or dword [edi + 4], 0x200800
cmp dword [ebx + 0x24], 0
jne 0x4a43cf
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a43cf
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
lea eax, [esi - 0x3c]
push eax
jmp 0x4a4238
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a43b9
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov dword [esi - 0x3c], edi
mov edx, dword [esi - 0xc]
test edx, edx
je 0x4a43cf
mov ecx, dword [ebx]
push 1
call fcn.0047b970
add esp, 4
lea eax, [esi - 0x3c]
push eax
jmp 0x4a4238
mov ecx, dword [ebx]
push 0
push 0x58
mov dword [esp + 0x18], ecx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a4465
push 0x50
lea eax, [edi + 8]
mov dword [edi + 4], 1
push 0
push eax
mov dword [edi], 1
call fcn.004ad600
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov dword [edi + 0x38], 0xffffffff
cmp byte [ecx + 0x49], 0
je 0x4a4429
mov edx, edi
call fcn.004625e0
xor edi, edi
jmp 0x4a4465
mov eax, dword [edi]
lea edx, [esi - 0xc]
lea eax, [eax + eax*4]
shl eax, 4
test edx, edx
je 0x4a44a7
cmp dword [edx], 0
jne 0x4a44a7
lea edx, [edi - 0x40]
add edx, eax
mov dword [esp + 0xc], edx
lea edx, [edi - 0x44]
add edx, eax
mov dword [esp + 0x30], edx
lea edx, [esi - 0x1c]
call fcn.0045bd70
mov ecx, dword [esp + 0xc]
mov dword [ecx], eax
xor ecx, ecx
mov eax, dword [esp + 0x30]
mov dword [eax], ecx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push edi
xor edx, edx
mov ecx, ebx
call fcn.0047baa0
mov edx, dword [esi + 4]
add esp, 0x20
mov dword [esp + 0x30], eax
test edx, edx
je 0x4a44e3
xor ecx, ecx
test eax, eax
cmovne ecx, edi
test ecx, ecx
je 0x4a44dc
mov eax, dword [ecx]
lea eax, [eax + eax*4]
add eax, eax
mov dword [ecx + eax*8], edx
or dword [ecx + eax*8 - 0x20], 4
jmp 0x4a44e3
lea ebx, [edi - 0x40]
add ebx, eax
add eax, 0xffffffbc
add eax, edi
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x30], eax
test edx, edx
je 0x4a444f
call fcn.0045bd70
mov ecx, dword [esp + 0xc]
lea edx, [esi - 0x1c]
mov dword [ecx], eax
mov ecx, dword [esp + 0x10]
call fcn.0045bd70
mov ecx, eax
jmp 0x4a445f
mov ecx, dword [ebx]
call fcn.0044d9a0
mov eax, dword [esi - 0x3c]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a458a
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x31
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a452f
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a454f
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov edx, dword [esp + 0x30]
mov eax, edi
mov dword [esi - 0x3c], eax
mov dword [edi + 0x14], edx
or dword [edi + 4], 0x200800
cmp dword [ebx + 0x24], 0
jne 0x4a45b2
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a45b2
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
jmp 0x4a45b2
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a459b
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov edx, dword [esp + 0x30]
mov dword [esi - 0x3c], edi
test edx, edx
je 0x4a45b2
mov ecx, dword [ebx]
push 1
call fcn.0047b970
add esp, 4
mov edx, dword [esi - 0x2c]
lea eax, [esi - 0x3c]
push eax
mov ecx, ebx
call fcn.004a09c0
mov ecx, dword [esi - 0xc]
add esp, 4
test ecx, ecx
je 0x4a45d7
mov eax, dword [esi - 8]
add eax, ecx
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
add eax, dword [esi - 0x18]
mov dword [esi - 0x34], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x2c]
mov dword [esi - 0x28], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x24], eax
mov ecx, dword [ebx]
push 0
push 0x30
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a464a
push 0x30
push 0
push edi
call fcn.004ad600
add esp, 0xc
mov byte [edi], 0x14
or eax, 0xffffffff
mov ecx, edi
mov word [edi + 0x22], ax
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a464a
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov dword [esi - 0x2c], edi
add esp, 0xc
mov edx, dword [esi - 0xc]
jmp 0x4a42c3
mov dword [esi - 0x2c], edi
jmp 0x4a42b8
mov eax, dword [esi - 0x3c]
mov dword [esi - 0x38], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x34], eax
mov eax, dword [esi - 0x2c]
mov ecx, dword [ebx]
push 0
push 0x30
mov dword [esp + 0x18], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a4701
push 0x30
push 0
push edi
call fcn.004ad600
or eax, 0xffffffff
mov byte [edi], 0x88
mov word [edi + 0x22], ax
add esp, 0xc
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a46ad
mov dword [edi + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200100
or dword [edi + 4], eax
mov ecx, edi
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a46cd
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
add esp, 0xc
mov dword [esi - 0x3c], edi
mov eax, dword [esi - 0xc]
mov ecx, dword [esi - 0x1c]
test eax, eax
je 0x4a46e9
mov edx, ecx
mov ecx, ebx
push eax
call fcn.0044d5c0
add esp, 4
mov ecx, eax
mov eax, dword [esi - 0x3c]
mov dword [eax + 0x14], ecx
cmp dword [ebx + 0x24], 0
jne case.0x4a0edd.198
mov edi, dword [esi - 0x3c]
jmp 0x4a42d7
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a4712
mov ecx, dword [ebx]
mov edx, eax
call fcn.0044c7a0
mov dword [esi - 0x3c], edi
mov edx, dword [esi - 0x1c]
test edx, edx
je 0x4a4723
mov ecx, dword [ebx]
call fcn.0044d9a0
mov edx, dword [esi - 0xc]
test edx, edx
je case.0x4a0edd.198
mov ecx, dword [ebx]
call fcn.0044c7a0
jmp case.0x4a0edd.198
mov edi, dword [esi - 0x3c]
mov eax, dword [esi - 0x1c]
mov ecx, dword [ebx]
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], ecx
test edi, edi
jne 0x4a4767
push edi
push 0x1c
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a481c
xor edx, edx
jmp 0x4a47b7
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a47b7
lea eax, [edx + edx*2]
xor edx, edx
shl eax, 4
add eax, 4
mov dword [esp + 0x10], eax
cmp edi, dword [ecx + 0x128]
jb 0x4a480c
cmp edi, dword [ecx + 0x12c]
jae 0x4a480c
movzx eax, word [ecx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a4806
jb 0x4a47b1
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x20]
ja 0x4a480a
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x18]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0x3c], edi
mov eax, dword [esi + 4]
mov ebx, dword [ebx]
mov dword [esp + 0xc], eax
test edi, edi
jne 0x4a4850
push 0
push 0x1c
mov ecx, ebx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a48ed
xor edx, edx
jmp 0x4a48aa
mov eax, dword [esp + 0x10]
xor edx, edx
push edx
push eax
mov edx, edi
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a47b3
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4a482f
mov ecx, dword [esp + 0x30]
mov edx, eax
call fcn.0044c7a0
test edi, edi
je 0x4a483e
mov ecx, dword [esp + 0x30]
mov edx, edi
call fcn.0044d9a0
mov dword [esi - 0x3c], 0
mov eax, dword [esi + 4]
mov ebx, dword [ebx]
mov dword [esp + 0xc], eax
jmp 0x4a47e7
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a48aa
lea ecx, [edx + edx*2]
shl ecx, 4
add ecx, 4
mov dword [esp + 0x2c], ecx
cmp edi, dword [ebx + 0x128]
jb 0x4a48d2
cmp edi, dword [ebx + 0x12c]
jae 0x4a48d2
mov eax, dword [esi + 4]
mov ecx, edi
mov dword [esp + 0xc], eax
mov eax, ebx
movzx eax, word [eax + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a48d4
jb 0x4a489f
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x20]
ja 0x4a48d8
mov eax, dword [esi + 4]
mov dword [esp + 0xc], eax
mov edx, dword [ecx]
mov edi, ecx
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0xc]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
mov ecx, edi
mov eax, dword [esp + 0x2c]
push 0
mov edx, ecx
mov ecx, ebx
push eax
call fcn.004104d0
mov ecx, eax
add esp, 8
test ecx, ecx
jne 0x4a48a6
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4a48fe
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a490b
mov edx, edi
mov ecx, ebx
call fcn.0044d9a0
xor edi, edi
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
mov eax, dword [ebx]
mov ecx, eax
mov edi, dword [esi - 0x1c]
push 0
push 0x1c
mov dword [esp + 0x28], eax
call fcn.00410430
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a49dc
mov dword [ecx], 1
xorps xmm0, xmm0
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edi
mov edi, ecx
mov dword [esi - 0x2c], ecx
mov eax, dword [ecx]
mov edx, dword [esi + 4]
mov ebx, dword [ebx]
mov dword [esp + 0x20], eax
dec eax
test dword [ecx], eax
jne 0x4a4a17
mov eax, dword [ecx]
lea eax, [eax + eax*2]
shl eax, 4
add eax, 4
mov dword [esp + 0x2c], eax
cmp ecx, dword [ebx + 0x128]
jb 0x4a49b2
cmp ecx, dword [ebx + 0x12c]
jae 0x4a49b2
mov eax, edx
mov dword [esp + 0xc], eax
movzx eax, word [ebx + 0x10c]
cdq
mov dword [esp + 0x20], eax
xor eax, eax
cmp eax, edx
ja 0x4a49b9
jb 0x4a49a9
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x20]
ja 0x4a49bd
mov edx, dword [esi + 4]
mov edi, ecx
mov ebx, dword [ecx]
jmp 0x4a4a1b
mov eax, dword [esi + 4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x2c]
push 0
mov edx, ecx
mov ecx, ebx
push eax
call fcn.004104d0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4a4a3f
mov edx, dword [esp + 0xc]
mov edi, ecx
mov ebx, dword [ecx]
jmp 0x4a4a1b
test edi, edi
je 0x4a49eb
mov ecx, dword [esp + 0x20]
mov edx, edi
call fcn.0044c7a0
mov dword [esi - 0x2c], 0
mov ebx, dword [ebx]
mov ecx, ebx
mov eax, dword [esi + 4]
push 0
push 0x1c
mov dword [esp + 0x14], eax
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a4a3f
mov edx, dword [esp + 0xc]
xor ebx, ebx
jmp 0x4a4a1b
mov ebx, dword [esp + 0x20]
lea eax, [ebx + ebx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [ebx + 1]
mov dword [edi], eax
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], edx
mov dword [esi - 0x2c], edi
jmp case.0x4a0edd.198
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4a4a50
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a1a13
mov edx, edi
mov ecx, ebx
call fcn.0044d9a0
xor edi, edi
mov dword [esi - 0x2c], edi
jmp case.0x4a0edd.198
mov edi, dword [esi - 0x1c]
mov eax, dword [esi + 4]
mov ebx, dword [ebx]
mov dword [esp + 0x10], eax
test edi, edi
jne 0x4a4a96
push edi
push 0x1c
mov ecx, ebx
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a4b14
xor edx, edx
jmp 0x4a4ad8
mov edx, dword [edi]
lea eax, [edx - 1]
test edx, eax
jne 0x4a4ad8
lea ecx, [edx + edx*2]
xor eax, eax
shl ecx, 4
add ecx, 4
mov dword [esp + 0x20], eax
cmp edi, dword [ebx + 0x128]
jb 0x4a4b02
cmp edi, dword [ebx + 0x12c]
jae 0x4a4b02
movzx eax, word [ebx + 0x10c]
cdq
cmp dword [esp + 0x20], edx
ja 0x4a4b00
jb 0x4a4ad2
cmp ecx, eax
ja 0x4a4b00
mov eax, edi
mov edx, dword [eax]
mov edi, eax
lea eax, [edx + edx*2]
xorps xmm0, xmm0
lea ecx, [edi + eax*8]
lea eax, [edx + 1]
mov dword [edi], eax
mov eax, dword [esp + 0x10]
movups xmmword [ecx + 8], xmm0
mov dword [ecx + 0x18], 0
mov dword [ecx + 4], eax
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
xor eax, eax
push eax
push ecx
mov edx, edi
mov ecx, ebx
call fcn.004104d0
add esp, 8
test eax, eax
jne 0x4a4ad4
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a4b25
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
test edi, edi
je 0x4a4b32
mov edx, edi
mov ecx, ebx
call fcn.0044d9a0
xor edi, edi
mov dword [esi - 0x1c], edi
jmp case.0x4a0edd.198
mov ebx, dword [ebx]
mov ecx, ebx
mov edi, dword [esi + 4]
push 0
push 0x1c
call fcn.00410430
add esp, 8
test eax, eax
je 0x4a4b72
mov dword [eax], 1
xorps xmm0, xmm0
movups xmmword [eax + 8], xmm0
mov dword [eax + 0x18], 0
mov dword [eax + 4], edi
mov dword [esi + 4], eax
jmp case.0x4a0edd.198
test edi, edi
je 0x4a4b7f
mov edx, edi
mov ecx, ebx
call fcn.0044c7a0
xor eax, eax
mov dword [esi + 4], eax
jmp case.0x4a0edd.198
mov eax, dword [ebx]
mov ecx, eax
push 0
push 0x58
mov dword [esp + 0x28], eax
call fcn.00410430
mov edi, eax
add esp, 8
mov dword [esp + 0x34], edi
test edi, edi
jne 0x4a4bab
xor ecx, ecx
jmp 0x4a4c04
push 0x50
lea eax, [edi + 8]
mov dword [edi + 4], 1
push 0
push eax
mov dword [edi], 1
call fcn.004ad600
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov dword [edi + 0x38], 0xffffffff
cmp byte [ecx + 0x49], 0
je 0x4a4be4
mov edx, edi
call fcn.004625e0
xor ecx, ecx
jmp 0x4a4c04
mov eax, dword [edi]
lea edx, [esi - 0x3c]
lea eax, [eax + eax*4]
shl eax, 4
add edi, eax
call fcn.0045bd70
mov dword [edi - 0x40], eax
mov dword [edi - 0x44], 0
mov ecx, dword [esp + 0x34]
push 0
push dword [esi - 0x7c]
lea eax, [esi - 0xac]
push 0
push dword [esi + 4]
lea edx, [esi - 0x6c]
push eax
push dword [esi - 0x9c]
lea eax, [esi - 0x5c]
push dword [esi - 0x1c]
push ecx
push eax
mov ecx, ebx
call fcn.00460840
add esp, 0x24
jmp case.0x4a0edd.198
mov dword [esi + 4], 2
jmp case.0x4a0edd.198
push dword [esi + 4]
mov edx, dword [esi - 0x3c]
lea eax, [esi - 0x1c]
push dword [esi - 0xc]
mov ecx, ebx
push eax
call fcn.004a0bf0
mov dword [esi - 0x3c], eax
jmp 0x4a54ed
push dword [esi + 4]
lea edi, [esi - 0x1c]
xor edx, edx
push dword [esi - 0xc]
mov ecx, ebx
push edi
call fcn.004a0bf0
mov dword [edi], eax
jmp 0x4a54ed
push dword [esi - 0xc]
mov edx, dword [esi + 4]
mov ecx, ebx
call fcn.00461c40
add esp, 4
jmp case.0x4a0edd.198
xor edx, edx
mov ecx, ebx
call fcn.0048e980
jmp case.0x4a0edd.198
lea edx, [esi + 4]
mov ecx, ebx
call fcn.0048e980
jmp case.0x4a0edd.198
push 0
lea eax, [esi + 4]
mov ecx, ebx
push 0
push eax
lea edx, [esi - 0xc]
call fcn.00474a80
jmp 0x4a54ed
push 0
lea eax, [esi + 4]
mov ecx, ebx
push eax
lea eax, [esi - 0x1c]
lea edx, [esi - 0x2c]
push eax
call fcn.00474a80
jmp 0x4a54ed
push 0
lea eax, [esi - 0xc]
mov ecx, ebx
push eax
lea eax, [esi - 0x2c]
lea edx, [esi - 0x3c]
push eax
call fcn.00474a80
jmp 0x4a54ed
push 1
jmp 0x4a4cc2
push 1
lea eax, [esi - 0xc]
mov ecx, ebx
push eax
lea eax, [esi - 0x2c]
lea edx, [esi - 0x3c]
push eax
call fcn.00474a80
jmp 0x4a54ed
mov eax, dword [esi + 8]
mov ecx, dword [esi - 0x2c]
add eax, dword [esi + 4]
mov edx, dword [esi - 0xc]
sub eax, ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x20]
mov dword [esp + 0x20], ecx
mov ecx, ebx
push eax
call fcn.0048a910
add esp, 4
jmp case.0x4a0edd.198
push dword [esi - 0x7c]
lea edi, [esi - 0x5c]
mov ecx, ebx
push dword [esi - 0x9c]
lea edx, [esi - 0x6c]
push dword [esi + 4]
push dword [esi - 0x1c]
push dword [esi - 0x38]
push dword [esi - 0x3c]
push dword [esi - 0x4c]
push edi
call fcn.0048a230
add esp, 0x20
cmp dword [esi - 0x58], 0
jne 0x4a4d7f
mov eax, dword [esi - 0x6c]
mov ecx, dword [esi - 0x68]
mov dword [esi - 0x9c], eax
mov dword [esi - 0x98], ecx
jmp case.0x4a0edd.198
mov eax, dword [edi]
mov ecx, dword [edi + 4]
mov dword [esi - 0x9c], eax
mov dword [esi - 0x98], ecx
jmp case.0x4a0edd.198
mov dword [esi - 0xc], 0x40
jmp case.0x4a0edd.198
mov dword [esi + 0x14], 0x21
jmp case.0x4a0edd.198
movzx eax, byte [esi + 2]
mov dword [esi + 4], eax
mov dword [esi + 8], 0
jmp case.0x4a0edd.198
mov dword [esi - 0x1c], 0x6e
mov eax, dword [esi + 4]
mov dword [esi - 0x18], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x1c]
mov ecx, dword [eax + 0x20]
mov eax, dword [esi - 0xc]
mov dword [ecx + 0x1c], eax
mov ecx, dword [esi - 0x1c]
mov eax, dword [esi - 0xc]
mov dword [ecx + 0x20], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0xc]
mov dword [eax + 0x20], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
push str.qualified_table_names_are_not_allowed_on_INSERT__UPDATE__and_DELETE_statements_within_triggers
mov dword [esi - 0x1c], eax
push ebx
mov dword [esi - 0x18], ecx
call fcn.00413380
add esp, 8
jmp case.0x4a0edd.198
push str.the_INDEXED_BY_clause_is_not_allowed_on_UPDATE_or_DELETE_statements_within_triggers
push ebx
call fcn.00413380
add esp, 8
jmp case.0x4a0edd.198
push str.the_NOT_INDEXED_clause_is_not_allowed_on_UPDATE_or_DELETE_statements_within_triggers
push ebx
call fcn.00413380
add esp, 8
jmp case.0x4a0edd.198
mov al, byte [esi - 0x4c]
mov dl, 0x6e
mov ebx, dword [ebx]
mov ecx, ebx
mov byte [esp + 0x17], al
mov eax, dword [esi + 4]
mov dword [esp + 0x30], eax
mov eax, dword [esi - 0xc]
mov dword [esp + 0x10], eax
lea eax, [esi - 0x3c]
push eax
call fcn.0048ad90
mov edi, eax
add esp, 4
test edi, edi
je 0x4a4ea2
mov edx, dword [esp + 0x10]
mov ecx, ebx
push 1
call fcn.0044ccf0
mov dword [edi + 0x14], eax
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a4e96
push 0
push 1
mov edx, eax
mov ecx, ebx
call fcn.0044ca30
add esp, 8
jmp 0x4a4e98
xor eax, eax
mov dword [edi + 0x10], eax
mov al, byte [esp + 0x17]
mov byte [edi + 1], al
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4a4eb3
mov edx, eax
mov ecx, ebx
call fcn.0044d9a0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a4ec4
mov edx, eax
mov ecx, ebx
call fcn.0044c7a0
mov dword [esi - 0x5c], edi
jmp case.0x4a0edd.198
mov al, byte [esi - 0x3c]
mov dl, 0x6c
mov ebx, dword [ebx]
mov ecx, ebx
mov byte [esp + 0x17], al
mov eax, dword [esi + 4]
mov dword [esp + 0x30], eax
mov eax, dword [esi - 0xc]
mov dword [esp + 0x10], eax
lea eax, [esi - 0x1c]
push eax
call fcn.0048ad90
mov edi, eax
add esp, 4
mov ecx, ebx
test edi, edi
je 0x4a4f1c
mov edx, dword [esp + 0x30]
push 1
call fcn.0044d2e0
mov edx, dword [esp + 0x14]
add esp, 4
mov dword [edi + 8], eax
mov al, byte [esp + 0x17]
mov dword [edi + 0x18], edx
mov byte [edi + 1], al
jmp 0x4a4f25
mov edx, dword [esp + 0x10]
call fcn.004620a0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4a4f3b
push 1
mov edx, eax
mov ecx, ebx
call fcn.0047b970
add esp, 4
mov dword [esi - 0x3c], edi
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
lea eax, [esi - 0x1c]
mov edi, dword [esi + 4]
mov dl, 0x6d
push eax
mov dword [esp + 0x14], ecx
call fcn.0048ad90
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4a4f81
test edi, edi
je 0x4a4f78
mov ecx, dword [esp + 0x10]
mov edx, edi
push 0
push 1
call fcn.0044ca30
add esp, 8
jmp 0x4a4f7a
xor eax, eax
mov dword [ebx + 0x10], eax
mov byte [ebx + 1], 0xa
test edi, edi
je 0x4a4f90
mov ecx, dword [esp + 0x10]
mov edx, edi
call fcn.0044c7a0
mov dword [esi - 0x3c], ebx
jmp case.0x4a0edd.198
mov ebx, dword [ebx]
mov edi, dword [esi + 4]
push 0
push 0x24
test ebx, ebx
je 0x4a4fae
mov ecx, ebx
call fcn.00410430
jmp 0x4a4fb3
call fcn.0040fd60
add esp, 8
test eax, eax
je 0x4a4fdb
xorps xmm0, xmm0
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
mov dword [eax + 0x20], 0
mov word [eax], 0xa77
mov dword [eax + 8], edi
mov dword [esi + 4], eax
jmp case.0x4a0edd.198
test edi, edi
je 0x4a4fed
push 1
mov edx, edi
mov ecx, ebx
call fcn.0047b970
add esp, 4
xor eax, eax
mov dword [esi + 4], eax
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x2c]
mov dword [esi - 0x28], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x24], eax
mov ecx, dword [ebx]
push 0
push 0x30
call fcn.00410430
mov edi, eax
add esp, 8
test edi, edi
je 0x4a505d
push 0x30
push 0
push edi
call fcn.004ad600
add esp, 0xc
mov byte [edi], 0x46
or eax, 0xffffffff
mov ecx, edi
mov word [edi + 0x22], ax
call fcn.0044bef0
mov eax, dword [ebx]
mov eax, dword [eax + 0x70]
cmp dword [edi + 0x18], eax
jle 0x4a505d
push eax
push str.Expression_tree_is_too_large__maximum_depth__d_
push ebx
call fcn.00413380
mov dword [esi - 0x2c], edi
add esp, 0xc
mov byte [edi + 1], 4
jmp case.0x4a0edd.198
mov dword [esi - 0x2c], edi
test edi, edi
je case.0x4a0edd.198
mov byte [edi + 1], 4
jmp case.0x4a0edd.198
mov eax, dword [esi - 0x4c]
mov edx, 0x46
mov dword [esi - 0x48], eax
mov eax, dword [esi + 8]
add eax, dword [esi + 4]
mov dword [esi - 0x44], eax
lea eax, [esi - 0xc]
mov ecx, dword [ebx]
push 1
push eax
call fcn.0044c010
add esp, 8
mov dword [esi - 0x4c], eax
test eax, eax
je case.0x4a0edd.198
mov cl, byte [esi - 0x2c]
mov byte [eax + 1], cl
jmp case.0x4a0edd.198
mov dword [esi + 4], 1
jmp case.0x4a0edd.198
mov dword [esi + 4], 3
jmp case.0x4a0edd.198
push dword [esi - 0xc]
mov edx, dword [esi + 4]
mov ecx, ebx
call fcn.0048b080
add esp, 4
jmp case.0x4a0edd.198
push dword [esi + 4]
mov eax, dword [esi - 0x2c]
mov edx, 0x18
push dword [esi - 0xc]
mov ecx, ebx
push eax
push eax
push 0x4ce9c8
call fcn.00459be0
add esp, 0x14
jmp case.0x4a0edd.198
mov eax, dword [esi + 4]
mov edx, 0x19
push eax
push 0
push 0
push eax
push 0x4cde84
mov ecx, ebx
call fcn.00459be0
add esp, 0x14
jmp case.0x4a0edd.198
mov ecx, dword [ebx]
cmp byte [ecx + 0x9d], 0
jne 0x4a5140
lea edx, [ebx + 4]
call fcn.0047aab0
test eax, eax
je 0x4a5140
mov dword [ebx + 0xc], eax
inc dword [ebx + 0x24]
jmp case.0x4a0edd.198
xor edx, edx
mov ecx, ebx
call fcn.004636d0
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov ecx, ebx
push eax
lea edx, [esi - 0xc]
call fcn.00463750
add esp, 4
jmp case.0x4a0edd.198
push 0
xor edx, edx
mov ecx, ebx
call fcn.00458b30
add esp, 4
jmp case.0x4a0edd.198
lea eax, [esi + 4]
mov ecx, ebx
push eax
lea edx, [esi - 0xc]
call fcn.00458b30
add esp, 4
jmp case.0x4a0edd.198
mov edx, dword [esi - 0x2c]
lea eax, [esi + 4]
push eax
mov ecx, ebx
call fcn.00455ec0
add esp, 4
jmp case.0x4a0edd.198
mov eax, dword [ebx + 0x188]
lea edx, [esi - 0xc]
add eax, dword [ebx + 0x184]
mov ecx, ebx
sub eax, dword [edx]
mov dword [esi - 8], eax
call fcn.00456740
jmp case.0x4a0edd.198
inc byte [ebx + 0x18]
mov ecx, ebx
mov eax, dword [ebx]
inc dword [eax + 0x108]
mov edx, dword [esi + 4]
call fcn.00456da0
jmp case.0x4a0edd.198
xor edx, edx
mov ecx, ebx
call fcn.0048fa40
jmp case.0x4a0edd.198
lea edx, [esi + 4]
mov ecx, ebx
call fcn.0048fa40
jmp case.0x4a0edd.198
push dword [esi - 0x3c]
lea eax, [esi - 0x1c]
mov ecx, ebx
push 1
push 0
push 0
push eax
lea edx, [esi - 0x2c]
call fcn.0045bfd0
mov ecx, dword [ebx + 0x1b0]
add esp, 0x14
mov dword [esp + 0x2c], ecx
test ecx, ecx
je case.0x4a0edd.198
mov ecx, dword [ecx + 0x48]
mov edi, 0xfff0bdc0
mov eax, dword [ebx]
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], edi
test ecx, ecx
je 0x4a5260
mov edx, dword [eax + 0x14]
xor edi, edi
mov dword [esp + 0x18], edi
test edx, edx
jle 0x4a5260
mov eax, dword [eax + 0x10]
add eax, 0xc
nop
cmp dword [eax], ecx
je 0x4a525c
inc edi
add eax, 0x10
cmp edi, edx
jl 0x4a5250
mov dword [esp + 0x18], edi
lea ecx, [esi + 4]
test ecx, ecx
je 0x4a5324
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [esp + 0x10], eax
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x4a5324
mov ecx, eax
xor eax, eax
add ecx, 1
adc eax, eax
push eax
push ecx
mov ecx, dword [esp + 0x14]
call fcn.00410430
mov edx, eax
add esp, 8
mov dword [esp + 0x34], edx
test edx, edx
je 0x4a5326
push dword [esp + 0x10]
push dword [esp + 0x24]
push edx
call fcn.004ae080
mov edx, dword [esp + 0x40]
add esp, 0xc
mov eax, dword [esp + 0x10]
mov byte [eax + edx], 0
test edx, edx
je 0x4a5326
mov cl, byte [edx]
movzx eax, cl
cmp byte [eax + 0x4cea18], 0
jge 0x4a5326
cmp cl, 0x5b
movzx eax, cl
mov esi, 0x5d
lea ecx, [edx + 1]
cmove eax, esi
xor esi, esi
mov dword [esp + 0x20], eax
mov ebx, eax
nop dword [eax]
mov al, byte [ecx]
lea edi, [esi + edx]
mov dword [esp + 0x20], edi
cmp al, bl
jne 0x4a5308
lea eax, [ecx + 1]
mov ecx, eax
cmp byte [eax], bl
jne 0x4a530f
mov al, bl
mov byte [esi + edx], al
inc ecx
inc esi
jmp 0x4a52f0
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x38]
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov byte [eax], 0
jmp 0x4a5326
xor edx, edx
mov ecx, dword [esp + 0xc]
push edx
mov edx, dword [esp + 0x30]
call fcn.0048f860
mov edx, dword [esp + 0x30]
add esp, 4
mov ecx, dword [esp + 0xc]
push 0
call fcn.0048f860
mov eax, dword [esp + 0x30]
add esp, 4
mov eax, dword [eax]
mov dword [esp + 0x34], eax
test eax, eax
je 0x4a53a7
mov ecx, eax
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a5360
mov eax, dword [esp + 0xc]
sub ecx, edx
inc ecx
mov dword [esp + 0x20], ecx
push 0
push ecx
test eax, eax
je 0x4a5382
mov ecx, eax
call fcn.00410430
jmp 0x4a5387
call fcn.0040fd60
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
je 0x4a53a7
push dword [esp + 0x20]
push dword [esp + 0x38]
push eax
call fcn.004ae080
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0xc]
push eax
call fcn.0048f860
mov eax, dword [esi + 8]
add esp, 4
sub eax, dword [ebx + 0x17c]
mov edx, dword [esp + 0x2c]
add eax, dword [esi + 4]
mov dword [ebx + 0x180], eax
cmp dword [edx + 0x3c], 0
je case.0x4a0edd.198
mov ecx, dword [ebx]
add edi, edi
cmp byte [ecx + 0x9d], 0
mov eax, dword [ecx + 0x10]
mov edi, dword [eax + edi*8]
mov eax, dword [edx + 0x3c]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
jne case.0x4a0edd.198
cmp byte [ebx + 0x190], 0
jne case.0x4a0edd.198
mov eax, dword [ecx + 0x130]
test eax, eax
je case.0x4a0edd.198
push dword [ebx + 0x1b8]
push edi
push dword [esp + 0x28]
push dword [edx]
push 0x1d
push dword [ecx + 0x134]
call eax
add esp, 0x18
cmp eax, 1
jne 0x4a544c
push str.not_authorized
push ebx
call fcn.00413380
add esp, 8
mov dword [ebx + 0xc], 0x17
jmp case.0x4a0edd.198
test eax, eax
je case.0x4a0edd.198
cmp eax, 2
je case.0x4a0edd.198
push str.authorizer_malfunction
push ebx
call fcn.00413380
add esp, 8
mov dword [ebx + 0xc], 1
jmp case.0x4a0edd.198
mov ecx, ebx
call fcn.0048f9d0
mov dword [ebx + 0x1bc], 0
mov dword [ebx + 0x1c0], 0
jmp case.0x4a0edd.198
mov ecx, dword [ebx + 0x1bc]
test ecx, ecx
jne 0x4a54af
mov eax, dword [esi + 4]
mov dword [ebx + 0x1bc], eax
mov eax, dword [esi + 8]
mov dword [ebx + 0x1c0], eax
jmp case.0x4a0edd.198
mov eax, dword [esi + 8]
sub eax, ecx
add eax, dword [esi + 4]
mov dword [ebx + 0x1c0], eax
jmp case.0x4a0edd.198
push dword [esi - 0xc]
lea edi, [esi - 0x4c]
xor edx, edx
push dword [esi - 0x3c]
mov ecx, ebx
push edi
call fcn.00463c80
mov dword [edi], eax
jmp 0x4a54ed
push dword [esi - 0xc]
mov edx, dword [esi - 0x6c]
lea eax, [esi - 0x4c]
push dword [esi - 0x3c]
mov ecx, ebx
push eax
call fcn.00463c80
mov dword [esi - 0x6c], eax
add esp, 0xc
mov eax, dword [esp + 0x44]
mov edi, 0x52b
movsx edx, byte [eax*2 + 0x4ce279]
mov bl, byte [eax*2 + 0x4ce278]
shl edx, 4
movzx eax, word [edx + esi]
movsx ecx, word [eax*2 + 0x4cebc8]
movzx eax, bl
add ecx, eax
movzx eax, word [ecx*2 + 0x4cf778]
cmp ax, di
mov ecx, eax
mov edi, dword [esp + 0x3c]
jne 0x4a554c
add dword [edi], edx
mov eax, dword [edi + 4]
mov dword [edi + 4], eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x138]
xor ecx, esp
call fcn.004ac4d4
mov esp, ebp
pop ebp
ret
lea eax, [edx + 0x10]
add eax, esi
mov dword [edi], eax
pop edi
pop esi
mov word [eax], cx
mov ecx, dword [esp + 0x13c]
mov byte [eax + 2], bl
pop ebx
xor ecx, esp
call fcn.004ac4d4
mov esp, ebp
pop ebp
ret