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

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x30
mov rbp, qword [rcx + 0x180]
mov r14, r8
mov qword [rsp + 0x88], rbp
mov r13, rcx
test rbp, rbp
je 0x140086acb
cmp qword [r8 + 8], 0
jne 0x140086acb
mov rsi, qword [r8 + 0x10]
lea r15, [0x1402e82e0]
nop word [rax + rax]
movsxd rdi, dword [rbp]
xor ebx, ebx
xor r10d, r10d
test rdi, rdi
jle 0x140086ab6
lea r11, [rbp + 0x10]
nop word [rax + rax]
mov r9, qword [r11]
mov rax, rsi
sub r9, rsi
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [r9 + rax]
cmp edx, ecx
jne 0x140086a90
test edx, edx
jne 0x140086a9f
lea rcx, [rbx + rbx*2]
shl rcx, 4
lea r15, [rbp + 0x10]
add r15, rcx
je 0x140086acb
mov rdi, qword [r13]
lea ebp, [rdx - 1]
mov rdx, qword [r15 + 0x18]
test rdx, rdx
je 0x140086adc
mov r8, qword [r15]
mov rcx, r13
call fcn.140007d30
mov eax, 2
add rsp, 0x30
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
movzx r8d, byte [rcx + r15]
movzx edx, byte [rdx + r15]
cmp edx, r8d
jne 0x140086aa4
inc rax
jmp 0x140086a40
inc ebx
inc r10
add r11, 0x30
cmp r10, rdi
jl 0x140086a30
mov rbp, qword [rbp + 8]
mov qword [rsp + 0x88], rbp
test rbp, rbp
jne 0x140086a10
xor eax, eax
add rsp, 0x30
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
test byte [r14 + 0x40], 4
je 0x140086aef
mov r8, rsi
lea rdx, str._s_is_not_a_function
jmp 0x140086a74
test rdi, rdi
je 0x140086b03
mov edx, 0x78
mov rcx, rdi
call fcn.1400048c0
jmp 0x140086b0d
mov ecx, 0x78
call fcn.140004220
mov rsi, rax
test rax, rax
je 0x140086a7c
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
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x60], xmm0
mov qword [rsi + 0x70], rax
mov rbx, qword [r15 + 0x20]
test rbx, rbx
jne 0x140086bd2
test rdi, rdi
je 0x140086b5c
lea edx, [rax + 0x14]
mov rcx, rdi
call fcn.1400048c0
jmp 0x140086b66
mov ecx, reloc.WS2_32.dll_sendto
call fcn.140004220
mov rbx, rax
test rax, rax
je 0x140086d39
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov dword [rbx + 0x10], eax
mov qword [r15 + 0x20], rbx
mov rcx, qword [r13]
test rcx, rcx
je 0x140086b94
lea edx, [rax + 0x18]
call fcn.1400048c0
jmp 0x140086b9e
mov ecx, Ordinal_26
call fcn.140004220
mov rcx, rax
test rax, rax
je 0x140086cd1
mov rax, qword [r13 + 0x188]
mov qword [rcx], rax
lea rax, [fcn.140004550]
mov qword [r13 + 0x188], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], rbx
movzx eax, byte [r15 + 0x28]
mov byte [rbx + 0x12], al
mov qword [r14 + 0x20], rsi
mov rcx, rdi
mov dword [rsi + 0x3c], 1
mov rdx, qword [r15]
call fcn.140004c30
or dword [rsi + 0x40], 0x4200
xor r8d, r8d
mov qword [rsi], rax
mov rcx, rdi
mov eax, 0xc8
mov word [rsi + 0x44], bp
mov word [rsi + 0x4a], ax
mov rdx, qword [r15 + 0x10]
call fcn.140044780
mov qword [r14 + 0x28], rax
cmp byte [rdi + 0x63], 0
jne 0x140086a7c
or dword [r14 + 0x40], 0x80
mov qword [r14 + 0x68], rbx
inc dword [rbx]
cmp dword [rbx], 2
jl 0x140086c39
cmp byte [rbx + 0x12], 1
jne 0x140086c39
mov byte [rbx + 0x12], 0
mov r14, qword [r14 + 0x28]
mov qword [rsp + 0x80], r12
mov rdi, r14
movzx ecx, byte [r14]
lea eax, [rcx + 0x7b]
cmp al, 1
jbe 0x140086db0
xor r12d, r12d
mov rbp, qword [rsp + 0x88]
lea rax, str.circular_reference:__s
mov qword [r15 + 0x18], rax
mov rbx, qword [r13 + 0x180]
mov qword [r13 + 0x180], rbp
test dword [r14 + 4], 0x2000
je 0x140086e93
mov rax, qword [r14 + 0x68]
mov rdx, rdi
mov rcx, qword [rsp + 0x78]
mov qword [rdi + 0x68], rax
call fcn.14003ed50
mov qword [rdi + 0x68], 0
test eax, eax
je 0x140086eac
mov qword [r13 + 0x180], rbx
mov eax, 2
mov r12, qword [rsp + 0x80]
add rsp, 0x30
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, qword [r13]
test rcx, rcx
je 0x140086d2f
cmp qword [rcx + 0x2e0], 0
je 0x140086cee
mov rdx, rbx
call fcn.140004480
jmp 0x140086d3d
cmp rbx, qword [rcx + 0x1d0]
jae 0x140086d2f
cmp rbx, qword [rcx + 0x1c0]
jb 0x140086d13
mov rax, qword [rcx + 0x1b8]
mov qword [rbx], rax
mov qword [rcx + 0x1b8], rbx
jmp 0x140086d3d
cmp rbx, qword [rcx + 0x1c8]
jb 0x140086d2f
mov rax, qword [rcx + 0x1a8]
mov qword [rbx], rax
mov qword [rcx + 0x1a8], rbx
jmp 0x140086d3d
mov rcx, rbx
call fcn.140004410
jmp 0x140086d3d
mov qword [r15 + 0x20], rbx
test rdi, rdi
je 0x140086da3
cmp qword [rdi + 0x2e0], 0
je 0x140086d5c
mov rdx, rsi
mov rcx, rdi
call fcn.140004480
jmp 0x140086a7c
cmp rsi, qword [rdi + 0x1d0]
jae 0x140086da3
cmp rsi, qword [rdi + 0x1c0]
jb 0x140086d84
mov rax, qword [rdi + 0x1b8]
mov qword [rsi], rax
mov qword [rdi + 0x1b8], rsi
jmp 0x140086a7c
cmp rsi, qword [rdi + 0x1c8]
jb 0x140086da3
mov rax, qword [rdi + 0x1a8]
mov qword [rsi], rax
mov qword [rdi + 0x1a8], rsi
jmp 0x140086a7c
mov rcx, rsi
call fcn.140004410
jmp 0x140086a7c
mov r12d, 1
cmp cl, byte [r14]
jne 0x140086c5a
mov rbx, qword [rdi + 0x28]
xor r11d, r11d
cmp dword [rbx], r11d
jle 0x140086e3b
lea r9, [rbx + 0x48]
nop
cmp qword [r9 - 0x38], 0
jne 0x140086e2f
mov r8, qword [r9 - 0x30]
test r8, r8
je 0x140086e2f
mov r10, qword [r15]
sub r10, r8
nop word [rax + rax]
movzx ecx, byte [r8]
movzx eax, byte [r10 + r8]
cmp ecx, eax
jne 0x140086e57
test ecx, ecx
jne 0x140086e74
mov qword [r9 - 0x20], rsi
inc dword [rsi + 0x3c]
or dword [r9], 0x20
mov eax, dword [rdi + 4]
bt eax, 0xd
jb 0x140086e7c
bts eax, 0xd
mov dword [rdi + 4], eax
test ebp, ebp
jns 0x140086e2b
mov ebp, dword [r13 + 0x34]
lea eax, [rbp + 1]
mov dword [r13 + 0x34], eax
mov dword [r9 + 4], ebp
inc r11d
add r9, 0x70
cmp r11d, dword [rbx]
jl 0x140086dd0
test dword [rdi + 4], 0x2000
je 0x140086c5a
mov rax, qword [rdi + 0x50]
mov rdi, rax
movzx ecx, byte [rax]
jmp 0x140086db6
lea rdx, [0x1402e82e0]
movzx edx, byte [rax + rdx]
mov rax, rcx
lea rcx, [0x1402e82e0]
movzx ecx, byte [rax + rcx]
cmp ecx, edx
jne 0x140086e2f
inc r8
jmp 0x140086df0
mov r8, qword [r15]
lea rdx, str.multiple_references_to_recursive_table:__s
mov rcx, r13
call fcn.140007d30
jmp 0x140086cb5
mov rdi, qword [rsp + 0x78]
mov rdx, r14
mov rcx, rdi
call fcn.14003ed50
test eax, eax
je 0x140086eb1
jmp 0x140086cae
mov rdi, qword [rsp + 0x78]
mov qword [r13 + 0x180], rbp
mov rcx, r14
mov rax, qword [r14 + 0x50]
test rax, rax
je 0x140086ed0
mov rcx, rax
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x140086ec4
mov rax, qword [r15 + 8]
mov rdx, qword [rcx + 0x20]
test rax, rax
je 0x140086f0a
test rdx, rdx
je 0x140086f07
mov ecx, dword [rax]
mov r9d, dword [rdx]
cmp r9d, ecx
je 0x140086f07
mov r8, qword [r15]
lea rdx, str.table__s_has__d_values_for__d_columns
mov dword [rsp + 0x20], ecx
mov rcx, r13
call fcn.140007d30
jmp 0x140086cae
mov rdx, rax
lea r9, [rsi + 8]
mov rcx, r13
lea r8, [rsi + 0x46]
call fcn.140080970
test r12d, r12d
je 0x140086f48
test dword [r14 + 4], 0x2000
lea rdx, str.recursive_reference_in_a_subquery:__s
lea rcx, str.multiple_recursive_references:__s
cmove rcx, rdx
mov rdx, r14
mov qword [r15 + 0x18], rcx
mov rcx, rdi
call fcn.14003ed50
mov qword [r15 + 0x18], 0
mov eax, 1
mov qword [r13 + 0x180], rbx
jmp 0x140086cba