Function at 0x1402421d0
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 [0x14041da10]
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.14023c0c0
mov rdi, qword [rsp + 0x60]
lea r9d, [r13 + 1]
cmp dword [rdi + 0x84], 7
je 0x140247ceb
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 0x140247c90
mov rsi, rdi
cmp qword [r15 + 0x180], rbx
je 0x1402422ea
mov eax, dword [rdi + 0xb0]
test eax, eax
jne 0x1402422de
mov eax, dword [r15 + 0x190]
mov dword [rbp - 0x60], eax
jmp 0x1402422ea
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 0x140247cdc
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 0x140242375
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 0x14024236b
mov rcx, r13
call fcn.140239e70
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.0x1402423a2
cdqe
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x247d14]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x140246326
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 0x140242303
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 0x140242303
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 0x140242435
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
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 0x1402422fe
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 0x140242303
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r10 + 0x24], 1
je case.default.0x1402423a2
cmp dword [r14 + r12*8 + 4], 0
jne 0x140247559
mov r8, qword [rsi + 0xf0]
test r8, r8
je 0x140247559
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 0x140242567
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 0x1402443b5
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 0x140242303
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 0x140242303
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 0x140242303
mov rdx, qword [r14 + r12*8 + 0x10]
mov byte [r14 + r12*8], 0x1b
mov rax, rdx
test rdx, rdx
jne 0x1402425f3
mov eax, r11d
jmp 0x140242607
cmp byte [rdx], 0
je 0x140242600
inc rax
cmp byte [rax], 0
jne 0x1402425f8
sub eax, edx
and eax, 0x3fffffff
movzx ebx, byte [rsp + 0x58]
mov dword [r14 + r12*8 + 4], eax
cmp bl, 1
je 0x14024269d
mov r9b, 1
or r8d, 0xffffffff
mov rcx, r13
mov qword [rsp + 0x20], r11
call fcn.14023a670
mov dword [rsp + 0x44], eax
cmp eax, 0x12
je 0x140247b30
test byte [r13 + 0x24], 2
movzx edx, bl
je 0x14024265e
movzx ecx, byte [r13 + 0x26]
cmp ecx, edx
je 0x14024265e
mov rcx, r13
call fcn.14021dbb0
test eax, eax
jne 0x140247cdc
mov eax, 0x800
mov qword [r13 + 0x30], 0
or word [r13 + 0x24], ax
cmp byte [r14 + r12*8 + 1], 0xff
jne 0x140242685
mov rdx, qword [r14 + r12*8 + 0x10]
mov rcx, r15
call fcn.14021b8a0
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 0x140247b30
jmp 0x1402426b3
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 0x14024751f
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 0x140242739
mov r12d, 0x2460
nop dword [rax + rax]
add r13, 0x38
test word [r13 + 0x24], r12w
je 0x140242723
mov rcx, r13
call fcn.140239e70
dec ebx
mov word [r13 + 0x24], di
test ebx, ebx
jg 0x140242710
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 0x1402443b5
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 0x140242303
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.14023a670
movzx eax, byte [rsp + 0x58]
mov byte [r13 + 0x26], al
jmp 0x14024439d
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 0x1402427e8
mov r8d, dword [rdx + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x1402427d3
add r8d, dword [rdx + 0x18]
mov rax, qword [rdx]
mov ecx, r11d
cmp r8d, dword [rax + 0x68]
setg cl
test ecx, ecx
jne 0x140247b30
mov r8d, 0x800
mov rcx, r13
call fcn.14023a4d0
jmp 0x14024439d
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 0x140242837
mov rcx, r13
call fcn.140239e70
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 0x140242820
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 0x140242310
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.14023a4d0
mov r8d, 0x1000
test word [r13 + 0x24], r8w
je 0x1402428f6
mov rcx, r13
call fcn.140239b70
test eax, eax
jne 0x140247cdc
mov r8d, 0x1000
mov eax, edi
dec edi
test eax, eax
je 0x140242908
add r13, 0x38
add rbx, 0x38
jmp 0x1402428c3
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
xor r11d, r11d
lea r9d, [r11 + 1]
jmp 0x1402422f9
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.14023a4d0
jmp 0x14024439d
mov rax, qword [r15 + 0x180]
test rax, rax
je 0x14024296e
mov ecx, dword [rsp + 0x48]
cmp ecx, dword [rbp - 0x60]
jb 0x14024296e
mov rcx, qword [r15 + 0x188]
call rax
test eax, eax
jne 0x14024764e
cmp qword [rsi + 0xc8], 0
jg 0x1402477c6
mov edx, 1
mov rcx, rsi
call fcn.14023d590
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140247737
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
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 0x1402429e4
mov rcx, r13
call fcn.14023a1c0
jmp 0x14024439d
mov esi, 0x4000
test si, cx
je 0x1402429fe
mov rcx, rdi
call fcn.140239bf0
test eax, eax
jne 0x140247cdc
test word [rbx + 0x24], si
je 0x140242a14
mov rcx, rbx
call fcn.140239bf0
test eax, eax
jne 0x140247cdc
test byte [rdi + 0x24], 0x12
jne 0x140242a35
movzx r12d, byte [rsp + 0x58]
mov rcx, rdi
mov edx, r12d
call fcn.140239cd0
test eax, eax
jne 0x140247cdc
jmp 0x140242a3b
movzx r12d, byte [rsp + 0x58]
test byte [rbx + 0x24], 0x12
jne 0x140242a55
movzx edx, r12b
mov rcx, rbx
call fcn.140239cd0
test eax, eax
jne 0x140247cdc
mov eax, dword [rdi + 0x20]
add eax, dword [rbx + 0x20]
movsxd rsi, eax
movsxd rax, dword [r15 + 0x68]
cmp rsi, rax
jg 0x140247b30
xor r8d, r8d
cmp r13, rbx
lea edx, [rsi + 2]
sete r8b
mov rcx, r13
call fcn.140239a10
test eax, eax
jne 0x140247cdc
mov eax, 0xbe02
and word [r13 + 0x24], ax
or word [r13 + 0x24], 2
cmp r13, rbx
je 0x140242aae
movsxd r8, dword [rbx + 0x20]
mov rdx, qword [rbx + 8]
mov rcx, qword [r13 + 8]
call fcn.1402bd1f0
movsxd rcx, dword [rbx + 0x20]
movsxd r8, dword [rdi + 0x20]
mov rdx, qword [rdi + 8]
add rcx, qword [r13 + 8]
call fcn.1402bd1f0
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 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
mov rcx, rbx
call fcn.1402420b0
movsxd rax, dword [r14 + r12*8 + 8]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x50]
mov rcx, rdi
call fcn.1402420b0
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 0x140242d65
and al, cl
test al, 4
je 0x140242c82
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 0x140242c10
dec ecx
je 0x140242bf2
dec ecx
je 0x140242bd3
dec ecx
je 0x140242ba4
test r8, r8
je 0x140242d60
cmp r8, 0xffffffffffffffff
mov rax, rdx
mov r9d, 1
cmove r8, r9
cqo
idiv r8
jmp 0x140242c52
test r8, r8
je 0x140242d60
cmp r8, 0xffffffffffffffff
jne 0x140242bc6
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x140242c85
mov rax, rdx
cqo
idiv r8
mov rdx, rax
jmp 0x140242c4c
lea rcx, [rbp - 0x58]
mov rdx, r8
call fcn.14021f280
test eax, eax
jne 0x140242c85
mov rdx, qword [rbp - 0x58]
mov r10, qword [rsp + 0x50]
jmp 0x140242c4c
movabs rax, 0x8000000000000000
cmp r8, rax
jne 0x140242c0b
test rdx, rdx
jns 0x140242c85
sub rdx, rax
jmp 0x140242c4c
neg r8
jmp 0x140242c13
test r8, r8
js 0x140242c2e
test rdx, rdx
jle 0x140242c49
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jl 0x140242c85
jmp 0x140242c49
test rdx, rdx
jns 0x140242c49
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jg 0x140242c85
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 0x1402443b5
xor sil, sil
mov rcx, rbx
call fcn.140239fd0
mov rcx, rdi
movaps xmm2, xmm0
call fcn.140239fd0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rax + r12*8]
movaps xmm3, xmm0
sub ecx, 0x59
je 0x140242d00
dec ecx
je 0x140242cfa
dec ecx
je 0x140242cf4
dec ecx
je 0x140242ce6
cvttsd2si rcx, xmm2
cvttsd2si rax, xmm0
test rcx, rcx
je 0x140242d60
cmp rcx, 0xffffffffffffffff
mov r9d, 1
cqo
cmove rcx, r9
xorps xmm3, xmm3
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x140242d0a
ucomisd xmm2, xmm6
jp 0x140242cee
je 0x140242d60
divsd xmm3, xmm2
jmp 0x140242d04
mulsd xmm3, xmm2
jmp 0x140242d04
subsd xmm3, xmm2
jmp 0x140242d04
addsd xmm3, xmm2
mov r9d, 1
movaps xmm0, xmm3
call fcn.14021e360
test eax, eax
jne 0x140242d60
mov eax, 0xbe08
movsd qword [r13 + 0x10], xmm3
and word [r13 + 0x24], ax
or word [r13 + 0x24], 8
test r14b, 8
jne 0x140242d3f
test sil, sil
jne 0x140242d3f
mov rcx, r13
call fcn.14023a030
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 0x1402443b5
mov rsi, qword [rsp + 0x60]
mov rcx, r13
call fcn.14023a1c0
jmp 0x140244398
movsxd rax, dword [r14 + r12*8 + 4]
test eax, eax
je 0x14024439d
imul rcx, rax, 0x38
xor edx, edx
add rcx, r10
call fcn.14023a280
jmp 0x14024439d
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 0x140242e05
nop word [rax + rax]
mov qword [r14 + rdi*8], rbx
test word [rbx + 0x24], r8w
je 0x140242df1
mov rcx, rbx
call fcn.140239b70
test eax, eax
jne 0x140244f58
mov r8d, 0x1000
inc rdi
add rbx, 0x38
cmp rdi, r15
jl 0x140242dd0
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 0x140242e9c
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 0x1402477fe
cmp byte [rbp + 0xd1], 0
je 0x140242f9c
cmp dword [rbp + 0xcc], 0
je 0x140242f86
test byte [rbp + 0x9c], bl
je 0x140242ef6
xor r9d, r9d
jmp 0x140242f69
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 0x140242f25
lea rcx, [rbp + 0x78]
call fcn.140239bf0
test byte [rbp + 0x9c], 2
je 0x140242f4d
cmp byte [rbp + 0x9e], bl
je 0x140242f42
lea rcx, [rbp + 0x78]
movzx edx, bl
call fcn.14021dbb0
lea rcx, [rbp + 0x78]
call fcn.140239c60
jmp 0x140242f58
lea rcx, [rbp + 0x78]
mov edx, ebx
call fcn.140239cd0
xor r9d, r9d
cmp byte [rbp + 0x9e], bl
cmove r9, qword [rbp + 0x80]
lea rcx, [rdi + 0x48]
lea r8, [0x140374da0]
mov rdx, r15
call fcn.14021bdc0
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.14023dd80
jmp 0x140242fa1
mov r14, qword [rsp + 0x68]
test byte [rbp + 0x9c], 2
movzx ecx, byte [rsp + 0x58]
je 0x140242fc6
movzx eax, byte [rbp + 0x9e]
cmp eax, ecx
je 0x140242fc6
movzx edx, cl
lea rcx, [rbp + 0x78]
call fcn.14021dbb0
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 0x14024637c
mov edx, dword [r13 + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x140243014
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 0x140247b34
mov ecx, dword [rsp + 0x44]
jmp 0x140247522
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 0x140243076
mov rcx, r13
call fcn.14023a1c0
jmp 0x14024439d
call fcn.140239f40
mov rcx, rdi
mov rbx, rax
call fcn.140239f40
movzx edx, byte [r14 + r12*8]
mov rcx, rax
cmp dl, 0x55
jne 0x140243098
and rbx, rax
jmp 0x14024310a
cmp dl, 0x56
jne 0x1402430a2
or rbx, rax
jmp 0x14024310a
test rax, rax
je 0x14024310a
jns 0x1402430bc
mov eax, 0xaf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x1402430c2
neg rcx
cmp rcx, 0x40
jl 0x1402430db
test rbx, rbx
jns 0x1402430d4
cmp dl, 0x57
je 0x1402430d4
or eax, 0xffffffff
movsxd rbx, eax
jmp 0x14024310a
xor eax, eax
movsxd rbx, eax
jmp 0x14024310a
cmp dl, 0x57
jne 0x1402430e8
shl rbx, cl
mov r8, rbx
jmp 0x140243107
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140243107
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 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
mov rcx, rbx
call fcn.14023a090
movsxd rax, dword [r14 + r12*8 + 8]
add qword [rbx + 0x18], rax
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rbx, rax, 0x38
add rbx, r10
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x140243194
mov rcx, rbx
call fcn.1402420b0
test byte [rbx + 0x24], 8
je 0x14024316f
mov rcx, rbx
call fcn.14023a030
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x14024318f
mov eax, dword [r14 + r12*8 + 8]
test eax, eax
je 0x1402478e6
mov ecx, eax
mov dword [rsp + 0x40], eax
jmp 0x1402443a7
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 0x1402443af
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 4
je 0x1402431d2
call fcn.14023a0c0
mov r10, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x40]
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x1402443af
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.0x1402423a2
movzx eax, cx
shr ax, 3
and ax, 2
or ax, cx
mov word [rbx + 0x24], ax
test al, 2
jne 0x140243224
test al, 0xc
je 0x140243224
movzx edx, byte [rsp + 0x58]
mov rcx, rbx
call fcn.140239cd0
mov eax, 0xfff3
and word [rbx + 0x24], ax
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x14024325d
mov rcx, rbx
call fcn.140239bf0
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 0x140247522
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 0x140247522
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.0x1402423a2
test al, 0x10
jne 0x1402432d1
test al, 2
jne 0x1402432b1
test al, 0xc
je 0x1402432b1
movzx edx, byte [rsp + 0x58]
mov rcx, rbx
call fcn.140239cd0
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 0x1402443af
mov ecx, 0xfe10
and ax, cx
mov ecx, dword [rsp + 0x40]
mov word [rbx + 0x24], ax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
call fcn.14023a140
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
jne 0x1402431d2
call fcn.14023a090
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
jne 0x1402431d2
call fcn.14023a0c0
jmp 0x14024439d
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 0x140243406
mov r8, qword [rsp + 0x68]
movzx eax, byte [r8 + r12*8 + 3]
test al, al
jns 0x1402433a9
test r15b, 1
je 0x1402433a1
test r14b, 1
je 0x1402433a1
mov eax, 0x100
test ax, r14w
jne 0x1402433a1
mov eax, r11d
jmp 0x140243487
mov eax, r9d
jmp 0x140243487
mov r14, r8
test al, 0x10
je 0x1402433f9
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 0x140242310
test al, 8
je 0x1402433d1
mov ecx, dword [r14 + r12*8 + 8]
dec ecx
jmp 0x1402433d5
mov rax, qword [rsp + 0x68]
movzx ebx, byte [rax + r12*8 + 3]
and bl, 0x67
je 0x140243447
movzx r8d, byte [rsp + 0x58]
movzx edx, bl
mov rcx, rdi
call fcn.140242130
movzx r8d, byte [rsp + 0x58]
movzx edx, bl
mov rcx, rsi
call fcn.140242130
mov rcx, qword [rsp + 0x70]
cmp byte [rcx + 0x50], 0
jne 0x140247cd9
mov ebx, 0x4000
test word [rdi + 0x24], bx
je 0x14024345a
mov rcx, rdi
call fcn.140239bf0
test word [rsi + 0x24], bx
je 0x140243468
mov rcx, rsi
call fcn.140239bf0
mov rax, qword [rsp + 0x68]
mov rdx, rdi
mov rcx, rsi
mov r8, qword [rax + r12*8 + 0x10]
call fcn.14023ea90
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 0x1402434ca
dec edx
je 0x1402434c3
dec edx
je 0x1402434bc
dec edx
je 0x1402434b5
dec edx
je 0x1402434ae
test eax, eax
setns cl
jmp 0x1402434cf
test eax, eax
sets cl
jmp 0x1402434cf
test eax, eax
setle cl
jmp 0x1402434cf
test eax, eax
setg cl
jmp 0x1402434cf
test eax, eax
sete cl
jmp 0x1402434cf
test eax, eax
setne cl
test byte [r8 + r12*8 + 3], 0x10
je 0x140243544
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 0x1402443af
test ecx, ecx
je 0x1402434ff
mov ecx, dword [r8 + r12*8 + 8]
dec ecx
jmp 0x140243503
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 0x140242310
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 0x140243629
lea rsi, [r13 + 0x20]
test rax, rax
je 0x1402435bf
mov r8d, dword [rax + rbx*4]
jmp 0x1402435c2
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.14023ea90
mov dword [rbp - 0x38], eax
test eax, eax
jne 0x140243612
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 0x1402435b4
jmp 0x14024361c
test r14d, r14d
je 0x14024361c
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 0x1402443aa
mov ebx, dword [rbp - 0x38]
test ebx, ebx
jns 0x14024365b
mov ecx, dword [r14 + r12*8 + 4]
mov ebx, dword [rsp + 0x48]
jmp 0x140242303
je 0x1402423c9
mov ecx, dword [r14 + r12*8 + 0xc]
mov ebx, dword [rsp + 0x48]
jmp 0x140242303
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
je 0x140243688
mov ebx, 2
jmp 0x14024369e
call fcn.140239f40
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 0x1402436b7
mov edx, 2
jmp 0x1402436cd
call fcn.140239f40
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 0x1402436f2
movzx edx, byte [rcx + rax + 0x3334c0]
jmp 0x1402436fa
movzx edx, byte [rcx + rax + 0x3334e0]
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 0x14024372f
mov eax, 0xbe01
and word [r13 + 0x24], ax
or word [r13 + 0x24], 1
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x1402443af
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 0x1402443af
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 0x140243781
mov rcx, r13
call fcn.14023a1c0
jmp 0x14024439d
call fcn.140239f40
xor edx, edx
mov rcx, r13
test rax, rax
sete dl
call fcn.14023a280
jmp 0x14024439d
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 0x1402437cb
mov rcx, r13
call fcn.14023a1c0
jmp 0x14024439d
call fcn.140239f40
mov rcx, r13
not rax
mov rdx, rax
call fcn.14023a280
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
mov rcx, qword [rsi + 0x118]
cmp byte [rax + rcx], 0
jne 0x1402423c9
mov byte [rax + rcx], 1
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
add rcx, r10
test byte [rcx + 0x24], 1
je 0x140243825
mov ecx, dword [r14 + r12*8 + 0xc]
jmp 0x14024384f
call fcn.140239fd0
ucomisd xmm0, xmm6
jp 0x140243836
jne 0x140243836
xor ecx, ecx
jmp 0x14024383b
mov ecx, 1
mov r10, qword [rsp + 0x50]
cmp dil, 0x2d
jne 0x14024384f
xor eax, eax
test ecx, ecx
sete al
mov ecx, eax
test ecx, ecx
je 0x1402431a4
mov ecx, dword [r14 + r12*8 + 8]
dec ecx
inc ecx
xor r11d, r11d
mov dword [rsp + 0x40], ecx
jmp 0x1402443af
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
test byte [rcx + r10 + 0x24], 1
je 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
test byte [rcx + r10 + 0x24], 1
jne 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
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.14023e050
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a3e
mov rax, rdi
mov eax, dword [rax + 0x7c]
cmp dword [r15 + 0x58], eax
jne 0x14024392b
test byte [rbx + r12*8 + 3], 0x20
je 0x140243b2e
cmp byte [r15 + 0x25], 0
je 0x140243976
test r13, r13
jne 0x140243961
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 0x140243a90
mov eax, 0xbe01
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
jmp 0x140243ee5
test byte [r15 + 0x28], 2
jne 0x140243a06
cmp byte [r13 + 0x6f], 1
je 0x140243992
mov qword [rbp + 0x48], 0
jmp 0x14024399e
lea rdx, [rbp + 0x48]
mov rcx, r13
call fcn.140231fb0
cmp word [r13 + 0x56], 0
jne 0x1402439e9
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.14022e7e0
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 0x140243a72
lea rdi, [r15 + 0x5c]
mov rcx, r13
mov rdx, rdi
call fcn.140232020
cmp word [r13 + 0x56], 0
jne 0x140243a60
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.14022e7e0
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 0x140243a7e
mov dword [r15 + 0x60], eax
jmp 0x140243a82
mov dword [r15 + 0x60], ebx
mov rcx, qword [rsp + 0x70]
cmp eax, dword [rcx + 0x68]
ja 0x140247b2d
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 0x140243ab4
movzx ecx, al
mov eax, 1
mov dword [rbp - 0x3c], ecx
jmp 0x140243ac3
lea rdx, [rbp - 0x3c]
call fcn.14021f0e0
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 0x140243ae3
mov qword [r15 + 0x68], rax
mov dword [r15 + 0x60], eax
cmp ecx, 0x18003
ja 0x140243aef
cmp ecx, dword [rdi]
jbe 0x140243b32
lea r9, [0x1403739bc]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0x10f5d
mov ecx, 0xb
call fcn.14021d8c0
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 0x14024751f
mov rdx, qword [rbp - 0x70]
movzx eax, word [r15 + 0x22]
cmp eax, esi
jg 0x140243da6
mov eax, dword [rdx]
cmp dword [r15 + 0x64], eax
jae 0x140243d63
mov r12, qword [r15 + 0x68]
test r12, r12
jne 0x140243bac
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.14023a8a0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140243b16
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 0x140243be2
movzx eax, al
inc rbx
mov dword [rbp - 0x28], eax
jmp 0x140243bfb
lea rdx, [rbp - 0x28]
mov rcx, rbx
call fcn.14021f0e0
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 0x140243c0c
add eax, 0xfffffff4
shr eax, 1
jmp 0x140243c1b
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x3311f0]
add esi, eax
mov dword [rbp - 0x3c], esi
cmp esi, eax
jb 0x140243c42
inc r14d
movsxd rax, r14d
lea rdi, [rax*4]
mov dword [rdi + rdx], esi
cmp r14d, dword [rbp - 0x80]
jg 0x140243c46
cmp rbx, r13
jb 0x140243bd0
jmp 0x140243c46
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 0x140243d2e
movzx eax, word [rbp + 0xc]
mov r12d, 0x2460
test r12w, ax
je 0x140243d03
mov ecx, 0x2000
test cx, ax
je 0x140243c95
mov rdx, qword [rbp]
lea rcx, [rbp - 0x18]
call fcn.140239da0
lea rcx, [rbp - 0x18]
call fcn.140239ef0
jmp 0x140243d03
mov ecx, 0x400
test cx, ax
je 0x140243cb0
mov rcx, qword [rbp - 0x10]
call qword [rbp + 0x10]
mov qword [rbp + 0x10], 0
jmp 0x140243d03
movzx eax, byte [rbp + 0xc]
test al, 0x20
je 0x140243cc3
mov rcx, qword [rbp]
call fcn.140225290
jmp 0x140243d03
test al, 0x40
je 0x140243d03
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 0x140243cef
mov rcx, qword [rbp]
call fcn.140225290
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 0x140243d1d
mov rcx, qword [rbp - 0x18]
call fcn.14021b8a0
mov qword [rbp + 0x18], 0
mov eax, 1
mov qword [rbp - 0x10], 0
mov word [rbp + 0xc], ax
cmp rbx, r13
ja 0x1402478f4
mov eax, dword [r15 + 0x5c]
cmp esi, eax
ja 0x1402478f4
cmp rbx, r13
jne 0x140243d50
cmp esi, eax
jne 0x1402478f4
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 0x140243da6
mov rax, qword [rsp + 0x68]
cmp byte [rax + r12*8 + 1], 0xf8
jne 0x140243d91
mov rdx, qword [rax + r12*8 + 0x10]
mov r8d, 0x800
mov rcx, r14
call fcn.14023a4d0
jmp 0x140243ee1
mov eax, 0xbe01
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
jmp 0x140243ee1
movsxd rsi, esi
mov eax, dword [rdx + rsi*4 + 4]
cmp dword [r15 + 0x60], eax
jb 0x140243de4
mov eax, 0x2460
test word [r14 + 0x24], ax
je 0x140243dcb
mov rcx, r14
call fcn.140239e70
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.14023e270
jmp 0x140243ed8
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 0x140243e09
cmp ebx, 0xc
jb 0x140243e05
test bl, 1
je 0x140243e28
test al, al
js 0x140243e28
cmp ebx, 0xc
jb 0x140243e15
lea edi, [rbx - 0xc]
shr edi, 1
jmp 0x140243e24
lea rcx, [0x140000000]
movzx edi, byte [rbx + rcx + 0x3311f0]
test edi, edi
jne 0x140243e3e
mov eax, 0
lea rcx, [rbp + 0x48]
cmp ebx, 0xd
cmova rcx, rax
mov qword [rbp + 0x18], rax
jmp 0x140243ea3
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.14023a5e0
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.14023a8a0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140243b16
mov rcx, qword [rbp - 0x10]
mov r8, r14
mov edx, ebx
call fcn.14023e270
cmp qword [rbp + 0x18], 0
je 0x140243ed8
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 0x1402474fa
mov rcx, r14
call fcn.140239b70
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
test eax, eax
jne 0x140247ce0
mov ecx, dword [rsp + 0x44]
mov r13, qword [rsp + 0x78]
mov r14, qword [rsp + 0x68]
jmp 0x14024751f
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 0x1402431d2
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.140242130
movzx eax, byte [rdi]
add rbx, 0x38
test al, al
jne 0x140243f50
jmp 0x14024439d
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 0x140244009
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.140242130
movzx eax, byte [rbx + 1]
lea rbx, [rbx + 1]
add rdi, 0x38
test al, al
jne 0x140243fe0
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.14023e110
mov edi, eax
cmp eax, 0xc
jb 0x14024402b
lea ebx, [rdi - 0xc]
shr ebx, 1
jmp 0x14024403a
lea rcx, [0x140000000]
movzx ebx, byte [rdi + rcx + 0x3311f0]
mov eax, 0x4000
test word [rsi + 0x24], ax
je 0x14024405f
test r14, r14
je 0x140244054
mov rcx, rsi
call fcn.140239bf0
jmp 0x14024405f
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 0x140244072
mov eax, r12d
jmp 0x140244090
mov rcx, rdi
mov eax, r11d
nop dword [rax + rax]
shr rcx, 7
inc eax
test rcx, rcx
je 0x140244090
cmp eax, 9
jl 0x140244080
mov ecx, dword [rbp - 0x78]
mov r9d, dword [rbp - 0x80]
sub rsi, 0x38
add r15d, eax
cmp rsi, r13
jae 0x140244013
mov r12, qword [rbp - 0x58]
cmp r15d, 0x7e
jle 0x1402440f4
movsxd rax, r15d
mov edx, r11d
nop word [rax + rax]
shr rax, 7
inc edx
test rax, rax
je 0x1402440d0
cmp edx, 9
jl 0x1402440c0
add r15d, edx
mov eax, r11d
movsxd rcx, r15d
nop dword [rax]
shr rcx, 7
inc eax
test rcx, rcx
je 0x1402440f0
cmp eax, 9
jl 0x1402440e0
cmp edx, eax
jge 0x1402440f7
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 0x140247b2d
mov rdi, qword [rsp + 0x78]
xor r8d, r8d
mov edx, esi
mov rcx, rdi
call fcn.140239a10
test eax, eax
jne 0x140244f58
mov rdi, qword [rdi + 8]
mov r9d, 0x80
cmp r15d, r9d
jae 0x140244148
mov esi, 1
mov byte [rdi], r15b
mov eax, esi
jmp 0x140244182
test r15d, 0xffffc000
jne 0x14024416c
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 0x14024417d
mov edx, r15d
mov rcx, rdi
call fcn.14021ee20
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.14023e110
movsxd rcx, ebx
mov r10d, eax
cmp eax, r9d
jae 0x1402441ae
mov byte [rcx + rdi], r10b
mov eax, esi
jmp 0x1402441dc
add rcx, rdi
test r10d, 0xffffc000
jne 0x1402441d4
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 0x1402441dc
mov rdx, r10
call fcn.14021ee20
movzx eax, al
movsxd rcx, r15d
mov r8d, r10d
add rcx, rdi
mov rdx, r13
add ebx, eax
call fcn.14023e1e0
add r13, 0x38
mov r9d, 0x80
add r15d, eax
cmp r13, r12
jbe 0x140244190
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 0x140244237
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 0x1402443aa
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 0x14024428e
mov esi, dword [rsp + 0x40]
mov rax, r11
mov ecx, r11d
mov dword [rsp + 0x44], ecx
mov qword [r13 + 0x18], rax
jmp 0x140247522
lea rdx, [rbp + 0x158]
call fcn.140237400
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 0x140247522
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 0x1402443ce
cmp dword [r15 + 0xa4], r12d
jg 0x14024792b
mov rbx, r14
test r14, r14
jne 0x1402442ee
mov ebx, r11d
jmp 0x140244305
cmp byte [r14], 0
je 0x1402442fc
inc rbx
cmp byte [rbx], 0
jne 0x1402442f4
sub ebx, r14d
and ebx, 0x3fffffff
mov r8d, dword [r15 + 0x300]
xor edx, edx
mov rcx, r15
add r8d, dword [r15 + 0x2fc]
call fcn.140282e40
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a08
lea edx, [rbx + 0x21]
mov rcx, r15
call fcn.14021bb70
mov rdi, rax
test rax, rax
je 0x140244398
lea r9, [rax + 0x20]
lea ecx, [rbx + 1]
mov rdx, r14
movsxd r8, ecx
mov rcx, r9
mov qword [rax], r9
call fcn.1402bd1f0
cmp byte [r15 + 0x4e], 0
je 0x140244369
mov byte [r15 + 0x4e], 0
mov byte [r15 + 0x55], 1
jmp 0x140244370
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 0x140242310
mov rdi, qword [rsp + 0x70]
mov r15d, r11d
mov rsi, qword [rdi + 0x2f0]
test rsi, rsi
je 0x1402443fd
mov rcx, qword [rsi]
mov rdx, r14
call fcn.14021e570
test eax, eax
je 0x14024442f
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x1402443e2
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.14021bdc0
mov esi, dword [rsp + 0x40]
mov ecx, 1
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
cmp dword [rdi + 0xa4], 0
jle 0x140244442
cmp r12d, 1
je 0x140247952
cmp qword [rsi + 0x18], 0
jne 0x1402444a5
cmp byte [rdi + 0x55], 0
je 0x1402444a5
mov r14d, 1
mov dword [rbp - 0x78], r14d
cmp r12d, r14d
jne 0x1402444af
mov rbx, qword [rsp + 0x60]
mov rdx, qword [rbx]
mov rax, qword [rdx + 0x310]
add rax, qword [rdx + 0x308]
test rax, rax
jg 0x14024798a
mov rcx, rbx
mov byte [rdi + 0x4e], r14b
call fcn.14023d770
cmp eax, 5
je 0x140247967
mov byte [rdi + 0x55], 0
mov ecx, dword [rbx + 0x84]
mov dword [rsp + 0x44], ecx
jmp 0x14024458c
xor ecx, ecx
mov r14d, ecx
mov dword [rbp - 0x78], ecx
jmp 0x1402444b1
xor ecx, ecx
mov eax, dword [rdi + 0x2fc]
sub eax, r15d
lea r15d, [rax - 1]
cmp r12d, 2
jne 0x14024450e
mov rax, qword [rsp + 0x70]
mov edi, ecx
cmp dword [rax + 0x28], 0
jle 0x140244511
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.140231a80
inc edi
lea rbx, [rbx + 0x20]
cmp edi, dword [r12 + 0x28]
jl 0x1402444e0
mov r14d, dword [rbp - 0x78]
mov r12d, dword [rbp - 0x70]
mov rax, qword [rsp + 0x70]
jmp 0x140244511
mov rax, rdi
xor ecx, ecx
mov edi, ecx
cmp dword [rax + 0x28], ecx
jle 0x140244552
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.140231ca0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1402479fe
mov rax, qword [rsp + 0x70]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x140244520
mov rdi, qword [rsp + 0x70]
cmp r12d, 2
jne 0x14024458c
test byte [rdi + 0x2c], r12b
je 0x14024458c
mov rax, qword [rdi + 8]
test rax, rax
je 0x140244580
nop dword [rax]
or dword [rax + 0x8c], 0x20
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x140244570
mov rcx, rdi
call fcn.1402583d0
or dword [rdi + 0x2c], 2
cmp qword [rdi + 0x2f0], rsi
je 0x1402445c9
nop word [rax + rax]
mov rdx, qword [rdi + 0x2f0]
mov rcx, rdi
mov rax, qword [rdx + 0x18]
mov qword [rdi + 0x2f0], rax
call fcn.14021b8a0
dec dword [rdi + 0x2fc]
cmp qword [rdi + 0x2f0], rsi
jne 0x1402445a0
cmp r12d, 1
jne 0x1402445f6
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, rdi
mov qword [rdi + 0x2f0], rax
call fcn.14021b8a0
test r14d, r14d
jne 0x1402474cc
dec dword [rdi + 0x2fc]
jmp 0x140244615
mov rax, qword [rsi + 8]
mov qword [rdi + 0x308], rax
mov rax, qword [rsi + 0x10]
mov qword [rdi + 0x310], rax
test r14d, r14d
jne 0x1402474cc
mov r8d, r15d
mov r15, qword [rsp + 0x70]
mov edx, r12d
mov rcx, r15
call fcn.140282e40
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a03
mov esi, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
jmp 0x14024751f
mov edx, dword [r14 + r12*8 + 8]
test edx, edx
je 0x14024465b
test dword [r15 + 0x2c], 0x2000000
jne 0x1402479b6
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 0x140244797
mov rcx, rsi
call fcn.140230790
mov ecx, eax
mov dword [rsp + 0x44], eax
cmp eax, 5
je 0x1402479c3
test eax, eax
jne 0x140247a03
cmp dword [r14 + r12*8 + 8], eax
je 0x140244769
mov rbx, qword [rsp + 0x60]
test byte [rbx + 0x8c], 0x80
je 0x140244769
cmp byte [r15 + 0x4e], al
je 0x1402446c6
cmp dword [r15 + 0xa0], 1
jle 0x140244769
cmp dword [rbx + 0x9c], 0
jne 0x1402446ea
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.140282e40
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14024474d
mov edi, dword [rbx + 0x9c]
mov rbx, qword [rsi + 8]
mov rcx, rsi
call fcn.14022dad0
mov rcx, qword [rbx]
mov edx, edi
call fcn.14022a460
cmp byte [rsi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x140244748
dec dword [rsi + 0x14]
jne 0x140244748
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140244744
call qword [0x1404211a8]
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.1402372a0
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 0x1402447a0
mov ebx, r11d
mov eax, r11d
mov dword [rbp + 0x38], ebx
cmp byte [r14 + r12*8 + 3], 0
je 0x14024326e
cmp ebx, dword [r14 + r12*8 + 0xc]
jne 0x1402447be
cmp eax, dword [r14 + r12*8 + 0x10]
je 0x14024326e
mov rdi, qword [rsp + 0x60]
mov rcx, r15
mov rdx, qword [rdi + 0x48]
call fcn.14021b8a0
lea rdx, str.database_schema_has_changed
mov rcx, r15
call fcn.14021bce0
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 0x140244803
mov rcx, r15
call fcn.140258380
mov esi, dword [rsp + 0x40]
mov rax, rdi
mov ecx, 0x11
or dword [rax + 0x8c], 0x20
mov dword [rsp + 0x44], ecx
jmp 0x14024751f
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.1402372a0
movsxd rax, dword [rbp + 0x58]
mov qword [r13 + 0x18], rax
jmp 0x14024439d
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.14023a090
mov r8d, dword [rdi + 0x18]
mov edx, dword [r14 + r12*8 + 8]
mov rcx, qword [rbx + 8]
call fcn.140237340
mov dword [rsp + 0x44], eax
mov eax, dword [r14 + r12*8 + 8]
cmp eax, 1
jne 0x14024489d
mov rcx, qword [rbx + 0x18]
mov eax, dword [rdi + 0x18]
mov dword [rcx], eax
or dword [r15 + 0x2c], 2
jmp 0x1402448ad
cmp eax, 2
jne 0x1402448ad
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rdi + 0x18]
mov byte [rcx + 0x70], al
cmp dword [r14 + r12*8 + 4], 1
jne 0x1402426d3
mov rax, qword [r15 + 8]
test rax, rax
je 0x1402448e0
nop dword [rax]
nop word [rax + rax]
or dword [rax + 0x8c], 0x20
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x1402448d0
and dword [rsi + 0x8c], 0xffffffdf
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
test byte [rsi + 0x8c], 0x20
jne 0x140247a1d
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 0x140244950
mov rax, qword [rax + 0x18]
mov edi, r9d
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x60]
cmp cl, byte [rax + 0x8b]
jae 0x140244953
mov byte [rax + 0x8b], cl
jmp 0x140244953
mov edi, r11d
mov rcx, qword [rbp - 0x68]
test byte [rdx + rcx*8 + 3], 2
je 0x140244987
imul rbx, r15, 0x38
mov rax, r15
add rbx, r10
mov rcx, rbx
call fcn.14023a090
mov r15d, dword [rbx + 0x18]
cmp r15d, 2
jl 0x1402479d7
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rsp + 0x68]
movzx eax, byte [rdx + rcx*8 + 1]
cmp al, 0xfa
jne 0x1402449a3
mov r14, qword [rdx + rcx*8 + 0x10]
movzx esi, word [r14 + 8]
movzx eax, word [r14 + 6]
add esi, eax
jmp 0x1402449ab
cmp al, 0xf2
jne 0x1402449ab
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.140241fc0
mov rbx, rax
test rax, rax
je 0x140244f58
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.140231d80
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 0x140247522
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.140241fc0
mov rdi, rax
test rax, rax
je 0x140247cdc
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.14022f660
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140244b71
mov rcx, qword [rdi + 8]
lea edx, [rax + 1]
call fcn.140230790
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140244b71
mov r15, qword [rbx + r12*8 + 0x10]
test r15, r15
je 0x140244b46
mov rsi, qword [rdi + 8]
movzx ebx, byte [rbx + r12*8 + 3]
mov rcx, rsi
or ebx, 2
call fcn.14022dad0
lea rdx, [rbp + 0x54]
mov r8d, ebx
mov rcx, rsi
call fcn.140236920
cmp byte [rsi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x140244b17
dec dword [rsi + 0x14]
jne 0x140244b17
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140244b0f
call qword [0x1404211a8]
mov eax, dword [rsp + 0x44]
mov byte [rsi + 0x12], 0
test eax, eax
jne 0x140244b40
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.140231d80
mov dword [rsp + 0x44], eax
and dword [rdi + 0x28], 0xfffffffd
jmp 0x140244b6c
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.140231d80
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 0x140247522
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.140241fc0
test rax, rax
je 0x140247cdc
mov rcx, qword [r14 + r12*8 + 0x10]
mov rdx, rax
mov qword [rax + 0x10], rcx
mov rcx, r15
call fcn.140249360
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
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.140241fc0
test rax, rax
je 0x140247cdc
mov byte [rax + 0x25], 1
mov ecx, dword [r14 + r12*8 + 8]
or dword [rax + 0x28], 2
mov dword [rax + 0x1c], ecx
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
mov rdx, qword [rsi + 0x60]
mov rcx, rsi
mov rdx, qword [rdx + rax*8]
call fcn.14023cc80
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 0x1402443aa
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 0x140244d5d
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rdi, rax, 0x38
add rdi, r10
mov rcx, rdi
call fcn.1402420b0
mov rcx, rdi
call fcn.140239f40
mov byte [rbx + 0x26], 0
movzx ecx, word [rdi + 0x24]
mov r14, rax
test cl, 4
jne 0x140244ce2
test cl, 8
jne 0x140244cb7
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov ecx, dword [r14 + r12*8 + 8]
jmp 0x1402443a3
movsd xmm0, qword [rdi + 0x10]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
comisd xmm1, xmm0
jbe 0x140244cd4
test sil, 1
jne 0x140244ce2
dec esi
jmp 0x140244ce2
comisd xmm0, xmm1
jbe 0x140244ce2
test sil, 1
je 0x140244ce2
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.140232b20
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a03
cmp dword [rbp - 0x7c], eax
jne 0x140244d16
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 0x140244df3
test eax, eax
js 0x140244de1
jne 0x140244d45
cmp esi, 0x3e
je 0x140244de1
mov dword [rbp - 0x7c], r11d
mov ecx, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x1402443aa
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 0x140244dad
call fcn.140239bf0
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.140232b20
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a03
mov byte [rbx + 0x26], al
jmp 0x140244d1b
mov dword [rbp - 0x7c], r11d
mov rcx, qword [rbx]
lea rdx, [rbp - 0x7c]
call fcn.140233070
jmp 0x140244e20
test eax, eax
jg 0x140244e10
jne 0x140244dfe
cmp esi, 0x3b
je 0x140244e10
mov rax, qword [rbx]
mov ecx, r11d
cmp byte [rax + 0x6f], 1
setne cl
mov dword [rbp - 0x7c], ecx
jmp 0x140244e35
mov dword [rbp - 0x7c], r11d
mov rcx, qword [rbx]
lea rdx, [rbp - 0x7c]
call fcn.140233210
mov dword [rsp + 0x44], eax
mov ecx, eax
test eax, eax
jne 0x140247a03
xor r11d, r11d
mov byte [rbx + 0x26], r11b
cmp dword [rbp - 0x7c], 0
je 0x140244d49
mov ecx, dword [r14 + r12*8 + 8]
mov rsi, qword [rsp + 0x60]
dec ecx
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x1402443aa
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.140239f40
mov word [rbx + 0x26], 0x100
mov qword [rbx + 0x40], rax
jmp 0x14024439d
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 0x140244f20
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 0x140244f17
mov rdi, r11
mov r12d, 0x4000
test word [rdi + rsi + 0x24], r12w
je 0x140244f06
movsxd rax, ebx
imul rcx, rax, 0x38
add rcx, rsi
call fcn.140239bf0
mov rsi, qword [rbp + 0x188]
movzx ecx, word [rbp + 0x180]
inc ebx
movzx eax, cx
add rdi, 0x38
cmp ebx, eax
jl 0x140244ee1
mov r12, qword [rbp - 0x68]
lea rdi, [rbp + 0x178]
jmp 0x140244f98
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 0x140244f62
mov rcx, qword [rbx + 0x10]
call fcn.14021bb70
mov rdi, rax
mov r15, rax
test rax, rax
jne 0x140244f6f
mov r15, qword [rsp + 0x70]
jmp 0x140247cdc
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.14023e4c0
mov rbx, qword [rsp + 0x68]
mov byte [rdi + 0xa], 0
cmp byte [rbx + r12*8], 0x40
jne 0x140244fd2
movzx edx, word [rbp + 0x180]
xor ecx, ecx
test rdx, rdx
jle 0x140244fd2
mov rax, qword [rbp + 0x188]
add rax, 0x24
test byte [rax], 1
jne 0x140245014
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x140244fc1
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.140232b20
cmp dword [rbx + r12*8 + 0x10], 0
mov ecx, eax
mov dword [rsp + 0x44], eax
jne 0x140245021
mov rdx, r15
mov r15, qword [rsp + 0x70]
mov rcx, r15
call fcn.14021b8a0
mov ecx, dword [rsp + 0x44]
jmp 0x140245026
mov esi, dword [rbx + r12*8 + 8]
dec esi
mov dword [rsp + 0x40], esi
jmp 0x140244fd6
mov r15, qword [rsp + 0x70]
test ecx, ecx
jne 0x14024751c
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 0x14024509a
test ecx, ecx
je 0x140245081
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 0x1402443b5
mov ecx, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x50]
inc ecx
mov dword [rsp + 0x40], ecx
jmp 0x1402443b5
test ecx, ecx
jne 0x140245081
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 0x1402443b5
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.140232b20
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 0x14024512e
mov esi, dword [r14 + r12*8 + 8]
mov dword [rdi + 0x18], ecx
mov ecx, dword [rsp + 0x44]
dec esi
jmp 0x140247522
mov esi, dword [rsp + 0x40]
mov dword [rdi + 0x18], ecx
mov ecx, dword [rsp + 0x44]
jmp 0x140247522
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 0x1402422fe
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 0x140245376
test byte [rsi + 0x28], 1
jne 0x140245210
cmp byte [rdi + 0x6f], 1
jne 0x1402451a9
cmp byte [rdi + 0x6d], 0
jne 0x1402451fc
mov rcx, rdi
call fcn.140232810
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1402451f1
cmp byte [rdi + 0x6f], al
jne 0x1402451d2
mov eax, 1
mov edi, ecx
mov dword [rsp + 0x44], ecx
mov dword [rbp - 0x80], eax
mov ebx, eax
jmp 0x140245210
mov rcx, rdi
mov dword [rbp - 0x80], 0
call fcn.140232a80
mov dword [rsp + 0x44], eax
test eax, eax
mov ecx, dword [rsp + 0x44]
sete al
mov byte [rdi + 0x6d], al
test ecx, ecx
jne 0x140247a03
xor r11d, r11d
mov rcx, qword [rsi]
cmp byte [rcx + 0x6f], 1
je 0x140245256
mov rbx, r11
mov dword [rsp + 0x44], r11d
inc rbx
movsxd rdx, dword [r14 + r12*8 + 0xc]
test edx, edx
je 0x1402452bc
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0xf0]
test rcx, rcx
je 0x14024527c
mov rax, qword [rcx + 8]
test rax, rax
je 0x14024524c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140245240
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x140245285
lea rdx, [rbp - 0x48]
call fcn.140231fb0
mov rbx, qword [rbp - 0x48]
mov dword [rsp + 0x44], eax
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
jl 0x14024520d
or dword [rsi + 0x28], 1
jmp 0x140245210
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x50]
mov rcx, rdi
call fcn.14023a090
mov rax, qword [rdi + 0x18]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x140247a33
test byte [rsi + 0x28], 1
jne 0x140247a33
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rdi + 0x18], rbx
test byte [rsi + 0x28], 1
je 0x140245369
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.140232b20
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140245369
mov eax, dword [rbp - 0x80]
test eax, eax
jne 0x14024535d
inc edi
cmp edi, 0x64
jge 0x14024535d
lea rdx, [rbp - 0x48]
lea ecx, [rax + 8]
call fcn.14021d910
mov rbx, qword [rbp - 0x48]
cmp edi, 5
jge 0x14024532e
and ebx, 0xffffff
jmp 0x140245331
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.140232b20
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140245303
jmp 0x140245369
test ecx, ecx
jne 0x140245369
test eax, eax
je 0x140247a33
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 0x140247522
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 0x1402453b6
movsxd rax, dword [r14 + r12*8 + 0xc]
imul rcx, rax, 0x38
mov rbx, qword [rcx + r10 + 0x18]
jmp 0x1402453bb
movsxd rbx, dword [r14 + r12*8 + 0xc]
test byte [r14 + r12*8 + 3], 1
je 0x1402453ce
mov rax, qword [rsp + 0x60]
inc dword [rax + 0x90]
test byte [r14 + r12*8 + 3], 2
je 0x1402453de
mov qword [rbp - 0x50], rbx
mov qword [r15 + 0x30], rbx
movzx eax, word [r9 + 0x24]
test al, 1
je 0x1402453ef
mov qword [r9 + 8], r11
mov dword [r9 + 0x20], r11d
movzx r8d, byte [r14 + r12*8 + 3]
test r8b, 0x10
je 0x140245400
mov edx, dword [rsi + 0x18]
jmp 0x140245403
mov edx, r11d
mov ecx, 0x4000
test cx, ax
je 0x140245413
mov ecx, dword [r9 + 0x18]
jmp 0x140245416
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.140236380
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 0x140243272
mov r10, qword [r15 + 0x100]
test r10, r10
je 0x140243272
mov r9, qword [r14 + r12*8 + 0x10]
test r9, r9
je 0x140243272
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 0x14024751f
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.14023e050
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a08
mov rcx, qword [rbx]
call fcn.140236630
xor r11d, r11d
mov ecx, eax
mov dword [rsp + 0x44], eax
mov dword [rbx + 0x58], r11d
test eax, eax
jne 0x140245544
mov r10, qword [r15 + 0x100]
test r10, r10
je 0x140245544
mov r9, qword [r14 + r12*8 + 0x10]
test r9, r9
je 0x140245544
test byte [rbx + 0x28], 2
je 0x140245544
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 0x140245566
inc dword [rsi + 0x90]
mov esi, dword [rsp + 0x40]
jmp 0x140247536
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 0x140242303
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 0x1402455d4
movsxd rax, dword [rax + 4]
shl rax, 6
add rax, qword [rcx + 0x28]
mov r10d, dword [rax + 0x14]
mov r8, qword [rax + 0x28]
jmp 0x1402455df
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 0x140245602
mov r9, rsi
mov edx, r10d
mov rcx, rbx
call fcn.14023e4c0
test edi, edi
je 0x140245635
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 0x140245635
mov rax, qword [rsi + 0x10]
add rax, 0x24
test byte [rax], 1
jne 0x140245673
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x140245626
xor r9d, r9d
mov r8, rsi
mov rdx, r15
mov ecx, r14d
call fcn.14023ecf0
xor r11d, r11d
mov dword [rsp + 0x44], r11d
test eax, eax
je 0x14024567a
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 0x1402443aa
mov dword [rsp + 0x44], r11d
jmp 0x140245652
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 0x1402443aa
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.14024a400
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
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.14023e050
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a03
test byte [rsi + 0x28], 2
jne 0x140245740
cmp byte [rdi + 0x6f], 1
je 0x14024571b
xor ebx, ebx
mov qword [rbp + 0x150], rbx
jmp 0x140245731
lea rdx, [rbp + 0x150]
mov rcx, rdi
call fcn.140231fb0
mov rbx, qword [rbp + 0x150]
movsxd rax, dword [r15 + 0x68]
cmp rbx, rax
jg 0x140247b30
jmp 0x14024579c
cmp word [rdi + 0x56], 0
jne 0x14024578f
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.14022e7e0
mov byte [rdi + 0x6e], 1
mov ebx, dword [rdi + 0x48]
cmp ebx, dword [r15 + 0x68]
ja 0x140247b30
xor r8d, r8d
mov edx, ebx
mov rcx, r13
call fcn.140239a10
test eax, eax
jne 0x140247cdc
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 0x1402457f4
mov dword [rsp + 0x20], edx
call fcn.140232280
mov esi, dword [rsp + 0x40]
mov dword [rsp + 0x44], eax
mov ecx, eax
mov byte [r13 + 0x26], 1
jmp 0x14024751f
call fcn.140232640
mov esi, dword [rsp + 0x40]
mov byte [r13 + 0x26], 1
mov dword [rsp + 0x44], eax
mov ecx, eax
jmp 0x14024751f
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 0x25], 0
je 0x140245834
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
mov word [r13 + 0x24], r9w
inc ecx
jmp 0x140242303
cmp byte [rbx + 0x27], 0
je 0x140245853
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 0x140247522
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je 0x14024587a
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.14023f960
jmp 0x1402458e2
mov rcx, rbx
call fcn.14023e050
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a08
cmp byte [rbx + 0x26], al
je 0x1402458ad
mov rax, qword [rbx + 0x48]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov qword [rbp + 0x20], rax
mov qword [r13 + 0x18], rax
jmp 0x140247522
mov rcx, qword [rbx]
cmp byte [rcx + 0x6f], 1
je 0x1402458d5
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 0x140247522
lea rdx, [rbp + 0x20]
call fcn.140231fb0
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 0x140247522
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 0x14024592d
mov rcx, qword [rbx + 0x60]
call fcn.14021b7f0
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 0x1402443aa
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 0x140245962
cmp byte [rbx + 0x6d], 0
je 0x140245962
mov dword [rsp + 0x44], r11d
jmp 0x140245995
mov rcx, rbx
call fcn.140232810
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140245992
cmp byte [rbx + 0x6f], al
jne 0x14024597c
lea edi, [rax + 1]
jmp 0x140245992
mov rcx, rbx
xor edi, edi
call fcn.140232a80
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 0x14024326e
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 0x140245566
lea esi, [rax - 1]
jmp 0x140247536
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 0x140245a14
lea r8, [rbp + 0x3c]
mov rdx, rbx
mov rcx, r15
call fcn.140249dc0
mov edi, dword [rbp + 0x3c]
xor r11d, r11d
mov dword [rsp + 0x44], eax
jmp 0x140245a4c
mov rsi, qword [rbx]
mov rcx, rsi
call fcn.140232810
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140245a3f
cmp byte [rsi + 0x6f], al
jne 0x140245a31
lea edi, [rax + 1]
jmp 0x140245a3f
mov rcx, rsi
xor edi, edi
call fcn.1402329f0
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 0x140245566
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x140247536
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.14024a330
jmp 0x140245acf
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [rsi + 0x60]
cmp qword [rax + rcx*8], 0
je case.default.0x1402423a2
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 0x140245b06
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 0x140246326
mov esi, dword [rsp + 0x40]
mov byte [rbx + 0x25], 1
mov byte [rbx + 0x26], r11b
jmp 0x140246326
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 0x140245b46
mov rax, qword [rsp + 0x60]
inc dword [rax + 0x90]
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x140245b67
mov rcx, rbx
call fcn.140239bf0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1402426d7
cmp qword [rdi + 0x50], 0
je 0x140245b8b
mov r8, rbx
mov rdx, rdi
mov rcx, r15
call fcn.140249ce0
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
test byte [r14 + r12*8 + 3], 0x10
je 0x140245b98
mov eax, dword [rdi + 0x18]
jmp 0x140245b9a
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, [0x14033aa95]
mov rcx, rsi
mov dword [rsp + 0x30], eax
xor eax, eax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
call fcn.140236380
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov ecx, eax
mov dword [rsp + 0x44], eax
mov dword [rdi + 0x58], r11d
jmp 0x140247522
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.140232b20
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140245c5b
cmp dword [rbp + 0x50], eax
jne 0x140245c5b
mov rcx, rdi
call fcn.140236630
mov ecx, eax
mov dword [rsp + 0x44], eax
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov dword [rbx + 0x58], r11d
jmp 0x140247522
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.14023e050
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a08
cmp byte [rbx + 0x25], al
jne 0x14024439d
lea r8, [rbp - 0x20]
mov rdx, rdi
mov qword [rbp - 0x20], 0
call fcn.14023f400
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140247a08
mov rax, qword [rbp - 0x20]
mov qword [r13 + 0x18], rax
mov eax, 4
mov word [r13 + 0x24], ax
jmp 0x14024439d
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.14023f6f0
test byte [r14 + r12*8], 1
mov dword [rsp + 0x44], eax
mov eax, dword [rbp - 0x78]
jne 0x140245d45
neg eax
jmp 0x140245d47
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 0x1402474c3
mov esi, dword [r14 + r12*8 + 8]
dec esi
xor r11d, r11d
jmp 0x140247536
mov rax, qword [r15 + 8]
mov edx, r11d
test rax, rax
je 0x140245dc5
mov r14d, 0x200
nop dword [rax + rax]
cmp dword [rax + 0x44], 0xbdf20da3
jne 0x140245db7
mov ecx, dword [rax + 0x8c]
test r14d, ecx
je 0x140245db7
and cl, 0xc
cmp cl, 8
jae 0x140245db7
cmp dword [rax + 0x80], 0
jl 0x140245db7
inc edx
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x140245d90
mov r14, qword [rsp + 0x68]
mov word [r13 + 0x24], r9w
cmp edx, 1
jg 0x140247aa7
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.14022dad0
lea r8, [rbp + 0x28]
mov edx, ebx
mov rcx, rdi
call fcn.140237010
cmp byte [rdi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x140245e32
dec dword [rdi + 0x14]
jne 0x140245e32
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140245e2e
call qword [0x1404211a8]
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 0x140243b20
test edx, edx
je 0x140243b20
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 0x140245e89
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x3c], edx
jne 0x140245e81
mov dword [rax + 0x3c], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140245e74
mov rax, qword [rsi + r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x140245eac
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x140245ea4
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140245e97
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 0x14024751f
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.140236f30
cmp dword [r14 + r12*8 + 0xc], 0
mov ecx, eax
mov dword [rsp + 0x44], eax
je 0x1402426d7
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 0x140245d6e
imul rcx, rax, 0x38
add qword [rcx + r10 + 0x18], rdx
mov ecx, dword [rsp + 0x44]
xor r11d, r11d
jmp 0x140247536
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.14022dad0
lea r8d, [rbx + 1]
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.140236920
cmp byte [rdi + 0x11], 0
mov dword [rsp + 0x44], eax
je 0x140245fa8
dec dword [rdi + 0x14]
jne 0x140245fa8
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140245fa4
call qword [0x1404211a8]
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 0x14024751f
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.14021d520
mov rbx, rax
test rax, rax
jne 0x140246026
mov dword [rsp + 0x44], 7
jmp 0x14024607c
xor eax, eax
lea r9, [rbp + 0x160]
lea r8, [fcn.1402713b0]
mov rdx, rbx
mov rcx, r15
mov byte [r15 + 0x99], 1
mov dword [rbp + 0x174], eax
mov qword [rsp + 0x20], rax
call fcn.14026c210
test eax, eax
mov rdx, rbx
mov rcx, r15
cmove eax, dword [rbp + 0x174]
mov dword [rsp + 0x44], eax
call fcn.14021b8a0
mov ecx, dword [rsp + 0x44]
mov byte [r15 + 0x99], 0
test ecx, ecx
je 0x140246088
mov rcx, r15
call fcn.1402583d0
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
cmp ecx, 7
je 0x140247ce0
jmp 0x14024751f
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.140256470
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
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 0x1402460d5
mov eax, r11d
jmp 0x1402460ef
cmp byte [rdx], 0
je 0x1402460e8
nop word [rax + rax]
inc rax
cmp byte [rax], 0
jne 0x1402460e0
sub eax, edx
and eax, 0x3fffffff
mov rcx, qword [rcx + 0x18]
xor r9d, r9d
mov r8d, eax
add rcx, 8
call fcn.14021f950
mov rcx, r15
mov rdx, rax
call fcn.140258530
or dword [r15 + 0x2c], 2
jmp 0x14024439d
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.140258070
jmp 0x14024439d
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
mov rcx, r15
call fcn.14027e010
jmp 0x14024439d
mov r12d, dword [r14 + r12*8 + 8]
mov rcx, r15
lea edx, [r12*4 + 4]
call fcn.14021bb70
mov r14, rax
test rax, rax
je 0x140247cdc
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 0x1402461bf
mov rbx, r15
mov esi, r12d
mov rcx, rbx
call fcn.140239f40
inc rdi
add rbx, 0x38
mov dword [r14 + rdi*4 - 4], eax
dec rsi
jne 0x140246198
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.140238250
mov rdx, r14
mov rcx, rbx
mov rdi, rax
call fcn.14021b8a0
movsxd rbx, dword [rbp + 0x60]
sub qword [r13 + 0x18], rbx
mov rcx, r15
call fcn.14023a1c0
test ebx, ebx
je 0x14024623f
test rdi, rdi
je 0x140244f58
lea rax, [fcn.14021b7f0]
mov r9b, 1
or r8d, 0xffffffff
mov rdx, rdi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.14023a670
test byte [r15 + 0x24], 2
movzx edx, byte [rsp + 0x58]
je 0x14024625c
movzx eax, byte [r15 + 0x26]
cmp eax, edx
je 0x14024625c
mov rcx, r15
call fcn.14021dbb0
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
jmp 0x140244398
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 0x14024629b
mov rcx, rbx
call fcn.14023a3b0
test byte [rbx + 0x24], 0x20
je 0x140247cdc
mov rdx, qword [rdi + 0x18]
mov rcx, qword [rbx + 0x18]
call fcn.1402253d0
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, r10
test byte [rdi + 0x24], 0x20
je 0x140246385
mov rbx, qword [rdi + 0x18]
movzx eax, byte [rbx + 0x32]
test al, 2
jne 0x1402462e4
test al, 1
jne 0x1402462e0
mov rcx, qword [rbx + 0x10]
call fcn.1402254b0
mov qword [rbx + 0x10], rax
or byte [rbx + 0x32], 2
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140246385
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140246309
mov rcx, rbx
call fcn.140225290
movsxd rax, dword [r14 + r12*8 + 0xc]
mov rdx, rdi
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x50]
call fcn.14023a280
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov eax, dword [r15 + 0x138]
test eax, eax
jne 0x140247c8a
mov r8, qword [r15 + 0x180]
mov ebx, dword [rsp + 0x48]
test r8, r8
je 0x140247493
cmp ebx, dword [rbp - 0x60]
jb 0x140247493
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 0x140247b5a
mov ecx, dword [rsp + 0x44]
jmp 0x14024751f
mov rcx, rdi
call fcn.14023a1c0
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x140246323
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 0x1402463cb
mov rcx, rbx
call fcn.14023a3b0
test byte [rbx + 0x24], 0x20
je 0x140247cdc
test edi, edi
je 0x140246402
js 0x1402463d8
mov eax, edi
and eax, 0xf
jmp 0x1402463dd
mov eax, 0xff
mov r8, qword [rsi + 0x18]
mov rcx, qword [rbx + 0x18]
movzx edx, al
call fcn.140225820
test eax, eax
je 0x140246400
mov ecx, dword [r14 + r12*8 + 8]
mov rsi, qword [rsp + 0x60]
jmp 0x1402443a3
test edi, edi
js 0x140246411
mov rdx, qword [rsi + 0x18]
mov rcx, qword [rbx + 0x18]
call fcn.1402253d0
mov rsi, qword [rsp + 0x60]
jmp 0x14024439d
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 0x140246463
mov rax, qword [r9 + 0xf0]
mov rcx, qword [r14 + 0x18]
test rax, rax
je 0x140246463
nop
cmp qword [rax + 0x30], rcx
je 0x140246562
mov rax, qword [rax + 8]
test rax, rax
jne 0x140246450
mov eax, dword [r15 + 0x90]
cmp dword [r9 + 0x100], eax
jge 0x140247ac2
test byte [rsi + 0x24], 0x40
jne 0x14024657f
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.14021bb30
mov rdi, rax
test rax, rax
je 0x140247cdc
mov rcx, rsi
call fcn.140239ef0
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 0x140246583
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 0x140246550
jmp 0x140246583
mov ecx, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x48]
mov rsi, r9
inc ecx
mov r9d, 1
jmp 0x140242303
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.1402c5760
mov rsi, qword [rsp + 0x60]
jmp 0x140244398
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.14023a4d0
jmp 0x14024439d
test dword [r15 + 0x2c], 0x1000000
movsxd rax, dword [r14 + r12*8 + 8]
mov ecx, dword [rsp + 0x40]
je 0x140246689
add qword [r15 + 0x310], rax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
cmp dword [r14 + r12*8 + 4], 0
je 0x1402466a3
add qword [r15 + 0x308], rax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
add qword [rsi + 0xc8], rax
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
cmp dword [r14 + r12*8 + 4], 0
je 0x1402466eb
cmp qword [r15 + 0x308], 0
jne 0x1402437fd
cmp qword [r15 + 0x310], 0
jne 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
cmp qword [rsi + 0xc8], 0
jne 0x1402437fd
cmp qword [r15 + 0x310], 0
jne 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
mov rcx, qword [rsi + 0xf0]
test rcx, rcx
je 0x14024674b
mov rax, qword [rcx + 8]
test rax, rax
je 0x14024673c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140246730
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x140246757
movsxd rax, dword [r14 + r12*8 + 4]
imul rdi, rax, 0x38
add rdi, r10
mov rcx, rdi
call fcn.14023a090
movsxd rax, dword [r14 + r12*8 + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.14023a090
mov rax, qword [rbx + 0x18]
cmp qword [rdi + 0x18], rax
jge 0x14024439d
mov qword [rdi + 0x18], rax
jmp 0x14024439d
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
cmp qword [rcx + r10 + 0x18], 0
jle 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
movsxd rax, dword [r14 + r12*8 + 4]
imul rcx, rax, 0x38
cmp qword [rcx + r10 + 0x18], 0
jge 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
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 0x1402437fd
mov ecx, dword [r14 + r12*8 + 8]
mov ebx, dword [rsp + 0x48]
dec ecx
inc ecx
jmp 0x140242303
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 0x140246840
nop dword [rax + rax]
mov qword [r8 + rax*8], rcx
inc rax
add rcx, 0x38
cmp rax, r10
jl 0x140246830
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 0x1402468b5
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 0x140246981
test byte [rbp + 0x10c], 1
je 0x1402468e1
xor r9d, r9d
jmp 0x140246964
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 0x140246913
lea rcx, [rbp + 0xe8]
call fcn.140239bf0
test byte [rbp + 0x10c], 2
je 0x140246941
cmp byte [rbp + 0x10e], 1
je 0x140246933
lea rcx, [rbp + 0xe8]
mov dl, 1
call fcn.14021dbb0
lea rcx, [rbp + 0xe8]
call fcn.140239c60
jmp 0x140246952
lea rcx, [rbp + 0xe8]
mov edx, 1
call fcn.140239cd0
xor r9d, r9d
cmp byte [rbp + 0x10e], 1
cmove r9, qword [rbp + 0xf0]
lea rcx, [rsi + 0x48]
lea r8, [0x140374da0]
mov rdx, r15
call fcn.14021bdc0
mov eax, dword [rbp + 0x13c]
mov dword [rsp + 0x44], eax
cmp byte [rbp + 0x140], 0
je 0x1402469a4
movsxd rax, dword [r14 + r12*8 - 0x14]
test eax, eax
je 0x1402469a4
imul rcx, rax, 0x38
mov edx, 1
add rcx, rbx
call fcn.14023a280
movzx eax, word [rbp + 0x10c]
mov edi, 0x2460
test di, ax
je 0x140246a72
mov ecx, 0x2000
test cx, ax
je 0x1402469e7
mov rdx, qword [rbp + 0x100]
lea rcx, [rbp + 0xe8]
call fcn.140239da0
lea rcx, [rbp + 0xe8]
call fcn.140239ef0
jmp 0x140246a72
mov ecx, 0x400
test cx, ax
je 0x140246a0a
mov rcx, qword [rbp + 0xf0]
call qword [rbp + 0x110]
xor r11d, r11d
mov qword [rbp + 0x110], r11
jmp 0x140246a75
movzx eax, byte [rbp + 0x10c]
test al, 0x20
je 0x140246a23
mov rcx, qword [rbp + 0x100]
call fcn.140225290
jmp 0x140246a72
test al, 0x40
je 0x140246a72
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 0x140246a58
mov rcx, qword [rbp + 0x100]
call fcn.140225290
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 0x1402474b6
mov rcx, qword [rbp + 0xe8]
call fcn.14021b8a0
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov r10, rbx
jmp 0x14024752c
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.140239da0
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140246ae5
mov dl, 1
mov rcx, rbx
call fcn.14023aa40
lea rcx, [rsi + 0x48]
lea r8, [0x140374da0]
mov r9, rax
mov rdx, r15
call fcn.14021bdc0
test byte [rbx + 0x24], 2
movzx ecx, byte [rsp + 0x58]
je 0x140246b03
movzx eax, byte [rbx + 0x26]
cmp eax, ecx
je 0x140246b03
movzx edx, cl
mov rcx, rbx
call fcn.14021dbb0
movzx eax, word [rbx + 0x24]
test al, 0x12
je 0x1402426d3
mov edx, dword [rbx + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x140246b1f
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 0x140247b34
mov ecx, dword [rsp + 0x44]
jmp 0x140247522
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.140293220
mov dword [rsp + 0x44], eax
cmp eax, 5
jne 0x140246b95
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.14023a280
inc rbx
add rdi, 0x38
cmp rbx, 3
jl 0x140246bb0
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
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 0x140246c19
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x140246c1b
cmp qword [rdi + 0x60], 0
jle 0x140246c1b
mov ebx, esi
cmp byte [rdi + 0x12], 0
lea rcx, [0x14033aa95]
jne 0x140246c2f
mov rcx, qword [rdi + 0xd0]
cmp ebx, 5
jne 0x140246c73
mov rax, rcx
test rcx, rcx
je 0x140246cdd
cmp byte [rcx], 0
je 0x140246c4d
inc rax
cmp byte [rax], 0
jne 0x140246c45
sub eax, ecx
and eax, 0x3fffffff
je 0x140246cdd
cmp byte [rdi + 8], 0
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
jne 0x140246c73
cmp dword [rcx], 2
jl 0x140246cdd
cmp qword [rcx + 0x68], 0
je 0x140246cdd
cmp ebx, esi
je 0x140246cdf
cmp esi, 5
je 0x140246c81
cmp ebx, 5
jne 0x140246cdf
cmp byte [r15 + 0x4e], 0
je 0x140247aec
cmp dword [r15 + 0xa0], 1
jg 0x140247aec
cmp esi, 5
jne 0x140246cb3
mov rcx, rdi
call fcn.14022abc0
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140246cdd
mov edx, ebx
jmp 0x140246cbb
cmp esi, 4
jne 0x140246cc3
lea edx, [rsi - 2]
mov rcx, rdi
call fcn.14022a8e0
xor edx, edx
cmp ebx, 5
mov rcx, r14
sete dl
inc edx
call fcn.140238930
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140246cdf
mov ebx, esi
mov edx, ebx
mov rcx, rdi
call fcn.14022a8e0
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 0x140246d1b
mov ecx, r11d
jmp 0x140246d2c
lea rcx, [0x140000000]
cdqe
mov rcx, qword [rcx + rax*8 + 0x3331b8]
mov qword [r13 + 8], rcx
mov rax, rcx
test rcx, rcx
jne 0x140246d3d
mov eax, r11d
jmp 0x140246d51
cmp byte [rcx], 0
je 0x140246d4a
inc rax
cmp byte [rax], 0
jne 0x140246d42
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 0x1402474ac
movzx edx, al
mov rcx, r13
call fcn.14021dbb0
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
lea rcx, [rsi + 0x48]
mov rdx, r15
call fcn.140281520
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
movsxd rcx, dword [r14 + r12*8 + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.140231410
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 0x1402474c3
mov esi, dword [r14 + r12*8 + 8]
dec esi
xor r11d, r11d
mov ecx, r11d
mov dword [rsp + 0x44], ecx
jmp 0x140247536
cmp dword [r14 + r12*8 + 4], 0
jne 0x140246e0a
mov rcx, r15
call fcn.14023f890
mov ecx, dword [rsp + 0x40]
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
mov ecx, dword [rsp + 0x40]
or dword [rsi + 0x8c], 0x20
mov ebx, dword [rsp + 0x48]
inc ecx
jmp 0x140242303
movzx r8d, byte [r14 + r12*8 + 0xc]
test r8b, r8b
jne 0x140246e3a
mov eax, 0x4000
test dword [r15 + 0x2c], eax
jne 0x1402474ac
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.1402387c0
mov ecx, eax
mov dword [rsp + 0x44], eax
cmp al, 6
jne 0x1402426d7
mov r9, qword [r14 + r12*8 + 0x10]
lea rcx, [rsi + 0x48]
lea r8, str.database_table_is_locked:__s
mov rdx, r15
call fcn.14021bdc0
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
mov rbx, qword [r14 + r12*8 + 0x10]
mov rcx, r15
mov rdx, rbx
call fcn.140282d60
mov ecx, eax
mov dword [rsp + 0x44], eax
test rbx, rbx
je 0x1402426d7
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.14023f960
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
mov r8, qword [r14 + r12*8 + 0x10]
mov edx, dword [r14 + r12*8 + 4]
lea r9, [rsi + 0x48]
mov rcx, r15
call fcn.1402827e0
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
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.140282b00
and dword [rsi + 0x8c], 0xfffffff3
mov esi, dword [rsp + 0x40]
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024751f
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.14023f960
mov ecx, dword [rsp + 0x44]
test ecx, ecx
jne 0x1402426d7
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.140241fc0
mov rcx, qword [rbp - 0x30]
test rax, rax
je 0x140246f82
mov qword [rax + 0x30], rcx
jmp 0x14024439d
mov byte [r15 + 0x50], 1
call qword [rdi + 0x38]
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
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 0x140246fff
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 0x140246fe0
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.14023f960
mov ecx, dword [rsp + 0x44]
test ecx, ecx
jne 0x140247076
mov rcx, rdi
call qword [rsi + 0x50]
mov r14, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x44]
test eax, eax
je 0x14024707b
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 0x14024751f
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 0x14024751f
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 0x1402470ca
mov rcx, rsi
call fcn.14023a1c0
mov rsi, qword [rsp + 0x60]
jmp 0x140244398
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.1402c5760
lea rcx, [rbp + 0x208]
mov rdx, rsi
call fcn.14023a5e0
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.14023f960
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 0x140247173
movzx eax, byte [rbp + 0x22e]
cmp eax, ecx
je 0x140247173
movzx edx, cl
lea rcx, [rbp + 0x208]
call fcn.14021dbb0
lea rdx, [rbp + 0x208]
mov rcx, rsi
call fcn.14023a5e0
mov rcx, rsi
call fcn.14023a4a0
mov esi, dword [rsp + 0x40]
test eax, eax
jne 0x140247b34
mov ecx, dword [rsp + 0x44]
mov r14, qword [rsp + 0x68]
jmp 0x14024751f
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.0x1402423a2
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.14023f960
cmp dword [rsp + 0x44], 0
jne 0x140247210
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x14024631f
mov esi, dword [r14 + r12*8 + 8]
dec esi
jmp 0x140246323
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 0x140247255
cmp byte [rbx + 0x26], 1
je 0x140247255
mov dl, 1
mov rcx, rbx
call fcn.14021dbb0
mov ecx, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1402426d7
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.14023f960
and dword [rsi + 0x8c], 0xffffffdf
mov esi, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
jmp 0x14024751f
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 0x14024747e
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 0x1402472e0
nop dword [rax]
nop word [rax + rax]
mov qword [r10 + rax*8], rcx
inc rax
add rcx, 0x38
cmp rax, rdx
jl 0x1402472d0
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.14023f960
mov ecx, dword [rsp + 0x44]
test ecx, ecx
jne 0x14024732c
cmp dword [r14 + r12*8 + 4], ecx
je 0x14024732c
mov rdx, qword [rbp + 0x198]
mov qword [rbp - 0x50], rdx
mov qword [r15 + 0x30], rdx
cmp cl, 0x13
jne 0x140247387
mov rax, qword [r14 + r12*8 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140247387
movzx eax, byte [r14 + r12*8 + 3]
cmp al, 4
jne 0x14024735d
mov ecx, dword [rsp + 0x40]
xor r11d, r11d
inc ecx
mov dword [rsp + 0x44], r11d
mov dword [rsp + 0x40], ecx
jmp 0x1402443aa
cmp al, 5
jne 0x140247375
mov eax, 2
mov byte [rsi + 0x8a], al
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
movzx eax, al
mov byte [rsi + 0x8a], al
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
inc dword [rsi + 0x90]
mov esi, dword [rsp + 0x40]
jmp 0x14024751f
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 0x140242303
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 0x1402473ef
mov rax, qword [rcx + 8]
mov edx, dword [rax + 0x3c]
cmp edx, r8d
cmovb edx, r8d
call fcn.1402301c0
movsxd rcx, eax
mov qword [r13 + 0x18], rcx
jmp 0x14024439d
mov eax, dword [r14 + r12*8 + 8]
lea esi, [rax - 1]
test eax, eax
jne 0x140247410
mov esi, dword [rsp + 0x40]
cmp qword [r15 + 0xb8], 0
je 0x1402474e0
mov rax, qword [rsp + 0x60]
mov ecx, 0x800
test dword [rax + 0x8c], ecx
jne 0x1402474e0
mov rdx, qword [r14 + r12*8 + 0x10]
test rdx, rdx
jne 0x14024744e
mov rdx, qword [rax + 0xe0]
test rdx, rdx
je 0x1402474e0
mov rcx, rax
call fcn.140241b10
mov rcx, qword [r15 + 0xc0]
mov rdx, rax
mov rbx, rax
call qword [r15 + 0xb8]
mov rdx, rbx
mov rcx, r15
call fcn.14021b8a0
mov ecx, dword [rsp + 0x44]
jmp 0x14024751f
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
xor r11d, r11d
mov edi, 0x2460
jmp 0x140247532
mov ecx, dword [rsp + 0x44]
mov r10, qword [rsp + 0x50]
mov edi, 0x2460
mov r8d, 0x1000
jmp 0x140247536
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
jmp 0x140247527
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov r10, rbx
jmp 0x14024752c
mov esi, dword [rsp + 0x40]
xor r11d, r11d
jmp 0x140247536
mov ecx, dword [rsp + 0x44]
mov r15, qword [rsp + 0x70]
mov esi, dword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
jmp 0x14024751f
mov ecx, dword [rsp + 0x44]
mov edi, 0x2460
jmp 0x140247532
mov ecx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x40]
mov edi, 0x2460
jmp 0x140247532
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 0x140247532
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 0x14024765b
mov edx, 0x80
mov ecx, esi
mov rsi, qword [rsp + 0x60]
lea r9d, [rdx - 0x7f]
jmp 0x140242310
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 0x140247621
movzx eax, byte [r14 + r12*8 + 3]
test al, al
je 0x1402475d2
lea rcx, [0x140000000]
movzx eax, al
mov r11, qword [rcx + rax*8 + 0x333598]
test r11, r11
je 0x1402475d2
mov rax, qword [r14 + r12*8 + 0x10]
test rax, rax
je 0x1402475d2
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.14021bdc0
jmp 0x1402475fe
mov r9, qword [r14 + r12*8 + 0x10]
lea rbx, [rdi + 0x48]
mov rdx, r15
mov rcx, rbx
test r9, r9
je 0x1402475ef
lea r8, [0x140374da0]
jmp 0x1402475f9
mov r9, r11
lea r8, str._s_constraint_failed
call fcn.14021bdc0
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.14021d8c0
mov rcx, rdi
mov rsi, rdi
call fcn.14023d770
cmp eax, 5
je 0x140247c78
cmp dword [rsi + 0x84], 0
mov edi, 0x65
mov eax, 1
cmovne edi, eax
jmp 0x1402476e1
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.14021d8c0
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14023d770
cmp dword [rsp + 0x44], 0xc0a
jne 0x1402476ab
mov byte [r15 + 0x50], 1
mov edi, 1
test r12b, r12b
je 0x1402476e1
mov rcx, qword [r15 + 0x20]
movzx ebx, r12b
dec ebx
movsxd rax, ebx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.14025f440
cmp ebx, edi
je 0x1402476e1
mov rcx, qword [r15 + 0x20]
mov rcx, qword [rcx + 0x38]
call fcn.14025f440
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.14023c150
mov eax, edi
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.1402bcad0
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 0x1402477a0
lea rbx, [rdi + 0x24]
xor esi, esi
mov eax, 0x1000
test word [rbx], ax
je 0x140247784
movsxd rax, esi
imul rcx, rax, 0x38
add rcx, rdi
call fcn.140239b70
test eax, eax
jne 0x140247cdc
movsxd rax, esi
imul rcx, rax, 0x38
add rcx, rdi
call fcn.140239c60
inc esi
add rbx, 0x38
cmp esi, dword [r14 + r12*8 + 8]
jl 0x140247763
cmp byte [r15 + 0x50], 0
jne 0x140247cdc
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov edi, 0x64
inc eax
mov dword [rsi + 0x80], eax
jmp 0x1402476e1
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.14021bdc0
mov esi, dword [rsp + 0x40]
mov ecx, 1
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
movzx eax, word [rbp + 0x9c]
mov r12d, 0x2460
test r12w, ax
je 0x1402478c8
mov ecx, 0x2000
test cx, ax
je 0x14024783d
mov rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0x78]
call fcn.140239da0
lea rcx, [rbp + 0x78]
call fcn.140239ef0
jmp 0x1402478c8
mov ecx, 0x400
test cx, ax
je 0x140247861
mov rcx, qword [rbp + 0x80]
call qword [rbp + 0xa0]
mov qword [rbp + 0xa0], 0
jmp 0x1402478c8
movzx eax, byte [rbp + 0x9c]
test al, 0x20
je 0x14024787a
mov rcx, qword [rbp + 0x90]
call fcn.140225290
jmp 0x1402478c8
test al, 0x40
je 0x1402478c8
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 0x1402478af
mov rcx, qword [rbp + 0x90]
call fcn.140225290
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 0x140247ce5
mov rcx, qword [rbp + 0x78]
call fcn.14021b8a0
jmp 0x140247ce5
mov ecx, 0x14
mov dword [rsp + 0x44], ecx
jmp 0x140247a08
lea r9, [0x1403739bc]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0x10f9f
mov ecx, 0xb
call fcn.14021d8c0
mov esi, dword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov ecx, 0xb
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
lea r8, str.cannot_open_savepoint___SQL_statements_in_progress
lea rcx, [rsi + 0x48]
mov rdx, r15
call fcn.14021bdc0
mov esi, dword [rsp + 0x40]
mov ecx, 5
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
mov rcx, qword [rsp + 0x60]
lea r8, str.cannot_release_savepoint___SQL_statements_in_progress
mov r15, rdi
add rcx, 0x48
jmp 0x140247936
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 0x1402476e1
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.14021bdc0
mov edi, r14d
jmp 0x1402476e1
mov eax, 8
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x140247a08
mov rax, qword [rsp + 0x60]
mov esi, dword [rsp + 0x40]
mov dword [rax + 0x80], esi
jmp 0x140247c73
lea r9, [0x1403739bc]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0x112ca
mov ecx, 0xb
call fcn.14021d8c0
mov ecx, 0xb
mov dword [rsp + 0x44], ecx
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
cmp byte [r15 + 0x50], 0
je 0x140247a48
mov dword [rsp + 0x44], 7
mov ecx, dword [rsp + 0x44]
jmp 0x140247a54
mov esi, dword [rsp + 0x40]
mov eax, 4
inc esi
mov ecx, eax
mov dword [rsp + 0x44], eax
jmp 0x14024765b
mov ecx, 0xd
mov dword [rsp + 0x44], ecx
jmp 0x140247a03
mov r15, qword [rsp + 0x70]
mov rsi, rdi
jmp 0x140247a08
cmp ecx, 0xc0a
je 0x140247657
lea r9, [0x14033aaa8]
cmp ecx, 0x204
je 0x140247a84
movzx eax, cl
cmp eax, 0x1a
ja 0x140247a8b
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x32ffd0]
test rcx, rcx
je 0x140247a8b
mov r9, rcx
jmp 0x140247a8b
lea r9, str.abort_due_to_ROLLBACK
lea rcx, [rsi + 0x48]
lea r8, [0x140374da0]
mov rdx, r15
call fcn.14021bdc0
mov ecx, dword [rsp + 0x44]
jmp 0x140247657
mov byte [rsi + 0x8a], 2
mov esi, dword [rsp + 0x40]
mov ecx, 6
inc esi
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
lea rcx, [r9 + 0x48]
lea r8, str.too_many_levels_of_trigger_recursion
mov rdx, r15
mov dword [rsp + 0x44], 1
call fcn.14021bdc0
mov esi, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
inc esi
jmp 0x14024765b
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.14021bdc0
mov esi, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
inc esi
jmp 0x14024765b
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.14021bdc0
mov ecx, 0x12
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
mov ecx, 9
mov dword [rsp + 0x44], ecx
jmp 0x14024765b
mov ebx, dword [r14 + r12*8 + 4]
mov ecx, dword [r14 + r12*8 + 8]
test ebx, ebx
je 0x140247b96
cmp byte [r15 + 0x4e], 0
jne 0x140247b96
test ecx, ecx
jne 0x140247b96
cmp dword [r15 + 0xa4], ecx
jle 0x140247b96
lea r8, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x140247932
movzx eax, byte [r15 + 0x4e]
cmp ebx, eax
jne 0x140247bce
test ebx, ebx
jne 0x140247bb2
lea r8, str.cannot_start_a_transaction_within_a_transaction
mov rdx, r15
jmp 0x1402477e1
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 0x1402477e1
test ecx, ecx
je 0x140247c07
mov edx, 0x204
mov rcx, r15
call fcn.1402922c0
mov byte [r15 + 0x4e], 1
mov rcx, r15
call fcn.140291be0
cmp dword [rsi + 0x84], 0
mov edi, 0x65
mov eax, 1
cmove eax, edi
mov edi, eax
jmp 0x1402476e1
mov rdx, qword [rsi]
mov rax, qword [rdx + 0x310]
add rax, qword [rdx + 0x308]
test rax, rax
jle 0x140247c48
lea rcx, [rsi + 0x48]
lea r8, str.FOREIGN_KEY_constraint_failed
mov dword [rsi + 0x84], 0x313
mov byte [rsi + 0x8a], 2
call fcn.14021bdc0
mov edi, 1
jmp 0x1402476e1
mov rcx, rsi
mov byte [r15 + 0x4e], bl
call fcn.14023d770
cmp eax, 5
jne 0x140247be4
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 0x1402476e1
movzx r12d, byte [rsp + 0x4c]
mov rax, qword [0x140330018]
mov r14, qword [rsp + 0x60]
lea r9, [0x14033aaa8]
test rax, rax
lea r8, [0x140374da0]
lea rcx, [r14 + 0x48]
mov rdx, r15
cmovne r9, rax
mov dword [rsp + 0x44], 9
mov dword [r14 + 0x84], 9
call fcn.14021bdc0
mov ecx, dword [rsp + 0x44]
jmp 0x140247661
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.14021bdc0
mov ecx, 7
mov dword [rsp + 0x44], ecx
jmp 0x140247661