Function at 0x140322f60
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
mov rax, qword [0x1404af540]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov r14, qword [rcx + 0x28]
mov rbx, rdx
movzx edx, byte [rdx]
mov r12, rcx
mov r15, qword [r14]
lea eax, [rdx - 0x14]
cmp eax, 0x98
ja case.0x140322fc9.21
lea r8, [0x140000000]
cdqe
mov esi, 1
movzx eax, byte [r8 + rax + 0x323ae8]
mov ecx, dword [r8 + rax*4 + 0x323ac4]
add rcx, r8
jmp rcx
mov rcx, qword [r14 + 8]
mov byte [rbx], 0xa7
mov rax, qword [rcx + 0x28]
mov qword [rbx + 0x40], rax
mov eax, dword [rcx + 0x4c]
dec word [rbx + 0x30]
mov dword [rbx + 0x2c], eax
mov byte [rbx + 1], 0x44
jmp case.0x140322fc9.21
xor ebp, ebp
mov r8, r14
mov edx, ebp
cmp rdx, 8
jge 0x14032300e
mov eax, dword [r8 + 0x20]
mov r8, qword [r8 + 0x18]
mov dword [rsp + rdx*4 + 0x50], eax
inc rdx
test r8, r8
jne 0x140322ff4
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14032301f
mov rcx, r12
call fcn.140396c00
cmp byte [r15 + 0x134], 2
jae 0x140323860
mov rcx, qword [rbx + 0x10]
call fcn.140346970
test eax, eax
jne 0x140323860
mov rax, r14
test dword [rax + 0x28], 0x100000
je 0x140323860
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x140323041
cmp byte [rbx], 0x33
mov eax, ebp
mov byte [rbx], 0x9b
mov rdx, rbp
sete al
or dword [rbx + 4], 0x800
mov dword [rbx + 8], eax
nop
cmp rdx, 8
jge 0x14032308a
mov eax, dword [rsp + rdx*4 + 0x50]
inc rdx
mov dword [r14 + 0x20], eax
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x140323070
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14032309b
mov rcx, qword [r15]
call fcn.14034a620
mov qword [rbx + 0x10], rbp
mov eax, esi
jmp 0x140323a99
cmp dl, 0x3b
jne 0x1403230b8
xor ebp, ebp
mov r9, rbx
mov r8d, ebp
jmp 0x140323197
mov ecx, dword [r14 + 0x28]
mov rdi, qword [rbx + 0x10]
test cl, 0x28
je 0x14032312d
lea rax, str.partial_index_WHERE_clauses
test cl, 0x20
je 0x1403230da
lea r9, str.index_expressions
jmp 0x1403230f6
test cl, 4
je 0x1403230e8
lea r9, str.CHECK_constraints
jmp 0x1403230f6
test cl, 8
lea r9, str.generated_columns
cmove r9, rax
lea r8, str.the__.__operator
mov rcx, r15
lea rdx, str._s_prohibited_in__s
call fcn.1403458b0
mov rdx, qword [r15]
mov rax, rbx
test byte [rax + 4], 3
jne 0x14032311f
mov ecx, dword [rax + 0x34]
test ecx, ecx
jg 0x14032312a
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140323112
jmp 0x14032312d
mov dword [rdx + 0x54], ecx
mov r9, qword [rbx + 0x18]
cmp byte [r9], 0x3b
jne 0x14032313b
xor ebp, ebp
jmp 0x140323147
mov rbp, qword [rdi + 8]
mov rdi, qword [r9 + 0x10]
mov r9, qword [r9 + 0x18]
cmp byte [r15 + 0x134], 2
mov r8, qword [rdi + 8]
jb 0x140323197
mov rax, qword [r15 + 0x1a0]
test rax, rax
je 0x140323174
cmp qword [rax], r9
je 0x140323171
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x140323161
jmp 0x140323174
mov qword [rax], rbx
mov rcx, qword [r15 + 0x1a0]
test rcx, rcx
je 0x140323197
cmp qword [rcx], rdi
je 0x140323190
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x140323180
jmp 0x140323197
lea rax, [rbx + 0x40]
mov qword [rcx], rax
mov qword [rsp + 0x28], rbx
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], r14
call fcn.14030ccf0
jmp 0x140323a99
mov rax, qword [rbx + 0x20]
xor edx, edx
mov qword [rsp + 0x40], rax
test rax, rax
je 0x1403231c5
mov edi, dword [rax]
jmp 0x1403231c7
mov edi, edx
mov rcx, qword [r15]
mov eax, dword [r14 + 0x28]
and eax, 0x4001
mov dword [rsp + 0x34], edx
test dword [rbx + 4], 0x1000000
movzx ebp, byte [rcx + 0x64]
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x48], edx
mov dword [rsp + 0x4c], eax
je 0x1403231fb
mov r13, qword [rbx + 0x40]
cmp byte [r13 + 0x20], 0xa6
jne 0x1403231fe
mov r13, rdx
mov rsi, qword [rbx + 8]
movzx r9d, bpl
mov byte [rsp + 0x20], dl
mov r8d, edi
mov rdx, rsi
call fcn.14034c400
mov qword [rsp + 0x38], rax
mov rdx, rax
test rax, rax
jne 0x140323263
mov rcx, qword [r15]
movzx r9d, bpl
mov r8d, 0xfffffffe
mov byte [rsp + 0x20], al
mov rdx, rsi
call fcn.14034c400
mov esi, dword [rsp + 0x48]
xor ebp, ebp
mov rdi, qword [rsp + 0x40]
test rax, rax
mov ecx, ebp
mov qword [rsp + 0x38], rax
sete cl
mov edx, ebp
test rax, rax
mov r8, rax
setne dl
jmp 0x1403234be
xor ebp, ebp
mov esi, ebp
cmp qword [rax + 0x20], rsi
setne sil
test dword [rax + 4], 0x400
je 0x14032338a
or dword [rbx + 4], 0x80000
cmp edi, 2
mov rdi, qword [rsp + 0x40]
jne 0x14032336f
mov rcx, qword [rdi + 0x28]
movsd xmm0, qword [0x140453020]
movsd qword [rsp + 0x40], xmm0
cmp byte [rcx], 0x99
je 0x1403232b1
mov dword [rbx + 0x2c], 0xffffffff
jmp 0x14032330f
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x1403232bf
mov r8d, ebp
jmp 0x1403232d6
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rcx + r8], bpl
jne 0x1403232c6
and r8d, 0x3fffffff
mov r9b, 1
lea rdx, [rsp + 0x40]
call fcn.140336c10
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x140452d48]
jbe 0x1403232fc
mov dword [rbx + 0x2c], 0xffffffff
jmp 0x14032330f
mulsd xmm0, qword [0x1403f5420]
cvttsd2si eax, xmm0
mov dword [rbx + 0x2c], eax
test eax, eax
jns 0x140323325
mov r8, rbx
lea rdx, str.second_argument_to__T___must_be_a_constant_between_0.0_and_1.0
mov rcx, r15
call fcn.1403458b0
inc dword [r14 + 0x24]
mov rdx, qword [rsp + 0x38]
mov r9, qword [rdx + 0x38]
xor r8d, r8d
mov edx, Ordinal_32
mov qword [rsp + 0x20], rbp
mov rcx, r15
call fcn.1403376f0
test eax, eax
je 0x140323391
cmp eax, 1
jne 0x140323362
mov r8, rbx
lea rdx, str.not_authorized_to_use_function:__T
mov rcx, r15
call fcn.1403458b0
inc dword [r14 + 0x24]
mov byte [rbx], 0x79
mov eax, 1
jmp 0x140323a99
mov rax, qword [rax + 0x38]
mov ecx, 0x7800000
mov r8d, 0x800000
cmp byte [rax], 0x75
cmove ecx, r8d
mov dword [rbx + 0x2c], ecx
jmp 0x14032332a
mov rdi, qword [rsp + 0x40]
jmp 0x14032332a
mov r8, qword [rsp + 0x38]
test dword [r8 + 4], 0x2800
je 0x1403233a7
or dword [rbx + 4], 0x100000
test dword [r8 + 4], 0x800
jne 0x140323458
mov ecx, dword [r14 + 0x28]
test cl, 0x2a
je 0x14032342b
lea rax, str.partial_index_WHERE_clauses
test cl, 0x20
je 0x1403233d3
lea r9, str.index_expressions
jmp 0x1403233ef
test cl, 4
je 0x1403233e1
lea r9, str.CHECK_constraints
jmp 0x1403233ef
test cl, 8
lea r9, str.generated_columns
cmove r9, rax
lea r8, str.non_deterministic_functions
mov rcx, r15
lea rdx, str._s_prohibited_in__s
call fcn.1403458b0
mov rdx, qword [r15]
mov rax, rbx
nop dword [rax + rax]
test byte [rax + 4], 3
jne 0x14032341d
mov ecx, dword [rax + 0x34]
test ecx, ecx
jg 0x140323453
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140323410
mov r8, qword [rsp + 0x38]
mov ecx, dword [r8 + 4]
bt ecx, 0x12
jae 0x140323475
cmp byte [r15 + 0x1e], bpl
jne 0x140323475
mov rax, qword [r15]
test byte [rax + 0x2c], 0x20
jne 0x140323475
mov ecx, 1
mov qword [rsp + 0x38], rbp
mov r8, rbp
jmp 0x1403234ba
mov dword [rdx + 0x54], ecx
jmp 0x140323426
movzx eax, byte [r14 + 0x28]
and al, 0x2e
mov byte [rbx + 2], al
test dword [r14 + 0x28], 0x40000
je 0x14032342b
or dword [rbx + 4], 0x40000000
jmp 0x14032342b
test ecx, 0x280000
je 0x1403234b6
cmp byte [r15 + 0x134], 2
jae 0x1403234b6
test dword [rbx + 4], 0x40000000
je 0x1403234b6
bt ecx, 0x13
jb 0x14032349f
mov rax, qword [r15]
test byte [rax + 0x30], 0x80
jne 0x1403234b6
mov r8, rbx
lea rdx, str.unsafe_use_of__T__
mov rcx, r15
call fcn.1403458b0
mov r8, qword [rsp + 0x38]
mov ecx, dword [rsp + 0x34]
mov edx, dword [rsp + 0x30]
cmp byte [r15 + 0x134], 2
jae 0x140323604
test r8, r8
je 0x14032351e
cmp qword [r8 + 0x28], 0
jne 0x14032351e
test r13, r13
je 0x14032351e
mov r8, rbx
lea rdx, str._T___may_not_be_used_as_a_window_function
mov rcx, r15
call fcn.1403458b0
inc dword [r14 + 0x24]
test esi, esi
je 0x140323614
xor esi, esi
mov rdx, rdi
mov eax, esi
test r13, r13
mov rcx, r12
setne al
add eax, 0xffffbffe
and dword [r14 + 0x28], eax
call fcn.140396b90
jmp 0x140323636
test esi, esi
je 0x140323580
mov eax, dword [r14 + 0x28]
test al, 1
je 0x140323546
test dword [r8 + 4], 0x10000
je 0x14032353b
test r13, r13
je 0x14032355c
jmp 0x140323540
test r13, r13
je 0x140323580
bt eax, 0xe
jb 0x140323580
test dword [r8 + 4], 0x10000
jne 0x14032355c
lea r8, str.aggregate
test r13, r13
je 0x140323563
lea r8, str.window
mov r9, rbx
lea rdx, str.misuse_of__s_function__T__
mov rcx, r15
call fcn.1403458b0
inc dword [r14 + 0x24]
mov esi, ebp
jmp 0x140323614
test ecx, ecx
je 0x1403235a9
mov rax, qword [r15]
cmp byte [rax + 0xc5], 0
jne 0x1403235a9
cmp byte [r15 + 0x133], 0
jne 0x1403235a9
mov r8, rbx
lea rdx, str.no_such_function:__T
jmp 0x1403234e7
test edx, edx
je 0x1403235bc
mov r8, rbx
lea rdx, str.wrong_number_of_arguments_to_function__T__
jmp 0x1403234e7
test esi, esi
jne 0x1403234fb
test dword [rbx + 4], 0x1000000
je 0x1403235e5
mov r8, rbx
lea rdx, str.FILTER_may_not_be_used_with_non_aggregate__T__
mov rcx, r15
call fcn.1403458b0
inc dword [r14 + 0x24]
jmp 0x140323614
cmp qword [rbx + 0x10], 0
je 0x140323614
mov r8, rbx
lea rdx, str.ORDER_BY_may_not_be_used_with_non_aggregate__T__
mov rcx, r15
call fcn.1403458b0
inc dword [r14 + 0x24]
jmp 0x140323614
test dword [rbx + 4], 0x1000000
jne 0x140323629
cmp qword [rbx + 0x10], 0
jne 0x140323629
mov rdx, rdi
mov rcx, r12
call fcn.140396b90
test esi, esi
je 0x14032385b
jmp 0x140323634
mov rdx, rdi
mov rcx, r12
call fcn.140396b90
xor esi, esi
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14032364b
mov rdx, qword [rdx + 0x20]
mov rcx, r12
call fcn.140396b90
test r13, r13
je 0x1403236db
cmp byte [r15 + 0x134], 2
mov rbx, qword [r14 + 0x30]
jae 0x14032368b
test rbx, rbx
je 0x14032366b
mov rsi, qword [rbx + 0x78]
mov r9, qword [rsp + 0x38]
mov r8, r13
mov rdx, rsi
mov rcx, r15
call fcn.1403a0d60
mov rax, qword [r15]
cmp byte [rax + 0x67], 0
jne case.0x140322fc9.21
mov rdx, qword [r13 + 0x10]
mov rcx, r12
call fcn.140396b90
mov rdx, qword [r13 + 0x18]
mov rcx, r12
call fcn.140396b90
mov rdx, qword [r13 + 0x48]
test rdx, rdx
je 0x1403236b4
mov rcx, r12
call fcn.140396c00
mov rdx, r13
mov rcx, rbx
call fcn.14039fbb0
mov eax, dword [rsp + 0x4c]
mov esi, 1
or dword [r14 + 0x28], 0x8000
or dword [r14 + 0x28], eax
mov eax, esi
jmp 0x140323a99
test dword [rbx + 4], 0x1000000
mov byte [rbx], 0xa8
mov byte [rbx + 2], 0
je 0x140323700
mov rax, qword [rbx + 0x40]
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x140323700
mov rcx, r12
call fcn.140396c00
mov rbp, r14
lea r12, [0x1402b9d30]
lea r13, [0x14032b030]
lea rax, [0x14032b130]
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x88], rax
xorps xmm0, xmm0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x90], rsi
mov rsi, qword [rbx + 0x20]
mov qword [rsp + 0x98], rax
mov rax, qword [r15]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp + 8]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x80], r13
movdqu xmmword [rsp + 0x60], xmm0
test rsi, rsi
je 0x140323794
mov edi, dword [rsi]
add rsi, 8
test edi, edi
jle 0x140323794
mov rdx, qword [rsi]
test rdx, rdx
je 0x14032378a
lea rcx, [rsp + 0x70]
call fcn.140396c00
test eax, eax
jne 0x140323794
dec edi
add rsi, 0x20
test edi, edi
jg 0x140323774
mov rsi, qword [rbx + 0x10]
test rsi, rsi
je 0x1403237d0
mov rsi, qword [rsi + 0x20]
test rsi, rsi
je 0x1403237d0
mov edi, dword [rsi]
add rsi, 8
test edi, edi
jle 0x1403237d0
mov rdx, qword [rsi]
test rdx, rdx
je 0x1403237c6
lea rcx, [rsp + 0x70]
call fcn.140396c00
test eax, eax
jne 0x1403237d0
dec edi
add rsi, 0x20
test edi, edi
jg 0x1403237b0
test dword [rbx + 4], 0x1000000
je 0x1403237f0
mov rax, qword [rbx + 0x40]
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x1403237f0
lea rcx, [rsp + 0x70]
call fcn.140396c00
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x140323802
mov rcx, qword [r15]
call fcn.140342e80
movzx eax, word [rsp + 0x94]
test al, 1
jne 0x14032382c
test ax, ax
je 0x14032382c
movzx eax, byte [rbp + 0x2c]
inc al
add byte [rbx + 2], al
mov rbp, qword [rbp + 0x18]
test rbp, rbp
je 0x140323853
xor esi, esi
jmp 0x140323711
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140323853
movzx eax, byte [rbx + 2]
add al, byte [rbp + 0x2c]
mov byte [rbx + 2], al
mov eax, dword [rcx + 4]
xor eax, 0xffffefff
and eax, 0x8001000
or eax, 0x10
or dword [rbp + 0x28], eax
mov eax, dword [rsp + 0x4c]
or dword [r14 + 0x28], eax
mov esi, 1
mov eax, esi
jmp 0x140323a99
test dword [rbx + 4], 0x1000
je case.0x140322fc9.21
mov ecx, dword [r14 + 0x28]
mov edi, dword [r14 + 0x20]
test cl, 0x2e
je 0x1403238ee
lea rax, str.partial_index_WHERE_clauses
test cl, 0x20
je 0x140323896
lea r9, str.index_expressions
jmp 0x1403238b2
test cl, 4
je 0x1403238a4
lea r9, str.CHECK_constraints
jmp 0x1403238b2
test cl, 8
lea r9, str.generated_columns
cmove r9, rax
lea r8, str.subqueries
mov rcx, r15
lea rdx, str._s_prohibited_in__s
call fcn.1403458b0
mov byte [rbx], 0x79
mov rax, rbx
mov rdx, qword [r15]
test byte [rax + 4], 3
jne 0x1403238de
mov ecx, dword [rax + 0x34]
test ecx, ecx
jg 0x1403238e9
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1403238d1
jmp 0x1403238fa
mov dword [rdx + 0x54], ecx
jmp 0x1403238fa
mov rdx, qword [rbx + 0x20]
mov rcx, r12
call fcn.140396cd0
cmp edi, dword [r14 + 0x20]
je 0x14032390f
mov rax, qword [rbx + 0x20]
or dword [rbx + 4], 0x40
or dword [rax + 4], 0x20000000
or dword [r14 + 0x28], 0x40
jmp case.0x140322fc9.21
mov ecx, dword [r14 + 0x28]
test cl, 0x2e
je case.0x140322fc9.21
lea rax, str.partial_index_WHERE_clauses
test cl, 0x20
je 0x14032393b
lea r9, str.index_expressions
jmp 0x140323957
test cl, 4
je 0x140323949
lea r9, str.CHECK_constraints
jmp 0x140323957
test cl, 8
lea r9, str.generated_columns
cmove r9, rax
lea r8, str.parameters
mov rcx, r15
lea rdx, str._s_prohibited_in__s
call fcn.1403458b0
mov byte [rbx], 0x79
mov rcx, qword [r15]
test byte [rbx + 4], 3
jne 0x140323984
mov eax, dword [rbx + 0x34]
test eax, eax
jg 0x140323a8b
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140323973
jmp case.0x140322fc9.21
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je case.0x140322fc9.48
nop dword [rax + rax]
mov eax, dword [rdi + 4]
test eax, 0x82000
je 0x1403239cd
bt eax, 0x13
jae 0x1403239ba
mov rax, qword [rdi + 0x20]
mov rdi, qword [rax + 8]
jmp 0x1403239c3
cmp byte [rdi], 0x71
jne 0x1403239c8
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x1403239a0
test rdi, rdi
je case.0x140322fc9.48
movzx eax, byte [rdi]
cmp al, 0x3b
je 0x1403239d8
cmp al, 0xaa
jne case.0x140322fc9.48
mov rdx, rdi
mov rcx, r12
call fcn.140322f60
cmp eax, 2
jne 0x1403239ed
jmp 0x140323a99
cmp byte [rdi], 0xaa
jne case.0x140322fc9.48
movzx eax, byte [rbx]
mov byte [rbx + 2], al
xor eax, eax
mov byte [rbx], 0xaf
jmp 0x140323a99
mov rax, qword [r15]
cmp byte [rax + 0x67], 0
jne case.0x140322fc9.21
mov rcx, qword [rbx + 0x10]
movzx eax, byte [rcx]
cmp al, 0xb0
jne 0x140323a1e
movzx eax, byte [rcx + 2]
cmp al, 0xb1
jne 0x140323a2a
mov rax, qword [rcx + 0x20]
mov esi, dword [rax]
jmp 0x140323a38
cmp al, 0x8a
jne 0x140323a38
mov rax, qword [rcx + 0x20]
mov rcx, qword [rax + 0x20]
mov esi, dword [rcx]
cmp byte [rbx], 0x30
jne 0x140323a54
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rdx + 8]
call fcn.14034c130
cmp eax, esi
jne 0x140323a61
mov rcx, qword [rdx + 0x28]
jmp 0x140323a58
mov rcx, qword [rbx + 0x18]
call fcn.14034c130
cmp esi, eax
je case.0x140322fc9.21
lea rdx, str.row_value_misused
mov rcx, r15
call fcn.1403458b0
mov rcx, qword [r15]
test byte [rbx + 4], 3
jne 0x140323a80
mov eax, dword [rbx + 0x34]
test eax, eax
jg 0x140323a8b
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140323a73
jmp case.0x140322fc9.21
mov dword [rcx + 0x54], eax
mov eax, dword [r15 + 0x30]
neg eax
sbb eax, eax
and eax, 2
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1403ca460
mov rbx, qword [rsp + 0x100]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret