Function at 0x1401a2f70
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, 0x100
mov rax, qword [0x140245028]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov r14, qword [rcx]
mov rax, r8
mov r13, rcx
mov qword [rsp + 0x50], rcx
mov rcx, qword [r8 + 0x38]
xor r8d, r8d
mov qword [rsp + 0x60], rax
mov ebx, r8d
mov r15, qword [rax + 0x60]
mov r12d, r8d
movzx eax, byte [rax + 0x40]
lea r8, str.RIGHT_JOIN__s
mov rsi, qword [r14 + 0x10]
movsxd rdi, edx
mov qword [rsp + 0x70], rcx
imul rcx, rax, 0x68
mov rax, qword [r13 + 8]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x58], rsi
mov r9, qword [rcx + rax + 0x28]
lea rdx, [rax + 8]
add rdx, rcx
mov eax, 1
mov qword [rsp + 0x48], rdx
mov rcx, r14
mov edx, eax
mov dword [rsp + 0x44], eax
mov r9, qword [r9]
call fcn.140128ff0
mov rbp, rdi
test edi, edi
jle 0x1401a30ea
lea rdi, [r13 + 0x364]
xor r14d, r14d
mov rax, qword [rdi + 0x5c]
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [rdi]
or r12, qword [rax + 8]
cmp dword [rsi + 0x94], ecx
jg 0x1401a3055
mov r8d, edx
mov dword [rsp + 0x20], r14d
mov edx, 0x88
xor r9d, r9d
mov rcx, rsi
call fcn.140128980
jmp 0x1401a307e
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x88
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], r14
mov qword [rax + rcx*8 + 0x10], r14
mov edx, dword [rdi + 4]
test edx, edx
je 0x1401a30d7
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1401a30ae
mov r8d, edx
mov dword [rsp + 0x20], r14d
mov edx, 0x88
xor r9d, r9d
mov rcx, rsi
call fcn.140128980
jmp 0x1401a30d7
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x88
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], r14
mov qword [rax + rcx*8 + 0x10], r14
add rdi, 0x70
sub rbp, 1
jne 0x1401a3022
mov r14, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x48]
test byte [rdi + 0x3c], 0x40
jne 0x1401a33e5
mov rax, qword [rsp + 0x50]
xor r13d, r13d
or r12, qword [r15 + 8]
cmp dword [rax + 0x84], ebx
jle 0x1401a33e5
xor edi, edi
lea r8d, [r13 + 0x48]
mov esi, edi
mov edx, 0x2000
mov r9d, 0x8002
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rax + 0x90]
add rcx, rsi
test word [rcx + 0x12], r9w
je 0x1401a314b
cmp word [rcx + 0x14], dx
jne 0x1401a33db
mov rax, r12
not rax
test qword [rcx + 0x30], rax
jne 0x1401a33b6
mov rdx, qword [rcx]
test byte [rdx + 4], 3
jne 0x1401a33b1
test rdx, rdx
je 0x1401a3186
mov rcx, qword [r14]
xor r9d, r9d
xor r8d, r8d
call fcn.140143170
mov rbp, rax
mov r8d, 0x48
jmp 0x1401a3189
mov rbp, rdi
mov r15, qword [r14]
test rbx, rbx
jne 0x1401a3199
mov rbx, rbp
jmp 0x1401a33b1
test rbp, rbp
je 0x1401a33b1
mov eax, dword [rbp + 4]
or eax, dword [rbx + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x1401a3309
cmp byte [r14 + 0x12c], 2
jae 0x1401a3309
test r15, r15
je 0x1401a31da
mov edx, 0x18
mov rcx, r15
call fcn.1400fc6d0
jmp 0x1401a31e4
mov ecx, 0x18
call fcn.1400fbf20
mov rcx, rax
test rax, rax
je 0x1401a320e
mov rax, qword [r14 + 0xc0]
mov qword [rcx], rax
mov qword [r14 + 0xc0], rcx
mov qword [rcx + 8], rbx
lea rbx, [fcn.140142fc0]
mov qword [rcx + 0x10], rbx
jmp 0x1401a3220
mov rcx, qword [r14]
mov rdx, rbx
call fcn.140142f10
lea rbx, [fcn.140142fc0]
mov rcx, qword [r14]
test rcx, rcx
je 0x1401a3234
mov edx, 0x18
call fcn.1400fc6d0
jmp 0x1401a323e
mov ecx, 0x18
call fcn.1400fbf20
mov rcx, rax
test rax, rax
je 0x1401a3261
mov rax, qword [r14 + 0xc0]
mov qword [rcx], rax
mov qword [r14 + 0xc0], rcx
mov qword [rcx + 8], rbp
mov qword [rcx + 0x10], rbx
jmp 0x1401a326c
mov rcx, qword [r14]
mov rdx, rbp
call fcn.140142f10
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x40], edi
lea rcx, [0x1401f7ebc]
call fcn.1401014a0
test eax, eax
mov edi, eax
mov eax, 0x48
mov edx, 0x4a
cmovne edx, eax
mov rcx, r15
call fcn.1400fc6d0
mov rbx, rax
test rax, rax
je 0x1401a33af
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov byte [rbx], 0x9b
mov word [rbx + 0x32], 0xffff
test edi, edi
je 0x1401a32f0
mov eax, dword [rsp + 0x40]
mov ecx, 0x20800800
test eax, eax
mov dword [rbx + 8], eax
mov edx, 0x10800800
mov dword [rbx + 0x28], 1
cmovne ecx, edx
or dword [rbx + 4], ecx
jmp 0x1401a33af
lea rax, [rbx + 0x48]
mov qword [rbx + 8], rax
mov word [rax], 0x30
mov dword [rbx + 0x28], 1
jmp 0x1401a33af
mov rdx, r8
mov rcx, r15
call fcn.1400fc6d0
mov rdi, rax
test rax, rax
je 0x1401a3396
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
mov byte [rdi], 0x2c
mov word [rdi + 0x32], 0xffff
mov qword [rdi + 0x18], rbp
mov edx, dword [rbp + 4]
and edx, 0x400208
or edx, dword [rdi + 4]
mov dword [rdi + 4], edx
mov ecx, dword [rbp + 0x28]
inc ecx
mov dword [rdi + 0x28], ecx
mov qword [rdi + 0x10], rbx
mov eax, dword [rbx + 4]
and eax, 0x400208
or eax, edx
mov dword [rdi + 4], eax
mov eax, dword [rbx + 0x28]
cmp eax, ecx
jl 0x1401a3375
inc eax
mov dword [rdi + 0x28], eax
mov rax, qword [r14]
mov r8d, dword [rax + 0x94]
cmp dword [rdi + 0x28], r8d
jle 0x1401a33ac
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r14
call fcn.1401000b0
jmp 0x1401a33ac
mov rcx, qword [r14]
mov rdx, rbx
call fcn.140142f10
mov rcx, qword [r14]
mov rdx, rbp
call fcn.140142f10
mov rbx, rdi
xor edi, edi
mov edx, 0x2000
mov rax, qword [rsp + 0x50]
inc r13d
add rsi, 0x38
mov r8d, 0x48
mov r9d, 0x8002
cmp r13d, dword [rax + 0x84]
jl 0x1401a3130
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x48]
mov eax, 1
lea rdx, [rsp + 0x80]
mov dword [rsp + 0x80], eax
xor r12d, r12d
mov dword [rsp + 0x84], eax
xor r9d, r9d
movups xmm0, xmmword [rdi]
mov dword [rsp + 0x38], r12d
mov r8, rbx
mov word [rsp + 0x30], 0x1000
mov rcx, r14
movups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x28], r12
movups xmm1, xmmword [rdi + 0x10]
mov qword [rsp + 0x20], r12
movups xmmword [rsp + 0x98], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rsp + 0xa8], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rsp + 0xb8], xmm1
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rsp + 0xc8], xmm0
movups xmm1, xmmword [rdi + 0x50]
movups xmmword [rsp + 0xd8], xmm1
movsd xmm0, qword [rdi + 0x60]
movsd qword [rsp + 0xe8], xmm0
mov byte [rsp + 0xc4], 0
inc byte [r14 + 0x26]
call fcn.1401afec0
mov qword [rsp + 0x58], rax
mov r15, rax
lea rbp, [0x14024eeb0]
test rax, rax
je 0x1401a36dd
mov r12d, dword [r14 + 0x38]
mov r8, qword [rsp + 0x60]
inc r12d
mov dword [rsp + 0x50], r12d
mov r8d, dword [r8 + 4]
mov dword [r14 + 0x38], r12d
mov r13, qword [rdi + 0x20]
mov eax, dword [rax + 0x30]
mov dword [rsp + 0x40], eax
test byte [r13 + 0x30], 0x80
jne 0x1401a34ec
mov r9d, 0xffffffff
mov dword [rsp + 0x20], r12d
mov rdx, r13
mov rcx, rsi
call fcn.140148620
mov r9d, 1
jmp 0x1401a3572
mov rdi, qword [r13 + 0x10]
test rdi, rdi
je 0x1401a3507
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x1401a3507
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1401a34f5
movzx r9d, word [rdi + 0x5e]
mov dword [rsp + 0x44], r9d
lea eax, [r9 - 1]
add eax, r12d
mov dword [r14 + 0x38], eax
test r9d, r9d
je 0x1401a3572
mov r15d, r12d
xor ebp, ebp
mov r12d, r8d
mov r14d, r9d
nop dword [rax]
mov rax, qword [rdi + 8]
mov r8d, r12d
mov rdx, r13
mov dword [rsp + 0x20], r15d
mov rcx, rsi
movsx r9d, word [rax + rbp*2]
call fcn.140148620
inc r15d
inc rbp
cmp rbp, r14
jl 0x1401a3530
mov r14, qword [rsp + 0x68]
lea rbp, [0x14024eeb0]
mov r12d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
mov r9d, dword [rsp + 0x44]
mov r13, qword [rsp + 0x70]
movsxd rdi, dword [rsi + 0x90]
mov edx, dword [r13 + 4]
cmp dword [rsi + 0x94], edi
jg 0x1401a35b2
mov dword [rsp + 0x28], r9d
mov r8d, edx
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov rcx, rsi
lea edx, [r9 + 0x40]
call fcn.1401289e0
mov r9d, dword [rsp + 0x44]
mov edi, eax
xor r10d, r10d
jmp 0x1401a35e3
lea rcx, [rdi + rdi*2]
xor r10d, r10d
lea eax, [rdi + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0xfd40
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], r12d
mov dword [rax + rcx*8 + 0x10], r9d
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r13]
cmp dword [rsi + 0x94], ecx
jg 0x1401a361a
mov dword [rsp + 0x28], r9d
mov r8d, edx
mov r9d, dword [rsp + 0x40]
mov edx, 0x1d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.1401289e0
xor r10d, r10d
jmp 0x1401a364d
mov r8d, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 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], r12d
mov dword [rax + rcx*8 + 0x10], r9d
mov rax, qword [rsi]
mov edx, dword [rsi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1401a3661
mov rax, rbp
jmp 0x1401a3673
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r13 + 0xc]
mov r8d, dword [r13 + 8]
cmp dword [rsi + 0x94], ecx
jg 0x1401a36a4
mov r9d, edx
mov dword [rsp + 0x20], r10d
mov edx, 0xa
mov rcx, rsi
call fcn.140128980
jmp 0x1401a36d2
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 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], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov rcx, r15
call fcn.1401b0f20
xor r12d, r12d
test rbx, rbx
je 0x1401a36ed
mov rcx, qword [r14]
mov rdx, rbx
call fcn.140142f10
movsxd rcx, dword [r14 + 0x138]
test ecx, ecx
jne 0x1401a3701
mov dword [r14 + 0x138], r12d
jmp 0x1401a3727
mov rdx, qword [r14 + 0x10]
mov rax, qword [rdx]
cmp byte [rax + 0x67], 0
jne 0x1401a371d
mov rax, qword [rdx + 0x88]
lea rcx, [rcx + rcx*2]
lea rbp, [rax + rcx*8]
mov eax, dword [rbp + 8]
mov dword [r14 + 0x138], eax
dec byte [r14 + 0x26]
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.1401cd610
mov rbx, qword [rsp + 0x148]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret