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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rdx
push r12
sub rsp, 0x70
cmp qword [rdx + 0x10], 0
mov qword [r11 - 0x10], rbx
mov qword [r11 - 0x18], rbp
mov qword [r11 - 0x20], rsi
mov qword [r11 - 0x28], rdi
mov qword [r11 - 0x30], r13
mov eax, 0x23
mov qword [r11 - 0x38], r14
mov r8d, 0x16
cmova r8d, eax
mov rax, qword [rcx]
xor r12d, r12d
mov edi, dword [rax + 0x84]
xor r13d, r13d
mov qword [r11 - 0x50], r12
mov ebp, dword [rsp + 0x2c]
test edi, edi
mov qword [r11 - 0x40], r15
cmovs edi, r13d
mov r15, rdx
mov r14, rcx
cmp ebp, r8d
jae 0x18010f276
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, r8d
cmp rbx, rax
jae 0x18010f258
nop word [rax + rax]
add rbx, rbx
cmp rbx, rax
jb 0x18010f250
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f2cd
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f2cd
mov ebp, ebx
mov r12, rax
mov eax, edi
mov byte [r12 + 3], dil
mov esi, 4
sar eax, 0x18
mov byte [r12], al
mov eax, edi
sar eax, 0x10
mov byte [r12 + 1], al
mov eax, edi
sar eax, 8
mov byte [r12 + 2], al
cmp qword [r15 + 0x10], r13
jbe 0x18010f2b1
mov dword [r12 + 4], 0x10000ff
mov esi, 8
movsxd rdx, dword [r15 + 0x1c]
movsxd rcx, esi
add rcx, r12
cmp rdx, 0x7f
ja 0x18010f2de
and dl, 0x7f
mov eax, 1
mov byte [rcx], dl
jmp 0x18010f304
mov esi, dword [rsp + 0x28]
mov dword [r14 + 0x3c], 7
jmp 0x18010f38e
cmp rdx, 0x3fff
ja 0x18010f2ff
mov rax, rdx
shr rax, 7
or al, 0x80
and dl, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dl
mov eax, 2
jmp 0x18010f304
call fcn.180011690
movsxd rdx, dword [r15 + 0x18]
add esi, eax
movsxd rcx, esi
add rcx, r12
cmp rdx, 0x7f
ja 0x18010f322
and dl, 0x7f
mov eax, 1
mov byte [rcx], dl
jmp 0x18010f348
cmp rdx, 0x3fff
ja 0x18010f343
mov rax, rdx
shr rax, 7
or al, 0x80
and dl, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dl
mov eax, 2
jmp 0x18010f348
call fcn.180011690
mov rdx, qword [r15 + 8]
add esi, eax
movsxd rcx, esi
add rcx, r12
cmp rdx, 0x7f
ja 0x18010f366
and dl, 0x7f
mov eax, 1
mov byte [rcx], dl
jmp 0x18010f38c
cmp rdx, 0x3fff
ja 0x18010f387
mov rax, rdx
shr rax, 7
or al, 0x80
and dl, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dl
mov eax, 2
jmp 0x18010f38c
call fcn.180011690
add esi, eax
mov rcx, r13
mov dword [rsp + 0x80], r13d
mov qword [rsp + 0x20], rcx
cmp dword [r15 + 0x1c], ecx
jle 0x18010fa4e
nop dword [rax + rax]
lea r13, [rcx + 2]
lea ecx, [rsi + 9]
shl r13, 4
add r13, r15
mov qword [rsp + 0x98], r13
movsxd rdi, dword [r13]
cmp ebp, ecx
jae 0x18010f408
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f3ea
add rbx, rbx
cmp rbx, rax
jb 0x18010f3e2
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f422
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f422
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f42c
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f457
mov dword [r14 + 0x3c], 7
jmp 0x18010f459
cmp rdi, 0x3fff
ja 0x18010f44f
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f457
mov rdx, rdi
call fcn.180011690
add esi, eax
movsxd rdi, dword [r13 + 4]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f49e
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f480
add rbx, rbx
cmp rbx, rax
jb 0x18010f478
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f4b8
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f4b8
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f4c2
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f4ed
mov dword [r14 + 0x3c], 7
jmp 0x18010f4ef
cmp rdi, 0x3fff
ja 0x18010f4e5
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f4ed
mov rdx, rdi
call fcn.180011690
add esi, eax
xor edx, edx
mov eax, edx
mov r15d, edx
mov qword [rsp + 0x90], rdx
cmp dword [r13 + 4], eax
jle 0x18010fa1f
nop dword [rax + rax]
mov r13, rax
mov rax, qword [rsp + 0x98]
lea ecx, [rsi + 9]
imul r13, r13, 0x38
add r13, qword [rax + 8]
movsxd rdi, dword [r13]
cmp ebp, ecx
jae 0x18010f568
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f54a
add rbx, rbx
cmp rbx, rax
jb 0x18010f542
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f582
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f582
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f58c
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f5b7
mov dword [r14 + 0x3c], 7
jmp 0x18010f5b9
cmp rdi, 0x3fff
ja 0x18010f5af
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f5b7
mov rdx, rdi
call fcn.180011690
add esi, eax
movsxd rdi, dword [r13 + 4]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f5fe
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f5e0
add rbx, rbx
cmp rbx, rax
jb 0x18010f5d8
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f618
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f618
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f622
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f64d
mov dword [r14 + 0x3c], 7
jmp 0x18010f64f
cmp rdi, 0x3fff
ja 0x18010f645
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f64d
mov rdx, rdi
call fcn.180011690
add esi, eax
movsxd rdi, dword [r13 + 8]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f696
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f678
nop
add rbx, rbx
cmp rbx, rax
jb 0x18010f670
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f6b0
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f6b0
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f6ba
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f6e5
mov dword [r14 + 0x3c], 7
jmp 0x18010f6e7
cmp rdi, 0x3fff
ja 0x18010f6dd
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f6e5
mov rdx, rdi
call fcn.180011690
add esi, eax
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x10], 0
jbe 0x18010f9f7
mov rdi, qword [r13 + 0x10]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f746
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f728
nop dword [rax]
add rbx, rbx
cmp rbx, rax
jb 0x18010f720
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f760
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f760
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f76a
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f795
mov dword [r14 + 0x3c], 7
jmp 0x18010f797
cmp rdi, 0x3fff
ja 0x18010f78d
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f795
mov rdx, rdi
call fcn.180011690
add esi, eax
mov rdi, qword [r13 + 0x18]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f7dc
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f7be
add rbx, rbx
cmp rbx, rax
jb 0x18010f7b6
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f7f6
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f7f6
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f800
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f82b
mov dword [r14 + 0x3c], 7
jmp 0x18010f82d
cmp rdi, 0x3fff
ja 0x18010f823
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f82b
mov rdx, rdi
call fcn.180011690
add esi, eax
movsxd rdi, dword [r13 + 0x20]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f876
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f858
nop dword [rax]
add rbx, rbx
cmp rbx, rax
jb 0x18010f850
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f890
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f890
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f89a
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f8c5
mov dword [r14 + 0x3c], 7
jmp 0x18010f8c7
cmp rdi, 0x3fff
ja 0x18010f8bd
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f8c5
mov rdx, rdi
call fcn.180011690
add esi, eax
mov rdi, qword [r13 + 0x28]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f90c
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f8ee
add rbx, rbx
cmp rbx, rax
jb 0x18010f8e6
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f926
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f926
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f930
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f95b
mov dword [r14 + 0x3c], 7
jmp 0x18010f95d
cmp rdi, 0x3fff
ja 0x18010f953
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f95b
mov rdx, rdi
call fcn.180011690
add esi, eax
mov rdi, qword [r13 + 0x30]
lea ecx, [rsi + 9]
cmp ebp, ecx
jae 0x18010f9a6
mov eax, 0x40
test ebp, ebp
cmovne eax, ebp
movsxd rbx, eax
mov eax, ecx
cmp rbx, rax
jae 0x18010f988
nop dword [rax]
add rbx, rbx
cmp rbx, rax
jb 0x18010f980
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x18010f9c0
mov rdx, rbx
mov rcx, r12
call fcn.18000c190
test rax, rax
je 0x18010f9c0
mov ebp, ebx
mov r12, rax
movsxd rcx, esi
add rcx, r12
cmp rdi, 0x7f
ja 0x18010f9ca
and dil, 0x7f
mov eax, 1
mov byte [rcx], dil
jmp 0x18010f9f5
mov dword [r14 + 0x3c], 7
jmp 0x18010f9f7
cmp rdi, 0x3fff
ja 0x18010f9ed
mov rax, rdi
shr rax, 7
or al, 0x80
and dil, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dil
mov eax, 2
jmp 0x18010f9f5
mov rdx, rdi
call fcn.180011690
add esi, eax
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
inc r15d
inc rax
mov qword [rsp + 0x90], rax
cmp r15d, dword [rcx + 4]
jl 0x18010f510
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x20]
mov r15, qword [rsp + 0x88]
inc eax
inc rcx
mov dword [rsp + 0x80], eax
mov qword [rsp + 0x20], rcx
cmp eax, dword [r15 + 0x1c]
jl 0x18010f3b0
mov r9d, esi
mov r8, r12
mov edx, 0xa
mov rcx, r14
call fcn.18010e3b0
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
mov r13, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
test r12, r12
je 0x18010fae9
cmp dword [0x180172920], 0
je 0x18010fae0
mov rcx, qword [0x1801821a8]
test rcx, rcx
je 0x18010faa4
call qword [0x1801729a0]
mov rcx, r12
call qword [0x180172958]
dec qword [0x180182138]
mov rcx, r12
movsxd rdx, eax
sub qword [0x1801820f0], rdx
call qword [0x180172948]
mov rcx, qword [0x1801821a8]
test rcx, rcx
je 0x18010fae9
add rsp, 0x70
pop r12
jmp qword [0x1801729b0]
mov rcx, r12
call qword [0x180172948]
add rsp, 0x70
pop r12
ret