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

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov r15, qword [rcx]
mov rax, qword [r8]
mov rbp, qword [rdx + 0x50]
xor r14d, r14d
mov rsi, rcx
lea rcx, [rsp + 0x48]
mov qword [rcx], rax
mov rax, qword [r8 + 8]
mov r12, rdx
mov qword [rcx + 8], rax
mov rax, qword [r8 + 0x10]
mov rdi, r8
mov qword [rcx + 0x10], rax
mov rax, qword [r8 + 0x18]
mov dword [rsp + 0x100], r14d
mov qword [rcx + 0x18], rax
mov rdx, qword [rbp + 0x48]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x118], r15
test rdx, rdx
jne 0x1400d9168
cmp qword [rbp + 0x60], r14
jne 0x1400d9168
mov rbx, qword [rsi + 0x10]
test rbx, rbx
jne 0x1400d85b2
cmp qword [rsi + 0xa0], r14
jne 0x1400d85a7
test byte [r15 + 0x5c], 8
jne 0x1400d85a7
mov byte [rsi + 0x23], 1
mov rcx, rsi
call fcn.140087850
mov rbx, rax
movzx edx, byte [rsp + 0x48]
cmp dl, 0xc
jne 0x1400d8627
mov rax, qword [r12]
movsxd rcx, dword [rbx + 0xb8]
mov r8d, dword [rsp + 0x4c]
mov edx, dword [rax]
mov rax, qword [rbx + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x1400d85ee
mov r9d, edx
mov rcx, rbx
mov edx, WSACleanup
mov dword [rsp + 0x20], r14d
call fcn.140087c10
jmp 0x1400d8621
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], WSACleanup
mov word [rax + rcx*8 + 2], r14w
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], r14b
mov dl, 0xe
mov byte [rsp + 0x48], dl
mov eax, dword [r12 + 0xc]
bt eax, 0xa
jae 0x1400d864a
lea r8, [rsp + 0x48]
mov rdx, r12
mov rcx, rsi
call fcn.1400d8430
mov r15d, eax
jmp 0x1400d911b
bt eax, 0xd
jae 0x1400d8665
lea r8, [rsp + 0x48]
mov rdx, r12
mov rcx, rsi
call fcn.1400d7bc0
jmp 0x1400d8feb
cmp qword [r12 + 0x48], r14
je 0x1400d867f
mov r8, rdi
mov rdx, r12
mov rcx, rsi
call fcn.1400d9930
jmp 0x1400d9154
cmp qword [rbp + 0x50], r14
jne 0x1400d86b1
lea r8, str.COMPOUND_QUERY
mov edx, 1
mov rcx, rsi
call fcn.140088140
lea r8, str.LEFT_MOST_SUBQUERY
mov edx, 1
mov rcx, rsi
call fcn.140088140
mov dl, byte [rsp + 0x48]
movzx ecx, byte [r12 + 8]
sub ecx, 0x7b
je 0x1400d8c78
sub ecx, 1
je 0x1400d8b43
cmp ecx, 1
je 0x1400d8c78
mov r13d, dword [rsi + 0x34]
xor edi, edi
lea r14d, [r13 + 1]
lea eax, [r14 + 1]
mov dword [rsi + 0x34], eax
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400d870c
lea edx, [rdi + 0x71]
xor r9d, r9d
mov r8d, r13d
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140087c10
mov edx, eax
jmp 0x1400d873d
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], WSACleanup
mov word [rax + rcx*8 + 2], di
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], dil
mov dword [r12 + 0x1c], edx
mov rax, qword [r12 + 0x58]
mov rcx, r12
test rax, rax
je 0x1400d875c
nop
mov rcx, rax
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x1400d8750
or dword [rcx + 0xc], 0x20
lea r8, [rsp + 0x68]
mov rdx, rbp
mov rcx, rsi
mov byte [rsp + 0x68], 1
mov dword [rsp + 0x6c], r13d
mov qword [rsp + 0x78], rdi
mov dword [rsp + 0x70], edi
mov dword [rsp + 0x74], edi
call fcn.1400de5c0
mov r15d, eax
test eax, eax
jne 0x1400d911b
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400d87bc
lea edx, [r15 + 0x71]
xor r9d, r9d
mov r8d, r14d
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140087c10
mov edx, eax
jmp 0x1400d87ed
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], WSACleanup
mov word [rax + rcx*8 + 2], di
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], 0
movzx ecx, byte [r12 + 8]
mov dword [r12 + 0x20], edx
xor edx, edx
mov qword [r12 + 0x50], rdi
mov rdi, qword [r12 + 0x60]
mov dword [rsp + 0x6c], r14d
mov qword [r12 + 0x60], rdx
call fcn.1400d5fc0
lea r8, str._s_USING_TEMP_B_TREE
mov edx, 1
mov rcx, rsi
mov r9, rax
call fcn.140088140
lea r8, [rsp + 0x68]
mov rdx, r12
mov rcx, rsi
call fcn.1400de5c0
mov rcx, qword [r12 + 0x50]
mov qword [r12 + 0x50], rbp
mov dword [rsp + 0x100], eax
movzx eax, word [rbp + 0xa]
mov qword [rsp + 0x40], rcx
cmp word [r12 + 0xa], ax
jle 0x1400d8862
mov word [r12 + 0xa], ax
mov rdx, qword [r12 + 0x60]
test rdx, rdx
je 0x1400d8879
mov rcx, qword [rsp + 0x118]
call fcn.1400a2900
mov rcx, rbx
mov qword [r12 + 0x60], rdi
call fcn.140088490
mov rcx, rbx
movsxd r14, eax
call fcn.140088490
mov r8d, r14d
mov rdx, r12
mov rcx, rsi
movsxd r15, eax
call fcn.1400d77a0
mov rcx, qword [rbx + 0x18]
movsxd r11, dword [rbx + 0xb8]
cmp dword [rcx + 0x3c], r11d
jg 0x1400d88ce
xor eax, eax
mov r9d, r14d
mov r8d, r13d
lea edx, [rax + 0x24]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.140087c10
xor edx, edx
jmp 0x1400d8902
lea rcx, [r11 + r11*2]
xor edx, edx
lea eax, [r11 + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], 0x24
mov word [rax + rcx*8 + 2], dx
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov byte [rax + rcx*8 + 1], dl
movzx eax, byte [rsi + 0x1f]
test al, al
jne 0x1400d8912
inc dword [rsi + 0x38]
mov edi, dword [rsi + 0x38]
jmp 0x1400d8921
dec al
movzx eax, al
mov byte [rsi + 0x1f], al
mov edi, dword [rsi + rax*4 + 0xc4]
mov rax, qword [rbx + 0x18]
movsxd rbp, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ebp
jg 0x1400d894c
mov dword [rsp + 0x20], edx
mov r9d, edi
mov r8d, r13d
mov edx, 0x80
mov rcx, rbx
call fcn.140087c10
mov ebp, eax
jmp 0x1400d897e
lea rcx, [rbp + rbp*2]
lea eax, [rbp + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], 0x80
mov word [rax + rcx*8 + 2], dx
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov byte [rax + rcx*8 + 1], 0
lea r8d, [r13 + 1]
mov r9d, r15d
mov edx, 0x1c
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140087c80
mov rcx, qword [rbx]
cmp byte [rcx + 0x61], 0
jne 0x1400d89b4
cdqe
xor edx, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], edx
test edi, edi
je 0x1400d89cd
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x1400d89cd
movzx eax, al
mov dword [rsi + rax*4 + 0xc4], edi
inc byte [rsi + 0x1f]
mov dword [rsp + 0x38], r14d
lea rax, [rsp + 0x48]
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rax
xor edi, edi
xor r9d, r9d
mov r8d, r13d
mov rdx, r12
mov rcx, rsi
mov qword [rsp + 0x20], rdi
call fcn.1400d4de0
mov r11, qword [rbx + 0x18]
mov rcx, qword [r11 + 0x50]
test rcx, rcx
je 0x1400d8a19
lea rax, [r15*4 + 4]
sub rcx, rax
mov eax, dword [rbx + 0xb8]
mov dword [rcx], eax
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d8a42
mov r9d, ebp
mov r8d, r13d
mov edx, 5
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140087c10
jmp 0x1400d8a73
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], 5
mov word [rax + rcx*8 + 2], di
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], dil
mov rax, qword [rbx + 0x18]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400d8a93
lea rax, [r14*4 + 4]
sub rcx, rax
mov eax, dword [rbx + 0xb8]
mov dword [rcx], eax
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
xor r14d, r14d
cmp dword [rax + 0x3c], ecx
jg 0x1400d8ac0
lea r8d, [r13 + 1]
lea edx, [r14 + 0x75]
xor r9d, r9d
mov rcx, rbx
mov dword [rsp + 0x20], r14d
call fcn.140087c10
jmp 0x1400d8af7
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
lea edx, [r13 + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], 0x75
mov word [rax + rcx*8 + 2], r14w
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], dil
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d8b23
xor r9d, r9d
mov r8d, r13d
mov rcx, rbx
lea edx, [r9 + 0x75]
mov dword [rsp + 0x20], r14d
call fcn.140087c10
jmp 0x1400d8fd3
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8 + 4], r13d
mov byte [rax + rcx*8 + 1], dil
jmp 0x1400d8fba
mov eax, dword [r12 + 0x10]
lea r8, [rsp + 0x48]
mov rdx, rbp
mov dword [rbp + 0x10], eax
mov eax, dword [r12 + 0x14]
mov rcx, rsi
mov dword [rbp + 0x14], eax
mov rax, qword [r12 + 0x60]
mov edi, r14d
mov qword [rbp + 0x60], rax
call fcn.1400de5c0
mov qword [r12 + 0x60], r14
mov r15d, eax
test eax, eax
jne 0x1400d911b
mov qword [r12 + 0x50], r14
mov r8d, dword [rbp + 0x10]
mov dword [r12 + 0x10], r8d
mov eax, dword [rbp + 0x14]
mov dword [r12 + 0x14], eax
test r8d, r8d
je 0x1400d8bcb
lea edx, [r15 + 0x14]
mov rcx, rbx
call fcn.140087d80
mov ecx, dword [r12 + 0x14]
mov edi, eax
test ecx, ecx
je 0x1400d8bcb
mov r8d, dword [r12 + 0x10]
lea r9d, [rcx + 1]
mov dword [rsp + 0x20], ecx
mov edx, 0x99
mov rcx, rbx
call fcn.140087c80
lea r8, str.UNION_ALL
mov edx, 1
mov rcx, rsi
call fcn.140088140
lea r8, [rsp + 0x48]
mov rdx, r12
mov rcx, rsi
call fcn.1400de5c0
mov r11, qword [r12 + 0x50]
movzx ecx, word [r12 + 0xa]
mov qword [r12 + 0x50], rbp
movzx edx, word [rbp + 0xa]
mov dword [rsp + 0x100], eax
mov qword [rsp + 0x40], r11
call fcn.1400678d0
mov word [r12 + 0xa], ax
mov rcx, qword [rbp + 0x60]
movzx r10d, ax
test rcx, rcx
je 0x1400d8c61
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1400d8c61
lea rdx, [rsp + 0x108]
call fcn.1400a4040
test eax, eax
je 0x1400d8c61
movsxd rax, dword [rsp + 0x108]
test eax, eax
jle 0x1400d8c61
mov rcx, rax
call fcn.140067950
cmp r10w, ax
jle 0x1400d8c61
mov word [r12 + 0xa], ax
test edi, edi
je 0x1400d8fd3
mov edx, edi
mov rcx, rbx
call fcn.140088760
jmp 0x1400d8fd3
cmp dl, 1
jne 0x1400d8c86
mov edi, dword [rsp + 0x4c]
jmp 0x1400d8d10
mov edi, dword [rsi + 0x34]
lea eax, [rdi + 1]
mov dword [rsi + 0x34], eax
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400d8cba
xor r9d, r9d
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x71]
mov dword [rsp + 0x20], r14d
call fcn.140087c10
mov edx, eax
jmp 0x1400d8ced
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], WSACleanup
mov word [rax + rcx*8 + 2], r14w
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], r14b
mov dword [r12 + 0x1c], edx
mov rax, qword [r12 + 0x58]
mov rcx, r12
test rax, rax
je 0x1400d8d0c
nop
mov rcx, rax
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x1400d8d00
or dword [rcx + 0xc], 0x20
lea r8, [rsp + 0x88]
mov rdx, rbp
mov rcx, rsi
mov byte [rsp + 0x88], 1
mov dword [rsp + 0x8c], edi
mov qword [rsp + 0x98], r14
mov dword [rsp + 0x90], r14d
mov dword [rsp + 0x94], r14d
call fcn.1400de5c0
mov r15d, eax
test eax, eax
jne 0x1400d911b
movzx ecx, byte [r12 + 8]
mov r13, qword [r12 + 0x60]
mov qword [r12 + 0x50], r14
cmp cl, 0x7d
mov qword [r12 + 0x60], r14
sete al
inc al
mov byte [rsp + 0x88], al
call fcn.1400d5fc0
lea r8, str._s_USING_TEMP_B_TREE
lea edx, [r15 + 1]
mov rcx, rsi
mov r9, rax
call fcn.140088140
lea r8, [rsp + 0x88]
mov rdx, r12
mov rcx, rsi
call fcn.1400de5c0
mov rdx, qword [r12 + 0x48]
mov r14, qword [rsp + 0x118]
mov dword [rsp + 0x100], eax
test rdx, rdx
je 0x1400d8dc8
mov rcx, r14
call fcn.1400a3a20
mov rcx, qword [r12 + 0x50]
xor r15d, r15d
cmp byte [r12 + 8], 0x7b
mov qword [r12 + 0x50], rbp
mov qword [r12 + 0x48], r15
mov qword [rsp + 0x40], rcx
jne 0x1400d8dfc
movzx edx, word [rbp + 0xa]
movzx ecx, word [r12 + 0xa]
call fcn.1400678d0
mov word [r12 + 0xa], ax
mov rdx, qword [r12 + 0x60]
test rdx, rdx
je 0x1400d8e0e
mov rcx, r14
call fcn.1400a2900
cmp byte [rsp + 0x48], 1
mov qword [r12 + 0x60], r13
mov dword [r12 + 0x10], r15d
mov dword [r12 + 0x14], r15d
je 0x1400d8fd3
mov rcx, rbx
call fcn.140088490
mov rcx, rbx
movsxd rbp, eax
call fcn.140088490
mov r8d, ebp
mov rdx, r12
mov rcx, rsi
movsxd r14, eax
call fcn.1400d77a0
mov rcx, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
cmp dword [rcx + 0x3c], edx
jg 0x1400d8e76
mov r9d, ebp
mov r8d, edi
mov edx, 0x24
mov rcx, rbx
mov dword [rsp + 0x20], r15d
call fcn.140087c10
jmp 0x1400d8ea8
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], 0x24
mov word [rax + rcx*8 + 2], r15w
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r15
mov byte [rax + rcx*8 + 1], r15b
mov r13d, dword [rbx + 0xb8]
mov dword [rsp + 0x38], ebp
lea rax, [rsp + 0x48]
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov r8d, edi
mov rdx, r12
mov rcx, rsi
mov qword [rsp + 0x20], r15
call fcn.1400d4de0
mov r11, qword [rbx + 0x18]
mov rcx, qword [r11 + 0x50]
test rcx, rcx
je 0x1400d8ef8
lea rax, [r14*4 + 4]
sub rcx, rax
mov eax, dword [rbx + 0xb8]
mov dword [rcx], eax
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
xor r14d, r14d
cmp dword [rax + 0x3c], ecx
jg 0x1400d8f24
lea edx, [r14 + 5]
mov r9d, r13d
mov r8d, edi
mov rcx, rbx
mov dword [rsp + 0x20], r14d
call fcn.140087c10
jmp 0x1400d8f57
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], 5
mov word [rax + rcx*8 + 2], r14w
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov byte [rax + rcx*8 + 1], r14b
mov rax, qword [rbx + 0x18]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400d8f77
lea rax, [rbp*4 + 4]
sub rcx, rax
mov eax, dword [rbx + 0xb8]
mov dword [rcx], eax
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d8fa0
xor r9d, r9d
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x75]
mov dword [rsp + 0x20], r14d
call fcn.140087c10
jmp 0x1400d8fd3
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8 + 4], edi
mov byte [rax + rcx*8 + 1], r15b
mov qword [rax + rcx*8 + 0x10], r14
mov dword [rax + rcx*8 + 0xc], r14d
mov dword [rax + rcx*8 + 8], r14d
mov word [rax + rcx*8 + 2], r14w
mov byte [rax + rcx*8], 0x75
cmp qword [r12 + 0x58], 0
jne 0x1400d8fe3
mov rcx, rsi
call fcn.140088280
mov r15, qword [rsp + 0x118]
test byte [r12 + 0xc], 0x20
je 0x1400d9113
mov rax, qword [r12]
mov r8d, 1
mov rcx, r15
mov r14d, dword [rax]
mov edx, r14d
call fcn.1400d5dd0
mov rdi, rax
test rax, rax
jne 0x1400d9020
lea r15d, [rax + 7]
jmp 0x1400d911b
xor eax, eax
lea rbp, [rdi + 0x20]
mov r13d, eax
test r14d, r14d
jle 0x1400d905d
nop
mov r8d, r13d
mov rdx, r12
mov rcx, rsi
call fcn.1400d7a10
mov qword [rbp], rax
test rax, rax
jne 0x1400d904f
mov rax, qword [r15 + 0x10]
mov qword [rbp], rax
inc r13d
add rbp, 8
cmp r13d, r14d
jl 0x1400d9030
xor eax, eax
lea r13, [0x14018a908]
nop word [rax + rax]
mov rbp, rax
lea rsi, [r12 + 0x1c]
movsxd rdx, dword [rsi]
test edx, edx
js 0x1400d90f8
mov rax, qword [rbx]
cmp byte [rax + 0x61], 0
je 0x1400d908d
mov rax, r13
jmp 0x1400d9099
mov rax, qword [rbx + 0x68]
lea rcx, [rdx + rdx*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], r14d
inc dword [rdi]
mov rcx, qword [rbx]
cmp byte [rcx + 0x61], 0
je 0x1400d90b7
mov r8, rdi
mov edx, 0xfffffff7
call fcn.1400889a0
jmp 0x1400d90e5
mov rax, qword [rbx + 0x68]
lea rcx, [rdx + rdx*2]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400d90dd
mov r9d, 0xfffffff7
mov r8, rdi
mov rcx, rbx
call fcn.140088ba0
jmp 0x1400d90e5
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf7
inc rbp
mov dword [rsi], 0xffffffff
add rsi, 4
cmp rbp, 2
jl 0x1400d9078
mov r12, qword [r12 + 0x50]
mov eax, 0
test r12, r12
jne 0x1400d9070
mov rcx, rdi
call fcn.1400d5e90
mov r15d, dword [rsp + 0x100]
mov eax, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x110]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0x54]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1400d9151
mov rcx, qword [rsp + 0x118]
mov r8d, 1
mov rdx, rax
call fcn.1400d3930
mov eax, r15d
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
movzx ecx, byte [r12 + 8]
sub ecx, 0x7c
je 0x1400d9198
sub ecx, 1
je 0x1400d918f
cmp ecx, 1
je 0x1400d9186
lea r9, str.UNION
jmp 0x1400d919f
lea r9, str.INTERSECT
jmp 0x1400d919f
lea r9, str.EXCEPT
jmp 0x1400d919f
lea r9, str.UNION_ALL
test rdx, rdx
lea rax, str.ORDER_BY
lea r8, str.LIMIT
lea rdx, str._s_clause_should_come_after__s_not_before
mov rcx, rsi
cmovne r8, rax
call fcn.1400668e0
mov r15d, 1
jmp 0x1400d911b