Function at 0x1401c9af0
Capabilities:
Encode data using xor
Encrypt data using speck
Reference sql statements

Disassembly:
mov r11, rsp
push rbp
push r13
push r15
lea rbp, [r11 - 0x3c8]
sub rsp, 0x4b0
mov rax, qword [0x1402d3700]
xor rax, rsp
mov qword [rbp + 0x340], rax
mov r9, qword [rcx + 0x88]
xor eax, eax
mov qword [r11 + 0x18], rsi
mov r13, rcx
mov rsi, qword [rcx]
mov r15d, eax
mov qword [r11 + 0x20], rdi
mov r10d, eax
mov qword [r11 - 0x20], r12
mov edi, eax
mov qword [r11 - 0x28], r14
xor r14b, r14b
mov r11, qword [rcx + 0x68]
mov byte [rbp - 0x58], r14b
movzx r14d, byte [rsi + 0x64]
mov byte [rsp + 0x48], r14b
mov qword [rbp - 0x80], rcx
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x40], r9
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x50], eax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x60], r11
mov dword [rbp - 0x54], eax
cmp dword [rcx + 0xd0], eax
je 0x1401c9b95
call fcn.1401c9a00
mov r11, qword [rsp + 0x60]
mov r10d, edi
mov r9, qword [rsp + 0x58]
cmp qword [rsi + 0x210], rdi
je 0x1401c9bb6
mov ecx, dword [rsi + 0x220]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov r12d, ecx
jmp 0x1401c9bbd
mov r12, 0xffffffffffffffff
cmp dword [r13 + 0x34], 7
mov qword [rsp + 0x4d8], rbx
movaps xmmword [rsp + 0x490], xmm6
movaps xmmword [rsp + 0x480], xmm7
movaps xmmword [rsp + 0x470], xmm8
movaps xmmword [rsp + 0x460], xmm9
movaps xmmword [rsp + 0x450], xmm10
mov qword [rsp + 0x70], r12
je 0x1401cbf27
xor edx, edx
mov dword [r13 + 0x34], edx
mov qword [r13 + 0x48], rdx
mov dword [rsi + 0x298], edx
mov eax, dword [rsi + 0x198]
test eax, eax
jne 0x1401d229b
movsxd rax, dword [r13 + 0x30]
xorps xmm10, xmm10
movdqa xmm8, xmmword [0x140294e30]
movdqa xmm7, xmmword [0x140294e10]
movdqa xmm9, xmmword [0x140266980]
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
movzx ebx, byte [r12]
inc rdi
mov r8d, dword [0x1402d36b8]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x78], rdi
cmp ebx, 0xb8
ja case.0x1401c9c88.89
movsxd rax, ebx
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x1d2594]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r11 + 0x14], 4
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp case.0x1401c9c88.9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je 0x1401ca206
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r12 + 8], 0
jne 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
sub rbx, qword [r13 + 0x88]
imul r8, rax, 0x38
mov rax, qword [r8 + r11]
lea rcx, [rax + rax*2]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
cdqe
mov qword [r8 + r11], rax
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
xor edx, edx
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
mov word [r8 + r11 + 0x14], 4
movsxd rcx, dword [r8 + r11]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
lea r12, [r9 + rcx*8]
mov qword [r8 + r11], rax
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x1401ca206
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x1401d1ab5
mov rax, qword [rsp + 0x40]
cmp dword [rax + 4], 0
jne 0x1401d1ab5
mov rax, qword [rcx + 8]
mov qword [r13 + 0x108], rax
dec dword [r13 + 0x118]
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
call fcn.1401d3020
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 4
jne 0x1401c9e72
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r13 + 0x88]
xor edx, edx
mov r11, qword [r13 + 0x68]
mov r10d, dword [rsp + 0x50]
cdqe
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x60], r11
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov edi, 0x9000
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], di
je 0x1401c9ed3
call fcn.140162240
mov r9, qword [rsp + 0x58]
mov rcx, rax
xor edx, edx
jmp 0x1401c9ed9
mov word [rcx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1401c9f30
mov rcx, rdx
call fcn.140162240
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x1401c9f36
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1401cabe2
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1401c9f7b
mov rcx, rdx
call fcn.140162240
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov word [rdx + 0x14], 8
jmp 0x1401c9f36
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x1401c9fb1
mov rcx, rbx
call fcn.140162240
mov rcx, qword [rsp + 0x40]
mov rbx, rax
jmp 0x1401c9fb7
mov word [rbx + 0x14], 4
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x1401c9fc8
xor r12d, r12d
mov eax, r12d
jmp 0x1401c9fe1
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x1401c9fd0
and eax, 0x3fffffff
xor r12d, r12d
mov dword [rcx + 4], eax
cmp r14b, 1
je 0x1401ca07f
mov r9b, 1
mov qword [rsp + 0x20], r12
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.1401d4ad0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1e19
test byte [rbx + 0x14], 2
jne 0x1401ca020
mov byte [rbx + 0x16], r14b
jmp 0x1401ca03a
cmp byte [rbx + 0x16], r14b
je 0x1401ca03a
movzx edx, r14b
mov rcx, rbx
call fcn.1401d4ed0
test eax, eax
jne 0x1401cbf22
mov eax, 0x2000
mov dword [rbx + 0x20], r12d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 1], 0xfa
jne 0x1401ca068
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1401ca068
mov rcx, rsi
call fcn.140186b70
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [rcx + 4], eax
cmp eax, dword [rsi + 0x88]
jg 0x1401d1e19
mov byte [rcx], 0x49
jmp 0x1401ca095
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1401ca0bc
mov rcx, rdx
call fcn.140162240
mov rcx, qword [rsp + 0x40]
mov rdx, rax
mov r11, qword [rsp + 0x60]
mov word [rdx + 0x14], 0x2202
mov rax, qword [rcx + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 4]
mov dword [rdx + 0x10], eax
mov rax, qword [rsp + 0x40]
mov byte [rdx + 0x16], r14b
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x1401d0e2f
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
cmp qword [rcx + r11], rax
jne 0x1401d0e2f
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 0x2210
mov r9, qword [rsp + 0x58]
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
mov r9d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], r9w
je 0x1401ca156
call fcn.140162240
mov rcx, rax
xor edx, edx
mov r9d, 0x9000
jmp 0x1401ca15c
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, 1
mov edi, dword [rbx + 0xc]
mov r8d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r8w
sub edi, eax
mov word [rcx + 0x14], si
mov dword [rcx + 0x10], edx
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x1401d0e25
nop dword [rax + rax]
test word [rbx + 0x38], r9w
lea rbx, [rbx + 0x38]
je 0x1401ca1ac
lea rcx, [rbx - 0x14]
call fcn.1401eb4f0
xor edx, edx
mov r9d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], edx
test edi, edi
jg 0x1401ca190
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov r8d, 0xffc1
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, r8w
or ax, 1
mov word [rcx + r11 + 0x14], ax
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], cx
je 0x1401ca247
mov rcx, rbx
call fcn.140162240
mov rbx, rax
mov ecx, 0x9000
jmp 0x1401ca24d
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax + 0x10]
movsxd rdi, dword [rax + 4]
test rdx, rdx
jne 0x1401ca29e
test word [rbx + 0x14], cx
jne 0x1401ca26a
cmp dword [rbx + 0x20], edx
je 0x1401ca272
mov rcx, rbx
call fcn.1401eb4a0
xor eax, eax
mov word [rbx + 0x14], 0x410
mov dword [rbx + 0x10], eax
test edi, edi
mov rcx, rbx
cmovs edi, eax
mov dword [rbx], edi
mov byte [rbx + 0x16], 1
mov qword [rbx + 8], rax
call fcn.1401d4340
test eax, eax
jne 0x1401cbf1d
jmp 0x1401ca2b4
xor r10d, r10d
mov r8, rdi
xor r9d, r9d
mov qword [rsp + 0x20], r10
mov rcx, rbx
call fcn.1401d4ad0
mov byte [rbx + 0x16], r14b
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
xor edx, edx
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
mov rsi, qword [r13 + 0x80]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x24]
test al, 0x12
je 0x1401ca319
bt ax, 0xa
mov ecx, dword [rdi + rsi - 0x28]
jae 0x1401ca308
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x20]
cmp ecx, dword [rax + 0x88]
jg 0x1401d1e38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x1401ca343
mov rcx, rbx
call fcn.1401eb4f0
mov r11, qword [rsp + 0x60]
xor edx, edx
mov r9, qword [rsp + 0x58]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov ecx, 0xafff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
mov rsi, qword [rsp + 0x68]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop dword [rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x1401ca3c1
cmp dword [rbx + 0x20], 0
je 0x1401ca3cb
mov rcx, rbx
call fcn.1401eb4a0
xor edx, edx
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], 1
mov dword [rdi + 0x20], edx
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x1401ca445
test al, 0x12
je 0x1401ca43a
bt ax, 0xa
jae 0x1401ca41a
mov rcx, rbx
call fcn.1401d4340
test eax, eax
jne 0x1401d22b0
cmp dword [rbx + 0x20], 0
je 0x1401ca42a
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x1401ca43a
mov rcx, rbx
call fcn.1401eb440
test eax, eax
jne 0x1401d22b0
mov ecx, 0xbfff
and word [rbx + 0x14], cx
xor edx, edx
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x1401ca3b0
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
mov esi, dword [rbx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1401ca4be
mov r8d, 0x4000
mov rdx, rdi
mov rcx, rbx
call fcn.1401ea3d0
jmp 0x1401ca4eb
movups xmm0, xmmword [rdi]
mov eax, 0x2000
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + 0x10]
movsd qword [rbx + 0x10], xmm1
test word [rdi + 0x14], ax
jne 0x1401ca4eb
mov eax, 0xcfff
and word [rbx + 0x14], ax
mov eax, 0x4000
or word [rbx + 0x14], ax
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x1401ca53e
test al, 0x12
je 0x1401ca531
bt ax, 0xa
jae 0x1401ca511
mov rcx, rbx
call fcn.1401d4340
test eax, eax
jne 0x1401d22b0
cmp dword [rbx + 0x20], 0
je 0x1401ca521
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x1401ca531
mov rcx, rbx
call fcn.1401eb440
test eax, eax
jne 0x1401d22b0
mov eax, 0xbfff
and ax, word [rbx + 0x14]
mov word [rbx + 0x14], ax
bt ax, 0xb
jae 0x1401ca559
test byte [r12 + 2], 2
je 0x1401ca559
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x1401ca56e
add rbx, 0x38
add rdi, 0x38
jmp 0x1401ca4a0
mov rsi, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
jmp 0x1401cabe2
mov rcx, qword [rsp + 0x40]
mov r8d, 0x9000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
test word [rcx + 0x14], r8w
je 0x1401ca5b5
mov r8d, 0x4000
call fcn.1401ea3d0
jmp 0x1401ca2b8
movups xmm0, xmmword [rdx]
mov r12, qword [rsp + 0x40]
mov r8d, 0x2000
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 0x14], r8w
jne 0x1401cabec
mov eax, 0xcfff
and word [rcx + 0x14], ax
mov eax, 0x4000
or word [rcx + 0x14], ax
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x1401ca635
mov rdx, rax
mov rcx, r8
call fcn.1401ec790
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
cmp qword [r13 + 0x50], 0
jg 0x1401d1bbb
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r14, r11
imul rbx, rax, 0x38
movzx r15d, word [r14 + 0x14]
add rdi, r11
movzx eax, r15b
add rbx, r11
or al, byte [rdi + 0x14]
test al, 1
je 0x1401ca6f4
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1401ca6d0
mov rcx, rbx
call fcn.1401eb4f0
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov word [rbx + 0x14], 1
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
test r15b, 0x12
jne 0x1401ca72c
movzx r12d, byte [rsp + 0x48]
xor r8d, r8d
movzx edx, r12b
mov rcx, r14
call fcn.1401d4e10
test eax, eax
jne 0x1401cbf1d
movzx r15d, word [r14 + 0x14]
mov eax, 0xfffd
and r15w, ax
mov eax, 0x400
jmp 0x1401ca760
mov eax, 0x400
test ax, r15w
je 0x1401ca75a
mov rcx, r14
call fcn.1401d4340
test eax, eax
jne 0x1401cbf1d
movzx r15d, word [r14 + 0x14]
mov eax, 0xfffd
and r15w, ax
mov eax, 0x400
movzx r12d, byte [rsp + 0x48]
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x1401ca77b
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.1401d4e10
jmp 0x1401ca788
test ax, si
je 0x1401ca79c
mov rcx, rdi
call fcn.1401d4340
test eax, eax
jne 0x1401d22b0
movzx esi, word [rdi + 0x14]
mov eax, 0xfffd
and si, ax
mov rcx, qword [rsp + 0x68]
mov edx, dword [r14 + 0x10]
add edx, dword [rdi + 0x10]
movsxd r12, edx
movsxd rax, dword [rcx + 0x88]
cmp r12, rax
jg 0x1401d1e33
xor r10d, r10d
mov rcx, rbx
mov r8d, r10d
cmp rbx, rdi
sete r8b
add edx, 2
call fcn.1401d45e0
test eax, eax
jne 0x1401d22b0
movzx eax, word [rbx + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rbx + 0x14], ax
cmp rbx, rdi
je 0x1401ca809
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call fcn.140067c10
mov word [rdi + 0x14], si
movsxd rcx, dword [rdi + 0x10]
add rcx, qword [rbx + 8]
movsxd r8, dword [r14 + 0x10]
mov rdx, qword [r14 + 8]
call fcn.140067c10
mov word [r14 + 0x14], r15w
movzx r14d, byte [rsp + 0x48]
cmp r14b, 1
jbe 0x1401ca833
and r12, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov r15d, dword [rsp + 0x4c]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 8]
mov byte [rax + r12 + 1], 0
mov eax, 0x200
or word [rbx + 0x14], ax
mov dword [rbx + 0x10], r12d
mov byte [rbx + 0x16], r14b
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
mov rax, qword [rsp + 0x40]
add rsi, r11
add rdi, r11
movsxd rax, dword [rax + 0xc]
movzx ecx, word [rdi + 0x14]
movzx ebx, word [rsi + 0x14]
imul r14, rax, 0x38
movzx eax, cl
and al, bl
add r14, r11
test al, 4
jne 0x1401ca8dd
or cl, bl
test cl, 1
jne 0x1401cab9d
and bx, 0x2d
jne 0x1401ca8be
mov rcx, rsi
call fcn.1400ff180
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x1401ca8d0
mov rcx, rdi
call fcn.1400ff180
and bl, al
test bl, 4
je 0x1401caabf
xor edx, edx
mov rax, qword [rsp + 0x40]
mov r9, qword [rsi]
mov r8, qword [rdi]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x1401caa67
sub ecx, 1
je 0x1401ca9fa
sub ecx, 1
je 0x1401ca95f
cmp ecx, 1
je 0x1401ca92d
test r9, r9
je 0x1401cab98
cmp r9, 0xffffffffffffffff
mov eax, 1
cmove r9, rax
mov rax, r8
cqo
idiv r9
mov r8, rdx
jmp 0x1401caa86
test r9, r9
je 0x1401cab98
cmp r9, 0xffffffffffffffff
jne 0x1401ca94f
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x1401caabf
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1401caa86
test r9, r9
jle 0x1401ca995
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x1401caabf
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x1401ca9f1
jmp 0x1401caabf
jns 0x1401ca9f1
test r8, r8
jle 0x1401ca9b5
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x1401ca9f1
jmp 0x1401caabf
jns 0x1401ca9f1
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x1401caabf
cmp r8, rcx
je 0x1401caabf
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x1401caabf
imul r8, r9
jmp 0x1401caa86
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x1401caa17
test r8, r8
jns 0x1401caabf
sub r8, rcx
jmp 0x1401caa86
neg r9
js 0x1401caa3a
test r8, r8
jle 0x1401caa5c
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x1401caa5c
mov eax, 1
jmp 0x1401caa61
test r8, r8
jns 0x1401caa5c
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x1401caa5c
mov eax, 1
jmp 0x1401caa61
add r8, r9
mov eax, edx
test eax, eax
jne 0x1401caabf
jmp 0x1401caa86
test r9, r9
js 0x1401caaa4
test r8, r8
jle 0x1401caa83
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x1401caabf
add r8, r9
mov qword [r14], r8
mov ecx, 0xf244
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
jmp 0x1401cabb1
test r8, r8
jns 0x1401caa83
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x1401caa83
movzx eax, word [rsi + 0x14]
test al, 8
je 0x1401caacd
movsd xmm6, qword [rsi]
jmp 0x1401caaf0
test al, 0x24
je 0x1401caadb
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rsi]
jmp 0x1401caaf0
test al, 0x12
je 0x1401caaec
mov rcx, rsi
call fcn.14015d140
movaps xmm6, xmm0
jmp 0x1401caaf0
movaps xmm6, xmm10
movzx eax, word [rdi + 0x14]
test al, 8
je 0x1401caafe
movsd xmm0, qword [rdi]
jmp 0x1401cab1e
test al, 0x24
je 0x1401cab0c
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rdi]
jmp 0x1401cab1e
test al, 0x12
je 0x1401cab1a
mov rcx, rdi
call fcn.14015d140
jmp 0x1401cab1e
movaps xmm0, xmm10
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x1401cab89
sub ecx, 1
je 0x1401cab83
sub ecx, 1
je 0x1401cab7d
cmp ecx, 1
je 0x1401cab6e
mov rcx, rsi
call fcn.1400c2210
mov rcx, rdi
mov rbx, rax
call fcn.1400c2210
test rbx, rbx
je 0x1401cab98
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x1401cab8d
ucomisd xmm6, xmm10
jp 0x1401cab77
je 0x1401cab98
divsd xmm0, xmm6
jmp 0x1401cab8d
mulsd xmm0, xmm6
jmp 0x1401cab8d
subsd xmm0, xmm6
jmp 0x1401cab8d
addsd xmm0, xmm6
ucomisd xmm0, xmm0
setp al
cmp al, 1
jne 0x1401cabfc
mov r9, qword [rsp + 0x58]
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x1401cabcb
mov rcx, r14
call fcn.1401eb4f0
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2c2
mov rsi, qword [rsp + 0x68]
mov word [r14 + 0x14], 1
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
movsd qword [r14], xmm0
mov ecx, 0xf248
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 8
mov word [r14 + 0x14], ax
jmp 0x1401cabb1
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x1401ca206
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cac48
xor edx, edx
call fcn.1401ec790
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
mov qword [rcx], rdx
mov word [rcx + 0x14], 4
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rsi, qword [rsp + 0x40]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rdi, r11
imul rsi, rax, 0x38
add rcx, r11
add rsi, r11
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x1401cacd0
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x1401cacb2
mov rcx, rsi
call fcn.1401eb4f0
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
mov word [rsi + 0x14], 1
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
call fcn.1400c2210
mov rcx, rdi
mov rbx, rax
call fcn.1400c2210
mov rdx, rax
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax]
cmp cl, 0x66
jne 0x1401cacf5
and rbx, rdx
jmp 0x1401cad6c
cmp cl, 0x67
jne 0x1401cacff
or rbx, rdx
jmp 0x1401cad6c
test rdx, rdx
je 0x1401cad6c
jns 0x1401cad19
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x1401cad1f
neg rdx
cmp rdx, 0x40
jl 0x1401cad3a
test rbx, rbx
jns 0x1401cad32
cmp cl, 0x68
je 0x1401cad32
mov rbx, 0xffffffffffffffff
jmp 0x1401cad6c
xor r10d, r10d
mov ebx, r10d
jmp 0x1401cad6c
cmp cl, 0x68
mov rcx, rdx
jne 0x1401cad4a
shl rbx, cl
mov r8, rbx
jmp 0x1401cad69
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1401cad69
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
mov qword [rsi], rbx
mov ecx, 0xf244
movzx eax, word [rsi + 0x14]
and ax, cx
or ax, 4
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.1401d4760
mov r12, qword [rsp + 0x40]
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
jmp 0x1401ca2bd
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x1401cae27
test cl, 0x28
jne 0x1401cadf3
test cl, 2
je 0x1401cadfd
mov edx, 1
mov rcx, rbx
call fcn.1400f42c0
mov r11, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401cadfb
mov rcx, rbx
call fcn.1401d38d0
xor edx, edx
movzx eax, word [rbx + 0x14]
movzx ecx, ax
test al, 4
jne 0x1401cae27
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 0
jne 0x1401cb6a3
mov r15d, 0x14
mov r14, r12
jmp 0x1401cb9b8
mov r12, qword [rsp + 0x40]
mov eax, 0xf244
mov r10d, dword [rsp + 0x50]
and cx, ax
or cx, 4
mov word [rbx + 0x14], cx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x1401ca206
test al, 8
je 0x1401cae75
movsd xmm0, qword [rcx]
jmp 0x1401cae7d
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r12, qword [rsp + 0x40]
mov r8d, 0xf248
and ax, r8w
movsd qword [rcx], xmm0
or ax, 8
mov word [rcx + 0x14], ax
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1401caed4
mov rcx, rbx
call fcn.1401d4340
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
mov rax, qword [rsp + 0x40]
movzx r8d, r14b
mov rcx, rbx
movzx edx, byte [rax + 8]
call fcn.1401d4110
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx ecx, di
and cx, si
test cl, 4
je 0x1401cafbe
mov rax, qword [r14]
cmp rax, qword [r15]
jle 0x1401caf4a
mov rax, qword [0x1402cd458]
xor edx, edx
cmp byte [rbx + rax], dl
jmp 0x1401cb022
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
jge 0x1401caf8c
mov rax, qword [0x1402cd448]
xor edx, edx
cmp byte [rbx + rax], dl
jne 0x1401cb6a3
mov rsi, qword [rsp + 0x68]
mov r10d, 0xffffffff
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x50], r10d
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [0x1402cd450]
xor edx, edx
cmp byte [rbx + rax], dl
jne 0x1401cb6a3
mov rsi, qword [rsp + 0x68]
mov r10d, edx
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x50], edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
movzx eax, di
or ax, si
test al, 1
je 0x1401cb057
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
test al, al
jns 0x1401cb020
test cl, 1
je 0x1401cb005
mov eax, 0x100
test ax, di
jne 0x1401cb005
mov rax, qword [rsp + 0x40]
mov dword [rsp + 0x50], edx
mov r10d, dword [rsp + 0x50]
movzx edx, byte [rax]
mov rax, qword [0x1402cd450]
jmp 0x1401cb1a2
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x1401cb163
test al, 0x10
mov r12, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x4c]
jne 0x1401cb6a3
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rsi, qword [rsp + 0x68]
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
movzx ecx, byte [rbx + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x1401cb0a6
test al, 2
je 0x1401cb148
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x1401cb089
xor edx, edx
mov rcx, r15
call fcn.1400f42c0
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x1401cb148
xor edx, edx
mov rcx, r14
call fcn.1400f42c0
jmp 0x1401cb148
cmp cl, 0x42
jne 0x1401cb148
test al, 2
je 0x1401cb148
movzx r12d, byte [rsp + 0x48]
test sil, 2
je 0x1401cb0d5
movzx eax, si
mov ecx, 0xffd3
and ax, cx
mov word [r15 + 0x14], ax
jmp 0x1401cb114
test sil, 0x2c
je 0x1401cb10f
mov r8b, 1
movzx edx, r12b
mov rcx, r15
call fcn.1401d4e10
xor si, word [r15 + 0x14]
mov ecx, 0xdbf
and si, cx
mov ecx, 0xffd3
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x1401cb114
movzx edi, si
or di, 2
jmp 0x1401cb114
mov ecx, 0xffd3
test dil, 2
je 0x1401cb121
and word [r14 + 0x14], cx
jmp 0x1401cb148
test dil, 0x2c
je 0x1401cb148
mov r8b, 1
movzx edx, r12b
mov rcx, r14
call fcn.1401d4e10
xor di, word [r14 + 0x14]
mov eax, 0xdbf
and di, ax
xor di, word [r14 + 0x14]
mov r8, qword [rbx + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.1401af540
mov r11, qword [rsp + 0x60]
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x40]
mov ecx, r10d
test r10d, r10d
jns 0x1401cb180
movzx ecx, byte [rax]
mov rax, qword [0x1402cd448]
movzx edx, byte [rcx + rax]
jmp 0x1401cb1a6
movzx edx, byte [rax]
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x1401cb197
mov rax, qword [0x1402cd450]
mov r10d, ecx
jmp 0x1401cb1a2
mov rax, qword [0x1402cd458]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rdx + rax]
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov word [r14 + 0x14], di
mov word [r15 + 0x14], si
mov r15d, dword [rsp + 0x4c]
test dl, dl
jne 0x1401cb6a1
mov rsi, qword [rsp + 0x68]
xor edx, edx
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
test r10d, r10d
je 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
test byte [rax + 2], 1
jne 0x1401cb209
mov r13, rdx
jmp 0x1401cb211
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
mov esi, edx
mov r8d, dword [rax + 4]
mov rbx, rdx
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x60], rcx
mov dword [rbp - 0x70], r8d
mov dword [rbp - 0x78], r9d
mov qword [rbp - 0x50], rax
test rax, rax
jle 0x1401d1a7b
lea r14, [rcx + 0x20]
test r13, r13
je 0x1401cb24f
mov edx, dword [r13 + rbx*4]
jmp 0x1401cb251
mov edx, esi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r12, rcx, 0x38
movzx edi, byte [rbx + rax]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r12, r11
imul r15, rcx, 0x38
mov rdx, r12
and edi, 1
add r15, r11
mov rcx, r15
call fcn.1401af540
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x1401cb2d9
mov rcx, qword [rbp - 0x60]
inc esi
mov r8d, dword [rbp - 0x70]
inc rbx
mov r9d, dword [rbp - 0x78]
add r14, 8
mov r11, qword [rsp + 0x60]
cmp rbx, qword [rbp - 0x50]
jl 0x1401cb243
mov r15d, dword [rsp + 0x4c]
xor edx, edx
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rbp - 0x60]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x1401cb2fe
test byte [r15 + 0x14], 1
jne 0x1401cb2f6
test byte [r12 + 0x14], 1
je 0x1401cb2fe
neg r10d
mov dword [rsp + 0x50], r10d
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r9, qword [rsp + 0x58]
test edi, edi
je 0x1401cabec
neg r10d
mov dword [rsp + 0x50], r10d
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
test r10d, r10d
jns 0x1401cb368
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
jne 0x1401cb387
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov edi, 2
mov edx, edi
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1401c9030
mov ebx, eax
mov edx, edi
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x60]
call fcn.1401c9030
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rdx, eax
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x2c
jne 0x1401cb3fe
movzx edx, byte [rdx + rcx + 0x289af8]
jmp 0x1401cb406
movzx edx, byte [rdx + rcx + 0x289b08]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x60]
imul rcx, rax, 0x38
add rcx, r11
cmp dl, dil
jne 0x1401cb439
movzx eax, word [rcx + 0x14]
mov edx, 0xf241
mov r12, qword [rsp + 0x40]
and ax, dx
or ax, 1
mov word [rcx + 0x14], ax
jmp 0x1401ca2c2
mov r12, qword [rsp + 0x40]
movzx eax, dl
mov edx, 0xf244
mov qword [rcx], rax
movzx eax, word [rcx + 0x14]
and ax, dx
or ax, 4
mov word [rcx + 0x14], ax
jmp 0x1401ca2c2
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1401c9030
movsxd rdx, dword [rbx + 0x10]
mov r11, qword [rsp + 0x60]
movsxd rcx, eax
mov rax, rbx
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cb4aa
call fcn.1401ec790
mov r12, rbx
jmp 0x1401ca2bd
mov qword [rcx], rdx
mov r12, rbx
mov word [rcx + 0x14], 4
jmp 0x1401ca2c2
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
movzx eax, word [rcx + 0x14]
test al, 1
jne 0x1401d10fe
test al, 0x24
je 0x1401cb4f2
cmp qword [rcx], 0
mov rax, rdx
sete al
jmp 0x1401cb524
test al, 8
je 0x1401cb4fc
movsd xmm0, qword [rcx]
jmp 0x1401cb511
test al, 0x12
je 0x1401cb51f
call fcn.14015d140
mov r11, qword [rsp + 0x60]
xor edx, edx
mov r9, qword [rsp + 0x58]
ucomisd xmm0, xmm10
jp 0x1401cb51a
je 0x1401cb51f
mov rax, rdx
jmp 0x1401cb524
mov eax, 1
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x1401cb53f
mov rdx, rax
mov rcx, rbx
call fcn.1401ec790
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rbx], rax
mov word [rbx + 0x14], 4
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov r12, qword [rsp + 0x40]
mov word [rbx + 0x14], 1
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r11
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x1401cb5b5
mov rcx, rbx
call fcn.1401eb4f0
mov r11, qword [rsp + 0x60]
xor edx, edx
mov r9, qword [rsp + 0x58]
jmp 0x1401cb5bb
mov word [rbx + 0x14], 1
test byte [rdi + 0x14], 1
jne 0x1401ca373
mov rcx, rdi
mov word [rbx + 0x14], 4
call fcn.1400c2210
not rax
mov qword [rbx], rax
jmp 0x1401ca2b8
mov r8, qword [r13 + 0x108]
test r8, r8
je 0x1401cb638
mov rcx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [r13 + 0x88]
mov r9, qword [r8 + 0x28]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x1401cb697
bts eax, edx
mov byte [rcx + r9], al
xor edx, edx
mov r9, qword [rsp + 0x58]
jmp 0x1401cb650
mov rax, qword [rsp + 0x40]
mov rcx, qword [r13 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x1401d1a4a
mov rax, qword [r13 + 0x88]
mov r12, qword [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r12 + 4], ecx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
add rcx, r11
mov edx, dword [rax + 0xc]
call fcn.1401c9030
test eax, eax
je 0x1401ca2b8
mov r9, qword [rsp + 0x58]
mov r12, qword [rsp + 0x40]
xor edx, edx
mov eax, dword [r12 + 8]
mov r11, qword [rsp + 0x60]
dec eax
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
mov qword [rsp + 0x40], rsi
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.1401c9030
test eax, eax
jne 0x1401ca2b8
jmp 0x1401cb697
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x1401cb7a2
mov rcx, rax
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 0xc]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x1401cb78c
mov ecx, dword [rcx + rdx*4 + 0x78]
cmp ecx, 0xc
jb 0x1401cb776
test cl, 1
mov eax, 4
mov ecx, 8
cmove ax, cx
xor edx, edx
jmp 0x1401cb7cc
mov rax, rcx
xor edx, edx
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x289b18]
jmp 0x1401cb7cc
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 0x10]
mov eax, 1
dec ecx
shl ax, cl
xor edx, edx
jmp 0x1401cb7cc
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
lea rcx, [0x140000000]
and eax, 0x3f
movzx ecx, byte [rax + rcx + 0x288350]
mov eax, 1
dec ecx
shl ax, cl
mov r12, qword [rsp + 0x40]
test word [r12 + 2], ax
jne 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1401cb852
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1401cb852
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cb838
xor edx, edx
call fcn.1401ec790
mov r12, rbx
jmp 0x1401ca2bd
mov qword [rcx], rdx
mov r12, rbx
mov word [rcx + 0x14], 4
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cb878
call fcn.1401eb4f0
mov r12, rbx
jmp 0x1401ca2bd
mov word [rcx + 0x14], 1
mov r12, rbx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1401cdb25
cmp byte [rdx + 2], 0
je 0x1401cdb25
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cb904
call fcn.1401eb4f0
jmp 0x1401cb697
mov word [rcx + 0x14], 1
jmp 0x1401cb69c
mov rax, qword [rsp + 0x40]
mov r12, qword [rbp - 0x80]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x40]
mov r14d, dword [rcx + 8]
mov dword [rbp - 0x78], r14d
nop dword [rax]
nop word [rax + rax]
mov r13, qword [rbx + 0x58]
mov eax, dword [r12 + 0x2c]
mov qword [rbp - 0x50], r13
cmp dword [rbx + 0x20], eax
je 0x1401cb98b
cmp byte [rbx + 2], 0
jne 0x1401cba26
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x1401cb984
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x1401cb9d9
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x1401cb9d9
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x1401cb92d
cmp byte [rdi], 0
je 0x1401cb9ec
jmp 0x1401cb998
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1401cbb1c
mov rcx, rbx
call fcn.1401d3660
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1401cb940
mov r13, r12
mov rdi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r12, qword [rsp + 0x70]
xor ebx, ebx
cmp byte [rsi + 0x67], 0
je 0x1401d232e
mov r15d, 7
jmp 0x1401d2364
mov rcx, rbx
call fcn.1401d2f90
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ab
mov rcx, rdi
call fcn.14014de00
mov eax, dword [rdi + 0x40]
mov dword [rbx + 0x68], eax
mov rax, qword [rdi + 0x88]
movzx ecx, word [rdi + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rdi + 0x38]
cmp ecx, edx
jle 0x1401cba1d
test edx, edx
mov ecx, edx
mov r10d, 0
cmovs ecx, r10d
mov dword [rbx + 0x6c], ecx
mov rcx, qword [rdi + 0x38]
jmp 0x1401cba51
cmp byte [rbx], 3
jne 0x1401cbac4
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x1401cbac4
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + 8]
mov qword [rbx + 0x60], rcx
mov eax, dword [r12 + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
cmp eax, 0x80
jae 0x1401cba72
mov eax, 1
jmp 0x1401cba81
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.1401aa3b0
movzx eax, al
mov edx, 0x40
mov rcx, rbx
mov dword [rdx + rbx], eax
xor edx, edx
mov word [rbx + 0x4a], dx
mov eax, dword [r13]
cmp dword [rbx + 0x6c], eax
jae 0x1401cbabb
mov qword [rbx + 0x60], rdx
mov dword [rbx + 0x6c], edx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x1401cbd80
cmp eax, dword [rbx + 0x68]
jbe 0x1401cbb1e
jmp 0x1401cbd80
mov rax, qword [rbx + 0x60]
jmp 0x1401cbbd0
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cbb02
call fcn.1401eb4f0
mov r11, qword [rsp + 0x60]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2c2
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov word [rcx + 0x14], 1
jmp 0x1401ca2c2
xor edx, edx
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x1401cbe67
mov eax, dword [r13]
cmp dword [rbx + 0x40], eax
jae 0x1401cbdcf
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x1401cbbd4
mov qword [rbp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
movups xmmword [rbp + 0x18], xmm0
movups xmmword [rbp + 0x28], xmm0
mov r10, qword [rbx + 0x30]
mov r8d, dword [r13]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x1401cbb89
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
jmp 0x1401cbb8b
xor edx, edx
mov rax, qword [r10 + 0x38]
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x10], rax
cmp r8d, ecx
ja 0x1401cbbaf
mov ecx, 0x4010
mov dword [rbp + 0x18], r8d
mov word [rbp + 0x1c], cx
mov dword [rsp + 0x4c], edx
jmp 0x1401cbbd4
lea r9, [rbp + 8]
xor edx, edx
mov rcx, r10
call fcn.1401d4470
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ab
mov rax, qword [rbp + 0x10]
mov qword [rbp - 0x60], rax
movzx r12d, word [rbx + 0x4a]
mov esi, dword [rbx + 0x40]
mov r14d, r12d
mov rcx, qword [rbp - 0x50]
add rsi, rax
mov r15d, dword [r13 + r12*4]
mov r13d, dword [r13]
add r13, rax
movzx edi, byte [rsi]
mov dword [rbp - 0x70], edi
mov dword [rbx + r14*4 + 0x78], edi
cmp edi, 0x80
jae 0x1401cbc19
lea rdx, [0x140000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x2877f0]
jmp 0x1401cbc55
lea rdx, [rbp - 0x70]
mov rcx, rsi
call fcn.1401aa3b0
mov edi, dword [rbp - 0x70]
movzx eax, al
add rsi, rax
mov dword [rbx + r14*4 + 0x78], edi
cmp edi, 0x80
jb 0x1401cbc42
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1401cbc51
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x2877f0]
mov rcx, qword [rbp - 0x50]
inc r12d
add r15, rax
movsxd r14, r12d
mov dword [rcx + r14*4], r15d
cmp r12d, dword [rbp - 0x78]
ja 0x1401cbc6f
cmp rsi, r13
jb 0x1401cbbf2
jmp 0x1401cbc78
cmp rsi, r13
jb 0x1401cbd3a
cmp rsi, r13
ja 0x1401cbd46
mov eax, dword [rbx + 0x68]
cmp r15, rax
jne 0x1401cbd46
xor edx, edx
sub esi, dword [rbp - 0x60]
mov r8d, 0x9000
mov word [rbx + 0x4a], r12w
mov dword [rbx + 0x40], esi
cmp qword [rbx + 0x60], 0
jne 0x1401cbcc5
test word [rbp + 0x1c], r8w
jne 0x1401cbcb4
cmp dword [rbp + 0x28], 0
je 0x1401cbcc5
lea rcx, [rbp + 8]
call fcn.1401eb4a0
xor edx, edx
mov r8d, 0x9000
mov r13, qword [rbp - 0x50]
mov r14d, dword [rbp - 0x78]
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x1401cbe6e
mov r15, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
cmp byte [r15 + 1], 0xf6
jne 0x1401cbe1e
test word [rcx + 0x14], r8w
mov r8d, 0x2000
mov rax, qword [r15 + 0x10]
je 0x1401cbddc
mov rdx, rax
call fcn.1401ea3d0
mov r11, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2c2
mov eax, dword [rbx + 0x68]
cmp r15, rax
jbe 0x1401cbc8d
cmp dword [rcx], 0
jne 0x1401cbd58
xor edx, edx
mov rsi, r13
mov r12d, edx
jmp 0x1401cbc8f
cmp qword [rbx + 0x60], 0
jne 0x1401cbd79
mov eax, 0x9000
test word [rbp + 0x1c], ax
jne 0x1401cbd70
cmp dword [rbp + 0x28], 0
je 0x1401cbd79
lea rcx, [rbp + 8]
call fcn.1401eb4a0
mov rsi, qword [rsp + 0x68]
xor edx, edx
mov r9, qword [rsp + 0x58]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x1401d1bf2
mov r13, qword [rbp - 0x80]
dec eax
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r9 + rax*8]
mov qword [rsp + 0x40], r15
mov r12, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov edi, edx
mov r8d, 0x9000
jmp 0x1401cbcd2
movups xmm0, xmmword [rax]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rax + 0x14], r8w
jne 0x1401ce5ed
mov eax, 0xafff
and word [rcx + 0x14], ax
or word [rcx + 0x14], r8w
jmp 0x1401ca1c7
test word [rcx + 0x14], r8w
je 0x1401cbe48
call fcn.1401eb4f0
mov r11, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2c2
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov word [rcx + 0x14], 1
jmp 0x1401ca1c7
mov eax, r14d
mov edi, dword [rbx + rax*4 + 0x78]
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 0xc]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [rsp + 0x60]
test word [rsi + 0x14], ax
je 0x1401cbe98
mov rcx, rsi
call fcn.1401eb4f0
mov rdx, qword [rsp + 0x40]
lea eax, [r14 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x1401cbfa1
mov eax, r14d
mov r14d, dword [r13 + rax*4]
add r14, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x1401cbed6
mov rcx, r14
mov edx, edi
mov r8, rsi
call fcn.1401d6890
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
jmp 0x1401cabb1
movzx eax, byte [rsp + 0x48]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [rsi + 0x10], ebx
mov byte [rsi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rsi + 0x20], edx
jge 0x1401cbf53
mov rcx, qword [rsp + 0x68]
cmp ebx, dword [rcx + 0x88]
jg 0x1401d1e0d
xor r8d, r8d
mov word [rsi + 0x14], 1
mov rcx, rsi
call fcn.1401d45e0
test eax, eax
je 0x1401cbf5b
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x70]
mov rcx, rsi
call fcn.1401aff30
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.1401c9aa0
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r15d, 7
jmp 0x1401cb9c2
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r14
call fcn.140067c10
mov rax, qword [rsi + 8]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
mov byte [rbx + rax], 0
mov rax, qword [rsi + 8]
mov byte [rax + rbx + 1], 0
mov eax, edi
and eax, 1
movzx eax, word [rcx + rax*2 + 0x289ba4]
mov word [rsi + 0x14], ax
jmp 0x1401cabb1
movzx eax, byte [rsp + 0x48]
mov byte [rsi + 0x16], al
movzx eax, byte [rdx + 2]
and al, 0xc0
je 0x1401cbfc4
cmp al, 0x80
je 0x1401cbfe8
cmp edi, 0xc
jb 0x1401cbfc4
test dil, 1
je 0x1401cbfe8
cmp al, 0xc0
je 0x1401cbfe8
cmp edi, 0x80
jb 0x1401cbfd3
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1401cbfe4
mov eax, edi
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x2877f0]
test eax, eax
jne 0x1401cbff4
lea rcx, [0x140287110]
jmp 0x1401cbebe
mov eax, r14d
mov r8d, edi
mov qword [rsp + 0x30], rsi
mov edx, r14d
mov rcx, rbx
mov r9d, dword [r13 + rax*4]
mov eax, dword [rbp - 0x54]
mov r13, qword [rbp - 0x80]
mov dword [rsp + 0x28], eax
mov eax, dword [r13 + 0x2c]
mov dword [rsp + 0x20], eax
call fcn.1401ea410
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1401cabb1
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
cmp eax, 7
je 0x1401cbf22
cmp eax, 0x12
je 0x1401d1e19
jmp 0x1401cb9b3
mov rax, qword [rsp + 0x40]
mov esi, edx
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov r15, qword [r14 + 8]
add rbx, r11
cmp dx, word [r14 + 0x36]
jge 0x1401d1a6c
lea rdi, [r15 + 0xc]
nop dword [rax + rax]
movzx eax, word [rdi + 6]
test al, 0x60
je 0x1401cc09f
test al, 0x20
jne 0x1401cc220
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0xc], 0
jne 0x1401cc21c
movzx ecx, byte [rdi]
cmp cl, 0x43
jl 0x1401cc0d5
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x1401cc111
test al, 0x28
jne 0x1401cc0c6
test al, 2
je 0x1401cc111
mov edx, 1
mov rcx, rbx
call fcn.1400f42c0
jmp 0x1401cc111
cmp cl, 0x45
jg 0x1401cc111
mov rcx, rbx
call fcn.1401d38d0
jmp 0x1401cc111
cmp cl, 0x42
jne 0x1401cc111
movzx ecx, word [rbx + 0x14]
test cl, 2
jne 0x1401cc106
test cl, 0x2c
je 0x1401cc106
cmp dword [rbx + 0x20], 0x20
jge 0x1401cc15b
xor r8d, r8d
mov edx, 0x20
mov rcx, rbx
call fcn.1401d45e0
test eax, eax
je 0x1401cc16b
mov byte [rbx + 0x16], 0
mov r12d, 0xffd3
and word [rbx + 0x14], r12w
movzx ecx, word [rbx + 0x14]
movzx edx, cx
test cl, 1
jne 0x1401cc21c
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x1401cc213
sub eax, 1
je 0x1401cc20e
sub eax, 1
je 0x1401cc20e
sub eax, 1
je 0x1401cc1b7
cmp eax, 1
jne 0x1401cc21c
test cl, 2
jmp 0x1401cc216
mov rax, qword [rbx + 0x28]
and cx, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], cx
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, 0x20
call fcn.1401eb530
mov byte [rbx + 0x16], 1
mov r12d, 0xffd3
movzx eax, word [rbx + 0x14]
mov ecx, 0x202
and ax, r12w
or ax, cx
mov word [rbx + 0x14], ax
movzx eax, byte [rsp + 0x48]
cmp al, 1
je 0x1401cc10c
movzx edx, al
mov rcx, rbx
call fcn.1401d4ed0
jmp 0x1401cc10c
test cl, 4
je 0x1401cc209
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rbx
ja 0x1401cc1e4
or cx, 0x20
jmp 0x1401cc1f4
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
mov edx, 0x14
mov r8d, 0xfffb
and cx, r8w
mov word [rdx + rax], cx
jmp 0x1401cc21c
test cl, 0x28
jmp 0x1401cc216
test cl, 4
jmp 0x1401cc216
test cl, 0x10
je 0x1401d1c08
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
add rdi, 0x18
cmp esi, eax
jl 0x1401cc080
mov r15d, dword [rsp + 0x4c]
jmp 0x1401cabb1
mov rax, qword [rsp + 0x40]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
cmp al, 0x43
jl 0x1401cc288
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x1401cc2c1
test cl, 0x28
jne 0x1401cc27a
test cl, 2
je 0x1401cc2c1
mov edx, 1
mov rcx, rbx
call fcn.1400f42c0
jmp 0x1401cc2c1
cmp al, 0x45
jg 0x1401cc2c1
mov rcx, rbx
call fcn.1401d38d0
jmp 0x1401cc2c1
cmp al, 0x42
jne 0x1401cc2c1
movzx ecx, word [rbx + 0x14]
test cl, 2
jne 0x1401cc2b8
test cl, 0x2c
je 0x1401cc2b8
cmp dword [rbx + 0x20], 0x20
jge 0x1401cc304
xor r8d, r8d
mov edx, 0x20
mov rcx, rbx
call fcn.1401d45e0
test eax, eax
je 0x1401cc314
mov byte [rbx + 0x16], 0
mov esi, 0xffd3
and word [rbx + 0x14], si
cmp byte [rdi], 0x45
jne 0x1401cc378
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x1401cc378
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x1401cc35c
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x1401cc374
mov rax, qword [rbx + 0x28]
and cx, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], cx
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, 0x20
call fcn.1401eb530
mov byte [rbx + 0x16], 1
mov esi, 0xffd3
movzx eax, word [rbx + 0x14]
mov ecx, 0x202
and ax, si
or ax, cx
mov word [rbx + 0x14], ax
cmp r14b, 1
je 0x1401cc2bd
movzx edx, r14b
mov rcx, rbx
call fcn.1401d4ed0
jmp 0x1401cc2bd
xorps xmm0, xmm0
mov eax, 0xfff9
cvtsi2sd xmm0, rdx
and cx, ax
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x1401ce5e1
add rbx, 0x38
jmp 0x1401cc254
mov rcx, qword [rsp + 0x40]
mov rsi, rdx
mov r12d, edx
mov r13, rdx
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r14, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r14, r11
cdqe
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add r15, r14
mov qword [rbp - 0x60], r14
add rcx, r11
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x70], rcx
test rdi, rdi
je 0x1401cc42b
lea rbx, [r14 + 0x14]
mov r15d, 0xfffb
movzx r14d, byte [rsp + 0x48]
nop word [rax + rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r14b
call fcn.1400f4250
cmp byte [rdi], 0x45
jne 0x1401cc417
movzx eax, word [rbx]
test al, 4
je 0x1401cc417
and ax, r15w
or ax, 0x20
mov word [rbx], ax
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x1401cc3f0
mov r14, qword [rbp - 0x60]
mov r15, qword [rbp - 0x50]
lea rdi, [r15 + 0x24]
nop
movzx ecx, word [rdi - 0x10]
test cl, 1
je 0x1401cc457
inc r12d
mov eax, 0x400
and cx, ax
mov r15d, 1
neg cx
sbb ebx, ebx
and ebx, 0xa
jmp 0x1401cc5f2
test cl, 0x24
je 0x1401cc56e
mov r8, qword [rdi - 0x24]
mov rdx, r8
test r8, r8
jns 0x1401cc46f
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x1401cc4ae
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x1401cc49e
mov rax, qword [rbp - 0x80]
cmp byte [rax + 0xc5], 4
jb 0x1401cc49e
lea ebx, [rdx + 8]
mov r15d, 1
jmp 0x1401cc5f2
mov ebx, 1
inc rsi
mov r15d, ebx
jmp 0x1401cc5f2
cmp rdx, 0x7fff
ja 0x1401cc4cb
add rsi, 2
mov ebx, 2
mov r15d, 1
jmp 0x1401cc5f2
cmp rdx, 0x7fffff
ja 0x1401cc4e8
add rsi, 3
mov ebx, 3
mov r15d, 1
jmp 0x1401cc5f2
cmp rdx, 0x7fffffff
ja 0x1401cc505
add rsi, 4
mov ebx, 4
mov r15d, 1
jmp 0x1401cc5f2
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x1401cc528
add rsi, 6
mov ebx, 5
mov r15d, 1
jmp 0x1401cc5f2
add rsi, 8
test cl, 0x20
je 0x1401cc55e
xorps xmm0, xmm0
mov eax, 0xffdf
cvtsi2sd xmm0, r8
and cx, ax
mov ebx, 7
or cx, 8
mov r15d, 1
movsd qword [rdi - 0x24], xmm0
mov word [rdi - 0x10], cx
jmp 0x1401cc5f2
mov ebx, 6
mov r15d, 1
jmp 0x1401cc5f2
test cl, 8
je 0x1401cc587
inc r12d
mov ebx, 7
add rsi, 8
mov r15d, 1
jmp 0x1401cc5f2
mov r15d, dword [rdi - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea ebx, [r15 + 6]
lea ebx, [rax + rbx*2]
jae 0x1401cc5ca
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x1401cc5c3
lea rcx, [rdi - 0x24]
call fcn.1401d4340
test eax, eax
jne 0x1401cbf14
add r15d, dword [rdi - 0x24]
jmp 0x1401cc5c6
add r13, rax
mov r14, qword [rbp - 0x60]
mov eax, r15d
mov r15d, 1
add rsi, rax
mov ecx, r15d
mov eax, ebx
shr rax, 7
test rax, rax
je 0x1401cc5ef
inc ecx
shr rax, 7
test rax, rax
jne 0x1401cc5e4
add r12d, ecx
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r14
je 0x1401cc609
sub rdi, 0x38
jmp 0x1401cc430
cmp r12d, 0x7e
jle 0x1401cc64f
movsxd rax, r12d
mov edx, r15d
shr rax, 7
test rax, rax
je 0x1401cc62b
nop
inc edx
shr rax, 7
test rax, rax
jne 0x1401cc620
add r12d, edx
mov ecx, r15d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x1401cc64b
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x1401cc640
cmp edx, ecx
jge 0x1401cc652
inc r12d
mov rdi, qword [rbp - 0x70]
movsxd rbx, r12d
add rbx, rsi
movsxd rdx, dword [rdi + 0x20]
lea rcx, [rbx + r13]
cmp rcx, rdx
jle 0x1401cc699
mov rsi, qword [rsp + 0x68]
movsxd rax, dword [rsi + 0x88]
cmp rcx, rax
jg 0x1401d1e10
cmp edx, ebx
jge 0x1401cc699
xor r8d, r8d
mov edx, ebx
mov rcx, rdi
call fcn.1401d45e0
test eax, eax
jne 0x1401cbf19
jmp 0x1401cc6a1
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], ebx
mov word [rdi + 0x14], 0x10
test r13, r13
je 0x1401cc6b8
mov dword [rdi], r13d
mov word [rdi + 0x14], 0x410
mov rdi, qword [rdi + 8]
movsxd rbx, r12d
add rbx, rdi
cmp r12d, 0x80
jge 0x1401cc6d3
mov byte [rdi], r12b
inc rdi
jmp 0x1401cc714
movsxd rdx, r12d
cmp rdx, 0x7f
ja 0x1401cc6e6
and dl, 0x7f
mov eax, r15d
mov byte [rdi], dl
jmp 0x1401cc70f
cmp rdx, 0x3fff
ja 0x1401cc707
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rdi], al
and dl, 0x7f
mov byte [rdi + 1], dl
mov eax, 2
jmp 0x1401cc70f
mov rcx, rdi
call fcn.14013f210
cdqe
add rdi, rax
lea rsi, [r14 + 0x10]
mov r14, qword [rbp - 0x50]
nop dword [rax]
mov eax, dword [rsi + 0x14]
cmp eax, 7
ja 0x1401cc79b
mov byte [rdi], al
inc rdi
test eax, eax
je 0x1401cc80f
mov rcx, qword [rsi - 0x10]
lea rdx, [0x140000000]
movzx edx, byte [rax + rdx + 0x2877f0]
mov eax, edx
sub eax, 1
je 0x1401cc794
sub eax, 1
je 0x1401cc78d
sub eax, 1
je 0x1401cc786
sub eax, 1
je 0x1401cc77f
cmp eax, 2
je 0x1401cc771
mov byte [rbx + 7], cl
shr rcx, 8
mov byte [rbx + 6], cl
shr rcx, 8
mov byte [rbx + 5], cl
shr rcx, 8
mov byte [rbx + 4], cl
shr rcx, 8
mov byte [rbx + 3], cl
shr rcx, 8
mov byte [rbx + 2], cl
shr rcx, 8
mov byte [rbx + 1], cl
shr rcx, 8
mov byte [rbx], cl
add rbx, rdx
jmp 0x1401cc80f
cmp eax, 0x80
jae 0x1401cc7b5
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x1401cc80f
movsxd rax, dword [rsi]
test eax, eax
jle 0x1401cc80f
jmp 0x1401cc7fa
mov rdx, rax
cmp rax, 0x7f
ja 0x1401cc7c8
and dl, 0x7f
mov eax, r15d
mov byte [rdi], dl
jmp 0x1401cc7ee
cmp rdx, 0x3fff
ja 0x1401cc7e6
shr rax, 7
or al, 0x80
mov byte [rdi], al
and dl, 0x7f
mov byte [rdi + 1], dl
mov eax, 2
jmp 0x1401cc7ee
mov rcx, rdi
call fcn.14013f210
cdqe
add rdi, rax
movsxd rax, dword [rsi]
test eax, eax
je 0x1401cc80f
mov rdx, qword [rsi - 8]
mov r8, rax
mov rcx, rbx
call fcn.140067c10
movsxd rax, dword [rsi]
add rbx, rax
lea rax, [rsi - 0x10]
cmp rax, r14
je 0x1401ce5d2
add rsi, 0x38
jmp 0x1401cc720
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x1401cc84d
mov rcx, rdx
call fcn.140180620
mov rbx, rax
jmp 0x1401cc872
xor ebx, ebx
lea r8, [rbp - 0x60]
mov rcx, rsi
mov qword [rbp - 0x60], rbx
call fcn.14017de00
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1fc3
mov rbx, qword [rbp - 0x60]
mov rax, qword [rsp + 0x40]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 0x14], cx
je 0x1401cc89e
mov rcx, rax
call fcn.140162240
mov qword [rax], rbx
jmp 0x1401cebd1
mov word [rax + 0x14], 4
mov qword [rax], rbx
jmp 0x1401cebd1
mov rax, qword [rsp + 0x40]
mov r10d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rbp - 0x78], r10d
test r10d, r10d
jne 0x1401cc99e
mov rdi, qword [rsp + 0x68]
cmp dword [rdi + 0xe0], r10d
jg 0x1401d1c72
test rsi, rsi
jne 0x1401cc8e1
mov ebx, edx
jmp 0x1401cc8ff
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rsi + rbx], 0
jne 0x1401cc8f0
and ebx, 0x3fffffff
mov r8d, dword [rdi + 0x2f4]
xor edx, edx
add r8d, dword [rdi + 0x2f0]
mov rcx, rdi
call fcn.1401d8340
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1c87
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.140186d00
mov rdi, rax
test rax, rax
je 0x1401cccee
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.140067c10
mov rsi, qword [rsp + 0x68]
cmp byte [rsi + 0x65], r15b
je 0x1401cc96b
mov byte [rsi + 0x65], r15b
mov byte [rsi + 0x6d], 1
jmp 0x1401cc971
inc dword [rsi + 0x2f0]
mov rax, qword [rsi + 0x2e0]
mov qword [rdi + 0x18], rax
mov qword [rsi + 0x2e0], rdi
mov rax, qword [rsi + 0x2f8]
mov qword [rdi + 8], rax
mov rax, qword [rsi + 0x300]
mov qword [rdi + 0x10], rax
jmp 0x1401ccc7e
mov rcx, qword [rsp + 0x68]
mov r13d, edx
mov r12, qword [rcx + 0x2e0]
test r12, r12
je 0x1401ccaa5
lea r11, [0x140000000]
nop dword [rax]
mov r8, qword [r12]
mov r9, rsi
sub r9, r8
nop word [rax + rax]
movzx edx, byte [r8]
movzx eax, byte [r9 + r8]
cmp edx, eax
jne 0x1401cca76
test edx, edx
jne 0x1401cca8c
mov rsi, qword [rsp + 0x68]
cmp dword [rsi + 0xe0], edx
jle 0x1401cca00
cmp r10d, 1
je 0x1401d1c8f
cmp qword [r12 + 0x18], 0
jne 0x1401ccacb
cmp byte [rsi + 0x6d], 0
je 0x1401ccacb
mov eax, 1
mov r15d, eax
cmp r10d, eax
jne 0x1401ccad2
mov rbx, qword [rbp - 0x80]
mov edx, eax
mov rcx, rbx
call fcn.1401c91d0
mov r15d, eax
test eax, eax
jne 0x1401d24f4
mov rcx, rbx
mov byte [rsi + 0x65], 1
call fcn.1401d32b0
cmp eax, 5
je 0x1401d1cb9
mov r15d, dword [rbx + 0x34]
mov dword [rsp + 0x4c], r15d
test r15d, r15d
jne 0x1401d1cad
mov byte [rsi + 0x6d], r15b
mov r15d, 1
jmp 0x1401ccbce
movzx ecx, byte [rax + r11 + 0x286ff0]
movzx eax, byte [rdx + r11 + 0x286ff0]
cmp eax, ecx
jne 0x1401cca94
inc r8
jmp 0x1401cc9d0
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x1401cc9c0
mov r13, qword [rbp - 0x80]
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
mov r8, rsi
call fcn.1401c9aa0
mov r15d, 1
mov rsi, qword [rsp + 0x68]
jmp 0x1401cb9b3
xor ebx, ebx
mov r15d, ebx
jmp 0x1401ccad4
xor ebx, ebx
mov eax, dword [rsi + 0x2f0]
sub eax, r13d
lea r13d, [rax - 1]
cmp r10d, 2
jne 0x1401ccb42
mov r14d, dword [rsi + 0x2c]
mov edi, ebx
and r14d, 1
cmp dword [rsi + 0x28], 0
jle 0x1401ccb45
mov esi, r14d
xor esi, 1
nop dword [rax]
mov rax, qword [rsp + 0x68]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rax + 0x20]
mov rcx, qword [rbx + rcx + 8]
call fcn.1401814b0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401d22f4
mov rcx, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x1401ccb00
mov r10d, dword [rbp - 0x78]
mov rsi, rcx
xor ebx, ebx
jmp 0x1401ccb49
mov r14d, ebx
mov eax, dword [rsp + 0x4c]
cmp dword [rsi + 0x28], 0
mov edi, ebx
jle 0x1401ccb82
mov rcx, qword [rsi + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rbx + rcx + 8]
call fcn.140180690
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401d22e6
mov r10d, dword [rbp - 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x1401ccb51
xor ebx, ebx
test r14d, r14d
je 0x1401ccbbb
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1401ccbab
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x1401ccb90
mov rcx, rsi
call fcn.1401baf50
or dword [rsi + 0x2c], 1
mov eax, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x1401d22c9
movzx r14d, byte [rsp + 0x48]
mov rcx, qword [rsi + 0x2e0]
cmp rcx, r12
je 0x1401ccc08
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rsi
mov qword [rsi + 0x2e0], rax
call fcn.140186b70
dec dword [rsi + 0x2f0]
mov rcx, qword [rsi + 0x2e0]
cmp rcx, r12
jne 0x1401ccbe0
mov ebx, dword [rbp - 0x78]
cmp ebx, 1
jne 0x1401ccc38
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2e0], rax
call fcn.140186b70
test r15d, r15d
jne 0x1401ccce7
dec dword [rsi + 0x2f0]
jmp 0x1401ccc5e
mov rax, qword [r12 + 8]
mov qword [rsi + 0x2f8], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x300], rax
test r15d, r15d
je 0x1401ccc5e
cmp ebx, 2
jne 0x1401ccce7
mov r8d, r13d
mov edx, ebx
mov rcx, rsi
call fcn.1401d8340
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d2325
mov r13, qword [rbp - 0x80]
cmp byte [r13 + 0xc7], 3
jne 0x1401ca2b8
mov r14, qword [rsp + 0x40]
mov r15d, 0x65
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp rdi, r12
jb 0x1401d2506
mov rdx, qword [rsi + 0x210]
test rdx, rdx
je 0x1401d2506
mov eax, dword [rsi + 0x220]
mov rcx, qword [rsi + 0x218]
add r12, rax
call rdx
test eax, eax
je 0x1401ccca1
mov eax, 0xb
mov r12, 0xffffffffffffffff
mov r15d, 9
jmp 0x1401cb9c2
mov r15d, dword [rsp + 0x4c]
jmp 0x1401ccc7a
mov rsi, qword [rsp + 0x68]
jmp 0x1401ccc7e
mov rcx, qword [rsp + 0x40]
mov dword [rbp - 0x48], edx
mov edx, dword [rcx + 8]
test edx, edx
je 0x1401ccd1b
mov rax, qword [rsi + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x1401d1cff
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [rsi + 0x20]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x1401ccea4
cmp byte [rbx + 0x11], 0
jne 0x1401ccd9d
movzx eax, byte [rbx + 0x10]
test al, al
je 0x1401ccd9d
cmp al, 1
jne 0x1401ccd4a
test edx, edx
jne 0x1401ccd9d
mov r8, qword [rbx + 8]
mov rax, qword [r8 + 0x18]
mov rcx, qword [rax + 0x50]
mov eax, dword [rcx + 0x28]
bswap eax
mov dword [rbp - 0x48], eax
test edx, edx
je 0x1401ccd90
mov rax, qword [rbx]
mov rcx, qword [r8]
mov edx, dword [rax + 0x2f0]
cmp edx, dword [rcx + 0x80]
jle 0x1401ccd83
cmp byte [rcx + 0xa], 0
je 0x1401ccd83
call fcn.140162a40
jmp 0x1401ccda9
xor r10d, r10d
mov r15d, r10d
mov dword [rsp + 0x4c], r10d
jmp 0x1401ccdb0
xor r10d, r10d
mov r15d, r10d
mov dword [rsp + 0x4c], r10d
jmp 0x1401ccdbe
lea r8, [rbp - 0x48]
mov rcx, rbx
call fcn.1400f72c0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test r15d, r15d
jne 0x1401d1d1b
mov r9, qword [rsp + 0x58]
test byte [r13 + 0xc8], 0x20
mov r12, qword [rsp + 0x40]
je 0x1401cceb0
cmp dword [r12 + 8], 0
je 0x1401cceb0
cmp byte [rsi + 0x65], 0
je 0x1401ccdf0
cmp dword [rsi + 0xdc], 1
jle 0x1401cceb0
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x1401cce11
inc dword [rsi + 0x2f4]
mov r8d, dword [rsi + 0x2f4]
add r8d, dword [rsi + 0x2f0]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rsi
call fcn.1401d8340
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cce87
mov edi, dword [r13 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x1401cce46
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x1401cce46
mov rcx, rbx
call fcn.1400f8620
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x1401cce60
cmp byte [rcx + 0xa], 0
je 0x1401cce60
mov edx, edi
call fcn.140162a40
jmp 0x1401cce62
xor eax, eax
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x1401cce7d
sub dword [rbx + 0x14], 1
jne 0x1401cce7d
mov rcx, rbx
call fcn.1401e7470
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsi + 0x2f8]
mov r9, qword [rsp + 0x58]
mov qword [r13 + 0x58], rax
mov rax, qword [rsi + 0x300]
mov qword [r13 + 0x60], rax
jmp 0x1401ccea7
mov r12, rcx
test r15d, r15d
jne 0x1401cb9b3
cmp word [r12 + 2], 0
je 0x1401cabdc
mov eax, dword [r12 + 0xc]
cmp dword [rbp - 0x48], eax
jne 0x1401ccedc
mov rax, qword [rsp + 0x40]
mov rcx, qword [r14 + 0x18]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
je 0x1401cabd7
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x1401ccef0
mov rcx, rsi
call fcn.140186b70
mov edx, 0x1c
mov rcx, rsi
call fcn.140186d00
test rax, rax
je 0x1401ccf22
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x14028aeb0]
movsd qword [rax + 0x10], xmm0
mov ecx, dword [0x14028aeb8]
mov dword [rax + 0x18], ecx
mov qword [r13 + 0xa8], rax
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x48]
cmp dword [rcx], eax
je 0x1401ccf51
mov rcx, rsi
call fcn.1401baff0
mov eax, dword [r13 + 0xc8]
mov r15d, 0x11
and eax, 0xffffffed
or eax, 1
mov dword [r13 + 0xc8], eax
jmp 0x1401cb9b3
mov rcx, qword [rsi + 0x20]
lea r8, [rbp - 0x30]
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14017e6b0
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x1401ccfc5
call fcn.140162240
mov rcx, rax
movsxd rax, dword [rbp - 0x30]
mov qword [rcx], rax
jmp 0x1401ca2bd
movsxd rax, dword [rbp - 0x30]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x1401ca2bd
mov rax, qword [rsp + 0x40]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rsi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1401815c0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x1401cd0f1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movzx eax, word [rax + 2]
mov ecx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rax, r12
or dword [rsi + 0x2c], 1
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x1401cd0a1
nop dword [rax]
mov rbx, qword [rdi + 0x10]
cmp byte [rbx + 0x3f], 0
jne 0x1401cd099
mov rbx, qword [rbx + 0x48]
test rbx, rbx
je 0x1401cd099
xor r12d, r12d
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
mov rcx, rsi
call fcn.14010d6f0
mov qword [rbx + 0x30], r12
mov rcx, rsi
mov rdx, qword [rbx + 0x38]
call fcn.14010d6f0
mov qword [rbx + 0x38], r12
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x1401cd070
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1401cd050
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 4], 1
jne 0x1401cd0e3
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1401cd0db
nop dword [rax]
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x1401cd0c0
and dword [r13 + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x1401cae1f
jmp 0x1401ca2bd
cmp eax, 2
jne 0x1401cd0a6
mov rax, qword [rsp + 0x40]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
jmp 0x1401cd0a6
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x1401cd139
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
cmp dword [rdi + 0x44], eax
jne 0x1401cd139
mov rcx, qword [rdi + 0x30]
call fcn.14017d400
jmp 0x1401cd24f
mov rdi, qword [rsp + 0x78]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x1401d1d5f
mov rax, qword [rsp + 0x40]
mov edi, edx
mov r14, rdx
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [rsi + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x1401cd1a0
mov rcx, qword [rsp + 0x40]
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and esi, 8
mov rax, qword [rbp - 0x80]
or esi, 4
cmp cl, byte [rax + 0xc5]
jae 0x1401cd1a2
mov byte [rax + 0xc5], cl
jmp 0x1401cd1a2
mov esi, edx
mov rcx, qword [rsp + 0x40]
test byte [rcx + 2], 0x10
je 0x1401cd1c4
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.1401d4760
mov rcx, qword [rsp + 0x40]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf8
jne 0x1401cd1d7
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x1401cd1de
cmp al, 0xfd
jne 0x1401cd1de
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
xor r9d, r9d
mov rcx, qword [rbp - 0x80]
mov r8d, edi
call fcn.1400f1780
mov rdi, rax
test rax, rax
je 0x1401cbf14
mov byte [rax + 1], r12b
mov r9, r14
mov byte [rax + 2], 1
mov r8d, esi
or dword [rax + 8], 4
mov edx, r15d
mov dword [rax + 0x44], r15d
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.14017e020
mov rsi, qword [rsp + 0x68]
mov r15d, eax
mov r13, qword [rbp - 0x80]
mov qword [rdi + 0x38], r14
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 1], 0xf8
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax + 2]
mov rax, qword [rdi + 0x30]
and cl, 3
mov byte [rax + 3], cl
test r15d, r15d
jne 0x1401cb9ae
jmp 0x1401ca2b8
mov r15, qword [rsp + 0x40]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 8]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
movsx r8d, word [rbx + 0x48]
call fcn.1400f1780
mov r10, rax
test rax, rax
je 0x1401cbf22
mov byte [rax + 2], 1
mov r8d, 4
mov edx, dword [rax + 8]
or edx, 1
mov dword [rax + 8], edx
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
mov ecx, edx
movzx eax, byte [rbx + 4]
mov byte [r10 + 4], al
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14017e020
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401ca2b8
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x1401cd33c
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], edx
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x14028bcb8]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x1401cd392
test byte [rbx + 8], 8
jne 0x1401cd392
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x1401cd392
xor eax, eax
xor r8d, r8d
mov qword [rbx + 0x18], rax
mov dword [rbx + 0x20], eax
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
call fcn.14017d4c0
mov dword [rsp + 0x4c], eax
mov r15d, eax
mov dword [rbp - 0x70], eax
test eax, eax
jne 0x1401cb9b3
xor edx, edx
mov byte [rbx + 2], 1
jmp 0x1401ca1bd
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, r13
call fcn.1400f1780
mov rbx, rax
test rax, rax
je 0x1401cbf22
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r15 + 2]
mov r8, rsi
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [rsi]
call fcn.14017fac0
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
mov rcx, qword [rbx + 0x10]
cmp byte [rcx + 0x11], al
jne 0x1401cd425
cmp byte [rcx + 0x10], 2
jb 0x1401cd425
mov rax, qword [rcx]
mov edx, dword [rax + 0x2f0]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
cmp edx, dword [rcx + 0x80]
jle 0x1401cd41b
cmp byte [rcx + 0xa], r15b
je 0x1401cd41b
call fcn.140162a40
mov r12d, 1
jmp 0x1401cd436
xor eax, eax
mov r12d, 1
jmp 0x1401cd436
mov r12d, 1
xor r8d, r8d
mov edx, r12d
call fcn.1400f72c0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cd4d5
mov rax, qword [rsp + 0x40]
mov rsi, qword [rax + 0x10]
mov qword [rbx + 0x38], rsi
test rsi, rsi
je 0x1401cd4a3
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.14017dfb0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cd49d
mov rax, qword [rbx + 0x30]
mov r9, rsi
mov edx, dword [rbx + 0x44]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14017e020
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov byte [rbx + 4], 0
jmp 0x1401cd4d0
mov dword [rbx + 0x44], r12d
xor r9d, r9d
mov rax, qword [rbx + 0x30]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov edx, r12d
mov qword [rsp + 0x20], rax
call fcn.14017e020
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov byte [rbx + 4], 1
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x40]
xor edx, edx
mov ecx, edx
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r15d, r15d
jne 0x1401d1d6a
mov byte [rbx + 2], 1
jmp 0x1401ca1bd
mov r15, qword [rsp + 0x40]
mov r9b, 1
mov rcx, r13
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.1400f1780
test rax, rax
je 0x1401cbf22
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, rsi
mov edx, dword [r15 + 0xc]
call fcn.1401d6c80
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
xor edx, edx
test rcx, rcx
jne case.0x1401c9c88.89
jmp 0x1401cb6a3
mov rax, qword [rsp + 0x40]
mov r9b, 3
mov rcx, r13
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.1400f1780
test rax, rax
je 0x1401cbf22
mov rcx, qword [rsp + 0x40]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x1402d3924]
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1401cd5ec
mov rcx, r13
call fcn.1401d3100
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x40]
xor edx, edx
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], rdx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [r13 + 0x78]
mov r12d, edx
mov r15, qword [rsp + 0x40]
movsxd rcx, dword [r15 + 4]
mov rsi, qword [rax + rcx*8]
mov byte [rsi + 2], 0
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], edx
cmp byte [rsi + 4], 0
je 0x1401cd72c
movsxd rax, dword [r15 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
and al, 0x2e
cmp al, 2
jne 0x1401cd669
xor edx, edx
mov rcx, rdi
call fcn.1400f42c0
mov rcx, rdi
call fcn.1400c2210
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x1401cd6f8
test cl, 8
jne 0x1401cd6d6
test cl, 1
jne 0x1401d10c8
cmp ebx, 0x17
jae 0x1401d10c8
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x1401cd6b9
test byte [rcx + 1], 8
je 0x1401cd6b9
xor eax, eax
mov dword [rbp - 0x68], eax
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401cd886
lea rdx, [rbp - 0x68]
call fcn.1400f8550
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1c68
jmp 0x1401cd886
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.1401ad2b0
test eax, eax
jle 0x1401cd6ef
test bl, 1
jne 0x1401cd6f8
dec ebx
jmp 0x1401cd6f8
jns 0x1401cd6f8
test bl, 1
je 0x1401cd6f8
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp - 0x68]
xor r8d, r8d
mov rdx, r15
call fcn.140180c90
mov qword [rsi + 0x50], r15
mov r15d, eax
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401d1c68
mov esi, 1
jmp 0x1401cd7bd
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov ecx, dword [r15 + 0x10]
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x1d8]
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp + 0x1d8], rax
mov esi, 1
mov word [rbp + 0x1f4], cx
lea eax, [rbx - 1]
setne r12b
mov ecx, 0xffffffff
test al, 1
mov eax, esi
cmovne eax, ecx
mov byte [rbp + 0x1f6], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x1fa], 0
add rcx, r11
mov qword [rbp + 0x1e0], rcx
mov rcx, qword [rdi]
call fcn.14017e7a0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1c68
test r14b, r14b
je 0x1401cd7bd
cmp byte [rbp + 0x1fa], al
je 0x1401cd886
mov eax, dword [rbp - 0x68]
cmp ebx, 0x17
jl 0x1401cd86a
test eax, eax
js 0x1401cd7de
jne 0x1401cd7d4
cmp ebx, 0x18
je 0x1401cd7de
xor edx, edx
mov dword [rbp - 0x68], edx
jmp 0x1401cd8e8
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x68], ebx
mov word [rcx + 0x46], bx
and byte [rcx + 1], 0xf9
cmp byte [rcx], bl
je 0x1401cd7f9
call fcn.1400f87f0
jmp 0x1401cd837
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x1401cd81f
mov word [rcx + 0x56], r8w
call fcn.1400f87f0
jmp 0x1401cd837
cmp byte [rdx + 8], bl
je 0x1401cd832
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x1401cd8e8
call fcn.14015d6d0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1401cd8e6
cmp eax, 0x65
jne 0x1401d2307
mov r12, qword [rsp + 0x40]
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov dword [rbp - 0x68], esi
mov r9, qword [rsp + 0x58]
jmp 0x1401cb6a3
test eax, eax
jg 0x1401cd893
jne 0x1401cd875
cmp ebx, 0x15
je 0x1401cd893
mov rax, qword [rdi]
xor r10d, r10d
mov ecx, r10d
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x68], ecx
xor edx, edx
cmp dword [rbp - 0x68], edx
jne 0x1401d083c
jmp 0x1401cd8e8
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x68], ebx
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], bx
cmp byte [rcx], bl
jne 0x1401cd8ce
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x1401cd8ce
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], bl
je 0x1401cd8ce
dec dx
mov word [rcx + 0x56], dx
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x1401cd8e8
call fcn.1400f9060
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1401cd8e6
cmp eax, 0x65
jmp 0x1401cd849
xor edx, edx
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
test r12d, r12d
je 0x1401ce618
add qword [rsp + 0x40], 0x18
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c7
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x30]
cmp byte [rax], 0
jne case.0x1401c9c88.89
mov rax, qword [rdi + 0x38]
mov rcx, r12
mov qword [rbp + 0x238], rax
mov byte [rbp + 0x256], 0
movzx eax, word [rcx + 0x28]
mov esi, dword [rcx + 4]
mov word [rbp + 0x254], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x240], rcx
nop dword [rax]
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.14014de00
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x1401d1d8a
mov rax, qword [rsp + 0x68]
xor r9d, r9d
mov word [rbp + 0xdc], r9w
mov qword [rbp + 0xe0], rax
mov dword [rbp + 0xe8], r9d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x1401cd9cf
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xd0], rax
cmp ecx, edx
ja 0x1401cd9f2
mov edx, 0x4010
mov dword [rbp + 0xd8], ecx
mov word [rbp + 0xdc], dx
jmp 0x1401cda1e
mov r8d, ecx
lea r9, [rbp + 0xc8]
mov rcx, rbx
xor edx, edx
call fcn.1401d4470
mov r15d, eax
test eax, eax
jne 0x1401d1d78
mov ecx, dword [rbp + 0xd8]
mov rax, qword [rbp + 0xd0]
xor r9d, r9d
lea r8, [rbp + 0x238]
mov rdx, rax
call fcn.1401d5980
cmp dword [rbp + 0xe8], 0
mov ebx, eax
je 0x1401cda47
lea rcx, [rbp + 0xc8]
call fcn.1401eb4a0
xor edx, edx
mov dword [rsp + 0x4c], edx
mov r15d, edx
test ebx, ebx
jle 0x1401cda5e
cmp word [r12 + 2], dx
je 0x1401cdad6
test ebx, ebx
jns 0x1401cdaf2
test esi, esi
jle 0x1401cdae4
mov dword [rdi + 0x20], edx
dec esi
mov rcx, qword [rdi + 0x30]
mov word [rcx + 0x46], dx
and byte [rcx + 1], 0xf9
cmp byte [rcx], dl
je 0x1401cda84
call fcn.1400f87f0
jmp 0x1401cdab9
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x1401cdaaa
mov word [rcx + 0x56], r8w
call fcn.1400f87f0
jmp 0x1401cdab9
cmp byte [rdx + 8], r15b
jne 0x1401cd970
call fcn.14015d6d0
mov r15d, eax
test eax, eax
je 0x1401cd970
cmp eax, 0x65
jne 0x1401d1d78
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov r9, qword [rsp + 0x58]
add r12, 0x18
jmp 0x1401cb6a3
mov dword [rsp + 0x4c], edx
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c2
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x4c], edx
jmp 0x1401cb6a3
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x40]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x1401cdb3a
mov word [rdx + 0xc], ax
mov r12, qword [rsp + 0x40]
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
cmp ecx, eax
jle 0x1401cabec
mov word [rdx + 0xc], ax
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x1401c9c88.9
cmp byte [rdx + 2], 0
je 0x1401cdb25
jmp case.0x1401c9c88.9
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r12 + 0x10]
jge case.0x1401c9c88.89
mov rax, qword [r13 + 0x78]
mov r15, qword [rsp + 0x40]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0xa8], rcx
movzx eax, word [r15 + 0x10]
mov word [rbp + 0xbc], ax
test ax, ax
je 0x1401cdc13
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0xa0], rax
lea rdx, [rbp + 0xa0]
mov byte [rbp + 0xbe], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.14017e7a0
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401cdc8a
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x1401cdc2b
call fcn.1401d4340
test eax, eax
jne 0x1401cbf22
mov rcx, qword [rbx + 0x38]
call fcn.1401c8fd0
mov rdi, rax
test rax, rax
je 0x1401cbf1d
mov rdx, qword [rbp + 0xa8]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.1401d6380
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.14017e7a0
mov rcx, qword [rsp + 0x68]
mov rdx, rdi
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140186b70
mov rdi, qword [rsp + 0x78]
test r15d, r15d
jne 0x1401ccac1
mov ecx, dword [rsi]
test ecx, ecx
setne al
xor edx, edx
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x40]
mov byte [rbx + 3], r15b
mov dword [rbx + 0x20], edx
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x1401cdcbf
test ecx, ecx
je 0x1401d083c
jmp 0x1401ca1b8
test ecx, ecx
jne 0x1401d083c
cmp al, 0x1b
jne 0x1401cdd0f
mov rcx, rdx
movzx edx, word [rbp + 0xbc]
test rdx, rdx
je 0x1401ce5e1
mov rax, qword [rbp + 0xa8]
add rax, 0x14
nop dword [rax]
test byte [rax], 1
jne 0x1401d10b9
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x1401cdcf0
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
mov rsi, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
cmp byte [rsi], 0x1a
jne 0x1401ce60b
movzx eax, word [rsi + 0x10]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov word [rbx + 0xc], ax
jmp 0x1401ca1c7
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x1401c9c88.31
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x200], xmm0
movups xmm2, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x210], xmm2
movups xmm0, xmmword [rcx + 0x20]
movq rax, xmm2
movups xmmword [rbp + 0x220], xmm0
shr rax, 0x20
movsd xmm1, qword [rcx + 0x30]
movsd qword [rbp + 0x230], xmm1
test al, 4
jne 0x1401cddb7
test al, 0x28
jne 0x1401cdda9
test al, 2
je 0x1401cddb7
mov edx, 1
lea rcx, [rbp + 0x200]
call fcn.1400f42c0
mov r9, qword [rsp + 0x58]
jmp 0x1401cddb5
lea rcx, [rbp + 0x200]
call fcn.1401d38d0
xor edx, edx
test byte [rbp + 0x214], 4
je 0x1401d1a4a
mov rdi, qword [rbp + 0x200]
jmp 0x1401cddde
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x40]
lea r9, [rbp - 0x70]
mov dword [rbp - 0x70], edx
xor r8d, r8d
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.140180c90
mov qword [rbx + 0x50], rdi
xor edx, edx
mov byte [rbx + 2], 0
mov r15d, eax
mov dword [rbx + 0x20], edx
mov dword [rsp + 0x4c], eax
mov eax, dword [rbp - 0x70]
mov byte [rbx + 3], dl
mov dword [rbx + 0x24], eax
test eax, eax
je 0x1401cde40
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], edx
je 0x1401d1dce
mov r9, qword [rsp + 0x58]
jmp 0x1401cb6a3
test r15d, r15d
jne 0x1401cb9ae
jmp 0x1401ca1bd
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1401cde7c
mov rcx, rdx
call fcn.140162240
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x1401cde82
mov word [rdx + 0x14], 4
mov rax, qword [r13 + 0x78]
mov r12, rbx
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, rbx
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x1401cabe2
mov rsi, qword [rsp + 0x40]
mov rbx, rdx
mov qword [rbp - 0x70], rdx
mov edi, edx
mov dword [rbp - 0x78], edx
movsxd rax, dword [rsi + 8]
imul r14, rax, 0x38
mov eax, 0x9000
add r14, qword [r13 + 0x68]
test word [r14 + 0x14], ax
je 0x1401cdee8
mov rcx, r14
call fcn.140162240
mov r14, rax
xor edx, edx
jmp 0x1401cdeef
mov word [r14 + 0x14], 4
movsxd rcx, dword [rsi + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x1401cdf43
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x1401cdf19
test byte [rcx + 1], 8
je 0x1401cdf19
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x1401cdf34
lea rdx, [rbp - 0x78]
call fcn.1400f8550
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1c68
mov edi, dword [rbp - 0x78]
test edi, edi
je 0x1401cdf8d
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x70], rax
movabs r12, 0x7fffffffffffffff
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 0xc]
test eax, eax
je 0x1401cdfef
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x1401cdfbf
mov rax, qword [rcx + 8]
test rax, rax
je 0x1401cdf7f
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1401cdf73
movsxd rax, dword [rdx + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x1401cdfc8
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.14014de00
mov rbx, qword [rbx + 0x30]
movabs r12, 0x7fffffffffffffff
mov qword [rbp - 0x70], rbx
cmp rbx, r12
jl 0x1401cdfb6
or dword [rsi + 8], 2
jmp 0x1401cdf4d
inc rbx
mov qword [rbp - 0x70], rbx
jmp 0x1401cdf4d
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.1401d4760
mov rax, qword [rdi]
cmp rax, r12
je 0x1401ce054
test byte [rsi + 8], 2
jne 0x1401ce054
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x70], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x1401ce064
xor eax, eax
mov edi, eax
nop dword [rax]
lea rdx, [rbp - 0x70]
mov ecx, 8
call fcn.1400ea9a0
mov rbx, qword [rbp - 0x70]
lea r9, [rbp - 0x78]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
and rbx, rax
xor r8d, r8d
inc rbx
mov rdx, rbx
mov qword [rbp - 0x70], rbx
call fcn.140180c90
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1c68
cmp dword [rbp - 0x78], eax
jne 0x1401ce064
inc edi
cmp edi, 0x64
jl 0x1401ce000
mov rsi, qword [rsp + 0x68]
mov r15d, 0xd
jmp 0x1401cb9ae
mov byte [rsi + 3], 0
xor edx, edx
mov dword [rsi + 0x20], edx
mov qword [r14], rbx
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca1c7
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
mov qword [rbp + 0x140], rax
cmp byte [r15 + 1], 0xfb
jne 0x1401ce0e4
cmp qword [rsi + 0x140], 0
je 0x1401ce0e4
movsx rcx, byte [rbx + 1]
mov rax, qword [rsi + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
xor r8d, r8d
mov rsi, qword [rcx + rax]
jmp 0x1401ce0ed
xor r8d, r8d
mov edi, r8d
mov esi, r8d
test byte [r15 + 2], 1
je 0x1401ce10f
inc qword [r13 + 0x38]
test byte [r15 + 2], 0x20
je 0x1401ce10f
mov rcx, qword [rsp + 0x68]
mov rax, qword [rbp + 0x140]
mov qword [rcx + 0x38], rax
mov rax, qword [rdx + 8]
mov qword [rbp + 0x148], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x15c], eax
test byte [r15 + 2], 0x10
je 0x1401ce130
mov r9d, dword [rbx + 0x24]
jmp 0x1401ce133
mov r9d, r8d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x1401ce148
mov eax, dword [rdx]
mov dword [rbp + 0x160], eax
jmp 0x1401ce14f
mov dword [rbp + 0x160], r8d
mov qword [rbp + 0x138], r8
lea rdx, [rbp + 0x138]
movzx r8d, word [r15 + 2]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.14017ed80
inc dword [rbp - 0x54]
xor edx, edx
mov byte [rbx + 3], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov dword [rbx + 0x20], edx
test eax, eax
jne 0x1401d1c68
test rdi, rdi
je 0x1401ce5f7
mov rax, qword [rsp + 0x40]
mov r8, rsi
mov rsi, qword [rsp + 0x68]
mov edx, 0x12
mov r9, qword [rdi]
test byte [rax + 2], 4
mov eax, 0x17
mov rcx, qword [rsi + 0x138]
cmovne edx, eax
mov rax, qword [rbp + 0x140]
mov qword [rsp + 0x20], rax
call qword [rsi + 0x140]
jmp 0x1401ca2b8
mov r15, qword [rsp + 0x40]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r15 + 0xc]
test eax, eax
je 0x1401ce202
imul rcx, rax, 0x38
xor ebx, ebx
mov r8, qword [rcx + r11]
jmp 0x1401ce207
xor ebx, ebx
mov r8d, ebx
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.140180f10
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d1fc3
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
cmp byte [rdx + 1], 0xfb
mov r15d, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
jne 0x1401ce28e
cmp qword [rsi + 0x140], 0
je 0x1401ce28e
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [rdx + 0x10]
shl rcx, 5
test byte [rdx + 2], 2
mov r14, qword [rcx + rax]
je 0x1401ce295
cmp byte [rdi + 4], 0
je 0x1401ce295
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.14014de00
mov rax, qword [rbx + 0x30]
mov rdx, qword [rsp + 0x40]
mov qword [rdi + 0x50], rax
jmp 0x1401ce295
xor eax, eax
mov r14d, eax
mov esi, eax
movzx edx, byte [rdx + 2]
mov rcx, qword [rdi + 0x30]
call fcn.14017e0b0
inc dword [rbp - 0x54]
xor edx, edx
mov dword [rdi + 0x20], edx
mov dword [rdi + 0x24], edx
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401d22ba
test r15b, 1
je 0x1401ce5b3
inc qword [r13 + 0x38]
mov rax, qword [rsp + 0x68]
mov r10, qword [rax + 0x140]
test r10, r10
je 0x1401ce5b3
test rsi, rsi
je 0x1401ce5b3
test byte [rsi + 0x30], 0x80
jne 0x1401ce5b3
mov r9, qword [rsi]
mov r8, r14
mov rax, qword [rdi + 0x50]
mov edx, 9
mov rsi, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsi + 0x138]
call r10
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
mov qword [r13 + 0x38], rdx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
mov ebx, dword [rbx + 0x10]
imul r15, rax, 0x38
mov rdi, qword [rdx + 0x30]
mov rsi, qword [rdx + 0x38]
add r15, r11
mov r14, qword [rdi + 0x30]
test r14, r14
jne 0x1401ce394
mov rcx, rsi
call fcn.1401c8fd0
mov qword [rdi + 0x30], rax
mov r14, rax
test rax, rax
je 0x1401ce4b2
mov word [rax + 0x1c], bx
cmp byte [rdi + 0x58], 0
je 0x1401ce3d0
cmp byte [rdi + 0x59], 0
je 0x1401ce3ae
mov rax, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x1401ce3d8
mov rdx, qword [rdi + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x1401ce3d8
mov rdx, qword [rdi + 0x38]
lea r8, [rdx + 0x10]
mov edx, dword [rdx]
mov r9, r14
mov rcx, rsi
call fcn.1401d6380
xor edx, edx
mov ecx, edx
test ebx, ebx
jle 0x1401ce408
mov rax, qword [r14 + 8]
add rax, 0x14
test byte [rax], 1
jne 0x1401d0835
inc ecx
add rax, 0x38
cmp ecx, ebx
jl 0x1401ce3f5
mov rdx, qword [r15 + 8]
xor r9d, r9d
mov ecx, dword [r15 + 0x10]
mov r8, r14
call fcn.1401d5980
xor edx, edx
mov dword [rsp + 0x4c], edx
mov r15d, edx
test eax, eax
jne 0x1401d083c
mov dword [rsp + 0x4c], edx
jmp 0x1401ce070
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rbx, r11
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
cmp byte [rax + 0x58], 0
je 0x1401ce491
cmp byte [rax + 0x59], 0
je 0x1401ce46f
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
lea rdi, [rax + 0x14]
jmp 0x1401ce499
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
lea rdi, [rax + 0x14]
jmp 0x1401ce499
mov rdi, qword [rax + 0x38]
lea rsi, [rdi + 0x10]
movsxd rdi, dword [rdi]
cmp dword [rbx + 0x20], edi
jge 0x1401ce4c2
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.1401d45e0
test eax, eax
je 0x1401ce4cf
mov rsi, qword [rsp + 0x68]
mov r15d, 7
jmp 0x1401cb9ae
mov rax, qword [rbx + 0x28]
mov qword [rbx + 8], rax
and word [rbx + 0x14], 0x2d
mov dword [rbx + 0x10], edi
mov ecx, 0xf250
movzx eax, word [rbx + 0x14]
mov r8, rdi
and ax, cx
mov rdx, rsi
or ax, 0x10
mov word [rbx + 0x14], ax
mov rcx, qword [rbx + 8]
call fcn.140067c10
mov rax, qword [rsp + 0x40]
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edx
jmp 0x1401ca1b8
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x1401ce540
mov rcx, rbx
call fcn.140162240
mov rbx, rax
jmp 0x1401ce546
mov word [rbx + 0x14], 4
movsxd rcx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.14014de00
mov edx, dword [rdi + 0x40]
cmp edx, dword [rsi + 0x88]
ja 0x1401d1e14
mov r8, rbx
mov rcx, rdi
call fcn.1401d4580
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 0xc], eax
jne 0x1401ce5e6
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x1401ce5e6
mov rcx, rbx
call fcn.1401d47f0
test eax, eax
jne 0x1401cbf1d
jmp 0x1401ca2bd
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c7
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
xor edx, edx
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c7
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c7
mov r12, rsi
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c7
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca1c7
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x1401ce657
mov rcx, rdi
call fcn.140162240
mov r9, qword [rsp + 0x58]
mov rdi, rax
xor edx, edx
jmp 0x1401ce65d
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x1401ce692
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov word [rdi + 0x14], 1
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
cmp byte [rbx + 3], 0
je 0x1401ce6a8
mov rax, qword [rbx + 0x50]
mov qword [rbp - 0x20], rax
mov qword [rdi], rax
jmp 0x1401ca2b8
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x30]
jne 0x1401ce6e5
mov rbx, qword [rcx]
lea rdx, [rbp - 0x20]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.1401d7fe0
test r15d, r15d
jne 0x1401cb9ae
mov rax, qword [rbp - 0x20]
mov qword [rdi], rax
jmp 0x1401ca2b8
cmp byte [rcx], 0
je 0x1401ce705
mov rcx, rbx
call fcn.1401d3660
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
xor edx, edx
jmp 0x1401ce70c
mov r15d, edx
mov dword [rsp + 0x4c], edx
cmp byte [rbx + 2], 0
je 0x1401ce71d
mov word [rdi + 0x14], 1
jmp 0x1401ca1bd
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.14014de00
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x20], rax
mov qword [rdi], rax
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x1401ce783
mov r9b, 3
mov r8d, 1
mov rcx, r13
call fcn.1400f1780
test rax, rax
je 0x1401cbf22
xor edx, edx
lea rcx, [0x1402d3924]
mov dword [rax + 0x24], edx
mov byte [rax + 4], 1
or dword [rax + 8], 8
mov qword [rax + 0x30], rcx
jmp 0x1401ce785
xor edx, edx
mov byte [rax + 2], 1
mov dword [rax + 0x20], edx
cmp byte [rax], 0
jne 0x1401ca1bd
mov rcx, qword [rax + 0x30]
call fcn.14017d400
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov dword [rbp - 0x70], edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov eax, edx
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x1401ce830
mov dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], 0
je 0x1401d0e2f
lea rdx, [rbp - 0x70]
call fcn.1400f8550
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rbp - 0x70]
xor edx, edx
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
test r15d, r15d
jne 0x1401cb9ae
mov r9, qword [rsp + 0x58]
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 0
jle 0x1401ca1c2
test eax, eax
jne 0x1401cd860
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
cmp byte [rcx], 0
jne 0x1401ce7d2
test byte [rcx + 1], 8
je 0x1401ce7d2
mov byte [rdi + 2], dl
mov r15d, edx
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
mov dword [rsp + 0x4c], edx
jmp 0x1401ce7ff
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.14015dae0
mov r15d, eax
test eax, eax
jne 0x1401ce884
xor eax, eax
mov rcx, rbx
mov r12d, eax
call fcn.14015d6d0
mov r15d, eax
jmp 0x1401ce89f
cmp eax, 0x10
jne 0x1401ce89b
xor eax, eax
mov rcx, 0xffffffffffffffff
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401ce8d4
mov r12d, dword [rbp - 0x44]
test r15d, r15d
jne 0x1401cb9b3
mov dword [rsp + 0x4c], r15d
test r12d, r12d
je 0x1401ce8bb
mov rcx, 0xffffffffffffffff
jmp 0x1401ce8d4
mov rcx, rbx
call fcn.140180620
mov rcx, rax
call fcn.1401aebd0
movsx rcx, ax
mov dword [rsp + 0x4c], r15d
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
cmp rcx, rax
jl 0x1401ce8fc
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0x10]
cmp rcx, rax
jg 0x1401ce8fc
mov dword [rbp - 0x44], 1
jmp 0x1401cb697
xor edx, edx
mov dword [rsp + 0x4c], r15d
mov dword [rbp - 0x44], edx
jmp 0x1401ca1bd
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x40]
mov r15d, 1
mov edi, r15d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi + 0x30]
cmp byte [rsi], dil
jne 0x1401ce98b
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x4c], edx
jne 0x1401ce95f
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x1401ce95b
xor eax, eax
lea rcx, [rbx + 0x60]
mov edi, eax
call fcn.1401edf60
mov dword [rsp + 0x4c], eax
xor edx, edx
jmp 0x1401ce9b4
mov rcx, rbx
call fcn.1401ecf90
mov edx, eax
mov rcx, rbx
call fcn.1401ed100
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401ce95b
mov rcx, rbx
call fcn.1401edc90
xor edx, edx
mov dword [rsp + 0x4c], eax
mov edi, edx
jmp 0x1401ce9b4
mov rcx, rbx
call fcn.14015dae0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401ce9e8
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.14015d6d0
mov dword [rsp + 0x4c], eax
xor edx, edx
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], edx
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x1401d1c68
mov r12, qword [rsp + 0x40]
mov byte [rsi + 2], dil
cmp dword [r12 + 8], r15d
jle 0x1401cdae8
test edi, edi
je 0x1401cdae8
mov r9, qword [rsp + 0x58]
jmp 0x1401cb6a3
cmp eax, 0x10
jne 0x1401ce9ab
xor edx, edx
mov dword [rsp + 0x4c], edx
jmp 0x1401ce9ad
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rdi, qword [rsi + 0x30]
mov qword [rbp - 0x60], rdi
cmp byte [rdi + 0x58], 0
je 0x1401cea8b
cmp byte [rdi + 0x59], 0
je 0x1401cea56
mov rcx, qword [rdi + 0x10]
call fcn.1401ec1c0
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401cead9
mov rax, qword [rdi + 0x10]
cmp qword [rax + 0x18], 0
jne 0x1401cead9
mov rbx, qword [rsp + 0x40]
mov ecx, 0x65
mov rdi, qword [rsp + 0x78]
mov dword [rsp + 0x4c], ecx
jmp 0x1401ceb94
mov rcx, qword [rdi + 0x18]
mov dword [rbp - 0x70], edx
lea rdx, [rbp - 0x70]
call fcn.1401ebb60
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401cead9
cmp dword [rbp - 0x70], eax
je 0x1401cead9
mov rbx, qword [rsp + 0x40]
mov ecx, 0x65
mov rdi, qword [rsp + 0x78]
mov dword [rsp + 0x4c], ecx
jmp 0x1401ceb94
mov rdx, qword [rdi + 0x38]
xor r14d, r14d
mov rax, qword [rdx + 8]
mov qword [rdi + 0x38], rax
mov qword [rdx + 8], r14
cmp qword [rdi + 0x40], r14
jne 0x1401ceac8
mov rdi, qword [rsp + 0x68]
nop dword [rax]
mov rbx, qword [rdx + 8]
mov rcx, rdi
call fcn.140186b70
mov rdx, rbx
test rbx, rbx
jne 0x1401ceab0
mov rdi, qword [rbp - 0x60]
cmp qword [rdi + 0x38], r14
mov ecx, 0x65
cmovne ecx, r14d
mov dword [rsp + 0x4c], ecx
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp 0x1401ceb94
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x40]
movsxd rcx, dword [rbx + 4]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], dx
cmp byte [rcx], 0
jne 0x1401ceb2b
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x1401ceb2b
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x1401ceb2b
dec dx
mov word [rcx + 0x56], dx
xor eax, eax
jmp 0x1401ceb90
call fcn.1400f9060
jmp 0x1401ceb90
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x40]
movsxd rcx, dword [rbx + 4]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
mov word [rcx + 0x46], dx
and byte [rcx + 1], 0xf9
cmp byte [rcx], 0
je 0x1401ceb5b
call fcn.1400f87f0
jmp 0x1401ceb90
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x1401ceb81
mov word [rcx + 0x56], r8w
call fcn.1400f87f0
jmp 0x1401ceb90
cmp byte [rdx + 8], 0
je 0x1401ceb8b
xor eax, eax
jmp 0x1401ceb90
call fcn.14015d6d0
mov dword [rsp + 0x4c], eax
mov r15d, dword [rsp + 0x4c]
xor edx, edx
mov dword [rsi + 0x20], edx
test r15d, r15d
jne 0x1401cebb7
mov byte [rsi + 2], dl
movzx eax, word [rbx + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp 0x1401d12c1
cmp r15d, 0x65
jne 0x1401ccac1
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov byte [rsi + 2], 1
mov rsi, qword [rsp + 0x68]
mov eax, dword [rsi + 0x198]
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x1401d2296
mov r14, qword [rsp + 0x70]
cmp rdi, r14
jb 0x1401cf736
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rsi + 0x210]
test rdx, rdx
je 0x1401cf736
mov eax, dword [rsi + 0x220]
mov rcx, qword [rsi + 0x218]
add r14, rax
mov qword [rsp + 0x70], r14
call rdx
test eax, eax
jne 0x1401d2099
cmp rdi, r14
jae 0x1401cec00
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov r15, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r15 + 2], 1
je 0x1401cec6b
inc qword [r13 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x1401cec95
mov rcx, rbx
call fcn.1401d4340
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
mov r15, qword [rsp + 0x40]
xor edx, edx
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x2b8], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x2b0], rax
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x2c8], rcx
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x2d0], ax
movzx r8d, word [r15 + 2]
test r8b, 0x10
je 0x1401cecda
mov r9d, dword [rdi + 0x24]
jmp 0x1401cecdd
mov r9d, edx
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x2b0]
and r8d, 0x8a
call fcn.14017ed80
xor edx, edx
mov dword [rsp + 0x4c], eax
mov dword [rdi + 0x20], edx
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
jmp 0x1401ca1bd
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1401ced47
mov rcx, rbx
call fcn.1401d4340
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
mov rdx, rbx
mov rcx, rdi
call fcn.1401d7110
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
jmp 0x1401ca2b8
mov rax, qword [r13 + 0x78]
lea r8, [rbp - 0x2c]
mov r15, qword [rsp + 0x40]
lea rdx, [rbp + 0x260]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x260], rax
movzx eax, word [r15 + 0xc]
mov word [rbp + 0x27c], ax
mov byte [rbp + 0x27e], 0
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x268], rcx
mov rcx, rdi
call fcn.14017e7a0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
cmp dword [rbp - 0x2c], eax
jne 0x1401cedfd
mov dl, 4
mov rcx, rdi
call fcn.14017e0b0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9ae
mov r12, qword [rsp + 0x40]
xor edx, edx
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], edx
jmp 0x1401ca1c2
mov r12, qword [rsp + 0x40]
cmp word [r12 + 2], 0
je 0x1401cee1d
mov eax, dword [rsi + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x1401d1e3f
xor edx, edx
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], edx
jmp 0x1401ca1c2
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1401cee64
mov rcx, rbx
call fcn.1401d3660
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
mov r9, qword [rsp + 0x58]
xor edx, edx
jmp 0x1401cee6b
mov r15d, edx
mov dword [rsp + 0x4c], edx
cmp byte [rbx + 2], 0
jne 0x1401cef16
mov qword [rbp - 0x60], rdx
lea r8, [rbp - 0x60]
mov rdx, qword [rbx + 0x30]
mov rcx, rsi
call fcn.1401d36c0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x8d
jne 0x1401ceed9
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x60]
mov byte [rdx + 2], r15b
mov qword [rdx + 0x50], rax
xor eax, eax
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x1401ca2b8
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x1401cef04
call fcn.140162240
mov rcx, rax
mov rax, qword [rbp - 0x60]
mov qword [rcx], rax
jmp 0x1401ca2b8
mov rax, qword [rbp - 0x60]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x1401cef40
call fcn.1401eb4f0
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rcx + 0x14], 1
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x1401ca206
call fcn.1401d2f90
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov r15, qword [rsp + 0x40]
cmp bl, 0x2a
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x288], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x2a4], ax
sbb al, al
mov byte [rbp + 0x2a6], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x290], rcx
mov rcx, rbx
call fcn.14014de00
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x1401d1e7a
mov qword [rbp + 0x118], rsi
xor r9d, r9d
mov word [rbp + 0x114], r9w
mov dword [rbp + 0x120], r9d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x1401cf031
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0x108], rax
cmp ecx, edx
ja 0x1401cf05c
mov edx, 0x4010
mov dword [rbp + 0x110], ecx
mov word [rbp + 0x114], dx
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x1401cf08c
mov r8d, ecx
lea r9, [rbp + 0x100]
mov rcx, rbx
xor edx, edx
call fcn.1401d4470
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
mov ecx, dword [rbp + 0x110]
mov rax, qword [rbp + 0x108]
xor r9d, r9d
lea r8, [rbp + 0x288]
mov rdx, rax
call fcn.1401d5980
cmp dword [rbp + 0x120], 0
mov ebx, eax
je 0x1401cf0b5
lea rcx, [rbp + 0x100]
call fcn.1401eb4a0
mov r12, qword [rsp + 0x40]
test byte [r12], 1
jne 0x1401cf0c5
neg ebx
jmp 0x1401cf0c7
inc ebx
test ebx, ebx
jg 0x1401d10be
jmp 0x1401ca2bd
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x1401cf0fd
mov rcx, rdi
call fcn.140162240
mov rdi, rax
xor edx, edx
mov word [rdi + 0x14], 1
mov eax, dword [rsi + 0xe8]
inc eax
cmp dword [rsi + 0xdc], eax
jg 0x1401d1e8c
mov rax, qword [rsp + 0x68]
movsxd r14, dword [r15 + 0xc]
mov esi, dword [r15 + 4]
mov rcx, r14
shl rcx, 5
mov rax, qword [rax + 0x20]
mov dword [rbp - 0x70], edx
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x1401cf14e
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401cf14e
mov rcx, rbx
call fcn.1400f8620
lea r8, [rbp - 0x70]
mov edx, esi
mov rcx, rbx
call fcn.1400f7d80
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x1401cf177
sub dword [rbx + 0x14], 1
jne 0x1401cf177
mov rcx, rbx
call fcn.1401e7470
movsxd rdx, dword [rbp - 0x70]
mov word [rdi + 0x14], 4
mov qword [rdi], rdx
test r15d, r15d
jne 0x1401d1c68
mov rsi, qword [rsp + 0x68]
test edx, edx
je 0x1401cf736
mov rax, qword [rsp + 0x40]
mov r9, r14
shl r9, 5
add r9, qword [rsi + 0x20]
mov r8d, dword [rax + 4]
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1401cf1d5
nop dword [rax + rax]
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], edx
jne 0x1401cf1cd
mov dword [rax + 0x28], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1401cf1c0
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x1401cf1f7
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x1401cf1ef
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1401cf1e2
mov r12, qword [rsp + 0x40]
inc r14b
mov byte [rbp - 0x58], r14b
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov r15, qword [rsp + 0x40]
lea r8, [rbp - 0x18]
mov qword [rbp - 0x18], rdx
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14017d4c0
mov r12, qword [rsp + 0x40]
mov r15d, eax
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x4c], eax
cmp dword [r12 + 0xc], 0
je 0x1401cf26d
mov rax, qword [rbp - 0x18]
add qword [r13 + 0x38], rax
mov rax, r12
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x1401cf26d
imul rcx, rax, 0x38
mov rax, qword [rbp - 0x18]
add qword [rcx + r11], rax
test r15d, r15d
jne 0x1401cb9b3
jmp 0x1401ca2c2
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1401cf2a2
mov rdx, qword [rcx + 0x30]
mov rcx, rsi
call fcn.1401d6e80
jmp 0x1401ca2b8
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14017d4c0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x1401cf2f4
mov rcx, rdi
call fcn.140162240
mov rdi, rax
xor edx, edx
jmp 0x1401cf2fa
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsp + 0x68]
mov esi, dword [rbx + 0xc]
shl rcx, 5
mov dword [rbp - 0x70], edx
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x1401cf32d
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401cf32d
mov rcx, rbx
call fcn.1400f8620
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.1400f7880
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x1401cf357
sub dword [rbx + 0x14], 1
jne 0x1401cf357
mov rcx, rbx
call fcn.1401e7470
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x1401cb9ae
mov eax, dword [rbp - 0x70]
mov qword [rdi], rax
jmp 0x1401ca2b8
inc byte [rsi + 0x70]
mov rcx, qword [rsp + 0x40]
mov rbx, qword [rsi + 0x200]
movzx edi, byte [rsi + 0x6e]
mov esi, dword [rsi + 0x2e8]
test byte [rcx + 4], 1
mov r14, qword [rsp + 0x68]
mov qword [rbp - 0x60], rdx
je 0x1401cf3a4
mov qword [r14 + 0x200], rdx
mov byte [r14 + 0x6e], 0
test byte [rcx + 4], 2
je 0x1401cf3b4
mov eax, dword [rcx + 8]
mov dword [r14 + 0x2e8], eax
mov rdx, qword [rcx + 0x10]
lea rax, [rbp - 0x60]
mov rcx, r14
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
call fcn.1400e7870
dec byte [r14 + 0x70]
mov r15d, eax
mov qword [r14 + 0x200], rbx
mov rbx, qword [rbp - 0x60]
mov byte [r14 + 0x6e], dil
mov dword [rsp + 0x4c], eax
mov dword [r14 + 0x2e8], esi
test rbx, rbx
jne 0x1401d1e9f
test eax, eax
jne 0x1401d1e9f
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov r15, qword [rsp + 0x40]
cmp qword [r15 + 0x10], 0
movsxd rbx, dword [r15 + 4]
jne 0x1401cf46d
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1401bcd00
and dword [rsi + 0x2c], 0xffffffef
lea r8, [r13 + 0xa8]
movzx r9d, word [r15 + 2]
mov edx, ebx
mov rcx, rsi
call fcn.1401ab480
or dword [rsi + 0x2c], 1
mov r15d, eax
and dword [r13 + 0xc8], 0xfffffffc
mov dword [rsp + 0x4c], eax
jmp 0x1401cf55d
mov dword [rbp + 0x58], edx
lea rax, [r13 + 0xa8]
mov qword [rbp + 0x48], rax
lea r9, str.sqlite_master
mov qword [rbp + 0x40], rsi
mov rdx, rbx
mov dword [rbp + 0x50], ebx
mov rax, qword [rsi + 0x20]
shl rdx, 5
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov dword [rbp + 0x60], ecx
mov rcx, rsi
mov r8, qword [rsi + 0x20]
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.1401aee90
mov rbx, rax
mov rcx, rsi
test rax, rax
je 0x1401d1f39
xor eax, eax
mov byte [rsi + 0xc5], 1
lea r9, [rbp + 0x40]
mov dword [rbp + 0x54], eax
lea r8, [fcn.1401ab180]
mov dword [rbp + 0x5c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400e7870
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cf54b
mov r15d, dword [rbp + 0x54]
mov dword [rsp + 0x4c], r15d
test r15d, r15d
jne 0x1401cf54b
cmp dword [rbp + 0x5c], r15d
jne 0x1401cf54b
lea rax, [0x140294bd4]
mov r15d, 0xb
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x1873a
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1400cbad0
mov dword [rsp + 0x4c], r15d
mov rdx, rbx
mov rcx, rsi
call fcn.140186b70
mov byte [rsi + 0xc5], 0
test r15d, r15d
je 0x1401ca2b8
mov rcx, rsi
call fcn.1401baf50
jmp 0x1401d1f1b
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.14017a910
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [rsi + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.1401aa6a0
test rax, rax
je 0x1401cf5e0
cmp qword [rsi + 0x308], 0
jne 0x1401cf5d5
mov ecx, 0xffffffff
add dword [rax + 0x2c], ecx
jne 0x1401cf5e0
mov rdx, rax
mov rcx, rsi
call fcn.140102dd0
or dword [rsi + 0x2c], 1
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x40]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.1401aa6a0
mov r8, rax
test rax, rax
je 0x1401cf5e0
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, r8
jne 0x1401cf645
mov rcx, qword [r8 + 0x28]
mov rdx, r8
mov qword [rax + 0x10], rcx
mov rcx, rsi
call fcn.140193df0
or dword [rsi + 0x2c], 1
jmp 0x1401ca2b8
test rcx, rcx
je 0x1401cf67d
nop word [rax + rax]
lea rdx, [rcx + 0x28]
mov rcx, qword [rcx + 0x28]
cmp rcx, r8
je 0x1401cf676
test rcx, rcx
jne 0x1401cf650
mov rdx, r8
mov rcx, rsi
call fcn.140193df0
or dword [rsi + 0x2c], 1
jmp 0x1401ca2b8
mov rax, qword [r8 + 0x28]
mov qword [rdx], rax
mov rdx, r8
mov rcx, rsi
call fcn.140193df0
or dword [rsi + 0x2c], 1
jmp 0x1401ca2b8
mov rbx, qword [rsp + 0x40]
xor r8d, r8d
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rbx + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.1401aa6a0
mov rbx, rax
test rax, rax
je 0x1401ca2b8
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x1401cf722
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.140109cd0
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1401cf722
mov rax, qword [rdx + 0x58]
add rdx, 0x58
test rax, rax
je 0x1401cf722
mov rcx, rax
cmp rax, rbx
mov rax, qword [rcx + 0x40]
je 0x1401cf71f
lea rdx, [rcx + 0x40]
mov rcx, rax
test rax, rax
jne 0x1401cf6f6
mov rdx, rbx
mov rcx, rsi
call fcn.140188220
or dword [rsi + 0x2c], 1
jmp 0x1401ca2b8
mov qword [rdx], rax
mov rdx, rbx
mov rcx, rsi
call fcn.140188220
or dword [rsi + 0x2c], 1
jmp 0x1401ca2b8
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2b8
mov r15, qword [rsp + 0x40]
mov rdx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 4]
mov r8, qword [r15 + 0x10]
mov r10d, dword [r15 + 8]
add r8, 4
imul rdi, rax, 0x38
add rdi, r11
inc rax
imul rbx, rax, 0x38
movsxd rax, dword [r15 + 0xc]
mov ecx, dword [rdi]
add rbx, r11
imul r9, rax, 0x38
movzx eax, word [r15 + 2]
inc ecx
add r9, r11
shl rax, 5
lea r11, [rbp]
mov qword [rsp + 0x38], r11
lea r11, [rbp - 0x28]
mov qword [rsp + 0x30], r11
mov rdx, qword [rax + rdx + 8]
mov dword [rsp + 0x28], ecx
mov rcx, rsi
mov dword [rsp + 0x20], r10d
call fcn.14017f2e0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1401cf7c7
mov rcx, rbx
call fcn.1401eb4f0
jmp 0x1401cf7cd
mov word [rbx + 0x14], 1
mov eax, dword [rbp - 0x28]
test eax, eax
je 0x1401cf807
test r15d, r15d
jne 0x1401d1f43
mov rdx, qword [rbp]
dec eax
movsxd rcx, eax
mov r9b, 1
sub qword [rdi], rcx
lea rax, [fcn.1400ea860]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
call fcn.1401d4ad0
test byte [rbx + 0x14], 2
jne 0x1401cf816
mov byte [rbx + 0x16], r14b
jmp 0x1401cebd1
cmp byte [rbx + 0x16], r14b
je 0x1401cebd1
movzx edx, r14b
mov rcx, rbx
call fcn.1401d4ed0
jmp 0x1401cebd1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x1401cf862
mov rcx, rbx
call fcn.1401d49d0
test eax, eax
jne 0x1401cbf1d
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1401bbaa0
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
test byte [rdi + 0x14], 0x10
je 0x1401cf904
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x1401cf8ab
test al, 1
jne 0x1401cf8a6
mov rcx, qword [rbx + 0x10]
call fcn.14016fb70
mov qword [rbx + 0x10], rax
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1401cf904
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x1401cf8cc
mov rcx, rbx
call fcn.1401bb9d0
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsp + 0x60]
test word [rcx + 0x14], ax
je 0x1401cf8f6
mov rdx, rdi
call fcn.1401ec790
jmp 0x1401cebd1
mov qword [rcx], rdi
mov word [rcx + 0x14], 4
jmp 0x1401cebd1
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x1401cf91c
mov rcx, rdi
call fcn.1401eb4f0
jmp case.0x1401c9c88.9
mov word [rdi + 0x14], 1
jmp case.0x1401c9c88.9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x1401cf95b
mov rcx, rbx
call fcn.1401d49d0
test eax, eax
jne 0x1401d22b0
test esi, esi
je 0x1401cf977
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.1401bbb10
test eax, eax
jne 0x1401d10b9
test esi, esi
js 0x1401ca85c
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1401bbaa0
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r11
cmp word [rcx + 2], 0
je 0x1401cf9d3
mov rax, qword [r13 + 0x108]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x1401cf9d3
nop
cmp qword [rax + 0x30], rcx
je 0x1401d1a54
mov rax, qword [rax + 8]
test rax, rax
jne 0x1401cf9c0
mov eax, dword [rsi + 0xb0]
cmp dword [r13 + 0x118], eax
jge 0x1401d1f51
test byte [r15 + 0x14], 0x10
jne 0x1401cfb23
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
add eax, 7
jns 0x1401cfa1a
add eax, 7
sar eax, 3
lea r14d, [rax + rcx*8]
mov rcx, qword [rsp + 0x68]
movsxd rsi, r14d
mov rdx, rsi
call fcn.140186d00
mov rbx, rax
test rax, rax
je 0x1401d22b0
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.140067b50
mov eax, 0x9000
test word [r15 + 0x14], ax
jne 0x1401cfa5d
cmp dword [r15 + 0x20], 0
je 0x1401cfa65
mov rcx, r15
call fcn.1401eb4a0
mov rcx, qword [rsp + 0x40]
lea rax, [0x1401d3000]
sub rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
mov word [r15 + 0x14], 0x1010
mov qword [r15 + 8], rbx
mov dword [r15 + 0x10], r14d
mov qword [r15 + 0x30], rax
mov qword [rbx], r13
mov dword [rbx + 0x58], edi
mov eax, dword [r12 + 0x10]
mov dword [rbx + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x4c], edx
xor edx, edx
mov rax, qword [r13 + 0x68]
mov qword [rbx + 0x18], rax
mov eax, dword [r13 + 0x24]
mov dword [rbx + 0x54], eax
mov rax, qword [r13 + 0x78]
mov qword [rbx + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rbx + 0x48], eax
mov rax, qword [r13 + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [rbx + 0x50], eax
mov rax, qword [r12 + 0x20]
mov qword [rbx + 0x30], rax
movsxd rax, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x1401cfb27
nop
mov word [rax + 0x14], dx
mov qword [rax + 0x18], rsi
add rax, 0x38
cmp rax, rcx
jne 0x1401cfb10
jmp 0x1401cfb27
mov rbx, qword [r15 + 8]
inc dword [r13 + 0x118]
mov rax, qword [r13 + 0x108]
mov qword [rbx + 8], rax
mov rax, qword [rsi + 0x38]
mov qword [rbx + 0x38], rax
mov rax, qword [r13 + 0x38]
mov qword [rbx + 0x60], rax
mov rax, qword [r13]
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [r13 + 0x128]
mov qword [rbx + 0x40], rax
mov qword [r13 + 0x128], rdx
mov qword [r13 + 0x38], rdx
lea rdx, [rbx + 0x70]
mov qword [r13 + 0x108], rbx
mov qword [r13 + 0x68], rdx
movsxd rcx, dword [rbx + 0x58]
mov dword [r13 + 0x24], ecx
movzx eax, word [rbx + 0x5c]
mov dword [r13 + 0x28], eax
mov qword [rsp + 0x60], rdx
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rbx + 0x28], rcx
mov eax, dword [r12 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.140067b50
mov rcx, qword [r12]
mov r15d, dword [rsp + 0x4c]
mov qword [r13 + 0x88], rcx
mov eax, dword [r12 + 8]
mov qword [rsp + 0x58], rcx
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x40], rcx
mov dword [r13 + 0x90], eax
jmp 0x1401cebd1
mov rax, qword [rsp + 0x40]
mov edi, 0x9000
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x68]
test word [r9 + 0x14], di
je 0x1401cfc1b
mov rcx, r9
call fcn.140162240
mov r9, rax
jmp 0x1401cfc22
mov word [r9 + 0x14], 4
mov r8, qword [r13 + 0x108]
movsxd rax, dword [r8 + 0x4c]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rax, qword [rsp + 0x40]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x18]
test word [r9 + 0x14], di
je 0x1401cfc69
mov rdx, rcx
mov r8d, 0x4000
mov rcx, r9
call fcn.1401ea3d0
jmp 0x1401ca2b8
movups xmm0, xmmword [rcx]
mov r12, qword [rsp + 0x40]
mov eax, 0x2000
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 0x14], ax
jne 0x1401ca111
mov eax, 0xcfff
and word [r9 + 0x14], ax
mov eax, 0x4000
or word [r9 + 0x14], ax
mov r9, qword [rsp + 0x58]
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x40]
mov r12, rax
jae 0x1401cfced
movsxd rax, dword [rax + 8]
add qword [rsi + 0x300], rax
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x1401cfd0c
add qword [rsi + 0x2f8], rax
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
add qword [r13 + 0x50], rax
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
cmp dword [r12 + 4], 0
je 0x1401cfd50
cmp qword [rsi + 0x2f8], 0
jne case.0x1401c9c88.89
cmp qword [rsi + 0x300], 0
je 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
cmp qword [r13 + 0x50], 0
jne case.0x1401c9c88.89
cmp qword [rsi + 0x300], 0
je 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x1401cfdaf
mov rax, qword [rcx + 8]
test rax, rax
je 0x1401cfd9c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1401cfd90
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x1401cfdbf
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.1401d4760
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1401d4760
mov rax, qword [rbx]
cmp qword [rdi], rax
jge 0x1401ca2b8
mov qword [rdi], rax
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x1401cabec
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x1401cb6a1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r11
imul r8, rax, 0x38
add rdi, r11
mov eax, 0x9000
add r8, qword [r13 + 0x68]
test word [r8 + 0x14], ax
je 0x1401cfe71
mov rcx, r8
call fcn.140162240
mov r11, qword [rsp + 0x60]
mov r8, rax
mov r9, qword [rsp + 0x58]
jmp 0x1401cfe78
mov word [r8 + 0x14], 4
mov rdx, qword [rbx]
test rdx, rdx
jle 0x1401cfec6
mov rcx, qword [rdi]
mov eax, 0
test rcx, rcx
cmovle rcx, rax
test rcx, rcx
js 0x1401cfea6
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jl 0x1401cfec6
mov r12, qword [rsp + 0x40]
add rdx, rcx
mov r10d, dword [rsp + 0x50]
mov qword [r8], rdx
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov r12, qword [rsp + 0x40]
mov rdx, 0xffffffffffffffff
mov r10d, dword [rsp + 0x50]
mov qword [r8], rdx
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x1401ca206
mov r12, qword [rsp + 0x40]
jle 0x1401cb6a3
dec rax
mov qword [rcx + r11], rax
jmp 0x1401cb6a3
mov rax, qword [rsp + 0x40]
movabs r8, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, r8
jle 0x1401cff42
dec rax
mov qword [rcx + r11], rax
mov r12, qword [rsp + 0x40]
test rax, rax
je 0x1401cb6a3
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov rcx, rsi
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.140186d00
mov r8, rax
test rax, rax
je 0x1401cbf1d
xor r12d, r12d
lea rcx, [rbx + 6]
mov qword [rax + 0x10], r12
lea rcx, [rax + rcx*8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
mov word [rcx + 0x14], 1
mov qword [rcx + 0x18], rsi
mov dword [rcx + 0x20], r12d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x40]
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r13
mov byte [r8 + 0x29], r12b
mov dword [r8 + 0x24], r12d
mov byte [r8 + 0x28], r14b
mov byte [r8 + 0x2a], bl
mov byte [rax + 1], 0xf1
mov qword [rax + 0x10], r8
mov byte [rax], 0xa3
jmp 0x1401d0005
mov rax, qword [rsp + 0x40]
xor r12d, r12d
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov rdi, qword [rsp + 0x60]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x1401d0065
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1401d0065
mov rsi, qword [rsp + 0x40]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rdi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1401d0040
mov rsi, qword [rsp + 0x68]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [rcx + 4], 0
mov rcx, rbx
je 0x1401d0088
call qword [rax + 0x30]
jmp 0x1401d008b
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x1401ca2b8
jle 0x1401d00f4
mov rcx, qword [rbx]
test rcx, rcx
jne 0x1401d00a5
mov rax, r12
jmp 0x1401d00d9
movzx edx, word [rcx + 0x14]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x1401d00c8
cmp byte [rcx + 0x16], 1
jne 0x1401d00c8
mov rax, qword [rcx + 8]
jmp 0x1401d00d9
test dl, 1
je 0x1401d00d2
mov rax, r12
jmp 0x1401d00d9
mov dl, 1
call fcn.1401e9f90
mov r8, rax
lea rdx, [0x14028c848]
mov rcx, r13
call fcn.1401c9aa0
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x4c], r15d
cmp byte [rbx + 0x29], 0
je 0x1401d0137
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x1401d0133
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rdi
test word [rcx + 0x14], ax
je 0x1401d0125
mov edx, 1
call fcn.1401ec790
jmp 0x1401d0133
mov eax, 1
mov qword [rcx], rax
mov word [rcx + 0x14], 4
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x1401d014b
cmp dword [rcx + 0x20], 0
je 0x1401d0150
call fcn.1401eb4a0
mov rax, qword [rbx]
xor edx, edx
mov word [rax + 0x14], 1
mov dword [rbx + 0x24], edx
test r15d, r15d
jne 0x1401cb9ae
mov r12, qword [rsp + 0x40]
mov r11, rdi
jmp 0x1401ca1c7
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
mov rsi, qword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r11
test eax, eax
je 0x1401d022c
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x168], xmm0
movups xmmword [rbp + 0x178], xmm0
xor eax, eax
mov qword [rbp + 0x198], rax
add rdi, r11
mov eax, 0x9000
movups xmmword [rbp + 0x188], xmm0
test word [rdi + 0x14], ax
je 0x1401d01d1
mov rcx, rdi
call fcn.1401eb4f0
jmp 0x1401d01d7
mov word [rdi + 0x14], 1
mov qword [rbp + 0x168], rdi
mov qword [rbp + 0x178], rbx
mov qword [rbp + 0x170], rsi
mov rax, qword [rbx + 0x18]
movzx ecx, byte [rax + 0x64]
mov byte [rbp + 0x190], cl
lea rcx, [rbp + 0x168]
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15d, dword [rbp + 0x18c]
mov rdi, qword [rsp + 0x78]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x4c], r15d
add rbx, r11
jmp 0x1401d0243
mov rdx, rsi
mov rcx, rbx
call fcn.1401d43b0
mov r11, qword [rsp + 0x60]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test r15d, r15d
jne 0x1401d1f6b
test byte [rbx + 0x14], 2
jne 0x1401d0265
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov byte [rbx + 0x16], r14b
jmp 0x1401ca2c2
cmp byte [rbx + 0x16], r14b
je 0x1401ca85c
movzx edx, r14b
mov rcx, rbx
call fcn.1401d4ed0
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
lea rax, [rbp + 0x338]
mov dword [rbp + 0x330], edx
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x334]
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov dword [rbp + 0x338], 0xffffffff
mov dword [rbp + 0x334], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.140181970
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1401d02ea
cmp eax, 5
jne 0x1401cb9b3
xor eax, eax
mov ecx, 1
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401d02f0
mov ecx, dword [rbp + 0x330]
mov rax, qword [rsp + 0x40]
mov edi, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, qword [rsp + 0x60]
test word [rbx + 0x14], di
je 0x1401d0322
mov rdx, rax
mov rcx, rbx
call fcn.1401ec790
mov edx, 4
jmp 0x1401d032e
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0x334]
test word [rbx + 0x4c], di
je 0x1401d034e
mov rdx, rax
call fcn.1401ec790
mov edx, 4
jmp 0x1401d0355
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0x338]
test word [rbx + 0x84], di
je 0x1401d0376
mov rdx, rax
call fcn.1401ec790
jmp 0x1401ca2b8
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x1401ca2b8
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul r15, rax, 0x38
mov eax, 0x9000
add r15, qword [r13 + 0x68]
test word [r15 + 0x14], ax
je 0x1401d03af
mov rcx, r15
call fcn.140162240
mov r15, rax
jmp 0x1401d03b6
mov word [r15 + 0x14], 4
mov rax, qword [rsi + 0x20]
mov edx, dword [rbx + 0xc]
movsxd rcx, dword [rbx + 4]
shl rcx, 5
cmp edx, 0xffffffff
mov r13, qword [rcx + rax + 8]
mov rax, qword [r13 + 8]
mov rbx, qword [rax]
movzx r14d, byte [rbx + 9]
mov esi, r14d
cmovne esi, edx
cmp byte [rbx + 0x15], 3
jae 0x1401d03f6
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x1401d03f9
cmp qword [rbx + 0x60], 0
jle 0x1401d03f9
mov esi, r14d
cmp byte [rbx + 0x13], 0
jne 0x1401d0414
lea rax, [0x1402ce460]
cmp qword [rbx], rax
je 0x1401d0414
mov rcx, qword [rbx + 0xd8]
jmp 0x1401d041b
lea rcx, [0x14028789c]
cmp esi, 5
jne 0x1401d0494
test rcx, rcx
je 0x1401d045f
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1401d0430
test eax, 0x3fffffff
je 0x1401d045f
cmp byte [rbx + 0x11], 0
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax]
jne 0x1401d045f
cmp byte [rbx + 8], 0
jne 0x1401d0494
cmp dword [rcx], 2
jl 0x1401d045f
cmp qword [rcx + 0x68], 0
jne 0x1401d0494
mov esi, r14d
mov ecx, dword [rsp + 0x4c]
test ecx, ecx
je 0x1401d046d
mov esi, r14d
mov edx, esi
mov rcx, rbx
call fcn.1401b1ed0
mov word [r15 + 0x14], 0x2202
cmp eax, 6
jne 0x1401d0612
xor ebx, ebx
mov qword [r15 + 8], rbx
mov eax, ebx
jmp 0x1401d0650
cmp esi, r14d
je 0x1401d0462
cmp r14d, 5
je 0x1401d04a4
cmp esi, 5
jne 0x1401d0462
mov r12, qword [rsp + 0x68]
cmp byte [r12 + 0x65], 0
je 0x1401d1fd7
cmp dword [r12 + 0xdc], 1
jg 0x1401d1fd7
cmp r14d, 5
jne 0x1401d05d5
xor ecx, ecx
mov edi, ecx
cmp qword [rbx + 0x128], rcx
jne 0x1401d054b
mov dword [rbp - 0x40], ecx
movzx eax, byte [rbx + 0x16]
cmp al, 1
jb 0x1401d04eb
cmp al, r14b
jne 0x1401d050f
cmp byte [rbx + 0x11], cl
jne 0x1401d0505
mov rcx, qword [rbx + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + 0x38]
mov edi, eax
test eax, eax
jne 0x1401d050f
cmp byte [rbx + 0x16], 5
je 0x1401d050f
mov byte [rbx + 0x16], 1
test edi, edi
jne 0x1401d05bd
mov rax, qword [rbx]
lea r9, [rbp - 0x40]
mov rdx, qword [rbx + 0x130]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov edi, eax
test eax, eax
jne 0x1401d05bd
cmp dword [rbp - 0x40], eax
je 0x1401d054b
mov rcx, rbx
call fcn.140162b90
mov edi, eax
test eax, eax
jne 0x1401d05bd
cmp qword [rbx + 0x128], 0
je 0x1401d05bd
mov rcx, rbx
call fcn.140162890
mov edi, eax
test eax, eax
jne 0x1401d05bd
mov rax, qword [rbx + 0x118]
mov rdx, r12
movzx r8d, byte [rbx + 0xf]
mov r9d, dword [rbx + 0xc8]
mov rcx, qword [rbx + 0x128]
mov qword [rsp + 0x20], rax
call fcn.1401d89d0
mov edi, eax
mov dword [rsp + 0x4c], eax
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x128], rax
call fcn.140162920
test edi, edi
je 0x1401d05bd
cmp byte [rbx + 8], 0
jne 0x1401d05bd
mov edx, 1
mov rcx, rbx
call fcn.1401632d0
jmp 0x1401d046a
mov dword [rsp + 0x4c], edi
test edi, edi
jne 0x1401d046a
mov edx, esi
mov rcx, rbx
call fcn.1401b1ed0
jmp 0x1401d05f3
cmp r14d, 4
jne 0x1401d05e8
mov edx, 2
mov rcx, rbx
call fcn.1401b1ed0
cmp dword [rsp + 0x4c], 0
jne 0x1401d046a
xor eax, eax
mov rcx, r13
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.140180b80
mov ecx, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401d0466
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x289ac8]
mov qword [r15 + 8], rcx
test rcx, rcx
jne 0x1401d0632
xor ebx, ebx
mov eax, ebx
jmp 0x1401d0650
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1401d0640
and eax, 0x3fffffff
xor ebx, ebx
movzx r14d, byte [rsp + 0x48]
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x16], 1
cmp r14b, 1
je 0x1401d0671
movzx edx, r14b
mov rcx, r15
call fcn.1401d4ed0
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
test r15d, r15d
jne 0x1401d230c
jmp 0x1401ca2b8
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x1401d06a3
imul r9, rax, 0x38
add r9, r11
jmp 0x1401d06a6
mov r9, rdx
mov r8d, dword [r15 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, rsi
call fcn.1401bc450
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x1401d06fe
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x1401d06fe
mov rcx, rsi
call fcn.1400f8620
cmp byte [rdi + 0x21], 0
jne 0x1401d0714
mov r15d, 0x65
mov dword [rsp + 0x4c], r15d
jmp 0x1401d080c
mov rax, qword [rdi + 0x18]
mov r14d, dword [rdi + 0x40]
mov edx, r14d
mov rcx, qword [rax + 0x50]
mov ebx, dword [rcx + 0x24]
mov rcx, rdi
bswap ebx
mov r8d, ebx
call fcn.140109380
mov r15d, eax
cmp r14d, eax
jb 0x1401d07d3
cmp ebx, r14d
jae 0x1401d07d3
test ebx, ebx
je 0x1401d07c6
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x1401d0767
xor r8d, r8d
xor edx, edx
call fcn.140174290
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401d07bf
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1401d077d
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401d0770
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.140150430
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d0806
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.1401b2610
mov edx, dword [rdi + 0x40]
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x1401d0806
mov r15d, dword [rsp + 0x4c]
jmp 0x1401d0806
mov r15d, 0x65
mov dword [rsp + 0x4c], r15d
jmp 0x1401d0806
lea rax, [0x140294bd4]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x123b4
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1400cbad0
mov r15d, ebx
mov dword [rsp + 0x4c], ebx
movzx r14d, byte [rsp + 0x48]
cmp byte [rsi + 0x11], 0
je 0x1401d0820
sub dword [rsi + 0x14], 1
jne 0x1401d0820
mov rcx, rsi
call fcn.1401e7470
test r15d, r15d
je 0x1401ca85c
cmp r15d, 0x65
jne 0x1401d1c68
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp 0x1401cb6a3
cmp dword [r12 + 4], 0
jne 0x1401d089e
mov rdx, qword [rsi + 8]
mov r8d, dword [r12 + 8]
test rdx, rdx
je 0x1401cabec
nop word [rax + rax]
mov eax, dword [rdx + 0xc8]
lea ecx, [r8 + 1]
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rdx + 0xc8], ecx
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x1401d0870
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov eax, dword [r13 + 0xc8]
mov ecx, dword [r12 + 8]
inc ecx
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [r13 + 0xc8], ecx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
or byte [rax + 1], 0x40
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
and byte [rax + 1], 0xbf
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
movzx r8d, byte [r12 + 0xc]
test r8b, r8b
jne 0x1401d093f
movabs rax, 0x400000000
test qword [rsi + 0x30], rax
jne case.0x1401c9c88.89
mov r15, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 4]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14017f900
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x1401ca2b8
mov r14, qword [rsp + 0x40]
cmp al, 6
jne 0x1401cb9b8
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.1401c9aa0
jmp 0x1401cb9b8
mov rbx, qword [r12 + 0x10]
mov edi, edx
movsxd rdx, dword [rsi + 0x224]
test edx, edx
jle 0x1401d09ca
cmp qword [rsi + 0x248], 0
jne 0x1401d09ca
mov r15d, 6
mov dword [rsp + 0x4c], r15d
mov edi, r15d
test rbx, rbx
je 0x1401cb9ae
jmp 0x1401d0a95
test rbx, rbx
jne 0x1401d09e6
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rax, qword [rbx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x70], 0
je 0x1401d0a89
mov r14, qword [rsp + 0x68]
xor r8d, r8d
mov ecx, r8d
test edx, edx
jle 0x1401d0a25
mov rax, qword [r14 + 0x248]
nop
cmp qword [rax], rbx
je 0x1401d0ab4
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x1401d0a10
mov rcx, r14
call fcn.14014fa10
mov edi, eax
test eax, eax
jne 0x1401d0a89
mov rcx, qword [rbx + 0x10]
call qword [rsi + 0x70]
mov edi, eax
test eax, eax
jne 0x1401d0a89
mov edx, dword [r14 + 0x2f4]
add edx, dword [r14 + 0x2f0]
movsxd rcx, dword [r14 + 0x224]
mov rax, qword [r14 + 0x248]
mov qword [rax + rcx*8], rbx
inc dword [r14 + 0x224]
inc dword [rbx + 0x18]
test edx, edx
je 0x1401d0a89
cmp qword [rsi + 0xa0], 0
je 0x1401d0a89
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rsi + 0xa0]
mov edi, eax
mov rsi, qword [rsp + 0x68]
mov r15d, edi
mov dword [rsp + 0x4c], edi
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.1401d7fe0
test edi, edi
jne 0x1401cb9ae
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov edi, r8d
mov dword [rsp + 0x4c], r8d
mov r15d, r8d
mov rsi, r14
jmp 0x1401d0a95
mov rax, qword [rsp + 0x40]
lea rcx, [rbp + 0x68]
mov qword [rbp + 0x68], rdx
xorps xmm0, xmm0
mov qword [rbp + 0x98], rdx
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], rsi
movdqu xmmword [rbp + 0x88], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r11
call fcn.1401d42a0
movzx ecx, word [rbp + 0x7c]
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1401d0b29
cmp byte [rbp + 0x7e], 1
jne 0x1401d0b29
mov rax, qword [rbp + 0x70]
jmp 0x1401d0b41
test cl, 1
jne 0x1401d0c00
mov dl, 1
lea rcx, [rbp + 0x68]
call fcn.1401e9f90
movzx ecx, word [rbp + 0x7c]
test rax, rax
je 0x1401d0c00
mov r8, qword [rsi + 0x20]
lea rbx, [r13 + 0xa8]
mov rcx, qword [rsp + 0x40]
mov rdx, rax
movsxd rcx, dword [rcx + 4]
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, rsi
call fcn.140191020
mov r14, qword [rsp + 0x68]
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x48]
mov rdi, qword [rcx]
lea rcx, [r14 + 0x228]
mov rdx, rdi
call fcn.140109cd0
mov r8, qword [rax + 0x10]
test r8, r8
je 0x1401d0c7e
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x1401d0c7e
cmp qword [rcx + 0x28], 0
je 0x1401d0c7e
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r14
call fcn.1401ee910
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d0bee
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x1401d0bee
nop
cmp qword [rax], r14
je 0x1401d0c2a
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401d0be0
mov rsi, r14
movzx ecx, word [rbp + 0x7c]
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
mov eax, 0x9000
test ax, cx
jne 0x1401d0c13
cmp dword [rbp + 0x88], 0
je 0x1401d0c1c
lea rcx, [rbp + 0x68]
call fcn.1401eb4a0
test r15d, r15d
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rcx, r14
call fcn.14014fa10
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x1401d0bee
mov rdx, qword [rsi + 0x50]
mov rsi, r14
test rdx, rdx
je 0x1401d0c5e
nop dword [rax]
cmp qword [rdx], rsi
je 0x1401d0c5e
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1401d0c50
movsxd rcx, dword [rsi + 0x224]
mov rax, qword [rsi + 0x248]
mov qword [rax + rcx*8], rdx
inc dword [rsi + 0x224]
inc dword [rdx + 0x18]
jmp 0x1401d0bf1
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r14
mov rsi, r14
call fcn.1401aee90
mov qword [rbx], rax
mov eax, 1
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x1401d0bf1
mov rax, qword [rsp + 0x40]
mov rcx, rsi
inc dword [rsi + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1401d7560
dec dword [rsi + 0xe8]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x1401cb9b3
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x38], rdx
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401d201a
mov rdi, qword [rbx]
test rdi, rdi
je 0x1401d2015
lea rdx, [rbp - 0x38]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.1401d7fe0
test r15d, r15d
jne 0x1401cb9ae
mov rax, qword [rbp - 0x38]
mov r9b, 2
xor r8d, r8d
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 4]
call fcn.1400f1780
mov rcx, qword [rbp - 0x38]
test rax, rax
je 0x1401d200d
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x10], rdx
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x1401d0d8a
mov rcx, rbx
call fcn.1401eb4f0
mov r11, qword [rsp + 0x60]
jmp 0x1401d0d90
mov word [rbx + 0x14], 1
mov rax, qword [rsp + 0x40]
mov rdi, qword [rax + 0x10]
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x1401d0e2f
mov rcx, qword [rax + 0x10]
lea r8, [rbp - 0x10]
mov r15, qword [rsp + 0x40]
mov qword [rsp + 0x20], r8
mov r10, qword [rcx]
inc dword [rax + 0x18]
movsxd rax, dword [r15 + 4]
mov rdx, qword [rsi + 0x20]
mov r9d, dword [r15 + 0xc]
mov r8, qword [rdi]
shl rax, 5
mov rdx, qword [rax + rdx]
call qword [r10 + 0xc0]
mov rcx, qword [rdi + 0x50]
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.1401d8450
test r15d, r15d
jne 0x1401d2025
mov rdx, qword [rbp - 0x10]
test rdx, rdx
je 0x1401ca2b8
lea rax, [fcn.1400ea860]
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1401d4ad0
jmp 0x1401ca2b8
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x1401ca2c2
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
call fcn.1401e45d0
test eax, eax
jne 0x1401cbf22
mov ecx, 0x10
call fcn.1401aeec0
mov rdi, rax
test rax, rax
je 0x1401cbf1d
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
add rdx, qword [rsp + 0x60]
mov qword [rdi + 8], rdx
movsxd rcx, dword [rax + 8]
mov eax, 0x9000
imul rbx, rcx, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x1401d0eac
mov rcx, rbx
call fcn.140162240
mov rbx, rax
mov rcx, rbx
mov word [rbx + 0x14], 1
call fcn.1401eb4a0
lea rax, str.ValueList
mov qword [rbx], rax
lea rax, [fcn.140117820]
mov qword [rbx + 8], rdi
mov word [rbx + 0x14], 0x1a01
mov byte [rbx + 0x17], 0x70
mov qword [rbx + 0x30], rax
jmp 0x1401ca2b8
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
mov r13, qword [rax + rcx*8]
lea rbx, [rdx + 0x38]
mov rax, qword [rbp - 0x80]
add rbx, r11
mov r12d, dword [rdx + r11]
mov rsi, qword [r13 + 0x30]
mov r11, qword [rax + 0x70]
movq xmm4, rbx
movsxd rdi, dword [rbx]
xor eax, eax
punpcklqdq xmm4, xmm4
mov r9d, eax
mov r15, qword [rsi]
mov edx, eax
mov r14, qword [r15]
test edi, edi
jle 0x1401d1040
cmp edi, 8
jb 0x1401d1040
cmp r8d, 6
jl 0x1401d1040
mov eax, edi
and eax, 0x80000007
jge 0x1401d0f56
dec eax
or eax, 0xfffffff8
inc eax
mov r10d, edi
lea rcx, [r11 + 0x20]
sub r10d, eax
mov r8d, 4
nop word [rax + rax]
movq xmm3, xmm9
movd xmm1, r9d
pshufd xmm1, xmm1, 0
lea eax, [r8 - 2]
paddd xmm1, xmm3
movd xmm2, eax
pshufd xmm2, xmm2, 0
lea eax, [r8 + 2]
paddd xmm2, xmm3
lea rcx, [rcx + 0x40]
movq xmm0, xmm8
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm8
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x1401d0f70
cmp rdx, rdi
jge 0x1401d1069
lea r8d, [r9 + 1]
nop dword [rax]
movsxd rax, r8d
inc r8d
imul rcx, rax, 0x38
add rcx, rbx
mov qword [r11 + rdx*8], rcx
inc rdx
cmp rdx, rdi
jl 0x1401d1050
mov rax, qword [rsp + 0x40]
mov r9d, edi
mov edx, r12d
mov qword [rsp + 0x20], r11
mov rcx, rsi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rbp - 0x80]
mov rdx, r15
mov dword [rsp + 0x4c], eax
call fcn.1401d7fe0
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x1401d22f9
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r15b
test eax, eax
je 0x1401d1a9c
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp 0x1401cb6a1
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp 0x1401cb6a1
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
je 0x1401d111a
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1401cb560
mov rcx, rbx
call fcn.1401eb4f0
jmp 0x1401ca2b8
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rcx, qword [rsp + 0x40]
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
mov qword [rbp + 0x1d0], rax
movzx eax, byte [rsp + 0x48]
movups xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1a0], rbx
movups xmmword [rbp + 0x1c0], xmm0
mov byte [rbp + 0x1c8], al
lea rax, [rbp + 0x2e0]
mov qword [rbp + 0x1a8], rax
movups xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x2e8], rdx
mov dword [rbp + 0x2e4], 0x1000000
test byte [rcx + 2], 1
je 0x1401d11a5
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1401d119b
mov rcx, rbx
call fcn.1401eb4f0
mov rcx, qword [rsp + 0x40]
xor edx, edx
mov word [rbx + 0x14], 0x401
mov dword [rbx], edx
jmp 0x1401d11b9
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
mov r8d, dword [rcx + 8]
lea rdx, [rbp + 0x1a0]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.1401d7fe0
cmp dword [rbp + 0x1c4], 0
jle 0x1401d1238
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1401d1207
cmp byte [rbx + 0x16], 1
jne 0x1401d1207
mov rax, qword [rbx + 8]
jmp 0x1401d121a
test cl, 1
je 0x1401d1210
xor eax, eax
jmp 0x1401d121a
mov dl, 1
mov rcx, rbx
call fcn.1401e9f90
mov r8, rax
lea rdx, [0x14028c848]
mov rcx, r13
call fcn.1401c9aa0
mov r15d, dword [rbp + 0x1c4]
mov dword [rsp + 0x4c], r15d
test byte [rbx + 0x14], 2
movzx r14d, byte [rsp + 0x48]
jne 0x1401d124a
mov byte [rbx + 0x16], r14b
jmp 0x1401d125c
cmp byte [rbx + 0x16], r14b
je 0x1401d125c
movzx edx, r14b
mov rcx, rbx
call fcn.1401d4ed0
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x1401cb9ae
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1401ca206
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.1401d7fe0
test r15d, r15d
jne 0x1401d1c68
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x1401cebcc
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x58]
lea rax, [rax + rcx*8]
mov qword [rsp + 0x40], rax
jmp 0x1401cebd1
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
and edi, 0x4000000
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 2
jne 0x1401d131e
mov byte [rbx + 0x16], 1
jmp 0x1401d1339
cmp byte [rbx + 0x16], 1
je 0x1401d1339
mov dl, 1
mov rcx, rbx
call fcn.1401d4ed0
mov r15d, eax
test eax, eax
jne 0x1401d1c68
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x4c], eax
mov r15d, eax
test edi, edi
jne 0x1401d1361
mov rax, qword [rsp + 0x68]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.1401d7fe0
and dword [r13 + 0xc8], 0xfffffffc
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x1401cb9ae
jmp 0x1401ca2b8
mov qword [rbp - 8], rdx
cmp byte [rsi + 0x67], 0
jne 0x1401cbf22
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401d201a
mov r10, qword [rbx]
test r10, r10
je 0x1401d201a
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x40]
movsxd rdx, dword [r12 + 8]
je 0x1401cabe7
movsxd rax, dword [r12 + 0xc]
mov r15, r12
movzx edi, byte [rsi + 0x6c]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r11
test edx, edx
jle 0x1401d1400
nop dword [rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x1401d13f0
movzx eax, byte [r15 + 2]
lea r9, [rbp - 8]
mov rcx, rbx
mov byte [rsi + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x6c], dil
mov rcx, r13
mov dword [rsp + 0x4c], eax
mov r15d, eax
call fcn.1401d7fe0
test r15d, r15d
jne 0x1401d143f
cmp dword [r12 + 4], r15d
je 0x1401d1470
mov rax, qword [rbp - 8]
mov qword [rsi + 0x38], rax
jmp 0x1401d1470
cmp r15b, 0x13
jne 0x1401d1470
mov rax, r12
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x1401d1470
mov rcx, r12
movzx ecx, word [rcx + 2]
cmp ecx, 4
jne 0x1401d20b5
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x4c], edx
jmp 0x1401ca1c2
inc qword [r13 + 0x38]
test r15d, r15d
jne 0x1401cb9ae
jmp 0x1401ca2bd
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1401d14b0
mov rcx, rdx
call fcn.140162240
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x1401d14b6
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
jmp 0x1401cabe2
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [r13 + 0x68]
test word [rsi + 0x14], ax
je 0x1401d150b
mov rcx, rsi
call fcn.140162240
mov rsi, rax
xor edx, edx
jmp 0x1401d1511
mov word [rsi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov edi, edx
mov rax, qword [rsp + 0x68]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x1401d1541
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x1401d1558
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401d1558
mov rcx, rbx
call fcn.1400f8620
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x1401d1569
mov dword [rcx + 0xbc], edi
cmp byte [rbx + 0x11], 0
mov edi, dword [rcx + 0xbc]
je 0x1401d1583
sub dword [rbx + 0x14], 1
jne 0x1401d1583
mov rcx, rbx
call fcn.1401e7470
mov qword [rsi], rdi
mov rsi, qword [rsp + 0x68]
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov qword [rbp - 0x60], r15
add rbx, r11
cmp qword [r15], rbx
je 0x1401d1605
mov qword [r15 + 0x18], r13
mov qword [r15], rbx
mov byte [r15 + 0x28], r14b
movzx eax, byte [r15 + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1401d1605
mov rsi, qword [rsp + 0x40]
lea r8, [r15 + 0x30]
lea r8, [r8 + rdx*8]
nop word [rax + rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1401d15e0
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x14]
lea r8, [r15 + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, r15
or ax, 1
mov word [rbx + 0x14], ax
mov rax, qword [r15 + 8]
movzx edx, byte [r15 + 0x2a]
call qword [rax + 0x18]
mov eax, dword [r15 + 0x24]
test eax, eax
je 0x1401d1726
jle 0x1401d1687
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1401d165a
cmp byte [rbx + 0x16], 1
jne 0x1401d165a
mov rax, qword [rbx + 8]
jmp 0x1401d166d
test cl, 1
je 0x1401d1663
xor eax, eax
jmp 0x1401d166d
mov dl, 1
mov rcx, rbx
call fcn.1401e9f90
mov r8, rax
lea rdx, [0x14028c848]
mov rcx, r13
call fcn.1401c9aa0
mov ecx, dword [r15 + 0x24]
mov dword [rsp + 0x4c], ecx
mov r12, qword [rsp + 0x40]
lea rdi, [r13 + 0x128]
mov rbx, qword [rdi]
mov esi, dword [r15 + 0x20]
mov r14d, dword [r12 + 4]
test rbx, rbx
je 0x1401d16fd
mov r15, qword [rsp + 0x68]
nop dword [rax]
test esi, esi
js 0x1401d16d0
cmp dword [rbx], esi
jne 0x1401d16ca
mov eax, dword [rbx + 4]
test eax, eax
js 0x1401d16ca
cmp eax, 0x1f
jg 0x1401d16d0
bt r14d, eax
jae 0x1401d16d0
lea rdi, [rbx + 0x18]
jmp 0x1401d16f1
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1401d16df
mov rcx, qword [rbx + 8]
call rax
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r15
mov qword [rdi], rax
call fcn.140186b70
mov rbx, qword [rdi]
test rbx, rbx
jne 0x1401d16b0
mov r15, qword [rbp - 0x60]
mov rsi, qword [rsp + 0x68]
xor edx, edx
mov dword [r15 + 0x24], edx
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x1401d1d7d
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca1c7
mov r15d, dword [rsp + 0x4c]
jmp 0x1401ca2b8
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov eax, 0x800
add rcx, r11
test word [rdx + r11 + 0x14], ax
je 0x1401d17bb
movzx eax, byte [rdx + r11 + 0x17]
mov edx, 0x9000
test word [rcx + 0x14], dx
je 0x1401d179d
mov edx, eax
call fcn.1401ec790
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
xor edx, edx
mov qword [rcx], rax
mov word [rcx + 0x14], 4
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov eax, 0x9000
test word [rcx + 0x14], ax
je 0x1401d17d0
call fcn.1401eb4f0
jmp 0x1401ca2b8
mov r12, qword [rsp + 0x40]
xor edx, edx
mov word [rcx + 0x14], 1
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, r11
test byte [rdx + r11 + 0x14], 1
je 0x1401d1829
mov eax, 0xf7ff
and word [rcx + 0x14], ax
xor edx, edx
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov eax, 0x800
or word [rcx + 0x14], ax
movzx eax, byte [rdx + r11]
xor edx, edx
mov byte [rcx + 0x17], al
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rcx, qword [rsp + 0x40]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.140108fa0
mov ecx, dword [rbx + 0x10]
xor edx, edx
shl ecx, 3
movsxd r8, ecx
mov rcx, qword [rbx + 8]
div r8
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x1401ca2b8
mov rcx, qword [rsp + 0x40]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.140108fa0
mov ecx, dword [rbx + 0x10]
xor edx, edx
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
shl ecx, 3
movsxd r8, ecx
div r8
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
movzx eax, al
bt r8d, eax
jb 0x1401d18ef
inc dword [r13 + 0xf4]
jmp 0x1401cb6a1
inc dword [r13 + 0xf0]
jmp 0x1401cabe2
movzx eax, byte [rsi + 0x6e]
test al, 0x41
je 0x1401d195c
cmp byte [r13 + 0xc5], 0xfe
je 0x1401d195c
mov rcx, qword [rsp + 0x40]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x1401d1927
mov r9, qword [r13 + 0xf8]
test r9, r9
je 0x1401d1957
test al, 0x40
je 0x1401d19d8
mov rdx, r9
mov rcx, r13
call fcn.1401d2880
mov rcx, qword [rsi + 0x100]
mov rdx, rax
mov rbx, rax
call qword [rsi + pe_nt_image_headers64]
mov rcx, rbx
call fcn.1400ea860
xor edx, edx
mov r9, qword [rsp + 0x58]
mov ebx, 1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov eax, dword [rax + 4]
cmp eax, dword [0x1402cd438]
jl 0x1401d19c5
cmp byte [r12], 0xb8
je 0x1401c9eea
cmp dword [r13 + 0x90], 1
mov edx, ebx
jle 0x1401d19c1
mov eax, 0x18
xor r10d, r10d
nop word [rax + rax]
mov rcx, qword [r13 + 0x88]
cmp byte [rcx + rax], 0xf
jne 0x1401d19b2
mov dword [rcx + rax + 4], r10d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x1401d19a0
xor edx, edx
mov eax, edx
inc eax
mov dword [r12 + 4], eax
inc dword [r13 + 0xec]
jmp 0x1401cb6a3
cmp dword [rsi + 0xe4], 1
jle 0x1401d1a27
mov r8, r9
lea rdx, str.____s
mov rcx, rsi
call fcn.1401aee90
mov rdx, qword [rsi + 0x100]
mov r9, rax
mov r8, r13
mov ecx, 1
mov rbx, rax
call qword [rsi + pe_nt_image_headers64]
test rbx, rbx
je 0x1401d1955
mov rdx, rbx
mov rcx, rsi
call fcn.140186b70
jmp 0x1401d1955
mov rdx, qword [rsi + 0x100]
mov ebx, 1
mov ecx, ebx
mov r8, r13
call qword [rsi + pe_nt_image_headers64]
mov r9, qword [rsp + 0x58]
xor edx, edx
jmp 0x1401d1961
mov r12, qword [rsp + 0x40]
jmp 0x1401cb6a3
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
jmp 0x1401cb03e
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x18
jmp 0x1401c9c48
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
jmp 0x1401ca2bd
mov r15, qword [rsp + 0x40]
mov ecx, dword [r15 + 4]
mov dword [r13 + 0x34], ecx
movzx eax, byte [r15 + 8]
mov byte [r13 + 0xc4], al
test ecx, ecx
je 0x1401d1b7f
movzx eax, word [r15 + 2]
mov rcx, r13
test ax, ax
je 0x1401d1b29
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x289a60]
call fcn.1401c9aa0
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x1401d1b39
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.1401aee90
mov qword [r13 + 0xa8], rax
jmp 0x1401d1b39
mov r8, qword [r15 + 0x10]
lea rdx, [0x14028c848]
call fcn.1401c9aa0
mov r9, qword [r13 + 0xf8]
mov rcx, r15
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, dword [r15 + 4]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.abort_at__d_in___s_:__s
call fcn.1400cbad0
mov rcx, r13
call fcn.1401d32b0
mov r14, qword [rsp + 0x40]
mov r15d, eax
mov r12, qword [rsp + 0x70]
cmp eax, 5
jne 0x1401d1ba2
mov dword [r13 + 0x34], eax
jmp 0x1401ccca1
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov eax, 1
cmovne r15d, eax
jmp 0x1401ccca1
mov r15d, 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [r13 + 0x34], r15d
mov rcx, r13
mov byte [r13 + 0xc4], 2
call fcn.1401c9aa0
cmp byte [r13 + 0xc6], 0
mov eax, 1
cmovge r15d, eax
jmp 0x1401cb9b3
mov ecx, 0x17836
call fcn.140184ce0
mov r13, qword [rbp - 0x80]
mov r15d, eax
jmp 0x1401cb9ae
lea r10, [0x140000000]
movsxd rax, esi
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [r15 + rcx*8 + 8]
mov rax, qword [r15 + rcx*8]
mov rcx, r13
movzx r8d, byte [rdx + r10 + 0x288350]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
shr r9d, 4
and r9d, 0xf
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
dec r9d
mov r8, qword [r10 + r8*8 + 0x2ce500]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x2cd468]
call fcn.1401c9aa0
mov r15d, 0xc13
mov rsi, qword [rsp + 0x68]
jmp 0x1401cb9ae
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.1401c9aa0
mov r15d, 5
mov rsi, rdi
jmp 0x1401cb9ae
mov r13, qword [rbp - 0x80]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.1401c9aa0
mov r15d, 5
jmp 0x1401cb9b3
mov byte [rsi + 0x65], 0
mov r13, rbx
jmp 0x1401cb9b3
mov r14, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r12, qword [rsp + 0x70]
mov rcx, r14
sub rcx, qword [rsp + 0x58]
mov r15d, 5
imul rcx
mov r13, rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x30], edx
mov byte [rsi + 0x65], 0
mov dword [rbx + 0x34], r15d
jmp 0x1401ccca1
bt rax, 0x14
mov r15d, 8
mov eax, 0xb
mov r14, rcx
cmovae r15d, eax
jmp 0x1401cb9bd
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
cmp r15b, 5
jne 0x1401d1f2f
mov rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x30], edx
mov dword [r13 + 0x34], r15d
jmp 0x1401ccca1
mov r15d, 0x204
jmp 0x1401cb9b3
mov rcx, qword [rbx + 0x10]
call fcn.14017d5a0
jmp 0x1401cb9ae
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
mov r14, r12
jmp 0x1401cb9b8
lea rax, [0x140294bd4]
mov r9d, 0x15fef
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.1400cbad0
mov rsi, qword [rsp + 0x68]
mov eax, 0xb
mov rdi, qword [rsp + 0x78]
mov r15d, eax
mov r14, r12
jmp 0x1401cb9bd
lea rax, [0x140294bd4]
mov r9d, 0x18104
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.1400cbad0
mov rdi, qword [rsp + 0x78]
mov eax, 0xb
mov r15d, eax
mov r14, r12
jmp 0x1401cb9bd
mov rsi, rcx
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.1401c9aa0
mov r15d, 0x12
jmp 0x1401cb9b3
mov rsi, rcx
jmp 0x1401d1e14
mov rsi, qword [rsp + 0x68]
jmp 0x1401d1e14
lea rax, [0x140294bd4]
mov r15d, 0x30b
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x18548
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1400cbad0
mov rdi, qword [rsp + 0x78]
mov r14, r12
jmp 0x1401cb9b8
mov ecx, 0x18615
call fcn.140184ce0
mov r15d, eax
jmp 0x1401cb9b3
mov r15d, 6
mov byte [r13 + 0xc4], 2
jmp 0x1401cb9ae
mov r8, rbx
lea rdx, [0x14028c848]
mov rcx, r13
call fcn.1401c9aa0
test rbx, rbx
je 0x1401d1f11
cmp dword [0x1402cd290], 0
je 0x1401d1f08
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x1401d1ed1
call qword [0x1402cd310]
mov rcx, rbx
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
movsxd rcx, eax
sub qword [0x1402d39f0], rcx
mov rcx, rbx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x1401d1f11
call qword [0x1402cd320]
jmp 0x1401d1f11
mov rcx, rbx
call qword [0x1402cd2b8]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x70]
cmp r15d, 7
je 0x1401cbf27
mov r14, qword [rsp + 0x40]
mov eax, 0xb
jmp 0x1401cb9c2
call fcn.1401baf50
jmp 0x1401cbf22
mov rcx, qword [rbp]
call fcn.1400ea860
jmp 0x1401cb9ae
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r13
mov r15d, 1
call fcn.1401c9aa0
jmp 0x1401cb9b3
test rbx, rbx
jne 0x1401d1f75
mov rax, rbx
jmp 0x1401d1fac
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1401d1f95
cmp byte [rbx + 0x16], 1
jne 0x1401d1f95
mov rax, qword [rbx + 8]
jmp 0x1401d1faa
test cl, 1
je 0x1401d1fa0
xor ebx, ebx
mov eax, ebx
jmp 0x1401d1fac
mov dl, 1
mov rcx, rbx
call fcn.1401e9f90
xor ebx, ebx
mov r8, rax
lea rdx, [0x14028c848]
mov rcx, r13
call fcn.1401c9aa0
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r12, qword [rsp + 0x70]
jmp 0x1401cb9c4
mov r13, qword [rbp - 0x80]
lea rax, str.into
cmp esi, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
cmove r8, rax
mov r15d, 1
call fcn.1401c9aa0
mov rsi, r12
jmp 0x1401cb9b3
call qword [rdi + 0x38]
jmp 0x1401cbf1d
mov rdi, qword [rsp + 0x78]
mov r15d, 6
jmp 0x1401cb9b3
mov rbx, qword [rbp - 0x10]
test rbx, rbx
je 0x1401cb9ae
cmp dword [0x1402cd290], 0
je 0x1401d208b
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x1401d204d
call qword [0x1402cd310]
mov rcx, rbx
call qword [0x1402cd2c8]
dec qword [0x1402d3a38]
movsxd rcx, eax
sub qword [0x1402d39f0], rcx
mov rcx, rbx
call qword [0x1402cd2b8]
mov rcx, qword [0x1402d3ab0]
test rcx, rcx
je 0x1401cb9ae
call qword [0x1402cd320]
jmp 0x1401cb9ae
mov rcx, rbx
call qword [0x1402cd2b8]
jmp 0x1401cb9ae
mov r14, qword [rsp + 0x40]
mov r12, 0xffffffffffffffff
mov r15d, 9
mov eax, 0xb
jmp 0x1401cb9c2
mov rdi, qword [rsp + 0x78]
cmp ecx, 5
movzx eax, cl
mov r14, r12
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc4], al
jmp 0x1401cb9b8
mov eax, dword [r13 + 0x2c]
mov r15, qword [rsp + 0x40]
add eax, 2
or eax, 1
mov dword [r13 + 0x2c], eax
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [r13 + 0xa0], rcx
cmp byte [rsi + 0x67], 0
jne 0x1401cbf22
test byte [rsi + 0x6e], 4
je 0x1401d2129
mov rdx, qword [rsi + 0x100]
xor r9d, r9d
mov r8, r13
mov ecx, 4
call qword [rsi + pe_nt_image_headers64]
mov r9, qword [rsp + 0x58]
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
mov r15d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r13 + 0x30], edx
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
jmp 0x1401ccca1
mov r15, qword [rsp + 0x40]
movzx eax, byte [rsi + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x1401d2262
test ecx, ecx
je 0x1401d2199
mov edx, 0x204
mov rcx, rsi
call fcn.1401bb860
mov al, 1
mov r14d, 1
jmp 0x1401d21e4
test ebx, ebx
je 0x1401d21c0
cmp dword [rsi + 0xe0], 0
jle 0x1401d21c0
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.1401c9aa0
mov r15d, 5
jmp 0x1401cb9b3
mov r14d, 1
mov rcx, r13
mov edx, r14d
call fcn.1401c91d0
mov r15d, eax
test eax, eax
jne 0x1401d2156
mov r15, qword [rsp + 0x40]
movzx eax, bl
mov rcx, r13
mov byte [rsi + 0x65], al
call fcn.1401d32b0
cmp eax, 5
jne 0x1401d223c
mov r12, qword [rsp + 0x70]
mov rcx, r15
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov r15d, 5
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r14d
mov r14, qword [rsp + 0x40]
sub al, bl
mov dword [r13 + 0x30], edx
mov byte [rsi + 0x65], al
mov dword [r13 + 0x34], r15d
jmp 0x1401ccca1
mov rcx, rsi
call fcn.140181e70
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov r12, qword [rsp + 0x70]
cmovne r15d, r14d
mov r14, qword [rsp + 0x40]
jmp 0x1401ccca1
test ebx, ebx
jne 0x1401d226f
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x1401d2283
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r13
call fcn.1401c9aa0
mov r15d, 1
jmp 0x1401cb9b3
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
mov r15d, 9
mov eax, 0xb
jmp 0x1401cb9c2
mov rsi, qword [rsp + 0x68]
jmp 0x1401cbf1d
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
jmp 0x1401cb9ae
mov r15d, dword [rsp + 0x4c]
mov eax, 0xb
mov r14, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x70]
jmp 0x1401cb9c4
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
jmp 0x1401cb9ae
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
jmp 0x1401cb9ae
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x40]
mov eax, 0xb
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
jmp 0x1401cb9c4
mov r13, qword [rbp - 0x80]
jmp 0x1401cb9b3
cmp r15d, 0x210a
jne 0x1401d2364
lea rcx, [0x140294bd4]
mov r9d, 0x18f2a
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1400cbad0
mov r15d, 0xb
cmp qword [r13 + 0xa8], 0
jne 0x1401d23dd
cmp r15d, 0xc0a
je 0x1401d23dd
mov ecx, r15d
lea r8, str.unknown_error
sub ecx, 0x64
je 0x1401d23c7
sub ecx, 1
je 0x1401d23be
cmp ecx, 0x19f
je 0x1401d23b5
movzx eax, r15b
cmp eax, 0x1d
jae 0x1401d23ce
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x286cc0]
test rcx, rcx
je 0x1401d23ce
mov r8, rcx
jmp 0x1401d23ce
lea r8, str.abort_due_to_ROLLBACK
jmp 0x1401d23ce
lea r8, str.no_more_rows_available
jmp 0x1401d23ce
lea r8, str.another_row_available
lea rdx, [0x14028c848]
mov rcx, r13
call fcn.1401c9aa0
mov edx, r15d
mov dword [r13 + 0x34], r15d
mov rcx, rsi
call fcn.1401c3940
mov r9, qword [r13 + 0xf8]
mov rcx, r14
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, r15d
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.1400cbad0
cmp byte [r13 + 0xc7], 2
jne 0x1401d2443
mov rcx, r13
call fcn.1401d32b0
cmp r15d, 0xc0a
jne 0x1401d2456
mov rcx, rsi
call fcn.1401aff30
jmp 0x1401d2470
cmp r15d, 0xb
jne 0x1401d2470
cmp byte [rsi + 0x65], 0
jne 0x1401d2470
movabs rax, 0x200000000
or qword [rsi + 0x30], rax
movzx eax, byte [rbp - 0x58]
mov r15d, 1
test al, al
je 0x1401ccca1
cmp eax, r15d
jb 0x1401d24ac
mov ecx, eax
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax - 8]
or word [rcx + 0x72], 8
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 0x38]
or word [rcx + 0x72], 8
and dword [rsi + 0x2c], 0xffffffef
cmp dword [rsi + 0x48], 0
jne 0x1401ccca1
cmp dword [rsi + 0x28], 0
mov edi, ebx
jle 0x1401ccc9c
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsi + 0x20]
mov rcx, qword [rbx + rax + 0x18]
test byte [rcx + 0x72], 8
je 0x1401d24e4
call fcn.1401bcd00
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x1401d24d0
jmp 0x1401ccc9c
mov r14, qword [rsp + 0x40]
mov r13, rbx
mov r12, qword [rsp + 0x70]
jmp 0x1401ccca1
add dword [r13 + 0xe4], edi
cmp dword [r13 + 0xd0], 0
movaps xmm10, xmmword [rsp + 0x450]
movaps xmm9, xmmword [rsp + 0x460]
movaps xmm8, xmmword [rsp + 0x470]
movaps xmm7, xmmword [rsp + 0x480]
movaps xmm6, xmmword [rsp + 0x490]
mov r14, qword [rsp + 0x4a0]
mov r12, qword [rsp + 0x4a8]
mov rdi, qword [rsp + 0x4e8]
mov rsi, qword [rsp + 0x4e0]
mov rbx, qword [rsp + 0x4d8]
je 0x1401d2572
mov rcx, r13
call fcn.1401eb3b0
mov eax, r15d
mov rcx, qword [rbp + 0x340]
xor rcx, rsp
call fcn.14025e200
add rsp, 0x4b0
pop r15
pop r13
pop rbp
ret