Function at 0x18003fcb0
Capabilities:
Encrypt data using speck
Reference sql statements

Disassembly:
mov r11, rsp
push rbp
push r13
push r15
lea rbp, [r11 - 0x2e8]
sub rsp, 0x3d0
mov rax, qword [0x1801715d0]
xor rax, rsp
mov qword [rbp + 0x2a0], rax
xor r10d, r10d
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov rsi, qword [rcx]
mov qword [r11 + 0x20], rdi
mov qword [r11 - 0x20], r12
mov r12, qword [rcx + 0x88]
mov r11, qword [rcx + 0x68]
movzx r9d, byte [rsi + 0x64]
xor al, al
mov edi, r10d
mov byte [rsp + 0x40], r9b
mov r13, rcx
mov qword [rbp - 0x80], rcx
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x48], r12
mov r15d, r10d
mov dword [rsp + 0x54], r10d
mov qword [rsp + 0x68], rsi
mov byte [rbp - 0x70], al
mov r8d, r10d
mov dword [rsp + 0x50], r10d
mov qword [rsp + 0x58], r11
mov dword [rbp - 0x60], r10d
cmp dword [rcx + 0xd0], edi
je 0x18003fd57
call fcn.180036dc0
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, edi
xor r10d, r10d
or rax, 0xffffffffffffffff
cmp qword [rsi + 0x228], rdi
je 0x18003fd7b
mov ecx, dword [rsi + 0x238]
mov eax, dword [r13 + 0xe4]
xor edx, edx
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x18003fd7e
mov rbx, rax
cmp dword [r13 + 0x34], 7
mov qword [rsp + 0x3c0], r14
mov qword [rsp + 0x60], rbx
movaps xmmword [rsp + 0x3b0], xmm6
mov edx, 1
je 0x180041d92
mov dword [r13 + 0x34], r10d
mov qword [r13 + 0x48], r10
mov eax, dword [rsi + 0x1b0]
mov dword [rsi + 0x2b0], r10d
test eax, eax
jne 0x180046d06
movsxd rax, dword [r13 + 0x30]
lea rcx, [rax + rax*2]
lea r14, [r12 + rcx*8]
movzx ebx, byte [r14]
inc rdi
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x70], rdi
cmp ebx, 0xb5
ja case.0x18003fe04.89
movsxd rax, ebx
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x471d0]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rax, qword [rsp + 0x48]
mov ecx, 4
movsxd r8, dword [rax + 4]
imul r8, r8, 0x38
mov word [r8 + r11 + 0x14], cx
mov rcx, rax
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r12
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp case.0x18003fe04.9
movsxd rax, dword [r14 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je case.0x18003fe04.89
mov rax, qword [rax + r11]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
lea rcx, [rax + rax*2]
lea r14, [r12 + rcx*8]
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov eax, dword [rax + 0xc]
dec eax
cdqe
imul rcx, rcx, 0x38
mov qword [rcx + r11], rax
mov eax, 4
mov word [rcx + r11 + 0x14], ax
cmp dword [r14 + 8], 0
jne 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rdx, dword [r14 + 4]
imul rdx, rdx, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r12 + rcx*8 + 8]
mov word [rdx + r11 + 0x14], r10w
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r12 + rcx*8]
jmp 0x18003ffdb
mov rbx, qword [rsp + 0x48]
mov eax, 4
movsxd r8, dword [rbx + 4]
sub rbx, r12
imul r8, r8, 0x38
movsxd rcx, dword [r8 + r11]
mov word [r8 + r11 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
sar rdx, 2
lea rcx, [rcx + rcx*2]
mov rax, rdx
lea r14, [r12 + rcx*8]
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
mov r8d, dword [rsp + 0x50]
jmp 0x18003ffdb
movsxd rax, dword [r14 + 0xc]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 1
je case.0x18003fe04.89
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x18004683b
cmp dword [r14 + 4], 0
jne 0x18004683b
mov rax, qword [rcx + 8]
dec dword [r13 + 0x118]
mov qword [r13 + 0x108], rax
mov rax, qword [r13 + 0x38]
add qword [rsi + 0x80], rax
mov qword [rsi + 0x78], rax
call fcn.180037d50
cmp dword [r14 + 8], 4
jne 0x18003ffae
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r12, qword [r13 + 0x88]
mov r11, qword [r13 + 0x68]
cdqe
lea rcx, [rax + rax*2]
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x58], r11
lea r14, [r12 + rcx*8]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
mov edx, 1
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rcx, dword [r14 + 8]
mov eax, 0x9000
imul rcx, rcx, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x18004001a
call fcn.18003f7f0
xor r10d, r10d
mov rcx, rax
lea edx, [r10 + 1]
jmp 0x180040023
mov eax, 4
mov word [rcx + 0x14], ax
movsxd rax, dword [r14 + 4]
mov qword [rcx], rax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rdx, dword [r14 + 8]
mov eax, 0x9000
imul rdx, rdx, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x180040073
mov rcx, rdx
call fcn.18003f7f0
xor r10d, r10d
mov rdx, rax
jmp 0x18004007c
mov eax, 4
mov word [rdx + 0x14], ax
mov rax, qword [r14 + 0x10]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov rcx, qword [rax]
mov r8d, dword [rsp + 0x50]
mov qword [rdx], rcx
jmp 0x18003ffdb
movsxd rdx, dword [r14 + 8]
mov eax, 0x9000
imul rdx, rdx, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1800400c6
mov rcx, rdx
call fcn.18003f7f0
xor r10d, r10d
mov rdx, rax
lea eax, [r10 + 8]
jmp 0x180040078
mov eax, 4
mov word [rdx + 0x14], ax
mov eax, 8
jmp 0x180040078
movsxd rbx, dword [r14 + 8]
mov eax, 0x9000
imul rbx, rbx, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x1800400fd
mov rcx, rbx
call fcn.18003f7f0
xor r10d, r10d
mov rbx, rax
jmp 0x180040106
mov eax, 4
mov word [rbx + 0x14], ax
mov rdx, qword [r14 + 0x10]
mov rcx, rdx
call fcn.18000fb50
movzx edi, byte [rsp + 0x40]
mov dword [r14 + 4], eax
cmp dil, 1
je 0x1800401b6
mov r9b, 1
or r8, 0xffffffffffffffff
mov rcx, rbx
mov qword [rsp + 0x20], r10
call fcn.180034380
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046bc9
test byte [rbx + 0x14], 2
movzx ecx, dil
jne 0x180040157
mov byte [rbx + 0x16], cl
jmp 0x180040172
movzx eax, byte [rbx + 0x16]
cmp eax, ecx
je 0x180040172
movzx edx, cl
mov rcx, rbx
call fcn.18000f3c0
test eax, eax
jne 0x180041d88
mov eax, 0x2000
xor r8d, r8d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], r8d
cmp byte [rax + 1], 0xfa
jne 0x18004019e
mov rdx, qword [rax + 0x10]
mov rcx, rsi
call fcn.18000c110
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r14 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r14 + 4], eax
mov eax, dword [rsi + 0x88]
cmp dword [r14 + 4], eax
jg 0x180046bc9
mov byte [r14], 0x49
movsxd rdx, dword [r14 + 8]
mov eax, 0x9000
imul rdx, rdx, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1800401ee
mov rcx, rdx
call fcn.18003f7f0
mov rdx, rax
jmp 0x1800401f7
mov eax, 4
mov word [rdx + 0x14], ax
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov eax, 0x2202
mov word [rdx + 0x14], ax
mov rax, qword [r14 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r14 + 4]
mov byte [rdx + 0x16], r9b
mov dword [rdx + 0x10], eax
movsxd rax, dword [r14 + 0xc]
test eax, eax
jle 0x1800464ce
mov r8d, dword [rsp + 0x50]
mov rcx, rax
movzx eax, word [r14 + 2]
imul rcx, rcx, 0x38
xor r10d, r10d
cmp qword [rcx + r11], rax
jne 0x180042b23
mov eax, 0x2210
mov word [rdx + 0x14], ax
jmp 0x18003ffdb
mov rbx, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rax, dword [rbx + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 0x14], cx
je 0x180040288
mov rcx, rax
call fcn.18003f7f0
xor r10d, r10d
mov ecx, 0x9000
lea edx, [r10 + 1]
jmp 0x180040293
mov r8d, 4
mov word [rax + 0x14], r8w
mov edi, dword [rbx + 0xc]
mov esi, edx
mov r8d, 0x101
sub edi, dword [rbx + 8]
cmp dword [rbx + 4], 0
lea rbx, [rax + 0x14]
cmovne si, r8w
mov dword [rax + 0x10], r10d
mov word [rbx], si
test edi, edi
jle 0x180046508
nop dword [rax]
add rbx, 0x38
test word [rbx], cx
je 0x1800402e0
lea rcx, [rbx - 0x14]
call fcn.180033a00
xor r10d, r10d
mov ecx, 0x9000
lea edx, [r10 + 1]
jmp 0x1800402e3
mov word [rbx], dx
dec edi
mov word [rbx], si
mov dword [rbx - 4], r10d
test edi, edi
jg 0x1800402c0
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rax, dword [r14 + 4]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
imul rax, rax, 0x38
add rax, r11
mov ecx, 0xffc1
and word [rax + 0x14], cx
or word [rax + 0x14], 1
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rbx, dword [rax + 8]
imul rbx, rbx, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], cx
je 0x180040378
mov rcx, rbx
call fcn.18003f7f0
xor r10d, r10d
mov rbx, rax
mov rax, qword [rsp + 0x48]
jmp 0x180040381
mov ecx, 4
mov word [rbx + 0x14], cx
mov rdx, qword [rax + 0x10]
mov rcx, rbx
test rdx, rdx
jne 0x1800403a7
mov edx, dword [rax + 4]
call fcn.180033fc0
mov rcx, rbx
call fcn.1800336f0
test eax, eax
jne 0x180041d8d
jmp 0x1800403b8
movsxd r8, dword [rax + 4]
xor r9d, r9d
mov qword [rsp + 0x20], r10
call fcn.180034380
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov byte [rbx + 0x16], r9b
jmp 0x18003ffd3
mov rbx, qword [rsp + 0x48]
mov eax, dword [rbx + 4]
dec eax
movsxd rdi, eax
imul rdi, rdi, 0x38
add rdi, qword [r13 + 0x80]
movzx eax, word [rdi + 0x14]
test al, 0x12
je 0x180040418
mov edx, dword [rdi + 0x10]
mov ecx, 0x400
test cx, ax
je 0x180040400
add edx, dword [rdi]
mov rax, qword [rdi + 0x18]
mov ecx, r10d
cmp edx, dword [rax + 0x88]
setg cl
test ecx, ecx
jne 0x180046bc9
movsxd rbx, dword [rbx + 8]
mov eax, 0x9000
imul rbx, rbx, 0x38
add rbx, r11
test word [rbx + 0x14], ax
je 0x18004043e
mov rcx, rbx
call fcn.180033a00
mov r11, qword [rsp + 0x58]
xor r10d, r10d
mov rax, qword [rdi]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov qword [rbx], rax
mov rax, qword [rdi + 8]
mov qword [rbx + 8], rax
mov rax, qword [rdi + 0x10]
mov ecx, 0xafff
mov qword [rbx + 0x10], rax
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 4]
movsxd rbx, dword [rax + 8]
mov esi, dword [rax + 0xc]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add rdi, r11
add rbx, r11
nop
mov rdx, rdi
mov rcx, rbx
call fcn.180034300
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x1800404c6
mov rcx, rbx
call fcn.180033690
test eax, eax
jne 0x180041d83
add rdi, 0x38
add rbx, 0x38
dec esi
jne 0x1800404a0
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov r12d, 0x4000
movsxd rdi, dword [rax + 4]
movsxd rbx, dword [rax + 8]
mov esi, dword [rax + 0xc]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add rdi, r11
add rbx, r11
mov r14, rax
nop dword [rax]
mov r8d, r12d
mov rdx, rdi
mov rcx, rbx
call fcn.180034210
test word [rbx + 0x14], r12w
je 0x180040535
mov rcx, rbx
call fcn.180033690
test eax, eax
jne 0x180041d83
movzx eax, word [rbx + 0x14]
mov ecx, 0x800
test cx, ax
je 0x180040556
test byte [r14 + 2], 2
je 0x180040556
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x180046501
add rbx, 0x38
add rdi, 0x38
jmp 0x180040510
mov rax, qword [rsp + 0x48]
mov r8d, 0x4000
movsxd rdx, dword [rax + 4]
movsxd rcx, dword [rax + 8]
imul rdx, rdx, 0x38
imul rcx, rcx, 0x38
add rdx, r11
add rcx, r11
call fcn.180034210
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 8]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
imul rcx, rcx, 0x38
add rcx, r11
mov rdx, qword [rax + r11]
mov eax, 0x9000
test word [rcx + 0x14], ax
je 0x1800405dc
call fcn.180034010
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 0x14], ax
mov r14, qword [rsp + 0x48]
jmp 0x18003ffdb
cmp qword [r13 + 0x50], 0
jg 0x180046940
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov r15d, r10d
mov dword [rsp + 0x54], r10d
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
movsxd r13, dword [rax + 4]
movsxd rdi, dword [rax + 8]
movsxd rbx, dword [rax + 0xc]
imul r13, r13, 0x38
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add r13, r11
add rdi, r11
add rbx, r11
movzx r14d, word [r13 + 0x14]
movzx eax, byte [rdi + 0x14]
or al, r14b
test al, 1
je 0x18004068a
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x18004066f
mov rcx, rbx
call fcn.180033a00
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov word [rbx + 0x14], dx
mov r14, qword [rsp + 0x48]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
test r14b, 0x12
jne 0x1800406bd
xor r8d, r8d
movzx edx, r9b
mov rcx, r13
call fcn.180033760
test eax, eax
jne 0x180046f22
movzx r14d, word [r13 + 0x14]
mov r12d, 0xfffd
mov eax, 0x400
and r14w, r12w
jmp 0x1800406d8
mov eax, 0x400
test ax, r14w
je 0x1800406d2
mov rcx, r13
call fcn.1800336f0
jmp 0x18004069f
mov r12d, 0xfffd
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x1800406f4
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rdi
call fcn.180033760
jmp 0x180040701
test ax, si
je 0x180040711
mov rcx, rdi
call fcn.1800336f0
test eax, eax
jne 0x180046f1d
movzx esi, word [rdi + 0x14]
and si, r12w
mov eax, dword [rdi + 0x10]
mov r8, qword [rsp + 0x68]
add eax, dword [r13 + 0x10]
movsxd r12, eax
movsxd rax, dword [r8 + 0x88]
cmp r12, rax
jg 0x180046bc2
xor r8d, r8d
cmp rbx, rdi
lea edx, [r12 + 2]
sete r8b
mov rcx, rbx
call fcn.180033380
test eax, eax
jne 0x180046f1d
mov eax, 0xf242
and word [rbx + 0x14], ax
or word [rbx + 0x14], 2
cmp rbx, rdi
je 0x180040777
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call fcn.180128740
mov word [rdi + 0x14], si
movsxd rcx, dword [rdi + 0x10]
movsxd r8, dword [r13 + 0x10]
mov rdx, qword [r13 + 8]
add rcx, qword [rbx + 8]
call fcn.180128740
movzx r9d, byte [rsp + 0x40]
mov word [r13 + 0x14], r14w
cmp r9b, 1
jbe 0x1800407a1
and r12, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 8]
mov byte [r12 + rax + 1], 0
mov eax, 0x200
mov dword [rbx + 0x10], r12d
or word [rbx + 0x14], ax
mov byte [rbx + 0x16], r9b
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffd3
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 8]
movsxd rsi, dword [rax + 4]
movsxd r12, dword [rax + 0xc]
imul rdi, rdi, 0x38
imul rsi, rsi, 0x38
imul r12, r12, 0x38
add rdi, r11
add rsi, r11
add r12, r11
movzx ecx, word [rdi + 0x14]
movzx ebx, word [rsi + 0x14]
movzx eax, cl
and al, bl
test al, 4
jne 0x180040859
or cl, bl
test cl, 1
jne 0x180040b2f
and bx, 0x2d
jne 0x180040831
mov rcx, rsi
call fcn.18003f740
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x180040843
mov rcx, rdi
call fcn.18003f740
and al, bl
test al, 4
je 0x180040a27
mov r11, qword [rsp + 0x58]
xor r10d, r10d
lea edx, [r10 + 1]
mov r14, qword [rsp + 0x48]
mov r9, qword [rsi]
mov r8, qword [rdi]
movzx ecx, byte [r14]
sub ecx, 0x6a
je 0x1800409ec
dec ecx
je 0x18004097c
dec ecx
je 0x1800408d4
dec ecx
je 0x1800408a2
test r9, r9
je 0x180040b34
cmp r9, 0xffffffffffffffff
mov rax, r8
cmove r9, rdx
cqo
idiv r9
mov r8, rdx
jmp 0x1800409bc
test r9, r9
je 0x180040b34
cmp r9, 0xffffffffffffffff
jne 0x1800408c4
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x180040a2c
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1800409bc
test r9, r9
jle 0x180040912
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x180040a2c
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jl 0x180040a2c
imul r8, r9
jmp 0x1800409bc
jns 0x180040976
test r8, r8
jle 0x18004093a
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jl 0x180040a2c
imul r8, r9
jmp 0x1800409bc
jns 0x180040976
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x180040a2c
cmp r8, rcx
je 0x180040a2c
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x180040a2c
imul r8, r9
jmp 0x1800409bc
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x180040999
test r8, r8
jns 0x180040a2c
sub r8, rcx
jmp 0x1800409bc
neg r9
jns 0x1800409f1
test r8, r8
jns 0x1800409b9
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jg 0x180040a2c
add r8, r9
mov rsi, qword [rsp + 0x68]
movzx r9d, byte [rsp + 0x40]
mov qword [r12], r8
mov r8d, dword [rsp + 0x50]
mov eax, 0xf244
and word [r12 + 0x14], ax
or word [r12 + 0x14], 4
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
test r9, r9
js 0x180040a0a
test r8, r8
jle 0x1800409b9
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x180040a2c
jmp 0x1800409b9
test r8, r8
jns 0x1800409b9
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x1800409b9
jmp 0x180040a2c
mov r14, qword [rsp + 0x48]
movzx eax, word [rsi + 0x14]
test al, 8
je 0x180040a3a
movsd xmm6, qword [rsi]
jmp 0x180040a5f
test al, 0x24
je 0x180040a49
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rsi]
jmp 0x180040a5f
test al, 0x12
je 0x180040a5b
mov rcx, rsi
call fcn.180033b40
movapd xmm6, xmm0
jmp 0x180040a5f
xorpd xmm6, xmm6
movzx eax, word [rdi + 0x14]
test al, 8
je 0x180040a6d
movsd xmm0, qword [rdi]
jmp 0x180040a8e
test al, 0x24
je 0x180040a7c
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rdi]
jmp 0x180040a8e
test al, 0x12
je 0x180040a8a
mov rcx, rdi
call fcn.180033b40
jmp 0x180040a8e
xorpd xmm0, xmm0
movzx ecx, byte [r14]
sub ecx, 0x6a
je 0x180040af6
dec ecx
je 0x180040af0
dec ecx
je 0x180040aea
dec ecx
je 0x180040ad8
mov rcx, rsi
call sym.sqlite.dll_sqlite3_value_int64
mov rcx, rdi
mov rbx, rax
call sym.sqlite.dll_sqlite3_value_int64
test rbx, rbx
je 0x180040b34
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
cmove rbx, rcx
pxor xmm0, xmm0
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x180040afa
ucomisd xmm6, qword [0x180159180]
jp 0x180040ae4
je 0x180040b34
divsd xmm0, xmm6
jmp 0x180040afa
mulsd xmm0, xmm6
jmp 0x180040afa
subsd xmm0, xmm6
jmp 0x180040afa
addsd xmm0, xmm6
call fcn.18000fb10
test eax, eax
jne 0x180040b34
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov eax, 0xf248
movsd qword [r12], xmm0
and word [r12 + 0x14], ax
or word [r12 + 0x14], 8
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov r14, qword [rsp + 0x48]
mov eax, 0x9000
test word [r12 + 0x14], ax
je 0x180040b5d
mov rcx, r12
call fcn.180033a00
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov edx, 1
xor r10d, r10d
add r14, 0x18
mov word [r12 + 0x14], dx
mov r12, qword [rsp + 0x78]
jmp 0x18003fdcc
movsxd rax, dword [r14 + 4]
test eax, eax
je case.0x18003fe04.89
imul rax, rax, 0x38
mov ecx, 0x9000
add rax, r11
test word [rax + 0x14], cx
je 0x180040bc9
xor edx, edx
mov rcx, rax
call fcn.180034010
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov ecx, 4
mov qword [rax], r10
add r14, 0x18
mov word [rax + 0x14], cx
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 8]
movsxd rdi, dword [rax + 4]
movsxd rsi, dword [rax + 0xc]
imul rcx, rcx, 0x38
imul rdi, rdi, 0x38
imul rsi, rsi, 0x38
add rcx, r11
add rdi, r11
add rsi, r11
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x180040c5f
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x180040c3f
mov rcx, rsi
call fcn.180033a00
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r14, qword [rsp + 0x48]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov word [rsi + 0x14], dx
mov rsi, qword [rsp + 0x68]
add r14, 0x18
jmp 0x18003fdcc
call sym.sqlite.dll_sqlite3_value_int64
mov rcx, rdi
mov rbx, rax
call sym.sqlite.dll_sqlite3_value_int64
mov r14, qword [rsp + 0x48]
movzx edx, byte [r14]
mov rcx, rax
cmp dl, 0x66
jne 0x180040c85
and rbx, rax
jmp 0x180040cfc
cmp dl, 0x67
jne 0x180040c8f
or rbx, rax
jmp 0x180040cfc
test rax, rax
je 0x180040cfc
jns 0x180040ca9
mov eax, 0xd1
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x180040caf
neg rcx
cmp rcx, 0x40
jl 0x180040ccd
test rbx, rbx
jns 0x180040cc2
cmp dl, 0x68
je 0x180040cc2
or rax, 0xffffffffffffffff
movsxd rbx, eax
jmp 0x180040cfc
xor r8d, r8d
mov eax, r8d
movsxd rbx, eax
jmp 0x180040cfc
cmp dl, 0x68
jne 0x180040cda
shl rbx, cl
mov r8, rbx
jmp 0x180040cf9
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x180040cf9
or rdx, 0xffffffffffffffff
mov eax, 0x40
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov r11, qword [rsp + 0x58]
mov eax, 0xf244
mov qword [rsi], rbx
and word [rsi + 0x14], ax
or word [rsi + 0x14], 4
mov rsi, qword [rsp + 0x68]
jmp 0x18003ffcd
movsxd rbx, dword [r14 + 4]
imul rbx, rbx, 0x38
add rbx, r11
mov rcx, rbx
call fcn.180033c60
movsxd r11, dword [r14 + 8]
add qword [rbx], r11
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
movsxd rbx, dword [r14 + 4]
imul rbx, rbx, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x180040d98
test al, 0x28
jne 0x180040d6d
test al, 2
je 0x180040d7a
mov rcx, rbx
call fcn.18003f5c0
mov r11, qword [rsp + 0x58]
xor r10d, r10d
jmp 0x180040d75
mov rcx, rbx
call fcn.180033bd0
mov edx, 1
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x180040d98
cmp dword [r14 + 8], 0
jne 0x18004678e
mov r15d, 0x14
jmp 0x180046ba0
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov ecx, 0xf244
and ax, cx
or ax, 4
add r14, 0x18
mov word [rbx + 0x14], ax
jmp 0x18003fdcc
movsxd rcx, dword [r14 + 4]
imul rcx, rcx, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
je case.0x18003fe04.89
call fcn.180033cf0
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
movsxd rbx, dword [r14 + 4]
mov eax, 0x400
imul rbx, rbx, 0x38
add rbx, r11
test word [rbx + 0x14], ax
je 0x180040e12
mov rcx, rbx
call fcn.1800336f0
mov r15d, eax
test eax, eax
jne 0x180046ba0
movzx r8d, byte [rsp + 0x40]
movzx edx, byte [r14 + 8]
mov rcx, rbx
call fcn.180033e60
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd r12, dword [rax + 0xc]
movsxd r13, dword [rax + 4]
imul r12, r12, 0x38
imul r13, r13, 0x38
add r12, r11
add r13, r11
movzx edi, word [r12 + 0x14]
movzx esi, word [r13 + 0x14]
movzx edx, di
and dx, si
test dl, 4
je 0x180040f02
mov rcx, qword [r13]
mov rax, qword [r12]
cmp rax, rcx
lea rcx, [0x180000000]
jle 0x180040e94
cmp byte [rbx + rcx + 0x144d48], 0
jmp 0x180040f57
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov edx, 1
jge 0x180040ed5
cmp byte [rbx + rcx + 0x144d3c], 0
jne 0x18004678e
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
or rax, 0xffffffffffffffff
add r14, 0x18
mov r8d, eax
mov dword [rsp + 0x50], eax
jmp 0x18003fdcc
cmp byte [rbx + rcx + 0x144d42], 0
jne 0x18004678e
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov r8d, r10d
mov dword [rsp + 0x50], r10d
add r14, 0x18
jmp 0x18003fdcc
movzx ecx, di
or cx, si
test cl, 1
je 0x180040f8a
movzx eax, word [rax + 2]
test al, al
jns 0x180040f55
test dl, 1
je 0x180040f36
mov eax, 0x100
test ax, di
jne 0x180040f36
mov r14, qword [rsp + 0x48]
mov r8d, r10d
mov dword [rsp + 0x50], r10d
jmp 0x180041087
mov r14, qword [rsp + 0x48]
test dil, 1
mov rax, 0xffffffffffffffff
mov r8d, 1
cmovne r8d, eax
jmp 0x180041066
test al, 0x10
mov r12, qword [rsp + 0x78]
mov r14, qword [rsp + 0x48]
mov edx, 1
jne 0x18004678e
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov r8d, edx
mov dword [rsp + 0x50], edx
add r14, 0x18
jmp 0x18003fdcc
movzx eax, byte [rax + 2]
and al, 0x47
cmp al, 0x43
jl 0x180040fd1
test cl, 2
je 0x180041047
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x180040fb7
xor edx, edx
mov rcx, r13
call fcn.18003f5c0
movzx edi, word [r12 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x180041047
xor edx, edx
mov rcx, r12
call fcn.18003f5c0
jmp 0x180041047
cmp al, 0x42
jne 0x180041047
test cl, 2
je 0x180041047
test sil, 2
jne 0x180041015
test sil, 0x2c
je 0x180041015
mov r8b, 1
movzx edx, r9b
mov rcx, r13
call fcn.180033760
xor si, word [r13 + 0x14]
mov ebx, 0xdbf
and si, bx
xor si, word [r13 + 0x14]
cmp r13, r12
jne 0x18004101a
movzx edi, si
or di, 2
jmp 0x18004101a
mov ebx, 0xdbf
test dil, 2
jne 0x180041047
test dil, 0x2c
je 0x180041047
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r12
call fcn.180033760
movzx r11d, word [r12 + 0x14]
xor di, r11w
and di, bx
xor di, r11w
mov r14, qword [rsp + 0x48]
mov rdx, r13
mov rcx, r12
mov r8, qword [r14 + 0x10]
call fcn.180039d60
mov r11, qword [rsp + 0x58]
xor r10d, r10d
mov r8d, eax
mov dword [rsp + 0x50], r8d
test r8d, r8d
jns 0x180041085
movzx eax, byte [r14]
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0x144d3c]
jmp 0x1800410af
jne 0x18004109c
movzx eax, byte [r14]
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0x144d42]
jmp 0x1800410af
movzx eax, byte [r14]
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0x144d48]
mov word [r12 + 0x14], di
mov r12, qword [rsp + 0x78]
mov edx, 1
mov word [r13 + 0x14], si
test ecx, ecx
jne 0x18004678e
mov rsi, qword [rsp + 0x68]
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
test r8d, r8d
je 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov r15, qword [rsp + 0x48]
test byte [r15 + 2], 1
jne 0x180041115
mov r14, r10
jmp 0x18004111d
mov r14, qword [r15 - 8]
add r14, 4
mov rax, qword [r15 + 0x10]
mov ecx, dword [r15 + 4]
mov edx, dword [r15 + 8]
movsxd r15, dword [r15 + 0xc]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x78], ecx
mov dword [rbp - 0x5c], edx
mov r12d, r10d
mov rbx, r10
test r15, r15
jle 0x1800467a8
lea r13, [rax + 0x20]
nop word [rax + rax]
test r14, r14
je 0x18004115b
mov edi, dword [r14 + rbx*4]
jmp 0x18004115e
mov edi, r12d
mov rax, qword [rax + 0x18]
mov r8, qword [r13]
add edx, edi
imul rdx, rdx, 0x38
movzx esi, byte [rax + rbx]
add ecx, edi
add rdx, r11
and esi, 1
imul rcx, rcx, 0x38
add rcx, r11
call fcn.180039d60
mov r11, qword [rsp + 0x58]
mov r8d, eax
mov dword [rsp + 0x50], eax
test eax, eax
mov rax, qword [rbp - 0x58]
jne 0x1800411cc
mov ecx, dword [rbp - 0x78]
mov edx, dword [rbp - 0x5c]
inc rbx
inc r12d
add r13, 8
cmp rbx, r15
jl 0x180041150
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffd8
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x180041200
mov ecx, dword [rbp - 0x78]
add ecx, edi
imul rcx, rcx, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1800411f8
mov ecx, dword [rbp - 0x5c]
add ecx, edi
imul rcx, rcx, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x180041200
neg r8d
mov dword [rsp + 0x50], r8d
mov r15d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
test esi, esi
mov rsi, qword [rsp + 0x68]
je 0x1800464d3
mov r12, qword [rsp + 0x78]
neg r8d
mov dword [rsp + 0x50], r8d
jmp 0x18003ffd8
test r8d, r8d
jns 0x180041256
mov eax, dword [r14 + 4]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r12 + rcx*8]
add r14, 0x18
jmp 0x18003fdcc
jne 0x18004127a
mov eax, dword [r14 + 8]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r12 + rcx*8]
add r14, 0x18
jmp 0x18003fdcc
mov eax, dword [r14 + 0xc]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r12 + rcx*8]
add r14, 0x18
jmp 0x18003fdcc
movsxd rcx, dword [r14 + 4]
mov edx, 2
imul rcx, rcx, 0x38
add rcx, r11
call fcn.180033b70
movsxd rcx, dword [r14 + 8]
mov edx, 2
movsxd rbx, eax
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x58]
call fcn.180033b70
cmp byte [r14], 0x2c
movsxd r11, eax
lea rax, [0x180000000]
jne 0x1800412ec
lea rdx, [rbx + rbx*2]
add rdx, r11
movzx eax, byte [rdx + rax + 0x145c88]
jmp 0x1800412fb
lea rcx, [rbx + rbx*2]
add rcx, r11
movzx eax, byte [rcx + rax + 0x145ca0]
movsxd rcx, dword [r14 + 0xc]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
imul rcx, rcx, 0x38
mov r8d, dword [rsp + 0x50]
add rcx, r11
mov edx, 1
cmp eax, 2
jne 0x180041342
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov eax, 0xf241
and word [rcx + 0x14], ax
or word [rcx + 0x14], dx
xor r10d, r10d
add r14, 0x18
jmp 0x18003fdcc
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
cdqe
mov qword [rcx], rax
mov eax, 0xf244
xor r10d, r10d
and word [rcx + 0x14], ax
or word [rcx + 0x14], 4
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov edx, dword [rax + 0xc]
imul rcx, rcx, 0x38
add rcx, r11
call fcn.180033b70
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rcx, eax
movsxd rax, dword [r14 + 0x10]
mov edx, 0x9000
xor rcx, rax
movsxd rax, dword [r14 + 8]
imul rax, rax, 0x38
add rax, r11
test word [rax + 0x14], dx
je 0x1800413c1
mov rdx, rcx
mov rcx, rax
call fcn.180034010
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov qword [rax], rcx
mov ecx, 4
mov word [rax + 0x14], cx
jmp 0x18003ffcd
mov rbx, qword [rsp + 0x48]
movsxd rcx, dword [rbx + 4]
movsxd rbx, dword [rbx + 8]
imul rcx, rcx, 0x38
imul rbx, rbx, 0x38
add rcx, r11
add rbx, r11
test byte [rcx + 0x14], 1
jne 0x18004064d
xor edx, edx
call fcn.180033b70
xor r10d, r10d
test eax, eax
mov eax, 0x9000
mov ecx, r10d
sete cl
test word [rbx + 0x14], ax
je 0x18004142e
mov rdx, rcx
mov rcx, rbx
call fcn.180034010
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov eax, 4
mov qword [rbx], rcx
mov word [rbx + 0x14], ax
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 8]
movsxd rdi, dword [rax + 4]
mov eax, 0x9000
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, r11
add rdi, r11
test word [rbx + 0x14], ax
je 0x18004148c
mov rcx, rbx
call fcn.180033a00
mov r11, qword [rsp + 0x58]
xor r10d, r10d
jmp 0x180041490
mov word [rbx + 0x14], dx
test byte [rdi + 0x14], 1
jne 0x1800467dd
mov eax, 4
mov rcx, rdi
mov word [rbx + 0x14], ax
call sym.sqlite.dll_sqlite3_value_int64
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
not rax
mov qword [rbx], rax
jmp 0x18003ffcd
mov r10, qword [r13 + 0x108]
test r10, r10
je 0x18004152c
mov rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
mov ebx, 1
sub rcx, qword [r13 + 0x88]
imul rcx
mov r8, rdx
sar r8, 2
mov rax, r8
shr rax, 0x3f
add r8, rax
mov rax, qword [r10 + 0x28]
mov r9d, r8d
and r8d, 7
shr r9, 3
mov ecx, r8d
movzx edx, byte [r9 + rax]
mov eax, ebx
shl eax, cl
test al, dl
jne 0x180046788
mov rdx, qword [r10 + 0x28]
mov eax, ebx
shl al, cl
or byte [r9 + rdx], al
mov edx, ebx
jmp 0x180041540
mov rcx, qword [r13 + 0x88]
mov eax, dword [r14 + 4]
cmp dword [rcx + 4], eax
je 0x18004678b
mov rax, qword [r13 + 0x88]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov ecx, dword [rax + 4]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov dword [r14 + 4], ecx
xor r10d, r10d
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov edx, dword [rax + 0xc]
imul rcx, rcx, 0x38
add rcx, r11
call fcn.180033b70
xor r10d, r10d
test eax, eax
mov r14, qword [rsp + 0x48]
mov edx, 1
jne 0x18004678e
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov edx, r10d
cmp dword [rax + 0xc], 0
movsxd rcx, dword [rax + 4]
sete dl
imul rcx, rcx, 0x38
add rcx, r11
call fcn.180033b70
mov r14, qword [rsp + 0x48]
xor r10d, r10d
lea edx, [r10 + 1]
test eax, eax
je 0x18004678e
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rax, dword [r14 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 1
jne 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov rcx, qword [rsp + 0x48]
mov r14, rcx
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x18004169a
mov rcx, rax
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
movsxd rcx, dword [r14 + 0xc]
movzx eax, word [rdx + 0x4a]
cmp ecx, eax
jge 0x18004168f
mov ecx, dword [rdx + rcx*4 + 0x78]
cmp ecx, 0xc
jb 0x18004167b
test cl, 1
je 0x180041674
mov edx, 4
jmp 0x1800416bf
mov edx, 8
jmp 0x1800416bf
mov rax, rcx
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x145cb0]
jmp 0x1800416bf
mov ecx, dword [r14 + 0x10]
mov edx, 1
jmp 0x1800416ba
movsxd rax, dword [rcx + 0xc]
imul rax, rax, 0x38
movzx ecx, word [rax + r11 + 0x14]
lea rax, [0x180000000]
and ecx, 0x3f
movzx ecx, byte [rcx + rax + 0x145b40]
dec ecx
shl dx, cl
test word [r14 + 2], dx
mov edx, 1
jne 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rax, dword [r14 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 1
jne 0x18004170a
movsxd rax, dword [r14 + 0xc]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 1
jne 0x18004170a
movsxd rax, dword [r14 + 8]
jmp 0x180040ba3
movsxd rax, dword [r14 + 8]
mov ecx, 0x9000
imul rax, rax, 0x38
add rax, r11
test word [rax + 0x14], cx
je 0x180041732
mov rcx, rax
call fcn.180033a00
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov word [rax + 0x14], dx
add r14, 0x18
jmp 0x18003fdcc
movsxd rax, dword [r14 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 1
je 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
movsxd rcx, dword [r14 + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x18003ffdb
cmp byte [rdx + 2], 0
je 0x18003ffdb
movsxd rax, dword [r14 + 0xc]
mov ecx, 0x9000
imul rax, rax, 0x38
add rax, r11
test word [rax + 0x14], cx
je 0x1800417b5
mov rcx, rax
call fcn.180033a00
mov edx, 1
jmp 0x18004678b
mov edx, 1
mov word [rax + 0x14], dx
jmp 0x18004678e
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov r12d, dword [r15 + 8]
mov rbx, qword [rax + rcx*8]
mov dword [rbp - 0x78], r12d
nop dword [rax]
mov eax, dword [r13 + 0x2c]
mov r15, qword [rbx + 0x58]
mov qword [rbp - 0x68], r15
cmp dword [rbx + 0x20], eax
je 0x18004182b
cmp byte [rbx + 2], 0
jne 0x1800418aa
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x180041824
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x180041850
lea eax, [r12 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x180041850
mov rbx, qword [rbx + 0x28]
lea r12d, [rax - 1]
jmp 0x1800417d8
cmp byte [rdi], 0
je 0x180041864
jmp 0x180041838
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1800419c6
mov rcx, rbx
call fcn.180039530
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
je 0x1800417e0
jmp 0x180046b9b
mov rcx, rbx
call fcn.1800394c0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f6f
mov rcx, rdi
call fcn.180028ec0
mov eax, dword [rdi + 0x40]
mov dword [rbx + 0x68], eax
mov rax, qword [rdi + 0x88]
movzx ecx, word [rdi + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rdi + 0x38]
cmp ecx, edx
jle 0x18004189e
mov ecx, edx
test edx, edx
mov r10d, 0
cmovs ecx, r10d
mov dword [rbx + 0x6c], ecx
mov rax, qword [rdi + 0x38]
jmp 0x1800418db
mov dword [rbx + 0x6c], ecx
mov rax, qword [rdi + 0x38]
xor r10d, r10d
jmp 0x1800418db
cmp byte [rbx], 3
jne 0x180041957
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x180041957
mov rcx, rax
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x58]
xor r10d, r10d
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rax, qword [rcx + 8]
mov qword [rbx + 0x60], rax
mov eax, dword [r13 + 0x2c]
mov dword [rbx + 0x20], eax
mov rax, qword [rbx + 0x60]
movzx ecx, byte [rax]
mov dword [r15], ecx
cmp ecx, 0x80
jae 0x180041902
mov ecx, 1
mov dword [rbx + 0x40], ecx
jmp 0x180041919
mov rcx, qword [rbx + 0x60]
mov rdx, r15
call fcn.180011950
xor r10d, r10d
movzx r11d, al
mov dword [rbx + 0x40], r11d
mov word [rbx + 0x4a], r10w
mov eax, dword [r15]
cmp dword [rbx + 0x6c], eax
jae 0x18004194a
mov qword [rbx + 0x60], r10
mov dword [rbx + 0x6c], r10d
mov eax, dword [r15]
cmp eax, 0x18003
ja 0x180041b7c
cmp eax, dword [rbx + 0x68]
jbe 0x1800419c9
jmp 0x180041b7c
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x48], rax
jmp 0x180041a86
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov ecx, 0x9000
movsxd rax, dword [r14 + 0xc]
imul rax, rax, 0x38
add rax, r11
test word [rax + 0x14], cx
je 0x180041993
mov rcx, rax
call fcn.180033a00
mov r15d, dword [rsp + 0x54]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov r15d, dword [rsp + 0x54]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov edx, 1
xor r10d, r10d
add r14, 0x18
mov word [rax + 0x14], dx
jmp 0x18003fdcc
xor r10d, r10d
movzx eax, word [rbx + 0x4a]
cmp eax, r12d
ja 0x180041cc3
mov eax, dword [r15]
cmp dword [rbx + 0x40], eax
jae 0x180041c5d
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x48], rax
test rax, rax
jne 0x180041a86
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], rax
mov r10, qword [rbx + 0x30]
mov r8d, dword [r15]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
xor r14d, r14d
mov edx, dword [rax + 0x58]
mov r11d, r14d
mov dword [rsp + 0x54], r14d
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x180041a40
mov ecx, edx
test edx, edx
cmovs ecx, r14d
mov rax, qword [r10 + 0x38]
mov qword [rbp - 0x48], rax
mov qword [rbp + 0x30], rax
cmp r8d, ecx
ja 0x180041a60
mov ecx, 0x4010
mov dword [rbp + 0x38], r8d
mov word [rbp + 0x3c], cx
jmp 0x180041a7d
lea r9, [rbp + 0x28]
xor edx, edx
mov rcx, r10
call fcn.180034620
mov r11d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x48], rax
test r11d, r11d
jne 0x180046f5b
movzx r14d, word [rbx + 0x4a]
mov r12d, dword [rbx + 0x40]
mov rcx, qword [rbp - 0x68]
mov r13d, dword [r15 + r14*4]
mov r15d, dword [r15]
add r12, rax
add r15, rax
mov esi, r14d
movzx edi, byte [r12]
mov dword [rbp - 0x5c], edi
mov dword [rbx + rsi*4 + 0x78], edi
cmp edi, 0x80
jae 0x180041acb
lea rdx, [0x180000000]
inc r12
movzx eax, byte [rdi + rdx + 0x145ac0]
jmp 0x180041b07
lea rdx, [rbp - 0x5c]
mov rcx, r12
call fcn.180011950
mov edi, dword [rbp - 0x5c]
movzx r11d, al
mov dword [rbx + rsi*4 + 0x78], edi
add r12, r11
cmp edi, 0x80
jb 0x180041af4
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x180041b03
lea rcx, [0x180000000]
movzx eax, byte [rdi + rcx + 0x145ac0]
mov rcx, qword [rbp - 0x68]
inc r14d
add r13, rax
movsxd rsi, r14d
mov dword [rcx + rsi*4], r13d
cmp r14d, dword [rbp - 0x78]
ja 0x180041b21
cmp r12, r15
jb 0x180041aa3
jmp 0x180041b26
cmp r12, r15
jb 0x180041b33
cmp r12, r15
ja 0x180041b3f
mov eax, dword [rbx + 0x68]
cmp r13, rax
jne 0x180041b3f
mov eax, dword [rbx + 0x68]
cmp r13, rax
jbe 0x180041bbf
cmp dword [rcx], 0
jne 0x180041b4f
xor r10d, r10d
mov r12, r15
mov r14d, r10d
jmp 0x180041bc2
cmp qword [rbx + 0x60], 0
jne 0x180041b70
mov eax, 0x9000
test word [rbp + 0x3c], ax
jne 0x180041b67
cmp dword [rbp + 0x48], 0
je 0x180041b70
lea rcx, [rbp + 0x28]
call fcn.180033a40
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
xor r10d, r10d
mov r12, qword [rsp + 0x78]
mov eax, dword [r12 + 0xc]
test eax, eax
jle 0x180046977
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r12 + rax*8]
mov qword [rsp + 0x48], r15
mov r15d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x48]
jmp 0x18003ffdb
xor r10d, r10d
sub r12d, dword [rbp - 0x48]
cmp qword [rbx + 0x60], 0
mov word [rbx + 0x4a], r14w
mov dword [rbx + 0x40], r12d
mov ecx, 0x9000
jne 0x180041bf8
test word [rbp + 0x3c], cx
jne 0x180041be7
cmp dword [rbp + 0x48], 0
je 0x180041bf8
lea rcx, [rbp + 0x28]
call fcn.180033a40
xor r10d, r10d
mov ecx, 0x9000
mov r15, qword [rbp - 0x68]
mov r12d, dword [rbp - 0x78]
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
movzx eax, word [rbx + 0x4a]
cmp eax, r12d
ja 0x180041cca
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
add rax, r11
cmp byte [r15 + 1], 0xf6
jne 0x180041c67
mov rdx, qword [r15 + 0x10]
mov r8d, 0x2000
mov rcx, rax
call fcn.180034210
mov r15d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov edi, r10d
mov ecx, 0x9000
jmp 0x180041c09
test word [rax + 0x14], cx
je 0x180041c8e
mov rcx, rax
call fcn.180033a00
mov r15d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov r14, qword [rsp + 0x48]
mov r15d, dword [rsp + 0x54]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov edx, 1
add r14, 0x18
mov word [rax + 0x14], dx
jmp 0x18003fdcc
mov eax, r12d
mov edi, dword [rbx + rax*4 + 0x78]
mov rdx, qword [rsp + 0x48]
mov eax, 0x9000
movsxd rsi, dword [rdx + 0xc]
imul rsi, rsi, 0x38
add rsi, qword [rsp + 0x58]
test word [rsi + 0x14], ax
je 0x180041cf4
mov rcx, rsi
call fcn.180033a00
mov rdx, qword [rsp + 0x48]
lea eax, [r12 + 1]
mov eax, dword [r15 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x180041e1b
mov eax, r12d
mov r12d, dword [r15 + rax*4]
add r12, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x180041d41
mov rcx, r12
mov edx, edi
mov r8, rsi
call fcn.180039620
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
movzx eax, byte [rsp + 0x40]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov byte [rsi + 0x16], al
lea edx, [rbx + 2]
mov dword [rsi + 0x10], ebx
cmp dword [rsi + 0x20], edx
jge 0x180041dbc
mov r8, qword [rsp + 0x68]
cmp ebx, dword [r8 + 0x88]
jg 0x180046bc6
mov eax, 1
xor r8d, r8d
mov rcx, rsi
mov word [rsi + 0x14], ax
call fcn.180033380
test eax, eax
je 0x180041dc4
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rcx, rsi
call fcn.18000c8e0
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.180035090
mov r12, qword [rsp + 0x48]
mov r15d, 7
xor r14d, r14d
jmp 0x180046bad
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r12
call fcn.180128740
mov r11, qword [rsi + 8]
mov r15d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov byte [rbx + r11], 0
mov rax, qword [rsi + 8]
mov r11, qword [rsp + 0x58]
lea rcx, [0x180000000]
mov byte [rbx + rax + 1], 0
mov eax, edi
and eax, 1
movzx eax, word [rcx + rax*2 + 0x144f74]
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x18003ffcd
movzx eax, byte [rsp + 0x40]
mov byte [rsi + 0x16], al
movzx eax, byte [rdx + 2]
and al, 0xc0
je 0x180041e3e
cmp al, 0x80
je 0x180041e62
cmp edi, 0xc
jb 0x180041e3e
test dil, 1
je 0x180041e62
cmp al, 0xc0
je 0x180041e62
cmp edi, 0x80
jb 0x180041e4d
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x180041e5e
lea rcx, [0x180000000]
mov eax, edi
movzx eax, byte [rax + rcx + 0x145ac0]
test eax, eax
jne 0x180041e6e
lea rcx, [0x180144d90]
jmp 0x180041d19
mov eax, r12d
mov qword [rsp + 0x30], rsi
mov r8d, edi
mov r9d, dword [r15 + rax*4]
mov eax, dword [rbp - 0x60]
mov edx, r12d
mov dword [rsp + 0x28], eax
mov eax, dword [r13 + 0x2c]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.18003f990
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
je 0x180041d28
mov rsi, qword [rsp + 0x68]
cmp eax, 7
je 0x180041d88
cmp eax, 0x12
je 0x180046bc9
jmp 0x180046b9b
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov esi, r10d
mov r12, qword [rbx + 0x10]
movsxd rbx, dword [rbx + 4]
mov r13, qword [r12 + 8]
imul rbx, rbx, 0x38
add rbx, r11
cmp r10w, word [r12 + 0x36]
jge 0x1800467bc
lea rdi, [r13 + 0x12]
movzx eax, word [rdi]
test al, 0x60
je 0x180041f0d
test al, 0x20
jne 0x180041fb6
cmp dword [r14 + 0xc], 0
jne 0x180041fb2
movzx edx, byte [rdi - 6]
movzx r8d, r9b
mov rcx, rbx
call fcn.18003f640
movzx eax, word [rbx + 0x14]
test al, 1
jne 0x180041fb2
mov ecx, dword [rdi - 0xa]
shr ecx, 4
and ecx, 0xf
cmp ecx, 2
je 0x180041faa
jbe 0x180041fb2
cmp ecx, 4
jbe 0x180041fa6
cmp ecx, 5
je 0x180041f4c
cmp ecx, 6
jne 0x180041fb2
test al, 2
jmp 0x180041fac
test al, 4
je 0x180041fa2
mov rcx, qword [rbx]
movabs rdx, 0x7fffffffffff
cmp rcx, rdx
jg 0x180041f83
movabs rdx, 0xffff800000000000
cmp rcx, rdx
jl 0x180041f83
mov ecx, 0xfffb
and ax, cx
or ax, 0x20
mov word [rbx + 0x14], ax
jmp 0x180041fb2
pxor xmm0, xmm0
cvtsi2sd xmm0, rcx
mov ecx, 0xfffb
and ax, cx
or ax, 8
mov word [rbx + 0x14], ax
movsd qword [rbx], xmm0
jmp 0x180041fb2
test al, 0x28
jmp 0x180041fac
test al, 4
jmp 0x180041fac
test al, 0x10
je 0x180046989
add rbx, 0x38
movsx eax, word [r12 + 0x36]
movzx r9d, byte [rsp + 0x40]
inc esi
add rdi, 0x18
cmp esi, eax
jl 0x180041ef3
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov rdi, qword [rax + 0x10]
imul rbx, rbx, 0x38
add rbx, r11
nop dword [rax + rax]
movzx edx, byte [rdi]
movzx r8d, r9b
mov rcx, rbx
call fcn.18003f640
cmp byte [rdi], 0x45
jne 0x180042068
movzx eax, word [rbx + 0x14]
test al, 4
je 0x180042068
mov rcx, qword [rbx]
movabs rdx, 0x7fffffffffff
cmp rcx, rdx
jg 0x18004204b
movabs rdx, 0xffff800000000000
cmp rcx, rdx
jl 0x18004204b
mov ecx, 0xfffb
and ax, cx
or ax, 0x20
jmp 0x180042064
pxor xmm0, xmm0
cvtsi2sd xmm0, rcx
mov ecx, 0xfff9
and ax, cx
or ax, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], ax
movzx r9d, byte [rsp + 0x40]
inc rdi
cmp byte [rdi], 0
je 0x180046546
add rbx, 0x38
jmp 0x180042000
mov rcx, qword [rsp + 0x48]
mov r13, r10
mov r14d, r10d
mov eax, dword [rcx + 8]
mov rdi, qword [rcx + 0x10]
mov r15, r10
movsxd r10, dword [rcx + 4]
dec eax
movsxd rsi, eax
movsxd rax, dword [rcx + 0xc]
imul r10, r10, 0x38
add r10, r11
mov qword [rbp - 0x50], r10
imul rsi, rsi, 0x38
add rsi, r10
mov qword [rbp - 0x58], rsi
imul rax, rax, 0x38
add rax, r11
mov qword [rbp - 0x20], rax
test rdi, rdi
je 0x180042125
lea rbx, [r10 + 0x14]
mov esi, 0xfffb
nop word [rax + rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
call fcn.18003f640
cmp byte [rdi], 0x45
jne 0x180042106
movzx eax, word [rbx]
test al, 4
je 0x180042106
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx r9d, byte [rsp + 0x40]
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x1800420e0
mov r10, qword [rbp - 0x50]
mov rsi, qword [rbp - 0x58]
mov edx, 1
lea rdi, [rsi + 0x24]
nop dword [rax]
movzx ecx, word [rdi - 0x10]
test cl, 1
je 0x180042153
mov eax, 0x400
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
inc r14d
mov dword [rdi], eax
jmp 0x1800422e5
test cl, 0x24
je 0x180042260
mov r8, qword [rdi - 0x24]
mov rdx, r8
test r8, r8
jns 0x18004216b
not rdx
inc r14d
cmp rdx, 0x7f
ja 0x1800421aa
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x18004219b
mov rax, qword [rbp - 0x80]
cmp byte [rax + 0xc5], 4
jb 0x18004219b
lea eax, [rdx + 8]
mov edx, 1
mov dword [rdi], eax
jmp 0x1800422e5
mov edx, 1
inc r13
mov dword [rdi], edx
jmp 0x1800422e5
cmp rdx, 0x7fff
ja 0x1800421c7
add r13, 2
mov dword [rdi], 2
mov edx, 1
jmp 0x1800422e5
cmp rdx, 0x7fffff
ja 0x1800421e4
add r13, 3
mov dword [rdi], 3
mov edx, 1
jmp 0x1800422e5
cmp rdx, 0x7fffffff
ja 0x180042200
mov eax, 4
add r13, 4
lea edx, [rax - 3]
mov dword [rdi], eax
jmp 0x1800422e5
movabs rax, 0x7fffffffffff
cmp rdx, rax
mov edx, 1
ja 0x180042223
add r13, 6
mov dword [rdi], 5
jmp 0x1800422e5
add r13, 8
test cl, 0x20
je 0x180042255
pxor xmm0, xmm0
mov eax, 0xffdf
mov dword [rdi], 7
cvtsi2sd xmm0, r8
and cx, ax
or cx, 8
mov word [rdi - 0x10], cx
movsd qword [rdi - 0x24], xmm0
jmp 0x1800422e5
mov dword [rdi], 6
jmp 0x1800422e5
test cl, 8
je 0x180042274
inc r14d
mov dword [rdi], 7
add r13, 8
jmp 0x1800422e5
mov esi, dword [rdi - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
lea r12d, [rax + rsi*2 + 0xc]
mov eax, 0x400
test ax, cx
je 0x1800422b6
movsxd rax, dword [rdi - 0x24]
lea r12d, [r12 + rax*2]
test r13, r13
je 0x1800422b3
lea rcx, [rdi - 0x24]
call fcn.1800336f0
test eax, eax
jne 0x180046f1d
add esi, dword [rdi - 0x24]
lea edx, [rax + 1]
jmp 0x1800422b6
add r15, rax
mov eax, esi
mov ecx, edx
add r13, rax
mov eax, r12d
shr rax, 7
test rax, rax
je 0x1800422db
nop dword [rax]
shr rax, 7
inc ecx
test rax, rax
jne 0x1800422d0
mov r10, qword [rbp - 0x50]
add r14d, ecx
mov dword [rdi], r12d
lea rax, [rdi - 0x24]
cmp rax, r10
je 0x1800422f7
sub rdi, 0x38
jmp 0x180042130
cmp r14d, 0x7e
jg 0x180042305
mov r12d, 1
jmp 0x180042343
movsxd rax, r14d
shr rax, 7
test rax, rax
je 0x18004231c
shr rax, 7
inc edx
test rax, rax
jne 0x180042311
add r14d, edx
mov r12d, 1
movsxd rax, r14d
mov ecx, r12d
shr rax, 7
test rax, rax
je 0x18004233f
shr rax, 7
inc ecx
test rax, rax
jne 0x180042334
cmp edx, ecx
jge 0x180042346
inc r14d
mov rsi, qword [rbp - 0x20]
movsxd rbx, r14d
movsxd rdx, dword [rsi + 0x20]
lea rdi, [r13 + rbx]
lea rcx, [rdi + r15]
cmp rcx, rdx
jle 0x180042398
mov r8, qword [rsp + 0x68]
movsxd rax, dword [r8 + 0x88]
cmp rcx, rax
jg 0x180046bc2
cmp edx, edi
jge 0x180042393
xor r8d, r8d
mov edx, edi
mov rcx, rsi
call fcn.180033380
test eax, eax
jne 0x180046f1d
mov r10, qword [rbp - 0x50]
jmp 0x1800423a0
and word [rsi + 0x14], 0x2d
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov eax, 0x10
mov dword [rsi + 0x10], edi
mov word [rsi + 0x14], ax
test r15, r15
je 0x1800423bd
mov eax, 0x410
mov dword [rsi], r15d
mov word [rsi + 0x14], ax
mov rdi, qword [rsi + 8]
lea rsi, [rdi + rbx]
cmp r14d, 0x80
jge 0x1800423d6
mov byte [rdi], r14b
inc rdi
jmp 0x180042417
cmp rbx, 0x7f
ja 0x1800423e6
and bl, 0x7f
mov eax, r12d
mov byte [rdi], bl
jmp 0x180042412
cmp rbx, 0x3fff
ja 0x180042407
mov rax, rbx
shr rax, 7
or al, 0x80
and bl, 0x7f
mov byte [rdi], al
mov byte [rdi + 1], bl
mov eax, 2
jmp 0x180042412
mov rdx, rbx
mov rcx, rdi
call fcn.180011690
cdqe
add rdi, rax
mov r12, qword [rbp - 0x58]
lea rbx, [r10 + 0x10]
nop
mov eax, dword [rbx + 0x14]
cmp eax, 7
ja 0x180042473
mov byte [rdi], al
inc rdi
test eax, eax
je 0x1800424e8
mov rdx, qword [rbx - 0x10]
lea rcx, [0x180000000]
or r9d, 0xffffffff
movzx ecx, byte [rax + rcx + 0x145ac0]
mov r8d, ecx
add ecx, r9d
mov byte [rcx + rsi], dl
movsxd rax, ecx
je 0x18004246e
add rax, rsi
nop dword [rax]
dec rax
shr rdx, 8
add ecx, r9d
mov byte [rax], dl
jne 0x180042460
add rsi, r8
jmp 0x1800424e8
cmp eax, 0x80
jae 0x18004248d
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x1800424e8
movsxd rax, dword [rbx]
test eax, eax
jle 0x1800424e8
jmp 0x1800424d3
mov rdx, rax
cmp rax, 0x7f
ja 0x1800424a2
and dl, 0x7f
mov eax, 1
mov byte [rdi], dl
jmp 0x1800424c7
cmp rax, 0x3fff
ja 0x1800424bf
shr rax, 7
or al, 0x80
and dl, 0x7f
mov byte [rdi], al
mov byte [rdi + 1], dl
mov eax, 2
jmp 0x1800424c7
mov rcx, rdi
call fcn.180011690
cdqe
add rdi, rax
movsxd rax, dword [rbx]
test eax, eax
je 0x1800424e8
mov rdx, qword [rbx - 8]
mov r8, rax
mov rcx, rsi
call fcn.180128740
movsxd r11, dword [rbx]
add rsi, r11
lea rax, [rbx - 0x10]
cmp rax, r12
je 0x1800464b4
add rbx, 0x38
jmp 0x180042420
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x180042526
mov rcx, rdx
call fcn.18002a520
mov rbx, rax
jmp 0x180042549
lea r8, [rbp + 0x18]
mov rcx, rsi
mov qword [rbp + 0x18], r10
call fcn.180030a40
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f96
mov rbx, qword [rbp + 0x18]
mov r14, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rax, dword [r14 + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 0x14], cx
je 0x18004257b
mov rcx, rax
call fcn.18003f7f0
movzx r9d, byte [rsp + 0x40]
mov qword [rax], rbx
jmp 0x1800443fd
movzx r9d, byte [rsp + 0x40]
mov ecx, 4
mov word [rax + 0x14], cx
mov qword [rax], rbx
jmp 0x1800443fd
mov rax, qword [rsp + 0x48]
mov r11d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rbp - 0x78], r11d
test r11d, r11d
jne 0x180042668
mov rbx, qword [rsp + 0x68]
cmp dword [rbx + 0xe0], r11d
jg 0x180046a05
mov rcx, rsi
call fcn.18000fb50
mov r8d, dword [rbx + 0x30c]
xor edx, edx
add r8d, dword [rbx + 0x308]
mov rcx, rbx
movsxd rdi, eax
call fcn.1800a27d0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f8e
lea rdx, [rdi + 0x21]
mov rcx, rbx
call fcn.18000c4a0
mov rbx, rax
test rax, rax
je 0x180042929
lea r9, [rax + 0x20]
lea ecx, [rdi + 1]
mov rdx, rsi
movsxd r8, ecx
mov rcx, r9
mov qword [rax], r9
call fcn.180128740
mov rsi, qword [rsp + 0x68]
cmp byte [rsi + 0x65], r15b
je 0x180042635
mov byte [rsi + 0x65], r15b
mov byte [rsi + 0x6d], 1
jmp 0x18004263b
inc dword [rsi + 0x308]
mov rax, qword [rsi + 0x2f8]
mov qword [rbx + 0x18], rax
mov rax, qword [rsi + 0x310]
mov qword [rsi + 0x2f8], rbx
mov qword [rbx + 8], rax
mov rax, qword [rsi + 0x318]
mov qword [rbx + 0x10], rax
jmp 0x1800428d5
mov r8, qword [rsp + 0x68]
mov r14d, r10d
mov r12, qword [r8 + 0x2f8]
test r12, r12
je 0x18004269d
nop dword [rax]
mov rcx, qword [r12]
mov rdx, rsi
call fcn.18000ff90
test eax, eax
je 0x1800426bf
mov r12, qword [r12 + 0x18]
inc r14d
test r12, r12
jne 0x180042680
lea rdx, str.no_such_savepoint:__s
mov r8, rsi
mov rcx, r13
call fcn.180035090
mov r15d, 1
mov rsi, qword [rsp + 0x68]
jmp 0x180046ba0
mov rsi, qword [rsp + 0x68]
cmp dword [rsi + 0xe0], 0
jle 0x1800426d7
cmp r11d, 1
je 0x180046a22
cmp qword [r12 + 0x18], 0
jne 0x18004273f
cmp byte [rsi + 0x6d], 0
je 0x18004273f
mov ebx, 1
mov r15d, ebx
cmp r11d, ebx
jne 0x180042746
mov rax, qword [r13]
mov rcx, qword [rax + 0x318]
add rcx, qword [rax + 0x310]
test rcx, rcx
mov rcx, r13
jg 0x180046a80
mov byte [rsi + 0x65], bl
call fcn.180038a60
cmp eax, 5
je 0x180046a3c
mov eax, dword [r13 + 0x34]
mov dword [rsp + 0x54], eax
test eax, eax
je 0x180042736
mov byte [rsi + 0x65], 0
jmp 0x180042850
mov byte [rsi + 0x6d], 0
jmp 0x180042858
xor ecx, ecx
mov r15d, ecx
jmp 0x180042748
xor ecx, ecx
mov eax, dword [rsi + 0x308]
sub eax, r14d
lea r14d, [rax - 1]
cmp r11d, 2
jne 0x1800427c3
mov r13d, dword [rsi + 0x2c]
mov edi, ecx
and r13d, 1
cmp dword [rsi + 0x28], 0
jle 0x1800427c6
test r13d, r13d
mov esi, ecx
mov rbx, rcx
sete sil
nop word [rax + rax]
mov rax, qword [rsp + 0x68]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rax + 0x20]
mov rcx, qword [rbx + rcx + 8]
call fcn.180028860
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f4d
mov r8, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [r8 + 0x28]
jl 0x180042780
mov r11d, dword [rbp - 0x78]
mov rsi, r8
xor ecx, ecx
jmp 0x1800427ca
mov r13d, ecx
mov eax, dword [rsp + 0x54]
cmp dword [rsi + 0x28], 0
mov edi, ecx
jle 0x18004280f
mov rbx, rcx
nop word [rax + rax]
mov rcx, qword [rsi + 0x20]
mov r8d, r14d
mov edx, r11d
mov rcx, qword [rbx + rcx + 8]
call fcn.180028b40
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f3f
mov r11d, dword [rbp - 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x1800427e0
test r13d, r13d
je 0x180042847
mov rax, qword [rsi + 8]
test rax, rax
je 0x180042837
nop dword [rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x180042820
mov rcx, rsi
call fcn.180065890
or dword [rsi + 0x2c], 1
mov eax, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x70]
mov r13, qword [rbp - 0x80]
test eax, eax
jne 0x180046f35
cmp qword [rsi + 0x2f8], r12
je 0x18004288a
mov rdx, qword [rsi + 0x2f8]
mov rcx, rsi
mov rax, qword [rdx + 0x18]
mov qword [rsi + 0x2f8], rax
call fcn.18000c110
dec dword [rsi + 0x308]
cmp qword [rsi + 0x2f8], r12
jne 0x180042861
mov ebx, dword [rbp - 0x78]
cmp ebx, 1
jne 0x1800428fd
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2f8], rax
call fcn.18000c110
test r15d, r15d
jne 0x18004291f
dec dword [rsi + 0x308]
mov r8d, r14d
mov edx, ebx
mov rcx, rsi
call fcn.1800a27d0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r12, qword [rsp + 0x78]
cmp byte [r13 + 0xc7], 3
jne 0x1800404d7
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
mov r15d, 0x65
jmp 0x180047130
mov rax, qword [r12 + 8]
mov qword [rsi + 0x310], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x318], rax
test r15d, r15d
je 0x1800428b4
cmp ebx, 2
je 0x1800428b4
mov r15d, dword [rsp + 0x54]
test r15d, r15d
jmp 0x1800428ca
mov rsi, qword [rsp + 0x68]
jmp 0x1800428d5
mov rax, qword [rsp + 0x48]
mov r12d, r10d
mov dword [rbp - 0x24], r10d
mov edx, dword [rax + 8]
test edx, edx
je 0x180042957
movabs rcx, 0x200100000
test qword [rsi + 0x30], rcx
jne 0x180046ab9
movsxd r13, dword [rax + 4]
shl r13, 5
add r13, qword [rsi + 0x20]
mov rbx, qword [r13 + 8]
test rbx, rbx
je 0x180042ae4
cmp byte [rbx + 0x11], 0
jne 0x1800429d2
movzx eax, byte [rbx + 0x10]
test al, al
je 0x1800429d2
cmp al, 1
jne 0x180042986
test edx, edx
jne 0x1800429d2
mov r8, qword [rbx + 8]
mov rax, qword [r8 + 0x18]
mov rcx, qword [rax + 0x50]
mov r12d, dword [rcx + 0x28]
bswap r12d
test edx, edx
je 0x1800429c8
mov rax, qword [rbx]
mov rcx, qword [r8]
mov edx, dword [rax + 0x308]
cmp edx, dword [rcx + 0x80]
jle 0x1800429be
cmp byte [rcx + 0xa], 0
je 0x1800429be
call fcn.18001fae0
jmp 0x1800429e2
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x1800429e9
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x1800429f5
lea r8, [rbp - 0x24]
mov rcx, rbx
call fcn.180027600
mov r12d, dword [rbp - 0x24]
mov dword [rsp + 0x54], eax
mov r15d, eax
test r15d, r15d
jne 0x180046ad5
xor r10d, r10d
mov rdi, qword [rbp - 0x80]
mov r14, qword [rsp + 0x48]
test byte [rdi + 0xc8], 0x20
je 0x180042af0
cmp dword [r14 + 8], 0
je 0x180042af0
cmp byte [rsi + 0x65], 0
je 0x180042a29
cmp dword [rsi + 0xdc], 1
jle 0x180042af0
cmp dword [rdi + 0x40], 0
jne 0x180042a44
inc dword [rsi + 0x30c]
mov ecx, dword [rsi + 0x30c]
add ecx, dword [rsi + 0x308]
mov dword [rdi + 0x40], ecx
mov r8d, dword [rdi + 0x40]
xor edx, edx
mov rcx, rsi
dec r8d
call fcn.1800a27d0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180042ac4
mov edi, dword [rdi + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x180042a7c
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x180042a7c
mov rcx, rbx
call fcn.180023f00
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x180042a9d
cmp byte [rcx + 0xa], 0
je 0x180042a9d
mov edx, edi
call fcn.18001fae0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x180042aa8
xor r8d, r8d
mov r15d, r8d
mov dword [rsp + 0x54], r8d
cmp byte [rbx + 0x11], 0
je 0x180042abb
dec dword [rbx + 0x14]
jne 0x180042abb
mov rcx, rbx
call fcn.180023ed0
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rbp - 0x80]
mov rax, qword [rsi + 0x310]
xor r10d, r10d
mov qword [rdi + 0x58], rax
mov rax, qword [rsi + 0x318]
mov qword [rdi + 0x60], rax
mov rdi, qword [rsp + 0x70]
jmp 0x180042ae7
mov r14, rax
test r15d, r15d
jne 0x180046f85
cmp word [r14 + 2], 0
je 0x180042b13
cmp r12d, dword [r14 + 0xc]
jne 0x180046b1d
mov rcx, qword [r13 + 0x18]
mov eax, dword [r14 + 0x10]
cmp dword [rcx + 4], eax
jne 0x180046b1d
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
movsxd rax, dword [r14 + 4]
mov rcx, qword [rsi + 0x20]
mov edx, dword [r14 + 0xc]
shl rax, 5
lea r8, [rbp]
mov rcx, qword [rax + rcx + 8]
call fcn.180030910
mov rdx, r14
mov rcx, r13
call fcn.18003f840
movsxd rcx, dword [rbp]
mov r11, qword [rsp + 0x58]
mov qword [rax], rcx
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rsi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1800309a0
mov r14, qword [rsp + 0x48]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [r14 + 8]
cmp eax, 1
jne 0x180042bc0
movzx eax, word [r14 + 2]
mov ecx, dword [r14 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
or dword [rsi + 0x2c], 1
mov edx, dword [r14 + 4]
mov rcx, rsi
call fcn.180077ef0
jmp 0x180042bd1
cmp eax, 2
jne 0x180042bd1
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r14 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r14 + 4], 1
jne 0x180042bea
xor edx, edx
mov rcx, rsi
call fcn.18003ae90
and dword [r13 + 0xc8], 0xfffffffc
test r15d, r15d
je 0x1800404dc
mov r12, r14
jmp 0x180046ba5
movsxd rcx, dword [r14 + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x180042c27
mov eax, dword [r14 + 8]
cmp dword [rdi + 0x44], eax
jne 0x180042c27
mov rcx, qword [rdi + 0x30]
add rdi, 0x30
call fcn.180024600
jmp 0x180042d42
mov rdi, qword [rsp + 0x70]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x180046b88
mov rax, qword [rsp + 0x48]
mov edi, r10d
mov r12, r10
movsxd r14, dword [rax + 0xc]
mov r13d, dword [rax + 8]
mov rax, r14
shl rax, 5
add rax, qword [rsi + 0x20]
cmp bl, 0x71
mov rbx, qword [rsp + 0x48]
mov r15, qword [rax + 8]
jne 0x180042c8f
mov rax, qword [rax + 0x18]
movzx esi, word [rbx + 2]
movzx ecx, byte [rax + 0x70]
mov rax, qword [rbp - 0x80]
and esi, 8
or esi, 4
cmp cl, byte [rax + 0xc5]
jae 0x180042c92
mov byte [rax + 0xc5], cl
jmp 0x180042c92
mov esi, r10d
test byte [rbx + 2], 0x10
je 0x180042cb2
mov rbx, r13
imul rbx, rbx, 0x38
add rbx, r11
mov rcx, rbx
call fcn.180033c60
mov r13d, dword [rbx]
mov rbx, qword [rsp + 0x48]
movzx eax, byte [rbx + 1]
cmp al, 0xf8
jne 0x180042cc6
mov r12, qword [rbx + 0x10]
movzx edi, word [r12 + 8]
jmp 0x180042ccd
cmp al, 0xfd
jne 0x180042ccd
mov edi, dword [rbx + 0x10]
mov edx, dword [rbx + 4]
mov rcx, qword [rbp - 0x80]
xor r9d, r9d
mov r8d, edi
call fcn.18003f3c0
mov rbx, rax
test rax, rax
je 0x180046f1d
mov rcx, qword [rax + 0x30]
or dword [rax + 8], 4
lea rdi, [rax + 0x30]
mov qword [rsp + 0x20], rcx
mov r9, r12
mov r8d, esi
mov edx, r13d
mov rcx, r15
mov byte [rax + 1], r14b
mov byte [rax + 2], 1
mov dword [rax + 0x44], r13d
call fcn.180028d20
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov qword [rbx + 0x38], r12
cmp byte [r14 + 1], 0xf8
mov r12, qword [rsp + 0x78]
mov r15d, eax
mov dword [rsp + 0x54], eax
setne al
mov byte [rbx + 4], al
movzx ecx, byte [r14 + 2]
mov rax, qword [rdi]
and cl, 3
mov byte [rax + 3], cl
test r15d, r15d
jne 0x180046b9b
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
xor r9d, r9d
movsxd rcx, dword [r15 + 8]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
movsx r8d, word [rbx + 0x48]
call fcn.18003f3c0
mov r11, rax
test rax, rax
je 0x180041d8d
or dword [rax + 8], 1
mov edx, dword [rax + 8]
mov byte [rax + 2], 1
mov rcx, qword [rbx + 0x38]
mov r8d, 4
mov qword [rax + 0x38], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x44]
mov dword [rax + 0x44], ecx
mov eax, edx
xor eax, dword [rbx + 8]
and eax, 4
xor eax, edx
mov dword [r11 + 8], eax
mov rax, qword [rbx + 0x10]
or dword [r11 + 8], 8
mov qword [r11 + 0x10], rax
or dword [rbx + 8], 8
mov rax, qword [r11 + 0x30]
mov r9, qword [r11 + 0x38]
mov edx, dword [r11 + 0x44]
mov rcx, qword [r11 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180028d20
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x180042e33
imul rax, rax, 0x38
lea rcx, [0x180144af4]
mov dword [rax + r11 + 0x10], r10d
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
mov qword [rax + r11 + 8], rcx
movsxd rdx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x180042e7c
test byte [rbx + 8], 8
jne 0x180042e7c
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x180042e7c
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov qword [rbx + 0x18], r10
mov dword [rbx + 0x20], r10d
call fcn.180030510
mov r14, qword [rsp + 0x48]
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x180042fff
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, r13
call fcn.18003f3c0
mov rbx, rax
test rax, rax
je 0x180041d8d
or dword [rax + 8], 1
movzx ecx, word [r15 + 2]
mov dword [rsp + 0x28], 0x41e
or ecx, 5
lea r9, [rax + 0x10]
mov r8, rsi
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsi]
xor edx, edx
call fcn.1800262f0
mov r15d, eax
test eax, eax
jne 0x180046ba0
mov rcx, qword [rbx + 0x10]
cmp byte [rcx + 0x11], al
jne 0x180042f23
movzx eax, byte [rcx + 0x10]
test al, al
je 0x180042f23
cmp al, 1
je 0x180042f23
mov rax, qword [rcx]
mov edx, dword [rax + 0x308]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
cmp edx, dword [rcx + 0x80]
jle 0x180042f12
cmp byte [rcx + 0xa], r15b
je 0x180042f12
call fcn.18001fae0
mov r14d, 1
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x180042f3b
xor r8d, r8d
mov r15d, r8d
mov dword [rsp + 0x54], r8d
lea r14d, [r8 + 1]
jmp 0x180042f3b
mov r14d, 1
xor r8d, r8d
mov edx, r14d
call fcn.180027600
mov r15d, eax
mov dword [rsp + 0x54], eax
test r15d, r15d
jne 0x180042fd1
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov rdi, qword [rax + 0x10]
mov qword [rbx + 0x38], rdi
test rdi, rdi
je 0x180042fa5
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
or r8d, 2
call fcn.180030230
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180042f9a
mov rax, qword [rbx + 0x30]
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
lea r8d, [r15 + 4]
mov r9, rdi
mov qword [rsp + 0x20], rax
call fcn.180028d20
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rsi, qword [rsp + 0x68]
mov byte [rbx + 4], 0
jmp 0x180042fcc
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov edx, r14d
lea r8d, [r9 + 4]
mov dword [rbx + 0x44], r14d
mov qword [rsp + 0x20], rax
call fcn.180028d20
mov byte [rbx + 4], 1
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rdi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x48]
xor r10d, r10d
cmp word [r14 + 2], 8
mov eax, r10d
setne al
shl eax, 2
xor eax, dword [rbx + 8]
and eax, 4
xor dword [rbx + 8], eax
test r15d, r15d
je 0x18004300b
mov rcx, qword [rbx + 0x10]
call fcn.180026c30
test r15d, r15d
jne 0x180046ba0
xor r10d, r10d
mov byte [rbx + 2], 1
jmp 0x180042b13
mov r15, qword [rsp + 0x48]
mov r9b, 1
mov rcx, r13
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.18003f3c0
test rax, rax
je 0x180041d8d
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov edx, dword [r15 + 0xc]
mov rcx, rsi
call fcn.180048da0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
movsxd rcx, dword [r14 + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
mov edx, 1
test rcx, rcx
je 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, r13
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.18003f3c0
test rax, rax
je 0x180041d8d
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov byte [rax + 2], 1
mov ecx, dword [r14 + 8]
mov byte [rax + 4], 1
mov dword [rax + 0x24], ecx
lea rcx, [0x1801821ec]
mov qword [rax + 0x30], rcx
jmp 0x18003ffcd
movsxd rcx, dword [r14 + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x180043107
mov rcx, r13
call fcn.180037bc0
xor r10d, r10d
movsxd rcx, dword [r14 + 4]
mov rax, qword [r13 + 0x78]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov qword [rax + rcx*8], r10
jmp 0x18003ffdb
movsxd rcx, dword [r14 + 4]
mov rax, qword [r13 + 0x78]
mov r14d, r10d
mov r13, qword [rax + rcx*8]
cmp byte [r13 + 4], 0
mov word [r13 + 2], 0
mov dword [r13 + 0x20], r10d
je 0x18004326a
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 0xc]
imul rdi, rdi, 0x38
add rdi, r11
movzx esi, word [rdi + 0x14]
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x180043175
xor edx, edx
mov rcx, rdi
call fcn.18003f5c0
mov rcx, rdi
call sym.sqlite.dll_sqlite3_value_int64
movzx ecx, word [rdi + 0x14]
mov word [rdi + 0x14], si
mov r12, rax
test cl, 0x24
jne 0x180043230
test cl, 8
jne 0x18004320e
test cl, 1
jne 0x180045f2e
cmp ebx, 0x17
jge 0x180045f2e
mov rcx, qword [r13 + 0x30]
cmp byte [rcx], 0
jne 0x1800431d5
test byte [rcx + 1], 8
je 0x1800431d5
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
xor r10d, r10d
mov dword [rbp - 0x74], r10d
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x180042b13
lea rdx, [rbp - 0x74]
call fcn.180029c10
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f52
xor r10d, r10d
cmp dword [rbp - 0x74], 0
je 0x1800433e9
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov edx, 1
jmp 0x18004678e
movsd xmm1, qword [rdi]
mov rcx, rax
call fcn.180039d10
test eax, eax
jle 0x180043227
test bl, 1
jne 0x180043230
dec ebx
jmp 0x180043230
jns 0x180043230
test bl, 1
je 0x180043230
inc ebx
mov rcx, qword [r13 + 0x30]
lea r9, [rbp - 0x74]
xor r8d, r8d
mov rdx, r12
call fcn.180029c70
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov qword [r13 + 0x50], r12
test eax, eax
jne 0x180046f85
mov r12, qword [rsp + 0x78]
jmp 0x1800432f3
mov rax, qword [r13 + 0x30]
mov rcx, qword [rsp + 0x48]
lea r8, [rbp - 0x74]
test byte [rax + 3], 2
mov rax, qword [r13 + 0x38]
mov byte [rbp + 0x1aa], 0
mov qword [rbp + 0x188], rax
movzx eax, word [rcx + 0x10]
cmovne r14d, edx
mov word [rbp + 0x1a4], ax
lea eax, [rbx - 1]
test al, 1
mov eax, edx
mov edx, 0xffffffff
cmovne eax, edx
lea rdx, [rbp + 0x188]
mov byte [rbp + 0x1a6], al
movsxd rax, dword [rcx + 0xc]
imul rax, rax, 0x38
add rax, r11
mov qword [rbp + 0x190], rax
mov rcx, qword [r13 + 0x30]
call fcn.180029fc0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f85
test r14d, r14d
je 0x1800432f3
cmp byte [rbp + 0x1aa], al
je 0x1800431ed
mov eax, dword [rbp - 0x74]
cmp ebx, 0x17
jl 0x18004336c
test eax, eax
js 0x180043312
jne 0x180043306
cmp ebx, 0x18
je 0x180043312
xor r10d, r10d
mov dword [rbp - 0x74], r10d
jmp 0x1800433e9
mov rcx, qword [r13 + 0x30]
xor r8d, r8d
and byte [rcx + 1], 0xf9
mov dword [rbp - 0x74], r8d
mov word [rcx + 0x46], r8w
cmp byte [rcx], r8b
je 0x180043332
call fcn.18002a580
jmp 0x180043337
call fcn.18002a730
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800433e6
cmp eax, 0x65
jne 0x180046f85
xor r10d, r10d
mov edx, 1
mov r15d, r10d
mov dword [rsp + 0x54], r10d
mov dword [rbp - 0x74], edx
mov r14, qword [rsp + 0x48]
jmp 0x18004678e
test eax, eax
jg 0x18004338e
jne 0x180043377
cmp ebx, 0x15
je 0x18004338e
mov rax, qword [r13 + 0x30]
xor r10d, r10d
mov ecx, r10d
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x74], ecx
jmp 0x1800431f0
mov rcx, qword [r13 + 0x30]
xor r10d, r10d
and byte [rcx + 1], 0xf1
mov dword [rbp - 0x74], r10d
mov word [rcx + 0x46], r10w
cmp byte [rcx], r10b
jne 0x1800433ce
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x1800433ce
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], r10b
je 0x1800433ce
dec dx
mov r15d, r10d
mov dword [rsp + 0x54], r10d
mov word [rcx + 0x56], dx
jmp 0x1800433e9
call fcn.18002a760
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
je 0x1800433e6
cmp eax, 0x65
jmp 0x180043349
xor r10d, r10d
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
test r14d, r14d
je 0x180043409
add qword [rsp + 0x48], 0x18
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x30]
cmp byte [rax], 0
jne 0x180040673
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdi + 0x38]
mov byte [rbp + 0x256], 0
mov ebx, dword [rcx + 4]
mov qword [rbp + 0x238], rax
movzx eax, word [rcx + 0x28]
mov word [rbp + 0x254], ax
movsxd rax, dword [rcx + 0x24]
mov dword [rbp - 0x3c], r10d
mov r14, rcx
imul rax, rax, 0x38
add rax, r11
mov qword [rbp + 0x240], rax
nop word [rax + rax]
lea r9, [rbp - 0x3c]
lea r8, [rbp + 0x238]
mov rdx, rdi
mov rcx, rsi
call fcn.18003ad70
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1800469f8
mov eax, dword [rbp - 0x3c]
test eax, eax
jle 0x1800434b5
cmp word [r14 + 2], r15w
je 0x18004350d
test eax, eax
jns 0x1800417ab
test ebx, ebx
jle 0x1800464c3
mov rcx, qword [rdi + 0x30]
xor eax, eax
dec ebx
mov dword [rdi + 0x20], eax
and byte [rcx + 1], 0xf9
mov word [rcx + 0x46], ax
cmp byte [rcx], al
je 0x1800434e1
call fcn.18002a580
jmp 0x1800434e6
call fcn.18002a730
mov r15d, eax
test eax, eax
je 0x180043480
cmp eax, 0x65
jne 0x1800469f8
xor r10d, r10d
lea edx, [rax - 0x64]
add r14, 0x18
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x18004678e
xor r10d, r10d
add r14, 0x18
mov edx, 1
jmp 0x18004678e
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
movzx eax, word [rdx + 0xc]
cmp eax, dword [r14 + 8]
jge 0x18004354e
mov rax, r14
movzx eax, word [rax + 8]
mov word [rdx + 0xc], ax
jmp 0x18003ffdb
cmp eax, dword [r14 + 0xc]
jle 0x18003ffdb
mov rax, r14
movzx eax, word [rax + 0xc]
mov word [rdx + 0xc], ax
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x18003fe04.9
cmp byte [rdx + 2], 0
je 0x1800405e8
jmp case.0x18003fe04.9
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r14 + 0x10]
jge case.0x18003fe04.89
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rsi, qword [rax + rcx*8]
movzx eax, word [r15 + 0x10]
movsxd rcx, dword [r15 + 0xc]
imul rcx, rcx, 0x38
add rcx, r11
mov word [rbp + 0x114], ax
mov qword [rbp + 0x100], rcx
test ax, ax
je 0x18004361b
mov rax, qword [rsi + 0x38]
mov byte [rbp + 0x116], 0
lea rdi, [rsi + 0x24]
mov qword [rbp + 0xf8], rax
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp + 0xf8]
mov r8, rdi
call fcn.180029fc0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x18004368d
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x180043633
call fcn.1800336f0
test eax, eax
jne 0x180046f2b
mov rcx, qword [rsi + 0x38]
call fcn.1800397b0
mov rbx, rax
test rax, rax
je 0x180046f2b
mov rcx, qword [rbp + 0x100]
mov r9, rax
mov r8, qword [rcx + 8]
mov edx, dword [rcx + 0x10]
mov rcx, qword [rsi + 0x38]
call fcn.180039820
mov byte [rbx + 0x1e], 0
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x24]
mov rdx, rbx
mov r8, rdi
call fcn.180029fc0
mov rcx, qword [rsp + 0x68]
mov rdx, rbx
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18000c050
test r15d, r15d
jne 0x180046b96
mov r14, qword [rsp + 0x48]
xor r10d, r10d
mov edx, 1
mov ecx, r10d
mov eax, edx
mov byte [rsi + 3], r10b
cmp dword [rdi], ecx
mov dword [rsi + 0x20], r10d
sete cl
sub al, cl
mov byte [rsi + 2], al
movzx r8d, byte [r14]
cmp r8b, 0x1d
jne 0x1800436d6
test ecx, ecx
jne 0x18004678e
mov rsi, qword [rsp + 0x68]
jmp 0x1800402fa
test ecx, ecx
je 0x18004678e
cmp r8b, 0x1b
jne 0x180043718
movzx edx, word [rbp + 0x114]
mov ecx, r10d
test edx, edx
jle 0x180043713
mov rax, qword [rbp + 0x100]
add rax, 0x14
nop dword [rax]
test byte [rax], 1
jne 0x180043514
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x180043700
mov edx, 1
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
cmp r8b, 0x1a
mov r8d, dword [rsp + 0x50]
jne 0x1800464f2
movzx eax, word [r14 + 0x10]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov word [rsi + 0xc], ax
mov rsi, qword [rsp + 0x68]
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rcx, rcx, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne 0x180043808
mov rax, qword [rcx]
mov rdx, qword [rcx + 0x10]
mov qword [rbp + 0x120], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x130], rdx
mov qword [rbp + 0x128], rax
mov rax, qword [rcx + 0x18]
shr rdx, 0x20
mov qword [rbp + 0x138], rax
mov rax, qword [rcx + 0x20]
mov qword [rbp + 0x140], rax
mov rax, qword [rcx + 0x28]
mov qword [rbp + 0x148], rax
mov rax, qword [rcx + 0x30]
mov qword [rbp + 0x150], rax
test dl, 4
jne 0x1800437ed
test dl, 0x28
jne 0x1800437e1
test dl, 2
je 0x1800437ed
lea rcx, [rbp + 0x120]
mov edx, 1
call fcn.18003f5c0
xor r10d, r10d
jmp 0x1800437ed
lea rcx, [rbp + 0x120]
call fcn.180033bd0
test byte [rbp + 0x134], 4
je 0x180045a9a
mov rdi, qword [rbp + 0x120]
jmp 0x180043814
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
mov rdi, qword [rax + r11]
mov rax, qword [rsp + 0x48]
lea r9, [rbp - 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, rdi
mov rbx, qword [rax + rcx*8]
mov dword [rbp - 0x38], r10d
mov rcx, qword [rbx + 0x30]
call fcn.180029c70
mov r14, qword [rsp + 0x48]
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0x38]
mov qword [rbx + 0x50], rdi
mov dword [rbx + 0x20], r10d
mov word [rbx + 2], r10w
mov dword [rbx + 0x24], eax
test eax, eax
je 0x180043880
cmp dword [r14 + 8], r10d
jne 0x180043514
mov ecx, 0x17bb5
call fcn.1800c77c0
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
test r15d, r15d
jne 0x180046b9b
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
jmp 0x18003ffdb
mov rbx, qword [rsp + 0x48]
mov rcx, r13
mov rdx, rbx
call fcn.18003f840
mov rcx, qword [r13 + 0x78]
movsxd rdx, dword [rbx + 4]
mov rdx, qword [rcx + rdx*8]
mov r11, qword [rsp + 0x58]
mov r14, rbx
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [rbx + 4]
mov rax, rbx
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x18003ffcd
mov rsi, qword [rsp + 0x48]
mov rbx, r10
mov rcx, r13
mov rdx, rsi
mov qword [rbp - 0x68], rbx
mov dword [rbp - 0x78], r10d
call fcn.18003f840
movsxd rdx, dword [rsi + 4]
mov rcx, qword [r13 + 0x78]
mov rsi, qword [rcx + rdx*8]
mov r12, rax
test byte [rsi + 8], 2
jne 0x180043980
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x180043958
test byte [rcx + 1], 8
je 0x180043958
xor r8d, r8d
mov dword [rbp - 0x78], r8d
mov r15d, r8d
mov dword [rsp + 0x54], r8d
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.180028ec0
mov rbx, qword [rbx + 0x30]
movabs r14, 0x7fffffffffffffff
mov qword [rbp - 0x68], rbx
cmp rbx, r14
jl 0x1800439c9
or dword [rsi + 8], 2
jmp 0x18004398a
lea rdx, [rbp - 0x78]
call fcn.180029c10
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1800426b5
cmp dword [rbp - 0x78], eax
je 0x18004392f
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x68], rax
movabs r14, 0x7fffffffffffffff
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x180043a0d
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x1800439d2
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800439bc
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800439b0
mov rdi, rdx
imul rdi, rdi, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x1800439de
inc rbx
mov qword [rbp - 0x68], rbx
jmp 0x18004398a
mov rdi, rdx
imul rdi, rdi, 0x38
add rdi, qword [rsp + 0x58]
mov rcx, rdi
call fcn.180033c60
mov rax, qword [rdi]
cmp rax, r14
je 0x180046b90
test byte [rsi + 8], 2
jne 0x180046b90
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x68], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x180043a89
xor r14d, r14d
mov edi, r14d
nop dword [rax]
lea rdx, [rbp - 0x68]
mov ecx, 8
call sym.sqlite.dll_sqlite3_randomness
mov rbx, qword [rbp - 0x68]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
lea r9, [rbp - 0x78]
xor r8d, r8d
and rbx, rax
inc rbx
mov rdx, rbx
mov qword [rbp - 0x68], rbx
call fcn.180029c70
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180043a75
cmp dword [rbp - 0x78], r14d
jne 0x180043a89
inc edi
cmp edi, 0x64
jl 0x180043a20
lea r15d, [rax + 0xd]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
jmp 0x180046ba8
mov r14, qword [rsp + 0x48]
mov byte [rsi + 3], 0
xor r10d, r10d
mov dword [rsi + 0x20], r10d
mov rsi, qword [rsp + 0x68]
mov qword [r12], rbx
jmp 0x180042b13
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
mov r13, qword [rsp + 0x68]
movsxd rcx, dword [rbx + 4]
movsxd r8, dword [rbx + 8]
mov rsi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
mov rdi, r8
imul rdi, rdi, 0x38
add rdi, r11
imul rax, rax, 0x38
cmp byte [rbx + 1], 0xfb
mov r9, qword [rax + r11]
mov qword [rbp + 0x160], r9
jne 0x180043b73
mov rdx, qword [r13 + 0x170]
test rdx, rdx
jne 0x180043afd
cmp qword [r13 + 0x140], rdx
je 0x180043b73
movsx rcx, byte [rsi + 1]
mov rax, qword [r13 + 0x20]
mov rbx, qword [rbx + 0x10]
shl rcx, 5
mov r12, qword [rcx + rax]
test rbx, rbx
je 0x180043b79
test rdx, rdx
je 0x180043b60
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 4
jne 0x180043b60
mov rcx, qword [rbp - 0x80]
or rax, 0xffffffffffffffff
mov rdx, rsi
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], r8d
mov qword [rsp + 0x28], r9
lea r8d, [rax + 0x13]
mov r9, r12
mov qword [rsp + 0x20], rbx
call fcn.18003b130
mov r9, qword [rbp + 0x160]
mov r11, qword [rsp + 0x58]
xor r10d, r10d
cmp qword [r13 + 0x140], 0
je 0x180043b76
cmp qword [rbx + 8], 0
jne 0x180043b79
jmp 0x180043b76
mov r12, r10
mov rbx, r10
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
test al, 0x40
jne 0x1800467d8
test al, 1
je 0x180043ba5
mov rax, qword [rbp - 0x80]
inc qword [rax + 0x38]
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 0x20
je 0x180043ba5
mov qword [r13 + 0x38], r9
mov rax, qword [rdi + 8]
mov qword [rbp + 0x168], rax
mov eax, dword [rdi + 0x10]
mov dword [rbp + 0x17c], eax
mov rax, qword [rsp + 0x48]
movzx r8d, word [rax + 2]
test r8b, 0x10
je 0x180043bcf
mov r9d, dword [rsi + 0x24]
jmp 0x180043bd2
mov r9d, r10d
mov eax, 0x400
test word [rdi + 0x14], ax
je 0x180043be7
mov eax, dword [rdi]
mov dword [rbp + 0x180], eax
jmp 0x180043bee
mov dword [rbp + 0x180], r10d
mov qword [rbp + 0x158], r10
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp + 0x158]
and r8d, 0x8a
call fcn.18002ef10
inc dword [rbp - 0x60]
xor r10d, r10d
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046f52
mov rsi, qword [rsp + 0x68]
test rbx, rbx
je 0x1800464e3
mov rax, qword [rsp + 0x48]
mov r9, qword [rbx]
mov rcx, qword [rsi + 0x138]
test byte [rax + 2], 4
mov edx, 0x12
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp + 0x160]
mov r8, r12
mov qword [rsp + 0x20], rax
call qword [rsi + 0x140]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r15 + 0xc]
test eax, eax
je 0x180043cab
imul rax, rax, 0x38
mov r8, qword [rax + r11]
jmp 0x180043cae
mov r8, r10
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.18002f490
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
cmp byte [rbx + 1], 0xfb
movsxd rcx, dword [rbx + 4]
mov r12d, dword [rbx + 8]
mov rdi, qword [rax + rcx*8]
jne 0x180043d3f
cmp qword [rsi + 0x170], 0
jne 0x180043d08
cmp qword [rsi + 0x140], 0
je 0x180043d3f
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [rbx + 0x10]
shl rcx, 5
test byte [rbx + 2], 2
mov r13, qword [rcx + rax]
je 0x180043d45
cmp byte [rdi + 4], 0
je 0x180043d45
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.180028ec0
mov r11, qword [rbx + 0x30]
mov qword [rdi + 0x50], r11
jmp 0x180043d45
mov r13, r10
mov rsi, r10
mov rbx, qword [rsp + 0x68]
mov r14, qword [rbp - 0x80]
cmp qword [rbx + 0x170], 0
je 0x180043da0
test rsi, rsi
je 0x180043da0
test r12b, 4
mov eax, 0x17
mov r8d, 9
cmovne r8d, eax
or rax, 0xffffffffffffffff
mov r9, r13
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x48]
mov rdx, rdi
mov eax, dword [rax + 0xc]
mov rcx, r14
mov dword [rsp + 0x30], eax
mov rax, qword [rdi + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
call fcn.18003b130
test r12b, 0x40
jne 0x1800467f7
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x30]
movzx edx, byte [rax + 2]
call fcn.18002f960
inc dword [rbp - 0x60]
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
mov qword [rdi + 0x20], r10
test eax, eax
jne 0x180046f79
test r12b, 1
je 0x1800464e0
inc qword [r14 + 0x38]
mov r10, qword [rbx + 0x140]
test r10, r10
je 0x1800464ed
test rsi, rsi
je 0x1800464ed
test byte [rsi + 0x30], 0x80
jne 0x1800464ed
mov rax, qword [rdi + 0x50]
mov r9, qword [rsi]
mov rcx, qword [rbx + 0x138]
lea edx, [r15 + 9]
mov r8, r13
mov qword [rsp + 0x20], rax
mov rsi, rbx
call r10
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov rax, qword [r13 + 0x38]
mov rdi, qword [rsp + 0x70]
add qword [rsi + 0x80], rax
mov qword [rsi + 0x78], rax
mov qword [r13 + 0x38], r10
mov r13, qword [rbp - 0x80]
add r14, 0x18
jmp 0x18003fdcc
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
lea r9, [rbp - 0x2c]
movsxd rdx, dword [r15 + 0xc]
movsxd rcx, dword [r15 + 4]
mov r8d, dword [r15 + 0x10]
imul rdx, rdx, 0x38
mov rcx, qword [rax + rcx*8]
add rdx, r11
mov dword [rbp - 0x2c], r10d
call fcn.18004baa0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
xor r10d, r10d
cmp dword [rbp - 0x2c], r10d
jmp 0x18004158b
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 8]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
imul rdx, rdx, 0x38
mov rcx, qword [rax + rcx*8]
add rdx, r11
call fcn.18004b9d0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
movzx r9d, byte [rsp + 0x40]
mov rcx, qword [rax + rcx*8]
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
mov dword [rcx + 0x20], r10d
jmp 0x18003ffdb
mov rbx, qword [rsp + 0x48]
mov rcx, r13
mov rdx, rbx
call fcn.18003f840
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r13 + 0x78]
mov rdx, qword [rcx + rdx*8]
mov rdi, rax
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.180028ec0
mov edx, dword [rbx + 0x40]
cmp edx, dword [rsi + 0x88]
ja 0x180046bc9
mov r8, rdi
mov rcx, rbx
call fcn.180034730
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
cmp dword [r14 + 0xc], eax
jne 0x1800464c3
mov eax, 0x4000
test word [rdi + 0x14], ax
je 0x1800464c3
mov rcx, rdi
call fcn.180033690
test eax, eax
jne 0x180041d88
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rbx, qword [rsp + 0x48]
mov rcx, r13
mov rdx, rbx
call fcn.18003f840
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r13 + 0x78]
mov rbx, qword [rcx + rdx*8]
mov rdi, rax
cmp byte [rbx + 2], 0
je 0x180043fed
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
mov edx, 1
xor r10d, r10d
add r14, 0x18
mov word [rax + 0x14], dx
jmp 0x18003fdcc
cmp byte [rbx + 3], 0
je 0x18004400d
mov rax, qword [rbx + 0x50]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x18], rax
mov qword [rdi], rax
jmp 0x18003ffcd
cmp byte [rbx], 2
jne 0x180044054
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp - 0x18]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18003afd0
test r15d, r15d
jne 0x180046b9b
mov rax, qword [rbp - 0x18]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x18003ffcd
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x180044079
mov rcx, rbx
call fcn.180039530
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046b9b
xor r10d, r10d
jmp 0x180044084
xor r10d, r10d
mov r15d, r10d
mov dword [rsp + 0x54], r10d
cmp byte [rbx + 2], 0
je 0x180044098
mov edx, 1
mov word [rdi + 0x14], dx
jmp 0x1800402f5
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.180028ec0
mov rax, qword [rbx + 0x30]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x18], rax
mov qword [rdi], rax
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x180044106
lea r8d, [rax + 1]
mov r9b, 3
mov rcx, r13
call fcn.18003f3c0
test rax, rax
je 0x180041d8d
xor r10d, r10d
or dword [rax + 8], 8
lea rcx, [0x1801821ec]
mov dword [rax + 0x24], r10d
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], r10d
jne 0x1800464e3
mov rcx, qword [rax + 0x30]
call fcn.180024600
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov dword [rbp - 0x34], r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x18004415d
or rax, 0xffffffffffffffff
mov dword [rdi + 0x24], eax
cmp byte [rcx], 0
je 0x180043409
cmp byte [rcx], 0
jne 0x180044175
test byte [rcx + 1], 8
je 0x180044175
mov eax, r10d
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x18004418f
lea rdx, [rbp - 0x34]
call fcn.180029c10
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0x34]
lea edx, [r10 + 1]
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r10d
test r15d, r15d
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
cmp dword [r14 + 8], r15d
jle 0x180042b13
test eax, eax
jne 0x18004678e
jmp 0x1800402fa
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.1800296a0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180044202
xor r8d, r8d
mov rcx, rbx
mov r14d, r8d
mov dword [rbp - 0x40], r8d
call fcn.1800298a0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x180044223
cmp eax, 0x10
jne 0x18004421f
mov edx, 1
xor r10d, r10d
mov r14d, edx
mov dword [rbp - 0x40], edx
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x18004422b
mov r14d, dword [rbp - 0x40]
mov edx, 1
xor r10d, r10d
test r15d, r15d
jne 0x180046ba0
test r14d, r14d
jne 0x180043362
mov rcx, rbx
call fcn.18002a520
test rax, rax
js 0x1800464be
mov rcx, rax
call fcn.180011b70
mov r14, qword [rsp + 0x48]
xor r10d, r10d
movsx ecx, ax
cmp ecx, dword [r14 + 0xc]
jge 0x180042b13
mov edx, 1
mov dword [rbp - 0x40], edx
jmp 0x18004678e
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x48]
mov ebx, edx
mov dword [rbp - 0x30], edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi], 1
jne 0x1800442b5
lea rdx, [rbp - 0x30]
mov rcx, rdi
call fcn.18004b890
mov ebx, dword [rbp - 0x30]
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x1800442f1
mov rsi, qword [rdi + 0x30]
mov rcx, rsi
call fcn.1800296a0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004431d
xor r8d, r8d
mov rcx, rsi
mov ebx, r8d
call fcn.1800298a0
mov r15d, eax
mov dword [rsp + 0x54], eax
xor r10d, r10d
mov rsi, qword [rsp + 0x68]
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r10d
test r15d, r15d
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov byte [rdi + 2], bl
cmp dword [r14 + 8], r15d
jle 0x180042b13
lea edx, [r15 + 1]
test ebx, ebx
jne 0x18004678e
jmp 0x1800402fa
cmp eax, 0x10
jne 0x1800442e1
xor r10d, r10d
lea ebx, [rax - 0xf]
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x1800442e4
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, rsi
mov rdx, rbx
call fcn.18004b920
jmp 0x1800443b0
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
and byte [rcx + 1], 0xf1
cmp byte [rcx], 0
mov word [rcx + 0x46], r10w
jne 0x18004437a
call fcn.18002a870
jmp 0x1800443b0
call fcn.18002a760
jmp 0x1800443b0
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
and byte [rcx + 1], 0xf9
cmp byte [rcx], 0
mov word [rcx + 0x46], r10w
je 0x1800443ab
call fcn.18002a580
jmp 0x1800443b0
call fcn.18002a730
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
mov dword [rbx + 0x20], r10d
test eax, eax
jne 0x1800443dc
mov rax, qword [rsp + 0x48]
mov byte [rbx + 2], r10b
movzx eax, word [rax + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp case.0x18003fe04.9
cmp r15d, 0x65
jne 0x180046ba0
mov r15d, r10d
mov dword [rsp + 0x54], r10d
mov byte [rbx + 2], 1
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov eax, dword [rsi + 0x1b0]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
test eax, eax
jne 0x180046d06
cmp rdi, rbx
jb 0x1800464ce
nop word [rax + rax]
mov rdx, qword [rsi + 0x228]
test rdx, rdx
je 0x1800464c3
mov eax, dword [rsi + 0x238]
mov rcx, qword [rsi + 0x230]
add rbx, rax
mov qword [rsp + 0x60], rbx
call rdx
test eax, eax
jne 0x180046d02
cmp rdi, rbx
jae 0x180044430
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rbx, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
mov rdi, qword [rax + rcx*8]
imul rbx, rbx, 0x38
add rbx, r11
test byte [r15 + 2], 1
je 0x180044495
inc qword [r13 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x1800444c0
mov rcx, rbx
call fcn.1800336f0
mov r15d, eax
test eax, eax
jne 0x180046b9b
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
xor r10d, r10d
movsxd rax, dword [rbx + 0x10]
movzx r8d, word [r15 + 2]
mov qword [rbp + 0x268], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x260], rax
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
add rax, r11
mov qword [rbp + 0x278], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x280], ax
test r8b, 0x10
je 0x180044505
mov r9d, dword [rdi + 0x24]
jmp 0x180044508
mov r9d, r10d
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x260]
and r8d, 0x8a
call fcn.18002ef10
xor r10d, r10d
mov r15d, eax
mov dword [rsp + 0x54], eax
mov dword [rdi + 0x20], r10d
test eax, eax
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
jmp 0x18003ffdb
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
movsxd rbx, dword [rbx + 8]
mov rdi, qword [rax + rcx*8]
mov eax, 0x400
imul rbx, rbx, 0x38
add rbx, r11
test word [rbx + 0x14], ax
je 0x180044589
mov rcx, rbx
call fcn.1800336f0
mov r15d, eax
test eax, eax
jne 0x180046b9b
mov rdx, rbx
mov rcx, rdi
call fcn.18004a3d0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
lea r8, [rbp - 0x10]
movsxd rcx, dword [r15 + 4]
lea rdx, [rbp + 0x210]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x38]
mov rbx, qword [rdi + 0x30]
mov byte [rbp + 0x22e], 0
mov qword [rbp + 0x210], rax
movzx eax, word [r15 + 0xc]
mov rcx, rbx
mov word [rbp + 0x22c], ax
movsxd rax, dword [r15 + 8]
imul rax, rax, 0x38
add rax, r11
mov qword [rbp + 0x218], rax
call fcn.180029fc0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046b9b
cmp dword [rbp - 0x10], eax
jne 0x180044658
mov dl, 4
mov rcx, rbx
call fcn.18002f960
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
mov qword [rdi + 0x20], r10
jmp 0x18003ffdb
mov r14, qword [rsp + 0x48]
cmp word [r14 + 2], 0
je 0x180044677
mov eax, dword [rsi + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x180046be0
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
mov qword [rdi + 0x20], r10
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1800446cc
mov rcx, rbx
call fcn.180039530
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
xor r10d, r10d
lea edx, [rax + 1]
jmp 0x1800446d4
mov r15d, r10d
mov dword [rsp + 0x54], r10d
cmp byte [rbx + 2], 0
jne 0x180044778
mov rdx, qword [rbx + 0x30]
lea r8, [rbp - 0x58]
mov rcx, rsi
mov qword [rbp - 0x58], r10
call fcn.18003ab50
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x180044757
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov r14, qword [rsp + 0x48]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x58]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
xor r10d, r10d
mov word [rdx + 2], 0x100
mov dword [rdx + 0x20], r10d
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x28], rbx
mov qword [rdx + 0x10], rax
jmp 0x18003ffdb
mov rdx, rax
mov rcx, r13
call fcn.18003f840
mov rcx, qword [rbp - 0x58]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rax], rcx
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, r11
test word [rax + 0x14], cx
je 0x1800447af
mov rcx, rax
call fcn.180033a00
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r14, qword [rsp + 0x48]
mov word [rax + 0x14], dx
jmp 0x1800402ff
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x180040673
call fcn.1800394c0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
cmp bl, 0x2a
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x1e8], rax
movzx eax, word [r15 + 0x10]
mov rcx, rbx
mov word [rbp + 0x204], ax
sbb al, al
mov byte [rbp + 0x206], al
movsxd rax, dword [r15 + 0xc]
imul rax, rax, 0x38
add rax, r11
mov qword [rbp + 0x1f0], rax
call fcn.180028ec0
mov r11d, dword [rbx + 0x40]
test r11, r11
jle 0x180046c18
cmp r11, 0x7fffffff
jg 0x180046c18
xor r14d, r14d
lea r8, [rbp + 0x1b0]
mov edx, r11d
mov rcx, rbx
mov qword [rbp + 0x1c8], rsi
mov word [rbp + 0x1c4], r14w
mov dword [rbp + 0x1d0], r14d
call fcn.180034730
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046c3b
mov rdx, qword [rbp + 0x1b8]
mov ecx, dword [rbp + 0x1c0]
lea r8, [rbp + 0x1e8]
xor r9d, r9d
call fcn.180039fa0
mov ebx, eax
cmp dword [rbp + 0x1d0], r14d
je 0x1800448d3
lea rcx, [rbp + 0x1b0]
call fcn.180033a40
mov r14, qword [rsp + 0x48]
test byte [r14], 1
jne 0x1800448e2
neg ebx
jmp 0x1800448e4
inc ebx
xor r10d, r10d
lea edx, [r10 + 1]
test ebx, ebx
jg 0x18004678e
jmp 0x1800402fa
mov r15, qword [rsp + 0x48]
mov rcx, r13
mov rdx, r15
call fcn.18003f840
xor r14d, r14d
mov rsi, rax
mov eax, 1
mov word [rsi + 0x14], ax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rax + 0xe8]
inc ecx
cmp dword [rax + 0xdc], ecx
jg 0x180046c2a
movsxd r12, dword [r15 + 0xc]
mov rax, qword [rax + 0x20]
mov edi, dword [r15 + 4]
mov rcx, r12
mov dword [rbp - 0x28], r14d
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], r14b
je 0x180044963
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r14b
jne 0x180044963
mov rcx, rbx
call fcn.180023f00
lea r8, [rbp - 0x28]
mov edx, edi
mov rcx, rbx
call fcn.1800305f0
mov r15d, eax
mov dword [rsp + 0x54], eax
cmp byte [rbx + 0x11], r14b
je 0x18004498b
dec dword [rbx + 0x14]
jne 0x18004498b
mov rcx, rbx
call fcn.180023ed0
movsxd r8, dword [rbp - 0x28]
mov eax, 4
mov qword [rsi], r8
mov word [rsi + 0x14], ax
test r15d, r15d
jne 0x180043a75
mov rsi, qword [rsp + 0x68]
test r8d, r8d
je 0x1800464be
mov rax, qword [rsp + 0x48]
mov edx, r12d
mov rcx, rsi
mov r9d, dword [rax + 4]
call fcn.18006a480
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
lea eax, [r12 + 1]
mov r12, qword [rsp + 0x78]
mov byte [rbp - 0x70], al
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x20]
mov qword [rbp + 0x20], r10
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
lea r8, [rbp + 0x20]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.180030510
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
cmp dword [r14 + 0xc], 0
mov r15d, eax
mov dword [rsp + 0x54], eax
je 0x180044a39
mov rcx, qword [rbp + 0x20]
add qword [r13 + 0x38], rcx
movsxd rax, dword [r14 + 0xc]
test eax, eax
jle 0x180044a39
imul rax, rax, 0x38
add qword [rax + r11], rcx
test r15d, r15d
jne 0x180042bf3
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x180044a78
mov rdx, qword [rcx + 0x30]
mov rcx, rsi
call fcn.180049540
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.180030510
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rcx, r13
mov rdx, r15
call fcn.18003f840
movsxd rcx, dword [r15 + 4]
mov r8d, dword [r15 + 0xc]
shl rcx, 5
lea rdx, [rbp - 0x48]
xor r14d, r14d
add rcx, qword [rsi + 0x20]
mov rbx, rax
mov dword [rbp - 0x48], r14d
mov rcx, qword [rcx + 8]
call fcn.180030230
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046c3b
mov eax, dword [rbp - 0x48]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rbx], rax
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
inc byte [rsi + 0x70]
xor r9d, r9d
mov rdx, qword [rax + 0x10]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r10
call sym.sqlite.dll_sqlite3_exec
dec byte [rsi + 0x70]
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov r9, qword [r15 + 0x10]
movsxd rbx, dword [r15 + 4]
test r9, r9
jne 0x180044b9d
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.18006ff90
and dword [rsi + 0x2c], 0xffffffef
movzx r9d, word [r15 + 2]
lea r8, [r13 + 0xa8]
mov edx, ebx
mov rcx, rsi
call fcn.1800873a0
or dword [rsi + 0x2c], 1
and dword [r13 + 0xc8], 0xfffffffc
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x180044c85
mov r8, qword [rsi + 0x20]
mov qword [rbp + 0x98], rsi
mov dword [rbp + 0xa8], ebx
mov dword [rbp + 0xb0], r10d
lea rax, [r13 + 0xa8]
mov qword [rsp + 0x20], r9
mov qword [rbp + 0xa0], rax
mov rdx, rbx
lea r9, str.sqlite_master
shl rdx, 5
mov rax, qword [rdx + r8 + 8]
mov rcx, qword [rax + 8]
mov eax, dword [rcx + 0x40]
mov rcx, rsi
mov dword [rbp + 0xb8], eax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.18000e980
mov rbx, rax
test rax, rax
je 0x180046c45
xor r8d, r8d
lea r9, [rbp + 0x98]
mov rdx, rax
mov dword [rbp + 0xac], r8d
mov dword [rbp + 0xb4], r8d
mov qword [rsp + 0x20], r8
lea r8, [fcn.180087130]
mov rcx, rsi
mov byte [rsi + 0xc5], 1
call sym.sqlite.dll_sqlite3_exec
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180044c73
mov r15d, dword [rbp + 0xac]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x180044c73
cmp dword [rbp + 0xb4], r15d
jne 0x180044c73
mov ecx, 0x181b3
call fcn.1800c77c0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rdx, rbx
mov rcx, rsi
call fcn.18000c050
mov byte [rsi + 0xc5], 0
test r15d, r15d
jne 0x180046c4b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.180062d90
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180066330
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180065540
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18009a410
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov r15, qword [rsp + 0x48]
mov rdx, qword [rsi + 0x20]
lea r9, [rbp + 0x10]
movsxd rdi, dword [r15 + 0xc]
movzx eax, word [r15 + 2]
movsxd rbx, dword [r15 + 4]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
mov r8, qword [r15 + 0x10]
mov qword [rsp + 0x30], r9
lea r9, [rbp + 4]
mov qword [rsp + 0x28], r9
mov r9d, dword [r15 + 8]
add rdi, r11
mov ecx, dword [rdi]
shl rax, 5
add r8, 4
mov rdx, qword [rax + rdx + 8]
inc ecx
add rbx, r11
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call fcn.180031890
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x180044dab
mov rcx, rbx
call fcn.180033a00
jmp 0x180044db4
mov eax, 1
mov word [rbx + 0x14], ax
mov eax, dword [rbp + 4]
test eax, eax
je 0x180044deb
test r15d, r15d
jne 0x180046c6f
mov rdx, qword [rbp + 0x10]
dec eax
mov r9b, 1
movsxd rcx, eax
lea rax, [sym.sqlite.dll_sqlite3_free]
or r8, 0xffffffffffffffff
sub qword [rdi], rcx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.180034380
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
mov ecx, r9d
jne 0x180044e02
mov byte [rbx + 0x16], cl
jmp 0x1800443f8
movzx eax, byte [rbx + 0x16]
cmp eax, ecx
je 0x1800443f8
movzx edx, cl
mov rcx, rbx
call fcn.18000f3c0
jmp 0x1800443f2
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
movsxd rdi, dword [rax + 8]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x180044e4f
mov rcx, rbx
call fcn.180034160
test eax, eax
jne 0x180041d88
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.180019ef0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 4]
imul rdi, rdi, 0x38
add rdi, r11
test byte [rdi + 0x14], 0x10
je 0x180044f1d
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x180044eb0
test al, 1
jne 0x180044eab
mov rcx, qword [rbx + 0x10]
call fcn.180019f60
mov r11, qword [rsp + 0x58]
mov edx, 1
mov qword [rbx + 0x10], rax
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x180044f1d
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x180044ed6
mov rcx, rbx
call fcn.180019ce0
mov r11, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
add rax, r11
test word [rax + 0x14], cx
je 0x180044f01
mov rdx, rdi
mov rcx, rax
call fcn.180034010
jmp 0x1800443f2
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov ecx, 4
mov word [rax + 0x14], cx
mov qword [rax], rdi
jmp 0x180044402
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x180044f35
mov rcx, rdi
call fcn.180033a00
jmp case.0x18003fe04.9
mov word [rdi + 0x14], dx
jmp case.0x18003fe04.9
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
movsxd rdi, dword [rax + 0xc]
mov esi, dword [rax + 0x10]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x180044f72
mov rcx, rbx
call fcn.180034160
test eax, eax
jne 0x180041d83
test esi, esi
je 0x180044f8e
mov r8, qword [rdi]
mov rcx, qword [rbx + 8]
mov edx, esi
call fcn.18001a270
test eax, eax
jne 0x180045f42
test esi, esi
js 0x1800404d2
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.180019ef0
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov r14, qword [rbp - 0x80]
movsxd r12, dword [rax + 0xc]
mov r13, qword [rax + 0x10]
imul r12, r12, 0x38
add r12, r11
cmp word [rax + 2], 0
je 0x180044ff6
mov rax, qword [r14 + 0x108]
mov rcx, qword [r13 + 0x20]
test rax, rax
je 0x180044ff6
cmp qword [rax + 0x30], rcx
je 0x18004681f
mov rax, qword [rax + 8]
test rax, rax
jne 0x180044fe3
mov eax, dword [rsi + 0xb0]
cmp dword [r14 + 0x118], eax
jge 0x180046c7d
test byte [r12 + 0x14], 0x10
jne 0x180045144
mov ecx, dword [r13 + 0x10]
mov eax, dword [r13 + 0xc]
lea ebx, [rcx + rax]
test ecx, ecx
jne 0x180045026
inc ebx
mov eax, dword [r13 + 8]
lea ecx, [rbx + 2]
add eax, 7
cdq
imul ecx, ecx, 7
add ecx, dword [r13 + 0x10]
and edx, 7
add eax, edx
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, rsi
movsxd rdx, edi
call fcn.18000c400
mov rsi, rax
test rax, rax
je 0x180046f1d
mov eax, 0x9000
test word [r12 + 0x14], ax
jne 0x18004506f
cmp dword [r12 + 0x20], 0
je 0x180045077
mov rcx, r12
call fcn.180033a40
mov rcx, qword [rsp + 0x48]
mov qword [r12 + 8], rsi
mov dword [r12 + 0x10], edi
sub rcx, qword [rsp + 0x78]
mov eax, 0x1010
xor r10d, r10d
mov word [r12 + 0x14], ax
lea rax, [0x180037020]
mov qword [r12 + 0x30], rax
mov qword [rsi], r14
mov dword [rsi + 0x58], ebx
mov eax, dword [r13 + 0x10]
mov dword [rsi + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
movsxd rcx, ebx
sar rdx, 2
add rcx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x4c], edx
mov rax, qword [r14 + 0x68]
imul rcx, rcx, 0x38
mov qword [rsi + 0x18], rax
mov eax, dword [r14 + 0x24]
add rcx, rsi
mov dword [rsi + 0x54], eax
mov rax, qword [r14 + 0x78]
mov qword [rsi + 0x20], rax
mov eax, dword [r14 + 0x28]
mov dword [rsi + 0x48], eax
mov rax, qword [r14 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r14 + 0x90]
mov dword [rsi + 0x50], eax
mov rax, qword [r13 + 0x20]
mov qword [rsi + 0x30], rax
lea rax, [rsi + 0x70]
cmp rax, rcx
je 0x180045149
mov r8, qword [rsp + 0x68]
nop word [rax + rax]
mov word [rax + 0x14], r10w
mov qword [rax + 0x18], r8
add rax, 0x38
cmp rax, rcx
jne 0x180045130
jmp 0x180045149
mov rsi, qword [r12 + 8]
inc dword [r14 + 0x118]
mov rax, qword [r14 + 0x108]
lea rdx, [rsi + 0x70]
mov qword [rsi + 8], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x58], rdx
mov rax, qword [rax + 0x38]
mov qword [rsi + 0x38], rax
mov rax, qword [r14 + 0x38]
mov qword [rsi + 0x60], rax
mov rax, qword [r14]
mov rcx, qword [rax + 0x78]
mov qword [rsi + 0x68], rcx
mov rax, qword [r14 + 0x128]
mov qword [rsi + 0x40], rax
mov qword [r14 + 0x68], rdx
mov qword [r14 + 0x128], r10
mov qword [r14 + 0x38], r10
mov qword [r14 + 0x108], rsi
movsxd rcx, dword [rsi + 0x58]
mov dword [r14 + 0x24], ecx
movzx eax, word [rsi + 0x5c]
mov dword [r14 + 0x28], eax
imul rcx, rcx, 0x38
add rcx, rdx
mov qword [r14 + 0x78], rcx
movsxd rax, dword [r13 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rsi + 0x28], rcx
mov eax, dword [r13 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.18012e4b0
mov r12, qword [r13]
mov rsi, qword [rsp + 0x68]
movzx r9d, byte [rsp + 0x40]
mov qword [r14 + 0x88], r12
mov eax, dword [r13 + 8]
mov r13, qword [rbp - 0x80]
mov qword [rsp + 0x78], r12
mov dword [r13 + 0x90], eax
lea rax, [r12 - 0x18]
mov qword [rsp + 0x48], rax
mov r14, rax
jmp 0x1800443fd
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.18003f840
mov r9, qword [r13 + 0x108]
mov r14, qword [rsp + 0x48]
movsxd rcx, dword [r9 + 0x4c]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
mov rcx, rax
add r8d, dword [r14 + 4]
movsxd rdx, r8d
mov r8d, 0x4000
imul rdx, rdx, 0x38
add rdx, qword [r9 + 0x18]
call fcn.180034210
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r14, rax
jae 0x1800452a2
movsxd rax, dword [rax + 8]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add qword [rsi + 0x318], rax
add r14, 0x18
jmp 0x18003fdcc
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x1800452c5
add qword [rsi + 0x310], rax
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
add qword [r13 + 0x50], rax
mov rdi, qword [rsp + 0x70]
mov r13, qword [rbp - 0x80]
add r14, 0x18
jmp 0x18003fdcc
cmp dword [r14 + 4], 0
je 0x180045310
cmp qword [rsi + 0x310], 0
jne case.0x18003fe04.89
cmp qword [rsi + 0x318], 0
je 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
cmp qword [r13 + 0x50], 0
jne case.0x18003fe04.89
cmp qword [rsi + 0x318], 0
je 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x18004536f
mov rax, qword [rcx + 8]
test rax, rax
je 0x18004535c
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180045350
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 4]
imul rdi, rdi, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x18004537f
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 4]
imul rdi, rdi, 0x38
add rdi, r11
mov rcx, rdi
call fcn.180033c60
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 8]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.180033c60
mov r11, qword [rbx]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
cmp qword [rdi], r11
jge 0x180046537
mov qword [rdi], r11
mov r11, qword [rsp + 0x58]
jmp 0x18003ffdb
movsxd rcx, dword [r14 + 4]
imul rcx, rcx, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x18003ffdb
movsxd rax, dword [r14 + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
mov edx, 1
jmp 0x18004678e
mov rax, qword [rsp + 0x48]
mov rcx, r13
movsxd rbx, dword [rax + 4]
movsxd rdi, dword [rax + 0xc]
mov rdx, rax
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, r11
add rdi, r11
call fcn.18003f840
mov rcx, qword [rbx]
xor r10d, r10d
mov r11, rax
mov qword [rbp + 8], rcx
test rcx, rcx
jle 0x18004546a
mov rcx, qword [rdi]
mov edx, r10d
test rcx, rcx
cmovg rdx, rcx
lea rcx, [rbp + 8]
call fcn.180011aa0
test eax, eax
jne 0x18004546a
mov rax, qword [rbp + 8]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov qword [r11], rax
mov r11, qword [rsp + 0x58]
jmp 0x18003ffdb
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
or rax, 0xffffffffffffffff
mov qword [r11], rax
mov r11, qword [rsp + 0x58]
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
imul rcx, rcx, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x180040673
mov r14, qword [rsp + 0x48]
jle 0x18004678e
dec rax
mov qword [rcx + r11], rax
jmp 0x18004678e
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rcx, dword [rax + 4]
imul rcx, rcx, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x1800454e3
dec rax
mov qword [rcx + r11], rax
cmp qword [rcx + r11], 0
mov r14, qword [rsp + 0x48]
je 0x18004678e
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov rcx, rsi
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.18000c4a0
mov r11, rax
test rax, rax
je 0x180041d88
lea rcx, [rax + rbx*8 + 0x30]
xor r8d, r8d
mov r14d, 1
mov qword [rax], rcx
mov qword [rax + 0x10], r8
mov rax, qword [rsp + 0x48]
mov word [rcx + 0x14], r14w
mov qword [rcx + 0x18], rsi
mov dword [rcx + 0x20], r8d
mov rcx, qword [rax + 0x10]
mov qword [r11 + 0x18], r13
mov byte [r11 + 0x29], r8b
mov qword [r11 + 8], rcx
mov rcx, rax
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r12
mov dword [r11 + 0x24], r8d
mov byte [r11 + 0x2a], bl
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movzx eax, byte [rsp + 0x40]
mov byte [r11 + 0x28], al
mov rax, qword [rsp + 0x48]
mov dword [r11 + 0x20], edx
mov qword [rax + 0x10], r11
mov word [rax], 0xf1a3
jmp 0x1800455b2
mov rax, qword [rsp + 0x48]
mov r14d, 1
movsxd r10, dword [rax + 0xc]
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rax + 0x10]
imul r10, r10, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x180045618
movzx edx, byte [rbx + 0x2a]
mov qword [rbx + 0x10], r10
dec edx
movsxd r8, edx
js 0x180045618
mov rsi, qword [rsp + 0x48]
lea r9, [rbx + r8*8 + 0x30]
nop word [rax + rax]
mov eax, dword [rsi + 8]
sub r9, 8
add eax, edx
dec edx
movsxd rcx, eax
imul rcx, rcx, 0x38
add rcx, rdi
dec r8
mov qword [r9 + 8], rcx
jns 0x1800455f0
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x48]
inc dword [r10 + 0x10]
cmp dword [rax + 4], 0
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
lea r8, [rbx + 0x30]
mov rcx, rbx
je 0x180045636
call qword [rax + 0x30]
jmp 0x180045639
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x180046517
jle 0x180045669
mov rcx, qword [rbx]
call sym.sqlite.dll_sqlite3_value_text
lea rdx, [0x180144b04]
mov rcx, r13
mov r8, rax
call fcn.180035090
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
cmp byte [rbx + 0x29], 0
je 0x1800456ab
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x1800456a7
imul rax, rax, 0x38
mov ecx, 0x9000
add rax, rdi
test word [rax + 0x14], cx
je 0x18004569b
mov rdx, r14
mov rcx, rax
call fcn.180034010
jmp 0x1800456a7
mov ecx, 4
mov qword [rax], r14
mov word [rax + 0x14], cx
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x1800456bf
cmp dword [rcx + 0x20], 0
je 0x1800456c4
call fcn.180033a40
mov rax, qword [rbx]
xor r10d, r10d
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], r10d
test r15d, r15d
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, rdi
jmp 0x1800402ff
mov rcx, qword [rsp + 0x48]
movsxd rbx, dword [rcx + 4]
movsxd rax, dword [rcx + 0xc]
imul rbx, rbx, 0x38
add rbx, r11
test eax, eax
je 0x180045732
mov r8, qword [rcx + 0x10]
mov rdx, rax
mov rcx, rbx
imul rdx, rdx, 0x38
add rdx, r11
call fcn.180033970
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rbx, dword [r14 + 0xc]
imul rbx, rbx, 0x38
add rbx, r11
jmp 0x180045748
mov rdx, qword [rcx + 0x10]
mov rcx, rbx
call fcn.180033830
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x180046c98
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
mov ecx, r9d
jne 0x18004576e
mov byte [rbx + 0x16], cl
jmp 0x18003ffd3
movzx eax, byte [rbx + 0x16]
cmp eax, ecx
je 0x1800464ce
movzx edx, cl
mov rcx, rbx
call fcn.18000f3c0
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
or rax, 0xffffffffffffffff
lea r9, [rbp + 0x294]
mov rcx, rsi
mov dword [rbp + 0x298], eax
mov dword [rbp + 0x294], eax
lea rax, [rbp + 0x298]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x48]
mov dword [rbp + 0x290], r10d
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1800c5df0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
je 0x1800457f9
cmp eax, 5
jne 0x180046ba0
xor r8d, r8d
mov eax, 1
mov r15d, r8d
mov dword [rsp + 0x54], r8d
mov dword [rbp + 0x290], eax
jmp 0x1800457fc
xor r8d, r8d
mov rax, qword [rsp + 0x48]
mov rdi, r8
mov ecx, 0x9000
movsxd rbx, dword [rax + 0xc]
mov r12d, 4
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x58]
nop dword [rax]
movsxd rax, dword [rbp + rdi*4 + 0x290]
test word [rbx + 0x14], cx
je 0x180045840
mov rdx, rax
mov rcx, rbx
call fcn.180034010
mov ecx, 0x9000
jmp 0x180045848
mov qword [rbx], rax
mov word [rbx + 0x14], r12w
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x180045820
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffcd
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.18003f840
mov rcx, qword [rsi + 0x20]
mov r13, rax
mov rax, qword [rsp + 0x48]
mov ebx, dword [rax + 0xc]
movsxd rdx, dword [rax + 4]
shl rdx, 5
cmp ebx, 0xffffffff
mov r12, qword [rdx + rcx + 8]
mov rcx, qword [r12 + 8]
mov rdi, qword [rcx]
movzx esi, byte [rdi + 9]
cmove ebx, esi
cmp byte [rdi + 0x15], 3
jae 0x1800458bb
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x1800458bd
cmp qword [rdi + 0x60], 0
jle 0x1800458bd
mov ebx, esi
cmp byte [rdi + 0x13], 0
jne 0x1800458d8
lea rax, [0x180173b40]
cmp qword [rdi], rax
je 0x1800458d8
mov rcx, qword [rdi + 0xd8]
jmp 0x1800458df
lea rcx, [0x18014591c]
cmp ebx, 5
jne 0x180045900
call fcn.18000fb50
test eax, eax
je 0x1800458f9
mov rcx, rdi
call fcn.180020200
test eax, eax
jne 0x180045900
mov ebx, esi
jmp 0x180045983
cmp ebx, esi
je 0x180045983
cmp esi, 5
je 0x18004590e
cmp ebx, 5
jne 0x180045983
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x65], 0
je 0x180046cb7
cmp dword [rax + 0xdc], 1
jg 0x180046cb7
cmp esi, 5
jne 0x180045951
mov rdx, rax
mov rcx, rdi
call fcn.1800203d0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180045988
mov edx, ebx
mov rcx, rdi
call fcn.18001ffa0
jmp 0x180045966
cmp esi, 4
jne 0x180045961
lea edx, [rsi - 2]
mov rcx, rdi
call fcn.18001ffa0
test r15d, r15d
jne 0x180045988
xor r8d, r8d
cmp ebx, 5
mov rcx, r12
mov edx, r8d
sete dl
inc edx
call fcn.180032070
mov r15d, eax
mov dword [rsp + 0x54], eax
test r15d, r15d
je 0x18004598a
mov ebx, esi
mov edx, ebx
mov rcx, rdi
call fcn.18001ffa0
mov ecx, 0x2202
xor r14d, r14d
mov word [r13 + 0x14], cx
cmp eax, 6
jne 0x1800459ab
mov ecx, r14d
jmp 0x1800459bc
lea rcx, [0x180000000]
cdqe
mov rcx, qword [rcx + rax*8 + 0x1470a8]
mov qword [r13 + 8], rcx
call fcn.18000fb50
movzx r9d, byte [rsp + 0x40]
mov dword [r13 + 0x10], eax
mov byte [r13 + 0x16], 1
mov eax, r9d
cmp r9d, 1
je 0x1800459ee
movzx edx, al
mov rcx, r13
call fcn.18000f3c0
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
test r15d, r15d
je 0x1800407ca
mov r12, qword [rsp + 0x48]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
jmp 0x180046ba8
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x180045a28
mov r9, rax
imul r9, r9, 0x38
add r9, r11
jmp 0x180045a2b
mov r9, r10
mov r8d, dword [r15 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, rsi
call fcn.1800a0530
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.180028210
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
je 0x1800464be
cmp eax, 0x65
jne 0x180046ba0
xor r10d, r10d
mov r15d, r10d
mov dword [rsp + 0x54], r10d
mov r14, qword [rsp + 0x48]
mov edx, 1
jmp 0x18004678e
mov rax, qword [rsp + 0x48]
cmp dword [rax + 4], 0
jne 0x180045ac9
mov edx, dword [rax + 8]
mov rcx, rsi
call fcn.18003ae90
mov r14, qword [rsp + 0x48]
jmp 0x18003ffdb
mov eax, dword [rax + 8]
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
inc eax
xor eax, dword [r13 + 0xc8]
and eax, 3
xor dword [r13 + 0xc8], eax
mov r13, qword [rbp - 0x80]
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov r13, qword [rbp - 0x80]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
or byte [rax + 1], 0x40
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov r13, qword [rbp - 0x80]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
and byte [rax + 1], 0xbf
add r14, 0x18
jmp 0x18003fdcc
movzx r8d, byte [r14 + 0xc]
test r8b, r8b
jne 0x180045b74
movabs rax, 0x400000000
test qword [rsi + 0x30], rax
jne 0x180040035
mov r15, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 4]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.180031ed0
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
je 0x1800404d7
mov r12, qword [rsp + 0x48]
cmp al, 6
jne 0x180046ba5
mov r8, qword [r12 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.180035090
jmp 0x180046ba5
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1800a26c0
mov r15d, eax
mov dword [rsp + 0x54], eax
test rbx, rbx
je 0x180045bf4
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.18003afd0
test r15d, r15d
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
xor eax, eax
lea rcx, [rbp + 0x60]
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x90], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x78], rsi
movsxd rdx, dword [rax + 8]
imul rdx, rdx, 0x38
add rdx, r11
call fcn.180034260
movzx ecx, word [rbp + 0x74]
mov edx, 0x202
mov r15d, eax
mov dword [rsp + 0x54], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x180045c77
cmp byte [rbp + 0x76], 1
jne 0x180045c77
mov rax, qword [rbp + 0x68]
jmp 0x180045c8b
test cl, 1
jne 0x180045cb5
lea rcx, [rbp + 0x60]
mov dl, 1
call fcn.180034790
movzx ecx, word [rbp + 0x74]
test rax, rax
je 0x180045cb5
mov r8, rax
mov rax, qword [rsp + 0x48]
lea r9, [r13 + 0xa8]
mov edx, dword [rax + 4]
mov rcx, rsi
call fcn.1800a1ed0
movzx ecx, word [rbp + 0x74]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, 0x9000
test ax, cx
jne 0x180045cc8
cmp dword [rbp + 0x80], 0
je 0x180045cd1
lea rcx, [rbp + 0x60]
call fcn.180033a40
test r15d, r15d
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
inc dword [rsi + 0xe8]
mov rcx, rsi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800a22f0
dec dword [rsi + 0xe8]
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046ba0
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x50], r10
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x180046cf7
mov rdi, qword [rbx]
test rdi, rdi
je 0x180046cf2
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18003afd0
test r15d, r15d
jne 0x180046b9b
mov rax, qword [rbp - 0x50]
mov r9b, 2
xor r8d, r8d
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov edx, dword [rax + 4]
call fcn.18003f3c0
mov rcx, qword [rbp - 0x50]
test rax, rax
je 0x180046cea
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x180041d88
cmp dword [0x180172920], eax
je 0x180045e10
mov rcx, qword [0x1801821a8]
test rcx, rcx
je 0x180045dea
call qword [0x1801729a0]
lea rdx, [rbp - 8]
mov ecx, 0x10
call fcn.18000bd10
mov rcx, qword [0x1801821a8]
test rcx, rcx
je 0x180045e0a
call qword [0x1801729b0]
mov rbx, qword [rbp - 8]
jmp 0x180045e22
mov ecx, 0x10
call qword [0x180172940]
mov rbx, rax
mov qword [rbp - 8], rax
test rbx, rbx
je 0x180041d88
mov rcx, qword [rdi + 0x30]
mov rax, qword [rsp + 0x48]
mov qword [rbx], rcx
movsxd rcx, dword [rax + 0xc]
mov rdx, rax
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x58]
mov qword [rbx + 8], rcx
mov rcx, r13
call fcn.18003f840
mov ecx, 1
lea r9, [0x180122d80]
mov word [rax + 0x14], cx
lea r8, str.ValueList
mov rdx, rbx
mov rcx, rax
call fcn.180034070
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [r13 + 0x78]
mov r15, qword [rsp + 0x48]
xor r14d, r14d
movsxd rcx, dword [r15 + 4]
movsxd rdx, dword [r15 + 0xc]
mov r12, qword [rax + rcx*8]
mov rax, qword [rbp - 0x80]
mov ecx, r14d
imul rdx, rdx, 0x38
mov rbx, qword [r12 + 0x30]
movsxd r9, dword [rdx + r11 + 0x38]
mov r13d, dword [rdx + r11]
mov rsi, qword [rbx]
lea r10, [rdx + r11 + 0x38]
mov rdx, qword [rax + 0x70]
mov rdi, qword [rsi]
test r9d, r9d
jle 0x180045eea
mov r8d, 1
nop
movsxd rax, r8d
inc rcx
inc r8d
imul rax, rax, 0x38
add rax, r10
mov qword [rdx + rcx*8 - 8], rax
cmp rcx, r9
jl 0x180045ed0
mov r8, qword [r15 + 0x10]
mov qword [rsp + 0x20], rdx
mov rcx, rbx
mov edx, r13d
call qword [rdi + 0x40]
mov r13, qword [rbp - 0x80]
mov rdx, rsi
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18003afd0
test r15d, r15d
jne 0x180043a75
mov rcx, rbx
call qword [rdi + 0x50]
mov byte [r12 + 2], r14b
test eax, eax
je 0x180046814
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov edx, 1
jmp 0x18004678b
mov r14, qword [rsp + 0x48]
mov edx, 1
jmp 0x18004678b
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
movsxd rbx, dword [rbx + 0xc]
mov rdi, qword [rax + rcx*8]
imul rbx, rbx, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
jne 0x18004064d
mov rax, qword [rdi + 0x30]
mov rsi, qword [rax]
xor eax, eax
mov r12, qword [rsi]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xe8], rax
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xf0], rax
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
mov qword [rbp + 0xc0], rbx
mov byte [rbp + 0xe8], r9b
je 0x180046008
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x180045ff6
mov rcx, rbx
call fcn.180033a00
mov rax, qword [rsp + 0x48]
xor r10d, r10d
mov ecx, 0x401
mov dword [rbx], r10d
mov word [rbx + 0x14], cx
jmp 0x180046016
mov ecx, 0x401
mov word [rbx + 0x14], dx
mov dword [rbx], r10d
mov word [rbx + 0x14], cx
jmp 0x180046016
mov ecx, 0xf241
and word [rbx + 0x14], cx
or word [rbx + 0x14], 1
mov r8d, dword [rax + 8]
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0xc0]
call qword [r12 + 0x58]
mov rdx, rsi
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18003afd0
cmp dword [rbp + 0xe4], 0
jle 0x18004606b
mov rcx, rbx
call sym.sqlite.dll_sqlite3_value_text
lea rdx, [0x180144b04]
mov rcx, r13
mov r8, rax
call fcn.180035090
mov r15d, dword [rbp + 0xe4]
mov dword [rsp + 0x54], r15d
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
mov ecx, r9d
jne 0x18004607f
mov byte [rbx + 0x16], cl
jmp 0x180046098
movzx eax, byte [rbx + 0x16]
cmp eax, ecx
je 0x180046098
movzx edx, cl
mov rcx, rbx
call fcn.18000f3c0
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffd3
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x180040673
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18003afd0
test r15d, r15d
jne 0x180046b96
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
mov rsi, qword [rsp + 0x68]
test eax, eax
jne 0x1800443f2
mov rax, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r12 + rcx*8]
mov qword [rsp + 0x48], rax
mov r14, rax
jmp 0x1800443fd
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
mov rcx, qword [rsp + 0x48]
movsxd rbx, dword [rcx + 4]
mov rax, qword [rcx + 0x10]
and edi, 0x4000000
mov rsi, qword [rax + 0x10]
imul rbx, rbx, 0x38
add rbx, r11
test byte [rbx + 0x14], 2
jne 0x18004616d
mov byte [rbx + 0x16], 1
jmp 0x180046188
cmp byte [rbx + 0x16], 1
je 0x180046188
mov dl, 1
mov rcx, rbx
call fcn.18000f3c0
mov r15d, eax
test eax, eax
jne 0x180046b96
mov rax, qword [rsi]
mov rdx, qword [rbx + 8]
mov rcx, rsi
call qword [rax + 0x98]
mov r15d, eax
mov dword [rsp + 0x54], eax
test edi, edi
jne 0x1800461b0
mov rax, qword [rsp + 0x68]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.18003afd0
and dword [r13 + 0xc8], 0xfffffffc
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
cmp byte [rsi + 0x67], 0
mov qword [rbp - 0x20], r10
jne 0x180041d8d
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x180046cf7
mov r10, qword [rbx]
test r10, r10
je 0x180046cf7
cmp qword [r10 + 0x68], 0
mov r14, qword [rsp + 0x48]
movsxd rdx, dword [r14 + 8]
je 0x18003ffd8
movsxd rcx, dword [r14 + 0xc]
movzx edi, byte [rsi + 0x6c]
mov r8, qword [r13 + 0x70]
imul rcx, rcx, 0x38
mov r15, r14
xor r14d, r14d
add rcx, r11
mov eax, r14d
test edx, edx
jle 0x180046260
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
inc rax
add rcx, 0x38
cmp rax, rdx
jl 0x180046250
movzx eax, byte [r15 + 2]
lea r9, [rbp - 0x20]
mov rcx, rbx
mov byte [rsi + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov rcx, r13
mov byte [rsi + 0x6c], dil
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.18003afd0
mov rax, qword [rsp + 0x48]
test r15d, r15d
jne 0x1800462a6
cmp dword [rax + 4], r14d
je 0x1800462a6
mov rax, qword [rbp - 0x20]
mov qword [rsi + 0x38], rax
mov rax, qword [rsp + 0x48]
cmp r15b, 0x13
jne 0x18004630a
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], r14b
je 0x18004630a
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
cmp ax, 4
jne 0x1800462ea
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
xor r10d, r10d
mov r15d, r10d
mov dword [rsp + 0x54], r10d
jmp 0x18003ffdb
cmp ax, 5
jne 0x1800462fe
mov eax, 2
mov byte [r13 + 0xc4], al
jmp 0x18004630e
movzx eax, ax
mov byte [r13 + 0xc4], al
jmp 0x18004630e
inc qword [r13 + 0x38]
test r15d, r15d
jne 0x180043a7a
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.18003f840
mov rcx, qword [rsi + 0x20]
mov r14, qword [rsp + 0x48]
movsxd rdx, dword [r14 + 4]
mov r11, qword [rsp + 0x58]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x40]
mov qword [rax], rdx
jmp 0x18003ffcd
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.18003f840
mov rcx, qword [rsi + 0x20]
xor r8d, r8d
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov r9, qword [rdx + rcx + 8]
mov edx, r8d
mov r8d, dword [rax + 0xc]
test r8d, r8d
je 0x1800463a0
mov rcx, qword [r9 + 8]
mov edx, dword [rcx + 0x40]
cmp edx, r8d
cmovb edx, r8d
mov rcx, r9
call fcn.180027030
mov r14, qword [rsp + 0x48]
mov r11d, eax
mov qword [rbx], r11
mov r11, qword [rsp + 0x58]
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 0xc]
mov rbx, qword [rax + 0x10]
imul rdi, rdi, 0x38
add rdi, r11
cmp qword [rbx], rdi
je 0x180046422
movzx edx, byte [rbx + 0x2a]
mov qword [rbx + 0x18], r13
mov qword [rbx], rdi
dec edx
mov byte [rbx + 0x28], r9b
movsxd r8, edx
js 0x180046422
lea r9, [rbx + r8*8 + 0x30]
mov rsi, rax
nop word [rax + rax]
mov eax, dword [rsi + 8]
sub r9, 8
add eax, edx
dec edx
cdqe
imul rax, rax, 0x38
add rax, r11
dec r8
mov qword [r9 + 8], rax
jns 0x180046400
mov rsi, qword [rsp + 0x68]
mov eax, 0xf241
lea r8, [rbx + 0x30]
mov rcx, rbx
and word [rdi + 0x14], ax
or word [rdi + 0x14], 1
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x1800464be
jle 0x18004646e
mov rcx, rdi
call sym.sqlite.dll_sqlite3_value_text
lea rdx, [0x180144b04]
mov rcx, r13
mov r8, rax
call fcn.180035090
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x48]
mov r8d, dword [rbx + 0x20]
lea rdx, [r13 + 0x128]
mov r9d, dword [rax + 4]
mov rcx, rsi
call fcn.180038f80
xor r10d, r10d
mov dword [rbx + 0x24], r10d
test r15d, r15d
jne 0x180046b9b
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
jmp 0x18003ffdb
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
xor r10d, r10d
jmp 0x18003ffdb
mov rsi, rbx
mov r14, qword [rsp + 0x48]
jmp 0x180042b13
mov rsi, rbx
jmp 0x1800464be
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
mov rsi, qword [rsp + 0x68]
jmp 0x1800464c3
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
jmp 0x180042b13
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
mov r11, rdi
xor r10d, r10d
jmp 0x18003ffdb
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
xor r10d, r10d
jmp 0x18003ffdb
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov r13, qword [rbp - 0x80]
movsxd rax, dword [rax + 4]
mov rdi, qword [rsp + 0x70]
mov ecx, 0xf7ff
imul rax, rax, 0x38
and word [rax + r11 + 0x14], cx
add r14, 0x18
jmp 0x18003fdcc
mov rax, qword [rsp + 0x48]
mov rcx, r11
movsxd rbx, dword [rax + 4]
mov rdx, rax
imul rbx, rbx, 0x38
add rbx, r11
call fcn.18003f870
mov ecx, dword [rbx + 0x10]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
shl ecx, 3
movsxd r8, ecx
xor edx, edx
div r8
mov r8, qword [rbx + 8]
movzx ecx, dl
mov r9, rdx
mov edx, 1
and cl, 7
shr r9, 3
shl dl, cl
or byte [r9 + r8], dl
jmp 0x18003ffcd
mov rax, qword [rsp + 0x48]
mov rcx, r11
movsxd rbx, dword [rax + 4]
mov rdx, rax
imul rbx, rbx, 0x38
add rbx, r11
call fcn.18003f870
mov ecx, dword [rbx + 0x10]
mov r14, qword [rsp + 0x48]
shl ecx, 3
xor edx, edx
movsxd r8, ecx
div r8
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
mov edx, 1
and al, 7
movzx eax, al
bt r8d, eax
jb 0x180046642
inc dword [r13 + 0xf4]
jmp 0x18004678b
inc dword [r13 + 0xf0]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov r8d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x70]
xor r10d, r10d
add r14, 0x18
jmp 0x18003fdcc
movzx eax, byte [rsi + 0x6e]
test al, 0x41
je 0x18004672c
cmp byte [r13 + 0xc5], 0xfe
je 0x18004672c
mov r9, qword [r14 + 0x10]
test r9, r9
jne 0x1800466a1
mov r9, qword [r13 + 0xf8]
test r9, r9
je 0x18004672c
test al, 0x40
je 0x1800466cd
mov rdx, r9
mov rcx, r13
call fcn.18003eea0
mov rcx, qword [rsi + 0x100]
mov rdx, rax
mov rbx, rax
call qword [rsi + 0xf8]
mov rcx, rbx
call sym.sqlite.dll_sqlite3_free
jmp 0x180046725
cmp dword [rsi + 0xe4], 1
jle 0x180046710
lea rdx, str.____s
mov r8, r9
mov rcx, rsi
call fcn.18000e980
mov rdx, qword [rsi + 0x100]
mov r8, r13
mov r9, rax
mov ecx, 1
mov rbx, rax
call qword [rsi + 0xf8]
mov rdx, rbx
mov rcx, rsi
call fcn.18000c110
jmp 0x180046725
mov rdx, qword [rsi + 0x100]
mov r8, r13
mov ecx, 1
call qword [rsi + 0xf8]
xor r10d, r10d
lea edx, [r10 + 1]
mov eax, dword [0x180172ac8]
cmp dword [r14 + 4], eax
jl 0x180046776
cmp byte [r14], 0xb5
je 0x18004002a
cmp dword [r13 + 0x90], 1
jle 0x180046772
mov eax, 0x18
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x180046763
mov dword [rax + rcx + 4], r10d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x180046751
mov dword [r14 + 4], r10d
inc dword [r14 + 4]
inc dword [r13 + 0xec]
mov edx, 1
jmp 0x18004678e
mov rdx, rbx
xor r10d, r10d
mov eax, dword [r14 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r12 + rcx*8]
mov qword [rsp + 0x48], rsi
jmp 0x1800402f0
mov r15d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r12, qword [rsp + 0x78]
jmp 0x18003ffdb
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12, qword [rsp + 0x78]
mov rsi, rbx
jmp 0x18003ffd3
movzx r9d, byte [rsp + 0x40]
jmp 0x1800407c5
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x70]
add r14, 0x18
jmp 0x18003fdcc
mov r15, qword [rsp + 0x48]
mov ecx, dword [r15 + 4]
mov dword [r13 + 0x34], ecx
movzx eax, byte [r15 + 8]
mov byte [r13 + 0xc4], al
test ecx, ecx
je 0x180046904
movzx eax, word [r15 + 2]
mov rcx, r13
test ax, ax
je 0x1800468b0
movzx r8d, ax
lea rax, [0x180000000]
lea rdx, str._s_constraint_failed
mov r8, qword [rax + r8*8 + 0x145c60]
call fcn.180035090
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x1800468c0
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.18000e980
mov qword [r13 + 0xa8], rax
jmp 0x1800468c0
mov r8, qword [r15 + 0x10]
lea rdx, [0x180144b04]
call fcn.180035090
mov r9, qword [r13 + 0xf8]
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r12
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, dword [r15 + 4]
sar rdx, 2
mov qword [rsp + 0x20], rax
mov r8, rdx
shr r8, 0x3f
add r8, rdx
lea rdx, str.abort_at__d_in___s_:__s
call sym.sqlite.dll_sqlite3_log
mov rcx, r13
call fcn.180038a60
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov r15d, eax
cmp eax, 5
jne 0x180046927
mov dword [r13 + 0x34], eax
jmp 0x180047130
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov eax, 1
cmovne r15d, eax
jmp 0x180047130
lea rdx, str.FOREIGN_KEY_constraint_failed
mov r15d, 0x313
mov rcx, r13
mov dword [r13 + 0x34], r15d
mov byte [r13 + 0xc4], 2
call fcn.180035090
test byte [r13 + 0xc6], 0x80
mov eax, 1
cmove r15d, eax
jmp 0x180046ba0
mov ecx, 0x172f1
call fcn.1800c77c0
mov r15d, eax
jmp 0x180046b9b
lea rdx, [0x180000000]
movsxd rax, esi
lea rcx, [rax + rax*2]
movzx eax, word [rbx + 0x14]
mov r9d, dword [r13 + rcx*8 + 8]
and eax, 0x3f
movzx r8d, byte [rax + rdx + 0x145b40]
mov rax, qword [r13 + rcx*8]
mov r13, qword [rbp - 0x80]
mov r8, qword [rdx + r8*8 + 0x1738e0]
shr r9d, 4
mov qword [rsp + 0x28], rax
mov rax, qword [r12]
and r9d, 0xf
mov rcx, r13
dec r9d
mov qword [rsp + 0x20], rax
mov r9, qword [rdx + r9*8 + 0x172ad8]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
call fcn.180035090
mov rsi, qword [rsp + 0x68]
mov r15d, 0xc13
mov rdi, qword [rsp + 0x70]
mov r12, r14
jmp 0x180046ba5
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.180035090
mov r15d, 5
mov rsi, rbx
jmp 0x180046ba0
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.180035090
mov r15d, 5
jmp 0x180046ba0
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rcx, r12
mov r15d, 5
sub rcx, qword [rsp + 0x78]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x30], edx
mov byte [rsi + 0x65], 0
mov dword [r13 + 0x34], r15d
jmp 0x180047130
lea rdx, str.FOREIGN_KEY_constraint_failed
mov r15d, 0x313
mov byte [r13 + 0xc4], 2
mov dword [r13 + 0x34], r15d
call fcn.180035090
test byte [r13 + 0xc6], 0x80
mov r12, qword [rsp + 0x48]
cmove r15d, ebx
mov rbx, qword [rsp + 0x60]
jmp 0x180047130
mov eax, dword [rsi + 0x30]
mov r15d, 0xb
bt rax, 0x14
mov eax, 8
cmovb r15d, eax
jmp 0x180046ba0
mov r12, qword [rsp + 0x48]
mov r13, qword [rbp - 0x80]
mov rbx, qword [rsp + 0x60]
cmp r15b, 5
jne 0x180046d11
mov rcx, r12
movabs rax, 0x2aaaaaaaaaaaaaab
mov dword [r13 + 0x34], r15d
sub rcx, qword [rsp + 0x78]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x30], edx
jmp 0x180047130
mov r13, qword [rbp - 0x80]
mov rcx, rsi
mov rdx, qword [r13 + 0xa8]
call fcn.18000c110
lea rdx, str.database_schema_has_changed
mov rcx, rsi
call fcn.18000c700
mov qword [r13 + 0xa8], rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], r12d
je 0x180046b6c
mov rcx, rsi
call fcn.180065810
mov eax, dword [r13 + 0xc8]
mov r15d, 0x11
and eax, 0xffffffed
or eax, 1
mov dword [r13 + 0xc8], eax
jmp 0x180046b9b
mov r15d, 0x204
jmp 0x180046ba0
mov r15d, 0xd
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
xor r14d, r14d
mov rbx, qword [rsp + 0x60]
cmp byte [rsi + 0x67], 0
je 0x180046f9e
mov r15d, 7
jmp 0x180046fd7
mov r13, qword [rbp - 0x80]
mov rsi, r8
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.180035090
mov r15d, 0x12
jmp 0x180046b9b
lea rax, [0x18014e5e4]
mov r15d, 0x30b
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
mov r9d, 0x17fea
mov ecx, r15d
mov qword [rsp + 0x20], rax
call sym.sqlite.dll_sqlite3_log
mov rdi, qword [rsp + 0x70]
mov r12, r14
jmp 0x180046ba5
mov ecx, 0x180b7
call fcn.1800c77c0
mov r15d, eax
jmp 0x180046ba0
mov r15d, 6
mov byte [r13 + 0xc4], 2
mov rsi, rax
mov r12, qword [rsp + 0x48]
jmp 0x180046ba8
mov r15d, 7
mov rcx, rsi
call fcn.180065890
mov rbx, qword [rsp + 0x60]
cmp r15d, 7
je 0x180041d92
mov r12, qword [rsp + 0x48]
xor r14d, r14d
jmp 0x180046bad
mov rcx, qword [rbp + 0x10]
call sym.sqlite.dll_sqlite3_free
jmp 0x180046b9b
mov r13, qword [rbp - 0x80]
mov r15d, edx
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r13
call fcn.180035090
jmp 0x180046ba0
mov rcx, rbx
call sym.sqlite.dll_sqlite3_value_text
lea rdx, [0x180144b04]
mov rcx, r13
mov r8, rax
call fcn.180035090
jmp 0x180046ba0
mov r13, qword [rbp - 0x80]
lea rax, str.into
cmp ebx, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
cmove r8, rax
mov r15d, 1
call fcn.180035090
jmp 0x180046b96
call qword [rdi + 0x38]
jmp 0x180041d88
mov rdi, qword [rsp + 0x70]
mov r15d, 6
jmp 0x180046ba0
or rbx, 0xffffffffffffffff
mov r12, qword [rsp + 0x48]
mov r15d, 9
xor r14d, r14d
jmp 0x180046bad
mov eax, dword [r13 + 0x2c]
mov r15, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [r13 + 0x2c], eax
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
add rax, r11
mov qword [r13 + 0xa0], rax
cmp byte [rsi + 0x67], 0
jne 0x180041d8d
test byte [rsi + 0x6e], 4
je 0x180046d65
mov rdx, qword [rsi + 0x100]
xor r9d, r9d
mov r8, r13
lea ecx, [r9 + 4]
call qword [rsi + 0xf8]
mov rbx, qword [rsp + 0x60]
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r12
mov r12, qword [rsp + 0x48]
mov r15d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r13 + 0x30], edx
jmp 0x180047130
mov r15, qword [rsp + 0x48]
movzx eax, byte [rsi + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x180046eda
test ecx, ecx
je 0x180046dd4
mov edx, 0x204
mov rcx, rsi
call fcn.1800c4b40
mov byte [rsi + 0x65], 1
jmp 0x180046e56
test ebx, ebx
je 0x180046dfb
cmp dword [rsi + 0xe0], 0
jle 0x180046dfb
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.180035090
mov r15d, 5
jmp 0x180046ba0
mov rax, qword [r13]
mov rcx, qword [rax + 0x318]
add rcx, qword [rax + 0x310]
test rcx, rcx
jle 0x180046e53
lea rdx, str.FOREIGN_KEY_constraint_failed
mov r15d, 0x313
mov rcx, r13
mov dword [r13 + 0x34], r15d
mov byte [r13 + 0xc4], 2
call fcn.180035090
test byte [r13 + 0xc6], 0x80
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov eax, 1
cmove r15d, eax
jmp 0x180047130
mov byte [rsi + 0x65], bl
mov rcx, r13
call fcn.180038a60
cmp eax, 5
jne 0x180046eab
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
mov r15d, 5
sub rcx, r12
mov r12, qword [rsp + 0x48]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov rbx, qword [rsp + 0x60]
mov dword [r13 + 0x30], edx
mov byte [rsi + 0x65], al
mov dword [r13 + 0x34], r15d
jmp 0x180047130
mov rcx, rsi
call fcn.1800c4010
cmp dword [r13 + 0x34], 0
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov r15d, 0x65
mov r11d, 1
cmove r11d, r15d
mov r15d, r11d
jmp 0x180047130
test ebx, ebx
jne 0x180046ef6
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r13
call fcn.180035090
lea r15d, [rbx + 1]
jmp 0x180046ba0
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r13
call fcn.180035090
mov r15d, 1
jmp 0x180046ba0
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
jmp 0x180041d88
mov rsi, qword [rsp + 0x68]
jmp 0x180041d8d
mov r15d, dword [rsp + 0x54]
jmp 0x180046ba0
mov r15d, dword [rsp + 0x54]
mov r13, qword [rbp - 0x80]
jmp 0x180046b9b
mov r15d, dword [rsp + 0x54]
mov r13, qword [rbp - 0x80]
jmp 0x180046b96
mov r15d, dword [rsp + 0x54]
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
jmp 0x180046ba8
mov r15d, dword [rsp + 0x54]
jmp 0x180046b9b
mov r13, qword [rbp - 0x80]
mov rsi, rbx
jmp 0x180046b9b
mov r13, qword [rbp - 0x80]
jmp 0x180046ba0
mov rsi, rbx
jmp 0x180046b9b
mov r12, rbx
jmp 0x180046ba5
cmp r15d, 0x210a
jne 0x180046fd7
lea rax, [0x18014e5e4]
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
mov r9d, 0x18949
mov ecx, 0xb
mov qword [rsp + 0x20], rax
call sym.sqlite.dll_sqlite3_log
mov r15d, 0xb
cmp qword [r13 + 0xa8], 0
jne 0x18004704f
cmp r15d, 0xc0a
je 0x18004704f
mov ecx, r15d
lea r8, str.unknown_error
sub ecx, 0x64
je 0x180047039
dec ecx
je 0x180047030
cmp ecx, 0x19f
je 0x180047027
movzx eax, r15b
cmp eax, 0x1c
ja 0x180047040
lea rcx, [0x180000000]
mov rcx, qword [rcx + rax*8 + 0x14b280]
test rcx, rcx
je 0x180047040
mov r8, rcx
jmp 0x180047040
lea r8, str.abort_due_to_ROLLBACK
jmp 0x180047040
lea r8, str.no_more_rows_available
jmp 0x180047040
lea r8, str.another_row_available
lea rdx, [0x180144b04]
mov rcx, r13
call fcn.180035090
mov dword [r13 + 0x34], r15d
cmp r15d, 0xc0a
je 0x180047088
movzx eax, r15b
cmp eax, 0xe
je 0x18004706a
cmp eax, 0xa
jne 0x180047088
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x180047082
xor r8d, r8d
xor edx, edx
call rax
jmp 0x180047085
mov eax, r14d
mov dword [rsi + 0x5c], eax
mov r9, qword [r13 + 0xf8]
mov rcx, r12
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x78]
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, r15d
sar rdx, 2
mov qword [rsp + 0x20], rax
mov r8, rdx
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call sym.sqlite.dll_sqlite3_log
cmp byte [r13 + 0xc7], 2
jne 0x1800470df
mov rcx, r13
call fcn.180038a60
cmp r15d, 0xc0a
jne 0x1800470f2
mov rcx, rsi
call fcn.18000c8e0
jmp 0x18004710c
cmp r15d, 0xb
jne 0x18004710c
cmp byte [rsi + 0x65], 0
jne 0x18004710c
movabs rax, 0x200000000
or qword [rsi + 0x30], rax
mov eax, 1
mov r15d, eax
movzx eax, byte [rbp - 0x70]
test al, al
je 0x180047130
movzx edx, al
mov rcx, rsi
dec edx
call fcn.180065810
nop dword [rax]
cmp rdi, rbx
jb 0x180047167
mov rdx, qword [rsi + 0x228]
test rdx, rdx
je 0x180047167
mov eax, dword [rsi + 0x238]
mov rcx, qword [rsi + 0x230]
add rbx, rax
call rdx
test eax, eax
je 0x180047130
or rbx, 0xffffffffffffffff
xor r14d, r14d
lea r15d, [rbx + 0xa]
jmp 0x180046bad
add dword [r13 + 0xe4], edi
cmp dword [r13 + 0xd0], 0
movaps xmm6, xmmword [rsp + 0x3b0]
mov r14, qword [rsp + 0x3c0]
mov r12, qword [rsp + 0x3c8]
mov rdi, qword [rsp + 0x408]
mov rsi, qword [rsp + 0x400]
mov rbx, qword [rsp + 0x3f8]
je 0x1800471b0
mov rcx, r13
call fcn.180036e50
mov eax, r15d
mov rcx, qword [rbp + 0x2a0]
xor rcx, rsp
call fcn.180128570
add rsp, 0x3d0
pop r15
pop r13
pop rbp
ret