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

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x110
mov rax, qword [0x1402d3700]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov r14, qword [rcx]
xor ebp, ebp
movzx eax, byte [r8 + 0x40]
mov esi, ebp
mov r15, qword [r8 + 0x60]
movsxd rdi, edx
mov rdx, rcx
mov rbx, qword [r14 + 0x10]
mov qword [rsp + 0x58], rcx
mov rcx, qword [r8 + 0x38]
mov qword [rsp + 0x68], rcx
imul rcx, rax, 0x68
mov rax, qword [rdx + 8]
mov qword [rsp + 0x78], r8
lea r8, str.RIGHT_JOIN__s
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x70], rbx
mov r9, qword [rcx + rax + 0x28]
lea rdx, [rax + 8]
add rdx, rcx
mov qword [rsp + 0x50], r15
mov eax, 1
mov qword [rsp + 0x60], rdx
mov edx, eax
mov qword [rsp + 0x40], rbp
mov r9, qword [r9]
mov rcx, r14
mov dword [rsp + 0x48], eax
call fcn.1401d2d60
mov r13, rdi
test edi, edi
jle 0x1401df218
mov rsi, qword [rsp + 0x58]
lea r12, [rbx + 0x88]
lea rdi, [rsi + 0x3c0]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdi - 0x20]
lea r15, [rbx + 0x88]
mov rcx, qword [rsp + 0x40]
imul rdx, rax, 0x68
mov rax, qword [rdi]
add rdx, qword [rsi + 8]
or rcx, qword [rax + 8]
test byte [rdx + 0x48], 0x20
mov qword [rsp + 0x40], rcx
je 0x1401df154
mov rax, qword [rdx + 0x30]
mov r8d, dword [rdx + 0x40]
mov rcx, qword [rax + 0x20]
lea edx, [r8 - 1]
add edx, dword [rcx]
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401df127
mov dword [rsp + 0x20], edx
mov r9d, r8d
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbx
call fcn.14014f860
mov r15, r12
jmp 0x1401df154
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
lea r15, [rbx + 0x88]
mov rax, qword [r15]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [rdi - 0x5c]
cmp dword [rbx + 0x94], ecx
jg 0x1401df186
mov r8d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x88
xor r9d, r9d
mov rcx, rbx
call fcn.14014f860
lea r12, [rbx + 0x88]
jmp 0x1401df1ae
lea eax, [rcx + 1]
mov r12, r15
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15]
mov dword [rax + rcx*8], 0x88
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov edx, dword [rdi - 0x58]
test edx, edx
je 0x1401df202
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401df1dd
mov r8d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x88
xor r9d, r9d
mov rcx, rbx
call fcn.14014f860
jmp 0x1401df202
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15]
mov dword [rax + rcx*8], 0x88
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
add rdi, 0x70
sub r13, 1
jne 0x1401df0c0
mov r15, qword [rsp + 0x50]
mov rsi, rbp
mov rdi, qword [rsp + 0x60]
test byte [rdi + 0x3c], 0x40
jne 0x1401df4a3
mov rdx, qword [rsp + 0x40]
mov r12d, ebp
or rdx, qword [r15 + 8]
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x40], rdx
cmp dword [rax + 0x84], ebp
jle 0x1401df4a3
mov r13, rbp
mov r10d, 0x8002
mov r9d, 0x2000
mov r8d, 0x48
mov rbx, rax
mov rcx, qword [rbx + 0x90]
add rcx, r13
test word [rcx + 0x12], r10w
je 0x1401df27d
cmp word [rcx + 0x14], r9w
jne 0x1401df499
mov rax, rdx
not rax
test qword [rcx + 0x30], rax
jne 0x1401df485
mov rdx, qword [rcx]
test byte [rdx + 4], 3
jne 0x1401df480
test rdx, rdx
je 0x1401df2b8
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
call fcn.140106ec0
mov rdi, rax
mov r8d, 0x48
jmp 0x1401df2bb
mov rdi, rbp
mov r15, qword [r14]
test rsi, rsi
jne 0x1401df2cb
mov rsi, rdi
jmp 0x1401df46e
test rdi, rdi
je 0x1401df46e
mov eax, dword [rdi + 4]
or eax, dword [rsi + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x1401df3b9
cmp byte [r14 + 0x134], 2
jae 0x1401df3b9
mov r8, rsi
lea rdx, [0x14018e420]
mov rcx, r14
call fcn.1401b3100
mov r8, rdi
lea rdx, [0x14018e420]
mov rcx, r14
call fcn.1401b3100
lea rdx, [rsp + 0x50]
mov dword [rsp + 0x50], ebp
lea rcx, [0x14028c7f8]
call fcn.1401a9810
test eax, eax
mov edi, eax
mov eax, 0x48
mov edx, 0x4a
cmovne edx, eax
mov rcx, r15
call fcn.140186d00
mov rsi, rax
test rax, rax
je 0x1401df46e
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
mov qword [rsi + 0x40], rax
mov byte [rsi], 0x9b
mov word [rsi + 0x32], 0xffff
test edi, edi
je 0x1401df3a0
mov eax, dword [rsp + 0x50]
mov ecx, 0x20800800
test eax, eax
mov dword [rsi + 8], eax
mov edx, 0x10800800
mov dword [rsi + 0x28], 1
cmovne ecx, edx
or dword [rsi + 4], ecx
jmp 0x1401df46e
lea rax, [rsi + 0x48]
mov qword [rsi + 8], rax
mov word [rax], 0x30
mov dword [rsi + 0x28], 1
jmp 0x1401df46e
mov rdx, r8
mov rcx, r15
call fcn.140186d00
mov r15, rax
test rax, rax
je 0x1401df455
xor eax, eax
xorps xmm0, xmm0
movups xmmword [r15], xmm0
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15 + 0x20], xmm0
movups xmmword [r15 + 0x30], xmm0
mov qword [r15 + 0x40], rax
mov byte [r15], 0x2c
mov word [r15 + 0x32], 0xffff
mov qword [r15 + 0x18], rdi
mov ecx, dword [rdi + 4]
and ecx, 0x400208
or ecx, dword [r15 + 4]
mov dword [r15 + 4], ecx
mov edx, dword [rdi + 0x28]
inc edx
mov dword [r15 + 0x28], edx
mov qword [r15 + 0x10], rsi
mov eax, dword [rsi + 4]
and eax, 0x400208
or eax, ecx
mov dword [r15 + 4], eax
mov eax, dword [rsi + 0x28]
cmp eax, edx
jl 0x1401df435
lea edx, [rax + 1]
mov dword [r15 + 0x28], edx
mov rax, qword [r14]
mov r8d, dword [rax + 0x94]
cmp edx, r8d
jle 0x1401df46b
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r14
call fcn.1401897f0
jmp 0x1401df46b
mov rcx, qword [r14]
mov rdx, rsi
call fcn.14018e430
mov rcx, qword [r14]
mov rdx, rdi
call fcn.14018e430
mov rsi, r15
mov r8d, 0x48
mov r9d, 0x2000
mov r10d, 0x8002
mov rdx, qword [rsp + 0x40]
inc r12d
add r13, 0x38
cmp r12d, dword [rbx + 0x84]
jl 0x1401df261
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x60]
mov eax, 1
mov dword [rsp + 0x38], ebp
mov dword [rsp + 0x90], eax
lea rdx, [rsp + 0x90]
mov dword [rsp + 0x94], eax
xor r9d, r9d
movups xmm0, xmmword [rdi]
mov word [rsp + 0x30], 0x1000
mov r8, rsi
mov qword [rsp + 0x28], rbp
mov rcx, r14
movups xmmword [rsp + 0x98], xmm0
mov qword [rsp + 0x20], rbp
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rsp + 0xa8], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rsp + 0xb8], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rsp + 0xc8], xmm1
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rsp + 0xd8], xmm0
movups xmm1, xmmword [rdi + 0x50]
movups xmmword [rsp + 0xe8], xmm1
movsd xmm0, qword [rdi + 0x60]
movsd qword [rsp + 0xf8], xmm0
mov byte [rsp + 0xd4], bpl
inc byte [r14 + 0x26]
call fcn.1401d9570
mov qword [rsp + 0x60], rax
mov r12, rax
lea r15, [0x1402d3cf8]
test rax, rax
je 0x1401df7ed
mov rdx, qword [rsp + 0x78]
mov edx, dword [rdx + 4]
inc dword [r14 + 0x38]
mov rdi, qword [rdi + 0x20]
mov r13d, dword [r14 + 0x38]
mov eax, dword [rax + 0x30]
mov dword [rsp + 0x40], r13d
test byte [rdi + 0x30], 0x80
mov dword [rsp + 0x50], eax
mov qword [rsp + 0x78], rdi
jne 0x1401df5ee
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401df5b6
mov r8d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x87
mov r9d, r13d
mov rcx, rbx
call fcn.14014f860
mov r9d, 1
jmp 0x1401df687
lea eax, [rcx + 1]
mov r9d, 1
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
jmp 0x1401df687
mov rdi, qword [rdi + 0x10]
test rdi, rdi
je 0x1401df609
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x1401df609
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1401df5f7
movzx r9d, word [rdi + 0x5e]
mov dword [rsp + 0x48], r9d
lea eax, [r9 - 1]
add eax, r13d
mov dword [r14 + 0x38], eax
test r9d, r9d
je 0x1401df687
mov r14, qword [rsp + 0x78]
mov r15, rbp
mov r12d, r13d
mov ebp, edx
mov r13d, r9d
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdi + 8]
mov r8d, ebp
mov rdx, r14
mov dword [rsp + 0x20], r12d
mov rcx, rbx
movsx r9d, word [rax + r15*2]
call fcn.14018b010
inc r12d
inc r15
cmp r15, r13
jl 0x1401df640
mov r14, qword [rsp + 0x80]
lea r15, [0x1402d3cf8]
mov r13d, dword [rsp + 0x40]
xor ebp, ebp
mov r12, qword [rsp + 0x60]
mov r9d, dword [rsp + 0x48]
mov r10, qword [rsp + 0x68]
movsxd rdi, dword [rbx + 0x90]
mov edx, dword [r10 + 4]
cmp dword [rbx + 0x94], edi
jg 0x1401df6ca
mov dword [rsp + 0x28], r9d
mov r8d, edx
xor r9d, r9d
mov dword [rsp + 0x20], r13d
mov edx, 0x40
mov rcx, rbx
call fcn.1400f0890
mov r9d, dword [rsp + 0x48]
mov edi, eax
mov r10, qword [rsp + 0x68]
jmp 0x1401df6f7
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xfd40
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r13d
mov dword [rax + rcx*8 + 0x10], r9d
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [r10]
cmp dword [rbx + 0x94], ecx
jg 0x1401df72f
mov dword [rsp + 0x28], r9d
mov r8d, edx
mov r9d, dword [rsp + 0x50]
mov edx, 0x1d
mov rcx, rbx
mov dword [rsp + 0x20], r13d
call fcn.1400f0890
mov r10, qword [rsp + 0x68]
jmp 0x1401df762
mov r8d, dword [rsp + 0x50]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xfd1d
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r13d
mov dword [rax + rcx*8 + 0x10], r9d
mov rax, qword [rbx]
mov edx, dword [rbx + 0x90]
cmp byte [rax + 0x67], 0
je 0x1401df776
mov rax, r15
jmp 0x1401df788
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [r10 + 0xc]
mov r8d, dword [r10 + 8]
cmp dword [rbx + 0x94], ecx
jg 0x1401df7b8
mov r9d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0xa
mov rcx, rbx
call fcn.14014f860
jmp 0x1401df7e5
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, r12
call fcn.1401dd530
test rsi, rsi
je 0x1401df7fd
mov rcx, qword [r14]
mov rdx, rsi
call fcn.14018e430
movsxd rcx, dword [r14 + 0x140]
test ecx, ecx
je 0x1401df828
mov rdx, qword [r14 + 0x10]
mov rax, qword [rdx]
cmp byte [rax + 0x67], 0
jne 0x1401df824
mov rax, qword [rdx + 0x88]
lea rcx, [rcx + rcx*2]
lea r15, [rax + rcx*8]
mov ebp, dword [r15 + 8]
dec byte [r14 + 0x26]
mov dword [r14 + 0x140], ebp
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.14025e200
mov rbx, qword [rsp + 0x158]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret