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

Disassembly:
push rbx
push rsi
push rdi
push r12
push r14
sub rsp, 0x140
mov rax, qword [0x18010a170]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov rsi, qword [rcx + 0x10]
mov rax, qword [rcx]
xor r12d, r12d
mov qword [rsp + 0x90], r9
mov r14, r8
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
test rsi, rsi
jne 0x1800a634a
call fcn.1800335e0
mov rsi, rax
mov qword [rdi + 0x10], rax
test rax, rax
je 0x1800a6334
xor r9d, r9d
xor r8d, r8d
mov edx, 0x99
mov rcx, rax
mov dword [rsp + 0x20], r12d
call fcn.180042780
cmp qword [rdi + 0x1c0], r12
jne 0x1800a634a
mov rax, qword [rdi]
test byte [rax + 0x4c], 8
jne 0x1800a634a
mov byte [rdi + 0x23], 1
test rsi, rsi
je 0x1800a6743
or dword [rsi + 0x8c], 0x40
mov rax, qword [rdi]
mov qword [rsp + 0x128], r15
mov dword [rdi + 0x54], 2
test r14, r14
je 0x1800a63c9
cmp dword [r14 + 8], r12d
jbe 0x1800a63c9
cmp byte [rax + 0xa1], r12b
je 0x1800a6397
lea rdx, str.corrupt_database
mov rcx, rdi
call fcn.18003b940
inc dword [rdi + 0x4c]
jmp 0x1800a673b
mov rdx, rbx
mov rcx, rax
mov r15, r14
call fcn.18003a290
mov ecx, eax
mov dword [rsp + 0x50], eax
test eax, eax
jns 0x1800a63d7
lea rdx, str.unknown_database__T
mov r8, rbx
mov rcx, rdi
call fcn.18003b940
inc dword [rdi + 0x4c]
jmp 0x1800a673b
movzx ecx, byte [rax + 0xa0]
mov r15, rbx
mov dword [rsp + 0x50], ecx
test ecx, ecx
js 0x1800a673b
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x138], rbp
mov qword [rsp + 0x130], r13
mov rdi, qword [rax + 0x20]
movsxd r13, ecx
mov rbp, r13
shl rbp, 5
cmp ecx, 1
jne 0x1800a641e
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.1800901b0
test eax, eax
jne 0x1800a672b
jmp 0x1800a6423
mov rbx, qword [rsp + 0x48]
mov rdx, r15
mov r15, qword [rsp + 0x40]
mov rcx, r15
call fcn.1800367f0
mov qword [rsp + 0xa0], rax
test rax, rax
je 0x1800a672b
cmp dword [rsp + 0x190], r12d
je 0x1800a646c
mov r8, qword [rsp + 0x90]
lea rdx, [0x1800eeadc]
mov rcx, r15
call fcn.18003bc00
mov qword [rsp + 0x58], rax
jmp 0x1800a6481
mov rdx, qword [rsp + 0x90]
mov rcx, r15
call fcn.1800367f0
mov qword [rsp + 0x58], rax
cmp dword [r14 + 8], r12d
jbe 0x1800a6495
mov r15, qword [rdi + rbp]
mov qword [rsp + 0xb8], r15
jmp 0x1800a64a0
mov r15, r12
mov qword [rsp + 0xb8], r12
mov r8, qword [rsp + 0xa0]
mov r9, rax
mov edx, 0x13
mov rcx, rbx
mov qword [rsp + 0x20], r15
call fcn.180045cc0
test eax, eax
jne case.0x1800a6852.36
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xd0], r12
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x58]
lea r9, [rsp + 0xd0]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x40]
mov r8d, 0xe
mov rcx, rax
mov rdx, r15
mov dword [rax + 0x2b0], r12d
call sym.SQLite.Interop.dll_sqlite3_file_control
mov ebx, eax
test eax, eax
jne 0x1800a6762
mov rdi, qword [rsp + 0xd0]
test rdi, rdi
je case.0x1800a6852.36
mov rax, qword [rsp + 0x48]
lea edx, [rbx + 0x61]
xor r8d, r8d
inc dword [rax + 0x54]
mov r15d, dword [rax + 0x54]
mov rcx, rsi
mov r9d, r15d
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rsi + 8]
mov rcx, qword [rsi]
test rbx, rbx
je 0x1800a65cb
cmp byte [rcx + 0x51], r12b
jne 0x1800a65cb
test eax, eax
jns 0x1800a656f
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rbp, [rax + rax*2]
movsx edx, byte [rbx + rbp*8 + 1]
mov r8, qword [rbx + rbp*8 + 0x10]
call fcn.180046990
mov qword [rbx + rbp*8 + 0x10], r12
test rdi, rdi
jne 0x1800a659a
mov qword [rbx + rbp*8 + 0x10], r12
mov byte [rbx + rbp*8 + 1], r12b
jmp 0x1800a65d5
mov rax, rdi
cmp byte [rdi], r12b
je 0x1800a65aa
inc rax
cmp byte [rax], r12b
jne 0x1800a65a2
mov rcx, qword [rsi]
sub eax, edi
mov rdx, rdi
and eax, 0x3fffffff
movsxd r8, eax
call fcn.180034f20
mov byte [rbx + rbp*8 + 1], 0xff
mov qword [rbx + rbp*8 + 0x10], rax
jmp 0x1800a65d5
mov r8, rdi
xor edx, edx
call fcn.180046990
mov edx, 1
mov rcx, rsi
call fcn.180046890
mov r11, qword [rsi]
cmp byte [r11 + 0x51], r12b
jne 0x1800a66e0
mov r14, qword [rsi + 0x20]
lea rcx, str.result
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800a6608
mov edi, dword [rax + 0x68]
jmp 0x1800a660d
mov edi, 0x3b9aca00
mov rbp, rcx
inc rbp
cmp byte [rbp], r12b
jne 0x1800a6610
sub ebp, ecx
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a6628
lea ebp, [rdi + 1]
lea rax, [0x1800144b0]
mov r13d, 0x202
test rax, rax
jne 0x1800a66a3
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a664c
cmp dword [r14 + 0x20], r12d
je 0x1800a665b
mov rcx, r14
call fcn.180037d30
lea rcx, str.result
mov rax, qword [r14 + 0x28]
mov qword [r14 + 0x10], rcx
mov qword [r14 + 0x18], rcx
test rax, rax
jne 0x1800a6678
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a66d2
cmp rcx, qword [rax + 0x168]
jb 0x1800a6697
cmp rcx, qword [rax + 0x170]
jae 0x1800a6697
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x20], eax
jmp 0x1800a66d2
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a66d2
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a66b5
cmp dword [r14 + 0x20], r12d
je 0x1800a66c4
mov rcx, r14
call fcn.180037d30
lea rcx, str.result
mov qword [r14 + 0x10], rcx
mov qword [r14 + 0x30], r12
mov r13d, 0xa02
mov dword [r14 + 0xc], ebp
mov word [r14 + 8], r13w
mov byte [r14 + 0xa], 1
mov r9d, 1
mov r8d, r15d
mov rcx, rsi
lea edx, [r9 + 0x22]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rcx, qword [rsp + 0xd0]
call sym.SQLite.Interop.dll_sqlite3_free
mov r13, qword [rsp + 0x40]
mov rdx, qword [rsp + 0xa0]
mov rcx, r13
call fcn.18002acd0
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x40]
call fcn.18002acd0
mov r13, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x138]
mov r15, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.180001190
add rsp, 0x140
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
cmp eax, 0xc
je 0x1800a67a2
mov r8, qword [rsp + 0xd0]
test r8, r8
je 0x1800a6792
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1800ec31c]
call fcn.18003b940
mov rcx, qword [rsp + 0xd0]
call sym.SQLite.Interop.dll_sqlite3_free
mov rax, qword [rsp + 0x48]
inc dword [rax + 0x4c]
mov dword [rax + 0x18], ebx
jmp case.0x1800a6852.36
mov r11d, r12d
mov ebx, 0x3d
lea rcx, [0x180000000]
lea eax, [rbx + r11]
cdq
sub eax, edx
sar eax, 1
movsxd r10, eax
mov rdx, r10
add rdx, rdx
mov rdx, qword [rcx + rdx*8 + 0xe7de0]
mov rcx, qword [rsp + 0xa0]
call sym.SQLite.Interop.dll_sqlite3_stricmp
test eax, eax
je 0x1800a67fb
test eax, eax
jns 0x1800a67e6
lea ebx, [r10 - 1]
jmp 0x1800a67ea
lea r11d, [r10 + 1]
cmp r11d, ebx
lea rcx, [0x180000000]
jle 0x1800a67b1
jmp case.0x1800a6852.36
cmp r11d, ebx
jg case.0x1800a6852.36
mov rbx, r10
lea r11, [0x180000000]
add rbx, rbx
test byte [r11 + rbx*8 + 0xe7de9], 1
je 0x1800a6835
mov rcx, qword [rsp + 0x48]
call fcn.18000f150
test eax, eax
jne case.0x1800a6852.36
lea r11, [0x180000000]
movzx eax, byte [r11 + rbx*8 + 0xe7de8]
cmp eax, 0x27
ja case.0x1800a6852.3
mov ecx, dword [r11 + rax*4 + 0xaa358]
add rcx, r11
jmp rcx
mov r13d, dword [rsp + 0x50]
mov rcx, rsi
mov edx, r13d
call fcn.18001bf90
mov rax, qword [rsp + 0x58]
test rax, rax
jne 0x1800a69ef
lea edx, [rax + 1]
mov rcx, rsi
call fcn.180046890
mov r11, qword [rsi]
cmp byte [r11 + 0x51], r12b
jne 0x1800a6982
mov r14, qword [rsi + 0x20]
lea r15, str.cache_size
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800a68a3
mov edi, dword [rax + 0x68]
jmp 0x1800a68a8
mov edi, 0x3b9aca00
mov rbp, r15
cmp byte [str.cache_size], r12b
je 0x1800a68bd
inc rbp
cmp byte [rbp], r12b
jne 0x1800a68b4
sub ebp, r15d
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a68cd
lea ebp, [rdi + 1]
lea rax, [0x1800144b0]
mov r13d, 0x202
test rax, rax
jne 0x1800a6947
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a68f1
cmp dword [r14 + 0x20], r12d
je 0x1800a68f9
mov rcx, r14
call fcn.180037d30
mov rax, qword [r14 + 0x28]
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x18], r15
test rax, rax
jne 0x1800a6919
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a696f
cmp r15, qword [rax + 0x168]
jb 0x1800a6938
cmp r15, qword [rax + 0x170]
jae 0x1800a6938
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x20], eax
jmp 0x1800a696f
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a696f
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a6959
cmp dword [r14 + 0x20], r12d
je 0x1800a6961
mov rcx, r14
call fcn.180037d30
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x30], r12
mov r13d, 0xa02
mov word [r14 + 8], r13w
mov r13d, dword [rsp + 0x50]
mov dword [r14 + 0xc], ebp
mov byte [r14 + 0xa], 1
mov rax, qword [rsp + 0x48]
xor r9d, r9d
lea r8, [0x1800e8220]
add dword [rax + 0x54], 2
lea edx, [r9 + 9]
mov rcx, rsi
call fcn.180042630
mov r11d, eax
cmp dword [rsi + 0x3c], eax
jbe 0x1800a69b6
mov rcx, qword [rsi + 8]
lea rdx, [r11 + r11*2]
mov dword [rcx + rdx*8 + 4], r13d
lea eax, [r11 + 1]
cmp dword [rsi + 0x3c], eax
jbe 0x1800a69cc
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 4], r13d
add r11d, 6
cmp dword [rsi + 0x3c], r11d
jbe case.0x1800a6852.36
mov rax, qword [rsi + 8]
lea rcx, [r11 + r11*2]
mov dword [rax + rcx*8 + 4], 0x7d0
jmp case.0x1800a6852.36
mov rcx, rax
call fcn.18001e930
mov ebx, eax
test eax, eax
jns 0x1800a6a0d
cmp eax, 0x80000000
jne 0x1800a6a0b
mov ebx, 0x7fffffff
jmp 0x1800a6a0d
neg ebx
mov rcx, qword [rsp + 0x48]
mov r8d, r13d
xor edx, edx
call fcn.180099b10
mov r9d, 1
mov r8d, ebx
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r9d, 3
mov r8d, r13d
lea edx, [r9 + 0x31]
mov rcx, rsi
mov dword [rsp + 0x20], 1
call fcn.180042780
mov rax, qword [rdi + rbp + 0x18]
mov dword [rax + 0x74], ebx
mov rax, qword [rdi + rbp + 0x18]
mov rcx, qword [rdi + rbp + 8]
mov edx, dword [rax + 0x74]
call fcn.180029fb0
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
mov rbx, qword [rdi + rbp + 8]
test rax, rax
jne 0x1800a6aa7
test rbx, rbx
je 0x1800a6a8e
mov rax, qword [rbx + 8]
mov r12d, dword [rax + 0x30]
mov rcx, qword [rsp + 0x48]
lea rdx, str.page_size
movsxd r8, r12d
call fcn.180059380
jmp case.0x1800a6852.36
mov rcx, rax
call fcn.18001e930
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov dword [rcx + 0x58], eax
mov rcx, rbx
or r8d, 0xffffffff
mov edx, eax
call fcn.18003b240
cmp eax, 7
jne case.0x1800a6852.36
mov r13, qword [rsp + 0x40]
mov byte [r13 + 0x51], 1
jmp 0x1800a670c
mov rax, qword [rsp + 0x58]
mov rdi, qword [rdi + rbp + 8]
or rsi, 0xffffffffffffffff
mov qword [rsp + 0x78], rdi
test rax, rax
je 0x1800a6b10
lea edx, [rsi + 2]
xor r8d, r8d
mov rcx, rax
call fcn.180022450
mov ecx, r12d
test al, al
setne cl
mov esi, ecx
cmp dword [r14 + 8], r12d
jne 0x1800a6b52
test esi, esi
js 0x1800a6b52
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0x28], r12d
jle 0x1800a6b52
mov rbx, r12
mov rdi, rax
nop dword [rax + rax]
mov rcx, qword [rdi + 0x20]
mov edx, esi
mov rcx, qword [rcx + rbx + 8]
call fcn.180029ce0
inc r12d
add rbx, 0x20
cmp r12d, dword [rdi + 0x28]
jl 0x1800a6b30
mov rdi, qword [rsp + 0x78]
mov edx, esi
mov rcx, rdi
call fcn.180029ce0
mov rcx, qword [rsp + 0x48]
lea rdx, str.secure_delete
movsxd r8, eax
call fcn.180059380
jmp case.0x1800a6852.36
mov ebp, dword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov edx, ebp
mov rcx, rbx
call fcn.180091ec0
inc dword [rbx + 0x54]
mov r13, qword [rsp + 0xa0]
movzx eax, byte [r13]
mov edi, dword [rbx + 0x54]
lea r14, [0x180000000]
cmp byte [rax + r14 + 0xe6870], 0x70
jne 0x1800a6bc7
mov r9d, edi
mov r8d, ebp
mov edx, 0x97
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
jmp 0x1800a6bfe
mov rcx, qword [rsp + 0x58]
call fcn.18001e930
mov ebx, eax
test eax, eax
jns 0x1800a6be7
cmp eax, 0x80000000
jne 0x1800a6be5
mov ebx, 0x7fffffff
jmp 0x1800a6be7
neg ebx
mov r9d, edi
mov r8d, ebp
mov edx, 0x98
mov rcx, rsi
mov dword [rsp + 0x20], ebx
call fcn.180042780
mov r9d, 1
mov r8d, edi
mov rcx, rsi
lea edx, [r9 + 0x22]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, 1
mov rcx, rsi
call fcn.180046890
mov r9, r13
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], 0xffffffffffffffff
call fcn.1800549e0
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x58]
lea rbx, str.normal
call fcn.180019fb0
mov r11d, eax
mov eax, dword [r14 + 8]
test eax, eax
jne 0x1800a6c73
cmp r11d, 0xffffffff
jne 0x1800a6c73
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax + 0x52]
jmp 0x1800a6d06
test eax, eax
jne 0x1800a6cd5
mov r8, qword [rsp + 0x40]
cmp dword [r8 + 0x28], 2
jle 0x1800a6cd1
mov edx, 0x40
lea r12d, [rax + 2]
nop dword [rax]
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + rdx + 8]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
test r11d, r11d
js 0x1800a6cc1
cmp byte [rcx + 0x10], 0
jne 0x1800a6cc1
mov rax, qword [rcx + 0x138]
test rax, rax
je 0x1800a6cbd
cmp byte [rax + 0x3f], 2
je 0x1800a6cc1
mov byte [rcx + 8], r11b
inc r12d
add rdx, 0x20
cmp r12d, dword [r8 + 0x28]
jl 0x1800a6c90
xor r12d, r12d
mov byte [r8 + 0x52], r11b
mov rax, qword [rdi + rbp + 8]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
test r11d, r11d
js 0x1800a6d02
cmp byte [rax + 0x10], 0
jne 0x1800a6d02
mov rcx, qword [rax + 0x138]
test rcx, rcx
je 0x1800a6cfe
cmp byte [rcx + 0x3f], 2
je 0x1800a6d02
mov byte [rax + 8], r11b
movzx eax, byte [rax + 8]
cmp eax, 1
lea r15, str.exclusive
mov edx, 1
mov rcx, rsi
cmovne r15, rbx
call fcn.180046890
mov r11, qword [rsi]
cmp byte [r11 + 0x51], 0
jne 0x1800a6e31
mov r14, qword [rsi + 0x20]
lea rcx, str.locking_mode
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800a6d48
mov edi, dword [rax + 0x68]
jmp 0x1800a6d4d
mov edi, 0x3b9aca00
cmp byte [str.locking_mode], 0
mov rbp, rcx
je 0x1800a6d69
nop dword [rax]
inc rbp
cmp byte [rbp], 0
jne 0x1800a6d60
sub ebp, ecx
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a6d78
lea ebp, [rdi + 1]
lea rax, [0x1800144b0]
mov r13d, 0x202
test rax, rax
jne 0x1800a6df3
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a6d9c
cmp dword [r14 + 0x20], eax
je 0x1800a6dab
mov rcx, r14
call fcn.180037d30
lea rcx, str.locking_mode
mov rax, qword [r14 + 0x28]
mov qword [r14 + 0x10], rcx
mov qword [r14 + 0x18], rcx
test rax, rax
jne 0x1800a6dc8
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a6e23
cmp rcx, qword [rax + 0x168]
jb 0x1800a6de7
cmp rcx, qword [rax + 0x170]
jae 0x1800a6de7
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x20], eax
jmp 0x1800a6e23
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a6e23
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a6e06
cmp dword [r14 + 0x20], 0
je 0x1800a6e15
mov rcx, r14
call fcn.180037d30
lea rcx, str.locking_mode
mov qword [r14 + 0x10], rcx
mov qword [r14 + 0x30], r12
mov r13d, 0xa02
mov dword [r14 + 0xc], ebp
mov word [r14 + 8], r13w
mov byte [r14 + 0xa], 1
mov r9d, 1
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x60]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rsi + 8]
mov rcx, qword [rsi]
test rbx, rbx
je 0x1800a6ecd
cmp byte [rcx + 0x51], 0
jne 0x1800a6ecd
test eax, eax
jns 0x1800a6e66
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rdi, [rax + rax*2]
movsx edx, byte [rbx + rdi*8 + 1]
mov r8, qword [rbx + rdi*8 + 0x10]
call fcn.180046990
mov qword [rbx + rdi*8 + 0x10], r12
test r15, r15
jne 0x1800a6e94
mov qword [rbx + rdi*8 + 0x10], r12
mov byte [rbx + rdi*8 + 1], r15b
jmp 0x1800a76b3
cmp byte [r15], 0
mov rax, r15
je 0x1800a6ea8
nop dword [rax]
inc rax
cmp byte [rax], 0
jne 0x1800a6ea0
mov rcx, qword [rsi]
sub eax, r15d
mov rdx, r15
and eax, 0x3fffffff
movsxd r8, eax
call fcn.180034f20
mov byte [rbx + rdi*8 + 1], 0xff
mov qword [rbx + rdi*8 + 0x10], rax
jmp 0x1800a76b3
mov r8, r15
jmp 0x1800a76ac
mov edx, 1
mov rcx, rsi
call fcn.180046890
mov r11, qword [rsi]
cmp byte [r11 + 0x51], r12b
jne 0x1800a6ff0
mov r15, qword [rsi + 0x20]
lea rcx, str.journal_mode
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1800a6f08
mov edi, dword [rax + 0x68]
jmp 0x1800a6f0d
mov edi, 0x3b9aca00
mov rbp, rcx
cmp byte [str.journal_mode], r12b
je 0x1800a6f29
nop dword [rax]
inc rbp
cmp byte [rbp], r12b
jne 0x1800a6f20
sub ebp, ecx
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a6f38
lea ebp, [rdi + 1]
lea rax, [0x1800144b0]
mov r13d, 0x202
test rax, rax
jne 0x1800a6fb3
mov ebx, 0x2460
test word [r15 + 8], bx
jne 0x1800a6f5c
cmp dword [r15 + 0x20], r12d
je 0x1800a6f6b
mov rcx, r15
call fcn.180037d30
lea rcx, str.journal_mode
mov rax, qword [r15 + 0x28]
mov qword [r15 + 0x10], rcx
mov qword [r15 + 0x18], rcx
test rax, rax
jne 0x1800a6f88
call qword [0x18010b5a0]
mov dword [r15 + 0x20], eax
jmp 0x1800a6fe2
cmp rcx, qword [rax + 0x168]
jb 0x1800a6fa7
cmp rcx, qword [rax + 0x170]
jae 0x1800a6fa7
movzx eax, word [rax + 0x148]
mov dword [r15 + 0x20], eax
jmp 0x1800a6fe2
call qword [0x18010b5a0]
mov dword [r15 + 0x20], eax
jmp 0x1800a6fe2
mov ebx, 0x2460
test word [r15 + 8], bx
jne 0x1800a6fc5
cmp dword [r15 + 0x20], r12d
je 0x1800a6fd4
mov rcx, r15
call fcn.180037d30
lea rcx, str.journal_mode
mov qword [r15 + 0x10], rcx
mov qword [r15 + 0x30], r12
mov r13d, 0xa02
mov dword [r15 + 0xc], ebp
mov word [r15 + 8], r13w
mov byte [r15 + 0xa], 1
mov rax, qword [rsp + 0x58]
test rax, rax
jne 0x1800a7003
or r15, 0xffffffffffffffff
jmp 0x1800a70e5
mov r11, rax
cmp byte [rax], r12b
je 0x1800a7018
nop dword [rax + rax]
inc r11
cmp byte [r11], r12b
jne 0x1800a7010
sub r11d, eax
mov r15d, r12d
lea rbx, str.delete
and r11d, 0x3fffffff
lea rdi, [0x1800e8220]
cmp rbx, rdi
je 0x1800a70e1
mov rdx, qword [rbx]
test rdx, rdx
je 0x1800a70e1
mov r8d, r11d
mov rcx, rax
call sym.SQLite.Interop.dll_sqlite3_strnicmp
test eax, eax
je 0x1800a7065
mov rax, qword [rsp + 0x58]
inc r15d
add rbx, 8
jmp 0x1800a7033
cmp r15d, 0xffffffff
je 0x1800a70e5
mov ecx, dword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
mov ebx, dword [rax + 0x28]
sub ebx, 1
movsxd rbp, ebx
js 0x1800a76b3
mov rdi, rbp
movsxd r13, ecx
mov r12, rax
shl rdi, 5
mov rax, qword [r12 + 0x20]
cmp qword [rax + rdi + 8], 0
je 0x1800a70cd
cmp rbp, r13
je 0x1800a70a9
cmp dword [r14 + 8], 0
jne 0x1800a70cd
mov edx, ebx
mov rcx, rsi
call fcn.18001bf90
mov r9d, 1
mov r8d, ebx
lea edx, [r9 + 0xb]
mov rcx, rsi
mov dword [rsp + 0x20], r15d
call fcn.180042780
dec rbp
sub rdi, 0x20
sub ebx, 1
jns 0x1800a7090
xor r12d, r12d
jmp 0x1800a76b3
or r15, 0xffffffffffffffff
cmp dword [r14 + 8], r12d
jne 0x1800a70fb
mov ecx, r12d
mov dword [r14 + 8], 1
jmp 0x1800a706f
mov ecx, dword [rsp + 0x50]
jmp 0x1800a706f
mov rax, qword [rdi + rbp + 8]
mov qword [rsp + 0x90], 0xfffffffffffffffe
mov rcx, qword [rax + 8]
mov rax, qword [rsp + 0x58]
mov rbx, qword [rcx]
test rax, rax
je 0x1800a7160
lea rdx, [rsp + 0x90]
mov rcx, rax
call fcn.180025380
mov r11, qword [rsp + 0x90]
or rax, 0xffffffffffffffff
cmp r11, rax
cmovl r11, rax
mov rax, qword [rbx + 0x138]
mov qword [rbx + 0xc8], r11
test rax, rax
je 0x1800a7160
mov qword [rax + 0x20], r11
mov r8, qword [rbx + 0xc8]
mov rcx, qword [rsp + 0x48]
lea rdx, str.journal_size_limit
call fcn.180059380
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
mov rdi, qword [rdi + rbp + 8]
test rax, rax
jne 0x1800a71ad
mov rcx, rdi
call fcn.180029bd0
mov rcx, qword [rsp + 0x48]
lea rdx, str.auto_vacuum
movsxd r8, eax
call fcn.180059380
jmp case.0x1800a6852.36
mov rcx, rax
call fcn.180022300
mov rcx, rdi
mov ebx, eax
mov rax, qword [rsp + 0x40]
mov edx, ebx
mov byte [rax + 0x53], bl
call fcn.180029c40
test eax, eax
jne case.0x1800a6852.36
cmp ebx, 1
je 0x1800a71df
cmp ebx, 2
jne case.0x1800a6852.36
xor r9d, r9d
lea r8, [0x1800e8248]
mov rcx, rsi
lea edx, [r9 + 6]
call fcn.180042630
mov r11d, eax
cmp dword [rsi + 0x3c], eax
jbe 0x1800a7211
mov rcx, qword [rsi + 8]
mov r8d, dword [rsp + 0x50]
lea rdx, [r11 + r11*2]
mov dword [rcx + rdx*8 + 4], r8d
jmp 0x1800a7216
mov r8d, dword [rsp + 0x50]
lea eax, [r11 + 1]
cmp dword [rsi + 0x3c], eax
jbe 0x1800a722c
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 4], r8d
lea eax, [r11 + 2]
cmp dword [rsi + 0x3c], eax
jbe 0x1800a7245
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
lea edx, [r11 + 4]
mov dword [rax + rcx*8 + 8], edx
lea eax, [r11 + 4]
cmp dword [rsi + 0x3c], eax
jbe 0x1800a725d
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
lea edx, [rbx - 1]
mov dword [rax + rcx*8 + 4], edx
add r11d, 5
cmp dword [rsi + 0x3c], r11d
jbe 0x1800a7274
mov rax, qword [rsi + 8]
lea rcx, [r11 + r11*2]
mov dword [rax + rcx*8 + 4], r8d
mov edx, r8d
mov rcx, rsi
call fcn.18001bf90
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1800a72a7
lea rdx, [rsp + 0x64]
mov rcx, rax
call fcn.180013960
test eax, eax
je 0x1800a72a7
mov ebx, dword [rsp + 0x64]
test ebx, ebx
jg 0x1800a72ac
mov ebx, 0x7fffffff
mov edi, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
xor edx, edx
mov r8d, edi
call fcn.180099b10
mov r9d, 1
mov r8d, ebx
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8d, edi
mov edx, 0x8d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 0x23]
lea r8d, [r9 + 1]
mov ebx, eax
mov dword [rsp + 0x20], r12d
call fcn.180042780
or r9d, 0xffffffff
lea edx, [r9 + 0x26]
lea r8d, [r9 + 2]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r9d, ebx
mov edx, 0x89
mov r8d, 1
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, dword [rsi + 0x3c]
cmp edx, ebx
jbe 0x1800a7352
mov rax, qword [rsi + 8]
lea rcx, [rbx + rbx*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
jne 0x1800a738c
mov rax, qword [rdi + rbp + 0x18]
mov rcx, qword [rsp + 0x48]
lea rdx, str.cache_size
movsxd r8, dword [rax + 0x74]
call fcn.180059380
jmp case.0x1800a6852.36
mov rcx, rax
call fcn.18001e930
mov rcx, qword [rdi + rbp + 0x18]
mov dword [rcx + 0x74], eax
jmp 0x1800a6a5b
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1800a7445
lea rdx, [rsp + 0x80]
mov rcx, rax
call fcn.180025380
mov rdx, qword [rsp + 0x80]
test rdx, rdx
cmovs rdx, qword [0x18010b690]
mov qword [rsp + 0x80], rdx
cmp dword [r14 + 8], r12d
jne 0x1800a73eb
mov r8, qword [rsp + 0x40]
mov qword [r8 + 0x38], rdx
jmp 0x1800a73f0
mov r8, qword [rsp + 0x40]
mov eax, dword [r8 + 0x28]
sub eax, 1
movsxd rbx, eax
js 0x1800a7445
mov rdi, rbx
shl rdi, 5
nop word [rax + rax]
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + rdi + 8]
test rcx, rcx
je 0x1800a743b
cmp rbx, r13
je 0x1800a7429
cmp dword [r14 + 8], r12d
jne 0x1800a743b
call fcn.180029f10
mov rdx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x40]
sub rdi, 0x20
sub rbx, 1
jns 0x1800a7410
mov rcx, qword [rsp + 0x40]
lea r9, [rsp + 0x80]
mov r8d, 0x12
mov rdx, r15
mov qword [rsp + 0x80], 0xffffffffffffffff
call sym.SQLite.Interop.dll_sqlite3_file_control
test eax, eax
jne 0x1800a748e
mov r8, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x48]
lea rdx, str.mmap_size
call fcn.180059380
jmp case.0x1800a6852.36
cmp eax, 0xc
je case.0x1800a6852.36
mov rcx, qword [rsp + 0x48]
inc dword [rcx + 0x4c]
mov dword [rcx + 0x18], eax
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
jne 0x1800a74d1
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
lea rdx, str.temp_store
movzx r8d, byte [rax + 0x50]
call fcn.180059380
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call fcn.1800a34d0
jmp case.0x1800a6852.36
mov r13, qword [rsp + 0x58]
test r13, r13
jne 0x1800a76d3
cmp qword [sym.SQLite.Interop.dll_sqlite3_temp_directory], r12
je case.0x1800a6852.36
lea edx, [r13 + 1]
mov rcx, rsi
call fcn.180046890
mov r11, qword [rsi]
cmp byte [r11 + 0x51], r12b
jne 0x1800a760a
mov r14, qword [rsi + 0x20]
lea r15, str.temp_store_directory
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800a7530
mov edi, dword [rax + 0x68]
jmp 0x1800a7535
mov edi, 0x3b9aca00
mov rbp, r15
cmp byte [str.temp_store_directory], r12b
je 0x1800a754a
inc rbp
cmp byte [rbp], r12b
jne 0x1800a7541
sub ebp, r15d
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a755a
lea ebp, [rdi + 1]
lea rax, [0x1800144b0]
mov r13d, 0x202
test rax, rax
jne 0x1800a75d4
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a757e
cmp dword [r14 + 0x20], r12d
je 0x1800a7586
mov rcx, r14
call fcn.180037d30
mov rax, qword [r14 + 0x28]
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x18], r15
test rax, rax
jne 0x1800a75a6
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a75fc
cmp r15, qword [rax + 0x168]
jb 0x1800a75c5
cmp r15, qword [rax + 0x170]
jae 0x1800a75c5
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x20], eax
jmp 0x1800a75fc
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a75fc
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a75e6
cmp dword [r14 + 0x20], r12d
je 0x1800a75ee
mov rcx, r14
call fcn.180037d30
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x30], r12
mov r13d, 0xa02
mov dword [r14 + 0xc], ebp
mov word [r14 + 8], r13w
mov byte [r14 + 0xa], 1
mov rbp, qword [sym.SQLite.Interop.dll_sqlite3_temp_directory]
mov r9d, 1
xor r8d, r8d
lea edx, [r9 + 0x60]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rsi + 8]
mov rcx, qword [rsi]
test rbx, rbx
je 0x1800a76a9
cmp byte [rcx + 0x51], r12b
jne 0x1800a76a9
test eax, eax
jns 0x1800a7646
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rdi, [rax + rax*2]
movsx edx, byte [rbx + rdi*8 + 1]
mov r8, qword [rbx + rdi*8 + 0x10]
call fcn.180046990
mov qword [rbx + rdi*8 + 0x10], r12
test rbp, rbp
jne 0x1800a7671
mov qword [rbx + rdi*8 + 0x10], r12
mov byte [rbx + rdi*8 + 1], r12b
jmp 0x1800a76b3
mov rax, rbp
cmp byte [rbp], r12b
je 0x1800a7688
nop word [rax + rax]
inc rax
cmp byte [rax], r12b
jne 0x1800a7680
mov rcx, qword [rsi]
sub eax, ebp
mov rdx, rbp
and eax, 0x3fffffff
movsxd r8, eax
call fcn.180034f20
mov byte [rbx + rdi*8 + 1], 0xff
mov qword [rbx + rdi*8 + 0x10], rax
jmp 0x1800a76b3
mov r8, rbp
xor edx, edx
call fcn.180046990
mov r9d, 1
mov edx, 0x23
mov rcx, rsi
mov r8d, r9d
mov dword [rsp + 0x20], r12d
call fcn.180042780
jmp case.0x1800a6852.36
cmp byte [r13], r12b
je 0x1800a7716
mov rax, qword [rsp + 0x40]
lea r9, [rsp + 0x64]
mov r8d, 1
mov rax, qword [rax]
mov rdx, r13
mov rcx, rax
call qword [rax + 0x38]
test eax, eax
jne 0x1800a7700
cmp dword [rsp + 0x64], r12d
jne 0x1800a7716
mov rcx, qword [rsp + 0x48]
lea rdx, str.not_a_writable_directory
call fcn.18003b940
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x50], 1
ja 0x1800a772b
mov rcx, qword [rsp + 0x48]
call fcn.18009fcc0
mov rcx, qword [sym.SQLite.Interop.dll_sqlite3_temp_directory]
call sym.SQLite.Interop.dll_sqlite3_free
cmp byte [r13], r12b
je 0x1800a7758
lea rcx, [0x1800ec31c]
mov rdx, r13
call sym.SQLite.Interop.dll_sqlite3_mprintf
mov qword [sym.SQLite.Interop.dll_sqlite3_temp_directory], rax
jmp case.0x1800a6852.36
mov qword [sym.SQLite.Interop.dll_sqlite3_temp_directory], r12
jmp case.0x1800a6852.36
mov r13, qword [rsp + 0x58]
test r13, r13
jne 0x1800a7932
cmp qword [sym.SQLite.Interop.dll_sqlite3_data_directory], r12
je case.0x1800a6852.36
lea edx, [r13 + 1]
mov rcx, rsi
call fcn.180046890
mov r11, qword [rsi]
cmp byte [r11 + 0x51], r12b
jne 0x1800a788b
mov r14, qword [rsi + 0x20]
lea r15, str.data_store_directory
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800a77b1
mov edi, dword [rax + 0x68]
jmp 0x1800a77b6
mov edi, 0x3b9aca00
mov rbp, r15
cmp byte [str.data_store_directory], r12b
je 0x1800a77cb
inc rbp
cmp byte [rbp], r12b
jne 0x1800a77c2
sub ebp, r15d
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a77db
lea ebp, [rdi + 1]
lea rax, [0x1800144b0]
mov r13d, 0x202
test rax, rax
jne 0x1800a7855
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a77ff
cmp dword [r14 + 0x20], r12d
je 0x1800a7807
mov rcx, r14
call fcn.180037d30
mov rax, qword [r14 + 0x28]
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x18], r15
test rax, rax
jne 0x1800a7827
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a787d
cmp r15, qword [rax + 0x168]
jb 0x1800a7846
cmp r15, qword [rax + 0x170]
jae 0x1800a7846
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x20], eax
jmp 0x1800a787d
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
jmp 0x1800a787d
mov ebx, 0x2460
test word [r14 + 8], bx
jne 0x1800a7867
cmp dword [r14 + 0x20], r12d
je 0x1800a786f
mov rcx, r14
call fcn.180037d30
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x30], r12
mov r13d, 0xa02
mov dword [r14 + 0xc], ebp
mov word [r14 + 8], r13w
mov byte [r14 + 0xa], 1
mov rbp, qword [sym.SQLite.Interop.dll_sqlite3_data_directory]
mov r9d, 1
xor r8d, r8d
lea edx, [r9 + 0x60]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rsi + 8]
mov rcx, qword [rsi]
test rbx, rbx
je 0x1800a76a9
cmp byte [rcx + 0x51], r12b
jne 0x1800a76a9
test eax, eax
jns 0x1800a78cf
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rdi, [rax + rax*2]
movsx edx, byte [rbx + rdi*8 + 1]
mov r8, qword [rbx + rdi*8 + 0x10]
call fcn.180046990
mov qword [rbx + rdi*8 + 0x10], r12
test rbp, rbp
jne 0x1800a78fd
mov qword [rbx + rdi*8 + 0x10], r12
mov byte [rbx + rdi*8 + 1], r12b
jmp 0x1800a76b3
mov rax, rbp
cmp byte [rbp], r12b
je 0x1800a790e
inc rax
cmp byte [rax], r12b
jne 0x1800a7906
mov rcx, qword [rsi]
sub eax, ebp
mov rdx, rbp
and eax, 0x3fffffff
movsxd r8, eax
call fcn.180034f20
mov byte [rbx + rdi*8 + 1], 0xff
mov qword [rbx + rdi*8 + 0x10], rax
jmp 0x1800a76b3
cmp byte [r13], r12b
je 0x1800a7967
mov rax, qword [rsp + 0x40]
lea r9, [rsp + 0x64]
mov r8d, 1
mov rax, qword [rax]
mov rdx, r13
mov rcx, rax
call qword [rax + 0x38]
test eax, eax
jne 0x1800a7700
cmp dword [rsp + 0x64], r12d
je 0x1800a7700
mov rcx, qword [sym.SQLite.Interop.dll_sqlite3_data_directory]
call sym.SQLite.Interop.dll_sqlite3_free
cmp byte [r13], r12b
je 0x1800a7994
lea rcx, [0x1800ec31c]
mov rdx, r13
call sym.SQLite.Interop.dll_sqlite3_mprintf
mov qword [sym.SQLite.Interop.dll_sqlite3_data_directory], rax
jmp case.0x1800a6852.36
mov qword [sym.SQLite.Interop.dll_sqlite3_data_directory], r12
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x58]
test rcx, rcx
jne 0x1800a79ca
movzx eax, byte [rdi + rbp + 0x10]
mov rcx, qword [rsp + 0x48]
lea rdx, str.synchronous
dec eax
movsxd r8, eax
call fcn.180059380
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x4f], r12b
jne 0x1800a79eb
mov rcx, qword [rsp + 0x48]
lea rdx, str.Safety_level_may_not_be_changed_inside_a_transaction
call fcn.18003b940
jmp case.0x1800a6852.36
mov r8b, 1
xor edx, edx
call fcn.180022450
mov rcx, qword [rsp + 0x40]
inc al
mov byte [rdi + rbp + 0x10], al
call fcn.18002c2c0
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x58]
test rcx, rcx
jne 0x1800a7a42
mov rcx, qword [rsp + 0x40]
mov eax, dword [r11 + rbx*8 + 0xe7dec]
mov rdx, qword [r11 + rbx*8 + 0xe7de0]
test dword [rcx + 0x2c], eax
mov rcx, qword [rsp + 0x48]
setne r12b
mov r8, r12
call fcn.180059380
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x40]
mov ebx, dword [r11 + rbx*8 + 0xe7dec]
cmp byte [rax + 0x4f], r12b
jne 0x1800a7a59
btr ebx, 0x13
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.180022450
test al, al
je 0x1800a7a73
mov rax, qword [rsp + 0x40]
or dword [rax + 0x2c], ebx
jmp 0x1800a7a8e
mov rcx, qword [rsp + 0x40]
mov eax, ebx
not eax
and dword [rcx + 0x2c], eax
cmp ebx, 0x1000000
jne 0x1800a7a8e
mov qword [rcx + 0x318], r12
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8e
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rcx, qword [rsp + 0x40]
call fcn.18002c2c0
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je case.0x1800a6852.36
mov rcx, qword [rsp + 0x40]
mov r8, r15
mov rdx, rax
call fcn.180028fb0
mov qword [rsp + 0x78], rax
test rax, rax
je case.0x1800a6852.36
mov rcx, rax
mov dword [rsp + 0x60], r12d
call fcn.18000f6d0
mov edx, 6
mov rcx, rsi
mov qword [rsp + 0xc8], rax
call fcn.180046890
mov rax, qword [rsp + 0x48]
mov edx, dword [rsp + 0x50]
mov rcx, rax
mov dword [rax + 0x54], 6
call fcn.180091ec0
mov r11, qword [rsi]
mov edi, 0x3b9aca00
mov r13d, 0x202
lea rcx, [0x1800144b0]
mov ebx, 0x2460
cmp byte [r11 + 0x51], r12b
jne 0x1800a7c2a
mov r14, qword [rsi + 0x20]
lea r15, [0x1800eeb40]
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800a7b58
mov eax, dword [rax + 0x68]
jmp 0x1800a7b5a
mov eax, edi
mov rbp, r15
nop dword [rax]
inc rbp
cmp byte [rbp], r12b
jne 0x1800a7b60
sub ebp, r15d
and ebp, 0x3fffffff
cmp ebp, eax
jle 0x1800a7b79
lea ebp, [rax + 1]
mov word [rsp + 0x64], r13w
test rcx, rcx
jne 0x1800a7bf3
test word [r14 + 8], bx
jne 0x1800a7b91
cmp dword [r14 + 0x20], r12d
je 0x1800a7b99
mov rcx, r14
call fcn.180037d30
mov rax, qword [r14 + 0x28]
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x18], r15
test rax, rax
jne 0x1800a7bbd
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
mov eax, dword [rsp + 0x64]
jmp 0x1800a7c15
cmp r15, qword [rax + 0x168]
jb 0x1800a7be0
cmp r15, qword [rax + 0x170]
jae 0x1800a7be0
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x20], eax
mov eax, dword [rsp + 0x64]
jmp 0x1800a7c15
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x20], eax
mov eax, dword [rsp + 0x64]
jmp 0x1800a7c15
test word [r14 + 8], bx
jne 0x1800a7c00
cmp dword [r14 + 0x20], r12d
je 0x1800a7c08
mov rcx, r14
call fcn.180037d30
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x30], r12
mov eax, 0xa02
mov dword [r14 + 0xc], ebp
mov word [r14 + 8], ax
mov byte [r14 + 0xa], 1
lea rcx, [0x1800144b0]
mov rax, qword [rsi]
cmp byte [rax + 0x51], r12b
jne 0x1800a7d05
mov r14, qword [rsi + 0x20]
lea r15, str.name
mov rax, qword [r14 + 0x60]
test rax, rax
je 0x1800a7c4e
mov edi, dword [rax + 0x68]
mov rbp, r15
inc rbp
cmp byte [rbp], r12b
jne 0x1800a7c51
sub ebp, r15d
and ebp, 0x3fffffff
cmp ebp, edi
jle 0x1800a7c6a
lea ebp, [rdi + 1]
test rcx, rcx
jne 0x1800a7cd3
test word [r14 + 0x40], bx
jne 0x1800a7c7c
cmp dword [r14 + 0x58], r12d
je 0x1800a7c85
lea rcx, [r14 + 0x38]
call fcn.180037d30
mov rax, qword [r14 + 0x60]
mov qword [r14 + 0x48], r15
mov qword [r14 + 0x50], r15
test rax, rax
jne 0x1800a7ca5
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x58], eax
jmp 0x1800a7cf7
cmp r15, qword [rax + 0x168]
jb 0x1800a7cc4
cmp r15, qword [rax + 0x170]
jae 0x1800a7cc4
movzx eax, word [rax + 0x148]
mov dword [r14 + 0x58], eax
jmp 0x1800a7cf7
mov rcx, r15
call qword [0x18010b5a0]
mov dword [r14 + 0x58], eax
jmp 0x1800a7cf7
test word [r14 + 0x40], bx
jne 0x1800a7ce0
cmp dword [r14 + 0x58], r12d
je 0x1800a7ce9
lea rcx, [r14 + 0x38]
call fcn.180037d30
mov qword [r14 + 0x48], r15
mov qword [r14 + 0x68], r12
mov r13d, 0xa02
mov dword [r14 + 0x44], ebp
mov word [r14 + 0x40], r13w
mov byte [r14 + 0x42], 1
xor r8d, r8d
lea r9, str.type
mov rcx, rsi
lea edx, [r8 + 2]
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r13d, 3
lea r9, str.notnull
mov edx, r13d
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.dflt_value
lea edx, [r13 + 1]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, [0x1800eeb6c]
lea edx, [r13 + 2]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r14, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x48]
mov rdx, r14
call fcn.18006e470
cmp r12w, word [r14 + 0x42]
mov rbp, qword [r14 + 8]
mov edi, r12d
jge case.0x1800a6852.36
mov r15d, r12d
nop dword [rax]
test byte [rbp + 0x2b], 2
je 0x1800a7db4
inc dword [rsp + 0x60]
mov r15d, dword [rsp + 0x60]
jmp 0x1800a7f23
mov edx, 0x19
mov r8d, edi
mov rcx, rsi
lea r9d, [rdx - 0x18]
sub r8d, r15d
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rbp]
mov r9d, 2
lea edx, [r9 + 0x5f]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rsi
mov edx, eax
call fcn.18004d500
mov r11, qword [rbp + 0x18]
lea rbx, [0x1800ec114]
test r11, r11
mov r9d, r13d
mov rcx, rsi
cmovne rbx, r11
xor r8d, r8d
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0x61]
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rsi
call fcn.18004d500
mov r8d, r12d
mov edx, 0x19
cmp byte [rbp + 0x28], r8b
lea r9d, [rdx - 0x15]
mov rcx, rsi
setne r8b
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rbp + 0x10]
test rbx, rbx
je 0x1800a7e8d
mov r9d, 5
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x5c]
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rsi
call fcn.18004d500
jmp 0x1800a7ea7
mov r9d, 5
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x17]
mov dword [rsp + 0x20], r12d
call fcn.180042780
test byte [rbp + 0x2b], 1
jne 0x1800a7eb2
mov r8d, r12d
jmp 0x1800a7ef3
mov rax, qword [rsp + 0xc8]
test rax, rax
jne 0x1800a7ec5
lea r8d, [rax + 1]
jmp 0x1800a7ef3
movsx edx, word [r14 + 0x42]
mov r8d, 1
cmp edx, r8d
jl 0x1800a7ef3
mov rcx, qword [rax + 8]
nop dword [rax]
movsx eax, word [rcx]
cmp eax, edi
je 0x1800a7ef3
inc r8d
add rcx, 2
cmp r8d, edx
jle 0x1800a7ee0
mov edx, 0x19
mov rcx, rsi
mov dword [rsp + 0x20], r12d
lea r9d, [rdx - 0x13]
call fcn.180042780
mov edx, 0x23
mov rcx, rsi
lea r9d, [rdx - 0x1d]
lea r8d, [rdx - 0x22]
mov dword [rsp + 0x20], r12d
call fcn.180042780
movsx eax, word [r14 + 0x42]
inc edi
add rbp, 0x30
cmp edi, eax
jl 0x1800a7da0
jmp case.0x1800a6852.36
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.180049910
mov edx, 4
mov rcx, rax
mov rsi, rax
call fcn.180046890
mov edx, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rbx + 0x54], 4
call fcn.180091ec0
lea r9, str.table
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
xor r8d, r8d
lea r9, str.index
lea edx, [r8 + 1]
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r15d, 2
lea r9, str.width
mov edx, r15d
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r13d, 3
lea r9, str.height
mov edx, r13d
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r11, qword [rdi + rbp + 0x18]
mov rbp, qword [r11 + 0x10]
test rbp, rbp
je case.0x1800a6852.36
lea r14d, [r15 + 0x5f]
nop word [rax + rax]
mov rdi, qword [rbp + 0x10]
mov r9d, 1
xor r8d, r8d
mov rbx, qword [rdi]
mov edx, r14d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rsi
mov edx, eax
call fcn.18004d500
xor r8d, r8d
mov r9d, r15d
lea edx, [r8 + 0x1c]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
movzx ecx, word [rdi + 0x46]
call fcn.1800133d0
mov r9d, r13d
mov edx, 0x19
mov rcx, rsi
mov r8, rax
mov dword [rsp + 0x20], r12d
call fcn.180042780
movzx ecx, word [rdi + 0x38]
call fcn.1800133d0
mov edx, 0x19
mov rcx, rsi
lea r9d, [rdx - 0x15]
mov r8, rax
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, 0x23
mov rcx, rsi
lea r9d, [rdx - 0x1f]
lea r8d, [rdx - 0x22]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [rdi + 0x10]
test rdi, rdi
je 0x1800a8148
mov rbx, qword [rdi]
mov r9d, r15d
xor r8d, r8d
mov edx, r14d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rsi
call fcn.18004d500
movzx ecx, word [rdi + 0x54]
call fcn.1800133d0
mov r9d, r13d
mov edx, 0x19
mov rcx, rsi
mov r8, rax
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r11, qword [rdi + 0x10]
movzx ecx, word [r11]
call fcn.1800133d0
mov edx, 0x19
mov rcx, rsi
lea r9d, [rdx - 0x15]
mov r8, rax
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, 0x23
mov rcx, rsi
lea r9d, [rdx - 0x1f]
lea r8d, [rdx - 0x22]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1800a80b1
mov rbp, qword [rbp]
test rbp, rbp
jne 0x1800a8000
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je case.0x1800a6852.36
mov rcx, qword [rsp + 0x40]
mov r8, r15
mov rdx, rax
call fcn.180028ea0
mov r14, rax
test rax, rax
je case.0x1800a6852.36
mov rax, qword [rax + 0x18]
mov edi, 3
mov rcx, rsi
mov edx, edi
mov qword [rsp + 0x78], rax
call fcn.180046890
mov rax, qword [rsp + 0x48]
mov edx, dword [rsp + 0x50]
mov rcx, rax
mov dword [rax + 0x54], edi
call fcn.180091ec0
lea r9, str.seqno
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, [0x1800eeb40]
lea edx, [rdi - 2]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.name
lea edx, [rdi - 1]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov ebp, r12d
cmp r12w, word [r14 + 0x56]
jae case.0x1800a6852.36
mov r15, qword [rsp + 0x78]
mov r13, r12
mov rax, qword [r14 + 8]
mov r9d, 1
mov r8d, ebp
movsx rbx, word [r13 + rax]
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, 0x19
lea r9d, [rdx - 0x17]
mov r8d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rax, qword [r15 + 8]
lea rcx, [rbx + rbx*2]
xor r8d, r8d
mov r9d, edi
add rcx, rcx
lea edx, [r8 + 0x61]
mov dword [rsp + 0x20], r12d
mov rbx, qword [rax + rcx*8]
mov rcx, rsi
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rsi
call fcn.18004d500
mov edx, 0x23
mov r9d, edi
lea r8d, [rdx - 0x22]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
movzx eax, word [r14 + 0x56]
inc ebp
add r13, 2
cmp ebp, eax
jl 0x1800a8213
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je case.0x1800a6852.36
mov rcx, qword [rsp + 0x40]
mov r8, r15
mov rdx, rax
call fcn.180028fb0
mov rsi, rax
test rax, rax
je case.0x1800a6852.36
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.180049910
mov ebp, 3
mov rcx, rax
mov edx, ebp
mov rdi, rax
call fcn.180046890
mov edx, dword [rsp + 0x50]
mov rcx, rbx
mov dword [rbx + 0x54], ebp
call fcn.180091ec0
lea r9, [0x1800eeb88]
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.name
lea edx, [rbp - 2]
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r15d, 2
lea r9, str.unique
mov edx, r15d
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov rsi, qword [rsi + 0x10]
mov r13d, r12d
test rsi, rsi
je case.0x1800a6852.36
lea r14d, [rbp + 0x5e]
nop word [rax + rax]
mov r9d, 1
mov r8d, r13d
mov rcx, rdi
lea edx, [r9 + 0x18]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rsi]
mov r9d, r15d
xor r8d, r8d
mov edx, r14d
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rdi
mov edx, eax
call fcn.18004d500
mov r8d, r12d
mov r9d, ebp
cmp byte [rsi + 0x5a], r8b
mov edx, 0x19
mov rcx, rdi
setne r8b
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, 0x23
mov r9d, ebp
lea r8d, [rdx - 0x22]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rsi, qword [rsi + 0x28]
inc r13d
test rsi, rsi
jne 0x1800a8380
jmp case.0x1800a6852.36
mov ebp, 3
mov rcx, rsi
mov edx, ebp
call fcn.180046890
mov rax, qword [rsp + 0x48]
lea r9, [0x1800eeb88]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov dword [rax + 0x54], ebp
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.name
lea edx, [rbp - 2]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r15d, 2
lea r9, str.file
mov edx, r15d
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov rdx, qword [rsp + 0x40]
cmp dword [rdx + 0x28], r12d
mov r13d, r12d
jle 0x1800aa34e
mov rdi, r12
lea r14d, [rbp + 0x5e]
nop word [rax + rax]
mov rax, qword [rdx + 0x20]
cmp qword [rax + rdi + 8], r12
je 0x1800a856b
mov r9d, 1
mov r8d, r13d
mov rcx, rsi
lea edx, [r9 + 0x18]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rax, qword [rsp + 0x40]
mov r9d, r15d
mov r11, qword [rax + 0x20]
xor r8d, r8d
mov edx, r14d
mov rbx, qword [rdi + r11]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rsi
call fcn.18004d500
mov rax, qword [rsp + 0x40]
mov r11, qword [rax + 0x20]
mov rax, qword [r11 + rdi + 8]
mov rcx, qword [rax + 8]
mov rbx, qword [rcx]
cmp byte [rbx + 0x13], r12b
je 0x1800a8520
lea rbx, [0x1800ec114]
jmp 0x1800a8527
mov rbx, qword [rbx + 0xd0]
mov r9d, ebp
xor r8d, r8d
mov edx, r14d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rsi
call fcn.18004d500
mov edx, 0x23
mov r9d, ebp
lea r8d, [rdx - 0x22]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdx, qword [rsp + 0x40]
inc r13d
add rdi, 0x20
cmp r13d, dword [rdx + 0x28]
jl 0x1800a84a0
jmp case.0x1800a6852.36
mov r14d, 2
mov rcx, rsi
mov ebp, r12d
mov edx, r14d
call fcn.180046890
mov rax, qword [rsp + 0x48]
lea r9, [0x1800eeb88]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov dword [rax + 0x54], r14d
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.name
lea edx, [r14 - 1]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rdx + 0x290]
test rdi, rdi
je 0x1800aa34e
lea r13d, [r14 + 0x5f]
nop dword [rax + rax]
mov rbx, qword [rdi + 0x10]
mov r9d, 1
mov r8d, ebp
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rbx]
mov r9d, r14d
xor r8d, r8d
mov edx, r13d
mov rcx, rsi
inc ebp
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rsi
mov edx, eax
call fcn.18004d500
mov edx, 0x23
mov r9d, r14d
lea r8d, [rdx - 0x22]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1800a85f0
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je case.0x1800a6852.36
mov rcx, qword [rsp + 0x40]
mov r8, r15
mov rdx, rax
call fcn.180028fb0
mov rbx, rax
mov qword [rsp + 0x78], rax
test rax, rax
je case.0x1800a6852.36
mov rdi, qword [rsp + 0x48]
mov rcx, rdi
call fcn.180049910
mov r15, qword [rbx + 0x20]
mov r13, rax
test r15, r15
je case.0x1800a6852.36
mov esi, 8
mov ebx, r12d
mov rcx, rax
mov edx, esi
mov dword [rsp + 0x68], ebx
call fcn.180046890
mov edx, dword [rsp + 0x50]
mov rcx, rdi
mov dword [rdi + 0x54], esi
call fcn.180091ec0
lea r9, [0x1800eeb94]
xor r8d, r8d
xor edx, edx
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, [0x1800eeb88]
lea edx, [rsi - 7]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.table
lea edx, [rsi - 6]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.from
lea edx, [rsi - 5]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, [0x1800eeba0]
lea edx, [rsi - 4]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.on_update
lea edx, [rsi - 3]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.on_delete
lea edx, [rsi - 2]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9, str.match
lea edx, [rsi - 1]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], r12
call fcn.1800549e0
nop
cmp dword [r15 + 0x28], r12d
mov r14d, r12d
jle 0x1800a89da
lea rax, [r15 + 0x40]
mov qword [rsp + 0x88], rax
nop dword [rax]
movzx ecx, byte [r15 + 0x2d]
mov rdi, qword [rax + 8]
call fcn.18000f1b0
movzx ecx, byte [r15 + 0x2e]
mov rbp, rax
call fcn.18000f1b0
mov r9d, 1
lea edx, [r9 + 0x18]
mov r8d, ebx
mov rcx, r13
mov rsi, rax
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r9d, 2
mov r8d, r14d
mov rcx, r13
lea edx, [r9 + 0x17]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [r15 + 0x10]
mov r9d, 3
lea edx, [r9 + 0x5e]
xor r8d, r8d
mov rcx, r13
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, r13
mov edx, eax
call fcn.18004d500
mov r10, qword [rsp + 0x88]
mov rax, qword [rsp + 0x78]
movsxd r11, dword [r10]
mov rax, qword [rax + 8]
mov r9d, 4
lea rcx, [r11 + r11*2]
lea edx, [r9 + 0x5d]
xor r8d, r8d
add rcx, rcx
mov dword [rsp + 0x20], r12d
mov rbx, qword [rax + rcx*8]
mov rcx, r13
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, r13
call fcn.18004d500
mov ebx, 0x61
mov edx, 0x1c
test rdi, rdi
lea r9d, [rbx - 0x5c]
mov rcx, r13
cmovne edx, ebx
xor r8d, r8d
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rdi
mov edx, eax
mov rcx, r13
call fcn.18004d500
lea r9d, [rbx - 0x5b]
xor r8d, r8d
mov edx, ebx
mov rcx, r13
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rsi
mov edx, eax
mov rcx, r13
call fcn.18004d500
lea r9d, [rbx - 0x5a]
xor r8d, r8d
mov edx, ebx
mov rcx, r13
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbp
mov edx, eax
mov rcx, r13
call fcn.18004d500
mov esi, 8
xor r8d, r8d
mov edx, ebx
mov rcx, r13
mov r9d, esi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [r13 + 8]
mov rcx, qword [r13]
test rdi, rdi
je 0x1800a898e
cmp byte [rcx + 0x51], r12b
jne 0x1800a898e
test eax, eax
jns 0x1800a8940
mov eax, dword [r13 + 0x3c]
dec eax
cdqe
lea rbx, [rax + rax*2]
movsx edx, byte [rdi + rbx*8 + 1]
mov r8, qword [rdi + rbx*8 + 0x10]
call fcn.180046990
lea rbp, str.NONE
mov qword [rdi + rbx*8 + 0x10], r12
mov rax, rbp
inc rax
cmp byte [rax], r12b
jne 0x1800a8964
mov rcx, qword [r13]
sub eax, ebp
mov rdx, rbp
and eax, 0x3fffffff
movsxd r8, eax
call fcn.180034f20
mov byte [rdi + rbx*8 + 1], 0xff
mov qword [rdi + rbx*8 + 0x10], rax
jmp 0x1800a899c
lea r8, str.NONE
xor edx, edx
call fcn.180046990
mov edx, 0x23
mov r9d, esi
mov rcx, r13
lea r8d, [rdx - 0x22]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rax, qword [rsp + 0x88]
mov ebx, dword [rsp + 0x68]
add rax, 0x10
inc r14d
cmp r14d, dword [r15 + 0x28]
mov qword [rsp + 0x88], rax
jl 0x1800a87c0
mov r15, qword [r15 + 8]
inc ebx
mov dword [rsp + 0x68], ebx
test r15, r15
jne 0x1800a87a0
jmp case.0x1800a6852.36
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
mov eax, dword [rbx + 0x54]
lea r14d, [rax + 5]
lea esi, [rax + 1]
mov dword [rsp + 0x64], r14d
inc r14d
mov dword [rsp + 0x70], esi
mov dword [rsp + 0x68], r14d
mov dword [rbx + 0x54], r14d
call fcn.180049910
mov rcx, rax
mov edx, 4
mov rdi, rax
call fcn.180046890
lea r9, str.table
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
xor r8d, r8d
lea r9, str.rowid
lea edx, [r8 + 1]
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
xor r8d, r8d
lea r9, str.parent
lea edx, [r8 + 2]
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
xor r8d, r8d
lea r9, str.fkid
lea edx, [r8 + 3]
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov edx, dword [rsp + 0x50]
mov rcx, rbx
call fcn.180091ec0
mov rax, qword [rsp + 0x40]
mov r11, qword [rax + 0x20]
mov rax, qword [r11 + rbp + 0x18]
mov rax, qword [rax + 0x10]
test rax, rax
je case.0x1800a6852.36
mov ebp, 0x61
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1800a8af6
mov r8, rcx
mov r9, r15
xor edx, edx
mov rcx, rbx
call fcn.1800409d0
mov r13, rax
mov qword [rsp + 0x88], rax
mov rax, r12
mov qword [rsp + 0xc0], rax
jmp 0x1800a8b0d
mov r13, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x88], r13
test r13, r13
je 0x1800a900d
cmp qword [r13 + 0x20], r12
je 0x1800a900d
mov rax, qword [r13]
mov r8d, dword [r13 + 0x3c]
mov edx, dword [rsp + 0x50]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.180040aa0
movsx eax, word [r13 + 0x42]
add eax, r14d
cmp eax, dword [rbx + 0x54]
jle 0x1800a8b4c
mov dword [rbx + 0x54], eax
mov r8d, dword [rsp + 0x50]
mov r9, r13
xor edx, edx
mov rcx, rbx
mov dword [rsp + 0x20], 0x36
call fcn.18006a620
mov rbx, qword [r13]
mov r9d, esi
xor r8d, r8d
mov edx, ebp
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rdi
mov edx, eax
call fcn.18004d500
mov rsi, qword [r13 + 0x20]
mov ebp, 1
test rsi, rsi
je 0x1800a8c7c
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsp + 0x40]
mov r8, r15
call fcn.180028fb0
mov rbx, rax
test rax, rax
je 0x1800a8c6d
mov rcx, qword [rax]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rax + 0x3c]
mov edx, dword [rsp + 0x50]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov rcx, r15
mov qword [rsp + 0x80], r12
call fcn.180040aa0
lea r9, [rsp + 0x80]
mov r8, rsi
mov rdx, rbx
mov rcx, r15
mov qword [rsp + 0x20], r12
call fcn.18003f890
test eax, eax
jne case.0x1800a6852.36
mov r15, qword [rsp + 0x80]
test r15, r15
jne 0x1800a8c3c
mov r8d, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov r9, rbx
mov edx, ebp
mov dword [rsp + 0x20], 0x36
call fcn.18006a620
mov r15, qword [rsp + 0xb8]
jmp 0x1800a8c6d
mov eax, dword [rsp + 0x50]
mov r9d, dword [r15 + 0x50]
mov r8d, ebp
mov edx, 0x36
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.180042780
mov rcx, qword [rsp + 0x48]
mov rdx, r15
call fcn.180068e00
mov r15, qword [rsp + 0xb8]
mov rsi, qword [rsi + 8]
inc ebp
test rsi, rsi
jne 0x1800a8ba1
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x50], ebp
jge 0x1800a8c89
mov dword [rax + 0x50], ebp
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 0x6c]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rsi, qword [r13 + 0x20]
mov dword [rsp + 0x60], 1
mov ebx, eax
mov dword [rsp + 0xb0], eax
test rsi, rsi
je 0x1800a8fcd
mov eax, dword [rsp + 0x70]
lea ecx, [rax + 1]
mov dword [rsp + 0x98], ecx
lea ecx, [rax + 2]
add eax, 3
mov dword [rsp + 0xa8], ecx
mov dword [rsp + 0xac], eax
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsp + 0x40]
mov r8, r15
call fcn.180028fb0
mov qword [rsp + 0x80], r12
mov r15, r12
mov rbx, rax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x90], r12
test rax, rax
je 0x1800a8d3e
mov rcx, qword [rsp + 0x48]
lea rax, [rsp + 0x90]
lea r9, [rsp + 0x80]
mov r8, rsi
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.18003f890
mov r15, qword [rsp + 0x90]
mov rcx, rdi
call fcn.180042710
mov ebp, eax
mov dword [rsp + 0x6c], eax
test rbx, rbx
je 0x1800a8e28
cmp qword [rsp + 0x80], r12
jne 0x1800a8e28
mov ebx, dword [rsi + 0x40]
movsx ecx, word [r13 + 0x40]
cmp ebx, ecx
je 0x1800a8dce
xor r8d, r8d
mov r9d, ebx
mov rcx, rdi
lea edx, [r8 + 0x2f]
mov dword [rsp + 0x20], r14d
call fcn.180042780
mov r9d, r14d
mov r8d, ebx
mov rdx, r13
mov rcx, rdi
call fcn.18006edc0
mov r9d, ebp
mov r8d, r14d
mov edx, 0x4c
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r9d, dword [rdi + 0x3c]
mov r8d, r14d
mov edx, 0x26
mov rcx, rdi
add r9d, 3
mov dword [rsp + 0x20], r12d
call fcn.180042780
jmp 0x1800a8de5
xor r8d, r8d
mov r9d, r14d
mov rcx, rdi
lea edx, [r8 + 0x67]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov rcx, rdi
lea edx, [r9 + 0x46]
mov dword [rsp + 0x20], r14d
call fcn.180042780
xor r8d, r8d
mov r9d, ebp
lea edx, [r8 + 0x10]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, dword [rdi + 0x3c]
mov rcx, rdi
sub edx, 2
call fcn.18001bfe0
jmp 0x1800a8f0a
cmp dword [rsi + 0x28], r12d
mov r14d, r12d
jle 0x1800a8ea4
mov ebx, dword [rsp + 0x68]
mov rbp, r15
lea r13, [rsi + 0x40]
nop dword [rax]
test r15, r15
je 0x1800a8e4b
mov r9d, dword [rbp]
jmp 0x1800a8e4f
mov r9d, dword [r13]
mov rdx, qword [rsp + 0x88]
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.180072570
mov r9d, dword [rsp + 0x6c]
mov r8d, ebx
mov edx, 0x4c
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
inc r14d
inc ebx
add r13, 0x10
add rbp, 4
cmp r14d, dword [rsi + 0x28]
jl 0x1800a8e40
mov ebp, dword [rsp + 0x6c]
mov r13, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x1800a8f05
mov rdx, qword [rsp + 0x80]
mov rcx, rdi
call fcn.180031d70
mov ecx, dword [rsi + 0x28]
mov r14d, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x64]
mov dword [rsp + 0x30], ecx
mov r9d, ecx
mov qword [rsp + 0x28], rax
mov rcx, rdi
mov r8d, r14d
mov edx, 0x31
mov dword [rsp + 0x20], ebx
call fcn.18004d940
mov r8d, dword [rsp + 0x60]
mov r9d, ebp
mov edx, 0x45
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], ebx
call fcn.18004d7b0
jmp 0x1800a8f0a
mov r14d, dword [rsp + 0x68]
mov r9d, dword [rsp + 0x98]
xor r8d, r8d
mov rcx, rdi
lea edx, [r8 + 0x67]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r9d, dword [rsp + 0xa8]
mov rbx, qword [rsi + 0x10]
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0x61]
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov edx, eax
mov rcx, rdi
call fcn.18004d500
mov ebx, dword [rsp + 0x60]
mov r9d, dword [rsp + 0xac]
lea r8d, [rbx - 1]
mov edx, 0x19
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r8d, dword [rsp + 0x70]
mov r9d, 4
mov rcx, rdi
mov dword [rsp + 0x20], r12d
lea edx, [r9 + 0x1f]
call fcn.180042780
mov edx, ebp
mov rcx, rdi
call fcn.1800110e0
mov rcx, qword [rsp + 0x40]
mov rdx, r15
call fcn.18002acd0
mov rsi, qword [rsi + 8]
mov r15, qword [rsp + 0xb8]
inc ebx
mov dword [rsp + 0x60], ebx
test rsi, rsi
jne 0x1800a8ce0
mov ebx, dword [rsp + 0xb0]
xor r8d, r8d
lea r9d, [rbx + 1]
mov rcx, rdi
lea edx, [r8 + 9]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, ebx
mov rcx, rdi
call fcn.18001bfe0
mov r15, qword [rsp + 0xb8]
mov esi, dword [rsp + 0x70]
mov rax, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0x48]
mov ebp, 0x61
test rax, rax
jne 0x1800a8ac4
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je case.0x1800a6852.36
xor r8d, r8d
mov rcx, rax
lea edx, [r8 + 1]
call fcn.180022450
mov rcx, qword [rsp + 0x40]
test al, al
setne r12b
mov edx, r12d
call fcn.18006b120
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0x48]
mov ebx, r12d
movzx eax, byte [rax]
mov rcx, rsi
cmp byte [rax + r11 + 0xe6870], 0x71
sete bl
or rax, 0xffffffffffffffff
cmp qword [r14], r12
mov r14d, dword [rsp + 0x50]
lea edx, [rax + 2]
mov dword [rbp + 0x54], 6
cmove r14d, eax
mov dword [rsp + 0x50], r14d
call fcn.180046890
lea r9, [0x1800e54b8]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov rax, qword [rsp + 0x58]
mov edi, 0x64
mov dword [rsp + 0x64], edi
mov dword [rsp + 0x6c], edi
test rax, rax
je 0x1800a90e7
lea rdx, [rsp + 0x6c]
mov rcx, rax
call fcn.180013960
mov r11d, dword [rsp + 0x6c]
test r11d, r11d
cmovle r11d, edi
mov edi, r11d
mov dword [rsp + 0x64], r11d
mov r9d, 1
mov r8d, edi
mov rcx, rsi
lea edx, [r9 + 0x18]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r13, qword [rsp + 0x40]
mov eax, r12d
cmp dword [r13 + 0x28], eax
mov dword [rsp + 0x60], eax
mov r15d, 3
jle 0x1800a9c7f
movsxd rdx, r14d
movsxd rcx, ebx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x90], rcx
mov edi, r12d
test rdx, rdx
js 0x1800a9141
cmp eax, r14d
jne 0x1800a9c6b
mov edx, eax
mov rcx, rbp
call fcn.180091ec0
xor r9d, r9d
mov edx, 0x89
lea r8d, [r9 + 1]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
mov ebx, eax
call fcn.180042780
mov edx, ebx
mov rcx, rsi
call fcn.18001bfe0
mov rax, qword [rsp + 0x40]
movsxd r13, dword [rsp + 0x60]
mov rax, qword [rax + 0x20]
shl r13, 5
mov r14, qword [r13 + rax + 0x18]
mov rbp, qword [r14 + 0x10]
test rbp, rbp
je 0x1800a920e
nop word [rax + rax]
mov rbx, qword [rbp + 0x10]
test byte [rbx + 0x48], 0x20
jne 0x1800a91d6
mov r8d, dword [rbx + 0x3c]
lea r9d, [rdi + 2]
mov edx, 0x19
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
inc edi
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x1800a9205
nop
mov r8d, dword [rbx + 0x50]
lea r9d, [rdi + 2]
mov edx, 0x19
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rbx + 0x28]
inc edi
test rbx, rbx
jne 0x1800a91e0
mov rbp, qword [rbp]
test rbp, rbp
jne 0x1800a91b0
mov rbp, qword [rsp + 0x48]
lea ecx, [rdi + 8]
mov ebx, 2
mov eax, dword [rbp + 0x54]
lea edx, [rbx + 0x7d]
mov r9d, edi
cmp eax, ecx
mov r8d, ebx
mov dword [rsp + 0x20], 1
cmovg ecx, eax
mov dword [rbp + 0x54], ecx
mov rcx, rsi
call fcn.180042780
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x1800a9258
movsxd rax, dword [rsi + 0x3c]
lea rcx, [rax + rax*2]
mov eax, dword [rsp + 0x60]
mov byte [rdx + rcx*8 - 0x15], al
xor r9d, r9d
mov r8d, ebx
mov rcx, rsi
lea edx, [r9 + 0x4c]
mov dword [rsp + 0x20], r12d
call fcn.180042780
lea rdx, str._in_database__s__n
mov edi, eax
mov rax, qword [rsp + 0x40]
mov r8, qword [rax + 0x20]
mov rcx, rax
mov r8, qword [r13 + r8]
call fcn.18003bc00
xor r8d, r8d
mov r9d, r15d
lea edx, [r8 + 0x61]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
mov rbx, rax
call fcn.180042780
or r9d, 0xffffffff
mov r8, rbx
mov rcx, rsi
mov edx, eax
call fcn.18004d500
mov ebx, 2
mov rcx, rsi
lea r9d, [rbx + 2]
lea edx, [rbx + 0x1e]
mov r8d, ebx
mov dword [rsp + 0x20], 1
call fcn.180042780
lea edx, [rbx + 0x5c]
lea r8d, [rbx + 2]
mov r9d, r15d
mov rcx, rsi
mov dword [rsp + 0x20], ebx
call fcn.180042780
lea r9d, [rbx - 1]
lea edx, [rbx + 0x21]
mov r8d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, edi
mov rcx, rsi
call fcn.18001bfe0
mov r13, qword [r14 + 0x10]
mov qword [rsp + 0xc8], r13
test r13, r13
je 0x1800a9c58
mov rcx, qword [rsp + 0x90]
nop dword [rax]
test rcx, rcx
jne 0x1800a9c43
mov r14, qword [r13 + 0x10]
or r13d, 0xffffffff
mov qword [rsp + 0xc0], r12
mov dword [rsp + 0x70], r13d
cmp qword [r14 + 0x10], r12
je 0x1800a9c26
test byte [r14 + 0x48], 0x20
jne 0x1800a9369
mov qword [rsp + 0x88], r12
jmp 0x1800a9379
mov rcx, r14
call fcn.18000f6d0
mov qword [rsp + 0x88], rax
xor r9d, r9d
mov edx, 0x89
mov rcx, rsi
lea r8d, [r9 + 1]
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
mov ebx, eax
call fcn.180042780
mov edx, ebx
mov rcx, rsi
call fcn.18001bfe0
mov rcx, rbp
call fcn.18001b1b0
test byte [r14 + 0x48], 0x10
jne 0x1800a93f2
lea rax, [rsp + 0x98]
mov r9d, 1
mov rdx, r14
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x68]
lea r8d, [r9 + 0x35]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
call fcn.18006da60
mov r9d, 7
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x12]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [r14 + 0x10]
mov edi, r12d
test rbx, rbx
je 0x1800a9443
nop dword [rax + rax]
xor r8d, r8d
lea r9d, [rdi + 8]
mov rcx, rsi
lea edx, [r8 + 0x19]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rbx, qword [rbx + 0x28]
inc edi
test rbx, rbx
jne 0x1800a9420
mov eax, dword [rbp + 0x54]
mov ebx, dword [rsp + 0x68]
lea ecx, [rdi + 8]
cmp eax, ecx
mov r8d, ebx
mov dword [rsp + 0x20], r12d
cmovg ecx, eax
xor r9d, r9d
mov dword [rbp + 0x54], ecx
lea edx, [r9 + 0x6c]
mov rcx, rsi
call fcn.180042780
mov edx, 0x25
mov rcx, rsi
lea r9d, [rdx - 0x24]
lea r8d, [rdx - 0x1e]
mov dword [rsp + 0x20], r12d
call fcn.180042780
cmp r12w, word [r14 + 0x42]
mov ebp, r12d
mov dword [rsp + 0x80], eax
jge 0x1800a95dc
mov r13, r12
nop
movsx ecx, word [r14 + 0x40]
cmp ebp, ecx
je 0x1800a95c4
mov rax, qword [r14 + 8]
cmp byte [r13 + rax + 0x28], r12b
je 0x1800a95c4
mov r9d, ebp
mov r8d, ebx
mov rdx, r14
mov rcx, rsi
mov dword [rsp + 0x20], r15d
call fcn.180072570
mov r11, qword [rsi + 8]
test r11, r11
je 0x1800a94e9
movsxd rax, dword [rsi + 0x3c]
lea rcx, [rax + rax*2]
mov byte [r11 + rcx*8 - 0x15], 0x80
xor r9d, r9d
mov r8d, r15d
mov rcx, rsi
lea edx, [r9 + 0x4d]
mov dword [rsp + 0x20], r12d
call fcn.180042780
or r9d, 0xffffffff
mov rcx, rsi
lea edx, [r9 + 0x26]
lea r8d, [r9 + 2]
mov edi, eax
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r9, qword [r14 + 8]
mov r8, qword [r14]
mov rcx, qword [rsp + 0x40]
mov r9, qword [r13 + r9]
lea rdx, str.NULL_value_in__s._s
call fcn.18003bc00
xor r8d, r8d
mov r9d, r15d
lea edx, [r8 + 0x61]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
mov rbx, rax
call fcn.180042780
or r9d, 0xffffffff
mov r8, rbx
mov rcx, rsi
mov edx, eax
call fcn.18004d500
mov r9d, 1
mov r8d, r15d
lea edx, [r9 + 0x22]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov edx, 0x89
lea r8d, [r9 + 1]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
mov ebx, eax
call fcn.180042780
mov edx, edi
mov rcx, rsi
call fcn.18001bfe0
mov edx, ebx
call fcn.18001bfe0
mov ebx, dword [rsp + 0x68]
movsx eax, word [r14 + 0x42]
inc ebp
add r13, 0x30
cmp ebp, eax
jl 0x1800a94a0
mov r13d, dword [rsp + 0x70]
mov rbp, qword [r14 + 0x10]
test rbp, rbp
je 0x1800a9a6d
mov ecx, dword [rsp + 0x98]
mov eax, 8
sub eax, ecx
mov edi, ecx
mov dword [rsp + 0x6c], ecx
mov dword [rsp + 0xb0], eax
mov rcx, rsi
call fcn.180042710
mov ebx, eax
cmp qword [rsp + 0x88], rbp
je 0x1800a9a55
mov rax, qword [rsp + 0xc0]
mov r8d, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rdx, rbp
mov dword [rsp + 0x20], r12d
call fcn.180075520
mov r8d, dword [rsp + 0xb0]
mov edx, 0x25
add r8d, edi
mov rcx, rsi
lea r9d, [rdx - 0x24]
mov r13d, eax
mov dword [rsp + 0x70], eax
mov qword [rsp + 0xc0], rbp
mov dword [rsp + 0x20], r12d
call fcn.180042780
movzx r11d, word [rbp + 0x58]
mov r9d, ebx
mov r8d, edi
mov dword [rsp + 0x28], r11d
mov edx, 0x45
mov rcx, rsi
mov dword [rsp + 0x20], r13d
call fcn.18004d7b0
or r9d, 0xffffffff
lea edx, [r9 + 0x26]
lea r8d, [r9 + 2]
mov rcx, rsi
mov r13d, eax
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r8d, r8d
mov r9d, r15d
mov rcx, rsi
lea edx, [r8 + 0x61]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [rsi + 8]
mov rcx, qword [rsi]
test rdi, rdi
je 0x1800a9720
cmp byte [rcx + 0x51], r12b
jne 0x1800a9720
test eax, eax
jns 0x1800a96f5
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rbx, [rax + rax*2]
movsx edx, byte [rdi + rbx*8 + 1]
mov r8, qword [rdi + rbx*8 + 0x10]
call fcn.180046990
lea rax, str.row
mov byte [rdi + rbx*8 + 1], 0xfe
mov qword [rdi + rbx*8 + 0x10], rax
jmp 0x1800a9731
lea r8, str.row
mov edx, 0xfffffffe
call fcn.180046990
mov edx, 0x5e
mov r9d, r15d
mov rcx, rsi
lea r8d, [rdx - 0x57]
mov dword [rsp + 0x20], r15d
call fcn.180042780
mov r9d, 4
xor r8d, r8d
lea edx, [r9 + 0x5d]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [rsi + 8]
mov rcx, qword [rsi]
test rdi, rdi
je 0x1800a97b0
cmp byte [rcx + 0x51], r12b
jne 0x1800a97b0
test eax, eax
jns 0x1800a977f
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rbx, [rax + rax*2]
movsx edx, byte [rdi + rbx*8 + 1]
mov r8, qword [rdi + rbx*8 + 0x10]
call fcn.180046990
lea rax, str._missing_from_index
mov byte [rdi + rbx*8 + 1], 0xfe
mov qword [rdi + rbx*8 + 0x10], rax
jmp 0x1800a97c1
lea r8, str._missing_from_index
mov edx, 0xfffffffe
call fcn.180046990
mov edx, 0x5e
mov r9d, r15d
mov rcx, rsi
lea r8d, [rdx - 0x5a]
mov dword [rsp + 0x20], r15d
call fcn.180042780
mov rbx, qword [rbp]
mov r9d, 4
lea edx, [r9 + 0x5d]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rsi
mov edx, eax
mov dword [rsp + 0xac], eax
call fcn.18004d500
mov edx, 0x5e
lea r8d, [rdx - 0x5a]
mov r9d, r15d
mov rcx, rsi
mov dword [rsp + 0x20], r15d
call fcn.180042780
mov r9d, 1
lea edx, [r9 + 0x22]
mov r8d, r15d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
lea r8d, [r9 + 1]
mov edx, 0x89
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
lea edx, [r9 + 0x18]
xor r8d, r8d
mov rcx, rsi
mov ebx, eax
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, r13d
mov rcx, rsi
call fcn.18001bfe0
cmp byte [rbp + 0x5a], r12b
je 0x1800a9a1f
call fcn.180042710
mov ebx, r12d
mov r13d, eax
cmp r12w, word [rbp + 0x56]
jae 0x1800a98f6
mov rdi, r12
nop word [rax + rax]
mov rcx, qword [rbp + 8]
mov rax, qword [r14 + 8]
movsx rdx, word [rcx + rdi]
lea rcx, [rdx + rdx*2]
add rcx, rcx
cmp byte [rax + rcx*8 + 0x28], r12b
jne 0x1800a98e8
mov eax, dword [rsp + 0x70]
mov r9d, r13d
mov edx, 0x4c
lea r8d, [rbx + rax]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
movzx eax, word [rbp + 0x56]
inc ebx
add rdi, 2
cmp ebx, eax
jl 0x1800a98b0
mov edi, dword [rsp + 0x6c]
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 9]
mov r8d, edi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r8d, r8d
mov r9d, r13d
lea edx, [r8 + 0x10]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
mov ebx, eax
call fcn.180042780
mov edx, dword [rsi + 0x3c]
cmp edx, ebx
jbe 0x1800a993d
mov rax, qword [rsi + 8]
lea rcx, [rbx + rbx*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov r9d, r13d
dec ecx
mov r8d, edi
mov edx, 0x72
mov dword [rax + 0x64], ecx
movzx eax, word [rbp + 0x56]
mov rcx, rsi
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.18004d7b0
or r9d, 0xffffffff
lea edx, [r9 + 0x26]
lea r8d, [r9 + 2]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r8d, r8d
lea edx, [r8 + 0x61]
mov r9d, r15d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rdi, qword [rsi + 8]
mov rcx, qword [rsi]
test rdi, rdi
je 0x1800a99e0
cmp byte [rcx + 0x51], r12b
jne 0x1800a99e0
test eax, eax
jns 0x1800a99b7
mov eax, dword [rsi + 0x3c]
dec eax
cdqe
lea rbx, [rax + rax*2]
movsx edx, byte [rdi + rbx*8 + 1]
mov r8, qword [rdi + rbx*8 + 0x10]
call fcn.180046990
lea rax, str.non_unique_entry_in_index
mov byte [rdi + rbx*8 + 1], 0xfe
mov qword [rdi + rbx*8 + 0x10], rax
jmp 0x1800a99f1
lea r8, str.non_unique_entry_in_index
mov edx, 0xfffffffe
call fcn.180046990
mov r9d, dword [rsp + 0xac]
xor r8d, r8d
mov rcx, rsi
lea edx, [r8 + 0x10]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov edx, r13d
mov rcx, rsi
call fcn.1800110e0
mov ebx, dword [rsp + 0xa8]
mov edx, dword [rsi + 0x3c]
cmp edx, ebx
jbe 0x1800a9a34
mov eax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
mov edx, dword [rsp + 0xb8]
dec ecx
mov dword [rax + 0x64], ecx
mov rcx, qword [rsp + 0x48]
call fcn.1800226e0
mov edi, dword [rsp + 0x6c]
mov rbp, qword [rbp + 0x28]
mov r13d, dword [rsp + 0x70]
inc edi
mov dword [rsp + 0x6c], edi
test rbp, rbp
jne 0x1800a9604
mov ebx, dword [rsp + 0x80]
mov r8d, dword [rsp + 0x68]
mov edx, 9
mov rcx, rsi
mov r9d, ebx
mov dword [rsp + 0x20], r12d
call fcn.180042780
lea edx, [rbx - 1]
mov rcx, rsi
call fcn.18001bfe0
mov r9d, 2
xor r8d, r8d
lea edx, [r9 + 0x5f]
mov dword [rsp + 0x20], r12d
call fcn.180042780
lea r8, str.wrong__of_entries_in_index
mov r9d, 0xfffffffe
mov edx, eax
mov rcx, rsi
call fcn.18004d500
mov rdi, qword [r14 + 0x10]
test rdi, rdi
je 0x1800a9c19
mov r13d, dword [rsp + 0x98]
mov rax, qword [rsp + 0x88]
mov ebp, 8
nop dword [rax]
cmp rax, rdi
je 0x1800a9bfb
mov ebx, dword [rsi + 0x3c]
mov edx, 0x89
mov r8d, 1
lea r9d, [rbx + 2]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x18]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
lea r8d, [r13 + rbp - 8]
mov r9d, r15d
mov edx, 0x32
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
lea r9d, [rbx + 8]
mov r8d, ebp
mov edx, 0x4f
mov rcx, rsi
mov dword [rsp + 0x20], r15d
call fcn.180042780
mov r11, qword [rsi + 8]
test r11, r11
je 0x1800a9b79
movsxd rax, dword [rsi + 0x3c]
lea rcx, [rax + rax*2]
mov byte [r11 + rcx*8 - 0x15], 0x90
or r9d, 0xffffffff
mov rcx, rsi
mov dword [rsp + 0x20], r12d
lea edx, [r9 + 0x26]
lea r8d, [r9 + 2]
call fcn.180042780
mov rbx, qword [rdi]
xor r8d, r8d
lea edx, [r8 + 0x61]
mov r9d, r15d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rbx
mov rcx, rsi
mov edx, eax
call fcn.18004d500
mov r9d, 2
mov r8d, r15d
lea edx, [r9 + 0x5c]
mov rcx, rsi
mov dword [rsp + 0x20], 7
call fcn.180042780
mov edx, 0x23
mov rcx, rsi
lea r9d, [rdx - 0x22]
lea r8d, [rdx - 0x1c]
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov rax, qword [rsp + 0x88]
mov rdi, qword [rdi + 0x28]
inc ebp
test rdi, rdi
jne 0x1800a9af0
mov rbp, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x90]
jmp 0x1800a9c26
mov rbp, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x90]
mov r13, qword [rsp + 0xc8]
mov r13, qword [r13]
mov qword [rsp + 0xc8], r13
test r13, r13
jne 0x1800a9330
mov r13, qword [rsp + 0x40]
mov r14d, dword [rsp + 0x50]
mov eax, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
jmp 0x1800a9c6b
mov r13, qword [rsp + 0x40]
mov r14d, dword [rsp + 0x50]
mov eax, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
inc eax
cmp eax, dword [r13 + 0x28]
mov dword [rsp + 0x60], eax
jl 0x1800a9130
mov edi, dword [rsp + 0x64]
lea r8, [0x1800e8268]
xor r9d, r9d
mov edx, r15d
mov rcx, rsi
call fcn.180042630
mov r11d, eax
cmp dword [rsi + 0x3c], eax
jbe 0x1800a9caa
mov rcx, qword [rsi + 8]
lea rdx, [r11 + r11*2]
neg edi
mov dword [rcx + rdx*8 + 0xc], edi
mov edx, r11d
mov rcx, rsi
call fcn.18001bfe0
lea edx, [r11 + 1]
lea r8, [0x1800eec80]
mov r9d, 0xfffffffe
call fcn.18004d500
jmp 0x1800a670c
mov r13, qword [rsp + 0x58]
test r13, r13
jne 0x1800a9d55
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.18000f150
test eax, eax
jne case.0x1800a6852.36
lea edx, [rax + 1]
mov rcx, rsi
call fcn.180046890
lea r9, str.encoding
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
lea r9d, [r13 + 1]
lea edx, [r13 + 0x61]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov r11, qword [rbx]
lea r10, str.UTF8
movzx r8d, byte [r11 + 0x4e]
lea r9d, [r13 - 2]
or edx, 0xffffffff
add r8, r8
mov rcx, rsi
mov r8, qword [r10 + r8*8]
call fcn.18004d500
jmp 0x1800a76b3
mov rax, qword [rsp + 0x40]
mov r11, qword [rax + 0x20]
mov rax, qword [r11 + 0x18]
movzx ecx, word [rax + 0x72]
test cl, 1
je 0x1800a9d74
test cl, 4
je case.0x1800a6852.36
mov rax, qword [str.UTF8]
lea r10, str.UTF8
test rax, rax
je 0x1800a9dd9
nop word [rax + rax]
mov rdx, rax
mov rcx, r13
call sym.SQLite.Interop.dll_sqlite3_stricmp
test eax, eax
je 0x1800a9dae
mov rax, qword [r10 + 0x10]
add r10, 0x10
test rax, rax
jne 0x1800a9d90
jmp 0x1800a9dd9
movzx eax, byte [r10 + 8]
test al, al
je 0x1800a9dbc
movzx ecx, al
jmp 0x1800a9dc1
mov ecx, 2
mov rax, qword [rsp + 0x40]
mov byte [rax + 0x4e], cl
mov rax, qword [r11 + 0x18]
mov byte [rax + 0x71], cl
cmp qword [r10], r12
jne case.0x1800a6852.36
mov rcx, qword [rsp + 0x48]
lea rdx, str.unsupported_encoding:__s
mov r8, r13
call fcn.18003b940
jmp case.0x1800a6852.36
mov ebp, dword [rsp + 0x50]
mov edi, dword [r11 + rbx*8 + 0xe7dec]
mov rcx, rsi
mov edx, ebp
call fcn.18001bf90
mov r13, qword [rsp + 0x58]
test r13, r13
je 0x1800a9e90
test byte [r11 + rbx*8 + 0xe7de9], 2
jne 0x1800a9e90
xor r9d, r9d
lea r8, [0x1800e8310]
mov rcx, rsi
lea edx, [r9 + 3]
call fcn.180042630
mov ebx, eax
cmp dword [rsi + 0x3c], eax
jbe 0x1800a9e46
mov rcx, qword [rsi + 8]
lea rdx, [rbx + rbx*2]
mov dword [rcx + rdx*8 + 4], ebp
mov rcx, r13
call fcn.18001e930
lea ecx, [rbx + 1]
cmp dword [rsi + 0x3c], ecx
jbe 0x1800a9e62
lea rdx, [rcx + rcx*2]
mov rcx, qword [rsi + 8]
mov dword [rcx + rdx*8 + 4], eax
lea edx, [rbx + 2]
cmp dword [rsi + 0x3c], edx
jbe 0x1800a9e76
mov rax, qword [rsi + 8]
lea rcx, [rdx + rdx*2]
mov dword [rax + rcx*8 + 4], ebp
cmp dword [rsi + 0x3c], edx
jbe case.0x1800a6852.36
mov rax, qword [rsi + 8]
lea rcx, [rdx + rdx*2]
mov dword [rax + rcx*8 + 8], edi
jmp case.0x1800a6852.36
xor r9d, r9d
lea r8, [0x1800e8320]
mov rcx, rsi
lea edx, [r9 + 3]
call fcn.180042630
cmp dword [rsi + 0x3c], eax
jbe 0x1800a9eb9
mov ecx, eax
lea rdx, [rcx + rcx*2]
mov rcx, qword [rsi + 8]
mov dword [rcx + rdx*8 + 4], ebp
lea edx, [rax + 1]
cmp dword [rsi + 0x3c], edx
jbe 0x1800a9ecd
mov rax, qword [rsi + 8]
lea rcx, [rdx + rdx*2]
mov dword [rax + rcx*8 + 4], ebp
cmp dword [rsi + 0x3c], edx
jbe 0x1800a9ede
mov rax, qword [rsi + 8]
lea rcx, [rdx + rdx*2]
mov dword [rax + rcx*8 + 0xc], edi
mov edx, 1
mov rcx, rsi
call fcn.180046890
mov r9, qword [rsp + 0xa0]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], 0xffffffffffffffff
call fcn.1800549e0
jmp case.0x1800a6852.36
mov edx, 1
mov rcx, rsi
call fcn.180046890
mov rax, qword [rsp + 0x48]
lea r9, str.compile_option
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov dword [rax + 0x54], 1
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov rbx, r12
mov eax, 0x61
lea r14, [0x180000000]
nop
test rbx, rbx
js 0x1800a9f65
cmp rbx, 0xa
jge 0x1800a9f65
mov rdi, qword [r14 + rbx*8 + 0xe6b30]
jmp 0x1800a9f68
mov rdi, r12
inc rbx
test rdi, rdi
je case.0x1800a6852.36
mov r9d, 1
xor r8d, r8d
mov edx, eax
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
xor r9d, r9d
mov r8, rdi
mov edx, eax
mov rcx, rsi
call fcn.18004d500
mov r9d, 1
mov edx, 0x23
mov rcx, rsi
mov r8d, r9d
mov dword [rsp + 0x20], r12d
call fcn.180042780
mov eax, 0x61
jmp 0x1800a9f50
cmp qword [r14], r12
mov r10, qword [rsp + 0x58]
mov ebp, 0xa
cmovne ebp, dword [rsp + 0x50]
mov edi, r12d
mov ebx, 3
test r10, r10
je 0x1800aa021
lea rdx, str.full
mov rcx, r10
call sym.SQLite.Interop.dll_sqlite3_stricmp
test eax, eax
jne 0x1800a9ff5
lea edi, [rbx - 2]
jmp 0x1800aa021
lea rdx, str.restart
mov rcx, r10
call sym.SQLite.Interop.dll_sqlite3_stricmp
test eax, eax
jne 0x1800aa00d
lea edi, [rax + 2]
jmp 0x1800aa021
lea rdx, str.truncate
mov rcx, r10
call sym.SQLite.Interop.dll_sqlite3_stricmp
test eax, eax
cmove edi, ebx
mov edx, ebx
mov rcx, rsi
call fcn.180046890
mov rax, qword [rsp + 0x48]
lea r9, str.busy
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov dword [rax + 0x54], ebx
mov qword [rsp + 0x20], r12
call fcn.1800549e0
xor r8d, r8d
lea r9, [0x1800eecc8]
mov rcx, rsi
lea edx, [r8 + 1]
mov qword [rsp + 0x20], r12
call fcn.1800549e0
xor r8d, r8d
lea r9, str.checkpointed
lea edx, [r8 + 2]
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.1800549e0
mov r9d, edi
mov r8d, ebp
mov edx, 0xb
mov rcx, rsi
mov dword [rsp + 0x20], 1
call fcn.180042780
mov edx, 0x23
mov r9d, ebx
lea r8d, [rdx - 0x22]
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.180042780
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1800aa0d9
mov rcx, rax
call fcn.18001e930
mov rcx, qword [rsp + 0x40]
mov edx, eax
call sym.SQLite.Interop.dll_sqlite3_wal_autocheckpoint
mov rax, qword [rsp + 0x40]
lea rcx, [0x18008aad0]
cmp qword [rax + 0x110], rcx
jne 0x1800aa0f5
mov r12d, dword [rax + 0x118]
mov rcx, qword [rsp + 0x48]
lea rdx, str.wal_autocheckpoint
movsxd r8, r12d
call fcn.180059380
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x40]
call sym.SQLite.Interop.dll_sqlite3_db_release_memory
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1800aa142
lea rdx, [rsp + 0x78]
mov rcx, rax
call fcn.180025380
test eax, eax
jne 0x1800aa142
mov rcx, qword [rsp + 0x78]
call sym.SQLite.Interop.dll_sqlite3_soft_heap_limit64
or rcx, 0xffffffffffffffff
call sym.SQLite.Interop.dll_sqlite3_soft_heap_limit64
mov rcx, qword [rsp + 0x48]
lea rdx, str.soft_heap_limit
mov r8, rax
call fcn.180059380
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1800aa1a6
lea rdx, [rsp + 0x78]
mov rcx, rax
call fcn.180025380
test eax, eax
jne 0x1800aa1a6
mov rax, qword [rsp + 0x78]
test rax, rax
js 0x1800aa1a6
btr eax, 0x1f
test eax, eax
js 0x1800aa1a6
mov ecx, 8
cmp eax, ecx
cmovg eax, ecx
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x94], eax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
lea rdx, str.threads
movsxd r8, dword [rax + 0x94]
call fcn.180059380
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je case.0x1800a6852.36
mov rax, rcx
cmp byte [rcx], r12b
je 0x1800aa1e8
nop
inc rax
cmp byte [rax], r12b
jne 0x1800aa1e0
sub eax, ecx
mov r8, rcx
mov rcx, qword [rsp + 0x40]
and eax, 0x3fffffff
xor edx, edx
mov r9d, eax
call fcn.180056520
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je case.0x1800a6852.36
mov rax, rcx
cmp byte [rcx], r12b
je 0x1800aa228
nop dword [rax]
inc rax
cmp byte [rax], r12b
jne 0x1800aa220
sub eax, ecx
mov r8, rcx
mov rcx, qword [rsp + 0x40]
and eax, 0x3fffffff
mov rdx, r15
mov r9d, eax
call sym.SQLite.Interop.dll_sqlite3_rekey_v2
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je case.0x1800a6852.36
xor r8b, r8b
mov r9, rax
nop dword [rax + rax]
movzx eax, byte [r9]
test byte [rax + r11 + 0xe6970], 8
je 0x1800aa2b3
movsx edx, al
mov al, 7
mov ecx, edx
sar ecx, 6
and cl, 1
imul cl
sub dl, al
movzx eax, r8b
shl al, 4
and dl, 0xf
lea r8d, [rax + rdx]
test r12b, 1
je 0x1800aa2a7
mov eax, r12d
cdq
sub eax, edx
sar eax, 1
movsxd rcx, eax
mov byte [rsp + rcx + 0xf0], r8b
inc r12d
inc r9
cmp r12d, 0x50
jb 0x1800aa260
mov rax, qword [rsp + 0xa0]
movzx eax, byte [rax + 3]
and al, 0xf
cmp al, 0xb
jne 0x1800aa2e9
mov rcx, qword [rsp + 0x40]
mov eax, r12d
lea r8, [rsp + 0xf0]
cdq
sub eax, edx
xor edx, edx
sar eax, 1
mov r9d, eax
call fcn.180056520
jmp case.0x1800a6852.36
mov rcx, qword [rsp + 0x40]
mov eax, r12d
lea r8, [rsp + 0xf0]
cdq
sub eax, edx
mov rdx, r15
sar eax, 1
mov r9d, eax
call sym.SQLite.Interop.dll_sqlite3_rekey_v2
jmp case.0x1800a6852.36
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1800aa32c
mov rcx, rax
call fcn.18001e930
mov rcx, qword [rsp + 0x40]
mov edx, eax
call sym.SQLite.Interop.dll_sqlite3_busy_timeout
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
lea rdx, str.timeout
movsxd r8, dword [rax + 0x300]
call fcn.180059380
jmp case.0x1800a6852.36
mov r13, rdx
jmp 0x1800a670c