Function at 0x14023c4a0
Capabilities:
Encrypt data using speck
Parse credit card information
Reference sql statements

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3d8]
sub rsp, 0x4b0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x140415a10]
xor rax, rsp
mov qword [rbp + 0x390], rax
mov r15, qword [rcx]
mov r14, qword [rcx + 8]
xor r8d, r8d
mov rax, qword [r15 + 0x20]
mov rdx, rcx
mov qword [rsp + 0x60], rcx
mov rcx, qword [rax + 0x18]
mov r9, qword [rdx + 0x10]
mov rax, qword [r15 + 0x30]
movzx ebx, byte [rcx + 0x71]
xor r12b, r12b
mov rcx, rdx
mov byte [rsp + 0x58], bl
mov ebx, r8d
mov esi, r8d
mov qword [rsp + 0x68], r14
mov dword [rsp + 0x44], r8d
mov qword [rsp + 0x70], r15
mov dword [rsp + 0x48], ebx
mov byte [rsp + 0x4c], r12b
mov dword [rbp - 0x38], r8d
mov dword [rbp - 0x60], r8d
mov qword [rsp + 0x50], r9
mov r13d, r8d
mov qword [rsp + 0x78], r8
mov qword [rbp + 0x30], r8
mov qword [rbp - 0x50], rax
call fcn.140236390
mov rdi, qword [rsp + 0x60]
lea r9d, [r13 + 1]
cmp dword [rdi + 0x84], 7
je 0x140241fbb
xor r11d, r11d
mov dword [rdi + 0x84], r11d
mov qword [rdi + 0xc0], r11
mov qword [rdi + 0x28], r11
mov eax, dword [r15 + 0x138]
mov dword [r15 + 0x2a8], r11d
test eax, eax
jne 0x140241f60
mov rsi, rdi
cmp qword [r15 + 0x180], rbx
je 0x14023c5ba
mov eax, dword [rdi + 0xb0]
test eax, eax
jne 0x14023c5ae
mov eax, dword [r15 + 0x190]
mov dword [rbp - 0x60], eax
jmp 0x14023c5ba
xor edx, edx
div dword [r15 + 0x190]
mov dword [rbp - 0x60], edx
mov ecx, dword [rsi + 0x80]
mov r8d, 0x1000
xorps xmm6, xmm6
mov r10, qword [rsp + 0x50]
mov edx, 0x80
mov dword [rsp + 0x40], ecx
mov edi, 0x2460
nop dword [rax]
cmp byte [r15 + 0x50], 0
jne 0x140241fac
inc ebx
mov dword [rsp + 0x48], ebx
movsxd rbx, ecx
lea r12, [rbx + rbx*2]
mov qword [rbp - 0x68], r12
test byte [r14 + r12*8 + 2], 2
je 0x14023c645
movsxd rax, dword [r14 + r12*8 + 8]
imul r13, rax, 0x38
add r13, r10
mov qword [rsp + 0x78], r13
test word [r13 + 0x24], di
je 0x14023c63b
mov rcx, r13
call fcn.140234140
mov r10, qword [rsp + 0x50]
xor r11d, r11d
lea r9d, [r11 + 1]
mov edx, 0x80
mov r8d, 0x1000
mov eax, 4
mov word [r13 + 0x24], ax
movzx edi, byte [r14 + r12*8]
lea eax, [rdi - 1]
cmp eax, 0x99
ja case.default.0x14023c672
cdqe
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x241fe4]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x1402405f6
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
mov eax, 4
mov word [rcx + r10 + 0x24], ax
mov qword [rcx + r10 + 0x18], rbx
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
mov ebx, dword [rsp + 0x48]
imul rcx, rax, 0x38
mov esi, dword [rcx + r10 + 0x18]
mov word [rcx + r10 + 0x24], dx
mov ecx, esi
mov rsi, qword [rsp + 0x60]
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul r13, rax, 0x38
mov eax, dword [r14 + r12*8 + 0xc]
dec eax
add r13, r10
cdqe
mov qword [r13 + 0x18], rax
mov eax, 4
mov qword [rsp + 0x78], r13
mov word [r13 + 0x24], ax
mov eax, dword [r14 + r12*8 + 8]
lea ecx, [rax - 1]
test eax, eax
jne 0x14023c705
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
mov ebx, 0x80
imul rdx, rax, 0x38
mov rax, qword [rdx + r10 + 0x18]
lea rcx, [rax + rax*2]
mov ecx, dword [r14 + rcx*8 + 8]
mov word [rdx + r10 + 0x24], bx
mov ebx, dword [rsp + 0x48]
jmp 0x14023c5ce
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
mov eax, 4
mov esi, dword [rcx + r10 + 0x18]
mov qword [rcx + r10 + 0x18], rbx
mov ebx, dword [rsp + 0x48]
mov word [rcx + r10 + 0x24], ax
mov ecx, esi
mov rsi, qword [rsp + 0x60]
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r10 + 0x24], 1
je case.default.0x14023c672
cmp dword [r14 + r12*8 + 4], 0
jne 0x140241829
mov r8, qword [rsi + 0xf0]
test r8, r8
je 0x140241829
mov rax, qword [r8 + 8]
dec dword [rsi + 0x100]
mov qword [rsi + 0xf0], rax
mov eax, dword [rsi + 0x90]
add dword [r15 + 0x64], eax
mov dword [r15 + 0x60], eax
mov rax, qword [r8 + 0x20]
mov rdx, qword [r8]
mov rcx, qword [rdx]
mov qword [rdx + 0x118], rax
mov eax, dword [r8 + 0x50]
mov dword [rdx + 0x110], eax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r8 + 0x48]
mov dword [rdx + 0x3c], eax
mov rax, qword [r8 + 0x18]
mov qword [rdx + 0x10], rax
mov eax, dword [r8 + 0x4c]
mov dword [rdx + 0x38], eax
mov rax, qword [r8 + 0x28]
mov qword [rdx + 0x60], rax
mov eax, dword [r8 + 0x40]
mov dword [rdx + 0x40], eax
mov rax, qword [r8 + 0x38]
mov qword [rcx + 0x30], rax
mov eax, dword [r8 + 0x5c]
mov dword [rdx + 0x90], eax
cmp dword [r14 + r12*8 + 8], 4
mov rax, qword [r15 + 0x30]
movsxd rcx, dword [r8 + 0x44]
mov qword [rbp - 0x50], rax
jne 0x14023c837
mov rax, qword [rsi + 8]
lea rcx, [rcx + rcx*2]
mov ecx, dword [rax + rcx*8 + 8]
dec ecx
mov r14, qword [rsi + 8]
mov r10, qword [rsi + 0x10]
inc ecx
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x50], r10
mov dword [rsp + 0x40], ecx
jmp 0x14023e685
movsxd rax, dword [r14 + r12*8 + 4]
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
mov qword [r13 + 0x18], rax
inc ecx
jmp 0x14023c5d3
mov rax, qword [r14 + r12*8 + 0x10]
mov ebx, dword [rsp + 0x48]
mov rcx, qword [rax]
mov qword [r13 + 0x18], rcx
mov ecx, dword [rsp + 0x40]
inc ecx
jmp 0x14023c5d3
mov ebx, dword [rsp + 0x48]
mov eax, 8
mov word [r13 + 0x24], ax
mov rax, qword [r14 + r12*8 + 0x10]
mov rcx, qword [rax]
mov qword [r13 + 0x10], rcx
mov ecx, dword [rsp + 0x40]
inc ecx
jmp 0x14023c5d3
mov rdx, qword [r14 + r12*8 + 0x10]
mov byte [r14 + r12*8], 0x1b
mov rax, rdx
test rdx, rdx
jne 0x14023c8c3
mov eax, r11d
jmp 0x14023c8d7
cmp byte [rdx], 0
je 0x14023c8d0
inc rax
cmp byte [rax], 0
jne 0x14023c8c8
sub eax, edx
and eax, 0x3fffffff
movzx ebx, byte [rsp + 0x58]
mov dword [r14 + r12*8 + 4], eax
cmp bl, 1
je 0x14023c96d
mov r9b, 1
or r8d, 0xffffffff
mov rcx, r13
mov qword [rsp + 0x20], r11
call fcn.140234940
mov dword [rsp + 0x44], eax
cmp eax, 0x12
je 0x140241e00
test byte [r13 + 0x24], 2
movzx edx, bl
je 0x14023c92e
movzx ecx, byte [r13 + 0x26]
cmp ecx, edx
je 0x14023c92e
mov rcx, r13
call fcn.140217e80
test eax, eax
jne 0x140241fac
mov eax, 0x800
mov qword [r13 + 0x30], 0
or word [r13 + 0x24], ax
cmp byte [r14 + r12*8 + 1], 0xff
jne 0x14023c955
mov rdx, qword [r14 + r12*8 + 0x10]
mov rcx, r15
call fcn.140215b70
mov byte [r14 + r12*8 + 1], 0xff
mov rax, qword [r13 + 8]
mov qword [r14 + r12*8 + 0x10], rax
mov eax, dword [r13 + 0x20]
mov dword [r14 + r12*8 + 4], eax
mov eax, dword [r15 + 0x68]
cmp dword [r14 + r12*8 + 4], eax
jg 0x140241e00
jmp 0x14023c983
movzx ebx, byte [rsp + 0x58]
mov eax, 0xa02
mov word [r13 + 0x24], ax
mov rax, qword [r14 + r12*8 + 0x10]
mov qword [r13 + 8], rax
mov eax, dword [r14 + r12*8 + 4]
mov byte [r13 + 0x26], bl
mov dword [r13 + 0x20], eax
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
mov ebx, dword [r14 + r12*8 + 0xc]
mov edi, r9d
mov eax, 0x101
sub ebx, dword [r14 + r12*8 + 8]
cmp dword [r14 + r12*8 + 4], 0
cmovne di, ax
mov word [r13 + 0x24], di
test ebx, ebx
jle 0x14023ca09
mov r12d, 0x2460
nop dword [rax + rax]
add r13, 0x38
test word [r13 + 0x24], r12w
je 0x14023c9f3
mov rcx, r13
call fcn.140234140
dec ebx
mov word [r13 + 0x24], di
test ebx, ebx
jg 0x14023c9e0
mov qword [rsp + 0x78], r13
mov r9d, 1
mov ecx, dword [rsp + 0x40]
mov r10, qword [rsp + 0x50]
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x14023e685
movsxd rax, dword [r14 + r12*8 + 4]
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
imul r13, rax, 0x38
add r13, r10
mov eax, 0xff7f
and word [r13 + 0x24], ax
or word [r13 + 0x24], 1
inc ecx
mov qword [rsp + 0x78], r13
jmp 0x14023c5d3
mov r8d, dword [r14 + r12*8 + 4]
mov rdx, qword [r14 + r12*8 + 0x10]
xor r9d, r9d
mov rcx, r13
mov qword [rsp + 0x20], r11
call fcn.140234940
movzx eax, byte [rsp + 0x58]
mov byte [r13 + 0x26], al
jmp 0x14023e66d
mov eax, dword [r14 + r12*8 + 4]
dec eax
cdqe
imul rdx, rax, 0x38
add rdx, qword [rsi + 0x68]
movzx eax, word [rdx + 0x24]
test al, 0x12
je 0x14023cab8
mov r8d, dword [rdx + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x14023caa3
add r8d, dword [rdx + 0x18]
mov rax, qword [rdx]
mov ecx, r11d
cmp r8d, dword [rax + 0x68]
setg cl
test ecx, ecx
jne 0x140241e00
mov r8d, 0x800
mov rcx, r13
call fcn.1402347a0
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
mov edi, dword [r14 + r12*8 + 0xc]
imul rbx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
mov r12d, 0x2460
add rbx, r10
imul r13, rax, 0x38
add r13, r10
nop
test word [r13 + 0x24], r12w
je 0x14023cb07
mov rcx, r13
call fcn.140234140
xor r11d, r11d
mov edx, 0x80
movups xmm0, xmmword [rbx]
mov rax, qword [r13 + 0x30]
add rbx, 0x38
add r13, 0x38
movups xmmword [r13 - 0x38], xmm0
movups xmm1, xmmword [rbx - 0x28]
movups xmmword [r13 - 0x28], xmm1
movups xmm0, xmmword [rbx - 0x18]
movups xmmword [r13 - 0x18], xmm0
movsd xmm1, qword [rbx - 8]
movsd qword [r13 - 8], xmm1
mov qword [rbx - 8], rax
mov eax, edi
mov word [rbx - 0x14], dx
mov qword [rbx - 0x10], r11
dec edi
test eax, eax
jne 0x14023caf0
mov ecx, dword [rsp + 0x40]
mov r10, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
inc ecx
mov qword [rsp + 0x78], r13
lea r9d, [rax + 1]
mov edi, r12d
mov r8d, 0x1000
mov dword [rsp + 0x40], ecx
jmp 0x14023c5e0
movsxd rax, dword [r14 + r12*8 + 4]
mov edi, dword [r14 + r12*8 + 0xc]
imul rbx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
add rbx, r10
imul r13, rax, 0x38
add r13, r10
mov rdx, rbx
mov rcx, r13
mov qword [rsp + 0x78], r13
call fcn.1402347a0
mov r8d, 0x1000
test word [r13 + 0x24], r8w
je 0x14023cbc6
mov rcx, r13
call fcn.140233e40
test eax, eax
jne 0x140241fac
mov r8d, 0x1000
mov eax, edi
dec edi
test eax, eax
je 0x14023cbd8
add r13, 0x38
add rbx, 0x38
jmp 0x14023cb93
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
xor r11d, r11d
lea r9d, [r11 + 1]
jmp 0x14023c5c9
movsxd rax, dword [r14 + r12*8 + 8]
imul r13, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 4]
imul rdx, rax, 0x38
add r13, r10
mov rcx, r13
mov qword [rsp + 0x78], r13
add rdx, r10
call fcn.1402347a0
jmp 0x14023e66d
mov rax, qword [r15 + 0x180]
test rax, rax
je 0x14023cc3e
mov ecx, dword [rsp + 0x48]
cmp ecx, dword [rbp - 0x60]
jb 0x14023cc3e
mov rcx, qword [r15 + 0x188]
call rax
test eax, eax
jne 0x14024191e
cmp qword [rsi + 0xc8], 0
jg 0x140241a96
mov edx, 1
mov rcx, rsi
call fcn.140237860
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140241a07
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
imul rbx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 0xc]
add rdi, r10
movzx ecx, word [rdi + 0x24]
add rbx, r10
imul r13, rax, 0x38
add r13, r10
movzx eax, cl
or al, byte [rbx + 0x24]
mov qword [rsp + 0x78], r13
test al, 1
je 0x14023ccb4
mov rcx, r13
call fcn.140234490
jmp 0x14023e66d
mov esi, 0x4000
test si, cx
je 0x14023ccce
mov rcx, rdi
call fcn.140233ec0
test eax, eax
jne 0x140241fac
test word [rbx + 0x24], si
je 0x14023cce4
mov rcx, rbx
call fcn.140233ec0
test eax, eax
jne 0x140241fac
test byte [rdi + 0x24], 0x12
jne 0x14023cd05
movzx r12d, byte [rsp + 0x58]
mov rcx, rdi
mov edx, r12d
call fcn.140233fa0
test eax, eax
jne 0x140241fac
jmp 0x14023cd0b
movzx r12d, byte [rsp + 0x58]
test byte [rbx + 0x24], 0x12
jne 0x14023cd25
movzx edx, r12b
mov rcx, rbx
call fcn.140233fa0
test eax, eax
jne 0x140241fac
mov eax, dword [rdi + 0x20]
add eax, dword [rbx + 0x20]
movsxd rsi, eax
movsxd rax, dword [r15 + 0x68]
cmp rsi, rax
jg 0x140241e00
xor r8d, r8d
cmp r13, rbx
lea edx, [rsi + 2]
sete r8b
mov rcx, r13
call fcn.140233ce0
test eax, eax
jne 0x140241fac
mov eax, 0xbe02
and word [r13 + 0x24], ax
or word [r13 + 0x24], 2
cmp r13, rbx
je 0x14023cd7e
movsxd r8, dword [rbx + 0x20]
mov rdx, qword [rbx + 8]
mov rcx, qword [r13 + 8]
call fcn.1402b7460
movsxd rcx, dword [rbx + 0x20]
movsxd r8, dword [rdi + 0x20]
mov rdx, qword [rdi + 8]
add rcx, qword [r13 + 8]
call fcn.1402b7460
mov rax, qword [r13 + 8]
mov byte [rsi + rax], 0
mov rax, qword [r13 + 8]
mov byte [rsi + rax + 1], 0
mov eax, 0x200
mov dword [r13 + 0x20], esi
mov rsi, qword [rsp + 0x60]
or word [r13 + 0x24], ax
mov byte [r13 + 0x26], r12b
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
mov rcx, rbx
call fcn.14023c380
movsxd rax, dword [r14 + r12*8 + 8]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x50]
mov rcx, rdi
call fcn.14023c380
movsxd rax, dword [r14 + r12*8 + 0xc]
movzx ecx, word [rdi + 0x24]
imul r13, rax, 0x38
movzx eax, word [rbx + 0x24]
mov r10, qword [rsp + 0x50]
add r13, r10
mov r14d, eax
or r14d, ecx
mov qword [rsp + 0x78], r13
test r14b, 1
jne 0x14023d035
and al, cl
test al, 4
je 0x14023cf52
mov rax, qword [rsp + 0x68]
mov rdx, qword [rdi + 0x18]
mov r8, qword [rbx + 0x18]
movzx ecx, byte [rax + r12*8]
mov qword [rbp - 0x58], rdx
mov sil, 1
sub ecx, 0x59
je 0x14023cee0
dec ecx
je 0x14023cec2
dec ecx
je 0x14023cea3
dec ecx
je 0x14023ce74
test r8, r8
je 0x14023d030
cmp r8, 0xffffffffffffffff
mov rax, rdx
mov r9d, 1
cmove r8, r9
cqo
idiv r8
jmp 0x14023cf22
test r8, r8
je 0x14023d030
cmp r8, 0xffffffffffffffff
jne 0x14023ce96
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x14023cf55
mov rax, rdx
cqo
idiv r8
mov rdx, rax
jmp 0x14023cf1c
lea rcx, [rbp - 0x58]
mov rdx, r8
call fcn.140219550
test eax, eax
jne 0x14023cf55
mov rdx, qword [rbp - 0x58]
mov r10, qword [rsp + 0x50]
jmp 0x14023cf1c
movabs rax, 0x8000000000000000
cmp r8, rax
jne 0x14023cedb
test rdx, rdx
jns 0x14023cf55
sub rdx, rax
jmp 0x14023cf1c
neg r8
jmp 0x14023cee3
test r8, r8
js 0x14023cefe
test rdx, rdx
jle 0x14023cf19
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jl 0x14023cf55
jmp 0x14023cf19
test rdx, rdx
jns 0x14023cf19
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jg 0x14023cf55
add rdx, r8
mov r9d, 1
mov ecx, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
inc ecx
mov eax, 0xbe04
mov qword [r13 + 0x18], rdx
and word [r13 + 0x24], ax
or word [r13 + 0x24], 4
mov dword [rsp + 0x40], ecx
xor r11d, r11d
jmp 0x14023e685
xor sil, sil
mov rcx, rbx
call fcn.1402342a0
mov rcx, rdi
movaps xmm2, xmm0
call fcn.1402342a0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rax + r12*8]
movaps xmm3, xmm0
sub ecx, 0x59
je 0x14023cfd0
dec ecx
je 0x14023cfca
dec ecx
je 0x14023cfc4
dec ecx
je 0x14023cfb6
cvttsd2si rcx, xmm2
cvttsd2si rax, xmm0
test rcx, rcx
je 0x14023d030
cmp rcx, 0xffffffffffffffff
mov r9d, 1
cqo
cmove rcx, r9
xorps xmm3, xmm3
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x14023cfda
ucomisd xmm2, xmm6
jp 0x14023cfbe
je 0x14023d030
divsd xmm3, xmm2
jmp 0x14023cfd4
mulsd xmm3, xmm2
jmp 0x14023cfd4
subsd xmm3, xmm2
jmp 0x14023cfd4
addsd xmm3, xmm2
mov r9d, 1
movaps xmm0, xmm3
call fcn.140218630
test eax, eax
jne 0x14023d030
mov eax, 0xbe08
movsd qword [r13 + 0x10], xmm3
and word [r13 + 0x24], ax
or word [r13 + 0x24], 8
test r14b, 8
jne 0x14023d00f
test sil, sil
jne 0x14023d00f
mov rcx, r13
call fcn.140234300
mov ecx, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x14023e685
mov rsi, qword [rsp + 0x60]
mov rcx, r13
call fcn.140234490
jmp 0x14023e668
movsxd rax, dword [r14 + r12*8 + 4]
test eax, eax
je 0x14023e66d
imul rcx, rax, 0x38
xor edx, edx
add rcx, r10
call fcn.140234550
jmp 0x14023e66d
mov rcx, qword [rsp + 0x68]
movzx r15d, byte [r14 + r12*8 + 3]
mov r14, qword [rsi + 0x18]
movsxd rax, dword [rcx + r12*8 + 0xc]
mov rdi, r11
imul r13, rax, 0x38
movsxd rax, dword [rcx + r12*8 + 8]
add r13, r10
mov qword [rsp + 0x78], r13
imul rbx, rax, 0x38
add rbx, r10
test r15d, r15d
jle 0x14023d0d5
nop word [rax + rax]
mov qword [r14 + rdi*8], rbx
test word [rbx + 0x24], r8w
je 0x14023d0c1
mov rcx, rbx
call fcn.140233e40
test eax, eax
jne 0x14023f228
mov r8d, 0x1000
inc rdi
add rbx, 0x38
cmp rdi, r15
jl 0x14023d0a0
mov rcx, qword [rsp + 0x68]
xor r11d, r11d
mov rax, qword [rcx + r12*8 + 0x10]
mov esi, dword [rsp + 0x40]
mov rdi, qword [rsp + 0x60]
mov qword [rbp + 0x70], rax
mov dword [rbp + 0xc8], esi
mov qword [rbp + 0xc0], rdi
movups xmm0, xmmword [r13]
mov ebx, 1
mov edx, 0xbe01
movups xmmword [rbp + 0x78], xmm0
movups xmm1, xmmword [r13 + 0x10]
movups xmmword [rbp + 0x88], xmm1
movups xmm0, xmmword [r13 + 0x20]
movups xmmword [rbp + 0x98], xmm0
movsd xmm1, qword [r13 + 0x30]
movsd qword [rbp + 0xa8], xmm1
mov word [r13 + 0x24], bx
mov qword [r13 + 0x28], r11
mov qword [r13 + 0x30], r11
movzx eax, word [rbp + 0x9c]
mov r9, qword [rbp + 0x70]
mov byte [rbp + 0xd1], 0
and ax, dx
or ax, bx
mov word [rbp + 0x9c], ax
test byte [r9 + 2], 0x20
je 0x14023d16c
mov rax, qword [rcx + r12*8 - 8]
mov qword [rbp + 0xb8], rax
mov rcx, qword [rsp + 0x70]
mov rax, qword [rbp - 0x50]
mov r8, r14
mov qword [rcx + 0x30], rax
lea rcx, [rbp + 0x70]
mov edx, r15d
call qword [r9 + 0x18]
mov r15, qword [rsp + 0x70]
cmp byte [r15 + 0x50], 0
mov rax, qword [r15 + 0x30]
mov qword [rbp - 0x50], rax
jne 0x140241ace
cmp byte [rbp + 0xd1], 0
je 0x14023d26c
cmp dword [rbp + 0xcc], 0
je 0x14023d256
test byte [rbp + 0x9c], bl
je 0x14023d1c6
xor r9d, r9d
jmp 0x14023d239
movzx ecx, word [rbp + 0x9c]
movzx eax, cx
shr ax, 3
and ax, 2
or cx, ax
mov eax, 0x4000
mov word [rbp + 0x9c], cx
test ax, cx
je 0x14023d1f5
lea rcx, [rbp + 0x78]
call fcn.140233ec0
test byte [rbp + 0x9c], 2
je 0x14023d21d
cmp byte [rbp + 0x9e], bl
je 0x14023d212
lea rcx, [rbp + 0x78]
movzx edx, bl
call fcn.140217e80
lea rcx, [rbp + 0x78]
call fcn.140233f30
jmp 0x14023d228
lea rcx, [rbp + 0x78]
mov edx, ebx
call fcn.140233fa0
xor r9d, r9d
cmp byte [rbp + 0x9e], bl
cmove r9, qword [rbp + 0x80]
lea rcx, [rdi + 0x48]
lea r8, [0x14036b948]
mov rdx, r15
call fcn.140216090
mov eax, dword [rbp + 0xcc]
mov dword [rsp + 0x44], eax
mov r14, qword [rsp + 0x68]
mov edx, esi
mov rcx, rdi
mov r8d, dword [r14 + r12*8 + 4]
call fcn.140238050
jmp 0x14023d271
mov r14, qword [rsp + 0x68]
test byte [rbp + 0x9c], 2
movzx ecx, byte [rsp + 0x58]
je 0x14023d296
movzx eax, byte [rbp + 0x9e]
cmp eax, ecx
je 0x14023d296
movzx edx, cl
lea rcx, [rbp + 0x78]
call fcn.140217e80
movups xmm0, xmmword [rbp + 0x78]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rbp + 0x88]
movups xmmword [r13 + 0x10], xmm1
movups xmm0, xmmword [rbp + 0x98]
movups xmmword [r13 + 0x20], xmm0
movsd xmm1, qword [rbp + 0xa8]
movsd qword [r13 + 0x30], xmm1
movzx eax, word [r13 + 0x24]
test al, 0x12
je 0x14024064c
mov edx, dword [r13 + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x14023d2e4
add edx, dword [r13 + 0x18]
mov rax, qword [r13]
xor r11d, r11d
cmp edx, dword [rax + 0x68]
mov ecx, r11d
setg cl
test ecx, ecx
jne 0x140241e04
mov ecx, dword [rsp + 0x44]
jmp 0x1402417f2
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 0xc]
add rdi, r10
add rcx, r10
imul r13, rax, 0x38
movzx eax, byte [rcx + 0x24]
or al, byte [rdi + 0x24]
add r13, r10
mov qword [rsp + 0x78], r13
test al, 1
je 0x14023d346
mov rcx, r13
call fcn.140234490
jmp 0x14023e66d
call fcn.140234210
mov rcx, rdi
mov rbx, rax
call fcn.140234210
movzx edx, byte [r14 + r12*8]
mov rcx, rax
cmp dl, 0x55
jne 0x14023d368
and rbx, rax
jmp 0x14023d3da
cmp dl, 0x56
jne 0x14023d372
or rbx, rax
jmp 0x14023d3da
test rax, rax
je 0x14023d3da
jns 0x14023d38c
mov eax, 0xaf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x14023d392
neg rcx
cmp rcx, 0x40
jl 0x14023d3ab
test rbx, rbx
jns 0x14023d3a4
cmp dl, 0x57
je 0x14023d3a4
or eax, 0xffffffff
movsxd rbx, eax
jmp 0x14023d3da
xor eax, eax
movsxd rbx, eax
jmp 0x14023d3da
cmp dl, 0x57
jne 0x14023d3b8
shl rbx, cl
mov r8, rbx
jmp 0x14023d3d7
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x14023d3d7
or rdx, 0xffffffffffffffff
mov eax, 0x40
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0xbe04
mov qword [r13 + 0x18], rbx
and word [r13 + 0x24], ax
or word [r13 + 0x24], 4
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
mov rcx, rbx
call fcn.140234360
movsxd rax, dword [r14 + r12*8 + 8]
add qword [rbx + 0x18], rax
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x14023d464
mov rcx, rbx
call fcn.14023c380
test byte [rbx + 0x24], 8
je 0x14023d43f
mov rcx, rbx
call fcn.140234300
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x14023d45f
mov eax, dword [r14 + r12*8 + 8]
test eax, eax
je 0x140241bb6
mov ecx, eax
mov dword [rsp + 0x40], eax
jmp 0x14023e677
mov r10, qword [rsp + 0x50]
mov ecx, 0xbe04
and ax, cx
or ax, 4
mov word [rbx + 0x24], ax
mov ecx, dword [rsp + 0x40]
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x14023e67f
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 4
je 0x14023d4a2
call fcn.140234390
mov r10, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x40]
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x14023e67f
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
movzx ecx, word [rbx + 0x24]
test cl, 1
jne case.default.0x14023c672
movzx eax, cx
shr ax, 3
and ax, 2
or ax, cx
mov word [rbx + 0x24], ax
test al, 2
jne 0x14023d4f4
test al, 0xc
je 0x14023d4f4
movzx edx, byte [rsp + 0x58]
mov rcx, rbx
call fcn.140233fa0
mov eax, 0xfff3
and word [rbx + 0x24], ax
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x14023d52d
mov rcx, rbx
call fcn.140233ec0
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov dword [rsp + 0x44], eax
mov eax, 0xbfe3
and word [rbx + 0x24], ax
mov ecx, dword [rsp + 0x44]
jmp 0x1402417f2
xor r11d, r11d
mov eax, 0xbfe3
and word [rbx + 0x24], ax
mov dword [rsp + 0x44], r11d
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417f2
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
movzx eax, word [rbx + 0x24]
test al, 1
jne case.default.0x14023c672
test al, 0x10
jne 0x14023d5a1
test al, 2
jne 0x14023d581
test al, 0xc
je 0x14023d581
movzx edx, byte [rsp + 0x58]
mov rcx, rbx
call fcn.140233fa0
mov r10, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x40]
mov eax, 0xbe10
and word [rbx + 0x24], ax
or word [rbx + 0x24], 0x10
inc ecx
mov dword [rsp + 0x40], ecx
xor r11d, r11d
jmp 0x14023e67f
mov ecx, 0xfe10
and ax, cx
mov ecx, dword [rsp + 0x40]
mov word [rbx + 0x24], ax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
call fcn.140234410
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
jne 0x14023d4a2
call fcn.140234360
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
jne 0x14023d4a2
call fcn.140234390
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rsi, rax, 0x38
add rdi, r10
movzx r15d, word [rdi + 0x24]
add rsi, r10
movzx r14d, word [rsi + 0x24]
movzx eax, r14b
or al, r15b
test al, 1
je 0x14023d6d6
mov r8, qword [rsp + 0x68]
movzx eax, byte [r8 + r12*8 + 3]
test al, al
jns 0x14023d679
test r15b, 1
je 0x14023d671
test r14b, 1
je 0x14023d671
mov eax, 0x100
test ax, r14w
jne 0x14023d671
mov eax, r11d
jmp 0x14023d757
mov eax, r9d
jmp 0x14023d757
mov r14, r8
test al, 0x10
je 0x14023d6c9
movsxd rax, dword [r8 + r12*8 + 8]
imul r13, rax, 0x38
mov eax, 0xbe01
add r13, r10
mov qword [rsp + 0x78], r13
and word [r13 + 0x24], ax
or word [r13 + 0x24], 1
mov ecx, dword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov ebx, dword [rsp + 0x48]
inc ecx
mov edi, 0x2460
mov r8d, 0x1000
mov dword [rsp + 0x40], ecx
jmp 0x14023c5e0
test al, 8
je 0x14023d6a1
mov ecx, dword [r14 + r12*8 + 8]
dec ecx
jmp 0x14023d6a5
mov rax, qword [rsp + 0x68]
movzx ebx, byte [rax + r12*8 + 3]
and bl, 0x67
je 0x14023d717
movzx r8d, byte [rsp + 0x58]
movzx edx, bl
mov rcx, rdi
call fcn.14023c400
movzx r8d, byte [rsp + 0x58]
movzx edx, bl
mov rcx, rsi
call fcn.14023c400
mov rcx, qword [rsp + 0x70]
cmp byte [rcx + 0x50], 0
jne 0x140241fa9
mov ebx, 0x4000
test word [rdi + 0x24], bx
je 0x14023d72a
mov rcx, rdi
call fcn.140233ec0
test word [rsi + 0x24], bx
je 0x14023d738
mov rcx, rsi
call fcn.140233ec0
mov rax, qword [rsp + 0x68]
mov rdx, rdi
mov rcx, rsi
mov r8, qword [rax + r12*8 + 0x10]
call fcn.140238d60
mov r8, qword [rsp + 0x68]
mov r10, qword [rsp + 0x50]
movzx edx, byte [r8 + r12*8]
xor r11d, r11d
mov ecx, r11d
sub edx, 0x4e
je 0x14023d79a
dec edx
je 0x14023d793
dec edx
je 0x14023d78c
dec edx
je 0x14023d785
dec edx
je 0x14023d77e
test eax, eax
setns cl
jmp 0x14023d79f
test eax, eax
sets cl
jmp 0x14023d79f
test eax, eax
setle cl
jmp 0x14023d79f
test eax, eax
setg cl
jmp 0x14023d79f
test eax, eax
sete cl
jmp 0x14023d79f
test eax, eax
setne cl
test byte [r8 + r12*8 + 3], 0x10
je 0x14023d814
movsxd rax, dword [r8 + r12*8 + 8]
imul r13, rax, 0x38
mov eax, 0xbe04
add r13, r10
mov qword [rsp + 0x78], r13
and word [r13 + 0x24], ax
or word [r13 + 0x24], 4
movsxd rax, ecx
mov qword [r13 + 0x18], rax
mov ecx, dword [rsp + 0x40]
mov eax, 0x1ff
mov r12d, 0xfe00
and word [rdi + 0x24], r12w
and r15w, ax
and r14w, ax
or word [rdi + 0x24], r15w
and word [rsi + 0x24], r12w
or word [rsi + 0x24], r14w
mov r15, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67f
test ecx, ecx
je 0x14023d7cf
mov ecx, dword [r8 + r12*8 + 8]
dec ecx
jmp 0x14023d7d3
mov ecx, dword [rsp + 0x40]
mov r8, qword [r14 + r12*8 + 0x10]
mov ebx, dword [rsp + 0x48]
inc ecx
mov qword [rbp + 0x30], r8
mov edi, 0x2460
mov dword [rsp + 0x40], ecx
mov r8d, 0x1000
jmp 0x14023c5e0
test byte [r14 + r12*8 + 3], 1
mov rdx, qword [rbp - 0x68]
mov rax, qword [rbp + 0x30]
movsxd r15, dword [r14 + rdx*8 + 0xc]
mov ecx, dword [r14 + rdx*8 + 8]
mov r13, qword [r14 + r12*8 + 0x10]
mov r12d, dword [r14 + r12*8 + 4]
cmove rax, r11
mov dword [rbp - 0x70], ecx
mov qword [rbp + 0x30], rax
mov edi, r11d
mov rbx, r11
test r15, r15
jle 0x14023d8f9
lea rsi, [r13 + 0x20]
test rax, rax
je 0x14023d88f
mov r8d, dword [rax + rbx*4]
jmp 0x14023d892
mov r8d, edi
mov rax, qword [r13 + 0x18]
movzx r14d, byte [rbx + rax]
lea eax, [r8 + rcx]
movsxd rcx, eax
lea eax, [r8 + r12]
mov r8, qword [rsi]
imul rdx, rcx, 0x38
movsxd rcx, eax
add rdx, r10
imul rcx, rcx, 0x38
add rcx, r10
call fcn.140238d60
mov dword [rbp - 0x38], eax
test eax, eax
jne 0x14023d8e2
mov ecx, dword [rbp - 0x70]
mov r10, qword [rsp + 0x50]
mov rax, qword [rbp + 0x30]
inc rbx
inc edi
add rsi, 8
cmp rbx, r15
jl 0x14023d884
jmp 0x14023d8ec
test r14d, r14d
je 0x14023d8ec
neg eax
mov dword [rbp - 0x38], eax
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
xor r11d, r11d
mov ecx, dword [rsp + 0x40]
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
inc ecx
mov qword [rbp + 0x30], r11
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
mov ebx, dword [rbp - 0x38]
test ebx, ebx
jns 0x14023d92b
mov ecx, dword [r14 + r12*8 + 4]
mov ebx, dword [rsp + 0x48]
jmp 0x14023c5d3
je 0x14023c699
mov ecx, dword [r14 + r12*8 + 0xc]
mov ebx, dword [rsp + 0x48]
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
je 0x14023d958
mov ebx, 2
jmp 0x14023d96e
call fcn.140234210
mov r10, qword [rsp + 0x50]
xor r11d, r11d
test rax, rax
mov ebx, r11d
setne bl
movsxd rax, dword [r14 + r12*8 + 8]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
je 0x14023d987
mov edx, 2
jmp 0x14023d99d
call fcn.140234210
mov r10, qword [rsp + 0x50]
xor r11d, r11d
test rax, rax
mov edx, r11d
setne dl
movsxd rax, ebx
lea rcx, [rax + rax*2]
movsxd rax, edx
add rcx, rax
cmp byte [r14 + r12*8], 0x48
lea rax, [0x140000000]
jne 0x14023d9c2
movzx edx, byte [rcx + rax + 0x32d3c0]
jmp 0x14023d9ca
movzx edx, byte [rcx + rax + 0x32d230]
movsxd rax, dword [r14 + r12*8 + 0xc]
mov ecx, dword [rsp + 0x40]
imul r13, rax, 0x38
add r13, r10
mov qword [rsp + 0x78], r13
cmp edx, 2
jne 0x14023d9ff
mov eax, 0xbe01
and word [r13 + 0x24], ax
or word [r13 + 0x24], 1
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67f
movsxd rax, edx
mov qword [r13 + 0x18], rax
mov eax, 0xbe04
and word [r13 + 0x24], ax
or word [r13 + 0x24], 4
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67f
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
imul r13, rax, 0x38
add rcx, r10
add r13, r10
test byte [rcx + 0x24], 1
mov qword [rsp + 0x78], r13
je 0x14023da51
mov rcx, r13
call fcn.140234490
jmp 0x14023e66d
call fcn.140234210
xor edx, edx
mov rcx, r13
test rax, rax
sete dl
call fcn.140234550
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
imul r13, rax, 0x38
add rcx, r10
add r13, r10
test byte [rcx + 0x24], 1
mov qword [rsp + 0x78], r13
je 0x14023da9b
mov rcx, r13
call fcn.140234490
jmp 0x14023e66d
call fcn.140234210
mov rcx, r13
not rax
mov rdx, rax
call fcn.140234550
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
mov rcx, qword [rsi + 0x118]
cmp byte [rax + rcx], 0
jne 0x14023c699
mov byte [rax + rcx], 1
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
je 0x14023daf5
mov ecx, dword [r14 + r12*8 + 0xc]
jmp 0x14023db1f
call fcn.1402342a0
ucomisd xmm0, xmm6
jp 0x14023db06
jne 0x14023db06
xor ecx, ecx
jmp 0x14023db0b
mov ecx, 1
mov r10, qword [rsp + 0x50]
cmp dil, 0x2d
jne 0x14023db1f
xor eax, eax
test ecx, ecx
sete al
mov ecx, eax
test ecx, ecx
je 0x14023d474
mov ecx, dword [r14 + r12*8 + 8]
dec ecx
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x14023e67f
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
test byte [rcx + r10 + 0x24], 1
je 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
test byte [rcx + r10 + 0x24], 1
jne 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 0xc]
mov esi, dword [r14 + r12*8 + 8]
mov rbx, qword [rsp + 0x68]
imul r14, rax, 0x38
movsxd rcx, dword [rbx + r12*8 + 4]
mov rdi, qword [rsp + 0x60]
add r14, r10
mov rax, qword [rdi + 0x60]
mov dword [rbp - 0x80], esi
mov qword [rbp - 0x58], r14
mov r15, qword [rax + rcx*8]
movsx rax, word [r15 + 0x20]
mov r13, qword [r15]
add rax, 0x1c
mov qword [rbp - 0x30], r13
lea rcx, [r15 + rax*4]
mov qword [rbp - 0x70], rcx
mov rcx, r15
call fcn.140238320
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241d0e
mov rax, rdi
mov eax, dword [rax + 0x7c]
cmp dword [r15 + 0x58], eax
jne 0x14023dbfb
test byte [rbx + r12*8 + 3], 0x20
je 0x14023ddfe
cmp byte [r15 + 0x25], 0
je 0x14023dc46
test r13, r13
jne 0x14023dc31
mov r9, qword [rsp + 0x50]
movsxd rax, dword [r15 + 0x1c]
lea rdi, [r15 + 0x5c]
imul rax, rax, 0x38
mov ebx, dword [rax + r9 + 0x20]
mov dword [r15 + 0x60], ebx
mov dword [rdi], ebx
mov rax, qword [rax + r9 + 8]
mov qword [r15 + 0x68], rax
jmp 0x14023dd60
mov eax, 0xbe01
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
jmp 0x14023e1b5
test byte [r15 + 0x28], 2
jne 0x14023dcd6
cmp byte [r13 + 0x6f], 1
je 0x14023dc62
mov qword [rbp + 0x48], 0
jmp 0x14023dc6e
lea rdx, [rbp + 0x48]
mov rcx, r13
call fcn.14022c280
cmp word [r13 + 0x56], 0
jne 0x14023dcb9
movsx rax, word [r13 + 0x72]
lea r8, [r13 + 0x38]
mov r10, qword [r13 + rax*8 + 0xa0]
movzx r9d, word [r13 + rax*2 + 0x74]
mov rcx, qword [r10 + 0x60]
movzx eax, byte [rcx + r9*2]
shl eax, 8
movsxd rdx, eax
movzx eax, byte [rcx + r9*2 + 1]
mov rcx, r10
or rdx, rax
movzx eax, word [r10 + 0x12]
and rdx, rax
add rdx, qword [r10 + 0x50]
call fcn.140228ab0
movzx eax, word [r13 + 0x50]
movzx ebx, word [r13 + 0x52]
lea rdi, [r15 + 0x5c]
add rax, qword [r13 + 0x40]
mov qword [r15 + 0x68], rax
mov eax, dword [rbp + 0x48]
mov dword [rdi], eax
jmp 0x14023dd42
lea rdi, [r15 + 0x5c]
mov rcx, r13
mov rdx, rdi
call fcn.14022c2f0
cmp word [r13 + 0x56], 0
jne 0x14023dd30
movsx rax, word [r13 + 0x72]
lea r8, [r13 + 0x38]
mov r10, qword [r13 + rax*8 + 0xa0]
movzx r9d, word [r13 + rax*2 + 0x74]
mov rcx, qword [r10 + 0x60]
movzx eax, byte [rcx + r9*2]
shl eax, 8
movsxd rdx, eax
movzx eax, byte [rcx + r9*2 + 1]
mov rcx, r10
or rdx, rax
movzx eax, word [r10 + 0x12]
and rdx, rax
add rdx, qword [r10 + 0x50]
call fcn.140228ab0
movzx eax, word [r13 + 0x50]
movzx ebx, word [r13 + 0x52]
add rax, qword [r13 + 0x40]
mov qword [r15 + 0x68], rax
mov eax, dword [rdi]
cmp eax, ebx
ja 0x14023dd4e
mov dword [r15 + 0x60], eax
jmp 0x14023dd52
mov dword [r15 + 0x60], ebx
mov rcx, qword [rsp + 0x70]
cmp eax, dword [rcx + 0x68]
ja 0x140241dfd
mov rax, qword [rsp + 0x60]
mov rcx, qword [r15 + 0x68]
mov eax, dword [rax + 0x7c]
mov dword [r15 + 0x58], eax
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x14023dd84
movzx ecx, al
mov eax, 1
mov dword [rbp - 0x3c], ecx
jmp 0x14023dd93
lea rdx, [rbp - 0x3c]
call fcn.1402193b0
mov ecx, dword [rbp - 0x3c]
movzx eax, al
mov rdx, qword [rbp - 0x70]
movzx eax, al
mov dword [r15 + 0x64], eax
xor eax, eax
mov word [r15 + 0x22], ax
mov dword [rdx], ecx
cmp ebx, ecx
jae 0x14023ddb3
mov qword [r15 + 0x68], rax
mov dword [r15 + 0x60], eax
cmp ecx, 0x18003
ja 0x14023ddbf
cmp ecx, dword [rdi]
jbe 0x14023de02
lea r9, [0x14036fb6c]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0x10f5d
mov ecx, 0xb
call fcn.140217b90
mov ecx, 0xb
mov dword [rsp + 0x44], ecx
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
jmp 0x1402417ef
mov rdx, qword [rbp - 0x70]
movzx eax, word [r15 + 0x22]
cmp eax, esi
jg 0x14023e076
mov eax, dword [rdx]
cmp dword [r15 + 0x64], eax
jae 0x14023e033
mov r12, qword [r15 + 0x68]
test r12, r12
jne 0x14023de7c
xor eax, eax
mov rcx, r13
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
mov qword [rbp], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov r9d, dword [r15 + 0x28]
mov r8d, dword [rdx]
shr r9d, 1
lea rax, [rbp - 0x18]
xor edx, edx
not r9d
mov qword [rsp + 0x20], rax
and r9d, 1
call fcn.140234b70
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023dde6
mov r12, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x70]
movzx r14d, word [r15 + 0x22]
mov ebx, dword [r15 + 0x64]
mov r13d, dword [rdx]
lea rdi, [r14*4]
add rbx, r12
mov eax, r14d
mov esi, dword [rdi + rdx]
add r13, r12
nop dword [rax]
movzx eax, byte [rbx]
cmp al, 0x80
jae 0x14023deb2
movzx eax, al
inc rbx
mov dword [rbp - 0x28], eax
jmp 0x14023decb
lea rdx, [rbp - 0x28]
mov rcx, rbx
call fcn.1402193b0
mov rdx, qword [rbp - 0x70]
movzx eax, al
add rbx, rax
mov eax, dword [rbp - 0x28]
mov dword [rdi + r15 + 0x70], eax
cmp eax, 0xc
jb 0x14023dedc
add eax, 0xfffffff4
shr eax, 1
jmp 0x14023deeb
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x32b138]
add esi, eax
mov dword [rbp - 0x3c], esi
cmp esi, eax
jb 0x14023df12
inc r14d
movsxd rax, r14d
lea rdi, [rax*4]
mov dword [rdi + rdx], esi
cmp r14d, dword [rbp - 0x80]
jg 0x14023df16
cmp rbx, r13
jb 0x14023dea0
jmp 0x14023df16
lea rbx, [r13 + 1]
mov eax, ebx
mov word [r15 + 0x22], r14w
sub eax, r12d
cmp qword [r15 + 0x68], 0
mov dword [r15 + 0x64], eax
jne 0x14023dffe
movzx eax, word [rbp + 0xc]
mov r12d, 0x2460
test r12w, ax
je 0x14023dfd3
mov ecx, 0x2000
test cx, ax
je 0x14023df65
mov rdx, qword [rbp]
lea rcx, [rbp - 0x18]
call fcn.140234070
lea rcx, [rbp - 0x18]
call fcn.1402341c0
jmp 0x14023dfd3
mov ecx, 0x400
test cx, ax
je 0x14023df80
mov rcx, qword [rbp - 0x10]
call qword [rbp + 0x10]
mov qword [rbp + 0x10], 0
jmp 0x14023dfd3
movzx eax, byte [rbp + 0xc]
test al, 0x20
je 0x14023df93
mov rcx, qword [rbp]
call fcn.14021f560
jmp 0x14023dfd3
test al, 0x40
je 0x14023dfd3
mov rdx, qword [rbp]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xf8]
mov qword [rdx + 8], rcx
mov qword [rax + 0xf8], rdx
test byte [rbp + 0xc], 0x20
je 0x14023dfbf
mov rcx, qword [rbp]
call fcn.14021f560
movzx eax, word [rbp + 0xc]
mov ecx, 0xbe01
and ax, cx
or ax, 1
mov word [rbp + 0xc], ax
mov rdx, qword [rbp + 0x18]
test rdx, rdx
je 0x14023dfed
mov rcx, qword [rbp - 0x18]
call fcn.140215b70
mov qword [rbp + 0x18], 0
mov eax, 1
mov qword [rbp - 0x10], 0
mov word [rbp + 0xc], ax
cmp rbx, r13
ja 0x140241bc4
mov eax, dword [r15 + 0x5c]
cmp esi, eax
ja 0x140241bc4
cmp rbx, r13
jne 0x14023e020
cmp esi, eax
jne 0x140241bc4
mov r13, qword [rbp - 0x30]
mov r14, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x70]
mov r12, qword [rbp - 0x68]
mov esi, dword [rbp - 0x80]
movzx eax, word [r15 + 0x22]
cmp eax, esi
jg 0x14023e076
mov rax, qword [rsp + 0x68]
cmp byte [rax + r12*8 + 1], 0xf8
jne 0x14023e061
mov rdx, qword [rax + r12*8 + 0x10]
mov r8d, 0x800
mov rcx, r14
call fcn.1402347a0
jmp 0x14023e1b1
mov eax, 0xbe01
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
jmp 0x14023e1b1
movsxd rsi, esi
mov eax, dword [rdx + rsi*4 + 4]
cmp dword [r15 + 0x60], eax
jb 0x14023e0b4
mov eax, 0x2460
test word [r14 + 0x24], ax
je 0x14023e09b
mov rcx, r14
call fcn.140234140
mov rdx, qword [rbp - 0x70]
mov ecx, dword [rdx + rsi*4]
mov edx, dword [r15 + rsi*4 + 0x70]
mov r8, r14
add rcx, qword [r15 + 0x68]
call fcn.140238540
jmp 0x14023e1a8
mov rax, qword [rsp + 0x68]
mov ebx, dword [r15 + rsi*4 + 0x70]
movzx eax, byte [rax + r12*8 + 3]
mov dword [rbp - 0x28], ebx
test al, 0xc0
je 0x14023e0d9
cmp ebx, 0xc
jb 0x14023e0d5
test bl, 1
je 0x14023e0f8
test al, al
js 0x14023e0f8
cmp ebx, 0xc
jb 0x14023e0e5
lea edi, [rbx - 0xc]
shr edi, 1
jmp 0x14023e0f4
lea rcx, [0x140000000]
movzx edi, byte [rbx + rcx + 0x32b138]
test edi, edi
jne 0x14023e10e
mov eax, 0
lea rcx, [rbp + 0x48]
cmp ebx, 0xd
cmova rcx, rax
mov qword [rbp + 0x18], rax
jmp 0x14023e173
xor eax, eax
lea rcx, [rbp - 0x18]
mov rdx, r14
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
mov qword [rbp], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
call fcn.1402348b0
mov r9d, dword [r15 + 0x28]
mov rcx, qword [rbp - 0x70]
shr r9d, 1
lea rax, [rbp - 0x18]
mov edx, dword [rcx + rsi*4]
not r9d
mov r8d, edi
mov rcx, r13
and r9d, 1
mov qword [rsp + 0x20], rax
call fcn.140234b70
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023dde6
mov rcx, qword [rbp - 0x10]
mov r8, r14
mov edx, ebx
call fcn.140238540
cmp qword [rbp + 0x18], 0
je 0x14023e1a8
mov eax, 0xe7ff
and word [r14 + 0x24], ax
mov eax, 0x200
or word [r14 + 0x24], ax
mov rax, qword [rbp - 0x10]
mov qword [r14 + 8], rax
mov rax, qword [rbp + 0x18]
mov qword [r14 + 0x30], rax
movzx eax, byte [rsp + 0x58]
mov byte [r14 + 0x26], al
mov ecx, dword [rsp + 0x44]
mov r8d, 0x1000
test word [r14 + 0x24], r8w
je 0x1402417ca
mov rcx, r14
call fcn.140233e40
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
test eax, eax
jne 0x140241fb0
mov ecx, dword [rsp + 0x44]
mov r13, qword [rsp + 0x78]
mov r14, qword [rsp + 0x68]
jmp 0x1402417ef
movsxd rax, dword [r14 + r12*8 + 4]
mov rdi, qword [r14 + r12*8 + 0x10]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r10
test al, al
je 0x14023d4a2
movzx r12d, byte [rsp + 0x58]
nop dword [rax]
nop dword [rax + rax]
movzx r8d, r12b
movzx edx, al
mov rcx, rbx
lea rdi, [rdi + 1]
call fcn.14023c400
movzx eax, byte [rdi]
add rbx, 0x38
test al, al
jne 0x14023e220
jmp 0x14023e66d
mov rdx, qword [rsp + 0x68]
mov r14, r11
mov r15d, r11d
movsxd rax, dword [rdx + r12*8 + 4]
mov rbx, qword [rdx + r12*8 + 0x10]
mov r9d, r11d
mov dword [rbp - 0x80], r11d
imul r13, rax, 0x38
mov eax, dword [rdx + r12*8 + 8]
add r13, r10
dec eax
mov qword [rbp - 0x20], r13
cdqe
imul rcx, rax, 0x38
movsxd rax, dword [rdx + r12*8 + 0xc]
imul rax, rax, 0x38
add rcx, r13
mov qword [rbp - 0x58], rcx
movzx ecx, byte [rsi + 0x8b]
add rax, r10
mov dword [rbp - 0x78], ecx
mov qword [rsp + 0x78], rax
test rbx, rbx
je 0x14023e2d9
movzx eax, byte [rbx]
mov rdi, r13
movzx r13d, byte [rsp + 0x58]
nop word [rax + rax]
movzx r8d, r13b
movzx edx, al
mov rcx, rdi
call fcn.14023c400
movzx eax, byte [rbx + 1]
lea rbx, [rbx + 1]
add rdi, 0x38
test al, al
jne 0x14023e2b0
mov r13, qword [rbp - 0x20]
mov ecx, dword [rbp - 0x78]
mov r9d, r14d
mov rsi, qword [rbp - 0x58]
mov r12d, 1
mov edx, ecx
mov rcx, rsi
call fcn.1402383e0
mov edi, eax
cmp eax, 0xc
jb 0x14023e2fb
lea ebx, [rdi - 0xc]
shr ebx, 1
jmp 0x14023e30a
lea rcx, [0x140000000]
movzx ebx, byte [rdi + rcx + 0x32b138]
mov eax, 0x4000
test word [rsi + 0x24], ax
je 0x14023e32f
test r14, r14
je 0x14023e324
mov rcx, rsi
call fcn.140233ec0
jmp 0x14023e32f
add r9d, dword [rsi + 0x18]
sub ebx, dword [rsi + 0x18]
mov dword [rbp - 0x80], r9d
movsxd rax, ebx
xor r11d, r11d
add r14, rax
cmp edi, 0x7f
ja 0x14023e342
mov eax, r12d
jmp 0x14023e360
mov rcx, rdi
mov eax, r11d
nop dword [rax + rax]
shr rcx, 7
inc eax
test rcx, rcx
je 0x14023e360
cmp eax, 9
jl 0x14023e350
mov ecx, dword [rbp - 0x78]
mov r9d, dword [rbp - 0x80]
sub rsi, 0x38
add r15d, eax
cmp rsi, r13
jae 0x14023e2e3
mov r12, qword [rbp - 0x58]
cmp r15d, 0x7e
jle 0x14023e3c4
movsxd rax, r15d
mov edx, r11d
nop word [rax + rax]
shr rax, 7
inc edx
test rax, rax
je 0x14023e3a0
cmp edx, 9
jl 0x14023e390
add r15d, edx
mov eax, r11d
movsxd rcx, r15d
nop dword [rax]
shr rcx, 7
inc eax
test rcx, rcx
je 0x14023e3c0
cmp eax, 9
jl 0x14023e3b0
cmp edx, eax
jge 0x14023e3c7
inc r15d
mov rcx, qword [rsp + 0x70]
movsxd rsi, r15d
movsxd rax, dword [rcx + 0x68]
add rsi, r14
mov qword [rbp - 0x20], rsi
cmp rsi, rax
jg 0x140241dfd
mov rdi, qword [rsp + 0x78]
xor r8d, r8d
mov edx, esi
mov rcx, rdi
call fcn.140233ce0
test eax, eax
jne 0x14023f228
mov rdi, qword [rdi + 8]
mov r9d, 0x80
cmp r15d, r9d
jae 0x14023e418
mov esi, 1
mov byte [rdi], r15b
mov eax, esi
jmp 0x14023e452
test r15d, 0xffffc000
jne 0x14023e43c
mov eax, r15d
shr eax, 7
or al, r9b
mov byte [rdi], al
movzx eax, r15b
and al, 0x7f
mov byte [rdi + 1], al
mov eax, 2
jmp 0x14023e44d
mov edx, r15d
mov rcx, rdi
call fcn.1402190f0
mov r9d, 0x80
mov esi, 1
mov r14d, dword [rbp - 0x78]
movzx ebx, al
nop dword [rax]
mov edx, r14d
mov rcx, r13
call fcn.1402383e0
movsxd rcx, ebx
mov r10d, eax
cmp eax, r9d
jae 0x14023e47e
mov byte [rcx + rdi], r10b
mov eax, esi
jmp 0x14023e4ac
add rcx, rdi
test r10d, 0xffffc000
jne 0x14023e4a4
mov eax, r10d
shr eax, 7
or al, 0x80
mov byte [rcx], al
movzx eax, r10b
and al, 0x7f
mov byte [rcx + 1], al
mov eax, 2
jmp 0x14023e4ac
mov rdx, r10
call fcn.1402190f0
movzx eax, al
movsxd rcx, r15d
mov r8d, r10d
add rcx, rdi
mov rdx, r13
add ebx, eax
call fcn.1402384b0
add r13, 0x38
mov r9d, 0x80
add r15d, eax
cmp r13, r12
jbe 0x14023e460
mov r13, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x20]
mov eax, 0x10
xor r11d, r11d
mov word [r13 + 0x24], ax
mov eax, dword [rbp - 0x80]
mov dword [r13 + 0x20], esi
mov qword [r13 + 0x28], r11
test eax, eax
je 0x14023e507
mov dword [r13 + 0x18], eax
mov eax, 0x4010
mov word [r13 + 0x24], ax
mov ecx, dword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
inc ecx
mov byte [r13 + 0x26], 1
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov qword [rbp + 0x158], r11
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx]
cmp dword [rcx + 0x30], 0
jne 0x14023e55e
mov esi, dword [rsp + 0x40]
mov rax, r11
mov ecx, r11d
mov dword [rsp + 0x44], ecx
mov qword [r13 + 0x18], rax
jmp 0x1402417f2
lea rdx, [rbp + 0x158]
call fcn.1402316d0
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov dword [rsp + 0x44], eax
mov rax, qword [rbp + 0x158]
mov ecx, dword [rsp + 0x44]
mov qword [r13 + 0x18], rax
jmp 0x1402417f2
mov r12d, dword [r14 + r12*8 + 4]
mov rdx, qword [rbp - 0x68]
mov r14, qword [r14 + rdx*8 + 0x10]
mov dword [rbp - 0x70], r12d
test r12d, r12d
jne 0x14023e69e
cmp dword [r15 + 0xa4], r12d
jg 0x140241bfb
mov rbx, r14
test r14, r14
jne 0x14023e5be
mov ebx, r11d
jmp 0x14023e5d5
cmp byte [r14], 0
je 0x14023e5cc
inc rbx
cmp byte [rbx], 0
jne 0x14023e5c4
sub ebx, r14d
and ebx, 0x3fffffff
mov r8d, dword [r15 + 0x300]
xor edx, edx
mov rcx, r15
add r8d, dword [r15 + 0x2fc]
call fcn.14027d110
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd8
lea edx, [rbx + 0x21]
mov rcx, r15
call fcn.140215e40
mov rdi, rax
test rax, rax
je 0x14023e668
lea r9, [rax + 0x20]
lea ecx, [rbx + 1]
mov rdx, r14
movsxd r8, ecx
mov rcx, r9
mov qword [rax], r9
call fcn.1402b7460
cmp byte [r15 + 0x4e], 0
je 0x14023e639
mov byte [r15 + 0x4e], 0
mov byte [r15 + 0x55], 1
jmp 0x14023e640
inc dword [r15 + 0x2fc]
mov rax, qword [r15 + 0x2f0]
mov qword [rdi + 0x18], rax
mov rax, qword [r15 + 0x308]
mov qword [r15 + 0x2f0], rdi
mov qword [rdi + 8], rax
mov rax, qword [r15 + 0x310]
mov qword [rdi + 0x10], rax
mov r14, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
xor r11d, r11d
mov r10, qword [rsp + 0x50]
mov r9d, 1
mov ebx, dword [rsp + 0x48]
mov edx, 0x80
mov edi, 0x2460
mov r8d, 0x1000
jmp 0x14023c5e0
mov rdi, qword [rsp + 0x70]
mov r15d, r11d
mov rsi, qword [rdi + 0x2f0]
test rsi, rsi
je 0x14023e6cd
mov rcx, qword [rsi]
mov rdx, r14
call fcn.140218840
test eax, eax
je 0x14023e6ff
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x14023e6b2
mov rcx, qword [rsp + 0x60]
lea r8, str.no_such_savepoint:__s
mov r9, r14
mov rdx, rdi
add rcx, 0x48
mov r15, rdi
call fcn.140216090
mov esi, dword [rsp + 0x40]
mov ecx, 1
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
cmp dword [rdi + 0xa4], 0
jle 0x14023e712
cmp r12d, 1
je 0x140241c22
cmp qword [rsi + 0x18], 0
jne 0x14023e775
cmp byte [rdi + 0x55], 0
je 0x14023e775
mov r14d, 1
mov dword [rbp - 0x78], r14d
cmp r12d, r14d
jne 0x14023e77f
mov rbx, qword [rsp + 0x60]
mov rdx, qword [rbx]
mov rax, qword [rdx + 0x310]
add rax, qword [rdx + 0x308]
test rax, rax
jg 0x140241c5a
mov rcx, rbx
mov byte [rdi + 0x4e], r14b
call fcn.140237a40
cmp eax, 5
je 0x140241c37
mov byte [rdi + 0x55], 0
mov ecx, dword [rbx + 0x84]
mov dword [rsp + 0x44], ecx
jmp 0x14023e85c
xor ecx, ecx
mov r14d, ecx
mov dword [rbp - 0x78], ecx
jmp 0x14023e781
xor ecx, ecx
mov eax, dword [rdi + 0x2fc]
sub eax, r15d
lea r15d, [rax - 1]
cmp r12d, 2
jne 0x14023e7de
mov rax, qword [rsp + 0x70]
mov edi, ecx
cmp dword [rax + 0x28], 0
jle 0x14023e7e1
mov rbx, rcx
mov r12, rax
mov r14d, 4
nop dword [rax]
mov rcx, qword [r12 + 0x20]
mov edx, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.14022bd50
inc edi
lea rbx, [rbx + 0x20]
cmp edi, dword [r12 + 0x28]
jl 0x14023e7b0
mov r14d, dword [rbp - 0x78]
mov r12d, dword [rbp - 0x70]
mov rax, qword [rsp + 0x70]
jmp 0x14023e7e1
mov rax, rdi
xor ecx, ecx
mov edi, ecx
cmp dword [rax + 0x28], ecx
jle 0x14023e822
mov ebx, ecx
nop dword [rax]
mov rcx, qword [rax + 0x20]
mov r8d, r15d
mov edx, r12d
mov rcx, qword [rbx + rcx + 8]
call fcn.14022bf70
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cce
mov rax, qword [rsp + 0x70]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x14023e7f0
mov rdi, qword [rsp + 0x70]
cmp r12d, 2
jne 0x14023e85c
test byte [rdi + 0x2c], r12b
je 0x14023e85c
mov rax, qword [rdi + 8]
test rax, rax
je 0x14023e850
nop dword [rax]
or dword [rax + 0x8c], 0x20
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x14023e840
mov rcx, rdi
call fcn.1402526a0
or dword [rdi + 0x2c], 2
cmp qword [rdi + 0x2f0], rsi
je 0x14023e899
nop word [rax + rax]
mov rdx, qword [rdi + 0x2f0]
mov rcx, rdi
mov rax, qword [rdx + 0x18]
mov qword [rdi + 0x2f0], rax
call fcn.140215b70
dec dword [rdi + 0x2fc]
cmp qword [rdi + 0x2f0], rsi
jne 0x14023e870
cmp r12d, 1
jne 0x14023e8c6
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, rdi
mov qword [rdi + 0x2f0], rax
call fcn.140215b70
test r14d, r14d
jne 0x14024179c
dec dword [rdi + 0x2fc]
jmp 0x14023e8e5
mov rax, qword [rsi + 8]
mov qword [rdi + 0x308], rax
mov rax, qword [rsi + 0x10]
mov qword [rdi + 0x310], rax
test r14d, r14d
jne 0x14024179c
mov r8d, r15d
mov r15, qword [rsp + 0x70]
mov edx, r12d
mov rcx, r15
call fcn.14027d110
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd3
mov esi, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
jmp 0x1402417ef
mov edx, dword [r14 + r12*8 + 8]
test edx, edx
je 0x14023e92b
test dword [r15 + 0x2c], 0x2000000
jne 0x140241c86
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
test rsi, rsi
je 0x14023ea67
mov rcx, rsi
call fcn.14022aa60
mov ecx, eax
mov dword [rsp + 0x44], eax
cmp eax, 5
je 0x140241c93
test eax, eax
jne 0x140241cd3
cmp dword [r14 + r12*8 + 8], eax
je 0x14023ea39
mov rbx, qword [rsp + 0x60]
test byte [rbx + 0x8c], 0x80
je 0x14023ea39
cmp byte [r15 + 0x4e], al
je 0x14023e996
cmp dword [r15 + 0xa0], 1
jle 0x14023ea39
cmp dword [rbx + 0x9c], 0
jne 0x14023e9ba
inc dword [r15 + 0x300]
mov ecx, dword [r15 + 0x300]
add ecx, dword [r15 + 0x2fc]
mov dword [rbx + 0x9c], ecx
mov r8d, dword [rbx + 0x9c]
xor edx, edx
mov rcx, r15
dec r8d
call fcn.14027d110
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023ea1d
mov edi, dword [rbx + 0x9c]
mov rbx, qword [rsi + 8]
mov rcx, rsi
call fcn.140227da0
mov rcx, qword [rbx]
mov edx, edi
call fcn.140224730
cmp byte [rsi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x14023ea18
dec dword [rsi + 0x14]
jne 0x14023ea18
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14023ea14
call qword [0x1404191a8]
mov byte [rsi + 0x12], 0
mov rbx, qword [rsp + 0x60]
mov rax, qword [r15 + 0x308]
mov qword [rbx + 0xd0], rax
mov rax, qword [r15 + 0x310]
mov qword [rbx + 0xd8], rax
lea r8, [rbp + 0x38]
mov edx, 1
mov rcx, rsi
call fcn.140231570
mov rax, qword [r15 + 0x20]
movsxd rcx, dword [r14 + r12*8 + 4]
mov ebx, dword [rbp + 0x38]
shl rcx, 5
xor r11d, r11d
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rcx + 4]
jmp 0x14023ea70
mov ebx, r11d
mov eax, r11d
mov dword [rbp + 0x38], ebx
cmp byte [r14 + r12*8 + 3], 0
je 0x14023d53e
cmp ebx, dword [r14 + r12*8 + 0xc]
jne 0x14023ea8e
cmp eax, dword [r14 + r12*8 + 0x10]
je 0x14023d53e
mov rdi, qword [rsp + 0x60]
mov rcx, r15
mov rdx, qword [rdi + 0x48]
call fcn.140215b70
lea rdx, str.database_schema_has_changed
mov rcx, r15
call fcn.140215fb0
mov qword [rdi + 0x48], rax
movsxd rdx, dword [r14 + r12*8 + 4]
mov rax, qword [r15 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], ebx
je 0x14023ead3
mov rcx, r15
call fcn.140252650
mov esi, dword [rsp + 0x40]
mov rax, rdi
mov ecx, 0x11
or dword [rax + 0x8c], 0x20
mov dword [rsp + 0x44], ecx
jmp 0x1402417ef
movsxd rax, dword [r14 + r12*8 + 4]
mov rcx, qword [r15 + 0x20]
mov edx, dword [r14 + r12*8 + 0xc]
shl rax, 5
lea r8, [rbp + 0x58]
mov rcx, qword [rax + rcx + 8]
call fcn.140231570
movsxd rax, dword [rbp + 0x58]
mov qword [r13 + 0x18], rax
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 0xc]
movsxd rbx, dword [r14 + r12*8 + 4]
shl rbx, 5
add rbx, qword [r15 + 0x20]
imul rdi, rax, 0x38
add rdi, r10
mov rcx, rdi
call fcn.140234360
mov r8d, dword [rdi + 0x18]
mov edx, dword [r14 + r12*8 + 8]
mov rcx, qword [rbx + 8]
call fcn.140231610
mov dword [rsp + 0x44], eax
mov eax, dword [r14 + r12*8 + 8]
cmp eax, 1
jne 0x14023eb6d
mov rcx, qword [rbx + 0x18]
mov eax, dword [rdi + 0x18]
mov dword [rcx], eax
or dword [r15 + 0x2c], 2
jmp 0x14023eb7d
cmp eax, 2
jne 0x14023eb7d
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rdi + 0x18]
mov byte [rcx + 0x70], al
cmp dword [r14 + r12*8 + 4], 1
jne 0x14023c9a3
mov rax, qword [r15 + 8]
test rax, rax
je 0x14023ebb0
nop dword [rax]
nop word [rax + rax]
or dword [rax + 0x8c], 0x20
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x14023eba0
and dword [rsi + 0x8c], 0xffffffdf
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
test byte [rsi + 0x8c], 0x20
jne 0x140241ced
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
mov esi, r11d
movsxd r15, dword [rdx + r12*8 + 8]
movsxd r12, dword [rdx + r12*8 + 0xc]
mov r14, r11
mov rax, r12
shl rax, 5
add rax, qword [rcx + 0x20]
mov r13, qword [rax + 8]
cmp dil, 0x35
jne 0x14023ec20
mov rax, qword [rax + 0x18]
mov edi, r9d
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x60]
cmp cl, byte [rax + 0x8b]
jae 0x14023ec23
mov byte [rax + 0x8b], cl
jmp 0x14023ec23
mov edi, r11d
mov rcx, qword [rbp - 0x68]
test byte [rdx + rcx*8 + 3], 2
je 0x14023ec57
imul rbx, r15, 0x38
mov rax, r15
add rbx, r10
mov rcx, rbx
call fcn.140234360
mov r15d, dword [rbx + 0x18]
cmp r15d, 2
jl 0x140241ca7
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rsp + 0x68]
movzx eax, byte [rdx + rcx*8 + 1]
cmp al, 0xfa
jne 0x14023ec73
mov r14, qword [rdx + rcx*8 + 0x10]
movzx esi, word [r14 + 8]
movzx eax, word [r14 + 6]
add esi, eax
jmp 0x14023ec7b
cmp al, 0xf2
jne 0x14023ec7b
mov esi, dword [rdx + rcx*8 + 0x10]
mov edx, dword [rdx + rcx*8 + 4]
mov rcx, qword [rsp + 0x60]
mov r9d, r12d
mov r8d, esi
mov dword [rsp + 0x20], 1
call fcn.14023c290
mov rbx, rax
test rax, rax
je 0x14023f228
mov rcx, qword [rax]
or dword [rax + 0x28], 4
mov r9, r14
mov qword [rsp + 0x20], rcx
mov r8d, edi
mov edx, r15d
mov rcx, r13
mov byte [rax + 0x25], 1
call fcn.14022c050
mov rdx, qword [rbp - 0x68]
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
mov dword [rsp + 0x44], eax
mov rax, qword [rbx]
mov qword [rbx + 0x10], r14
mov r14, qword [rsp + 0x68]
movzx ecx, byte [r14 + rdx*8 + 3]
xor r11d, r11d
and cl, 1
mov byte [rax + 0x71], cl
cmp byte [r14 + rdx*8 + 1], 0xfa
mov ecx, dword [rsp + 0x44]
mov eax, r11d
setne al
add eax, eax
xor eax, dword [rbx + 0x28]
and eax, 2
xor dword [rbx + 0x28], eax
jmp 0x1402417f2
mov r8d, dword [r14 + r12*8 + 8]
mov edx, dword [r14 + r12*8 + 4]
mov dword [rsp + 0x20], r9d
or r9d, 0xffffffff
mov rcx, rsi
call fcn.14023c290
mov rdi, rax
test rax, rax
je 0x140241fac
mov rbx, qword [rsp + 0x68]
mov byte [rax + 0x25], 1
mov dword [rsp + 0x28], 0x41e
movzx ecx, byte [rbx + r12*8 + 3]
lea r9, [rax + 8]
mov r8, r15
or ecx, 5
xor edx, edx
mov dword [rsp + 0x20], ecx
mov rcx, qword [r15]
call fcn.140229930
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023ee41
mov rcx, qword [rdi + 8]
lea edx, [rax + 1]
call fcn.14022aa60
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023ee41
mov r15, qword [rbx + r12*8 + 0x10]
test r15, r15
je 0x14023ee16
mov rsi, qword [rdi + 8]
movzx ebx, byte [rbx + r12*8 + 3]
mov rcx, rsi
or ebx, 2
call fcn.140227da0
lea rdx, [rbp + 0x54]
mov r8d, ebx
mov rcx, rsi
call fcn.140230bf0
cmp byte [rsi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x14023ede7
dec dword [rsi + 0x14]
jne 0x14023ede7
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14023eddf
call qword [0x1404191a8]
mov eax, dword [rsp + 0x44]
mov byte [rsi + 0x12], 0
test eax, eax
jne 0x14023ee10
mov rax, qword [rdi]
mov edx, dword [rbp + 0x54]
mov rcx, qword [rdi + 8]
mov r9, r15
mov r8d, 1
mov qword [rsp + 0x20], rax
mov qword [rdi + 0x10], r15
call fcn.14022c050
mov dword [rsp + 0x44], eax
and dword [rdi + 0x28], 0xfffffffd
jmp 0x14023ee3c
mov rax, qword [rdi]
mov rcx, qword [rdi + 8]
mov ebx, 1
xor r9d, r9d
mov r8d, ebx
mov edx, ebx
mov qword [rsp + 0x20], rax
call fcn.14022c050
or dword [rdi + 0x28], 2
mov dword [rsp + 0x44], eax
mov r15, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
cmp byte [r14 + r12*8 + 3], 8
mov eax, r11d
setne al
shl eax, 2
xor eax, dword [rdi + 0x28]
and eax, 4
xor dword [rdi + 0x28], eax
jmp 0x1402417f2
mov r8d, dword [r14 + r12*8 + 8]
mov edx, dword [r14 + r12*8 + 4]
mov dword [rsp + 0x20], r9d
or r9d, 0xffffffff
mov rcx, rsi
call fcn.14023c290
test rax, rax
je 0x140241fac
mov rcx, qword [r14 + r12*8 + 0x10]
mov rdx, rax
mov qword [rax + 0x10], rcx
mov rcx, r15
call fcn.140243630
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
mov r8d, dword [r14 + r12*8 + 0xc]
mov edx, dword [r14 + r12*8 + 4]
or r9d, 0xffffffff
mov rcx, rsi
mov dword [rsp + 0x20], r11d
call fcn.14023c290
test rax, rax
je 0x140241fac
mov byte [rax + 0x25], 1
mov ecx, dword [r14 + r12*8 + 8]
or dword [rax + 0x28], 2
mov dword [rax + 0x1c], ecx
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
mov rdx, qword [rsi + 0x60]
mov rcx, rsi
mov rdx, qword [rdx + rax*8]
call fcn.140236f50
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
xor r11d, r11d
mov qword [rax + rcx*8], r11
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
mov rax, qword [rsi + 0x60]
movsxd rcx, dword [r14 + r12*8 + 4]
movzx esi, byte [r14 + r12*8]
mov rbx, qword [rax + rcx*8]
test byte [rbx + 0x28], 2
mov byte [rbx + 0x25], 0
je 0x14023f02d
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rdi, rax, 0x38
add rdi, r10
mov rcx, rdi
call fcn.14023c380
mov rcx, rdi
call fcn.140234210
mov byte [rbx + 0x26], 0
movzx ecx, word [rdi + 0x24]
mov r14, rax
test cl, 4
jne 0x14023efb2
test cl, 8
jne 0x14023ef87
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov ecx, dword [r14 + r12*8 + 8]
jmp 0x14023e673
movsd xmm0, qword [rdi + 0x10]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
comisd xmm1, xmm0
jbe 0x14023efa4
test sil, 1
jne 0x14023efb2
dec esi
jmp 0x14023efb2
comisd xmm0, xmm1
jbe 0x14023efb2
test sil, 1
je 0x14023efb2
inc esi
mov rcx, qword [rbx]
lea rax, [rbp - 0x7c]
xor r9d, r9d
mov r8, r14
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.14022cdf0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd3
cmp dword [rbp - 0x7c], eax
jne 0x14023efe6
mov byte [rbx + 0x26], 1
mov qword [rbx + 0x48], r14
mov r14, qword [rsp + 0x68]
xor r11d, r11d
mov byte [rbx + 0x27], 0
mov dword [rbx + 0x58], r11d
mov eax, dword [rbp - 0x7c]
cmp esi, 0x3d
jl 0x14023f0c3
test eax, eax
js 0x14023f0b1
jne 0x14023f015
cmp esi, 0x3e
je 0x14023f0b1
mov dword [rbp - 0x7c], r11d
mov ecx, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
mov rax, qword [rbx + 0x10]
mov ecx, dword [r14 + r12*8 + 0x10]
mov qword [rbp + 0x1e0], rax
mov word [rbp + 0x1e8], cx
lea eax, [rsi - 1]
test al, 1
mov eax, r9d
mov ecx, 0xffffffff
cmovne eax, ecx
mov byte [rbp + 0x1ea], al
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x4000
add rcx, r10
mov qword [rbp + 0x1f0], rcx
test word [rcx + 0x24], ax
je 0x14023f07d
call fcn.140233ec0
mov rcx, qword [rbx]
lea rax, [rbp - 0x7c]
lea rdx, [rbp + 0x1e0]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.14022cdf0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd3
mov byte [rbx + 0x26], al
jmp 0x14023efeb
mov dword [rbp - 0x7c], r11d
mov rcx, qword [rbx]
lea rdx, [rbp - 0x7c]
call fcn.14022d340
jmp 0x14023f0f0
test eax, eax
jg 0x14023f0e0
jne 0x14023f0ce
cmp esi, 0x3b
je 0x14023f0e0
mov rax, qword [rbx]
mov ecx, r11d
cmp byte [rax + 0x6f], 1
setne cl
mov dword [rbp - 0x7c], ecx
jmp 0x14023f105
mov dword [rbp - 0x7c], r11d
mov rcx, qword [rbx]
lea rdx, [rbp - 0x7c]
call fcn.14022d4e0
mov dword [rsp + 0x44], eax
mov ecx, eax
test eax, eax
jne 0x140241cd3
xor r11d, r11d
mov byte [rbx + 0x26], r11b
cmp dword [rbp - 0x7c], 0
je 0x14023f019
mov ecx, dword [r14 + r12*8 + 8]
mov rsi, qword [rsp + 0x60]
dec ecx
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 0x25], 0
movsxd rax, dword [r14 + r12*8 + 8]
imul rcx, rax, 0x38
add rcx, r10
call fcn.140234210
mov word [rbx + 0x26], 0x100
mov qword [rbx + 0x40], rax
jmp 0x14023e66d
mov rax, qword [rsi + 0x60]
movsxd rcx, dword [r14 + r12*8 + 4]
mov r15, r11
mov r14, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x68]
movsxd rax, dword [rcx + r12*8 + 0xc]
imul rsi, rax, 0x38
add rsi, r10
cmp dword [rcx + r12*8 + 0x10], 0
jle 0x14023f1f0
mov rax, qword [r14 + 0x10]
mov ebx, r11d
mov qword [rbp + 0x178], rax
movzx ecx, word [rcx + r12*8 + 0x10]
mov qword [rbp + 0x188], rsi
mov word [rbp + 0x180], cx
cmp r11w, cx
jae 0x14023f1e7
mov rdi, r11
mov r12d, 0x4000
test word [rdi + rsi + 0x24], r12w
je 0x14023f1d6
movsxd rax, ebx
imul rcx, rax, 0x38
add rcx, rsi
call fcn.140233ec0
mov rsi, qword [rbp + 0x188]
movzx ecx, word [rbp + 0x180]
inc ebx
movzx eax, cx
add rdi, 0x38
cmp ebx, eax
jl 0x14023f1b1
mov r12, qword [rbp - 0x68]
lea rdi, [rbp + 0x178]
jmp 0x14023f268
mov rbx, qword [r14 + 0x10]
lea rcx, [rbp + 0x280]
movzx eax, word [rbx + 6]
neg ecx
and ecx, 7
imul edx, eax, 0x38
add edx, 0x58
lea eax, [rcx + 0x107]
cmp edx, eax
jle 0x14023f232
mov rcx, qword [rbx + 0x10]
call fcn.140215e40
mov rdi, rax
mov r15, rax
test rax, rax
jne 0x14023f23f
mov r15, qword [rsp + 0x70]
jmp 0x140241fac
lea rdi, [rbp + 0x280]
movsxd rax, ecx
add rdi, rax
mov qword [rdi], rbx
lea rax, [rdi + 0x20]
mov r9, rdi
mov qword [rdi + 0x10], rax
movzx eax, word [rbx + 6]
inc ax
mov word [rdi + 8], ax
mov r8, qword [rsi + 8]
mov edx, dword [rsi + 0x20]
mov rcx, qword [r14 + 0x10]
call fcn.140238790
mov rbx, qword [rsp + 0x68]
mov byte [rdi + 0xa], 0
cmp byte [rbx + r12*8], 0x40
jne 0x14023f2a2
movzx edx, word [rbp + 0x180]
xor ecx, ecx
test rdx, rdx
jle 0x14023f2a2
mov rax, qword [rbp + 0x188]
add rax, 0x24
test byte [rax], 1
jne 0x14023f2e4
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14023f291
mov esi, dword [rsp + 0x40]
mov rcx, qword [r14]
lea rax, [rbp + 0x5c]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov qword [rsp + 0x20], rax
call fcn.14022cdf0
cmp dword [rbx + r12*8 + 0x10], 0
mov ecx, eax
mov dword [rsp + 0x44], eax
jne 0x14023f2f1
mov rdx, r15
mov r15, qword [rsp + 0x70]
mov rcx, r15
call fcn.140215b70
mov ecx, dword [rsp + 0x44]
jmp 0x14023f2f6
mov esi, dword [rbx + r12*8 + 8]
dec esi
mov dword [rsp + 0x40], esi
jmp 0x14023f2a6
mov r15, qword [rsp + 0x70]
test ecx, ecx
jne 0x1402417ec
mov eax, dword [rbp + 0x5c]
xor r11d, r11d
mov r9d, 1
test eax, eax
mov dword [r14 + 0x18], eax
mov byte [r14 + 0x27], r11b
mov dword [r14 + 0x58], r11d
mov ecx, r11d
sete cl
mov eax, r9d
sub al, cl
mov byte [r14 + 0x25], al
cmp byte [rbx + r12*8], 0x42
mov r14, rbx
jne 0x14023f36a
test ecx, ecx
je 0x14023f351
mov ecx, dword [rbx + r12*8 + 8]
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
dec ecx
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e685
mov ecx, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e685
test ecx, ecx
jne 0x14023f351
mov ecx, dword [r14 + r12*8 + 8]
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
dec ecx
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e685
movsxd rax, dword [r14 + r12*8 + 0xc]
movsxd rcx, dword [r14 + r12*8 + 4]
xor r9d, r9d
xor edx, edx
mov dword [rbp + 0x40], r11d
imul rbx, rax, 0x38
mov rax, qword [rsi + 0x60]
add rbx, r10
mov rdi, qword [rax + rcx*8]
mov r8, qword [rbx + 0x18]
lea rax, [rbp + 0x40]
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rax
call fcn.14022cdf0
mov ecx, dword [rbp + 0x40]
mov dword [rsp + 0x44], eax
mov rax, qword [rbx + 0x18]
test ecx, ecx
mov qword [rdi + 0x48], rax
sete al
xor r11d, r11d
mov dword [rdi + 0x58], r11d
mov byte [rdi + 0x27], r11b
mov byte [rdi + 0x26], al
mov byte [rdi + 0x25], 0
test ecx, ecx
je 0x14023f3fe
mov esi, dword [r14 + r12*8 + 8]
mov dword [rdi + 0x18], ecx
mov ecx, dword [rsp + 0x44]
dec esi
jmp 0x1402417f2
mov esi, dword [rsp + 0x40]
mov dword [rdi + 0x18], ecx
mov ecx, dword [rsp + 0x44]
jmp 0x1402417f2
mov rax, qword [rsi + 0x60]
movsxd rcx, dword [r14 + r12*8 + 4]
mov ebx, dword [rsp + 0x48]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
mov qword [r13 + 0x18], rax
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rdx, qword [rax + rcx*8]
mov ecx, dword [rsp + 0x40]
inc qword [rdx + 0x38]
inc ecx
jmp 0x14023c5ce
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rbx, r11
mov rsi, qword [rax + rcx*8]
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x80], r11d
mov rdi, qword [rsi]
test rdi, rdi
je 0x14023f646
test byte [rsi + 0x28], 1
jne 0x14023f4e0
cmp byte [rdi + 0x6f], 1
jne 0x14023f479
cmp byte [rdi + 0x6d], 0
jne 0x14023f4cc
mov rcx, rdi
call fcn.14022cae0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023f4c1
cmp byte [rdi + 0x6f], al
jne 0x14023f4a2
mov eax, 1
mov edi, ecx
mov dword [rsp + 0x44], ecx
mov dword [rbp - 0x80], eax
mov ebx, eax
jmp 0x14023f4e0
mov rcx, rdi
mov dword [rbp - 0x80], 0
call fcn.14022cd50
mov dword [rsp + 0x44], eax
test eax, eax
mov ecx, dword [rsp + 0x44]
sete al
mov byte [rdi + 0x6d], al
test ecx, ecx
jne 0x140241cd3
xor r11d, r11d
mov rcx, qword [rsi]
cmp byte [rcx + 0x6f], 1
je 0x14023f526
mov rbx, r11
mov dword [rsp + 0x44], r11d
inc rbx
movsxd rdx, dword [r14 + r12*8 + 0xc]
test edx, edx
je 0x14023f58c
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0xf0]
test rcx, rcx
je 0x14023f54c
mov rax, qword [rcx + 8]
test rax, rax
je 0x14023f51c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14023f510
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14023f555
lea rdx, [rbp - 0x48]
call fcn.14022c280
mov rbx, qword [rbp - 0x48]
mov dword [rsp + 0x44], eax
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
jl 0x14023f4dd
or dword [rsi + 0x28], 1
jmp 0x14023f4e0
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x50]
mov rcx, rdi
call fcn.140234360
mov rax, qword [rdi + 0x18]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x140241d03
test byte [rsi + 0x28], 1
jne 0x140241d03
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rdi + 0x18], rbx
test byte [rsi + 0x28], 1
je 0x14023f639
mov rbx, qword [rbp - 0x50]
mov rcx, qword [rsi]
lea rax, [rbp - 0x80]
movabs r12, 0x3fffffffffffffff
xor r9d, r9d
xor edx, edx
and rbx, r12
xor edi, edi
mov qword [rsp + 0x20], rax
inc rbx
mov r8, rbx
mov qword [rbp - 0x48], rbx
call fcn.14022cdf0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023f639
mov eax, dword [rbp - 0x80]
test eax, eax
jne 0x14023f62d
inc edi
cmp edi, 0x64
jge 0x14023f62d
lea rdx, [rbp - 0x48]
lea ecx, [rax + 8]
call fcn.140217be0
mov rbx, qword [rbp - 0x48]
cmp edi, 5
jge 0x14023f5fe
and ebx, 0xffffff
jmp 0x14023f601
and rbx, r12
mov rcx, qword [rsi]
inc rbx
lea rax, [rbp - 0x80]
mov r8, rbx
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x48], rbx
call fcn.14022cdf0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x14023f5d3
jmp 0x14023f639
test ecx, ecx
jne 0x14023f639
test eax, eax
je 0x140241d03
xor r11d, r11d
mov word [rsi + 0x26], 0
mov dword [rsi + 0x58], r11d
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov qword [r13 + 0x18], rbx
jmp 0x1402417f2
movsxd rax, dword [r14 + r12*8 + 8]
movsxd rcx, dword [r14 + r12*8 + 4]
imul r9, rax, 0x38
mov rax, qword [rsi + 0x60]
add r9, r10
mov rsi, qword [rax + rcx*8]
cmp dil, 0x46
jne 0x14023f686
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
mov rbx, qword [rcx + r10 + 0x18]
jmp 0x14023f68b
movsxd rbx, dword [r14 + r12*8 + 0xc]
test byte [r14 + r12*8 + 3], 1
je 0x14023f69e
mov rax, qword [rsp + 0x60]
inc dword [rax + 0x90]
test byte [r14 + r12*8 + 3], 2
je 0x14023f6ae
mov qword [rbp - 0x50], rbx
mov qword [r15 + 0x30], rbx
movzx eax, word [r9 + 0x24]
test al, 1
je 0x14023f6bf
mov qword [r9 + 8], r11
mov dword [r9 + 0x20], r11d
movzx r8d, byte [r14 + r12*8 + 3]
test r8b, 0x10
je 0x14023f6d0
mov edx, dword [rsi + 0x18]
jmp 0x14023f6d3
mov edx, r11d
mov ecx, 0x4000
test cx, ax
je 0x14023f6e3
mov ecx, dword [r9 + 0x18]
jmp 0x14023f6e6
mov ecx, r11d
mov dword [rsp + 0x38], edx
movzx eax, r8b
mov r8, rbx
shr eax, 3
xor edx, edx
and eax, 1
mov dword [rsp + 0x30], eax
mov eax, dword [r9 + 0x20]
mov r9, qword [r9 + 8]
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsi]
mov dword [rsp + 0x20], eax
call fcn.140230650
xor r11d, r11d
mov word [rsi + 0x26], 0
mov ecx, eax
mov dword [rsp + 0x44], eax
mov dword [rsi + 0x58], r11d
test eax, eax
jne 0x14023d542
mov r10, qword [r15 + 0x100]
test r10, r10
je 0x14023d542
mov r9, qword [r14 + r12*8 + 0x10]
test r9, r9
je 0x14023d542
movsx rax, byte [rsi + 0x24]
mov r8, qword [r15 + 0x20]
mov edx, 0x12
shl rax, 5
test byte [r14 + r12*8 + 3], 4
mov ecx, 0x17
mov r8, qword [rax + r8]
cmovne edx, ecx
mov rcx, qword [r15 + 0xf8]
mov qword [rsp + 0x20], rbx
call r10
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rbx, qword [rax + rcx*8]
mov rcx, rbx
mov rdi, qword [rbx + 0x48]
call fcn.140238320
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd8
mov rcx, qword [rbx]
call fcn.140230900
xor r11d, r11d
mov ecx, eax
mov dword [rsp + 0x44], eax
mov dword [rbx + 0x58], r11d
test eax, eax
jne 0x14023f814
mov r10, qword [r15 + 0x100]
test r10, r10
je 0x14023f814
mov r9, qword [r14 + r12*8 + 0x10]
test r9, r9
je 0x14023f814
test byte [rbx + 0x28], 2
je 0x14023f814
movsx rax, byte [rbx + 0x24]
mov r8, qword [r15 + 0x20]
lea edx, [rcx + 9]
mov rcx, qword [r15 + 0xf8]
shl rax, 5
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + r8]
call r10
mov ecx, dword [rsp + 0x44]
xor r11d, r11d
test byte [r14 + r12*8 + 8], 1
mov r10, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
mov edi, 0x2460
mov r8d, 0x1000
je 0x14023f836
inc dword [rsi + 0x90]
mov esi, dword [rsp + 0x40]
jmp 0x140241806
mov eax, dword [rsi + 0x90]
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
add dword [r15 + 0x64], eax
mov dword [r15 + 0x60], eax
mov dword [rsi + 0x90], r11d
inc ecx
jmp 0x14023c5d3
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov edi, dword [r14 + r12*8 + 0x10]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r14 + r12*8 + 0xc]
mov rcx, qword [rbx + 0x50]
imul rdx, rax, 0x38
add rdx, r10
mov rax, qword [rcx + 0x30]
test rax, rax
je 0x14023f8a4
movsxd rax, dword [rax + 4]
shl rax, 6
add rax, qword [rcx + 0x28]
mov r10d, dword [rax + 0x14]
mov r8, qword [rax + 0x28]
jmp 0x14023f8af
mov rax, qword [rcx + 0x40]
mov r10d, dword [rax + 8]
mov r8, qword [rax]
mov r14d, dword [rdx + 0x20]
mov r15, qword [rdx + 8]
mov rbx, qword [rbx + 0x10]
mov rsi, qword [rcx + 0x48]
test r8, r8
je 0x14023f8d2
mov r9, rsi
mov edx, r10d
mov rcx, rbx
call fcn.140238790
test edi, edi
je 0x14023f905
movzx eax, word [rbx + 6]
xor r11d, r11d
sub ax, di
mov ecx, r11d
movzx edx, ax
mov word [rsi + 8], dx
test edx, edx
jle 0x14023f905
mov rax, qword [rsi + 0x10]
add rax, 0x24
test byte [rax], 1
jne 0x14023f943
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x14023f8f6
xor r9d, r9d
mov r8, rsi
mov rdx, r15
mov ecx, r14d
call fcn.140238fc0
xor r11d, r11d
mov dword [rsp + 0x44], r11d
test eax, eax
je 0x14023f94a
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov ecx, dword [r14 + r12*8 + 8]
dec ecx
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
mov dword [rsp + 0x44], r11d
jmp 0x14023f922
mov ecx, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
movsxd rax, dword [r14 + r12*8 + 8]
movsxd rcx, dword [r14 + r12*8 + 4]
imul r13, rax, 0x38
mov rax, qword [rsi + 0x60]
add r13, r10
mov rcx, qword [rax + rcx*8]
mov rdx, r13
mov qword [rsp + 0x78], r13
call fcn.1402446d0
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
movsxd rax, dword [r14 + r12*8 + 8]
movsxd rcx, dword [r14 + r12*8 + 4]
imul r13, rax, 0x38
mov rax, qword [rsi + 0x60]
add r13, r10
mov rsi, qword [rax + rcx*8]
mov qword [rsp + 0x78], r13
mov rdi, qword [rsi]
mov rcx, rsi
call fcn.140238320
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd3
test byte [rsi + 0x28], 2
jne 0x14023fa10
cmp byte [rdi + 0x6f], 1
je 0x14023f9eb
xor ebx, ebx
mov qword [rbp + 0x150], rbx
jmp 0x14023fa01
lea rdx, [rbp + 0x150]
mov rcx, rdi
call fcn.14022c280
mov rbx, qword [rbp + 0x150]
movsxd rax, dword [r15 + 0x68]
cmp rbx, rax
jg 0x140241e00
jmp 0x14023fa6c
cmp word [rdi + 0x56], 0
jne 0x14023fa5f
movsx rax, word [rdi + 0x72]
lea r8, [rdi + 0x38]
mov r10, qword [rdi + rax*8 + 0xa0]
movzx eax, word [rdi + rax*2 + 0x74]
mov rcx, qword [r10 + 0x60]
mov r9d, eax
movzx eax, byte [rcx + rax*2]
shl eax, 8
movsxd rdx, eax
movzx eax, byte [rcx + r9*2 + 1]
mov rcx, r10
or rdx, rax
movzx eax, word [r10 + 0x12]
and rdx, rax
add rdx, qword [r10 + 0x50]
call fcn.140228ab0
mov byte [rdi + 0x6e], 1
mov ebx, dword [rdi + 0x48]
cmp ebx, dword [r15 + 0x68]
ja 0x140241e00
xor r8d, r8d
mov edx, ebx
mov rcx, r13
call fcn.140233ce0
test eax, eax
jne 0x140241fac
mov r9, qword [r13 + 8]
mov eax, 0xbe10
mov dword [r13 + 0x20], ebx
and word [r13 + 0x24], ax
or word [r13 + 0x24], 0x10
xor edx, edx
test byte [rsi + 0x28], 2
mov r8d, ebx
mov rcx, rdi
jne 0x14023fac4
mov dword [rsp + 0x20], edx
call fcn.14022c550
mov esi, dword [rsp + 0x40]
mov dword [rsp + 0x44], eax
mov ecx, eax
mov byte [r13 + 0x26], 1
jmp 0x1402417ef
call fcn.14022c910
mov esi, dword [rsp + 0x40]
mov byte [r13 + 0x26], 1
mov dword [rsp + 0x44], eax
mov ecx, eax
jmp 0x1402417ef
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 0x25], 0
je 0x14023fb04
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
mov word [r13 + 0x24], r9w
inc ecx
jmp 0x14023c5d3
cmp byte [rbx + 0x27], 0
je 0x14023fb23
mov rax, qword [rbx + 0x40]
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov qword [rbp + 0x20], rax
mov qword [r13 + 0x18], rax
jmp 0x1402417f2
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je 0x14023fb4a
mov rbx, qword [rcx]
lea rdx, [rbp + 0x20]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, rsi
mov dword [rsp + 0x44], eax
call fcn.140239c30
jmp 0x14023fbb2
mov rcx, rbx
call fcn.140238320
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd8
cmp byte [rbx + 0x26], al
je 0x14023fb7d
mov rax, qword [rbx + 0x48]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov qword [rbp + 0x20], rax
mov qword [r13 + 0x18], rax
jmp 0x1402417f2
mov rcx, qword [rbx]
cmp byte [rcx + 0x6f], 1
je 0x14023fba5
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov eax, r11d
mov qword [rbp + 0x20], r11
mov dword [rsp + 0x44], r11d
mov qword [r13 + 0x18], rax
mov ecx, r11d
jmp 0x1402417f2
lea rdx, [rbp + 0x20]
call fcn.14022c280
mov dword [rsp + 0x44], eax
mov rax, qword [rbp + 0x20]
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov qword [r13 + 0x18], rax
xor r11d, r11d
jmp 0x1402417f2
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rdx, qword [rax + rcx*8]
mov rbx, qword [rdx]
mov word [rdx + 0x25], 1
mov dword [rdx + 0x58], r11d
test rbx, rbx
je 0x14023fbfd
mov rcx, qword [rbx + 0x60]
call fcn.140215ac0
xor r11d, r11d
mov qword [rbx + 0x60], r11
mov byte [rbx + 0x6f], r11b
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov edi, r11d
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi]
cmp byte [rbx + 0x6f], 1
jne 0x14023fc32
cmp byte [rbx + 0x6d], 0
je 0x14023fc32
mov dword [rsp + 0x44], r11d
jmp 0x14023fc65
mov rcx, rbx
call fcn.14022cae0
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023fc62
cmp byte [rbx + 0x6f], al
jne 0x14023fc4c
lea edi, [rax + 1]
jmp 0x14023fc62
mov rcx, rbx
xor edi, edi
call fcn.14022cd50
test eax, eax
mov dword [rsp + 0x44], eax
sete al
mov byte [rbx + 0x6d], al
xor r11d, r11d
mov byte [rsi + 0x25], dil
mov word [rsi + 0x26], 0
mov dword [rsi + 0x58], r11d
mov eax, dword [r14 + r12*8 + 8]
test eax, eax
jle 0x14023d53e
mov ecx, dword [rsp + 0x44]
mov r10, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
test edi, edi
mov r8d, 0x1000
mov edi, 0x2460
je 0x14023f836
lea esi, [rax - 1]
jmp 0x140241806
inc dword [rsi + 0xa8]
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov edi, r9d
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x3c], r9d
cmp qword [rbx + 0x50], 0
je 0x14023fce4
lea r8, [rbp + 0x3c]
mov rdx, rbx
mov rcx, r15
call fcn.140244090
mov edi, dword [rbp + 0x3c]
xor r11d, r11d
mov dword [rsp + 0x44], eax
jmp 0x14023fd1c
mov rsi, qword [rbx]
mov rcx, rsi
call fcn.14022cae0
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023fd0f
cmp byte [rsi + 0x6f], al
jne 0x14023fd01
lea edi, [rax + 1]
jmp 0x14023fd0f
mov rcx, rsi
xor edi, edi
call fcn.14022ccc0
mov dword [rsp + 0x44], eax
xor r11d, r11d
mov word [rbx + 0x26], 0
mov dword [rbx + 0x58], r11d
mov ecx, dword [rsp + 0x44]
mov r10, qword [rsp + 0x50]
mov byte [rbx + 0x25], dil
mov ebx, dword [rsp + 0x48]
test edi, edi
mov r8d, 0x1000
mov edi, 0x2460
je 0x14023f836
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x140241806
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
lea r8, [rbp - 0x40]
mov rbx, qword [rax + rcx*8]
mov rcx, r15
mov rdx, rbx
call fcn.140244600
jmp 0x14023fd9f
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
cmp qword [rax + rcx*8], 0
je case.default.0x14023c672
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
lea rdx, [rbp - 0x40]
mov rbx, qword [rax + rcx*8]
mov eax, dword [r14 + r12*8 + 0xc]
mov dword [rbp - 0x40], eax
mov rcx, qword [rbx]
call qword [r14 + r12*8 + 0x10]
xor r11d, r11d
mov dword [rsp + 0x44], eax
mov dword [rbx + 0x58], r11d
cmp dword [rbp - 0x40], r11d
jne 0x14023fdd6
mov rcx, qword [rsp + 0x60]
mov byte [rbx + 0x25], r11b
mov esi, dword [r14 + r12*8 + 8]
movzx eax, byte [r14 + r12*8 + 3]
dec esi
inc dword [rcx + rax*4 + 0xa0]
mov byte [rbx + 0x26], r11b
jmp 0x1402405f6
mov esi, dword [rsp + 0x40]
mov byte [rbx + 0x25], 1
mov byte [rbx + 0x26], r11b
jmp 0x1402405f6
mov rax, qword [rsi + 0x60]
movsxd rcx, dword [r14 + r12*8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r14 + r12*8 + 8]
mov rsi, qword [rdi]
imul rbx, rax, 0x38
add rbx, r10
test byte [r14 + r12*8 + 3], 1
je 0x14023fe16
mov rax, qword [rsp + 0x60]
inc dword [rax + 0x90]
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x14023fe37
mov rcx, rbx
call fcn.140233ec0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023c9a7
cmp qword [rdi + 0x50], 0
je 0x14023fe5b
mov r8, rbx
mov rdx, rdi
mov rcx, r15
call fcn.140243fb0
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
test byte [r14 + r12*8 + 3], 0x10
je 0x14023fe68
mov eax, dword [rdi + 0x18]
jmp 0x14023fe6a
xor eax, eax
movsxd r8, dword [rbx + 0x20]
mov rdx, qword [rbx + 8]
mov dword [rsp + 0x38], eax
mov eax, dword [r14 + r12*8 + 0xc]
lea r9, [0x1403349b5]
mov rcx, rsi
mov dword [rsp + 0x30], eax
xor eax, eax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
call fcn.140230650
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov ecx, eax
mov dword [rsp + 0x44], eax
mov dword [rdi + 0x58], r11d
jmp 0x1402417f2
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
lea rdx, [rbp + 0x1c0]
mov rbx, qword [rax + rcx*8]
xor r9d, r9d
xor r8d, r8d
mov rax, qword [rbx + 0x10]
mov rdi, qword [rbx]
mov byte [rbp + 0x1ca], 0
mov qword [rbp + 0x1c0], rax
movzx eax, word [r14 + r12*8 + 0xc]
mov word [rbp + 0x1c8], ax
movsxd rax, dword [r14 + r12*8 + 8]
imul rcx, rax, 0x38
lea rax, [rbp + 0x50]
add rcx, r10
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x1d0], rcx
mov rcx, rdi
call fcn.14022cdf0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023ff2b
cmp dword [rbp + 0x50], eax
jne 0x14023ff2b
mov rcx, rdi
call fcn.140230900
mov ecx, eax
mov dword [rsp + 0x44], eax
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov dword [rbx + 0x58], r11d
jmp 0x1402417f2
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rbx, qword [rax + rcx*8]
mov rcx, rbx
mov rdi, qword [rbx]
mov word [r13 + 0x24], r9w
call fcn.140238320
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd8
cmp byte [rbx + 0x25], al
jne 0x14023e66d
lea r8, [rbp - 0x20]
mov rdx, rdi
mov qword [rbp - 0x20], 0
call fcn.1402396d0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140241cd8
mov rax, qword [rbp - 0x20]
mov qword [r13 + 0x18], rax
mov eax, 4
mov word [r13 + 0x24], ax
jmp 0x14023e66d
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
cmp dil, 0x70
mov r9, qword [rax + rcx*8]
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x1a0]
mov rax, qword [r9 + 0x10]
mov dword [rbp - 0x78], r11d
mov qword [rbp + 0x1a0], rax
movzx eax, word [r14 + r12*8 + 0x10]
mov word [rbp + 0x1a8], ax
sbb al, al
mov byte [rbp + 0x1aa], al
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
add rcx, r10
mov qword [rbp + 0x1b0], rcx
mov rcx, r9
call fcn.1402399c0
test byte [r14 + r12*8], 1
mov dword [rsp + 0x44], eax
mov eax, dword [rbp - 0x78]
jne 0x140240015
neg eax
jmp 0x140240017
inc eax
mov ecx, dword [rsp + 0x44]
mov r10, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
mov edi, 0x2460
mov r8d, 0x1000
test eax, eax
jle 0x140241793
mov esi, dword [r14 + r12*8 + 8]
dec esi
xor r11d, r11d
jmp 0x140241806
mov rax, qword [r15 + 8]
mov edx, r11d
test rax, rax
je 0x140240095
mov r14d, 0x200
nop dword [rax + rax]
cmp dword [rax + 0x44], 0xbdf20da3
jne 0x140240087
mov ecx, dword [rax + 0x8c]
test r14d, ecx
je 0x140240087
and cl, 0xc
cmp cl, 8
jae 0x140240087
cmp dword [rax + 0x80], 0
jl 0x140240087
inc edx
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x140240060
mov r14, qword [rsp + 0x68]
mov word [r13 + 0x24], r9w
cmp edx, 1
jg 0x140241d77
mov rax, qword [rsp + 0x68]
movsxd r14, dword [r14 + r12*8 + 0xc]
mov dword [rbp + 0x28], r11d
mov ebx, dword [rax + r12*8 + 4]
mov rax, qword [r15 + 0x20]
mov rsi, r14
shl rsi, 5
mov rdi, qword [rax + rsi + 8]
mov rcx, rdi
call fcn.140227da0
lea r8, [rbp + 0x28]
mov edx, ebx
mov rcx, rdi
call fcn.1402312e0
cmp byte [rdi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x140240102
dec dword [rdi + 0x14]
jne 0x140240102
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1402400fe
call qword [0x1404191a8]
mov byte [rdi + 0x12], 0
mov ecx, dword [rsp + 0x44]
movsxd rdx, dword [rbp + 0x28]
mov eax, 4
mov word [r13 + 0x24], ax
mov qword [r13 + 0x18], rdx
test ecx, ecx
jne 0x14023ddf0
test edx, edx
je 0x14023ddf0
mov rax, qword [rsp + 0x68]
mov r9, qword [r15 + 0x20]
mov r8d, dword [rax + r12*8 + 4]
mov rax, qword [rsi + r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140240159
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x3c], edx
jne 0x140240151
mov dword [rax + 0x3c], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140240144
mov rax, qword [rsi + r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x14024017c
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x140240174
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140240167
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
lea r12d, [r14 + 1]
mov r14, qword [rsp + 0x68]
mov byte [rsp + 0x4c], r12b
jmp 0x1402417ef
cmp dword [r14 + r12*8 + 0xc], 0
movsxd rax, dword [r14 + r12*8 + 8]
mov rcx, qword [r15 + 0x20]
mov edx, dword [r14 + r12*8 + 4]
mov dword [rbp - 0x68], r11d
lea r8, [rbp - 0x68]
cmove r8, r11
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140231200
cmp dword [r14 + r12*8 + 0xc], 0
mov ecx, eax
mov dword [rsp + 0x44], eax
je 0x14023c9a7
movsxd rdx, dword [rbp - 0x68]
mov r10, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
add dword [rsi + 0x90], edx
movsxd rax, dword [r14 + r12*8 + 0xc]
mov esi, dword [rsp + 0x40]
mov edi, 0x2460
mov r8d, 0x1000
test eax, eax
jle 0x14024003e
imul rcx, rax, 0x38
add qword [rcx + r10 + 0x18], rdx
mov ecx, dword [rsp + 0x44]
xor r11d, r11d
jmp 0x140241806
movsxd rax, dword [r14 + r12*8 + 4]
mov ebx, r11d
mov dword [rbp - 0x70], r11d
shl rax, 5
add rax, qword [r15 + 0x20]
cmp dil, 0x75
mov rdi, qword [rax + 8]
setne bl
mov rcx, rdi
call fcn.140227da0
lea r8d, [rbx + 1]
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.140230bf0
cmp byte [rdi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x140240278
dec dword [rdi + 0x14]
jne 0x140240278
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140240274
call qword [0x1404191a8]
mov byte [rdi + 0x12], 0
movsxd rax, dword [rbp - 0x70]
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov qword [r13 + 0x18], rax
jmp 0x1402417ef
movsxd rcx, dword [r14 + r12*8 + 4]
mov r8, qword [r15 + 0x20]
lea rax, str.sqlite_master
cmp ecx, 1
mov dword [rbp + 0x170], ecx
mov qword [rbp + 0x160], r15
lea r9, str.sqlite_temp_master
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
cmovne r9, rax
shl rcx, 5
lea rax, [rsi + 0x48]
mov qword [rbp + 0x168], rax
mov rax, qword [r14 + r12*8 + 0x10]
mov r8, qword [rcx + r8]
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.1402177f0
mov rbx, rax
test rax, rax
jne 0x1402402f6
mov dword [rsp + 0x44], 7
jmp 0x14024034c
xor eax, eax
lea r9, [rbp + 0x160]
lea r8, [fcn.14026b680]
mov rdx, rbx
mov rcx, r15
mov byte [r15 + 0x99], 1
mov dword [rbp + 0x174], eax
mov qword [rsp + 0x20], rax
call fcn.1402664e0
test eax, eax
mov rdx, rbx
mov rcx, r15
cmove eax, dword [rbp + 0x174]
mov dword [rsp + 0x44], eax
call fcn.140215b70
mov ecx, dword [rsp + 0x44]
mov byte [r15 + 0x99], 0
test ecx, ecx
je 0x140240358
mov rcx, r15
call fcn.1402526a0
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
cmp ecx, 7
je 0x140241fb0
jmp 0x1402417ef
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.140250740
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
mov rdx, qword [r14 + r12*8 + 0x10]
movsxd rcx, dword [r14 + r12*8 + 4]
shl rcx, 5
mov rax, rdx
add rcx, qword [r15 + 0x20]
test rdx, rdx
jne 0x1402403a5
mov eax, r11d
jmp 0x1402403bf
cmp byte [rdx], 0
je 0x1402403b8
nop word [rax + rax]
inc rax
cmp byte [rax], 0
jne 0x1402403b0
sub eax, edx
and eax, 0x3fffffff
mov rcx, qword [rcx + 0x18]
xor r9d, r9d
mov r8d, eax
add rcx, 8
call fcn.140219c20
mov rcx, r15
mov rdx, rax
call fcn.140252800
or dword [r15 + 0x2c], 2
jmp 0x14023e66d
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.140252340
jmp 0x14023e66d
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.1402782e0
jmp 0x14023e66d
mov r12d, dword [r14 + r12*8 + 8]
mov rcx, r15
lea edx, [r12*4 + 4]
call fcn.140215e40
mov r14, rax
test rax, rax
je 0x140241fac
mov rax, qword [rbp - 0x68]
mov rdx, qword [rsp + 0x68]
xor edi, edi
movsxd rcx, dword [rdx + rax*8 + 0xc]
imul r13, rcx, 0x38
movsxd rcx, dword [rdx + rax*8 + 4]
imul r15, rcx, 0x38
add r13, qword [rsp + 0x50]
add r15, qword [rsp + 0x50]
test r12d, r12d
jle 0x14024048f
mov rbx, r15
mov esi, r12d
mov rcx, rbx
call fcn.140234210
inc rdi
add rbx, 0x38
mov dword [r14 + rdi*4 - 4], eax
dec rsi
jne 0x140240468
mov rax, qword [rbp - 0x68]
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x70]
mov dword [r14 + rdi*4], 0
movzx eax, byte [rdx + rax*8 + 3]
mov rcx, qword [rbx + 0x20]
mov r9d, dword [r13 + 0x18]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
lea rdx, [rbp + 0x60]
mov r8d, r12d
mov qword [rsp + 0x20], rdx
mov rdx, r14
call fcn.140232520
mov rdx, r14
mov rcx, rbx
mov rdi, rax
call fcn.140215b70
movsxd rbx, dword [rbp + 0x60]
sub qword [r13 + 0x18], rbx
mov rcx, r15
call fcn.140234490
test ebx, ebx
je 0x14024050f
test rdi, rdi
je 0x14023f228
lea rax, [fcn.140215ac0]
mov r9b, 1
or r8d, 0xffffffff
mov rdx, rdi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.140234940
test byte [r15 + 0x24], 2
movzx edx, byte [rsp + 0x58]
je 0x14024052c
movzx eax, byte [r15 + 0x26]
cmp eax, edx
je 0x14024052c
mov rcx, r15
call fcn.140217e80
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
jmp 0x14023e668
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 8]
imul rdi, rax, 0x38
add rbx, r10
add rdi, r10
test byte [rbx + 0x24], 0x20
jne 0x14024056b
mov rcx, rbx
call fcn.140234680
test byte [rbx + 0x24], 0x20
je 0x140241fac
mov rdx, qword [rdi + 0x18]
mov rcx, qword [rbx + 0x18]
call fcn.14021f6a0
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, r10
test byte [rdi + 0x24], 0x20
je 0x140240655
mov rbx, qword [rdi + 0x18]
movzx eax, byte [rbx + 0x32]
test al, 2
jne 0x1402405b4
test al, 1
jne 0x1402405b0
mov rcx, qword [rbx + 0x10]
call fcn.14021f780
mov qword [rbx + 0x10], rax
or byte [rbx + 0x32], 2
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140240655
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x1402405d9
mov rcx, rbx
call fcn.14021f560
movsxd rax, dword [r14 + r12*8 + 0xc]
mov rdx, rdi
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x50]
call fcn.140234550
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov eax, dword [r15 + 0x138]
test eax, eax
jne 0x140241f5a
mov r8, qword [r15 + 0x180]
mov ebx, dword [rsp + 0x48]
test r8, r8
je 0x140241763
cmp ebx, dword [rbp - 0x60]
jb 0x140241763
mov ebx, dword [r15 + 0x190]
mov eax, dword [rsp + 0x48]
mov rcx, qword [r15 + 0x188]
xor edx, edx
div ebx
sub ebx, edx
add ebx, dword [rsp + 0x48]
mov dword [rbp - 0x60], ebx
call r8
test eax, eax
jne 0x140241e2a
mov ecx, dword [rsp + 0x44]
jmp 0x1402417ef
mov rcx, rdi
call fcn.140234490
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x1402405f3
movsxd rax, dword [r14 + r12*8 + 4]
mov edi, dword [r14 + r12*8 + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 0xc]
add rbx, r10
imul rsi, rax, 0x38
add rsi, r10
test byte [rbx + 0x24], 0x20
jne 0x14024069b
mov rcx, rbx
call fcn.140234680
test byte [rbx + 0x24], 0x20
je 0x140241fac
test edi, edi
je 0x1402406d2
js 0x1402406a8
mov eax, edi
and eax, 0xf
jmp 0x1402406ad
mov eax, 0xff
mov r8, qword [rsi + 0x18]
mov rcx, qword [rbx + 0x18]
movzx edx, al
call fcn.14021faf0
test eax, eax
je 0x1402406d0
mov ecx, dword [r14 + r12*8 + 8]
mov rsi, qword [rsp + 0x60]
jmp 0x14023e673
test edi, edi
js 0x1402406e1
mov rdx, qword [rsi + 0x18]
mov rcx, qword [rbx + 0x18]
call fcn.14021f6a0
mov rsi, qword [rsp + 0x60]
jmp 0x14023e66d
mov rcx, qword [rsp + 0x68]
mov r14, qword [r14 + r12*8 + 0x10]
mov r9, qword [rsp + 0x60]
movsxd rax, dword [rcx + r12*8 + 0xc]
imul rsi, rax, 0x38
add rsi, r10
cmp byte [rcx + r12*8 + 3], 0
je 0x140240733
mov rax, qword [r9 + 0xf0]
mov rcx, qword [r14 + 0x18]
test rax, rax
je 0x140240733
nop
cmp qword [rax + 0x30], rcx
je 0x140240832
mov rax, qword [rax + 8]
test rax, rax
jne 0x140240720
mov eax, dword [r15 + 0x90]
cmp dword [r9 + 0x100], eax
jge 0x140241d92
test byte [rsi + 0x24], 0x40
jne 0x14024084f
mov edx, dword [r14 + 0x10]
mov ebx, dword [r14 + 0xc]
mov eax, dword [r14 + 0x14]
add ebx, edx
add edx, 0xc
imul ecx, ebx, 7
add ecx, edx
lea edx, [rax + rcx*8]
mov rcx, r15
call fcn.140215e00
mov rdi, rax
test rax, rax
je 0x140241fac
mov rcx, rsi
call fcn.1402341c0
mov r9, qword [rsp + 0x60]
mov qword [rsi + 0x18], rdi
mov eax, 0x40
lea rdx, [rdi + 0x60]
mov word [rsi + 0x24], ax
mov esi, dword [rsp + 0x40]
mov qword [rdi], r9
mov dword [rdi + 0x54], ebx
mov ecx, dword [r14 + 0x10]
mov dword [rdi + 0x44], esi
mov dword [rdi + 0x58], ecx
mov rcx, qword [r9 + 0x10]
mov qword [rdi + 0x18], rcx
mov eax, dword [r9 + 0x38]
mov dword [rdi + 0x4c], eax
mov rax, qword [r9 + 0x60]
mov qword [rdi + 0x28], rax
mov eax, dword [r9 + 0x40]
mov dword [rdi + 0x40], eax
mov rax, qword [r9 + 8]
mov qword [rdi + 0x10], rax
mov eax, dword [r9 + 0x3c]
mov dword [rdi + 0x48], eax
mov rax, qword [r14 + 0x18]
mov qword [rdi + 0x30], rax
mov rax, qword [r9 + 0x118]
mov qword [rdi + 0x20], rax
mov eax, dword [r9 + 0x110]
mov dword [rdi + 0x50], eax
movsxd rax, ebx
imul rcx, rax, 0x38
lea rax, [rdi + 0x60]
add rdx, rcx
cmp rax, rdx
je 0x140240853
mov ebx, 0x80
nop dword [rax]
nop word [rax + rax]
mov word [rax + 0x24], bx
mov qword [rax], r15
add rax, 0x38
cmp rax, rdx
jne 0x140240820
jmp 0x140240853
mov ecx, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x48]
mov rsi, r9
inc ecx
mov r9d, 1
jmp 0x14023c5d3
mov rdi, qword [rsi + 0x18]
inc dword [r9 + 0x100]
mov rax, qword [r9 + 0xf0]
lea rdx, [rdi + 0x28]
mov qword [rdi + 8], rax
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x50], rdx
mov qword [rdi + 0x38], rax
mov eax, dword [r9 + 0x90]
mov dword [rsp + 0x40], 0xffffffff
mov dword [rdi + 0x5c], eax
mov qword [r9 + 0x10], rdx
mov dword [r9 + 0x90], 0
mov qword [r9 + 0xf0], rdi
mov eax, dword [rdi + 0x54]
mov dword [r9 + 0x38], eax
movzx r8d, word [rdi + 0x58]
inc eax
cdqe
mov dword [r9 + 0x40], r8d
imul rcx, rax, 0x38
add rdx, rcx
mov qword [r9 + 0x60], rdx
mov rax, qword [r14]
lea rcx, [rdx + r8*8]
mov qword [rsp + 0x68], rax
mov qword [r9 + 8], rax
mov eax, dword [r14 + 8]
mov qword [r9 + 0x118], rcx
xor edx, edx
mov dword [r9 + 0x3c], eax
movsxd rax, dword [r14 + 0x14]
mov r8, rax
mov dword [r9 + 0x110], eax
call fcn.1402bfa30
mov rsi, qword [rsp + 0x60]
jmp 0x14023e668
mov r8, qword [rsi + 0xf0]
movsxd rax, dword [r8 + 0x44]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov eax, dword [rax + rcx*8 + 4]
mov rcx, r13
add eax, dword [r14 + r12*8 + 4]
cdqe
imul rdx, rax, 0x38
add rdx, qword [r8 + 0x18]
mov r8d, 0x1000
call fcn.1402347a0
jmp 0x14023e66d
test dword [r15 + 0x2c], 0x1000000
movsxd rax, dword [r14 + r12*8 + 8]
mov ecx, dword [rsp + 0x40]
je 0x140240959
add qword [r15 + 0x310], rax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
cmp dword [r14 + r12*8 + 4], 0
je 0x140240973
add qword [r15 + 0x308], rax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
add qword [rsi + 0xc8], rax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
cmp dword [r14 + r12*8 + 4], 0
je 0x1402409bb
cmp qword [r15 + 0x308], 0
jne 0x14023dacd
cmp qword [r15 + 0x310], 0
jne 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
cmp qword [rsi + 0xc8], 0
jne 0x14023dacd
cmp qword [r15 + 0x310], 0
jne 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
mov rcx, qword [rsi + 0xf0]
test rcx, rcx
je 0x140240a1b
mov rax, qword [rcx + 8]
test rax, rax
je 0x140240a0c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140240a00
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x140240a27
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, r10
mov rcx, rdi
call fcn.140234360
movsxd rax, dword [r14 + r12*8 + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.140234360
mov rax, qword [rbx + 0x18]
cmp qword [rdi + 0x18], rax
jge 0x14023e66d
mov qword [rdi + 0x18], rax
jmp 0x14023e66d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
cmp qword [rcx + r10 + 0x18], 0
jle 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
cmp qword [rcx + r10 + 0x18], 0
jge 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r14 + r12*8 + 0xc]
add qword [rcx + r10 + 0x18], rax
jne 0x14023dacd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x14023c5d3
movsxd rax, dword [r14 + r12*8 + 8]
mov rbx, qword [rsp + 0x50]
movzx r10d, byte [r14 + r12*8 + 3]
imul rcx, rax, 0x38
mov r8, qword [rsi + 0x18]
add rcx, rbx
mov rax, r11
test r10d, r10d
jle 0x140240b10
nop dword [rax + rax]
mov qword [r8 + rax*8], rcx
inc rax
add rcx, 0x38
cmp rax, r10
jl 0x140240b00
mov rax, qword [r14 + r12*8 + 0x10]
mov qword [rbp + 0xe0], rax
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
add rcx, rbx
mov qword [rbp + 0x120], rcx
inc dword [rcx + 0x20]
mov word [rbp + 0x10c], r9w
mov r9, qword [rbp + 0xe0]
mov qword [rbp + 0xf0], r11
mov qword [rbp + 0x118], r11
mov qword [rbp + 0x110], r11
mov qword [rbp + 0xe8], r15
mov dword [rbp + 0x13c], r11d
mov qword [rbp + 0x128], r11
mov byte [rbp + 0x140], 0
test byte [r9 + 2], 0x20
je 0x140240b85
mov rax, qword [r14 + r12*8 - 8]
mov qword [rbp + 0x128], rax
lea rcx, [rbp + 0xe0]
mov edx, r10d
call qword [r9 + 0x20]
cmp dword [rbp + 0x13c], 0
je 0x140240c51
test byte [rbp + 0x10c], 1
je 0x140240bb1
xor r9d, r9d
jmp 0x140240c34
movzx ecx, word [rbp + 0x10c]
movzx eax, cx
shr ax, 3
and ax, 2
or cx, ax
mov eax, 0x4000
mov word [rbp + 0x10c], cx
test ax, cx
je 0x140240be3
lea rcx, [rbp + 0xe8]
call fcn.140233ec0
test byte [rbp + 0x10c], 2
je 0x140240c11
cmp byte [rbp + 0x10e], 1
je 0x140240c03
lea rcx, [rbp + 0xe8]
mov dl, 1
call fcn.140217e80
lea rcx, [rbp + 0xe8]
call fcn.140233f30
jmp 0x140240c22
lea rcx, [rbp + 0xe8]
mov edx, 1
call fcn.140233fa0
xor r9d, r9d
cmp byte [rbp + 0x10e], 1
cmove r9, qword [rbp + 0xf0]
lea rcx, [rsi + 0x48]
lea r8, [0x14036b948]
mov rdx, r15
call fcn.140216090
mov eax, dword [rbp + 0x13c]
mov dword [rsp + 0x44], eax
cmp byte [rbp + 0x140], 0
je 0x140240c74
movsxd rax, dword [r14 + r12*8 - 0x14]
test eax, eax
je 0x140240c74
imul rcx, rax, 0x38
mov edx, 1
add rcx, rbx
call fcn.140234550
movzx eax, word [rbp + 0x10c]
mov edi, 0x2460
test di, ax
je 0x140240d42
mov ecx, 0x2000
test cx, ax
je 0x140240cb7
mov rdx, qword [rbp + 0x100]
lea rcx, [rbp + 0xe8]
call fcn.140234070
lea rcx, [rbp + 0xe8]
call fcn.1402341c0
jmp 0x140240d42
mov ecx, 0x400
test cx, ax
je 0x140240cda
mov rcx, qword [rbp + 0xf0]
call qword [rbp + 0x110]
xor r11d, r11d
mov qword [rbp + 0x110], r11
jmp 0x140240d45
movzx eax, byte [rbp + 0x10c]
test al, 0x20
je 0x140240cf3
mov rcx, qword [rbp + 0x100]
call fcn.14021f560
jmp 0x140240d42
test al, 0x40
je 0x140240d42
mov rdx, qword [rbp + 0x100]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xf8]
mov qword [rdx + 8], rcx
mov qword [rax + 0xf8], rdx
test byte [rbp + 0x10c], 0x20
je 0x140240d28
mov rcx, qword [rbp + 0x100]
call fcn.14021f560
movzx eax, word [rbp + 0x10c]
mov ecx, 0xbe01
and ax, cx
or ax, 1
mov word [rbp + 0x10c], ax
xor r11d, r11d
mov rdx, qword [rbp + 0x118]
test rdx, rdx
je 0x140241786
mov rcx, qword [rbp + 0xe8]
call fcn.140215b70
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov r10, rbx
jmp 0x1402417fc
movsxd rax, dword [r14 + r12*8 + 4]
mov rdx, qword [r14 + r12*8 + 0x10]
imul rbx, rax, 0x38
add rbx, r10
mov rcx, rbx
call fcn.140234070
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140240db5
mov dl, 1
mov rcx, rbx
call fcn.140234d10
lea rcx, [rsi + 0x48]
lea r8, [0x14036b948]
mov r9, rax
mov rdx, r15
call fcn.140216090
test byte [rbx + 0x24], 2
movzx ecx, byte [rsp + 0x58]
je 0x140240dd3
movzx eax, byte [rbx + 0x26]
cmp eax, ecx
je 0x140240dd3
movzx edx, cl
mov rcx, rbx
call fcn.140217e80
movzx eax, word [rbx + 0x24]
test al, 0x12
je 0x14023c9a3
mov edx, dword [rbx + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x140240def
add edx, dword [rbx + 0x18]
mov rax, qword [rbx]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
cmp edx, dword [rax + 0x68]
mov ecx, r11d
setg cl
test ecx, ecx
jne 0x140241e04
mov ecx, dword [rsp + 0x44]
jmp 0x1402417f2
mov r8d, dword [r14 + r12*8 + 8]
mov edx, dword [r14 + r12*8 + 4]
lea rax, [rbp + 0x278]
lea r9, [rbp + 0x274]
mov rcx, r15
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x270], r11d
mov qword [rbp + 0x274], 0xffffffffffffffff
call fcn.14028d4f0
mov dword [rsp + 0x44], eax
cmp eax, 5
jne 0x140240e65
mov dword [rsp + 0x44], 0
mov dword [rbp + 0x270], 1
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x50]
xor ebx, ebx
nop word [rax + rax]
movsxd rdx, dword [rbp + rbx*4 + 0x270]
mov rcx, rdi
call fcn.140234550
inc rbx
add rdi, 0x38
cmp rbx, 3
jl 0x140240e80
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
mov ebx, dword [r14 + r12*8 + 0xc]
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
cmp ebx, 0xffffffff
mov r14, qword [rcx + rax + 8]
mov rax, qword [r14 + 8]
mov rdi, qword [rax]
movzx esi, byte [rdi + 9]
cmove ebx, esi
cmp byte [rdi + 0x13], 3
jae 0x140240ee9
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x140240eeb
cmp qword [rdi + 0x60], 0
jle 0x140240eeb
mov ebx, esi
cmp byte [rdi + 0x12], 0
lea rcx, [0x1403349b5]
jne 0x140240eff
mov rcx, qword [rdi + 0xd0]
cmp ebx, 5
jne 0x140240f43
mov rax, rcx
test rcx, rcx
je 0x140240fad
cmp byte [rcx], 0
je 0x140240f1d
inc rax
cmp byte [rax], 0
jne 0x140240f15
sub eax, ecx
and eax, 0x3fffffff
je 0x140240fad
cmp byte [rdi + 8], 0
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
jne 0x140240f43
cmp dword [rcx], 2
jl 0x140240fad
cmp qword [rcx + 0x68], 0
je 0x140240fad
cmp ebx, esi
je 0x140240faf
cmp esi, 5
je 0x140240f51
cmp ebx, 5
jne 0x140240faf
cmp byte [r15 + 0x4e], 0
je 0x140241dbc
cmp dword [r15 + 0xa0], 1
jg 0x140241dbc
cmp esi, 5
jne 0x140240f83
mov rcx, rdi
call fcn.140224e90
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140240fad
mov edx, ebx
jmp 0x140240f8b
cmp esi, 4
jne 0x140240f93
lea edx, [rsi - 2]
mov rcx, rdi
call fcn.140224bb0
xor edx, edx
cmp ebx, 5
mov rcx, r14
sete dl
inc edx
call fcn.140232c00
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140240faf
mov ebx, esi
mov edx, ebx
mov rcx, rdi
call fcn.140224bb0
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x50]
movsxd rcx, dword [r14 + r12*8 + 8]
xor r11d, r11d
imul r13, rcx, 0x38
mov ecx, 0xa02
add r13, r10
mov qword [rsp + 0x78], r13
mov word [r13 + 0x24], cx
cmp eax, 6
jne 0x140240feb
mov ecx, r11d
jmp 0x140240ffc
lea rcx, [0x140000000]
cdqe
mov rcx, qword [rcx + rax*8 + 0x32d148]
mov qword [r13 + 8], rcx
mov rax, rcx
test rcx, rcx
jne 0x14024100d
mov eax, r11d
jmp 0x140241021
cmp byte [rcx], 0
je 0x14024101a
inc rax
cmp byte [rax], 0
jne 0x140241012
sub eax, ecx
and eax, 0x3fffffff
mov dword [r13 + 0x20], eax
movzx eax, byte [rsp + 0x58]
mov byte [r13 + 0x26], 1
cmp eax, 1
je 0x14024177c
movzx edx, al
mov rcx, r13
call fcn.140217e80
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
lea rcx, [rsi + 0x48]
mov rdx, r15
call fcn.14027b7f0
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.14022b6e0
mov r10, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x48]
mov ecx, eax
mov dword [rsp + 0x44], eax
mov edi, 0x2460
mov r8d, 0x1000
cmp eax, 0x65
jne 0x140241793
mov esi, dword [r14 + r12*8 + 8]
dec esi
xor r11d, r11d
mov ecx, r11d
mov dword [rsp + 0x44], ecx
jmp 0x140241806
cmp dword [r14 + r12*8 + 4], 0
jne 0x1402410da
mov rcx, r15
call fcn.140239b60
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
mov ecx, dword [rsp + 0x40]
or dword [rsi + 0x8c], 0x20
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x14023c5d3
movzx r8d, byte [r14 + r12*8 + 0xc]
test r8b, r8b
jne 0x14024110a
mov eax, 0x4000
test dword [r15 + 0x2c], eax
jne 0x14024177c
movsxd rax, dword [r14 + r12*8 + 4]
mov rcx, qword [r15 + 0x20]
mov edx, dword [r14 + r12*8 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140232a90
mov ecx, eax
mov dword [rsp + 0x44], eax
cmp al, 6
jne 0x14023c9a7
mov r9, qword [r14 + r12*8 + 0x10]
lea rcx, [rsi + 0x48]
lea r8, str.database_table_is_locked:__s
mov rdx, r15
call fcn.140216090
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
mov rbx, qword [r14 + r12*8 + 0x10]
mov rcx, r15
mov rdx, rbx
call fcn.14027d030
mov ecx, eax
mov dword [rsp + 0x44], eax
test rbx, rbx
je 0x14023c9a7
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.140239c30
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
lea r9, [rsi + 0x48]
mov rcx, r15
call fcn.14027cab0
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
and dword [rsi + 0x8c], 0xfffffffb
or dword [rsi + 0x8c], 8
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.14027cdd0
and dword [rsi + 0x8c], 0xfffffff3
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x1402417ef
mov rax, qword [r14 + r12*8 + 0x10]
mov qword [rbp - 0x30], r11
lea rdx, [rbp - 0x30]
mov rbx, qword [rax + 0x10]
mov rcx, rbx
mov rdi, qword [rbx]
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, rsi
mov dword [rsp + 0x44], eax
call fcn.140239c30
mov ecx, dword [rsp + 0x44]
test ecx, ecx
jne 0x14023c9a7
mov rax, qword [rbp - 0x30]
mov dword [rsp + 0x20], ecx
or r9d, 0xffffffff
mov qword [rax], rbx
mov edx, dword [r14 + r12*8 + 4]
xor r8d, r8d
mov rcx, rsi
call fcn.14023c290
mov rcx, qword [rbp - 0x30]
test rax, rax
je 0x140241252
mov qword [rax + 0x30], rcx
jmp 0x14023e66d
mov byte [r15 + 0x50], 1
call qword [rdi + 0x38]
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
movsxd rax, dword [r14 + r12*8 + 0xc]
movsxd rcx, dword [r14 + r12*8 + 4]
mov r8, r11
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x60]
add rdx, r10
mov r13, qword [rax + rcx*8]
movsxd r15, dword [rdx + 0x50]
mov rax, qword [rsp + 0x60]
mov rdi, qword [r13 + 0x30]
mov rbx, qword [rax + 0x18]
lea r10, [rdx + 0x38]
mov r14, qword [rdi]
mov edx, dword [rdx + 0x18]
mov rsi, qword [r14]
test r15d, r15d
jle 0x1402412cf
nop word [rax + rax]
movsxd rax, r9d
inc r8
inc r9d
imul rcx, rax, 0x38
add rcx, r10
mov qword [rbx + r8*8 - 8], rcx
cmp r8, r15
jl 0x1402412b0
mov rax, qword [rsp + 0x60]
and dword [rax + 0x8c], 0xfffffff7
or dword [rax + 0x8c], 4
mov rax, qword [rsp + 0x68]
mov r8, qword [rax + r12*8 + 0x10]
mov r9d, r15d
mov rcx, rdi
mov qword [rsp + 0x20], rbx
call qword [rsi + 0x40]
mov rdx, r14
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x60]
and dword [rax + 0x8c], 0xfffffff3
mov rcx, rax
call fcn.140239c30
mov ecx, dword [rsp + 0x44]
test ecx, ecx
jne 0x140241346
mov rcx, rdi
call qword [rsi + 0x50]
mov r14, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x44]
test eax, eax
je 0x14024134b
mov esi, dword [r14 + r12*8 + 8]
mov r15, qword [rsp + 0x70]
mov byte [r13 + 0x25], 0
mov r13, qword [rsp + 0x78]
dec esi
jmp 0x1402417ef
mov r14, qword [rsp + 0x68]
mov esi, dword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov byte [r13 + 0x25], 0
mov r13, qword [rsp + 0x78]
jmp 0x1402417ef
mov rax, qword [rsi + 0x60]
movsxd rcx, dword [r14 + r12*8 + 4]
mov r14, qword [rax + rcx*8]
mov rax, qword [rsp + 0x68]
movsxd rax, dword [rax + r12*8 + 0xc]
imul rsi, rax, 0x38
add rsi, r10
cmp byte [r14 + 0x25], 0
je 0x14024139a
mov rcx, rsi
call fcn.140234490
mov rsi, qword [rsp + 0x60]
jmp 0x14023e668
mov rax, qword [r14 + 0x30]
xor edx, edx
lea rcx, [rbp + 0x200]
mov rdi, qword [rax]
lea r8d, [rdx + 0x68]
mov rbx, qword [rdi]
call fcn.1402bfa30
lea rcx, [rbp + 0x208]
mov rdx, rsi
call fcn.1402348b0
movzx eax, word [rbp + 0x22c]
mov ecx, 0xbe01
and ax, cx
lea rdx, [rbp + 0x200]
or ax, 1
mov word [rbp + 0x22c], ax
mov rax, qword [rsp + 0x68]
mov rcx, qword [r14 + 0x30]
mov r8d, dword [rax + r12*8 + 8]
call qword [rbx + 0x58]
mov rcx, qword [rsp + 0x60]
mov rdx, rdi
mov dword [rsp + 0x44], eax
call fcn.140239c30
mov eax, dword [rbp + 0x25c]
mov ecx, dword [rsp + 0x44]
test eax, eax
cmovne ecx, eax
test byte [rbp + 0x22c], 2
mov dword [rsp + 0x44], ecx
movzx ecx, byte [rsp + 0x58]
je 0x140241443
movzx eax, byte [rbp + 0x22e]
cmp eax, ecx
je 0x140241443
movzx edx, cl
lea rcx, [rbp + 0x208]
call fcn.140217e80
lea rdx, [rbp + 0x208]
mov rcx, rsi
call fcn.1402348b0
mov rcx, rsi
call fcn.140234770
mov esi, dword [rsp + 0x40]
test eax, eax
jne 0x140241e04
mov ecx, dword [rsp + 0x44]
mov r14, qword [rsp + 0x68]
jmp 0x1402417ef
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 0x25], 0
jne case.default.0x14023c672
mov rax, qword [rdi + 0x30]
mov rbx, qword [rax]
mov rax, qword [rsp + 0x60]
mov rsi, qword [rbx]
and dword [rax + 0x8c], 0xfffffff7
or dword [rax + 0x8c], 4
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x48]
mov rdx, rbx
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x60]
and dword [rax + 0x8c], 0xfffffff3
mov rcx, rax
call fcn.140239c30
cmp dword [rsp + 0x44], 0
jne 0x1402414e0
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x1402405ef
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x1402405f3
mov rax, qword [r14 + r12*8 + 0x10]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
test byte [rbx + 0x24], 2
je 0x140241525
cmp byte [rbx + 0x26], 1
je 0x140241525
mov dl, 1
mov rcx, rbx
call fcn.140217e80
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14023c9a7
mov rax, qword [rdi]
mov rdx, qword [rbx + 8]
mov rcx, rdi
call qword [rax + 0x98]
mov rdx, rdi
mov rcx, rsi
mov dword [rsp + 0x44], eax
call fcn.140239c30
and dword [rsi + 0x8c], 0xffffffdf
mov esi, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
jmp 0x1402417ef
mov rax, qword [r14 + r12*8 + 0x10]
movsxd rdx, dword [r14 + r12*8 + 8]
mov rbx, qword [rax + 0x10]
mov r11, qword [rbx]
cmp qword [r11 + 0x68], 0
je 0x14024174e
movsxd rax, dword [r14 + r12*8 + 0xc]
movzx edi, byte [r15 + 0x54]
mov r10, qword [rsi + 0x18]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x50]
xor eax, eax
test edx, edx
jle 0x1402415b0
nop dword [rax]
nop word [rax + rax]
mov qword [r10 + rax*8], rcx
inc rax
add rcx, 0x38
cmp rax, rdx
jl 0x1402415a0
movzx eax, byte [r14 + r12*8 + 3]
lea r9, [rbp + 0x198]
mov r8, r10
mov rcx, rbx
mov byte [r15 + 0x54], al
call qword [r11 + 0x68]
mov rdx, rbx
mov rcx, rsi
mov dword [rsp + 0x44], eax
mov byte [r15 + 0x54], dil
call fcn.140239c30
mov ecx, dword [rsp + 0x44]
test ecx, ecx
jne 0x1402415fc
cmp dword [r14 + r12*8 + 4], ecx
je 0x1402415fc
mov rdx, qword [rbp + 0x198]
mov qword [rbp - 0x50], rdx
mov qword [r15 + 0x30], rdx
cmp cl, 0x13
jne 0x140241657
mov rax, qword [r14 + r12*8 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140241657
movzx eax, byte [r14 + r12*8 + 3]
cmp al, 4
jne 0x14024162d
mov ecx, dword [rsp + 0x40]
xor r11d, r11d
inc ecx
mov dword [rsp + 0x44], r11d
mov dword [rsp + 0x40], ecx
jmp 0x14023e67a
cmp al, 5
jne 0x140241645
mov eax, 2
mov byte [rsi + 0x8a], al
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
movzx eax, al
mov byte [rsi + 0x8a], al
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
inc dword [rsi + 0x90]
mov esi, dword [rsp + 0x40]
jmp 0x1402417ef
mov rax, qword [r15 + 0x20]
movsxd rcx, dword [r14 + r12*8 + 4]
mov ebx, dword [rsp + 0x48]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x3c]
mov qword [r13 + 0x18], rcx
mov ecx, dword [rsp + 0x40]
inc ecx
jmp 0x14023c5d3
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [r15 + 0x20]
mov r8d, dword [r14 + r12*8 + 0xc]
shl rcx, 5
mov edx, r11d
mov rcx, qword [rcx + rax + 8]
test r8d, r8d
je 0x1402416bf
mov rax, qword [rcx + 8]
mov edx, dword [rax + 0x3c]
cmp edx, r8d
cmovb edx, r8d
call fcn.14022a490
movsxd rcx, eax
mov qword [r13 + 0x18], rcx
jmp 0x14023e66d
mov eax, dword [r14 + r12*8 + 8]
lea esi, [rax - 1]
test eax, eax
jne 0x1402416e0
mov esi, dword [rsp + 0x40]
cmp qword [r15 + 0xb8], 0
je 0x1402417b0
mov rax, qword [rsp + 0x60]
mov ecx, 0x800
test dword [rax + 0x8c], ecx
jne 0x1402417b0
mov rdx, qword [r14 + r12*8 + 0x10]
test rdx, rdx
jne 0x14024171e
mov rdx, qword [rax + 0xe0]
test rdx, rdx
je 0x1402417b0
mov rcx, rax
call fcn.14023bde0
mov rcx, qword [r15 + 0xc0]
mov rdx, rax
mov rbx, rax
call qword [r15 + 0xb8]
mov rdx, rbx
mov rcx, r15
call fcn.140215b70
mov ecx, dword [rsp + 0x44]
jmp 0x1402417ef
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov edi, 0x2460
jmp 0x140241802
mov ecx, dword [rsp + 0x44]
mov r10, qword [rsp + 0x50]
mov edi, 0x2460
mov r8d, 0x1000
jmp 0x140241806
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x1402417f7
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov r10, rbx
jmp 0x1402417fc
mov esi, dword [rsp + 0x40]
xor r11d, r11d
jmp 0x140241806
mov ecx, dword [rsp + 0x44]
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
jmp 0x1402417ef
mov ecx, dword [rsp + 0x44]
mov edi, 0x2460
jmp 0x140241802
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov edi, 0x2460
jmp 0x140241802
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov r10, qword [rsp + 0x50]
xor r11d, r11d
mov edi, 0x2460
jmp 0x140241802
mov r14, rbx
xor r11d, r11d
mov r10, qword [rsp + 0x50]
mov edi, 0x2460
mov r8d, 0x1000
mov ebx, dword [rsp + 0x48]
inc esi
mov dword [rsp + 0x40], esi
test ecx, ecx
jne 0x14024192b
mov edx, 0x80
mov ecx, esi
mov rsi, qword [rsp + 0x60]
lea r9d, [rdx - 0x7f]
jmp 0x14023c5e0
mov ecx, dword [r14 + r12*8 + 4]
mov rdi, qword [rsp + 0x60]
mov dword [rsi + 0x84], ecx
movzx eax, byte [r14 + r12*8 + 8]
mov byte [rsi + 0x8a], al
mov esi, dword [rsp + 0x40]
mov dword [rdi + 0x80], esi
test ecx, ecx
je 0x1402418f1
movzx eax, byte [r14 + r12*8 + 3]
test al, al
je 0x1402418a2
lea rcx, [0x140000000]
movzx eax, al
mov r11, qword [rcx + rax*8 + 0x32d3f0]
test r11, r11
je 0x1402418a2
mov rax, qword [r14 + r12*8 + 0x10]
test rax, rax
je 0x1402418a2
lea rbx, [rdi + 0x48]
lea r8, str._s_constraint_failed:__s
mov r9, r11
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140216090
jmp 0x1402418ce
mov r9, qword [r14 + r12*8 + 0x10]
lea rbx, [rdi + 0x48]
mov rdx, r15
mov rcx, rbx
test r9, r9
je 0x1402418bf
lea r8, [0x14036b948]
jmp 0x1402418c9
mov r9, r11
lea r8, str._s_constraint_failed
call fcn.140216090
mov rax, qword [rbx]
mov r9, qword [rdi + 0xe0]
mov ecx, dword [r14 + r12*8 + 4]
lea rdx, str.abort_at__d_in___s_:__s
mov r8d, esi
mov qword [rsp + 0x20], rax
call fcn.140217b90
mov rcx, rdi
mov rsi, rdi
call fcn.140237a40
cmp eax, 5
je 0x140241f48
cmp dword [rsi + 0x84], 0
mov edi, 0x65
mov eax, 1
cmovne edi, eax
jmp 0x1402419b1
mov ecx, 9
mov dword [rsp + 0x44], ecx
mov esi, dword [rsp + 0x40]
movzx r12d, byte [rsp + 0x4c]
mov rdx, qword [rsp + 0x60]
mov r8d, esi
mov rax, qword [rdx + 0x48]
mov r9, qword [rdx + 0xe0]
mov dword [rdx + 0x84], ecx
mov ecx, dword [rsp + 0x44]
lea rdx, str.statement_aborts_at__d:___s___s
mov qword [rsp + 0x20], rax
call fcn.140217b90
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140237a40
cmp dword [rsp + 0x44], 0xc0a
jne 0x14024197b
mov byte [r15 + 0x50], 1
mov edi, 1
test r12b, r12b
je 0x1402419b1
mov rcx, qword [r15 + 0x20]
movzx ebx, r12b
dec ebx
movsxd rax, ebx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.140259710
cmp ebx, edi
je 0x1402419b1
mov rcx, qword [r15 + 0x20]
mov rcx, qword [rcx + 0x38]
call fcn.140259710
mov rax, qword [rbp - 0x50]
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x30], rax
mov eax, dword [rsp + 0x48]
mov rcx, rsi
add dword [rsi + 0xb0], eax
call fcn.140236420
mov eax, edi
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.1402b6d40
lea r11, [rsp + 0x4b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov eax, dword [rsi + 0x7c]
add eax, 2
or eax, 1
mov dword [rsi + 0x7c], eax
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x50]
mov qword [rsi + 0x28], rdi
cmp dword [r14 + r12*8 + 8], 0
jle 0x140241a70
lea rbx, [rdi + 0x24]
xor esi, esi
mov eax, 0x1000
test word [rbx], ax
je 0x140241a54
movsxd rax, esi
imul rcx, rax, 0x38
add rcx, rdi
call fcn.140233e40
test eax, eax
jne 0x140241fac
movsxd rax, esi
imul rcx, rax, 0x38
add rcx, rdi
call fcn.140233f30
inc esi
add rbx, 0x38
cmp esi, dword [r14 + r12*8 + 8]
jl 0x140241a33
cmp byte [r15 + 0x50], 0
jne 0x140241fac
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov edi, 0x64
inc eax
mov dword [rsi + 0x80], eax
jmp 0x1402419b1
mov rdx, qword [rsi]
mov dword [rsi + 0x84], 0x313
mov byte [rsi + 0x8a], 2
lea r8, str.FOREIGN_KEY_constraint_failed
lea rcx, [rsi + 0x48]
call fcn.140216090
mov esi, dword [rsp + 0x40]
mov ecx, 1
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
movzx eax, word [rbp + 0x9c]
mov r12d, 0x2460
test r12w, ax
je 0x140241b98
mov ecx, 0x2000
test cx, ax
je 0x140241b0d
mov rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0x78]
call fcn.140234070
lea rcx, [rbp + 0x78]
call fcn.1402341c0
jmp 0x140241b98
mov ecx, 0x400
test cx, ax
je 0x140241b31
mov rcx, qword [rbp + 0x80]
call qword [rbp + 0xa0]
mov qword [rbp + 0xa0], 0
jmp 0x140241b98
movzx eax, byte [rbp + 0x9c]
test al, 0x20
je 0x140241b4a
mov rcx, qword [rbp + 0x90]
call fcn.14021f560
jmp 0x140241b98
test al, 0x40
je 0x140241b98
mov rdx, qword [rbp + 0x90]
mov rax, qword [rdx]
mov rcx, qword [rax + 0xf8]
mov qword [rdx + 8], rcx
mov qword [rax + 0xf8], rdx
test byte [rbp + 0x9c], 0x20
je 0x140241b7f
mov rcx, qword [rbp + 0x90]
call fcn.14021f560
movzx eax, word [rbp + 0x9c]
mov ecx, 0xbe01
and ax, cx
or ax, bx
mov word [rbp + 0x9c], ax
mov rdx, qword [rbp + 0xa8]
test rdx, rdx
je 0x140241fb5
mov rcx, qword [rbp + 0x78]
call fcn.140215b70
jmp 0x140241fb5
mov ecx, 0x14
mov dword [rsp + 0x44], ecx
jmp 0x140241cd8
lea r9, [0x14036fb6c]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0x10f9f
mov ecx, 0xb
call fcn.140217b90
mov esi, dword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov ecx, 0xb
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
lea r8, str.cannot_open_savepoint___SQL_statements_in_progress
lea rcx, [rsi + 0x48]
mov rdx, r15
call fcn.140216090
mov esi, dword [rsp + 0x40]
mov ecx, 5
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
mov rcx, qword [rsp + 0x60]
lea r8, str.cannot_release_savepoint___SQL_statements_in_progress
mov r15, rdi
add rcx, 0x48
jmp 0x140241c06
mov esi, dword [rsp + 0x40]
mov eax, 5
mov dword [rbx + 0x80], esi
mov byte [rdi + 0x4e], 0
mov edi, eax
mov dword [rbx + 0x84], eax
mov rsi, rbx
jmp 0x1402419b1
lea rcx, [rbx + 0x48]
lea r8, str.FOREIGN_KEY_constraint_failed
mov rsi, rbx
mov dword [rbx + 0x84], 0x313
mov byte [rbx + 0x8a], 2
call fcn.140216090
mov edi, r14d
jmp 0x1402419b1
mov eax, 8
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x140241cd8
mov rax, qword [rsp + 0x60]
mov esi, dword [rsp + 0x40]
mov dword [rax + 0x80], esi
jmp 0x140241f43
lea r9, [0x14036fb6c]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0x112ca
mov ecx, 0xb
call fcn.140217b90
mov ecx, 0xb
mov dword [rsp + 0x44], ecx
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
cmp byte [r15 + 0x50], 0
je 0x140241d18
mov dword [rsp + 0x44], 7
mov ecx, dword [rsp + 0x44]
jmp 0x140241d24
mov esi, dword [rsp + 0x40]
mov eax, 4
inc esi
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024192b
mov ecx, 0xd
mov dword [rsp + 0x44], ecx
jmp 0x140241cd3
mov r15, qword [rsp + 0x70]
mov rsi, rdi
jmp 0x140241cd8
cmp ecx, 0xc0a
je 0x140241927
lea r9, [0x1403349c8]
cmp ecx, 0x204
je 0x140241d54
movzx eax, cl
cmp eax, 0x1a
ja 0x140241d5b
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x329f20]
test rcx, rcx
je 0x140241d5b
mov r9, rcx
jmp 0x140241d5b
lea r9, str.abort_due_to_ROLLBACK
lea rcx, [rsi + 0x48]
lea r8, [0x14036b948]
mov rdx, r15
call fcn.140216090
mov ecx, dword [rsp + 0x44]
jmp 0x140241927
mov byte [rsi + 0x8a], 2
mov esi, dword [rsp + 0x40]
mov ecx, 6
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
lea rcx, [r9 + 0x48]
lea r8, str.too_many_levels_of_trigger_recursion
mov rdx, r15
mov dword [rsp + 0x44], 1
call fcn.140216090
mov esi, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
inc esi
jmp 0x14024192b
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 0x44], r9d
lea rax, str.into
lea r9, str.out_of
cmp ebx, 5
lea r8, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r9, rax
add rcx, 0x48
mov rdx, r15
call fcn.140216090
mov esi, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
inc esi
jmp 0x14024192b
mov r15, rcx
mov esi, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x60]
lea r8, str.string_or_blob_too_big
mov rdx, r15
add rcx, 0x48
call fcn.140216090
mov ecx, 0x12
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
mov ecx, 9
mov dword [rsp + 0x44], ecx
jmp 0x14024192b
mov ebx, dword [r14 + r12*8 + 4]
mov ecx, dword [r14 + r12*8 + 8]
test ebx, ebx
je 0x140241e66
cmp byte [r15 + 0x4e], 0
jne 0x140241e66
test ecx, ecx
jne 0x140241e66
cmp dword [r15 + 0xa4], ecx
jle 0x140241e66
lea r8, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x140241c02
movzx eax, byte [r15 + 0x4e]
cmp ebx, eax
jne 0x140241e9e
test ebx, ebx
jne 0x140241e82
lea r8, str.cannot_start_a_transaction_within_a_transaction
mov rdx, r15
jmp 0x140241ab1
lea rax, str.cannot_rollback___no_transaction_is_active
lea r8, str.cannot_commit___no_transaction_is_active
test ecx, ecx
cmovne r8, rax
mov rdx, r15
jmp 0x140241ab1
test ecx, ecx
je 0x140241ed7
mov edx, 0x204
mov rcx, r15
call fcn.14028c590
mov byte [r15 + 0x4e], 1
mov rcx, r15
call fcn.14028beb0
cmp dword [rsi + 0x84], 0
mov edi, 0x65
mov eax, 1
cmove eax, edi
mov edi, eax
jmp 0x1402419b1
mov rdx, qword [rsi]
mov rax, qword [rdx + 0x310]
add rax, qword [rdx + 0x308]
test rax, rax
jle 0x140241f18
lea rcx, [rsi + 0x48]
lea r8, str.FOREIGN_KEY_constraint_failed
mov dword [rsi + 0x84], 0x313
mov byte [rsi + 0x8a], 2
call fcn.140216090
mov edi, 1
jmp 0x1402419b1
mov rcx, rsi
mov byte [r15 + 0x4e], bl
call fcn.140237a40
cmp eax, 5
jne 0x140241eb4
mov rax, qword [rsp + 0x60]
mov esi, dword [rsp + 0x40]
mov dword [rax + 0x80], esi
mov eax, 1
sub al, bl
mov byte [r15 + 0x4e], al
mov rsi, qword [rsp + 0x60]
mov eax, 5
mov edi, eax
mov dword [rsi + 0x84], eax
jmp 0x1402419b1
movzx r12d, byte [rsp + 0x4c]
mov rax, qword [0x140329f68]
mov r14, qword [rsp + 0x60]
lea r9, [0x1403349c8]
test rax, rax
lea r8, [0x14036b948]
lea rcx, [r14 + 0x48]
mov rdx, r15
cmovne r9, rax
mov dword [rsp + 0x44], 9
mov dword [r14 + 0x84], 9
call fcn.140216090
mov ecx, dword [rsp + 0x44]
jmp 0x140241931
mov r15, rcx
mov esi, dword [rsp + 0x40]
mov rdi, qword [rsp + 0x60]
movzx r12d, byte [rsp + 0x4c]
lea rcx, [rdi + 0x48]
lea r8, str.out_of_memory
mov rdx, r15
mov byte [r15 + 0x50], 1
call fcn.140216090
mov ecx, 7
mov dword [rsp + 0x44], ecx
jmp 0x140241931