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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x178
mov al, byte [rdx]
mov r15, qword [rcx + 0x28]
cmp al, 0x4b
mov qword [rsp + 0x1c0], rcx
mov rbx, rdx
mov r14, qword [r15]
je 0x1401dd097
ja 0x1401dd063
cmp al, 0x14
je case.0x1401dd061.4
sub eax, 0x2d
cmp al, 0xe
ja case.0x1401dd061.1
lea rdx, [0x14031abd0]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp al, 0x9c
je 0x1401de45e
ja 0x1401dd082
cmp al, 0x8a
je case.0x1401dd061.4
cmp al, 0x8d
je 0x1401dd19c
jmp case.0x1401dd061.1
cmp al, 0xab
je case.0x1401dd061.0
cmp al, 0xac
je 0x1401ddd82
jmp case.0x1401dd061.1
mov rax, qword [r15 + 8]
mov rdx, qword [rax + 0x28]
mov eax, dword [rax + 0x4c]
mov word [rbx], 0x44a7
dec word [rbx + 0x30]
mov qword [rbx + 0x40], rdx
mov dword [rbx + 0x2c], eax
jmp case.0x1401dd061.1
lea rsi, [rsp + 0xb0]
mov rdx, r15
mov eax, 1
mov ecx, dword [rdx + 0x20]
mov rdx, qword [rdx + 0x18]
mov dword [rsi + rax*4 - 4], ecx
test rdx, rdx
setne r8b
cmp eax, 7
setle cl
inc rax
test r8b, cl
jne 0x1401dd0c7
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rsp + 0x1c0]
call fcn.1402177c0
mov r9, qword [rbx + 0x10]
mov rcx, r9
call fcn.1401ee520
test eax, eax
jne 0x1401ddefc
cmp byte [r14 + 0x124], 1
ja 0x1401ddefc
mov ecx, dword [rbx + 4]
lea rdx, str.false
mov eax, ecx
or eax, 0x20000000
cmp byte [rbx], 0x33
jne 0x1401dd13e
lea rdx, str.true
mov eax, ecx
or eax, 0x10000000
mov dword [rbx + 4], eax
mov eax, 1
mov qword [rbx + 8], rdx
mov byte [rbx], 0xaa
mov edx, dword [rsi + rax*4 - 4]
mov dword [r15 + 0x20], edx
mov r15, qword [r15 + 0x18]
test r15, r15
setne cl
cmp eax, 7
setle dl
inc rax
test cl, dl
jne 0x1401dd14d
mov rcx, qword [r14]
mov rdx, r9
xor edi, edi
call fcn.1401f0ae0
mov qword [rbx + 0x10], rdi
jmp 0x1401ddefc
mov rax, qword [rbx + 8]
xor esi, esi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], rax
jmp 0x1401dd223
mov rsi, qword [rdx + 0x10]
mov edx, dword [r15 + 0x28]
test dl, 0x28
je 0x1401dd1c0
mov qword [rsp + 0x20], rbx
lea r8, str.the__.__operator
xor r9d, r9d
mov rcx, r14
call fcn.1401d4b00
mov r8, qword [rbx + 0x18]
mov rax, qword [rsi + 8]
cmp byte [r8], 0x3b
mov qword [rsp + 0x48], rax
je 0x1401dd1dd
mov rsi, qword [r8 + 0x10]
mov r8, qword [r8 + 0x18]
jmp 0x1401dd1e5
xor r11d, r11d
mov qword [rsp + 0x48], r11
mov rax, qword [rsi + 8]
cmp byte [r14 + 0x124], 1
mov qword [rsp + 0x30], rax
mov rax, qword [r8 + 8]
mov qword [rsp + 0x38], rax
jbe 0x1401dd223
mov rcx, qword [r14 + 0x190]
mov rdx, rbx
call fcn.140203a30
mov rcx, qword [r14 + 0x190]
lea rdx, [rbx + 0x40]
mov r8, rsi
call fcn.140203a30
mov rax, qword [r14]
xor r9d, r9d
xor r10d, r10d
mov dword [rbx + 0x2c], 0xffffffff
cmp qword [rsp + 0x48], 0
mov qword [rsp + 0xb0], r9
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x40], rax
je 0x1401dd2db
test byte [r15 + 0x28], 6
jne 0x1401dd2ce
mov esi, dword [rax + 0x28]
xor r11d, r11d
cmp esi, r11d
jle 0x1401dd292
mov rax, qword [rsp + 0x40]
mov rdi, r11
inc r11
shl rdi, 5
mov rdx, qword [rsp + 0x48]
add rdi, qword [rax + 0x20]
mov rcx, qword [rdi]
call fcn.1402097c0
test eax, eax
jne 0x1401dd25e
mov rax, qword [rdi + 0x18]
mov qword [rsp + 0x50], rax
jmp 0x1401dd2db
mov qword [rsp + 0x50], 0
jne 0x1401dd2db
mov rdx, qword [rsp + 0x48]
lea rcx, str.main
call fcn.1402097c0
test eax, eax
jne 0x1401dd2db
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
mov rdi, qword [rax + 0x18]
mov rax, qword [rax]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], rax
jmp 0x1401dd2db
xor r8d, r8d
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x48], r8
xor ecx, ecx
mov rdi, r15
mov dword [rsp + 0x64], 0xa7
xor ebp, ebp
mov dword [rsp + 0x84], ecx
mov dword [rsp + 0x60], ecx
mov rax, qword [rdi + 8]
xor esi, esi
test rax, rax
mov qword [rsp + 0x68], rax
je 0x1401dd693
lea r12, [rax + 8]
xor edx, edx
mov dword [rsp + 0x80], edx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x80]
cmp ecx, dword [rax]
jge 0x1401dd66a
mov rax, qword [r12 + 0x20]
test byte [r12 + 0x41], 0x20
mov qword [rsp + 0x58], rax
je 0x1401dd47c
mov rax, qword [r12 + 0x28]
xor r13d, r13d
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x70], rax
add rax, 8
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rsp + 0x88], eax
mov rax, qword [rsp + 0x70]
cmp r13d, dword [rax]
jge 0x1401dd461
mov r9, qword [rsp + 0x48]
mov r8, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x78]
call fcn.1401fa300
test eax, eax
je 0x1401dd453
test esi, esi
jle 0x1401dd414
test byte [r12 + 0x41], 4
je 0x1401dd3b1
mov rcx, qword [r12 + 0x48]
mov rdx, qword [rsp + 0x38]
call fcn.1401f6b40
test eax, eax
jns 0x1401dd3cf
mov rdx, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x40]
call fcn.1401f17b0
xor eax, eax
mov qword [rsp + 0xb0], rax
jmp 0x1401dd414
mov al, byte [r12 + 0x3c]
test al, 0x10
je 0x1401dd453
test al, 8
jne 0x1401dd3fc
mov rdx, qword [rsp + 0xb0]
xor esi, esi
mov rcx, qword [rsp + 0x40]
call fcn.1401f17b0
xor eax, eax
mov qword [rsp + 0xb0], rax
jmp 0x1401dd414
movsx r9d, word [rbx + 0x30]
lea rdx, [rsp + 0xb0]
mov r8, rbp
mov rcx, r14
call fcn.1401c88c0
mov rcx, qword [rsp + 0x70]
movsxd rax, r13d
inc esi
mov word [rbx + 0x30], r13w
shl rax, 5
mov rbp, r12
lea rdx, [rcx + rax + 0x10]
mov al, byte [rdx + 0xc]
or eax, 0x40
test al, al
mov byte [rdx + 0xc], al
js 0x1401dd652
mov dword [rsp + 0x88], 1
mov dword [rsp + 0x60], 2
add qword [rsp + 0x78], 0x20
inc r13d
jmp 0x1401dd363
cmp qword [rsp + 0x30], 0
je 0x1401dd65a
cmp dword [rsp + 0x88], 0
je 0x1401dd488
jmp 0x1401dd65a
cmp qword [rsp + 0x30], 0
je 0x1401dd50a
cmp qword [rsp + 0x48], 0
je 0x1401dd4c2
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
cmp qword [rax + 0x60], rcx
jne 0x1401dd65a
test rcx, rcx
jne 0x1401dd4c2
mov rcx, qword [rsp + 0x48]
lea rdx, [0x14031a95a]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x1401dd65a
mov r11, qword [r12 + 0x18]
test r11, r11
mov rcx, r11
jne 0x1401dd4d7
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rdx, qword [rsp + 0x30]
call fcn.1402097c0
test eax, eax
jne 0x1401dd65a
cmp byte [r14 + 0x124], 1
jbe 0x1401dd50a
test r11, r11
je 0x1401dd50a
mov rcx, qword [r14 + 0x190]
lea r8, [rbx + 0x40]
xor edx, edx
call fcn.140203a30
mov rcx, qword [rsp + 0x38]
xor r13d, r13d
call fcn.140209800
mov byte [rsp + 0x70], al
mov rax, qword [rsp + 0x58]
mov r8, qword [rax + 8]
movsx eax, word [rax + 0x36]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x78]
cmp r13d, eax
jge 0x1401dd63a
mov al, byte [rsp + 0x70]
cmp al, byte [r8 + 0xe]
jne 0x1401dd62e
mov rcx, qword [r8]
mov qword [rsp + 0x88], r8
mov rdx, qword [rsp + 0x38]
call fcn.1402097c0
mov r8, qword [rsp + 0x88]
test eax, eax
jne 0x1401dd62e
test esi, esi
mov al, byte [r12 + 0x41]
jle 0x1401dd5fb
test al, 4
je 0x1401dd598
mov rcx, qword [r12 + 0x48]
mov rdx, qword [rsp + 0x38]
call fcn.1401f6b40
mov r8, qword [rsp + 0x88]
test eax, eax
jns 0x1401dd5b6
mov rdx, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x40]
call fcn.1401f17b0
xor eax, eax
mov qword [rsp + 0xb0], rax
jmp 0x1401dd5fb
mov al, byte [r12 + 0x3c]
test al, 0x10
je 0x1401dd62e
test al, 8
jne 0x1401dd5e3
mov rdx, qword [rsp + 0xb0]
xor esi, esi
mov rcx, qword [rsp + 0x40]
call fcn.1401f17b0
xor eax, eax
mov qword [rsp + 0xb0], rax
jmp 0x1401dd5fb
movsx r9d, word [rbx + 0x30]
lea rdx, [rsp + 0xb0]
mov r8, rbp
mov rcx, r14
call fcn.1401c88c0
mov rax, qword [rsp + 0x58]
movsx eax, word [rax + 0x34]
cmp eax, r13d
mov eax, 0xffffffff
cmovne eax, r13d
test byte [r12 + 0x41], 0x20
mov word [rbx + 0x30], ax
je 0x1401dd627
mov edx, r13d
mov rcx, r12
call fcn.140208920
inc esi
mov rbp, r12
jmp 0x1401dd63a
inc r13d
add r8, 0x18
jmp 0x1401dd52c
test esi, esi
jne 0x1401dd65a
mov rax, qword [rsp + 0x58]
test byte [rax + 0x31], 2
jne 0x1401dd65a
inc dword [rsp + 0x60]
mov rbp, r12
jmp 0x1401dd65a
mov dword [rsp + 0x60], 2
inc dword [rsp + 0x80]
add r12, 0x68
jmp 0x1401dd316
test rbp, rbp
je 0x1401dd693
mov eax, dword [rbp + 0x44]
mov dword [rbx + 0x2c], eax
mov rax, qword [rbp + 0x20]
mov qword [rbx + 0x40], rax
test byte [rbp + 0x3c], 0x48
je 0x1401dd68a
or dword [rbx + 4], 0x200000
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x50], rax
test esi, esi
jne 0x1401ddb2a
cmp qword [rsp + 0x48], 0
jne 0x1401dd904
cmp qword [rsp + 0x30], 0
mov r13, qword [r14 + 0xa8]
setne r11b
test r13, r13
je 0x1401dd74d
cmp byte [r14 + 0xd5], 0
movzx esi, byte [r14 + 0xd4]
je 0x1401dd6fd
test byte [rdi + 0x29], 4
je 0x1401dd74a
cmp qword [rsp + 0x30], 0
je 0x1401dd6f3
mov rdx, qword [r13]
mov rcx, qword [rsp + 0x30]
call fcn.1402097c0
test eax, eax
jne 0x1401dd74a
xor eax, eax
add esi, 0xffffff80
setne al
jmp 0x1401dd745
cmp esi, 0x80
je 0x1401dd71f
test r11b, r11b
je 0x1401dd71f
mov rdx, qword [rsp + 0x30]
lea rcx, [0x14031a95c]
call fcn.1402097c0
test eax, eax
je 0x1401dd740
cmp esi, 0x7f
je 0x1401dd74a
test r11b, r11b
je 0x1401dd74a
mov rdx, qword [rsp + 0x30]
lea rcx, [0x14031a960]
call fcn.1402097c0
test eax, eax
jne 0x1401dd74a
jmp 0x1401dd745
mov eax, 1
mov dword [rbx + 0x2c], eax
jmp 0x1401dd74d
xor r13d, r13d
test byte [rdi + 0x29], 2
je 0x1401dd785
test r11b, r11b
je 0x1401dd785
mov r11, qword [rdi + 0x10]
test r11, r11
je 0x1401dd785
mov rdx, qword [rsp + 0x30]
lea rcx, str.excluded
call fcn.1402097c0
test eax, eax
jne 0x1401dd785
mov rax, qword [r11 + 0x40]
mov r13, qword [rax + 0x28]
mov dword [rbx + 0x2c], 2
xor esi, esi
test r13, r13
je 0x1401dd904
mov rcx, qword [rsp + 0x38]
xor r11d, r11d
call fcn.140209800
mov rsi, qword [r13 + 8]
mov r8d, eax
mov rax, qword [r13 + 0x60]
inc dword [rsp + 0x60]
movsx r12d, word [r13 + 0x36]
mov qword [rsp + 0x50], rax
cmp r11d, r12d
jge 0x1401dd7f1
cmp r8b, byte [rsi + 0xe]
jne 0x1401dd7e8
mov rdx, qword [rsp + 0x38]
mov byte [rsp + 0x58], r8b
mov rcx, qword [rsi]
call fcn.1402097c0
mov r8b, byte [rsp + 0x58]
test eax, eax
jne 0x1401dd7e8
movsx eax, word [r13 + 0x34]
cmp eax, r11d
jne 0x1401dd81f
jmp 0x1401dd81b
inc r11d
add rsi, 0x18
jmp 0x1401dd7b6
mov rcx, qword [rsp + 0x38]
call fcn.1401f94a0
test eax, eax
mov esi, eax
je 0x1401dd90c
xor esi, esi
test byte [r13 + 0x31], 2
jne 0x1401dd904
test r12d, r12d
js 0x1401dd904
or r11d, 0xffffffff
mov eax, dword [rbx + 0x2c]
cmp eax, 2
jne 0x1401dd85b
cmp byte [r14 + 0x124], 1
jbe 0x1401dd844
mov word [rbx + 0x30], r11w
mov qword [rbx + 0x40], r13
mov dword [rsp + 0x64], 0xa7
jmp 0x1401dd894
mov rax, qword [rdi + 0x10]
mov edx, r11d
mov rcx, r13
mov esi, dword [rax + 0x48]
call fcn.140209a70
cwde
add eax, esi
jmp 0x1401dd889
mov qword [rbx + 0x40], r13
cmp byte [r14 + 0xd5], 0
je 0x1401dd89d
inc r12d
mov byte [rbx + 2], 0xa7
mov edx, r11d
mov rcx, r13
imul r12d, eax
add r12d, dword [rdi + 0x10]
call fcn.140209a70
cwde
lea eax, [r12 + rax + 1]
mov dword [rbx + 0x2c], eax
mov dword [rsp + 0x64], 0xb0
xor ebp, ebp
mov esi, 1
jmp 0x1401dd904
cmp r11d, 0xffffffff
mov word [rbx + 0x30], r11w
jne 0x1401dd8ae
mov byte [rbx + 1], 0x44
jmp 0x1401dd8d5
test eax, eax
jne 0x1401dd8df
or eax, 0xffffffff
cmp r11d, 0x1f
mov edx, dword [r14 + 0xcc]
jg 0x1401dd8cc
mov eax, 1
mov ecx, r11d
shl eax, cl
or edx, eax
mov dword [r14 + 0xcc], edx
mov dword [rsp + 0x64], 0x4d
jmp 0x1401dd894
or eax, 0xffffffff
cmp r11d, 0x1f
mov edx, dword [r14 + 0xd0]
jg 0x1401dd8f9
mov eax, 1
mov ecx, r11d
shl eax, cl
or edx, eax
mov dword [r14 + 0xd0], edx
jmp 0x1401dd8d5
test esi, esi
jne 0x1401ddb2a
cmp dword [rsp + 0x60], 1
jne 0x1401dd94a
test rbp, rbp
je 0x1401dd952
test byte [rdi + 0x28], 0x28
jne 0x1401dd952
mov rcx, qword [rsp + 0x38]
call fcn.1401f94a0
test eax, eax
je 0x1401dd952
mov rax, qword [rbp + 0x20]
test byte [rax + 0x31], 2
jne 0x1401dd952
mov word [rbx + 0x30], 0xffff
mov esi, 1
mov byte [rbx + 1], 0x44
jmp 0x1401dda8b
test esi, esi
jne 0x1401ddb2a
mov r12d, dword [rdi + 0x28]
test r12b, r12b
jns 0x1401dda75
cmp qword [rsp + 0x30], 0
jne 0x1401dda75
mov r13, qword [rdi + 0x10]
xor r11d, r11d
mov eax, dword [r13]
mov dword [rsp + 0x68], eax
cmp dword [rsp + 0x68], r11d
mov dword [rsp + 0x58], r11d
jle 0x1401dda75
movsxd rax, r11d
shl rax, 5
lea rsi, [r13 + rax]
test byte [rsi + 0x1c], 3
jne 0x1401dda6d
mov rax, r11
mov rdx, qword [rsp + 0x38]
shl rax, 5
mov r8, qword [r13 + rax + 0x10]
mov rcx, r8
mov qword [rsp + 0x70], r8
call fcn.140223960
mov r8, qword [rsp + 0x70]
test eax, eax
jne 0x1401dda6d
mov rcx, qword [rsi + 8]
test r12d, 1
mov eax, dword [rcx + 4]
jne 0x1401dd9e6
lea rdx, str.misuse_of_aliased_aggregate__s
test al, 0x10
jne 0x1401dd9ff
bt eax, 0xf
jae 0x1401dda11
bt r12d, 0xe
jae 0x1401dd9f8
cmp r15, rdi
je 0x1401dda11
lea rdx, str.misuse_of_aliased_window_function__s
mov rcx, r14
call fcn.1401ede00
mov eax, 2
jmp 0x1401de52e
call fcn.1401f1c70
dec eax
je 0x1401dda2b
lea rdx, str.row_value_misused
mov rcx, r14
call fcn.1401ede00
jmp 0x1401dda07
mov eax, dword [rsp + 0x84]
mov r9, rbx
mov rdx, r13
mov rcx, r14
mov r8d, dword [rsp + 0x58]
mov dword [rsp + 0x20], eax
call fcn.1401dce90
cmp byte [r14 + 0x124], 1
jbe 0x1401ddcba
mov rcx, qword [r14 + 0x190]
mov r8, rbx
xor edx, edx
call fcn.140203a30
jmp 0x1401ddcba
inc r11
jmp 0x1401dd97a
mov rdi, qword [rdi + 0x18]
inc dword [rsp + 0x84]
test rdi, rdi
jne 0x1401dd2f5
xor esi, esi
test esi, esi
jne 0x1401ddb2a
cmp qword [rsp + 0x30], 0
jne 0x1401ddb2a
test byte [rbx + 4], 0x80
je 0x1401ddb08
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0xc5], 0
jne 0x1401ddae3
test byte [r15 + 0x2a], 1
mov rax, qword [rax + 0x30]
je 0x1401ddad8
mov rdx, rax
and edx, 0x10000001
dec rdx
jne 0x1401ddad2
bt eax, 0x1e
jb 0x1401ddae3
shr rax, 0x1d
jmp 0x1401ddadc
shr rax, 0x1e
and eax, 1
test eax, eax
je 0x1401ddb08
mov r8, qword [rsp + 0x38]
lea rdx, str.double_quoted_string_literal:___w_
mov ecx, 0x1c
xor r13d, r13d
call fcn.1402207d0
mov byte [rbx], 0x75
mov qword [rbx + 0x40], r13
jmp 0x1401ddefc
mov rcx, rbx
call fcn.1401f0d00
test eax, eax
jne 0x1401ddefc
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
jne 0x1401ddb35
jmp 0x1401ddbc4
cmp esi, 1
je 0x1401ddc5a
jmp 0x1401ddb18
lea eax, [rsi - 1]
cmp dword [rdx], eax
jne 0x1401ddbaf
mov eax, dword [rbx + 4]
bt eax, 0x17
jae 0x1401ddb4f
and eax, 0xff7fffff
mov dword [rbx + 4], eax
jmp 0x1401ddb78
mov rdx, qword [rbx + 0x10]
xor esi, esi
xor r12d, r12d
mov rcx, qword [rsp + 0x40]
call fcn.1401f0ae0
mov rdx, qword [rbx + 0x18]
mov qword [rbx + 0x10], rsi
mov rcx, qword [rsp + 0x40]
call fcn.1401f0ae0
mov qword [rbx + 0x18], r12
movsx r9d, word [rbx + 0x30]
lea rdx, [rsp + 0xb0]
mov r8, rbp
mov rcx, r14
call fcn.1401c88c0
lea rax, str.coalesce
mov byte [rbx], 0xac
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0xb0]
mov qword [rbx + 0x20], rax
jmp 0x1401ddcba
mov rcx, qword [rsp + 0x40]
call fcn.1401f17b0
xor r11d, r11d
mov qword [rsp + 0xb0], r11
lea r8, str.ambiguous_column_name
test esi, esi
lea rax, str.no_such_column
cmove r8, rax
cmp qword [rsp + 0x48], 0
je 0x1401ddc0a
mov rax, qword [rsp + 0x38]
lea rdx, str._s:__s._s._s
mov rcx, r14
mov r9, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
call fcn.1401ede00
jmp 0x1401ddc46
cmp qword [rsp + 0x30], 0
je 0x1401ddc32
mov rax, qword [rsp + 0x38]
lea rdx, str._s:__s._s
mov rcx, r14
mov r9, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
call fcn.1401ede00
jmp 0x1401ddc46
mov r9, qword [rsp + 0x38]
lea rdx, str._s:__s
mov rcx, r14
call fcn.1401ede00
mov rcx, qword [r14]
mov rdx, rbx
call fcn.140203520
mov byte [r14 + 0x1d], 1
inc dword [r15 + 0x24]
test dword [rbx + 4], 0x810000
jne 0x1401ddc94
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rsp + 0x40]
call fcn.1401f0ae0
mov rdx, qword [rbx + 0x18]
xor r9d, r9d
mov rcx, qword [rsp + 0x40]
mov qword [rbx + 0x10], r9
call fcn.1401f0ae0
xor r10d, r10d
or dword [rbx + 4], 0x800000
mov qword [rbx + 0x18], r10
cmp word [rbx + 0x30], 0
js 0x1401ddcac
test rbp, rbp
je 0x1401ddcac
mov rcx, rbx
call fcn.1401f05f0
or qword [rbp + 0x50], rax
mov al, byte [rsp + 0x64]
dec esi
mov byte [rbx], al
jne 0x1401dda07
mov rcx, qword [r14]
cmp qword [rcx + 0x1f8], 0
je 0x1401ddd6f
mov r11b, byte [rbx]
cmp r11b, 0xa7
je 0x1401ddcde
cmp r11b, 0x4d
jne 0x1401ddd6f
mov rdx, qword [rsp + 0x50]
mov r10, qword [rdi + 8]
call fcn.140204d70
test eax, eax
mov r9d, eax
js 0x1401ddd6f
cmp r11b, 0x4d
je 0x1401ddd00
mov ecx, dword [r10]
xor eax, eax
jmp 0x1401ddd0c
mov rdx, qword [r14 + 0xa8]
jmp 0x1401ddd31
mov rax, rdx
cmp ecx, eax
jle 0x1401ddd2f
lea rdx, [rax + 1]
imul r8, rdx, 0x68
mov esi, dword [r10 + r8 - 0x1c]
cmp dword [rbx + 0x2c], esi
jne 0x1401ddd09
cdqe
imul rax, rax, 0x68
mov rdx, qword [r10 + rax + 0x28]
jmp 0x1401ddd31
xor edx, edx
test rdx, rdx
movsx rax, word [rbx + 0x30]
je 0x1401ddd6f
test ax, ax
jns 0x1401ddd51
movsx rax, word [rdx + 0x34]
lea r8, str.ROWID
test ax, ax
js 0x1401ddd5c
imul rax, rax, 0x18
add rax, qword [rdx + 8]
mov r8, qword [rax]
mov rdx, qword [rdx]
mov rcx, r14
call fcn.1401e3ea0
cmp eax, 2
jne 0x1401ddd6f
mov byte [rbx], 0x79
inc dword [r15 + 0x20]
cmp rdi, r15
je 0x1401ddefc
mov r15, qword [r15 + 0x18]
jmp 0x1401ddd6f
mov r13, qword [rdx + 0x20]
xor edi, edi
test r13, r13
je 0x1401ddd91
mov edi, dword [r13]
mov rcx, qword [r14]
xor ebp, ebp
mov eax, dword [r15 + 0x28]
test byte [rbx + 7], 1
movzx r9d, byte [rcx + 0x64]
mov dword [rsp + 0x38], eax
je 0x1401dddb5
mov rbp, qword [rbx + 0x40]
cmp byte [rbp + 0x20], 0xa6
jne 0x1401dddb5
xor ebp, ebp
mov rsi, qword [rbx + 8]
xor r8d, r8d
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x20], r8d
mov r8d, edi
mov rdx, rsi
call fcn.1401f1e30
mov r9d, dword [rsp + 0x30]
test rax, rax
mov r12, rax
jne 0x1401dde10
xor ecx, ecx
mov rdx, rsi
mov r8d, 0xfffffffe
mov dword [rsp + 0x20], ecx
mov rcx, qword [r14]
xor esi, esi
call fcn.1401f1e30
cmp rax, 1
mov r12, rax
sbb edi, edi
xor edx, edx
inc edi
cmp rax, 1
setb dl
jmp 0x1401ddfa7
xor esi, esi
cmp qword [rax + 0x20], 0
setne sil
test byte [rax + 5], 4
je 0x1401ddebd
or dword [rbx + 4], 0x80000
cmp edi, 2
jne 0x1401ddea6
mov rax, qword [r13 + 0x28]
cmp byte [rax], 0x99
je 0x1401dde43
mov dword [rbx + 0x2c], 0xffffffff
jmp 0x1401dde8e
mov rdi, qword [rax + 8]
mov rcx, rdi
call fcn.140209840
lea rdx, [rsp + 0xb0]
mov r9d, 1
mov rcx, rdi
mov r8d, eax
call fcn.1401e37e0
movsd xmm0, qword [rsp + 0xb0]
comisd xmm0, xmmword [0x1403202a8]
ja 0x1401dde3a
mulsd xmm0, qword [0x140320378]
cvttsd2si eax, xmm0
test eax, eax
mov dword [rbx + 0x2c], eax
jns 0x1401ddebd
lea rdx, str.second_argument_to__T___must_be_a_constant_between_0.0_and_1.0
mov r8, rbx
mov rcx, r14
call fcn.1401ede00
inc dword [r15 + 0x24]
jmp 0x1401ddebd
mov rax, qword [rax + 0x38]
mov edx, 0x800000
cmp byte [rax], 0x75
mov eax, 0x7800000
cmove eax, edx
mov dword [rbx + 0x2c], eax
mov r9, qword [r12 + 0x38]
xor edx, edx
xor r8d, r8d
mov rcx, r14
mov qword [rsp + 0x20], rdx
mov edx, 0x1f
call fcn.1401e3e00
test eax, eax
mov edi, eax
je 0x1401ddf06
dec edi
jne 0x1401ddef9
lea rdx, str.not_authorized_to_use_function:__T
mov r8, rbx
mov rcx, r14
call fcn.1401ede00
inc dword [r15 + 0x24]
mov byte [rbx], 0x79
mov eax, 1
jmp 0x1401de52e
mov ecx, dword [r12 + 4]
mov edx, dword [r15 + 0x28]
test ch, 0x28
jne 0x1401ddf32
test dl, 0x2a
je 0x1401ddf5f
mov qword [rsp + 0x20], rbx
lea r8, str.non_deterministic_functions
xor r9d, r9d
mov rcx, r14
call fcn.1401d4b00
jmp 0x1401ddf5f
mov eax, dword [rbx + 4]
mov r8d, eax
or r8d, 0x100000
bt ecx, 0xb
mov dword [rbx + 4], r8d
jae 0x1401ddf14
mov ecx, edx
and ecx, 0x2e
bt edx, 0x12
mov byte [rbx + 2], cl
jae 0x1401ddf5f
or eax, 0x40100000
mov dword [rbx + 4], eax
mov eax, dword [r12 + 4]
bt eax, 0x12
jae 0x1401ddf7a
cmp byte [r14 + 0x1e], 0
jne 0x1401ddf7a
mov rdx, qword [r14]
test byte [rdx + 0x2c], 0x20
je 0x1401ddf9f
test eax, 0x280000
je 0x1401ddf8b
cmp byte [r14 + 0x124], 1
jbe 0x1401ddf8f
xor edx, edx
jmp 0x1401ddfa7
mov r8, r12
mov rdx, rbx
mov rcx, r14
call fcn.1401f0cd0
jmp 0x1401ddf8b
xor r12d, r12d
mov edx, 1
cmp byte [r14 + 0x124], 1
ja 0x1401de09c
test r12, r12
je 0x1401ddfd3
cmp qword [r12 + 0x28], 0
jne 0x1401ddfd3
test rbp, rbp
je 0x1401ddfd3
lea rdx, str._T___may_not_be_used_as_a_window_function
mov r8, rbx
jmp 0x1401de04a
test esi, esi
je 0x1401de030
mov ecx, dword [r15 + 0x28]
movzx eax, word [r12 + 6]
and eax, 1
test cl, 1
je 0x1401ddfff
test rbp, rbp
jne 0x1401ddff7
test al, al
jne 0x1401de00f
test rbp, rbp
je 0x1401de030
bt ecx, 0xe
jae 0x1401de00f
jmp 0x1401de030
test rbp, rbp
jne 0x1401de00f
lea r8, str.aggregate
test al, al
je 0x1401de016
lea r8, str.window
lea rdx, str.misuse_of__s_function__T__
mov r9, rbx
mov rcx, r14
call fcn.1401ede00
inc dword [r15 + 0x24]
xor esi, esi
jmp 0x1401de0a7
test edx, edx
je 0x1401de062
mov rax, qword [r14]
cmp byte [rax + 0xc5], 0
jne 0x1401de062
lea rdx, str.no_such_function:__T
mov r8, rbx
mov rcx, r14
call fcn.1401ede00
mov eax, dword [r15 + 0x24]
inc eax
test esi, esi
mov dword [r15 + 0x24], eax
jne 0x1401de074
jmp 0x1401de02c
lea rdx, str.wrong_number_of_arguments_to_function__T__
test edi, edi
mov r8, rbx
jne 0x1401de04a
test esi, esi
je 0x1401de085
cmp rbp, 1
sbb eax, eax
sub eax, 0x4001
and dword [r15 + 0x28], eax
jmp 0x1401de0a2
test byte [rbx + 7], 1
je 0x1401de02c
lea rdx, str.FILTER_may_not_be_used_with_non_aggregate__T__
mov rcx, r14
call fcn.1401ede00
jmp 0x1401de028
test byte [rbx + 7], 1
je 0x1401de0a7
mov esi, 1
mov rcx, qword [rsp + 0x1c0]
mov rdx, r13
call fcn.1402177d0
test esi, esi
je 0x1401ddefc
test rbp, rbp
je 0x1401de2d0
cmp byte [r14 + 0x124], 1
mov rbx, qword [r15 + 0x30]
jbe 0x1401de121
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rsp + 0x1c0]
call fcn.1402177d0
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rsp + 0x1c0]
call fcn.1402177d0
mov rdx, qword [rbp + 0x48]
mov rcx, qword [rsp + 0x1c0]
call fcn.1402177c0
mov rdx, rbp
mov rcx, rbx
call fcn.14021c2d0
or dword [r15 + 0x28], 0x8000
jmp 0x1401de3f0
xor edx, edx
test rbx, rbx
je 0x1401de12c
mov rdx, qword [rbx + 0x78]
mov r8, qword [rbp]
test r8, r8
je 0x1401de1b9
cmp byte [rbp + 0x20], 0
jne 0x1401de1b9
mov rcx, r14
call fcn.1402327f0
test rax, rax
mov rsi, rax
je 0x1401de2be
mov rdx, qword [rax + 0x10]
xor r8d, r8d
mov rcx, qword [r14]
call fcn.1401f17c0
mov rdx, qword [rsi + 0x18]
xor r8d, r8d
mov rcx, qword [r14]
mov qword [rbp + 0x10], rax
call fcn.1401f17c0
mov rdx, qword [rsi + 0x28]
xor r8d, r8d
mov rcx, qword [r14]
mov qword [rbp + 0x18], rax
call fcn.1401f0b90
mov rdx, qword [rsi + 0x30]
xor r8d, r8d
mov rcx, qword [r14]
mov qword [rbp + 0x28], rax
call fcn.1401f0b90
mov qword [rbp + 0x30], rax
mov al, byte [rsi + 0x21]
mov byte [rbp + 0x21], al
mov al, byte [rsi + 0x22]
mov byte [rbp + 0x22], al
mov al, byte [rsi + 0x20]
mov byte [rbp + 0x20], al
mov al, byte [rsi + 0x24]
mov byte [rbp + 0x24], al
jmp 0x1401de1c7
mov r8, rdx
mov rcx, r14
mov rdx, rbp
call fcn.14021bf70
cmp byte [rbp + 0x20], 0x59
jne 0x1401de1f2
cmp qword [rbp + 0x28], 0
jne 0x1401de1db
cmp qword [rbp + 0x30], 0
je 0x1401de1f2
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x1401de1e9
cmp dword [rax], 1
je 0x1401de1f2
lea rdx, str.RANGE_with_offset_PRECEDING_FOLLOWING_requires_one_ORDER_BY_expression
jmp 0x1401de20f
test byte [r12 + 6], 1
je 0x1401de2ba
cmp qword [rbp + 0x48], 0
mov r13, qword [r14]
je 0x1401de21c
lea rdx, str.FILTER_clause_may_only_be_used_with_aggregate_window_functions
mov rcx, r14
call fcn.1401ede00
jmp 0x1401de2ba
mov rdx, qword [r12 + 0x38]
lea rdi, [rsp + 0xb0]
mov ecx, 0x30
lea rsi, str.row_number
rep movsd dword [rdi], dword [rsi]
lea rax, [rsp + 0xb0]
xor esi, esi
cmp rdx, qword [rax]
jne 0x1401de2af
mov rdx, qword [rbp + 0x28]
mov rcx, r13
movsxd rsi, esi
imul rsi, rsi, 0x18
call fcn.1401f0ae0
mov rdx, qword [rbp + 0x30]
mov rcx, r13
call fcn.1401f0ae0
xor eax, eax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov eax, dword [rsp + rsi + 0xb8]
mov byte [rbp + 0x20], al
mov eax, dword [rsp + rsi + 0xbc]
mov byte [rbp + 0x21], al
mov edx, dword [rsp + rsi + 0xc0]
cmp al, 0x56
mov byte [rbp + 0x24], 0
mov byte [rbp + 0x22], dl
jne 0x1401de2ba
lea r8, [0x14031969c]
mov edx, 0x9b
mov rcx, r13
call fcn.1401edf70
mov qword [rbp + 0x28], rax
jmp 0x1401de2ba
inc esi
add rax, 0x18
cmp esi, 8
jne 0x1401de241
mov qword [rbp + 0x50], r12
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
je 0x1401de0d6
jmp case.0x1401dd061.1
test byte [rbx + 7], 1
mov byte [rbx], 0xa8
mov byte [rbx + 2], 0
je 0x1401de2f2
mov rax, qword [rbx + 0x40]
mov rcx, qword [rsp + 0x1c0]
mov rdx, qword [rax + 0x48]
call fcn.1402177c0
lea r13, [0x1401c8530]
mov rbp, r15
lea rsi, [0x1401e1180]
lea rax, [rsp + 0xb0]
mov ecx, 0xa
mov r9, qword [rbp + 8]
mov qword [rsp + 0x30], rax
mov rdi, qword [rsp + 0x30]
xor eax, eax
lea rdx, [rsp + 0xa0]
lea r10, [rsp + 0x90]
rep stosd dword [rdi], eax
mov rdi, rdx
mov ecx, 4
mov rdx, qword [rbx + 0x20]
rep stosd dword [rdi], eax
lea rax, [0x1401e1100]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], rax
mov rax, qword [r14]
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xd8], r10
mov qword [rsp + 0x98], r9
mov qword [rsp + 0x90], rax
call fcn.1402177d0
test byte [rbx + 7], 1
je 0x1401de39c
mov rax, qword [rbx + 0x40]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rax + 0x48]
call fcn.1402177c0
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [r14]
call fcn.1401eb5f0
mov eax, dword [rsp + 0xd4]
test al, 1
jne 0x1401de3ce
test ax, ax
je 0x1401de3ce
inc byte [rbx + 2]
mov rbp, qword [rbp + 0x18]
test rbp, rbp
jne 0x1401de303
jmp 0x1401de3f0
test rbp, rbp
je 0x1401de3f0
test r12, r12
je 0x1401de3f0
mov eax, dword [r12 + 4]
xor eax, 0x8000000
and eax, 0x8001000
or eax, dword [rbp + 0x28]
or eax, 0x10
mov dword [rbp + 0x28], eax
mov r14d, dword [rsp + 0x38]
and r14d, 0x4001
or dword [r15 + 0x28], r14d
jmp 0x1401ddefc
test byte [rbx + 5], 0x10
je case.0x1401dd061.1
mov edx, dword [r15 + 0x28]
mov esi, dword [r15 + 0x20]
test dl, 0x2e
je 0x1401de435
mov qword [rsp + 0x20], rbx
lea r8, str.subqueries
mov r9, rbx
mov rcx, r14
call fcn.1401d4b00
jmp 0x1401de446
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rsp + 0x1c0]
call fcn.140217820
cmp dword [r15 + 0x20], esi
je case.0x1401dd061.1
or dword [rbx + 4], 0x40
or dword [r15 + 0x28], 0x40
jmp case.0x1401dd061.1
mov edx, dword [r15 + 0x28]
test dl, 0x2e
je case.0x1401dd061.1
mov qword [rsp + 0x20], rbx
lea r8, str.parameters
mov r9, rbx
mov rcx, r14
call fcn.1401d4b00
jmp case.0x1401dd061.1
mov rcx, qword [rbx + 0x18]
call fcn.1401f1be0
test rax, rax
mov rsi, rax
je case.0x1401dd061.3
mov al, byte [rax]
cmp al, 0x3b
je 0x1401de4a2
cmp al, 0xaa
jne case.0x1401dd061.3
mov rcx, qword [rsp + 0x1c0]
mov rdx, rsi
call fcn.1401dd010
cmp eax, 2
je 0x1401de52e
cmp byte [rsi], 0xaa
jne case.0x1401dd061.3
mov al, byte [rbx]
mov byte [rbx], 0xaf
mov byte [rbx + 2], al
xor eax, eax
jmp 0x1401de52e
mov rax, qword [r14]
cmp byte [rax + 0x67], 0
jne case.0x1401dd061.1
mov rcx, qword [rbx + 0x10]
call fcn.1401f1c70
cmp byte [rbx], 0x30
mov r8d, eax
jne 0x1401de4fa
mov r9, qword [rbx + 0x20]
mov rcx, qword [r9 + 8]
call fcn.1401f1c70
cmp r8d, eax
jne 0x1401de508
mov rcx, qword [r9 + 0x28]
jmp 0x1401de4fe
mov rcx, qword [rbx + 0x18]
call fcn.1401f1c70
cmp eax, r8d
je case.0x1401dd061.1
lea rdx, str.row_value_misused
mov rcx, r14
call fcn.1401ede00
mov rcx, qword [r14]
mov rdx, rbx
call fcn.140203520
xor eax, eax
cmp dword [r14 + 0x30], 0
setne al
add eax, eax
add rsp, 0x178
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret