Function at 0x180076e00
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 [0x180237160]
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, [0x180212f98]
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.180076bf0
mov edi, dword [rsp + 0x54]
mov eax, 1
test edi, edi
jne 0x180077388
mov r15, qword [rbp + 0x20]
mov r14, rsi
shl r14, 5
mov rcx, qword [r15 + r14 + 8]
test rcx, rcx
jne 0x180076ed5
cmp esi, eax
jne 0x180076ece
mov rax, qword [r15 + 0x38]
or word [rax + 0x72], 1
xor eax, eax
jmp 0x1800773bc
mov qword [rsp + 0xa0], r12
cmp byte [rcx + 0x11], r13b
je 0x180076ef1
inc dword [rcx + 0x14]
cmp byte [rcx + 0x12], r13b
jne 0x180076ef1
call fcn.180025f40
mov r12, qword [r15 + r14 + 8]
mov qword [rsp + 0xf8], rbx
cmp byte [r12 + 0x10], r13b
jne 0x1800770f5
mov rbx, qword [r12 + 8]
xor edi, edi
cmp byte [r12 + 0x11], dil
je 0x180076f2b
inc dword [r12 + 0x14]
cmp byte [r12 + 0x12], dil
jne 0x180076f2b
mov rcx, r12
call fcn.180025f40
movzx eax, byte [r12 + 0x10]
cmp al, 2
je 0x18007707f
cmp al, 1
je 0x18007707f
movzx ecx, word [rbx + 0x28]
test cl, 0x40
je 0x180076f60
mov rax, qword [rbx + 0x80]
cmp qword [rax], rdi
je 0x180076f60
mov edi, 0x106
jmp 0x18007707f
mov rax, qword [r12 + 8]
cmp byte [r12 + 0x11], dil
je 0x180076faa
cmp qword [rax + 0x80], r12
je 0x180076f85
test byte [rax + 0x28], 0x20
je 0x180076f85
mov edi, 0x106
jmp 0x18007707f
mov rax, qword [rax + 0x78]
test rax, rax
je 0x180076faa
nop
cmp qword [rax], r12
je 0x180076fa1
cmp dword [rax + 8], 1
jne 0x180076fa1
cmp byte [rax + 0xc], 1
jne 0x180076f56
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x180076f90
mov eax, 0xfff7
and cx, ax
mov word [rbx + 0x28], cx
cmp dword [rbx + 0x40], r13d
jne 0x180076fc4
or cx, 8
mov word [rbx + 0x28], cx
cmp qword [rbx + 0x18], r13
jne 0x180076fda
mov rcx, rbx
call fcn.180028c40
mov edi, eax
test eax, eax
je 0x180076fc4
jmp 0x180076fde
test edi, edi
je 0x180076ffa
cmp byte [rbx + 0x24], r13b
jne 0x180076ffa
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x180076ffa
mov qword [rbx + 0x18], r13
mov rcx, qword [rcx + 0x70]
call fcn.1800216f0
cmp dil, 5
jne 0x180077038
cmp byte [rbx + 0x24], r13b
jne 0x180077038
mov rsi, qword [rbx + 8]
add rsi, 0x210
je 0x180077038
mov rax, qword [rsi]
test rax, rax
je 0x180077038
mov edx, dword [rsi + 0x10]
test edx, edx
js 0x180077038
mov rcx, qword [rsi + 8]
call rax
test eax, eax
je 0x180077031
inc dword [rsi + 0x10]
jmp 0x180076fc4
mov dword [rsi + 0x10], 0xffffffff
test edi, edi
jne 0x18007707b
cmp byte [r12 + 0x10], r13b
jne 0x180077065
inc dword [rbx + 0x3c]
cmp byte [r12 + 0x11], r13b
je 0x180077065
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 0x18007707f
mov byte [rbx + 0x24], 1
jmp 0x18007707f
mov esi, dword [rsp + 0x30]
cmp byte [r12 + 0x11], r13b
je 0x180077095
dec dword [r12 + 0x14]
jne 0x180077095
mov rcx, r12
call fcn.180025f10
test edi, edi
je 0x1800770ef
lea r8, str.unknown_error
cmp edi, 0x204
je 0x1800770d6
movzx eax, dil
cmp eax, 0x1a
ja 0x1800770dd
lea rcx, str.not_an_error
mov rcx, qword [rcx + rax*8]
test rcx, rcx
je 0x1800770dd
mov r8, rcx
mov rcx, qword [rsp + 0x38]
mov rdx, rbp
call fcn.1800128d0
jmp 0x18007735e
lea r8, str.abort_due_to_ROLLBACK
mov rcx, qword [rsp + 0x38]
mov rdx, rbp
call fcn.1800128d0
jmp 0x18007735e
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.180030b80
add rdi, 4
cmp ebx, 5
jl 0x180077100
mov rcx, qword [r15 + r14 + 0x18]
mov eax, dword [rsp + 0x78]
mov dword [rcx], eax
mov ecx, dword [rsp + 0x88]
test ecx, ecx
je 0x18007716d
test esi, esi
jne 0x180077147
and cl, 3
mov ebx, 1
movzx eax, cl
cmove eax, ebx
mov byte [rbp + 0x52], al
jmp 0x180077180
movzx eax, byte [rbp + 0x52]
cmp ecx, eax
je 0x18007717b
mov rcx, qword [rsp + 0x38]
lea r8, str.attached_databases_must_use_the_same_text_encoding_as_main_database
mov rdx, rbp
call fcn.1800128d0
mov edi, 1
jmp 0x180077312
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 0x1800771d7
mov ecx, dword [rsp + 0x80]
test ecx, ecx
jns 0x1800771b3
cmp ecx, 0x80000000
jne 0x1800771b1
mov ecx, 0x7fffffff
jmp 0x1800771bd
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.1800286d0
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 0x1800771f2
mov byte [rax + 0x70], 1
mov rax, qword [r15 + r14 + 0x18]
cmp byte [rax + 0x70], 4
jbe 0x180077218
mov rcx, qword [rsp + 0x38]
lea r8, str.unsupported_file_format
mov rdx, rbp
call fcn.1800128d0
mov edi, ebx
jmp 0x180077312
test esi, esi
jne 0x180077228
cmp ecx, 4
jl 0x180077228
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.180014420
mov rbx, qword [rbp + 0x188]
lea r9, [rsp + 0x40]
lea r8, [fcn.180076bf0]
mov rdx, rax
mov rcx, rbp
mov rsi, rax
mov qword [rbp + 0x188], r12
mov qword [rsp + 0x20], r12
call fcn.180071490
mov qword [rbp + 0x188], rbx
test eax, eax
mov edi, eax
cmove edi, dword [rsp + 0x54]
test rsi, rsi
je 0x1800772cf
cmp qword [rbp + 0x290], r12
je 0x18007729c
mov rdx, rsi
mov rcx, rbp
call fcn.180012190
jmp 0x1800772cf
cmp rsi, qword [rbp + 0x178]
jb 0x1800772c7
cmp rsi, qword [rbp + 0x180]
jae 0x1800772c7
mov rax, qword [rbp + 0x170]
mov qword [rsi], rax
dec dword [rbp + 0x158]
mov qword [rbp + 0x170], rsi
jmp 0x1800772cf
mov rcx, rsi
call fcn.180012120
test edi, edi
jne 0x1800772df
mov edx, dword [rsp + 0x30]
mov rcx, rbp
call fcn.180056cf0
cmp byte [rbp + 0x55], r12b
je 0x1800772f4
mov rcx, rbp
mov edi, 7
call fcn.180059010
jmp 0x1800772f8
test edi, edi
je 0x180077301
test dword [rbp + 0x2c], 0x10000
je 0x180077312
mov rax, qword [rbp + 0x20]
mov edi, r12d
mov rcx, qword [r14 + rax + 0x18]
or word [rcx + 0x72], 1
test r13d, r13d
je 0x18007735e
mov rbx, qword [r15 + r14 + 8]
cmp byte [rbx + 0x11], r12b
je 0x180077333
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r12b
jne 0x180077333
mov rcx, rbx
call fcn.180025f40
xor edx, edx
mov rcx, rbx
call fcn.180029ec0
test eax, eax
jne 0x18007734b
xor edx, edx
mov rcx, rbx
call fcn.18002a030
cmp byte [rbx + 0x11], r12b
je 0x18007735e
dec dword [rbx + 0x14]
jne 0x18007735e
mov rcx, rbx
call fcn.180025f10
mov rcx, qword [r15 + r14 + 8]
mov r12, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xf8]
cmp byte [rcx + 0x11], 0
je 0x180077383
dec dword [rcx + 0x14]
jne 0x180077383
call fcn.180025f10
mov eax, 1
cmp edi, 7
je 0x180077395
cmp edi, 0xc0a
jne 0x1800773ba
cmp byte [rbp + 0x55], 0
jne 0x1800773ba
cmp byte [rbp + 0x56], 0
jne 0x1800773ba
cmp dword [rbp + 0xb4], 0
mov byte [rbp + 0x55], 1
jle 0x1800773b4
mov dword [rbp + 0x148], eax
inc dword [rbp + 0x150]
mov eax, edi
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.180183a50
add rsp, 0xa8
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
ret