Function at 0x14029af50
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, 0x3a8
mov rax, qword [rcx + 8]
mov r12, qword [rcx + 0x10]
lea r10, [rsp + 0xf0]
mov rbp, qword [rax + 0x20]
mov r9, rcx
mov qword [rsp + 0x3f8], rdx
mov qword [rsp + 0x400], r8
mov rdx, qword [rcx]
mov rdi, r10
mov ecx, 7
movsxd r8, dword [rax + 0x14]
mov qword [rsp + 0x38], rax
xor eax, eax
rep stosq qword [rdi], rax
movzx eax, byte [r12 + 0x10]
mov rdx, qword [rdx + 8]
imul rax, rax, 0x68
lea rdx, [rdx + rax + 8]
test byte [rdx + 0x3c], 0x10
mov r11d, dword [rdx + 0x44]
jne 0x14029aff8
imul r8, r8, 0x38
lea r13, [rbp + r8]
cmp rbp, r13
jae 0x14029aff8
mov rdi, r13
mov r14, rdx
mov rsi, r9
test byte [rbp + 0x15], 2
je 0x14029afef
mov rdx, qword [rbp + 0x20]
mov rax, qword [rdx + 0x1e8]
and rax, qword [r12 + 8]
jne 0x14029b010
add rbp, 0x38
cmp rbp, rdi
jb 0x14029afd7
xor eax, eax
add rsp, 0x3a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movsxd rax, dword [rdx + 0x14]
mov r15, qword [rdx + 0x20]
imul rax, rax, 0x38
lea rdx, [r15 + rax]
mov rax, qword [rsi]
cmp r15, rdx
mov qword [rsp + 0xb0], rax
mov rax, qword [rsi + 8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsi + 0x20]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsi + 0x28]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsi + 0x30]
mov qword [rsp + 0xe0], rax
lea rax, [rsp + 0x130]
mov qword [rsp + 0xc8], rax
jae 0x14029b5f9
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x80], r12
mov r13d, 1
xor ebx, ebx
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x138]
mov r12, r10
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x3f0], rsi
mov rsi, rdx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x78], rdi
mov dword [rsp + 0xa8], r11d
mov qword [rsp + 0x88], rbp
jmp 0x14029b168
mov rax, qword [r15 + 0x20]
mov qword [rsp + 0xb8], rax
xor eax, eax
mov word [rsp + 0x130], ax
mov rax, qword [r14 + 0x20]
cmp byte [rax + 0x3f], 1
je 0x14029b1d0
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x48]
call sym.whereLoopAddBtree
mov ebx, eax
test ebx, ebx
je 0x14029b1f4
movzx r8d, word [rsp + 0x130]
test r8w, r8w
je 0x14029b5c0
test r13d, r13d
je 0x14029b218
mov word [rsp + 0xf0], r8w
mov rdx, qword [rsp + 0x68]
shl r8, 4
mov rcx, qword [rsp + 0x60]
call sym.memcpy
xor r13d, r13d
add r15, 0x38
cmp r15, rsi
jae 0x14029b4d0
test byte [r15 + 0x15], 4
jne 0x14029b0e0
mov eax, dword [rsp + 0xa8]
cmp dword [r15 + 0x1c], eax
jne 0x14029b15b
mov rax, qword [rsp + 0x38]
movq xmm0, qword [rax]
mov byte [rsp + 0x1c0], 0x2c
lea rax, [rsp + 0x1b0]
mov dword [rsp + 0x1c4], 1
movhps xmm0, qword [rsp + 0x38]
mov qword [rsp + 0x1d0], r15
movaps xmmword [rsp + 0x1b0], xmm0
mov dword [rsp + 0x1cc], 1
jmp 0x14029b0e4
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x48]
call sym.whereLoopAddVirtual
mov ebx, eax
test ebx, ebx
jne 0x14029b120
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0x48]
call sym.whereLoopAddOr
mov ebx, eax
jmp 0x14029b120
movzx r8d, word [rsp + 0xf0]
lea rcx, [rsp + 0x178]
lea rdx, [rsp + 0xf8]
lea rdi, [rsp + 0x170]
mov r13, r8
shl r8, 4
call sym.memcpy
xor r9d, r9d
test r13w, r13w
mov word [rsp + 0xf0], r9w
je 0x14029b158
lea edx, [r13 - 1]
mov rax, rdi
mov qword [rsp + 0x90], r14
shl rdx, 4
mov qword [rsp + 0x98], rsi
lea rdi, [rdi + rdx]
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0x70], rdi
lea rdi, [rsp + 0x138]
mov qword [rsp + 0x28], rdi
lea rdi, [rsp + 0x142]
mov qword [rsp + 0x30], rdi
lea rdi, [rsp + 0x140]
mov dword [rsp + 0xac], ebx
movsx r14d, word [rax + 0x12]
xor ebx, ebx
mov qword [rsp + 0x58], rax
movsx r13d, word [rax + 0x10]
mov rsi, qword [rax + 8]
lea ecx, [r14 + 0x31]
mov ebp, r14d
mov dword [rsp + 0x44], ecx
lea ecx, [r14 + 0x1f]
mov r15d, r13d
mov dword [rsp + 0x54], ecx
lea ecx, [r13 + 0x31]
mov dword [rsp + 0x50], ecx
mov rax, qword [rsp + 0x30]
mov rdx, rbx
shl rdx, 4
movsx r9d, word [rax + rdx]
cmp r9w, bp
mov ecx, r9d
jg 0x14029b3f0
lea ecx, [r9 + 0x31]
cmp ecx, r14d
jl 0x14029b420
lea ecx, [r9 + 0x1f]
cmp ecx, r14d
jge 0x14029b480
lea r9d, [rbp + 1]
movsx r9d, r9w
nop dword [rax + rax]
movsx r8d, word [rdi + rdx]
cmp r8w, r15w
mov ecx, r8d
jg 0x14029b3d0
lea ecx, [r8 + 0x31]
cmp ecx, r13d
jl 0x14029b410
lea ecx, [r8 + 0x1f]
cmp ecx, r13d
jge 0x14029b430
lea r8d, [r15 + 1]
movsx r8d, r8w
nop dword [rax]
mov rcx, qword [rsp + 0x28]
add rbx, 1
mov rax, qword [rcx + rdx]
mov rcx, r12
or rax, rsi
mov rdx, rax
call sym.whereOrInsert.isra.0
movzx ecx, word [rsp + 0x130]
cmp ecx, ebx
jg 0x14029b2e3
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x70], rax
je 0x14029b3a4
add rax, 0x10
test cx, cx
jne 0x14029b2b0
mov r14, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov ebx, dword [rsp + 0xac]
jmp 0x14029b158
cmp dword [rsp + 0x50], r8d
jl 0x14029b360
lea r10d, [r13 + 0x1f]
cmp r10d, r8d
jge 0x14029b4a8
add ecx, 1
movsx r8d, cx
jmp 0x14029b360
cmp dword [rsp + 0x44], r9d
jl 0x14029b328
cmp dword [rsp + 0x54], r9d
jge 0x14029b458
add ecx, 1
movsx r9d, cx
jmp 0x14029b328
mov r8d, r13d
jmp 0x14029b360
mov r9d, r14d
jmp 0x14029b328
lea rax, str._n_n_t_t_b_b_a_a_a
mov ecx, r13d
sub ecx, r8d
movsxd rcx, ecx
movzx r8d, byte [rax + rcx]
add r8d, r15d
movsx r8d, r8w
jmp 0x14029b360
lea rax, str._n_n_t_t_b_b_a_a_a
sub r9d, r14d
movsxd r9, r9d
movzx r9d, byte [rax + r9]
add r9d, ecx
movsx r9d, r9w
jmp 0x14029b328
lea rax, str._n_n_t_t_b_b_a_a_a
mov ecx, r14d
sub ecx, r9d
movsxd rcx, ecx
movzx r9d, byte [rax + rcx]
add r9d, ebp
movsx r9d, r9w
jmp 0x14029b328
lea rax, str._n_n_t_t_b_b_a_a_a
sub r8d, r13d
movsxd r8, r8d
movzx r8d, byte [rax + r8]
add r8d, ecx
movsx r8d, r8w
jmp 0x14029b360
mov r10, r12
mov rdi, qword [rsp + 0x78]
mov r11d, dword [rsp + 0xa8]
mov rbp, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x3f0]
mov r12, qword [rsp + 0x80]
mov rax, qword [r12 + 0x48]
xor r8d, r8d
mov ecx, 1
test ebx, ebx
mov word [r12 + 0x3c], cx
mov qword [rax], rbp
mov dword [r12 + 0x38], 0x2000
mov word [r12 + 0x12], r8w
mov byte [r12 + 0x11], 0
mov qword [r12 + 0x18], 0
mov qword [r12 + 0x20], 0
mov qword [r12 + 0x28], 0
mov qword [r12 + 0x30], 0
jne 0x14029b64c
movzx r13d, word [rsp + 0xf0]
mov rbx, r12
mov r15, r10
mov dword [rsp + 0x28], r11d
mov r12, r10
shl r13, 4
add r13, r10
jmp 0x14029b5a6
movzx eax, word [r15 + 0x10]
mov rcx, rsi
add r15, 0x10
lea edx, [rax + 1]
movzx eax, word [r15 + 2]
movzx edx, dx
shl eax, 0x10
or eax, edx
mov rdx, rbx
mov dword [rbx + 0x14], eax
mov rax, qword [r15 - 8]
mov qword [rbx], rax
call sym.whereLoopInsert
test eax, eax
jne 0x14029affa
cmp r13, r15
jne 0x14029b570
mov r10, r12
mov r11d, dword [rsp + 0x28]
mov r12, rbx
jmp 0x14029afef
xor r13d, r13d
mov r10, r12
mov rdi, qword [rsp + 0x78]
mov r11d, dword [rsp + 0xa8]
mov word [rsp + 0xf0], r13w
mov rbp, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x3f0]
mov r12, qword [rsp + 0x80]
jmp 0x14029b4f8
mov eax, 1
xor edx, edx
mov word [r12 + 0x3c], ax
mov rax, qword [r12 + 0x48]
mov qword [rax], rbp
mov dword [r12 + 0x38], 0x2000
mov word [r12 + 0x12], dx
mov byte [r12 + 0x11], 0
mov qword [r12 + 0x18], 0
mov qword [r12 + 0x20], 0
mov qword [r12 + 0x28], 0
mov qword [r12 + 0x30], 0
jmp 0x14029b54f
mov eax, ebx
jmp 0x14029affa