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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov r13d, dword [rsp + 0x100]
mov r12, rdx
mov r15, qword [rcx]
mov rdx, rcx
mov dword [rsp + 0x48], r13d
mov dil, 1
inc r13d
mov qword [rsp + 0x80], r15
mov dword [rsp + 0x54], r13d
inc r13d
mov rbx, qword [rdx + 0x10]
mov dword [rsp + 0x4c], r13d
inc r13d
mov r14d, r13d
mov dword [rsp + 0x44], r13d
lea ebp, [r13 + 1]
add r13d, 2
mov dword [rsp + 0x68], r13d
inc r13d
mov dword [rsp + 0x64], r13d
inc r13d
cmp dword [rdx + 0x38], r13d
mov ecx, r13d
mov dword [rsp + 0x58], ebp
cmovg ecx, dword [rdx + 0x38]
mov dword [rdx + 0x38], ecx
test rbx, rbx
jne 0x1400d7609
mov rcx, rdx
call fcn.1400d6160
mov rbx, rax
test rax, rax
je 0x1400d80c4
test r12, r12
je 0x1400d80c4
cmp dword [r12 + 0x38], 0
je 0x1400d80c4
mov rdx, qword [r12]
lea r8, [0x14020243c]
xor r9d, r9d
lea rcx, str.sqlite__
call fcn.1400f85d0
test eax, eax
je 0x1400d80c4
mov rdx, qword [r12 + 0x70]
mov rcx, r15
mov qword [rsp + 0x98], rsi
call fcn.140128160
mov rcx, qword [r15 + 0x20]
xor r9d, r9d
mov r15, qword [rsp + 0xe0]
mov r8, qword [r12]
movsxd rsi, eax
mov rdx, rsi
mov dword [rsp + 0x5c], esi
shl rdx, 5
mov rdx, qword [rdx + rcx]
mov rcx, r15
mov qword [rsp + 0x20], rdx
lea edx, [r9 + 0x1c]
call fcn.140102640
test eax, eax
jne 0x1400d80bc
mov rax, qword [r12]
xor r9d, r9d
mov r8d, dword [r12 + 0x38]
mov edx, esi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.14012ce00
mov ecx, dword [rsp + 0x108]
mov r9, r12
mov r8d, dword [rsp + 0x5c]
mov edx, ecx
mov dword [rsp + 0x7c], ecx
inc ecx
mov esi, ecx
mov dword [rsp + 0x40], ecx
inc ecx
mov dword [rsp + 0x20], 0x68
cmp dword [r15 + 0x34], ecx
cmovg ecx, dword [r15 + 0x34]
mov dword [r15 + 0x34], ecx
mov rcx, r15
call fcn.14011e330
mov r8, qword [r12]
mov edx, ebp
mov rcx, rbx
call fcn.14013a740
mov rbp, qword [r12 + 0x10]
mov qword [rsp + 0x70], rbp
test rbp, rbp
je 0x1400d7fd5
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x1400d7721
cmp rax, rbp
jne 0x1400d7fc3
xor ecx, ecx
movzx eax, dil
cmp qword [rbp + 0x48], rcx
cmovne ecx, eax
test byte [r12 + 0x48], 0x20
mov byte [rsp + 0x100], cl
je 0x1400d77fb
mov eax, dword [rbp + 0x64]
and al, 3
cmp al, 2
jne 0x1400d77fb
movzx edi, word [rbp + 0x5e]
mov r8, qword [r12]
lea r12d, [rdi - 1]
mov edx, dword [rsp + 0x68]
mov rcx, rbx
call fcn.14013a740
mov eax, dword [rsp + 0x5c]
lea ecx, [r12 + r13]
cmp dword [r15 + 0x38], ecx
mov r8d, esi
mov edx, 0x68
mov dword [rsp + 0x20], eax
cmovg ecx, dword [r15 + 0x38]
mov dword [r15 + 0x38], ecx
mov rcx, rbx
mov r9d, dword [rbp + 0x58]
call fcn.1401318b0
mov rdx, rbp
mov rcx, r15
call fcn.14013ce80
mov r15d, dword [rsp + 0x54]
mov r8d, edi
mov edx, 0x4c
mov rcx, rbx
lea esi, [r15 + 1]
mov r9d, esi
call fcn.140131840
movzx r8d, word [rbp + 0x5e]
lea r9d, [r15 + 2]
mov edx, 0x4c
mov rcx, rbx
call fcn.140131840
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400d781a
xor r8d, r8d
mov dword [rsp + 0x20], r15d
mov r9d, esi
mov rcx, rbx
lea edx, [r8 + 0x59]
call fcn.1400eec90
mov edx, eax
jmp 0x1400d784c
test byte [rbp + 0x64], 8
movzx edi, word [rbp + 0x60]
mov r8, qword [rbp]
je 0x1400d7756
movzx r12d, word [rbp + 0x5e]
dec r12d
jmp 0x1400d775a
lea rcx, [rdx + rdx*2]
xor r8d, r8d
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x59
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rbx]
cmp byte [rcx + 0x55], 0
je 0x1400d7868
lea r8, [0x1402025e8]
mov edx, 0xfffffffc
call fcn.1400eb850
jmp 0x1400d78b0
test edx, edx
jns 0x1400d7874
mov edx, dword [rbx + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400d78a1
mov r9d, 0xfffffffc
lea r8, [0x1402025e8]
mov rcx, rbx
call fcn.140147f80
jmp 0x1400d78b0
lea rax, [0x1402025e8]
mov byte [rdx + 1], 0xfc
mov qword [rdx + 0x10], rax
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x1400d78cc
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov byte [rax + rdx*8 + 3], 2
mov edi, dword [rsp + 0x40]
mov edx, 0x39
mov r8d, edi
mov rcx, rbx
call fcn.1401317d0
mov r9d, dword [rsp + 0x4c]
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x50], eax
mov r15d, eax
lea edx, [r8 + 0x4c]
call fcn.140131840
mov esi, dword [rbx + 0xb8]
test r12d, r12d
jle 0x1400d7c7e
mov rcx, rbx
call fcn.14013a810
mov rcx, qword [rsp + 0x80]
mov r15d, eax
movsxd rdx, r12d
shl rdx, 2
mov dword [rsp + 0x78], eax
call fcn.14010b530
mov qword [rsp + 0x88], rax
mov r14, rax
test rax, rax
je 0x1400d7f9c
mov edx, 0xd
mov rcx, rbx
call fcn.140131760
mov eax, dword [rbx + 0xb8]
mov dword [rsp + 0x60], eax
cmp r12d, 1
jne 0x1400d797e
cmp word [rbp + 0x5e], r12w
jne 0x1400d797e
cmp byte [rbp + 0x62], 0
je 0x1400d797e
mov r9d, r15d
lea edx, [r12 + 0x22]
mov r8d, r13d
mov rcx, rbx
call fcn.140131840
xor esi, esi
test r12d, r12d
jle 0x1400d7ae2
xor r15d, r15d
nop dword [rax]
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [r15 + rdx]
call fcn.14011d2d0
mov r9d, dword [rsp + 0x4c]
mov r8d, esi
mov edx, 0x4c
mov rcx, rbx
mov rbp, rax
call fcn.140131840
mov eax, dword [rsp + 0x44]
mov r9d, esi
mov r8d, edi
mov dword [rsp + 0x20], eax
mov edx, 0x60
mov rcx, rbx
call fcn.1401318b0
mov rcx, qword [rbx + 0x18]
movsxd rdi, dword [rbx + 0xb8]
cmp dword [rcx + 0x3c], edi
jg 0x1400d7a08
mov r8d, dword [rsp + 0x44]
lea eax, [rsi + r13]
xor r9d, r9d
mov dword [rsp + 0x20], eax
mov rcx, rbx
lea edx, [r9 + 0x24]
call fcn.1400eec90
mov edi, eax
jmp 0x1400d7a3f
lea eax, [rdi + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rdi + rdi*2]
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x24
mov byte [rax + rcx*8 + 3], 0
lea rdx, [rax + rcx*8]
mov eax, dword [rsp + 0x44]
xor ecx, ecx
mov dword [rdx + 4], eax
lea eax, [rsi + r13]
mov dword [rdx + 8], ecx
mov dword [rdx + 0xc], eax
mov qword [rdx + 0x10], rcx
mov rcx, qword [rbx]
mov eax, edi
cmp byte [rcx + 0x55], 0
je 0x1400d7a59
mov r8, rbp
mov edx, 0xfffffffd
call fcn.1400eb850
jmp 0x1400d7a9a
test edi, edi
jns 0x1400d7a65
mov eax, dword [rbx + 0xb8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400d7a8d
mov r9d, 0xfffffffd
mov r8, rbp
mov rcx, rbx
call fcn.140147f80
jmp 0x1400d7a9a
test rbp, rbp
je 0x1400d7a9a
mov qword [rdx + 0x10], rbp
mov byte [rdx + 1], 0xfd
mov dword [r14], edi
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x1400d7ab9
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov byte [rax + rdx*8 + 3], 0x80
mov rbp, qword [rsp + 0x70]
inc esi
mov edi, dword [rsp + 0x40]
add r15, 8
add r14, 4
cmp esi, r12d
jl 0x1400d7990
mov r14, qword [rsp + 0x88]
mov r15d, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x4c]
mov r8d, r12d
mov edx, 0x4c
mov rcx, rbx
call fcn.140131840
mov edx, r15d
mov rcx, rbx
call fcn.140139a80
mov esi, dword [rsp + 0x60]
mov edx, dword [rbx + 0xb8]
lea ecx, [rsi - 1]
test ecx, ecx
jns 0x1400d7b16
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
je 0x1400d7b28
lea rax, [0x1402865b8]
jmp 0x1400d7b37
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
lea rax, [rax + rcx*8]
xor edi, edi
mov dword [rax + 8], edx
test r12d, r12d
jle 0x1400d7bfe
mov ebp, dword [rsp + 0x40]
mov rsi, r14
nop dword [rax]
mov ecx, dword [rsi]
mov edx, dword [rbx + 0xb8]
test ecx, ecx
jns 0x1400d7b5f
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
je 0x1400d7b71
lea rax, [0x1402865b8]
jmp 0x1400d7b80
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d7bb0
lea eax, [rdi + r13]
mov r9d, edi
mov r8d, ebp
mov dword [rsp + 0x20], eax
mov edx, 0x60
mov rcx, rbx
call fcn.1400eec90
jmp 0x1400d7be6
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x60
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebp
lea rdx, [rax + rcx*8]
lea eax, [rdi + r13]
mov dword [rdx + 8], edi
mov dword [rdx + 0xc], eax
mov qword [rdx + 0x10], 0
inc edi
add rsi, 4
cmp edi, r12d
jl 0x1400d7b50
mov rbp, qword [rsp + 0x70]
mov esi, dword [rsp + 0x60]
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x1400d7c1d
or eax, 0xffffffff
sub eax, r15d
movsxd rcx, eax
mov eax, dword [rbx + 0xb8]
mov dword [rdx + rcx*4], eax
mov r15, qword [rsp + 0x80]
cmp qword [r15 + 0x298], 0
je 0x1400d7c3c
mov rdx, r14
mov rcx, r15
call fcn.1400f1940
jmp 0x1400d7c70
cmp r14, qword [r15 + 0x180]
jb 0x1400d7c68
cmp r14, qword [r15 + 0x188]
jae 0x1400d7c68
mov rax, qword [r15 + 0x178]
mov qword [r14], rax
dec dword [r15 + 0x160]
mov qword [r15 + 0x178], r14
jmp 0x1400d7c70
mov rcx, r14
call fcn.1400d0700
mov r14d, dword [rsp + 0x44]
mov edi, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x50]
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
mov r12d, dword [rsp + 0x54]
cmp dword [rax + 0x3c], edx
jg 0x1400d7cb0
mov edx, 0x59
mov dword [rsp + 0x20], r14d
mov r9d, r12d
mov rcx, rbx
lea r8d, [rdx - 0x58]
call fcn.1400eec90
mov edx, eax
jmp 0x1400d7ce7
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x59
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], 0
mov rcx, qword [rbx]
cmp byte [rcx + 0x55], 0
je 0x1400d7d03
lea r8, [0x140202650]
mov edx, 0xfffffffc
call fcn.1400eb850
jmp 0x1400d7d4b
test edx, edx
jns 0x1400d7d0f
mov edx, dword [rbx + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400d7d3c
mov r9d, 0xfffffffc
lea r8, [0x140202650]
mov rcx, rbx
call fcn.140147f80
jmp 0x1400d7d4b
lea rax, [0x140202650]
mov byte [rdx + 1], 0xfc
mov qword [rdx + 0x10], rax
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x1400d7d67
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov byte [rax + rdx*8 + 3], 2
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d7d96
mov r9d, esi
mov dword [rsp + 0x20], 0
mov r8d, edi
mov edx, 7
mov rcx, rbx
call fcn.1400eec90
xor esi, esi
jmp 0x1400d7dc5
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8 + 8], esi
xor esi, esi
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov word [rax + rcx*8], 7
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov r9d, dword [rsp + 0x64]
xor r8d, r8d
mov edx, r12d
mov rcx, rbx
call fcn.1400dc460
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
mov r8d, dword [rsp + 0x58]
cmp dword [rax + 0x3c], edx
jg 0x1400d7e08
mov r9d, 3
mov dword [rsp + 0x20], r14d
mov rcx, rbx
lea edx, [r9 + 0x60]
call fcn.1400eec90
mov edx, eax
jmp 0x1400d7e3b
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x63
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], 3
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx]
cmp byte [rcx + 0x55], 0
je 0x1400d7e54
lea r8, [0x140209304]
xor edx, edx
call fcn.1400eb850
jmp 0x1400d7e81
test edx, edx
jns 0x1400d7e60
mov edx, dword [rbx + 0xb8]
dec edx
movsxd rax, edx
lea r8, [0x140209304]
xor r9d, r9d
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
lea rdx, [rax + rcx*8]
mov rcx, rbx
call fcn.140147f80
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
mov edi, dword [rsp + 0xf8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d7eb7
mov r9d, dword [rsp + 0x48]
mov r8d, edi
mov edx, 0x72
mov dword [rsp + 0x20], esi
mov rcx, rbx
call fcn.1400eec90
mov edx, dword [rsp + 0x48]
jmp 0x1400d7ee8
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x72
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d7f11
mov dword [rsp + 0x20], edx
mov r9d, r14d
mov edx, 0x73
mov r8d, edi
mov rcx, rbx
call fcn.1400eec90
jmp 0x1400d7f3f
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*8], 0x73
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rsi
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x1400d7f5b
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov byte [rax + rdx*8 + 3], 8
mov edx, dword [rbx + 0xb8]
test r15d, r15d
jns 0x1400d7f6a
lea r15d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
je 0x1400d7f83
mov esi, dword [rsp + 0x40]
lea rax, [0x1402865b8]
mov dword [rax + 8], edx
jmp 0x1400d7fa3
mov esi, dword [rsp + 0x40]
movsxd rax, r15d
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x1400d7fa3
mov r14d, dword [rsp + 0x44]
mov esi, edi
mov rax, qword [rsp + 0xf0]
movzx edi, byte [rsp + 0x100]
mov r12, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xe0]
mov rbp, qword [rbp + 0x28]
mov qword [rsp + 0x70], rbp
test rbp, rbp
jne 0x1400d7713
cmp qword [rsp + 0xf0], 0
jne 0x1400d80bc
test dil, dil
je 0x1400d80bc
mov r9d, dword [rsp + 0x64]
mov edx, 0x64
mov r8d, dword [rsp + 0x7c]
mov rcx, rbx
call fcn.140131840
mov r8d, dword [rsp + 0x64]
mov edx, 0x16
mov rcx, rbx
call fcn.1401317d0
mov r9d, dword [rsp + 0x68]
xor r8d, r8d
mov rcx, rbx
mov edi, eax
lea edx, [r8 + 0x4f]
call fcn.140131840
mov r8d, dword [rsp + 0x58]
lea rax, [0x140209304]
mov r9d, 3
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
mov rcx, rbx
mov dword [rsp + 0x20], r14d
lea edx, [r9 + 0x60]
call fcn.140131930
mov r12d, dword [rsp + 0x48]
mov edx, 0x72
mov r8d, dword [rsp + 0xf8]
mov r9d, r12d
mov rcx, rbx
call fcn.140131840
mov r8d, dword [rsp + 0xf8]
mov r9d, r14d
mov edx, 0x73
mov dword [rsp + 0x20], r12d
mov rcx, rbx
call fcn.1401318b0
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x1400d80b2
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov byte [rax + rdx*8 + 3], 8
mov edx, edi
mov rcx, rbx
call fcn.14013a260
mov rsi, qword [rsp + 0x98]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret