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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xf8
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x78], r8
or r8, rax
mov r12, rcx
mov qword [rsp + 0x80], rdx
mov dword [rsp + 0x68], r9d
mov qword [rsp + 0x70], rax
je 0x1403bd9c3
mov rbx, qword [rcx + 0x140]
test rbx, rbx
je 0x1403bd9c3
mov rdi, qword [rcx]
mov qword [rsp + 0x60], rdi
test rax, rax
je 0x1403bdb70
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0xbd], 0
jne 0x1403bdcd0
cmp byte [rsp + 0x68], 0
js 0x1403bdbb8
mov rdx, qword [rbx + 0x70]
test rdx, rdx
je 0x1403be7db
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x20]
cmp rdx, qword [rax + 0x18]
je 0x1403be68c
add rax, 0x38
xor r14d, r14d
nop dword [rax + rax]
add rax, 0x20
add r14d, 1
cmp rdx, qword [rax - 0x20]
jne 0x1403bd6e8
mov rax, qword [rbx + 0x30]
test rax, rax
je 0x1403bd73c
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov rdx, rbx
mov rcx, r12
mov r8d, 4
call fcn.140340190
mov esi, dword [r12 + 0x30]
test esi, esi
je 0x1403bd73c
mov rdx, qword [rbx + 0x30]
test rdx, rdx
je 0x1403bd734
mov rcx, qword [rsp + 0x60]
call fcn.14031a600
mov qword [rbx + 0x30], 0
movsx edx, word [rbx + 0x46]
test byte [rbx + 0x40], 0x60
je 0x1403bd850
mov r13, qword [rsp + 0x60]
xor esi, esi
xor ebp, ebp
test dx, dx
jg 0x1403bd773
jmp 0x1403be23f
add ebp, 1
movsx edx, word [rbx + 0x46]
add rsi, 1
cmp edx, esi
jle 0x1403bd848
mov rax, qword [rbx + 8]
mov rdi, rsi
shl rdi, 5
add rax, rdi
test byte [rax + 0x1c], 0x60
je 0x1403bd760
mov r15, qword [rax + 8]
mov r8d, 8
mov rdx, rbx
mov rcx, r12
mov qword [rsp + 0x20], 0
mov r9, r15
call fcn.140340190
test eax, eax
je 0x1403bd763
test r15, r15
je 0x1403bd7bc
mov rdx, r15
mov rcx, r13
call fcn.14031a4f0
mov edx, 0x48
mov rcx, r13
add rdi, qword [rbx + 8]
call fcn.14030f620
test rax, rax
je 0x1403bd82e
mov r11d, 0xffffffff
mov qword [rax], 0
mov qword [rax + 0x28], 0
mov qword [rax + 0x30], 0
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
mov qword [rax + 0x20], 0
mov qword [rax + 0x38], 0
mov qword [rax + 0x40], 0
mov byte [rax], 0x78
mov word [rax + 0x32], r11w
mov dword [rax + 0x28], 1
movsx edx, word [rbx + 0x46]
add rsi, 1
mov qword [rdi + 8], rax
cmp edx, esi
jg 0x1403bd773
nop word [rax + rax]
test ebp, ebp
je 0x1403be23f
mov rax, qword [rbx + 8]
test edx, edx
jle 0x1403be6a0
movsxd rdx, edx
xor ecx, ecx
shl rdx, 5
add rdx, rax
nop dword [rax + rax]
movzx r8d, byte [rax + 0x1a]
add rax, 0x20
add ecx, r8d
cmp rax, rdx
jne 0x1403bd870
cmp word [rbx + 0x44], 0x8000
sbb ecx, 0xffffffff
shl ecx, 2
call fcn.14030b730
mov rsi, qword [rbx + 0x10]
mov word [rbx + 0x4c], ax
test rsi, rsi
je 0x1403bd8b1
nop
mov rcx, rsi
call fcn.14030b7a0
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x1403bd8a0
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0xbd], 0
jne 0x1403bdae0
mov r15, qword [r12 + 0x10]
test r15, r15
je 0x1403bdcf8
xor r8d, r8d
xor r9d, r9d
mov edx, 0x76
mov rcx, r15
mov dword [rsp + 0x20], 0
call fcn.140322f70
cmp qword [rbx + 0x18], 0
lea rax, str.TABLE
lea r8, str.VIEW
cmove r8, rax
lea rdx, str.table
lea rax, str.view
cmove rax, rdx
cmp qword [rsp + 0x70], 0
mov qword [rsp + 0x88], rax
je 0x1403be70d
mov rax, qword [r12 + 0xa0]
mov edi, dword [r12 + 0x38]
mov edx, 0x63
mov rcx, r15
mov r8d, 1
test rax, rax
lea r13d, [rdi + 3]
lea ebp, [rdi + 1]
cmove rax, r12
mov dword [r12 + 0x38], r13d
mov byte [rax + 0x21], 1
mov dword [rsp + 0x20], r14d
mov r9d, dword [r12 + 0x7c]
call fcn.140322f70
mov esi, dword [r15 + 0x90]
test esi, esi
jle 0x1403bd992
mov r9, qword [r15 + 0x88]
movsxd rax, esi
mov r10d, 0x10
lea rax, [rax + rax*2]
lea rax, [r9 + rax*8]
mov word [rax - 0x16], r10w
lea eax, [rsi + 1]
mov r8d, ebp
xor r9d, r9d
mov edx, 0xd
mov dword [r12 + 0x34], 2
mov rcx, r15
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov r8d, dword [r12 + 0x30]
test r8d, r8d
je 0x1403bdd6c
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r15, qword [rsp + 0xb0]
mov r14d, dword [rsp + 0xbc]
mov r12, qword [rsp + 0xa8]
mov ecx, dword [rsp + 0x90]
movsxd rdx, esi
mov r9, qword [rsp + 0xa0]
lea r8, [0x14075c3a9]
add rdx, rbp
sub ecx, esi
call fcn.1403340f0
mov rdi, qword [rsp + 0x60]
movsxd rsi, r14d
mov rax, qword [rbx]
mov rcx, r12
shl rsi, 5
mov r9, qword [rsp + 0x88]
mov rdx, qword [rdi + 0x20]
mov r8, qword [rdx + rsi]
mov edx, dword [r12 + 0x78]
mov qword [rsp + 0x38], rbp
mov dword [rsp + 0x40], edx
mov edx, dword [r12 + 0x7c]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], edx
lea rdx, str.UPDATE__Q.sqlite_master_SET_type_s__name_Q__tbl_name_Q__rootpage_d__sql_Q_WHERE_rowid_d
mov qword [rsp + 0x20], rax
call fcn.1403bac70
test rbp, rbp
je 0x1403bda71
mov rdx, rbp
mov rcx, rdi
call fcn.140314ee0
mov rdx, qword [r12 + 0x10]
mov rcx, qword [r12]
mov r8d, r14d
call fcn.140324040
test byte [rbx + 0x40], 8
je 0x1403bdaab
cmp byte [r12 + 0x114], 0
jne 0x1403bdaab
mov rax, qword [rsp + 0x60]
add rsi, qword [rax + 0x20]
mov rax, qword [rsi + 0x18]
cmp qword [rax + 0x68], 0
je 0x1403be843
mov rdi, qword [rsp + 0x60]
mov r8, qword [rbx]
lea rdx, str.tbl_name_q_AND_type_trigger
mov rcx, rdi
call fcn.140341fd0
xor r9d, r9d
mov edx, r14d
mov rcx, r15
mov r8, rax
call fcn.140324710
cmp byte [rdi + 0xbd], 0
je 0x1403bdb30
nop dword [rax]
mov rax, qword [rbx + 0x70]
mov rdx, qword [rbx]
mov r8, rbx
lea rcx, [rax + 8]
call fcn.140316620
test rax, rax
jne 0x1403be6f0
mov rax, qword [rsp + 0x60]
mov rsi, qword [rbx]
mov qword [r12 + 0x140], 0
mov ecx, 0x10
lea rdi, str.sqlite_sequence
or dword [rax + 0x2c], 1
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
je 0x1403be232
nop
cmp qword [rsp + 0x70], 0
jne 0x1403bd9c3
cmp qword [rbx + 0x18], 0
jne 0x1403bd9c3
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
test rax, rax
je 0x1403be7ba
sub rax, qword [r12 + 0xf0]
add eax, 0xd
mov dword [rbx + 0x50], eax
jmp 0x1403bd9c3
mov rdx, qword [rbx]
mov rcx, rdi
call fcn.14034bc90
test eax, eax
jne 0x1403bdd60
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0xbd], 0
je 0x1403bd6b1
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + 0xb8]
mov dword [rbx + 0x38], eax
cmp eax, 1
jne 0x1403bd6b1
or dword [rbx + 0x40], 1
jmp 0x1403bd6b1
mov edx, dword [rbx + 0x40]
mov r8d, edx
and r8d, 8
jne 0x1403be694
test dl, 4
je 0x1403be4fa
mov eax, edx
mov rsi, qword [r12 + 0x10]
or eax, 0x280
mov dword [rbx + 0x40], eax
mov rax, qword [r12]
mov qword [rsp + 0x90], rax
movzx eax, byte [rax + 0xc0]
mov ecx, eax
mov byte [rsp + 0x88], al
and ecx, 2
je 0x1403bdd20
mov eax, dword [r12 + 0xb8]
test eax, eax
jne 0x1403be6a7
movsx rax, word [rbx + 0x44]
test ax, ax
jns 0x1403be51f
mov r14, qword [rbx + 0x10]
test r14, r14
je 0x1403be873
mov r15, r14
jmp 0x1403bdc45
mov r15, qword [r15 + 0x28]
test r15, r15
je 0x1403be878
movzx eax, byte [r15 + 0x64]
and eax, 3
cmp al, 2
jne 0x1403bdc38
cmp word [r15 + 0x5e], 1
mov ebp, 1
mov edi, 1
mov edx, 1
ja 0x1403bdc87
jmp 0x1403be26f
sub word [r15 + 0x60], 1
movzx eax, word [r15 + 0x5e]
add rbp, 1
cmp eax, ebp
jle 0x1403be24b
mov r9d, ebp
mov r8, r15
mov edx, edi
mov rcx, r15
call fcn.140317ba0
test eax, eax
jne 0x1403bdc70
mov rdx, qword [r15 + 0x40]
movsxd rax, edi
add edi, 1
mov rcx, qword [rdx + rbp*8]
mov qword [rdx + rax*8], rcx
mov rdx, qword [r15 + 0x38]
movzx ecx, byte [rdx + rbp]
mov byte [rdx + rax], cl
mov rdx, qword [r15 + 8]
movzx ecx, word [rdx + rbp*2]
mov word [rdx + rax*2], cx
jmp 0x1403bdc76
lea rdx, [0x14075b22e]
mov rcx, r12
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140338e90
cmp qword [r12 + 0xa0], 0
je 0x1403be219
mov rcx, r12
call fcn.140322fe0
mov r15, rax
test rax, rax
je 0x1403bd9c3
jmp 0x1403bd8d1
movsx r9d, word [rbx + 0x46]
test r9w, r9w
jle 0x1403bdd52
mov r10, qword [rbx + 8]
sub r9d, 1
shl r9, 5
lea rax, [r10 + 0x18]
lea r9, [r10 + r9 + 0x38]
test byte [rax + 4], 1
je 0x1403bdd49
mov byte [rax], 2
add rax, 0x20
cmp r9, rax
jne 0x1403bdd40
or edx, 0xa80
mov dword [rbx + 0x40], edx
jmp 0x1403bdc05
or dword [rbx + 0x40], 0x1000
jmp 0x1403bdb83
mov rdx, qword [rsp + 0x70]
mov r8d, 0x41
mov rcx, r12
call fcn.1403569d0
mov rdx, rax
test rax, rax
je 0x1403bd9c3
movzx eax, word [rax + 0x46]
xor ecx, ecx
mov word [rbx + 0x48], ax
mov word [rbx + 0x46], ax
mov rax, qword [rdx + 8]
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0x60]
mov word [rdx + 0x46], cx
cmp qword [rax + 0x2d0], 0
mov qword [rdx + 8], 0
je 0x1403be7ab
mov rcx, qword [rsp + 0x60]
call fcn.14031ad80
lea rax, [rsp + 0xc0]
mov rdx, qword [rsp + 0x70]
mov rcx, r12
mov byte [rsp + 0xc0], 0xd
mov r8, rax
mov dword [rsp + 0xc4], ebp
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xc8], 0
mov dword [rsp + 0xd0], 0
mov qword [rsp + 0x98], rax
call fcn.14037eae0
mov eax, dword [r12 + 0x30]
test eax, eax
jne 0x1403bd9c3
xor r9d, r9d
mov r8d, ebp
mov edx, 0x42
mov rcx, r15
mov dword [rsp + 0x20], 0
call fcn.140322f70
mov rax, qword [r15 + 0x18]
test esi, esi
mov byte [rax + 0x1f], 0
mov ebp, dword [r15 + 0x90]
mov rdx, qword [r15]
mov dword [rax + 0x28], 0
lea eax, [rbp - 1]
cmovs esi, eax
cmp byte [rdx + 0x63], 0
lea rax, [0x1407dad80]
jne 0x1403bde84
mov rax, qword [r15 + 0x88]
movsxd rsi, esi
lea rdx, [rsi + rsi*2]
lea rax, [rax + rdx*8]
mov dword [rax + 8], ebp
mov r8d, dword [rsp + 0xc4]
cmp ebp, dword [r15 + 0x94]
jge 0x1403be824
lea eax, [rbp + 1]
mov dword [r15 + 0x90], eax
movsxd rax, ebp
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0xe
add edi, 2
mov r9d, dword [rsp + 0xd0]
mov edx, 0x5d
mov rcx, r15
mov dword [rsp + 0x20], edi
mov r8d, dword [rsp + 0xcc]
call fcn.140322f70
xor r8d, r8d
mov rdx, rbx
mov rcx, r15
call fcn.140325c30
mov r9d, r13d
mov edx, 0x7b
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r8d, 1
call fcn.140322f70
mov dword [rsp + 0x20], r13d
mov r9d, edi
mov rcx, r15
mov r8d, 1
mov edx, 0x7c
call fcn.140322f70
mov edx, ebp
mov rcx, r15
call fcn.140323d80
mov eax, dword [r15 + 0x90]
mov rcx, qword [r15]
test ebp, ebp
lea edx, [rax - 1]
cmovs ebp, edx
cmp byte [rcx + 0x63], 0
lea rdx, [0x1407dad80]
jne 0x1403bdf79
mov rdx, qword [r15 + 0x88]
movsxd rbp, ebp
lea rcx, [rbp + rbp*2]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 8], eax
xor r9d, r9d
mov r8d, 1
mov rcx, r15
mov dword [rsp + 0x20], 0
mov edx, 0x76
call fcn.140322f70
movsx esi, word [rbx + 0x46]
mov r9, qword [rbx + 8]
test esi, esi
jle 0x1403be7e6
movsx r11, si
xor r10d, r10d
shl r11, 5
add r11, r9
nop dword [rax + rax]
mov rcx, qword [r9]
movzx edx, byte [rcx]
test dl, dl
je 0x1403be758
xor r8d, r8d
nop dword [rax]
xor eax, eax
cmp dl, 0x22
sete al
movzx edx, byte [rcx + 1]
add rcx, 1
add eax, r8d
lea r8d, [rax + 1]
test dl, dl
jne 0x1403bdfd8
add eax, 8
add r9, 0x20
add r10d, eax
cmp r9, r11
jne 0x1403bdfc0
mov rcx, qword [rbx]
movzx edx, byte [rcx]
test dl, dl
je 0x1403be869
xor r8d, r8d
nop dword [rax + rax]
xor eax, eax
cmp dl, 0x22
sete al
movzx edx, byte [rcx + 1]
add rcx, 1
add eax, r8d
lea r8d, [rax + 1]
test dl, dl
jne 0x1403be018
add eax, 3
add r10d, eax
lea rdx, [0x14075bd1e]
lea rax, [0x1407617db]
cmp r10d, 0x32
lea r9, [0x14075b22e]
cmovl rax, rdx
lea rdx, [0x14075bd1c]
mov qword [rsp + 0xa0], rax
lea rax, str.__n
cmovl rax, rdx
mov qword [rsp + 0x68], rax
lea rax, [0x1407617e3]
cmovge r9, rax
lea eax, [rsi + rsi*2]
mov qword [rsp + 0xa8], r9
lea eax, [r10 + rax*2 + 0x23]
movsxd rcx, eax
mov dword [rsp + 0x90], eax
call fcn.14030ef00
mov r9, qword [rsp + 0xa8]
test rax, rax
mov rbp, rax
je 0x1403be85a
mov ecx, dword [rsp + 0x90]
lea r8, str.CREATE_TABLE
mov rdx, rax
mov qword [rsp + 0xa8], r9
call fcn.1403340f0
mov rcx, rbp
call sub.msvcrt.dll_strlen
mov rdx, qword [rsp + 0x98]
mov r8, qword [rbx]
mov rcx, rbp
and eax, 0x3fffffff
mov dword [rsp + 0xc0], eax
call fcn.14030d520
movsxd rax, dword [rsp + 0xc0]
lea edx, [rax + 1]
mov dword [rsp + 0xc0], edx
mov byte [rbp + rax], 0x28
cmp word [rbx + 0x46], 0
mov rdi, qword [rbx + 8]
mov esi, dword [rsp + 0xc0]
jle 0x1403bd9ef
mov r9, qword [rsp + 0xa8]
mov dword [rsp + 0xbc], r14d
xor r13d, r13d
mov qword [rsp + 0xa8], r12
mov r14, qword [rsp + 0x98]
mov qword [rsp + 0xb0], r15
mov r12d, dword [rsp + 0x90]
mov r8, r9
jmp 0x1403be1b3
mov rcx, r15
call sub.msvcrt.dll_strlen
mov esi, eax
and eax, 0x3fffffff
and esi, 0x3fffffff
mov r8, rax
movsxd rcx, dword [rsp + 0xc0]
mov rdx, r15
add r13d, 1
add rdi, 0x20
add rcx, rbp
call sub.msvcrt.dll_memcpy
movsx eax, word [rbx + 0x46]
add esi, dword [rsp + 0xc0]
mov dword [rsp + 0xc0], esi
cmp r13d, eax
jge 0x1403bd9d7
mov r8, qword [rsp + 0x68]
movsxd rdx, esi
mov ecx, r12d
add rdx, rbp
sub ecx, esi
call fcn.1403340f0
movsxd rcx, dword [rsp + 0xc0]
mov rsi, rcx
add rcx, rbp
call sub.msvcrt.dll_strlen
mov r8, qword [rdi]
mov rdx, r14
mov rcx, rbp
and eax, 0x3fffffff
add eax, esi
lea rsi, [0x1407659e0]
mov dword [rsp + 0xc0], eax
call fcn.14030d520
movsx eax, byte [rdi + 0x19]
sub eax, 0x41
cdqe
mov r15, qword [rsi + rax*8]
test r15, r15
jne 0x1403be160
xor esi, esi
xor r8d, r8d
jmp 0x1403be178
mov rax, qword [r12]
test byte [rax + 0x5c], 8
jne 0x1403bdd07
mov byte [r12 + 0x23], 1
jmp 0x1403bdd07
mov rax, qword [rbx + 0x70]
mov qword [rax + 0x68], rbx
jmp 0x1403bdb30
lea rdx, str.must_have_at_least_one_non_generated_column
jmp 0x1403bdcd7
mov rax, qword [rsp + 0x90]
mov r14, qword [rbx + 0x10]
mov edx, edi
movzx edi, di
movzx eax, byte [rax + 0xc0]
mov byte [rsp + 0x88], al
mov ecx, eax
and ecx, 2
mov word [r15 + 0x5e], dx
movzx eax, byte [r15 + 0x64]
mov r8d, eax
or r8d, 0x20
mov byte [r15 + 0x64], r8b
test cl, cl
jne 0x1403be28f
or eax, 0x28
mov byte [r15 + 0x64], al
mov word [r15 + 0x60], dx
test rsi, rsi
je 0x1403be2a5
mov eax, dword [r15 + 0x58]
test eax, eax
jne 0x1403be762
mov eax, dword [rbx + 0x38]
mov dword [r15 + 0x58], eax
test r14, r14
je 0x1403be7c7
mov qword [rsp + 0x98], rbx
movsxd r13, edi
mov rbx, r14
mov qword [rsp + 0xa0], r12
mov r12, r15
nop
movzx eax, byte [rbx + 0x64]
and eax, 3
cmp al, 2
je 0x1403be3b6
movzx eax, word [rbx + 0x5e]
mov word [rsp + 0x88], ax
test edi, edi
je 0x1403be4d0
movzx r15d, ax
xor esi, esi
xor r14d, r14d
mov ebp, r15d
nop
mov r9d, r14d
mov r8, r12
mov edx, r15d
mov rcx, rbx
call fcn.140317ba0
cmp eax, 1
adc esi, 0
add r14d, 1
cmp r14d, edi
jne 0x1403be300
test esi, esi
je 0x1403be4d0
movzx eax, word [rbx + 0x60]
lea r8d, [r15 + rsi]
cmp r8d, eax
jle 0x1403be355
mov rcx, qword [rsp + 0x90]
mov rdx, rbx
call fcn.14031e390
test eax, eax
jne 0x1403be796
movzx r15d, word [rbx + 0x5e]
mov ebp, r15d
xor esi, esi
mov edx, r15d
jmp 0x1403be364
movzx edx, word [rbx + 0x5e]
mov r9d, esi
mov r8, r12
mov rcx, rbx
call fcn.140317ba0
test eax, eax
jne 0x1403be3ad
mov rdx, qword [r12 + 8]
movsxd rax, ebp
movzx ecx, word [rdx + rsi*2]
mov rdx, qword [rbx + 8]
mov word [rdx + rax*2], cx
mov rdx, qword [r12 + 0x40]
mov rcx, qword [rdx + rsi*8]
mov rdx, qword [rbx + 0x40]
mov qword [rdx + rax*8], rcx
mov rax, qword [r12 + 0x38]
cmp byte [rax + rsi], 0
je 0x1403be3aa
or byte [rbx + 0x65], 2
add ebp, 1
add rsi, 1
cmp r13, rsi
jne 0x1403be360
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1403be2d0
mov rbx, qword [rsp + 0x98]
mov r15, r12
mov r12, qword [rsp + 0xa0]
movzx r14d, word [r15 + 0x60]
movsx ebp, word [rbx + 0x46]
test ebp, ebp
jle 0x1403be4e1
mov r9, qword [r15 + 8]
movsxd r10, edi
xor ecx, ecx
xor esi, esi
lea r8, [r9 + r10*2]
nop word cs:[rax + rax]
mov rax, r9
jmp 0x1403be413
movsx edx, word [rax]
add rax, 2
cmp edx, ecx
je 0x1403be431
cmp rax, r8
jne 0x1403be408
mov rax, rcx
shl rax, 5
add rax, qword [rbx + 8]
movzx eax, word [rax + 0x1c]
and eax, 0x20
cmp ax, 1
adc esi, 0
add rcx, 1
cmp ebp, ecx
jg 0x1403be400
lea r8d, [rsi + rdi]
cmp r8d, r14d
jle 0x1403be46c
mov rcx, qword [rsp + 0x90]
mov rdx, r15
call fcn.14031e390
test eax, eax
jne 0x1403bd6bc
cmp word [rbx + 0x46], 0
jle 0x1403be4ed
mov r9, qword [r15 + 8]
movsxd r10, edi
xor ecx, ecx
lea rsi, str.BINARY
nop dword [rax]
lea r8, [r9 + r10*2]
mov rax, r9
jmp 0x1403be493
movsx edx, word [rax]
add rax, 2
cmp edx, ecx
je 0x1403be4b9
cmp rax, r8
jne 0x1403be488
mov rax, rcx
shl rax, 5
add rax, qword [rbx + 8]
test byte [rax + 0x1c], 0x20
jne 0x1403be4b9
mov rax, qword [r15 + 0x40]
mov word [r9 + r10*2], cx
add edi, 1
mov qword [rax + r10*8], rsi
movsx eax, word [rbx + 0x46]
add rcx, 1
cmp eax, ecx
jle 0x1403be4ed
movsxd r10, edi
jmp 0x1403be478
movzx eax, word [rsp + 0x88]
mov word [rbx + 0x60], ax
jmp 0x1403be3b6
mov r8d, edi
cmp edi, r14d
jg 0x1403be442
mov rcx, r15
call fcn.1403081e0
jmp 0x1403bd6bc
mov r8, qword [rbx]
lea rdx, str.PRIMARY_KEY_missing_on_table__s
mov rcx, r12
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140338e90
shl rax, 5
add rax, qword [rbx + 8]
mov rcx, qword [rax]
mov qword [rsp + 0xc0], rcx
test rcx, rcx
je 0x1403be546
call sub.msvcrt.dll_strlen
mov r8d, eax
and r8d, 0x3fffffff
mov rcx, qword [rsp + 0x90]
mov dword [rsp + 0xc8], r8d
xor r9d, r9d
lea r8, [rsp + 0xc0]
mov edx, 0x3b
call fcn.14030f850
mov rcx, qword [r12]
mov rdx, rax
call fcn.14031fac0
mov rdx, rax
test rax, rax
je 0x1403be6e0
cmp byte [r12 + 0x114], 1
jbe 0x1403be5bd
mov rax, qword [r12 + 0x190]
lea rcx, [rbx + 0x44]
test rax, rax
jne 0x1403be5b1
jmp 0x1403be5bd
mov rax, qword [rax + 0x18]
test rax, rax
je 0x1403be5bd
cmp rcx, qword [rax]
jne 0x1403be5a8
mov rcx, qword [rdx + 8]
mov qword [rax], rcx
mov ebp, 0xffffffff
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
movzx eax, byte [r12 + 0x112]
mov byte [rdx + 0x18], al
mov word [rbx + 0x44], bp
mov dword [rsp + 0x50], 2
mov dword [rsp + 0x48], 0
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
movzx eax, byte [rbx + 0x4e]
mov qword [rsp + 0x20], rdx
xor edx, edx
mov dword [rsp + 0x28], eax
call fcn.1403bbdf0
mov rax, qword [rsp + 0x90]
cmp byte [rax + 0x63], 0
jne 0x1403be6e0
mov edi, dword [r12 + 0x30]
test edi, edi
jne 0x1403be6e0
mov r14, qword [rbx + 0x10]
mov r15, r14
test r14, r14
jne 0x1403be659
jmp 0x1403be665
mov r15, qword [r15 + 0x28]
test r15, r15
je 0x1403be665
movzx eax, byte [r15 + 0x64]
and eax, 3
cmp al, 2
jne 0x1403be650
mov rax, qword [rsp + 0x90]
movzx edi, word [r15 + 0x5e]
movzx eax, byte [rax + 0xc0]
mov edx, edi
mov ecx, eax
mov byte [rsp + 0x88], al
and ecx, 2
jmp 0x1403be274
xor r14d, r14d
jmp 0x1403bd6f6
lea rdx, str.AUTOINCREMENT_not_allowed_on_WITHOUT_ROWID_tables
jmp 0x1403bdcd7
xor ecx, ecx
jmp 0x1403bd881
jns 0x1403be6b2
mov eax, dword [rsi + 0x90]
sub eax, 1
mov r9, qword [rsi]
lea rdx, [0x1407dad80]
cmp byte [r9 + 0x63], 0
jne 0x1403be6d4
cdqe
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rdx, [rax + rdx*8]
mov dword [rdx + 0xc], 2
jmp 0x1403bdc15
and dword [rbx + 0x40], 0xffffff7f
jmp 0x1403bd6bc
mov rcx, qword [rsp + 0x60]
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.14030e3e0
cmp byte [rsp + 0x68], 0
lea rax, [r12 + 0x100]
cmove rax, qword [rsp + 0x78]
mov rdx, qword [r12 + 0xf0]
mov rcx, qword [rax]
mov r9, rcx
sub r9, rdx
cmp byte [rcx], 0x3b
je 0x1403be73a
add r9d, dword [rax + 8]
mov qword [rsp + 0x20], rdx
mov rcx, qword [rsp + 0x60]
lea rdx, str.CREATE__s__.s
call fcn.140341fd0
mov rbp, rax
jmp 0x1403bda12
mov eax, 7
jmp 0x1403bdff6
jns 0x1403be76d
mov eax, dword [rsi + 0x90]
sub eax, 1
mov rcx, qword [rsi]
lea rdx, [0x1407dad80]
cmp byte [rcx + 0x63], 0
jne 0x1403be78e
cdqe
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rdx, [rax + rdx*8]
mov byte [rdx], 0xb
jmp 0x1403be2a5
mov rbx, qword [rsp + 0x98]
mov r12, qword [rsp + 0xa0]
jmp 0x1403bd6bc
sub dword [rdx + 0x3c], 1
je 0x1403bddc0
jmp 0x1403bddca
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
jmp 0x1403bdb5b
movsx ebp, word [rbx + 0x46]
mov r14d, edi
test ebp, ebp
jg 0x1403be3e7
jmp 0x1403be4ed
mov r14d, 0xffff8000
jmp 0x1403bd6f6
mov rcx, qword [rbx]
xor r10d, r10d
movzx edx, byte [rcx]
test dl, dl
jne 0x1403be010
lea rax, [0x14075bd1e]
mov r10d, 2
lea r9, [0x14075b22e]
mov qword [rsp + 0xa0], rax
lea rax, [0x14075bd1c]
mov qword [rsp + 0x68], rax
jmp 0x1403be080
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov edx, 0xe
mov rcx, r15
call fcn.140322ee0
mov ebp, eax
jmp 0x1403bded2
mov r8, qword [rsi]
lea rdx, str.CREATE_TABLE__Q.sqlite_sequence_name_seq_
mov rcx, r12
call fcn.1403bac70
jmp 0x1403bdaab
mov rcx, qword [rsp + 0x60]
call fcn.14030e3e0
jmp 0x1403bda12
mov eax, 2
jmp 0x1403be036
jmp 0x1403ecbdc
jmp 0x1403ecbdc
movzx eax, word [0x5e]
ud2