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

Disassembly:
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0xa8
mov rax, qword [0x1802e4710]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rbp, rcx
movsxd rsi, edx
mov rax, r8
xor r8d, r8d
lea rdx, str.sqlite_master
lea rcx, str.sqlite_temp_master
mov r13d, r8d
mov qword [rsp + 0x70], r8
mov dword [rsp + 0x54], r8d
cmp esi, 1
lea r8, [rsp + 0x58]
mov qword [rsp + 0x38], rax
cmovne rcx, rdx
xor r9d, r9d
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x58], rcx
lea rcx, [0x1802bb998]
lea edx, [r9 + 3]
mov qword [rsp + 0x60], rcx
lea rcx, str.CREATE_TABLE_x_type_text_name_text_tbl_name_text_rootpage_integer_sql_text_
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x68], rcx
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x48], rax
call fcn.18007bbb0
mov edi, dword [rsp + 0x54]
mov eax, 1
test edi, edi
jne 0x18007c348
mov r15, qword [rbp + 0x20]
mov r14, rsi
shl r14, 5
mov rcx, qword [r15 + r14 + 8]
test rcx, rcx
jne 0x18007be95
cmp esi, eax
jne 0x18007be8e
mov rax, qword [r15 + 0x38]
or word [rax + 0x72], 1
xor eax, eax
jmp 0x18007c37c
mov qword [rsp + 0xa0], r12
cmp byte [rcx + 0x11], r13b
je 0x18007beb1
inc dword [rcx + 0x14]
cmp byte [rcx + 0x12], r13b
jne 0x18007beb1
call fcn.18002af30
mov r12, qword [r15 + r14 + 8]
mov qword [rsp + 0xf8], rbx
cmp byte [r12 + 0x10], r13b
jne 0x18007c0b5
mov rbx, qword [r12 + 8]
xor edi, edi
cmp byte [r12 + 0x11], dil
je 0x18007beeb
inc dword [r12 + 0x14]
cmp byte [r12 + 0x12], dil
jne 0x18007beeb
mov rcx, r12
call fcn.18002af30
movzx eax, byte [r12 + 0x10]
cmp al, 2
je 0x18007c03f
cmp al, 1
je 0x18007c03f
movzx ecx, word [rbx + 0x28]
test cl, 0x40
je 0x18007bf20
mov rax, qword [rbx + 0x80]
cmp qword [rax], rdi
je 0x18007bf20
mov edi, 0x106
jmp 0x18007c03f
mov rax, qword [r12 + 8]
cmp byte [r12 + 0x11], dil
je 0x18007bf6a
cmp qword [rax + 0x80], r12
je 0x18007bf45
test byte [rax + 0x28], 0x20
je 0x18007bf45
mov edi, 0x106
jmp 0x18007c03f
mov rax, qword [rax + 0x78]
test rax, rax
je 0x18007bf6a
nop
cmp qword [rax], r12
je 0x18007bf61
cmp dword [rax + 8], 1
jne 0x18007bf61
cmp byte [rax + 0xc], 1
jne 0x18007bf16
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x18007bf50
mov eax, 0xfff7
and cx, ax
mov word [rbx + 0x28], cx
cmp dword [rbx + 0x40], r13d
jne 0x18007bf84
or cx, 8
mov word [rbx + 0x28], cx
cmp qword [rbx + 0x18], r13
jne 0x18007bf9a
mov rcx, rbx
call fcn.18002dc30
mov edi, eax
test eax, eax
je 0x18007bf84
jmp 0x18007bf9e
test edi, edi
je 0x18007bfba
cmp byte [rbx + 0x24], r13b
jne 0x18007bfba
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x18007bfba
mov qword [rbx + 0x18], r13
mov rcx, qword [rcx + 0x70]
call fcn.1800266e0
cmp dil, 5
jne 0x18007bff8
cmp byte [rbx + 0x24], r13b
jne 0x18007bff8
mov rsi, qword [rbx + 8]
add rsi, 0x210
je 0x18007bff8
mov rax, qword [rsi]
test rax, rax
je 0x18007bff8
mov edx, dword [rsi + 0x10]
test edx, edx
js 0x18007bff8
mov rcx, qword [rsi + 8]
call rax
test eax, eax
je 0x18007bff1
inc dword [rsi + 0x10]
jmp 0x18007bf84
mov dword [rsi + 0x10], 0xffffffff
test edi, edi
jne 0x18007c03b
cmp byte [r12 + 0x10], r13b
jne 0x18007c025
inc dword [rbx + 0x3c]
cmp byte [r12 + 0x11], r13b
je 0x18007c025
mov byte [r12 + 0x3c], 1
mov rax, qword [rbx + 0x78]
mov qword [r12 + 0x40], rax
lea rax, [r12 + 0x30]
mov qword [rbx + 0x78], rax
mov esi, dword [rsp + 0x30]
mov byte [r12 + 0x10], 1
cmp byte [rbx + 0x24], 1
jae 0x18007c03f
mov byte [rbx + 0x24], 1
jmp 0x18007c03f
mov esi, dword [rsp + 0x30]
cmp byte [r12 + 0x11], r13b
je 0x18007c055
dec dword [r12 + 0x14]
jne 0x18007c055
mov rcx, r12
call fcn.18002af00
test edi, edi
je 0x18007c0af
lea r8, str.unknown_error
cmp edi, 0x204
je 0x18007c096
movzx eax, dil
cmp eax, 0x1a
ja 0x18007c09d
lea rcx, str.not_an_error
mov rcx, qword [rcx + rax*8]
test rcx, rcx
je 0x18007c09d
mov r8, rcx
mov rcx, qword [rsp + 0x38]
mov rdx, rbp
call fcn.1800178d0
jmp 0x18007c31e
lea r8, str.abort_due_to_ROLLBACK
mov rcx, qword [rsp + 0x38]
mov rdx, rbp
call fcn.1800178d0
jmp 0x18007c31e
mov r13d, 1
xor r12d, r12d
lea rdi, [rsp + 0x78]
mov ebx, r12d
mov rcx, qword [r15 + r14 + 8]
inc ebx
mov r8, rdi
mov edx, ebx
call fcn.180035b70
add rdi, 4
cmp ebx, 5
jl 0x18007c0c0
mov rcx, qword [r15 + r14 + 0x18]
mov eax, dword [rsp + 0x78]
mov dword [rcx], eax
mov ecx, dword [rsp + 0x88]
test ecx, ecx
je 0x18007c12d
test esi, esi
jne 0x18007c107
and cl, 3
mov ebx, 1
movzx eax, cl
cmove eax, ebx
mov byte [rbp + 0x52], al
jmp 0x18007c140
movzx eax, byte [rbp + 0x52]
cmp ecx, eax
je 0x18007c13b
mov rcx, qword [rsp + 0x38]
lea r8, str.attached_databases_must_use_the_same_text_encoding_as_main_database
mov rdx, rbp
call fcn.1800178d0
mov edi, 1
jmp 0x18007c2d2
mov rax, qword [rbp + 0x20]
mov rcx, qword [r14 + rax + 0x18]
or word [rcx + 0x72], 4
mov ebx, 1
movzx eax, byte [rbp + 0x52]
mov rcx, qword [r15 + r14 + 0x18]
mov byte [rcx + 0x71], al
mov rax, qword [r15 + r14 + 0x18]
cmp dword [rax + 0x74], r12d
jne 0x18007c197
mov ecx, dword [rsp + 0x80]
test ecx, ecx
jns 0x18007c173
cmp ecx, 0x80000000
jne 0x18007c171
mov ecx, 0x7fffffff
jmp 0x18007c17d
neg ecx
mov eax, 0xfffff830
test ecx, ecx
cmove ecx, eax
mov rax, qword [r15 + r14 + 0x18]
mov dword [rax + 0x74], ecx
mov rax, qword [r15 + r14 + 0x18]
mov rcx, qword [r15 + r14 + 8]
mov edx, dword [rax + 0x74]
call fcn.18002d6c0
mov rax, qword [r15 + r14 + 0x18]
mov ecx, dword [rsp + 0x7c]
mov byte [rax + 0x70], cl
mov rax, qword [r15 + r14 + 0x18]
cmp byte [rax + 0x70], r12b
jne 0x18007c1b2
mov byte [rax + 0x70], 1
mov rax, qword [r15 + r14 + 0x18]
cmp byte [rax + 0x70], 4
jbe 0x18007c1d8
mov rcx, qword [rsp + 0x38]
lea r8, str.unsupported_file_format
mov rdx, rbp
call fcn.1800178d0
mov edi, ebx
jmp 0x18007c2d2
test esi, esi
jne 0x18007c1e8
cmp ecx, 4
jl 0x18007c1e8
and dword [rbp + 0x2c], 0xffff7fff
mov r8, qword [rbp + 0x20]
mov r9, qword [rsp + 0x58]
lea rdx, str.SELECT_name__rootpage__sql_FROM___w_._s_ORDER_BY_rowid
mov r8, qword [r14 + r8]
mov rcx, rbp
call fcn.180019420
mov rbx, qword [rbp + 0x188]
lea r9, [rsp + 0x40]
lea r8, [fcn.18007bbb0]
mov rdx, rax
mov rcx, rbp
mov rsi, rax
mov qword [rbp + 0x188], r12
mov qword [rsp + 0x20], r12
call fcn.180076450
mov qword [rbp + 0x188], rbx
test eax, eax
mov edi, eax
cmove edi, dword [rsp + 0x54]
test rsi, rsi
je 0x18007c28f
cmp qword [rbp + 0x290], r12
je 0x18007c25c
mov rdx, rsi
mov rcx, rbp
call fcn.180017190
jmp 0x18007c28f
cmp rsi, qword [rbp + 0x178]
jb 0x18007c287
cmp rsi, qword [rbp + 0x180]
jae 0x18007c287
mov rax, qword [rbp + 0x170]
mov qword [rsi], rax
dec dword [rbp + 0x158]
mov qword [rbp + 0x170], rsi
jmp 0x18007c28f
mov rcx, rsi
call fcn.180017120
test edi, edi
jne 0x18007c29f
mov edx, dword [rsp + 0x30]
mov rcx, rbp
call fcn.18005bcb0
cmp byte [rbp + 0x55], r12b
je 0x18007c2b4
mov rcx, rbp
mov edi, 7
call fcn.18005dfd0
jmp 0x18007c2b8
test edi, edi
je 0x18007c2c1
test dword [rbp + 0x2c], 0x10000
je 0x18007c2d2
mov rax, qword [rbp + 0x20]
mov edi, r12d
mov rcx, qword [r14 + rax + 0x18]
or word [rcx + 0x72], 1
test r13d, r13d
je 0x18007c31e
mov rbx, qword [r15 + r14 + 8]
cmp byte [rbx + 0x11], r12b
je 0x18007c2f3
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r12b
jne 0x18007c2f3
mov rcx, rbx
call fcn.18002af30
xor edx, edx
mov rcx, rbx
call fcn.18002eeb0
test eax, eax
jne 0x18007c30b
xor edx, edx
mov rcx, rbx
call fcn.18002f020
cmp byte [rbx + 0x11], r12b
je 0x18007c31e
dec dword [rbx + 0x14]
jne 0x18007c31e
mov rcx, rbx
call fcn.18002af00
mov rcx, qword [r15 + r14 + 8]
mov r12, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xf8]
cmp byte [rcx + 0x11], 0
je 0x18007c343
dec dword [rcx + 0x14]
jne 0x18007c343
call fcn.18002af00
mov eax, 1
cmp edi, 7
je 0x18007c355
cmp edi, 0xc0a
jne 0x18007c37a
cmp byte [rbp + 0x55], 0
jne 0x18007c37a
cmp byte [rbp + 0x56], 0
jne 0x18007c37a
cmp dword [rbp + 0xb4], 0
mov byte [rbp + 0x55], 1
jle 0x18007c374
mov dword [rbp + 0x148], eax
inc dword [rbp + 0x150]
mov eax, edi
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1800acfa0
add rsp, 0xa8
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
ret