Function at 0x1401b3d40
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, 0x378
mov r14, qword [rcx + 8]
mov rax, qword [rcx]
mov rbp, qword [rcx + 0x10]
mov r9, qword [r14 + 0x20]
mov qword [rsp + 0x3c8], rdx
mov r13, rcx
mov edx, dword [r14 + 0x14]
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], 0
mov rcx, qword [rax + 8]
movzx eax, byte [rbp + 0x10]
mov qword [rsp + 0x3d0], r8
lea r8, [rax + rax*2]
lea rax, [rax + r8*4]
lea rax, [rcx + rax*8 + 8]
mov qword [rsp + 0x20], rax
test byte [rax + 0x3c], 0x10
jne 0x1401b3e4d
movsxd rax, edx
mov r12, qword [r14 + 0x20]
lea rdx, [rax*8]
sub rdx, rax
lea rdi, [r9 + rdx*8]
cmp rdi, r12
jbe 0x1401b3e4d
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x38], r14
mov r15, rdi
mov r14, r12
mov eax, dword [rax + 0x44]
mov dword [rsp + 0x34], eax
lea rax, [rsp + 0x108]
mov qword [rsp + 0x28], rax
test byte [r14 + 0x15], 2
je 0x1401b3e44
mov rdx, qword [r14 + 0x20]
mov rax, qword [rdx + 0x1e8]
and rax, qword [rbp + 8]
jne 0x1401b3e70
add r14, 0x38
cmp r15, r14
ja 0x1401b3e2c
xor r15d, r15d
mov eax, r15d
add rsp, 0x378
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, qword [rdx + 0x20]
movsxd rdx, dword [rdx + 0x14]
movdqu xmm1, xmmword [r13 + 0x10]
movdqu xmm0, xmmword [r13]
lea rax, [rdx*8]
sub rax, rdx
movaps xmmword [rsp + 0xa0], xmm1
lea rdi, [rsi + rax*8]
mov rax, qword [r13 + 0x20]
movaps xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0xb0], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0xa8], rax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x58], rax
cmp rsi, rdi
jae 0x1401b427c
xor edi, edi
mov qword [rsp + 0x60], r15
lea rax, [rsp + 0x140]
mov dword [rsp + 0x88], 1
mov r15d, edi
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x3c0], r13
jmp 0x1401b3fbb
mov rax, qword [rsi + 0x20]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x20]
xor ebx, ebx
lea r12, [rsp + 0x90]
mov word [rsp + 0x100], bx
mov rax, qword [rax + 0x20]
cmp byte [rax + 0x3f], 1
je 0x1401b4028
mov rdx, qword [rsp + 0x3c8]
mov rcx, r12
call dbg.whereLoopAddBtree
mov r15d, eax
test r15d, r15d
je 0x1401b4050
movzx ebx, word [rsp + 0x100]
test bx, bx
je 0x1401b4251
mov r10d, dword [rsp + 0x88]
test r10d, r10d
je 0x1401b4070
mov rdx, qword [rsp + 0x28]
movzx r8d, bx
lea rcx, [rsp + 0xc8]
mov word [rsp + 0xc0], bx
shl r8, 4
call sym.memcpy
mov dword [rsp + 0x88], 0
add rsi, 0x38
cmp qword [rsp + 0x40], rsi
jbe 0x1401b4190
test byte [rsi + 0x15], 4
jne 0x1401b3f10
mov eax, dword [rsp + 0x34]
cmp dword [rsi + 0x1c], eax
jne 0x1401b3fac
mov rdi, qword [rsp + 0x38]
mov rax, qword [rdi]
mov qword [rsp + 0x188], rdi
mov byte [rsp + 0x190], 0x2c
mov qword [rsp + 0x180], rax
lea rax, [rsp + 0x180]
mov dword [rsp + 0x194], 1
mov dword [rsp + 0x19c], 1
mov qword [rsp + 0x1a0], rsi
mov qword [rsp + 0x98], rax
jmp 0x1401b3f1c
mov r8, qword [rsp + 0x3d0]
mov rdx, qword [rsp + 0x3c8]
mov rcx, r12
call dbg.whereLoopAddVirtual
mov r15d, eax
jmp 0x1401b3f54
mov r8, qword [rsp + 0x3d0]
mov rdx, qword [rsp + 0x3c8]
mov rcx, r12
call dbg.whereLoopAddOr
mov r15d, eax
jmp 0x1401b3f5d
lea rcx, [rsp + 0x148]
lea rdx, [rsp + 0xc8]
movzx r8d, word [rsp + 0xc0]
mov rbp, r8
shl r8, 4
call sym.memcpy
xor r9d, r9d
mov word [rsp + 0xc0], r9w
test bp, bp
je 0x1401b3fac
mov rcx, qword [rsp + 0x78]
lea eax, [rbp - 1]
mov qword [rsp + 0x80], rsi
lea r14, [rsp + 0x112]
shl rax, 4
mov dword [rsp + 0x8c], r15d
add rax, rcx
mov rdi, rcx
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x110]
mov r15, rax
test bx, bx
je 0x1401b415b
movsx r13d, word [rdi + 0x12]
mov rbp, qword [rdi + 8]
mov qword [rsp + 0x48], rdi
xor ebx, ebx
movsx r12d, word [rdi + 0x10]
mov rdi, qword [rsp + 0x28]
lea rsi, [rsp + 0xc0]
mov r11, rbx
mov ecx, r13d
add rbx, 1
shl r11, 4
movsx edx, word [r14 + r11]
call sym.sqlite3LogEstAdd
movsx edx, word [r15 + r11]
mov ecx, r12d
mov r10d, eax
call sym.sqlite3LogEstAdd
mov rdx, qword [rdi + r11]
movsx r9d, r10w
mov rcx, rsi
movsx r8d, ax
or rdx, rbp
call sym.whereOrInsert.isra.0
movzx eax, word [rsp + 0x100]
cmp eax, ebx
jg 0x1401b410b
mov rdi, qword [rsp + 0x48]
cmp qword [rsp + 0x50], rdi
je 0x1401b4178
movzx ebx, word [rsp + 0x100]
add rdi, 0x10
jmp 0x1401b40e4
mov rsi, qword [rsp + 0x80]
mov r15d, dword [rsp + 0x8c]
jmp 0x1401b3fac
mov edi, r15d
mov rbp, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
mov r15, qword [rsp + 0x60]
mov r13, qword [rsp + 0x3c0]
mov rax, qword [rbp + 0x48]
mov ecx, 1
xor r8d, r8d
mov word [rbp + 0x3c], cx
mov qword [rax], r14
mov rax, qword [rsp + 0x58]
mov dword [rbp + 0x38], 0x2000
mov word [rbp + 0x12], r8w
mov byte [rbp + 0x11], 0
mov qword [rbp + 0x18], 0
mov qword [rbp + 0x20], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
test edi, edi
jne 0x1401b42c7
lea rbx, [rsp + 0xc0]
xor esi, esi
nop dword [rax]
movzx eax, word [rsp + 0xc0]
cmp eax, esi
jle 0x1401b3e44
movzx eax, word [rbx + 0x10]
mov rdx, rbp
mov rcx, r13
add esi, 1
add rbx, 0x10
add eax, 1
mov word [rbp + 0x14], ax
movzx eax, word [rbx + 2]
mov word [rbp + 0x16], ax
mov rax, qword [rbx - 8]
mov qword [rbp], rax
call dbg.whereLoopInsert
test eax, eax
je 0x1401b4208
mov r15d, eax
jmp 0x1401b3e50
xor r11d, r11d
mov edi, r15d
mov rbp, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
mov word [rsp + 0xc0], r11w
mov r15, qword [rsp + 0x60]
mov r13, qword [rsp + 0x3c0]
jmp 0x1401b41aa
mov eax, 1
xor edx, edx
mov word [rbp + 0x3c], ax
mov rax, qword [rbp + 0x48]
mov qword [rax], r14
mov rax, qword [rsp + 0x58]
mov dword [rbp + 0x38], 0x2000
mov word [rbp + 0x12], dx
mov byte [rbp + 0x11], 0
mov qword [rbp + 0x18], 0
mov qword [rbp + 0x20], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
jmp 0x1401b41fa
mov r15d, edi
jmp 0x1401b3e50