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

Disassembly:
mov r11, rsp
push rbp
push rsi
push r12
lea rbp, [r11 - 0x348]
sub rsp, 0x430
mov rax, qword [0x140213480]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
mov rsi, rcx
mov qword [r11 + 0x18], rdi
mov qword [r11 + 0x20], r13
xor al, al
mov qword [r11 - 0x20], r14
mov r14, qword [rcx + 0x88]
mov r13, qword [rsi]
mov r11, qword [rsi + 0x68]
mov qword [rsp + 0x68], rcx
xor ecx, ecx
mov r12d, ecx
mov qword [rsp + 0x78], r14
mov r10d, ecx
movzx r9d, byte [r13 + 0x64]
mov edi, ecx
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x48], r14
mov dword [rsp + 0x50], ecx
mov qword [rsp + 0x60], r13
mov byte [rbp - 0x6c], al
mov dword [rsp + 0x54], ecx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x58], r11
cmp dword [rsi + 0xd0], ecx
je 0x14017aff0
mov rcx, rsi
call fcn.14017ae60
mov r11, qword [rsp + 0x58]
mov r10d, edi
movzx r9d, byte [rsp + 0x40]
cmp qword [r13 + 0x210], rdi
je 0x14017b014
mov eax, dword [rsi + 0xe4]
xor edx, edx
mov ecx, dword [r13 + 0x220]
div ecx
sub ecx, edx
mov eax, ecx
mov qword [rbp - 0x50], rax
jmp 0x14017b01c
mov qword [rbp - 0x50], 0xffffffffffffffff
cmp dword [rsi + 0x34], 7
mov qword [rsp + 0x458], rbx
mov qword [rsp + 0x420], r15
movaps xmmword [rsp + 0x410], xmm6
movaps xmmword [rsp + 0x400], xmm7
movaps xmmword [rsp + 0x3f0], xmm8
je 0x14017dac0
xor edx, edx
mov dword [rsi + 0x34], edx
mov qword [rsi + 0x48], rdx
mov dword [r13 + 0x298], edx
mov eax, dword [r13 + 0x198]
test eax, eax
jne 0x1401835d7
movsxd rax, dword [rsi + 0x30]
xorps xmm8, xmm8
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
movzx ebx, byte [r15]
inc rdi
mov r8d, dword [0x140213430]
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x70], rdi
cmp ebx, 0xb5
ja case.0x14017b0bd.89
movsxd rax, ebx
lea rcx, [0x140000000]
mov ecx, dword [rcx + rax*4 + 0x183918]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, r14
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.0x14017b0bd.9
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je 0x14017b626
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r15 + 8], 0
jne 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
xor edi, edi
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r14 + rcx*8 + 8]
dec eax
mov word [rdx + r11 + 0x14], di
cdqe
xor edx, edx
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, r14
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 r15, [r14 + rcx*8]
mov qword [r8 + r11], rax
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x14017b626
mov rcx, qword [rsi + 0x108]
test rcx, rcx
je 0x140182ecd
mov rax, qword [rsp + 0x48]
cmp dword [rax + 4], 0
jne 0x140182ecd
mov rax, qword [rcx + 8]
mov qword [rsi + 0x108], rax
dec dword [rsi + 0x118]
mov rax, qword [rsi + 0x38]
mov qword [r13 + 0x78], rax
add qword [r13 + 0x80], rax
call fcn.140184390
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 8], 4
jne 0x14017b295
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r14, qword [rsi + 0x88]
mov r11, qword [rsi + 0x68]
cdqe
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x58], r11
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x14017b2e1
call fcn.140115880
mov rcx, rax
xor edx, edx
jmp 0x14017b2e7
mov word [rcx + 0x14], 4
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14017b344
mov rcx, rdx
call fcn.140115880
mov rdx, rax
jmp 0x14017b34a
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14017b38f
mov rcx, rdx
call fcn.140115880
mov rdx, rax
mov word [rdx + 0x14], 8
jmp 0x14017b34a
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x14017b3c5
mov rcx, rbx
call fcn.140115880
mov rcx, qword [rsp + 0x48]
mov rbx, rax
jmp 0x14017b3cb
mov word [rbx + 0x14], 4
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x14017b3dc
xor r15d, r15d
mov eax, r15d
jmp 0x14017b3f4
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x14017b3e3
and eax, 0x3fffffff
xor r15d, r15d
movzx edi, byte [rsp + 0x40]
mov dword [rcx + 4], eax
cmp dil, 1
je 0x14017b497
mov r9b, 1
mov qword [rsp + 0x20], r15
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.140185e20
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x1401832b4
test byte [rbx + 0x14], 2
jne 0x14017b438
mov byte [rbx + 0x16], dil
jmp 0x14017b452
cmp byte [rbx + 0x16], dil
je 0x14017b452
movzx edx, dil
mov rcx, rbx
call fcn.140186340
test eax, eax
jne 0x14017dabb
mov eax, 0x2000
mov dword [rbx + 0x20], r15d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xfa
jne 0x14017b480
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14017b480
mov rcx, r13
call fcn.140138d80
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x48]
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 [r13 + 0x88]
jg 0x1401832b4
mov byte [rcx], 0x49
jmp 0x14017b4b3
mov rcx, qword [rsp + 0x48]
movzx edi, byte [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14017b4da
mov rcx, rdx
call fcn.140115880
mov rcx, qword [rsp + 0x48]
mov rdx, rax
mov r11, qword [rsp + 0x58]
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 + 0x48]
mov byte [rdx + 0x16], dil
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14017fc6b
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
cmp qword [rcx + r11], rax
jne 0x14017fc6b
mov word [rdx + 0x14], 0x2210
mov r15, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
mov r13d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], r13w
je 0x14017b574
call fcn.140115880
mov rcx, rax
xor edx, edx
jmp 0x14017b57a
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 0x14017fc57
nop dword [rax]
test word [rbx + 0x38], r13w
lea rbx, [rbx + 0x38]
je 0x14017b5c6
lea rcx, [rbx - 0x14]
call fcn.14019c2a0
xor edx, edx
dec edi
mov word [rbx], si
mov dword [rbx - 4], edx
test edi, edi
jg 0x14017b5b0
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
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 r15, qword [rsp + 0x48]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], cx
je 0x14017b66c
mov rcx, rbx
call fcn.140115880
mov rbx, rax
mov ecx, 0x9000
jmp 0x14017b672
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x10]
movsxd rdi, dword [rax + 4]
test rdx, rdx
jne 0x14017b6c3
test word [rbx + 0x14], cx
jne 0x14017b68f
cmp dword [rbx + 0x20], edx
je 0x14017b697
mov rcx, rbx
call fcn.14019c250
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.1401856d0
test eax, eax
jne 0x14017dabb
jmp 0x14017b6d8
mov r8, rdi
xor r9d, r9d
xor edi, edi
mov rcx, rbx
mov qword [rsp + 0x20], rdi
call fcn.140185e20
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov byte [rbx + 0x16], r9b
jmp 0x14017b530
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsi + 0x80]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x24]
test al, 0x12
je 0x14017b72e
bt ax, 0xa
mov ecx, dword [rdi + rsi - 0x28]
jae 0x14017b71d
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x20]
cmp ecx, dword [rax + 0x88]
jg 0x1401832ad
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x14017b753
mov rcx, rbx
call fcn.14019c2a0
mov r11, qword [rsp + 0x58]
xor edx, edx
movups xmm0, xmmword [rdi + rsi - 0x38]
mov r15, qword [rsp + 0x48]
mov ecx, 0xafff
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
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 r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rcx, qword [rsp + 0x48]
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
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x14017b7d5
cmp dword [rbx + 0x20], 0
je 0x14017b7df
mov rcx, rbx
call fcn.14019c250
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 0x14017b859
test al, 0x12
je 0x14017b84e
bt ax, 0xa
jae 0x14017b82e
mov rcx, rbx
call fcn.1401856d0
test eax, eax
jne 0x14017dab6
cmp dword [rbx + 0x20], 0
je 0x14017b83e
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14017b84e
mov rcx, rbx
call fcn.14019c1f0
test eax, eax
jne 0x14017dab6
mov ecx, 0xbfff
and word [rbx + 0x14], cx
xor edx, edx
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x14017b7c4
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
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
nop word [rax + rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14017b8de
mov r8d, 0x4000
mov rdx, rdi
mov rcx, rbx
call fcn.14019b3d0
jmp 0x14017b90b
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 0x14017b90b
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 0x14017b95e
test al, 0x12
je 0x14017b951
bt ax, 0xa
jae 0x14017b931
mov rcx, rbx
call fcn.1401856d0
test eax, eax
jne 0x14017dab6
cmp dword [rbx + 0x20], 0
je 0x14017b941
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14017b951
mov rcx, rbx
call fcn.14019c1f0
test eax, eax
jne 0x14017dab6
mov eax, 0xbfff
and ax, word [rbx + 0x14]
mov word [rbx + 0x14], ax
bt ax, 0xb
jae 0x14017b978
test byte [r15 + 2], 2
je 0x14017b978
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x14017c145
add rbx, 0x38
add rdi, 0x38
jmp 0x14017b8c0
mov rcx, qword [rsp + 0x48]
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 0x14017b9d3
mov r8d, 0x4000
call fcn.14019b3d0
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
movups xmm0, xmmword [rdx]
mov r15, qword [rsp + 0x48]
mov r8d, 0x2000
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 0x14], r8w
jne 0x14017b535
mov eax, 0xcfff
and word [rcx + 0x14], ax
mov eax, 0x4000
or word [rcx + 0x14], ax
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rcx, qword [rsp + 0x48]
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 0x14017ba62
mov rdx, rax
mov rcx, r8
call fcn.14019d380
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
cmp qword [rsi + 0x50], 0
jg 0x140182fd4
mov r12d, edx
mov dword [rsp + 0x50], edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
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 0x14017bb44
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14017bb21
mov rcx, rbx
call fcn.14019c2a0
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r14, qword [rsp + 0x78]
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov word [rbx + 0x14], 1
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
test r15b, 0x12
jne 0x14017bb77
xor r8d, r8d
movzx edx, r9b
mov rcx, r14
call fcn.140186160
test eax, eax
jne 0x14017dabb
movzx r15d, word [r14 + 0x14]
mov r12d, 0xfffd
and r15w, r12w
mov eax, 0x400
jmp 0x14017bb92
mov eax, 0x400
test ax, r15w
je 0x14017bb8c
mov rcx, r14
call fcn.1401856d0
jmp 0x14017bb59
mov r12d, 0xfffd
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x14017bbae
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rdi
call fcn.140186160
jmp 0x14017bbbb
test ax, si
je 0x14017bbcb
mov rcx, rdi
call fcn.1401856d0
test eax, eax
jne 0x14017dab6
movzx esi, word [rdi + 0x14]
and si, r12w
mov edx, dword [rdi + 0x10]
add edx, dword [r14 + 0x10]
movsxd rax, dword [r13 + 0x88]
movsxd r12, edx
cmp r12, rax
jg 0x1401832ad
xor eax, eax
mov rcx, rbx
mov r8d, eax
cmp rbx, rdi
sete r8b
add edx, 2
call fcn.140185960
test eax, eax
jne 0x14017dab6
movzx eax, word [rbx + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rbx + 0x14], ax
cmp rbx, rdi
je 0x14017bc32
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call sub.VCRUNTIME140.dll_memcpy
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 sub.VCRUNTIME140.dll_memcpy
movzx r9d, byte [rsp + 0x40]
mov word [r14 + 0x14], r15w
cmp r9b, 1
jbe 0x14017bc5c
and r12, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov r14, qword [rsp + 0x78]
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 r12d, dword [rsp + 0x50]
mov byte [rbx + 0x16], r9b
jmp 0x14017b530
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, r11
add rsi, r11
movsxd rax, dword [rax + 0xc]
movzx ecx, word [rsi + 0x14]
movzx ebx, word [rdi + 0x14]
imul r14, rax, 0x38
movzx eax, cl
and al, bl
add r14, r11
test al, 4
jne 0x14017bd14
or cl, bl
test cl, 1
jne 0x14017c046
and bx, 0x2d
jne 0x14017bcf6
mov rcx, rdi
call fcn.1400ba9f0
movzx ebx, ax
movzx eax, word [rsi + 0x14]
and ax, 0x2d
jne 0x14017bd08
mov rcx, rsi
call fcn.1400ba9f0
and al, bl
test al, 4
je 0x14017befb
xor edx, edx
mov rax, qword [rsp + 0x48]
mov r9, qword [rdi]
mov r8, qword [rsi]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x14017be9e
sub ecx, 1
je 0x14017be31
sub ecx, 1
je 0x14017bd96
cmp ecx, 1
je 0x14017bd64
test r9, r9
je 0x14017c046
cmp r9, 0xffffffffffffffff
mov eax, 1
cmove r9, rax
mov rax, r8
cqo
idiv r9
mov r8, rdx
jmp 0x14017bebd
test r9, r9
je 0x14017c046
cmp r9, 0xffffffffffffffff
jne 0x14017bd86
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x14017befb
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x14017bebd
test r9, r9
jle 0x14017bdcc
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x14017befb
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x14017be28
jmp 0x14017befb
jns 0x14017be28
test r8, r8
jle 0x14017bdec
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x14017be28
jmp 0x14017befb
jns 0x14017be28
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x14017befb
cmp r8, rcx
je 0x14017befb
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x14017befb
imul r8, r9
jmp 0x14017bebd
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x14017be4e
test r8, r8
jns 0x14017befb
sub r8, rcx
jmp 0x14017bebd
neg r9
js 0x14017be71
test r8, r8
jle 0x14017be93
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x14017be93
mov eax, 1
jmp 0x14017be98
test r8, r8
jns 0x14017be93
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x14017be93
mov eax, 1
jmp 0x14017be98
add r8, r9
mov eax, edx
test eax, eax
jne 0x14017befb
jmp 0x14017bebd
test r9, r9
js 0x14017bee0
test r8, r8
jle 0x14017beba
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x14017befb
add r8, r9
mov rsi, qword [rsp + 0x68]
mov ecx, 0xf244
mov qword [r14], r8
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
jmp 0x14017baf2
test r8, r8
jns 0x14017beba
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x14017beba
movzx eax, word [rdi + 0x14]
test al, 8
je 0x14017bf09
movsd xmm2, qword [rdi]
jmp 0x14017bf2c
test al, 0x24
je 0x14017bf17
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x14017bf2c
test al, 0x12
je 0x14017bf28
mov rcx, rdi
call fcn.1401109b0
movaps xmm2, xmm0
jmp 0x14017bf2c
movaps xmm2, xmm8
movzx eax, word [rsi + 0x14]
test al, 8
je 0x14017bf3a
movsd xmm0, qword [rsi]
jmp 0x14017bf5a
test al, 0x24
je 0x14017bf48
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
jmp 0x14017bf5a
test al, 0x12
je 0x14017bf56
mov rcx, rsi
call fcn.1401109b0
jmp 0x14017bf5a
movaps xmm0, xmm8
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x14017c037
sub ecx, 1
je 0x14017c031
sub ecx, 1
je 0x14017c02b
cmp ecx, 1
je 0x14017c01c
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14017bf95
mov rbx, qword [rdi]
xor ecx, ecx
jmp 0x14017bfc7
test al, 8
je 0x14017bfa9
movsd xmm0, qword [rdi]
call fcn.1400be140
mov rbx, rax
xor ecx, ecx
jmp 0x14017bfc7
test al, 0x12
je 0x14017bfc3
cmp qword [rdi + 8], 0
je 0x14017bfc3
mov rcx, rdi
call fcn.140110980
mov rbx, rax
xor ecx, ecx
jmp 0x14017bfc7
xor ecx, ecx
mov ebx, ecx
movzx eax, word [rsi + 0x14]
test al, 0x24
je 0x14017bfd4
mov rax, qword [rsi]
jmp 0x14017bffb
test al, 8
je 0x14017bfe3
movsd xmm0, qword [rsi]
call fcn.1400be140
jmp 0x14017bffb
test al, 0x12
je 0x14017bff8
cmp qword [rsi + 8], 0
je 0x14017bff8
mov rcx, rsi
call fcn.140110980
jmp 0x14017bffb
mov rax, rcx
test rbx, rbx
je 0x14017c046
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x14017c03b
ucomisd xmm2, xmm8
jp 0x14017c025
je 0x14017c046
divsd xmm0, xmm2
jmp 0x14017c03b
mulsd xmm0, xmm2
jmp 0x14017c03b
subsd xmm0, xmm2
jmp 0x14017c03b
addsd xmm0, xmm2
ucomisd xmm0, xmm0
setp al
cmp al, 1
jne 0x14017c075
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x14017c064
mov rcx, r14
call fcn.14019c2a0
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
mov rsi, qword [rsp + 0x68]
mov word [r14 + 0x14], 1
jmp 0x14017baf2
mov rsi, qword [rsp + 0x68]
mov ecx, 0xf248
movsd qword [r14], xmm0
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 8
mov word [r14 + 0x14], ax
jmp 0x14017baf2
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x14017b626
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14017c0d3
xor edx, edx
call fcn.14019d380
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
mov qword [rcx], rdx
mov word [rcx + 0x14], 4
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, r11
add rcx, r11
movsxd rax, dword [rax + 0xc]
movzx edx, word [rcx + 0x14]
imul rsi, rax, 0x38
movzx eax, dl
or al, byte [rdi + 0x14]
add rsi, r11
test al, 1
je 0x14017c179
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x14017c154
mov rcx, rsi
call fcn.14019c2a0
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
xor edx, edx
mov word [rsi + 0x14], 1
mov rsi, qword [rsp + 0x68]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov eax, edx
test dl, 0x24
je 0x14017c188
mov rbx, qword [rcx]
xor r15d, r15d
jmp 0x14017c1bb
test al, 8
je 0x14017c19d
movsd xmm0, qword [rcx]
call fcn.1400be140
mov rbx, rax
xor r15d, r15d
jmp 0x14017c1bb
test al, 0x12
je 0x14017c1b5
cmp qword [rcx + 8], 0
je 0x14017c1b5
call fcn.140110980
mov rbx, rax
xor r15d, r15d
jmp 0x14017c1bb
xor r15d, r15d
mov ebx, r15d
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14017c1c8
mov rdx, qword [rdi]
jmp 0x14017c1f5
test al, 8
je 0x14017c1da
movsd xmm0, qword [rdi]
call fcn.1400be140
mov rdx, rax
jmp 0x14017c1f5
test al, 0x12
je 0x14017c1f2
cmp qword [rdi + 8], 0
je 0x14017c1f2
mov rcx, rdi
call fcn.140110980
mov rdx, rax
jmp 0x14017c1f5
mov rdx, r15
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
cmp cl, 0x66
jne 0x14017c207
and rbx, rdx
jmp 0x14017c27b
cmp cl, 0x67
jne 0x14017c211
or rbx, rdx
jmp 0x14017c27b
test rdx, rdx
je 0x14017c27b
jns 0x14017c22b
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x14017c231
neg rdx
cmp rdx, 0x40
jl 0x14017c249
test rbx, rbx
jns 0x14017c244
cmp cl, 0x68
je 0x14017c244
mov rbx, 0xffffffffffffffff
jmp 0x14017c27b
mov rbx, r15
jmp 0x14017c27b
cmp cl, 0x68
mov rcx, rdx
jne 0x14017c259
shl rbx, cl
mov r8, rbx
jmp 0x14017c278
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x14017c278
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
mov r15, qword [rsp + 0x48]
mov ecx, 0xf244
mov r11, qword [rsp + 0x58]
mov qword [rsi], rbx
movzx eax, word [rsi + 0x14]
and ax, cx
or ax, 4
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140185ae0
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [r15 + 8]
add qword [rbx], rax
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x14017c340
test cl, 0x28
jne 0x14017c30b
test cl, 2
je 0x14017c315
mov edx, 1
mov rcx, rbx
call fcn.1400b02e0
mov r11, qword [rsp + 0x58]
jmp 0x14017c313
mov rcx, rbx
call fcn.140184be0
xor edx, edx
movzx eax, word [rbx + 0x14]
movzx ecx, ax
test al, 4
jne 0x14017c340
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], 0
jne 0x14017cc11
mov r12d, 0x14
mov r15, qword [rsp + 0x60]
jmp 0x14017f8e1
mov r15, qword [rsp + 0x48]
mov eax, 0xf244
movzx r9d, byte [rsp + 0x40]
and cx, ax
mov r10d, dword [rsp + 0x54]
or cx, 4
mov word [rbx + 0x14], cx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x14017b626
test al, 8
je 0x14017c399
movsd xmm0, qword [rcx]
jmp 0x14017c3a1
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r15, qword [rsp + 0x48]
mov r8d, 0xf248
and ax, r8w
movsd qword [rcx], xmm0
or ax, 8
mov word [rcx + 0x14], ax
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x14017c3fd
mov rcx, rbx
call fcn.1401856d0
mov r12d, eax
test eax, eax
jne 0x14017c336
mov rax, qword [rsp + 0x48]
mov rcx, rbx
movzx r8d, byte [rsp + 0x40]
movzx edx, byte [rax + 8]
call fcn.1401854b0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rcx, qword [rsp + 0x48]
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 0x14017c4f1
mov rax, qword [r14]
cmp rax, qword [r15]
jle 0x14017c47f
mov rax, qword [0x14020e400]
xor edx, edx
cmp byte [rbx + rax], dl
jmp 0x14017c555
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
jge 0x14017c4c0
mov rax, qword [0x14020e3f0]
xor edx, edx
cmp byte [rbx + rax], dl
jne 0x14017cc11
mov rsi, qword [rsp + 0x68]
mov r10d, 0xffffffff
mov dword [rsp + 0x54], r10d
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [0x14020e3f8]
xor edx, edx
cmp byte [rbx + rax], dl
jne 0x14017cc11
mov rsi, qword [rsp + 0x68]
mov r10d, edx
mov dword [rsp + 0x54], edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
movzx eax, di
or ax, si
test al, 1
je 0x14017c589
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
test al, al
jns 0x14017c553
test cl, 1
je 0x14017c538
mov eax, 0x100
test ax, di
jne 0x14017c538
mov rax, qword [rsp + 0x48]
mov dword [rsp + 0x54], edx
mov r10d, dword [rsp + 0x54]
movzx edx, byte [rax]
mov rax, qword [0x14020e3f8]
jmp 0x14017c6a9
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x54], r10d
jmp 0x14017c666
test al, 0x10
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
jne 0x14017cc11
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x54], eax
mov rsi, qword [rsp + 0x68]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
movzx ecx, byte [rbx + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x14017c5d5
test al, 2
je 0x14017c64b
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x14017c5bb
xor edx, edx
mov rcx, r15
call fcn.1400b02e0
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x14017c64b
xor edx, edx
mov rcx, r14
call fcn.1400b02e0
jmp 0x14017c64b
cmp cl, 0x42
jne 0x14017c64b
test al, 2
je 0x14017c64b
test sil, 2
jne 0x14017c61b
test sil, 0x2c
je 0x14017c61b
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.140186160
xor si, word [r15 + 0x14]
mov r13d, 0xdbf
and si, r13w
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x14017c621
movzx edi, si
or di, 2
jmp 0x14017c621
mov r13d, 0xdbf
test dil, 2
jne 0x14017c64b
test dil, 0x2c
je 0x14017c64b
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.140186160
xor di, word [r14 + 0x14]
and di, r13w
xor di, word [r14 + 0x14]
mov r8, qword [rbx + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.140161100
mov r11, qword [rsp + 0x58]
mov r10d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
mov ecx, r10d
movzx r9d, si
test r10d, r10d
jns 0x14017c687
movzx ecx, byte [rax]
mov rax, qword [0x14020e3f0]
movzx edx, byte [rcx + rax]
jmp 0x14017c6ad
movzx edx, byte [rax]
mov dword [rsp + 0x54], ecx
test ecx, ecx
jne 0x14017c69e
mov rax, qword [0x14020e3f8]
mov r10d, ecx
jmp 0x14017c6a9
mov rax, qword [0x14020e400]
mov dword [rsp + 0x54], ecx
movzx edx, byte [rdx + rax]
mov word [r14 + 0x14], di
mov r14, qword [rsp + 0x78]
mov word [r15 + 0x14], si
mov r15, qword [rsp + 0x48]
test dl, dl
jne 0x14017cc0f
mov rsi, qword [rsp + 0x68]
xor edx, edx
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
test r10d, r10d
je 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x14017c715
mov r13, rdx
jmp 0x14017c71d
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
mov edi, edx
mov r8d, dword [rax + 4]
mov rbx, rdx
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x68], rcx
mov dword [rbp - 0x78], r8d
mov dword [rbp - 0x80], r9d
mov qword [rbp - 0x58], rax
test rax, rax
jle 0x140182ea5
lea r14, [rcx + 0x20]
nop
test r13, r13
je 0x14017c75c
mov edx, dword [r13 + rbx*4]
jmp 0x14017c75e
mov edx, edi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r12, rcx, 0x38
movzx esi, byte [rax + rbx]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r12, r11
imul r15, rcx, 0x38
mov rdx, r12
and esi, 1
add r15, r11
mov rcx, r15
call fcn.140161100
mov dword [rsp + 0x54], eax
mov r10d, eax
test eax, eax
jne 0x14017c7d2
mov rcx, qword [rbp - 0x68]
inc edi
mov r8d, dword [rbp - 0x78]
inc rbx
mov r9d, dword [rbp - 0x80]
add r14, 8
mov r11, qword [rsp + 0x58]
cmp rbx, qword [rbp - 0x58]
jl 0x14017c750
mov r12d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
movzx r9d, byte [rsp + 0x40]
jmp 0x14017bb07
mov rax, qword [rbp - 0x68]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x14017c7f7
test byte [r15 + 0x14], 1
jne 0x14017c7ef
test byte [r12 + 0x14], 1
je 0x14017c7f7
neg r10d
mov dword [rsp + 0x54], r10d
mov r12d, dword [rsp + 0x50]
test esi, esi
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x78]
je 0x14017b535
neg r10d
mov dword [rsp + 0x54], r10d
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
test r10d, r10d
jns 0x14017c867
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
jne 0x14017c88b
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov r13, qword [rsp + 0x48]
mov edi, 2
mov edx, edi
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14017a490
movsxd rcx, dword [r13 + 8]
mov edx, edi
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, qword [rsp + 0x58]
call fcn.14017a490
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rdx, eax
mov rax, r13
cmp byte [rax], 0x2c
jne 0x14017c900
movzx edx, byte [rdx + rcx + 0x1d10a8]
jmp 0x14017c908
movzx edx, byte [rdx + rcx + 0x1d10b8]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x58]
imul rcx, rax, 0x38
add rcx, r11
cmp dl, dil
jne 0x14017c939
movzx eax, word [rcx + 0x14]
mov edx, 0xf241
and ax, dx
mov r15, r13
or ax, 1
mov word [rcx + 0x14], ax
jmp 0x14017b52a
movzx eax, dl
mov r15, r13
mov qword [rcx], rax
mov edx, 0xf244
movzx eax, word [rcx + 0x14]
and ax, dx
or ax, 4
mov word [rcx + 0x14], ax
jmp 0x14017b52a
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14017a490
movsxd rdx, dword [rbx + 0x10]
mov r11, qword [rsp + 0x58]
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 0x14017c9ad
call fcn.14019d380
mov r11, qword [rsp + 0x58]
mov r15, rbx
jmp 0x14017b52a
mov qword [rcx], rdx
mov r15, rbx
mov word [rcx + 0x14], 4
jmp 0x14017b52a
mov rbx, qword [rsp + 0x48]
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 0x1401824f0
test al, 0x24
je 0x14017c9f5
cmp qword [rcx], 0
mov rax, rdx
sete al
jmp 0x14017ca22
test al, 8
je 0x14017c9ff
movsd xmm0, qword [rcx]
jmp 0x14017ca0f
test al, 0x12
je 0x14017ca1d
call fcn.1401109b0
mov r11, qword [rsp + 0x58]
xor edx, edx
ucomisd xmm0, xmm8
jp 0x14017ca18
je 0x14017ca1d
mov rax, rdx
jmp 0x14017ca22
mov eax, 1
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x14017ca47
mov rdx, rax
mov rcx, rbx
call fcn.14019d380
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
mov qword [rbx], rax
mov word [rbx + 0x14], 4
jmp 0x14017b2fd
mov r15, qword [rsp + 0x48]
mov word [rbx + 0x14], 1
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rbx, r11
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, r11
test word [rdi + 0x14], ax
je 0x14017cab4
mov rcx, rdi
call fcn.14019c2a0
mov r11, qword [rsp + 0x58]
xor edx, edx
jmp 0x14017caba
mov word [rdi + 0x14], 1
test byte [rbx + 0x14], 1
jne 0x140180364
mov word [rdi + 0x14], 4
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x14017caea
mov rax, qword [rbx]
mov r15, qword [rsp + 0x48]
not rax
mov r11, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x14017b52a
test al, 8
je 0x14017cb0c
movsd xmm0, qword [rbx]
call fcn.1400be140
mov r15, qword [rsp + 0x48]
not rax
mov r11, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x14017b52a
test al, 0x12
je 0x14017cb34
cmp qword [rbx + 8], 0
je 0x14017cb34
mov rcx, rbx
call fcn.140110980
mov r15, qword [rsp + 0x48]
not rax
mov r11, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
mov rax, rdx
mov r11, qword [rsp + 0x58]
not rax
mov qword [rdi], rax
jmp 0x14017b52a
mov r8, qword [rsi + 0x108]
test r8, r8
je 0x14017cba1
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsi + 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 0x14017cc0a
bts eax, edx
mov byte [rcx + r9], al
xor edx, edx
jmp 0x14017cbb9
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x14017ee6b
mov rax, qword [rsi + 0x88]
mov r15, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r15 + 4], ecx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rcx, r11
mov edx, dword [rax + 0xc]
call fcn.14017a490
test eax, eax
je 0x14017b359
mov r15, qword [rsp + 0x48]
xor edx, edx
mov eax, dword [r15 + 8]
mov rsi, qword [rsp + 0x68]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r14 + rcx*8]
jmp 0x14017b2f8
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.14017a490
test eax, eax
jne 0x14017b359
jmp 0x14017cc0a
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x14017ccf1
mov rcx, rax
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0xc]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x14017ccdb
mov ecx, dword [rcx + rdx*4 + 0x70]
cmp ecx, 0xc
jb 0x14017ccc5
test cl, 1
mov eax, 4
mov ecx, 8
cmove ax, cx
xor edx, edx
jmp 0x14017cd1b
mov rax, rcx
xor edx, edx
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x1d10c8]
jmp 0x14017cd1b
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0x10]
mov eax, 1
dec ecx
shl ax, cl
xor edx, edx
jmp 0x14017cd1b
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 + 0x1cfb80]
mov eax, 1
dec ecx
shl ax, cl
mov r15, qword [rsp + 0x48]
test word [r15 + 2], ax
jne 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14017cdaf
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14017cdaf
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14017cd90
xor edx, edx
call fcn.14019d380
mov r11, qword [rsp + 0x58]
mov r15, rbx
jmp 0x14017b52a
mov qword [rcx], rdx
mov r15, rbx
mov word [rcx + 0x14], 4
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, rbx
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14017cdda
call fcn.14019c2a0
mov r11, qword [rsp + 0x58]
mov r15, rbx
jmp 0x14017b52a
mov word [rcx + 0x14], 1
mov r15, rbx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14017ee9a
cmp byte [rdx + 2], 0
je 0x14017ee9a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14017ce70
call fcn.14019c2a0
jmp 0x14017cc0a
mov word [rcx + 0x14], 1
jmp 0x14017cc0a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov r14d, dword [rcx + 8]
mov dword [rbp - 0x80], r14d
nop dword [rax]
mov r13, qword [rbx + 0x58]
mov eax, dword [rsi + 0x2c]
mov qword [rbp - 0x58], r13
cmp dword [rbx + 0x20], eax
je 0x14017cee9
cmp byte [rbx + 2], 0
jne 0x14017cf62
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x14017cee2
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14017cf13
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x14017cf13
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x14017ce95
cmp byte [rdi], 0
je 0x14017cf2a
jmp 0x14017cef6
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x14017d032
mov rcx, rbx
call fcn.140184970
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
je 0x14017cea0
mov r15, qword [rsp + 0x60]
jmp 0x14017f8dc
mov rcx, rbx
call fcn.140184300
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
mov rcx, rdi
call fcn.140106840
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 0x14017cf59
test edx, edx
mov ecx, edx
mov eax, 0
cmovs ecx, eax
mov dword [rbx + 0x6c], ecx
mov rcx, qword [rdi + 0x38]
jmp 0x14017cf8d
cmp byte [rbx], 3
jne 0x14017cffe
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x14017cffe
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
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 [rsi + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
cmp eax, 0x80
jae 0x14017cfac
mov eax, 1
jmp 0x14017cfbb
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.14015beb0
movzx eax, al
mov edx, 0x40
mov rcx, rbx
mov dword [rbx + rdx], eax
xor edx, edx
mov word [rbx + 0x4a], dx
mov eax, dword [r13]
cmp dword [rbx + 0x6c], eax
jae 0x14017cff5
mov qword [rbx + 0x60], rdx
mov dword [rbx + 0x6c], edx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x14017d28d
cmp eax, dword [rbx + 0x68]
jbe 0x14017d034
jmp 0x14017d28d
mov rax, qword [rbx + 0x60]
jmp 0x14017d0e6
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
jne 0x14017baed
mov r15, qword [rsp + 0x48]
mov word [rcx + 0x14], 1
jmp 0x14017bafc
xor edx, edx
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x14017d32a
mov eax, dword [r13]
cmp dword [rbx + 0x40], eax
jae 0x14017d2ba
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x14017d0ea
mov qword [rbp + 0x28], rax
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
movups xmmword [rbp + 8], xmm0
movups xmmword [rbp + 0x18], 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 0x14017d09f
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
jmp 0x14017d0a1
xor edx, edx
mov rax, qword [r10 + 0x38]
mov qword [rbp - 0x68], rax
mov qword [rbp], rax
cmp r8d, ecx
ja 0x14017d0c5
mov ecx, 0x4010
mov dword [rbp + 8], r8d
mov word [rbp + 0xc], cx
mov dword [rsp + 0x50], edx
jmp 0x14017d0ea
lea r9, [rbp - 8]
xor edx, edx
mov rcx, r10
call fcn.140185800
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
mov rax, qword [rbp]
mov qword [rbp - 0x68], rax
movzx r12d, word [rbx + 0x4a]
mov esi, dword [rbx + 0x40]
mov r14d, r12d
mov rcx, qword [rbp - 0x58]
add rsi, rax
mov r15d, dword [r13 + r12*4]
mov r13d, dword [r13]
add r13, rax
nop dword [rax + rax]
movzx edi, byte [rsi]
mov dword [rbp - 0x78], edi
mov dword [rbx + r14*4 + 0x70], edi
cmp edi, 0x80
jae 0x14017d137
lea rdx, [0x140000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x1cf4e0]
jmp 0x14017d173
lea rdx, [rbp - 0x78]
mov rcx, rsi
call fcn.14015beb0
mov edi, dword [rbp - 0x78]
movzx eax, al
add rsi, rax
mov dword [rbx + r14*4 + 0x70], edi
cmp edi, 0x80
jb 0x14017d160
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x14017d16f
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x1cf4e0]
mov rcx, qword [rbp - 0x58]
inc r12d
add r15, rax
movsxd r14, r12d
mov dword [rcx + r14*4], r15d
cmp r12d, dword [rbp - 0x80]
ja 0x14017d18d
cmp rsi, r13
jb 0x14017d110
jmp 0x14017d196
cmp rsi, r13
jb 0x14017d247
cmp rsi, r13
ja 0x14017d253
mov eax, dword [rbx + 0x68]
cmp r15, rax
jne 0x14017d253
xor edx, edx
sub esi, dword [rbp - 0x68]
mov r8d, 0x9000
mov word [rbx + 0x4a], r12w
mov dword [rbx + 0x40], esi
cmp qword [rbx + 0x60], 0
jne 0x14017d1e3
test word [rbp + 0xc], r8w
jne 0x14017d1d2
cmp dword [rbp + 0x18], 0
je 0x14017d1e3
lea rcx, [rbp - 8]
call fcn.14019c250
xor edx, edx
mov r8d, 0x9000
mov r13, qword [rbp - 0x58]
mov r14d, dword [rbp - 0x80]
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x14017d331
mov r12, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
cmp byte [r12 + 1], 0xf6
jne 0x14017d304
test word [rcx + 0x14], r8w
mov r8d, 0x2000
mov rax, qword [r12 + 0x10]
je 0x14017d2c7
mov rdx, rax
call fcn.14019b3d0
mov r12d, dword [rsp + 0x50]
jmp 0x14017baf2
mov eax, dword [rbx + 0x68]
cmp r15, rax
jbe 0x14017d1ab
cmp dword [rcx], 0
jne 0x14017d265
xor edx, edx
mov rsi, r13
mov r12d, edx
jmp 0x14017d1ad
cmp qword [rbx + 0x60], 0
jne 0x14017d286
mov eax, 0x9000
test word [rbp + 0xc], ax
jne 0x14017d27d
cmp dword [rbp + 0x18], 0
je 0x14017d286
lea rcx, [rbp - 8]
call fcn.14019c250
mov rsi, qword [rsp + 0x68]
xor edx, edx
mov r14, qword [rsp + 0x78]
mov eax, dword [r14 + 0xc]
test eax, eax
jle 0x14018300f
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r12, [r14 + rax*8]
mov qword [rsp + 0x48], r12
mov r12d, dword [rsp + 0x50]
jmp 0x14017b2f3
mov edi, edx
mov r8d, 0x9000
jmp 0x14017d1f0
movups xmm0, xmmword [rax]
mov r12d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rax + 0x14], r8w
jne 0x14017fa2b
mov eax, 0xafff
and word [rcx + 0x14], ax
or word [rcx + 0x14], r8w
jmp 0x14017b2fd
test word [rcx + 0x14], r8w
je 0x14017d31a
call fcn.14019c2a0
mov r12d, dword [rsp + 0x50]
jmp 0x14017baf2
mov r12d, dword [rsp + 0x50]
mov word [rcx + 0x14], 1
jmp 0x14017f450
mov eax, r14d
mov edi, dword [rbx + rax*4 + 0x70]
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rdx + 0xc]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [rsp + 0x58]
test word [rsi + 0x14], ax
je 0x14017d35b
mov rcx, rsi
call fcn.14019c2a0
mov rdx, qword [rsp + 0x48]
lea eax, [r14 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x14017d42e
mov eax, r14d
mov r14d, dword [r13 + rax*4]
add r14, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x14017d39a
mov rcx, r14
mov edx, edi
mov r8, rsi
call fcn.140187b20
mov r12d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
movzx eax, byte [rsp + 0x40]
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 0x14017d3df
mov r13, qword [rsp + 0x60]
cmp ebx, dword [r13 + 0x88]
jg 0x14018328b
xor r8d, r8d
mov word [rsi + 0x14], 1
mov rcx, rsi
call fcn.140185960
test eax, eax
jne 0x14017dab6
jmp 0x14017d3e7
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsi + 8]
lea rcx, [0x140000000]
mov r12d, dword [rsp + 0x50]
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 + 0x1d1120]
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
movzx eax, byte [rsp + 0x40]
mov byte [rsi + 0x16], al
movzx eax, word [rdx + 2]
test al, 0xc0
je 0x14017d44d
cmp edi, 0xc
jb 0x14017d449
test dil, 1
je 0x14017d475
test al, al
js 0x14017d475
cmp edi, 0x80
jb 0x14017d45e
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x14017d470
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x1cf4e0]
test r8d, r8d
jne 0x14017d481
lea rcx, [0x1401cf830]
jmp 0x14017d381
mov r15, qword [rsp + 0x60]
cmp r8d, dword [r15 + 0x88]
jg 0x14018328e
mov rcx, qword [rbx + 0x30]
mov r9, rsi
mov edx, r14d
mov edx, dword [r13 + rdx*4]
call fcn.140185800
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017f8d7
mov rcx, qword [rsi + 8]
mov r8, rsi
mov edx, edi
call fcn.140187b20
mov eax, 0xbfff
and word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
mov rax, qword [rsp + 0x48]
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 0x140182e9b
lea rdi, [r15 + 0xc]
movzx eax, word [rdi + 6]
test al, 0x60
je 0x14017d51f
test al, 0x20
jne 0x14017d662
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
jne 0x14017d65e
movzx eax, byte [rdi]
cmp al, 0x43
jl 0x14017d59a
movzx edx, word [rbx + 0x14]
test dl, 4
jne 0x14017d5c2
test dl, 0x28
jne 0x14017d550
test dl, 2
je 0x14017d5c2
mov edx, 1
mov rcx, rbx
call fcn.1400b02e0
jmp 0x14017d5c2
cmp al, 0x45
jg 0x14017d5c2
test dl, 0x20
jne 0x14017d588
movsd xmm0, qword [rbx]
call fcn.1400be140
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm0, xmm2
jp 0x14017d5c2
jne 0x14017d5c2
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x14017d5c2
mov qword [rbx], rax
mov eax, 0xf244
and dx, ax
or dx, 4
mov word [rbx + 0x14], dx
jmp 0x14017d5c2
cmp al, 0x42
jne 0x14017d5c2
movzx eax, word [rbx + 0x14]
test al, 2
jne 0x14017d5b9
test al, 0x2c
je 0x14017d5b9
mov r8b, 1
movzx edx, r9b
mov rcx, rbx
call fcn.140186160
mov eax, 0xffd3
and word [rbx + 0x14], ax
movzx ecx, word [rbx + 0x14]
movzx edx, cx
test cl, 1
jne 0x14017d65e
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x14017d655
sub eax, 1
je 0x14017d650
sub eax, 1
je 0x14017d650
sub eax, 1
je 0x14017d5f9
cmp eax, 1
jne 0x14017d65e
test cl, 2
jmp 0x14017d658
test cl, 4
je 0x14017d64b
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rbx
ja 0x14017d626
or cx, 0x20
jmp 0x14017d636
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
mov edx, 0x14
mov r8d, 0xfffb
and cx, r8w
mov word [rax + rdx], cx
jmp 0x14017d65e
test cl, 0x28
jmp 0x14017d658
test cl, 4
jmp 0x14017d658
test cl, 0x10
je 0x140183026
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
movzx r9d, byte [rsp + 0x40]
add rdi, 0x18
cmp esi, eax
jl 0x14017d500
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
nop dword [rax]
cmp al, 0x43
jl 0x14017d718
movzx edx, word [rbx + 0x14]
test dl, 4
jne 0x14017d740
test dl, 0x28
jne 0x14017d6ce
test dl, 2
je 0x14017d740
mov edx, 1
mov rcx, rbx
call fcn.1400b02e0
jmp 0x14017d740
cmp al, 0x45
jg 0x14017d740
test dl, 0x20
jne 0x14017d706
movsd xmm0, qword [rbx]
call fcn.1400be140
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm0, xmm2
jp 0x14017d740
jne 0x14017d740
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x14017d740
mov qword [rbx], rax
mov eax, 0xf244
and dx, ax
or dx, 4
mov word [rbx + 0x14], dx
jmp 0x14017d740
cmp al, 0x42
jne 0x14017d740
movzx eax, word [rbx + 0x14]
test al, 2
jne 0x14017d737
test al, 0x2c
je 0x14017d737
mov r8b, 1
movzx edx, r9b
mov rcx, rbx
call fcn.140186160
mov eax, 0xffd3
and word [rbx + 0x14], ax
cmp byte [rdi], 0x45
jne 0x14017d792
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x14017d792
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x14017d77b
and cx, ax
or cx, 0x20
jmp 0x14017d78e
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14017fa1f
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x14017d6a0
mov rcx, qword [rsp + 0x48]
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 - 0x68], r14
add rcx, r11
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x58], rcx
test rdi, rdi
je 0x14017d84d
lea rbx, [r14 + 0x14]
mov r14d, 0xfffb
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
call fcn.1400b0270
cmp byte [rdi], 0x45
jne 0x14017d837
movzx eax, word [rbx]
test al, 4
je 0x14017d837
and ax, r14w
or ax, 0x20
mov word [rbx], ax
movzx r9d, byte [rsp + 0x40]
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x14017d810
mov r14, qword [rbp - 0x68]
lea rdi, [r15 + 0x24]
movzx eax, word [rdi - 0x10]
movzx edx, ax
test al, 1
je 0x14017d87a
inc r12d
mov eax, 0x400
and dx, ax
mov r8d, 1
neg dx
sbb ebx, ebx
and ebx, 0xa
jmp 0x14017da0e
test dl, 0x24
je 0x14017d986
mov r8, qword [rdi - 0x24]
mov rcx, r8
test r8, r8
jns 0x14017d892
not rcx
inc r12d
cmp rcx, 0x7f
ja 0x14017d8d2
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x14017d8c2
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0xc3], 4
jb 0x14017d8c2
lea ebx, [rcx + 8]
mov r8d, 1
jmp 0x14017da0e
mov ebx, 1
inc rsi
mov r8d, ebx
jmp 0x14017da0e
cmp rcx, 0x7fff
ja 0x14017d8ed
mov ebx, 2
add rsi, 2
lea r8d, [rbx - 1]
jmp 0x14017da0e
cmp rcx, 0x7fffff
ja 0x14017d908
mov ebx, 3
add rsi, 3
lea r8d, [rbx - 2]
jmp 0x14017da0e
cmp rcx, 0x7fffffff
ja 0x14017d923
mov ebx, 4
add rsi, 4
lea r8d, [rbx - 3]
jmp 0x14017da0e
movabs r9, 0x7fffffffffff
cmp rcx, r9
ja 0x14017d944
mov ebx, 5
add rsi, 6
lea r8d, [rbx - 4]
jmp 0x14017da0e
add rsi, 8
test dl, 0x20
je 0x14017d978
xorps xmm0, xmm0
mov ecx, 0xffdf
cvtsi2sd xmm0, r8
mov ebx, 7
and ax, cx
or ax, 8
lea r8d, [rbx - 6]
movsd qword [rdi - 0x24], xmm0
mov word [rdi - 0x10], ax
jmp 0x14017da0e
mov ebx, 6
lea r8d, [rbx - 5]
jmp 0x14017da0e
test dl, 8
je 0x14017d99d
mov ebx, 7
inc r12d
add rsi, 8
lea r8d, [rbx - 6]
jmp 0x14017da0e
mov r15d, dword [rdi - 0x14]
mov eax, edx
shr eax, 1
and eax, 1
bt dx, 0xa
lea ebx, [r15 + 6]
lea ebx, [rax + rbx*2]
jae 0x14017d9e0
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x14017d9d9
lea rcx, [rdi - 0x24]
call fcn.1401856d0
test eax, eax
jne 0x1401835e7
add r15d, dword [rdi - 0x24]
jmp 0x14017d9dc
add r13, rax
mov r14, qword [rbp - 0x68]
mov eax, r15d
mov r8d, 1
add rsi, rax
mov ecx, r8d
mov eax, ebx
shr rax, 7
test rax, rax
je 0x14017da0b
nop word [rax + rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x14017da00
add r12d, ecx
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r14
je 0x14017da25
sub rdi, 0x38
jmp 0x14017d851
cmp r12d, 0x7e
jle 0x14017da6f
movsxd rax, r12d
mov edx, r8d
shr rax, 7
test rax, rax
je 0x14017da4b
nop word [rax + rax]
inc edx
shr rax, 7
test rax, rax
jne 0x14017da40
add r12d, edx
mov ecx, r8d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x14017da6b
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x14017da60
cmp edx, ecx
jge 0x14017da72
inc r12d
mov rdi, qword [rbp - 0x58]
movsxd rbx, r12d
add rbx, rsi
movsxd rdx, dword [rdi + 0x20]
lea rcx, [rbx + r13]
cmp rcx, rdx
jle 0x14017dae7
mov r15, qword [rsp + 0x60]
movsxd rax, dword [r15 + 0x88]
cmp rcx, rax
jg 0x14018328e
cmp edx, ebx
jge 0x14017dae7
xor r8d, r8d
mov edx, ebx
mov rcx, rdi
call fcn.140185960
test eax, eax
je 0x14017daef
mov r13, r15
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov rcx, r13
call fcn.140161740
lea rdx, str.out_of_memory
mov rcx, rsi
call fcn.14017af00
mov r15, qword [rsp + 0x60]
mov r12d, 7
jmp 0x14017f8e1
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], ebx
mov word [rdi + 0x14], 0x10
test r13, r13
je 0x14017db06
mov dword [rdi], r13d
mov word [rdi + 0x14], 0x410
mov rbx, qword [rdi + 8]
movsxd rsi, r12d
add rsi, rbx
cmp r12d, 0x80
jge 0x14017db21
mov byte [rbx], r12b
inc rbx
jmp 0x14017db64
movsxd rdx, r12d
cmp rdx, 0x7f
ja 0x14017db36
and dl, 0x7f
mov eax, 1
mov byte [rbx], dl
jmp 0x14017db5f
cmp rdx, 0x3fff
ja 0x14017db57
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rbx], al
and dl, 0x7f
mov byte [rbx + 1], dl
mov eax, 2
jmp 0x14017db5f
mov rcx, rbx
call fcn.1400fa6c0
cdqe
add rbx, rax
lea rdi, [r14 + 0x10]
mov r14, qword [rbp - 0x78]
nop dword [rax]
mov eax, dword [rdi + 0x14]
cmp eax, 7
ja 0x14017dbc5
mov byte [rbx], al
inc rbx
test eax, eax
je 0x14017dc3b
mov rdx, qword [rdi - 0x10]
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x1cf4e0]
mov r10d, 0xffffffff
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + rsi]
mov byte [r8], dl
je 0x14017dbc0
nop dword [rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x14017dbb0
add rsi, r9
jmp 0x14017dc3b
cmp eax, 0x80
jae 0x14017dbdf
mov byte [rbx], al
inc rbx
cmp eax, 0xe
jb 0x14017dc3b
movsxd rax, dword [rdi]
test eax, eax
jle 0x14017dc3b
jmp 0x14017dc26
mov rdx, rax
cmp rax, 0x7f
ja 0x14017dbf4
and dl, 0x7f
mov eax, 1
mov byte [rbx], dl
jmp 0x14017dc1a
cmp rdx, 0x3fff
ja 0x14017dc12
shr rax, 7
or al, 0x80
mov byte [rbx], al
and dl, 0x7f
mov byte [rbx + 1], dl
mov eax, 2
jmp 0x14017dc1a
mov rcx, rbx
call fcn.1400fa6c0
cdqe
add rbx, rax
movsxd rax, dword [rdi]
test eax, eax
je 0x14017dc3b
mov rdx, qword [rdi - 8]
mov r8, rax
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
movsxd rax, dword [rdi]
add rsi, rax
lea rax, [rdi - 0x10]
cmp rax, r14
je 0x14017fa15
add rdi, 0x38
jmp 0x14017db70
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x14017dc79
mov rcx, rdx
call fcn.1401329a0
mov rbx, rax
jmp 0x14017dc9e
xor ebx, ebx
lea r8, [rbp - 0x68]
mov rcx, r13
mov qword [rbp - 0x68], rbx
call fcn.140130360
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017f620
mov rbx, qword [rbp - 0x68]
mov rax, qword [rsp + 0x48]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [rsi + 0x68]
test word [rax + 0x14], cx
je 0x14017dcca
mov rcx, rax
call fcn.140115880
mov qword [rax], rbx
jmp 0x1401826c1
mov word [rax + 0x14], 4
mov qword [rax], rbx
jmp 0x1401826c1
mov rax, qword [rsp + 0x48]
mov r10d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rbp - 0x80], r10d
test r10d, r10d
jne 0x14017de38
cmp dword [r13 + 0xe0], r10d
jg 0x140183095
test rsi, rsi
jne 0x14017dd08
mov ebx, edx
jmp 0x14017dd1f
mov rbx, 0xffffffffffffffff
nop
inc rbx
cmp byte [rsi + rbx], 0
jne 0x14017dd10
and ebx, 0x3fffffff
mov r8d, dword [r13 + 0x2f4]
xor edx, edx
add r8d, dword [r13 + 0x2f0]
mov rcx, r13
call fcn.140189530
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x1401833f0
mov edx, ebx
mov rcx, r13
add rdx, 0x21
call fcn.140138f10
mov rdi, rax
test rax, rax
je 0x14017ddb2
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call sub.VCRUNTIME140.dll_memcpy
cmp byte [r13 + 0x65], r12b
je 0x14017dd83
mov byte [r13 + 0x65], r12b
mov byte [r13 + 0x6d], 1
jmp 0x14017dd8a
inc dword [r13 + 0x2f0]
mov rax, qword [r13 + 0x2e0]
mov qword [rdi + 0x18], rax
mov qword [r13 + 0x2e0], rdi
mov rax, qword [r13 + 0x2f8]
mov qword [rdi + 8], rax
mov rax, qword [r13 + 0x300]
mov qword [rdi + 0x10], rax
mov rsi, qword [rsp + 0x68]
cmp byte [rsi + 0xc5], 3
jne 0x14017b359
mov r8, qword [rsp + 0x60]
mov r12d, 0x65
mov r14, qword [rsp + 0x48]
lea r13d, [r12 - 0x64]
mov rdi, qword [rsp + 0x70]
nop
mov rcx, qword [rbp - 0x50]
cmp rdi, rcx
jb 0x1401838a0
mov rdx, qword [r8 + 0x210]
test rdx, rdx
je 0x1401838a0
mov eax, dword [r8 + 0x220]
add rcx, rax
mov qword [rbp - 0x50], rcx
mov rcx, qword [r8 + 0x218]
call rdx
mov r8, qword [rsp + 0x60]
test eax, eax
je 0x14017dde0
mov r12d, 9
mov qword [rbp - 0x50], 0xffffffffffffffff
mov r15, r8
lea eax, [r12 + 2]
jmp 0x14017f8f1
mov r11, qword [rsp + 0x60]
mov r13d, edx
mov r12, qword [r11 + 0x2e0]
test r12, r12
je 0x14017df44
lea rbx, [0x140000000]
nop word [rax + 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 0x14017df17
test edx, edx
jne 0x14017df2b
cmp dword [r11 + 0xe0], edx
jle 0x14017de9c
cmp r10d, 1
je 0x1401830b9
cmp qword [r12 + 0x18], 0
jne 0x14017df6e
cmp byte [r11 + 0x6d], 0
je 0x14017df6e
mov ebx, 1
mov r15d, ebx
cmp r10d, ebx
jne 0x14017df75
mov rsi, qword [rsp + 0x68]
mov edx, ebx
mov rcx, rsi
call fcn.14017a630
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140183877
mov r15, qword [rsp + 0x60]
mov rcx, rsi
mov byte [r15 + 0x65], bl
call fcn.1401845e0
cmp eax, 5
je 0x1401830d1
mov ecx, dword [rsi + 0x34]
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x1401830c2
mov r11, r15
mov byte [r15 + 0x6d], cl
mov r15d, ebx
jmp 0x14017e088
movzx ecx, byte [rax + rbx + 0x1cf710]
movzx eax, byte [rdx + rbx + 0x1cf710]
cmp eax, ecx
jne 0x14017df33
inc r8
jmp 0x14017de70
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x14017de60
mov r8, rsi
lea rdx, str.no_such_savepoint:__s
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
call fcn.14017af00
mov r15, qword [rsp + 0x60]
mov r13d, 1
mov r12d, r13d
jmp 0x14017f8e7
xor ebx, ebx
mov r15d, ebx
jmp 0x14017df77
xor ebx, ebx
mov eax, dword [r11 + 0x2f0]
sub eax, r13d
lea r13d, [rax - 1]
cmp r10d, 2
jne 0x14017dfdd
mov r14d, dword [r11 + 0x2c]
mov edi, ebx
and r14d, 1
cmp dword [r11 + 0x28], 0
jle 0x14017dfe0
mov esi, r14d
xor esi, 1
mov rcx, qword [r11 + 0x20]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rbx + rcx + 8]
call fcn.1401337e0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140183647
mov r11, qword [rsp + 0x60]
inc edi
add rbx, 0x20
cmp edi, dword [r11 + 0x28]
jl 0x14017dfa2
mov r10d, dword [rbp - 0x80]
xor ebx, ebx
jmp 0x14017dfe4
mov r14d, ebx
mov eax, dword [rsp + 0x50]
cmp dword [r11 + 0x28], 0
mov edi, ebx
jle 0x14017e027
nop dword [rax]
mov rcx, qword [r11 + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rbx + rcx + 8]
call fcn.140132a00
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140183647
mov r11, qword [rsp + 0x60]
inc edi
mov r10d, dword [rbp - 0x80]
add rbx, 0x20
cmp edi, dword [r11 + 0x28]
jl 0x14017dff0
xor ebx, ebx
test r14d, r14d
je 0x14017e071
mov rcx, qword [r11 + 8]
test rcx, rcx
je 0x14017e05b
nop word [rax + 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 0x14017e040
mov rcx, r11
call fcn.14016cac0
mov r11, qword [rsp + 0x60]
mov eax, dword [rsp + 0x50]
or dword [r11 + 0x2c], 1
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
test eax, eax
jne 0x140183665
mov r14, qword [rsp + 0x78]
mov rcx, qword [r11 + 0x2e0]
cmp rcx, r12
je 0x14017e0c2
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r11
mov qword [r11 + 0x2e0], rax
call fcn.140138d80
mov r11, qword [rsp + 0x60]
dec dword [r11 + 0x2f0]
mov rcx, qword [r11 + 0x2e0]
cmp rcx, r12
jne 0x14017e094
mov ebx, dword [rbp - 0x80]
cmp ebx, 1
jne 0x14017e0f4
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, r11
mov qword [r11 + 0x2e0], rax
call fcn.140138d80
test r15d, r15d
jne 0x14017e137
mov r11, qword [rsp + 0x60]
dec dword [r11 + 0x2f0]
jmp 0x14017e116
mov rax, qword [r12 + 8]
mov qword [r11 + 0x2f8], rax
mov rax, qword [r12 + 0x10]
mov qword [r11 + 0x300], rax
test r15d, r15d
je 0x14017e116
cmp ebx, 2
jne 0x14017e137
mov r8d, r13d
mov edx, ebx
mov rcx, r11
call fcn.140189530
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
jmp 0x14017ddb7
mov r12d, dword [rsp + 0x50]
jmp 0x14017ddb7
mov rcx, qword [rsp + 0x48]
mov dword [rbp - 0x80], edx
mov edx, dword [rcx + 8]
test edx, edx
je 0x14017e167
mov rax, qword [r13 + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x140183116
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [r13 + 0x20]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x14017e278
lea r8, [rbp - 0x80]
mov rcx, rbx
call fcn.14012f5e0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018313b
test byte [rsi + 0xc8], 0x20
je 0x14017e281
mov rax, qword [rsp + 0x48]
cmp dword [rax + 8], r12d
je 0x14017e281
cmp byte [r13 + 0x65], r12b
je 0x14017e1cb
cmp dword [r13 + 0xdc], 1
jle 0x14017e281
mov r8d, dword [rsi + 0x40]
test r8d, r8d
jne 0x14017e1ed
inc dword [r13 + 0x2f4]
mov r8d, dword [r13 + 0x2f4]
add r8d, dword [r13 + 0x2f0]
mov dword [rsi + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r13
call fcn.140189530
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017e262
mov edi, dword [rsi + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x14017e221
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x14017e221
mov rcx, rbx
call fcn.1400b42c0
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x14017e23b
cmp byte [rcx + 0xa], 0
je 0x14017e23b
mov edx, edi
call fcn.140116230
jmp 0x14017e23d
xor eax, eax
cmp byte [rbx + 0x11], 0
mov r12d, eax
mov dword [rsp + 0x50], eax
je 0x14017e258
sub dword [rbx + 0x14], 1
jne 0x14017e258
mov rcx, rbx
call fcn.140198850
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov rax, qword [r13 + 0x2f8]
mov qword [rsi + 0x58], rax
mov rax, qword [r13 + 0x300]
mov qword [rsi + 0x60], rax
test r12d, r12d
jne 0x14017c336
mov r15, qword [rsp + 0x48]
cmp word [r15 + 2], 0
je 0x14017baf7
mov eax, dword [r15 + 0xc]
cmp dword [rbp - 0x80], eax
jne 0x140183184
mov rcx, qword [r14 + 0x18]
mov rax, r15
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x140183184
jmp 0x14017baf7
mov rcx, qword [r13 + 0x20]
lea r8, [rbp - 0x38]
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x48]
mov edx, dword [rdx + 0xc]
movsxd rax, dword [rax + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140130bd0
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x14017e318
call fcn.140115880
mov r15, qword [rsp + 0x48]
mov rcx, rax
movsxd rax, dword [rbp - 0x38]
mov r11, qword [rsp + 0x58]
mov qword [rcx], rax
jmp 0x14017b52a
movsxd rax, dword [rbp - 0x38]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r13 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1401338f0
mov r12d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x14017e455
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x48]
movzx eax, word [rax + 2]
mov ecx, dword [rcx + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
or dword [r13 + 0x2c], 1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x14017e401
nop word [rax + rax]
mov rbx, qword [rdi + 0x10]
cmp byte [rbx + 0x3f], 0
jne 0x14017e3f9
mov rbx, qword [rbx + 0x48]
test rbx, rbx
je 0x14017e3f9
xor r15d, r15d
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
mov rcx, r13
call fcn.1400c8260
mov qword [rbx + 0x30], r15
mov rcx, r13
mov rdx, qword [rbx + 0x38]
call fcn.1400c8260
mov qword [rbx + 0x38], r15
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x14017e3d0
mov rdi, qword [rdi]
test rdi, rdi
jne 0x14017e3b0
mov rdi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 4], 1
jne 0x14017e442
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x14017e43b
nop dword [rax + 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 0x14017e420
and dword [rsi + 0xc8], 0xfffffffc
test r12d, r12d
jne 0x14017c336
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
cmp eax, 2
jne 0x14017e406
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
jmp 0x14017e406
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x14017e49d
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
cmp dword [rdi + 0x44], eax
jne 0x14017e49d
mov rcx, qword [rdi + 0x30]
call fcn.14012f960
jmp 0x14017e5af
mov rdi, qword [rsp + 0x70]
mov eax, dword [rsi + 0xc8]
and al, 3
cmp al, 1
je 0x140183219
mov rax, qword [rsp + 0x48]
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 [r13 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x14017e504
mov rcx, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and esi, 8
mov rax, qword [rsp + 0x68]
or esi, 4
cmp cl, byte [rax + 0xc3]
jae 0x14017e506
mov byte [rax + 0xc3], cl
jmp 0x14017e506
mov esi, edx
mov rcx, qword [rsp + 0x48]
test byte [rcx + 2], 0x10
je 0x14017e528
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140185ae0
mov rcx, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf8
jne 0x14017e53b
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x14017e542
cmp al, 0xfd
jne 0x14017e542
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
xor r9d, r9d
mov rcx, qword [rsp + 0x68]
mov r8d, edi
call fcn.1400ada90
mov rdi, rax
test rax, rax
je 0x1401835e7
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.140130580
mov rsi, qword [rsp + 0x68]
mov r12d, eax
mov qword [rdi + 0x38], r14
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xf8
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax + 2]
mov rax, qword [rdi + 0x30]
and cl, 3
mov byte [rax + 3], cl
test r12d, r12d
jne 0x14018301c
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r12 + 8]
mov edx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, rsi
movsx r8d, word [rbx + 0x48]
call fcn.1400ada90
mov r10, rax
test rax, rax
je 0x14017dac0
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.140130580
mov r11, qword [rsp + 0x58]
mov r12d, eax
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x50], eax
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x14017e6b4
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], edx
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1401d2c47]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r12 + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x14017e70c
test byte [rbx + 8], 8
jne 0x14017e70c
movsx eax, word [rbx + 0x48]
cmp dword [r12 + 8], eax
jg 0x14017e70c
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.14012fa20
mov dword [rsp + 0x50], eax
mov r12d, eax
mov dword [rbp - 0x78], eax
test eax, eax
jne 0x14017c336
xor edx, edx
mov byte [rbx + 2], 1
jmp 0x14017b2f3
mov r8d, dword [r12 + 8]
xor r9d, r9d
mov rcx, rsi
call fcn.1400ada90
mov rbx, rax
test rax, rax
je 0x14017dac0
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r12 + 2]
mov r8, r13
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [r13]
call fcn.140131e30
mov r12d, eax
mov r13d, 1
test eax, eax
jne 0x140183232
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov edx, r13d
call fcn.14012f5e0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017e813
mov rax, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x14017e7de
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.140130510
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017e7d8
mov rax, qword [rbx + 0x30]
lea r8d, [r13 + 3]
mov edx, dword [rbx + 0x44]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140130580
mov r12d, eax
mov dword [rsp + 0x50], eax
mov byte [rbx + 4], 0
jmp 0x14017e809
mov dword [rbx + 0x44], r13d
xor r9d, r9d
mov rax, qword [rbx + 0x30]
mov edx, r13d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.140130580
mov r12d, eax
mov dword [rsp + 0x50], eax
mov byte [rbx + 4], r13b
mov r14, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x48]
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 r12d, r12d
jne 0x140183229
mov byte [rbx + 2], 1
jmp 0x14017b2f3
mov r12, qword [rsp + 0x48]
mov r9b, 1
mov rcx, rsi
mov r8d, dword [r12 + 8]
mov edx, dword [r12 + 4]
call fcn.1400ada90
test rax, rax
je 0x14017dac0
mov rcx, qword [r12 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, r13
mov edx, dword [r12 + 0xc]
call fcn.140187eb0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 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.0x14017b0bd.89
jmp 0x14017cc11
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, rsi
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.1400ada90
test rax, rax
je 0x14017dac0
mov rcx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x140213544]
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14017e93d
mov rcx, rsi
call fcn.140184470
mov rax, qword [rsp + 0x48]
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov qword [rax + rcx*8], rdx
jmp 0x14017b2f3
mov rax, qword [rsp + 0x48]
mov r12d, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov r14, qword [rax + rcx*8]
mov byte [r14 + 2], 0
mov byte [r14 + 3], 0
mov dword [r14 + 0x20], edx
cmp byte [r14 + 4], 0
je 0x14017ead1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r15d, word [rdi + 0x14]
movzx eax, r15b
and al, 0x2e
cmp al, 2
jne 0x14017e9ad
xor edx, edx
mov rcx, rdi
call fcn.1400b02e0
xor edx, edx
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14017e9ba
mov rsi, qword [rdi]
jmp 0x14017e9e7
test al, 8
je 0x14017e9cc
movsd xmm0, qword [rdi]
call fcn.1400be140
mov rsi, rax
jmp 0x14017e9e7
test al, 0x12
je 0x14017e9e4
cmp qword [rdi + 8], 0
je 0x14017e9e4
mov rcx, rdi
call fcn.140110980
mov rsi, rax
jmp 0x14017e9e7
mov rsi, rdx
movzx eax, word [rdi + 0x14]
mov word [rdi + 0x14], r15w
test al, 0x24
jne 0x14017ea8b
test al, 8
jne 0x14017ea69
test al, 1
jne 0x14017ea5a
cmp ebx, 0x17
jae 0x14017ea5a
mov rcx, qword [r14 + 0x30]
cmp byte [rcx], 0
jne 0x14017ea25
test byte [rcx + 1], 8
je 0x14017ea25
xor edx, edx
mov dword [rbp - 0x70], edx
mov r12d, edx
mov dword [rsp + 0x50], edx
jmp 0x14017f446
lea rdx, [rbp - 0x70]
call fcn.1400b41f0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140183647
xor edx, edx
cmp dword [rbp - 0x70], 0
je 0x14017ec7b
mov r12d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
jmp 0x14017cc11
mov r12d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x78]
jmp 0x14017cc0a
movsd xmm1, qword [rdi]
mov rcx, rsi
call fcn.14015ee60
test eax, eax
jle 0x14017ea82
test bl, 1
jne 0x14017ea8b
dec ebx
jmp 0x14017ea8b
jns 0x14017ea8b
test bl, 1
je 0x14017ea8b
inc ebx
mov rcx, qword [r14 + 0x30]
lea rdi, [r14 + 0x30]
lea r9, [rbp - 0x70]
xor r8d, r8d
mov rdx, rsi
call fcn.140132fb0
mov dword [rsp + 0x50], eax
mov r13d, 1
mov qword [r14 + 0x50], rsi
test eax, eax
je 0x14017eb69
mov r15, qword [rsp + 0x60]
mov r12d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
jmp 0x14017f8e7
mov rax, qword [r14 + 0x30]
lea rdi, [r14 + 0x30]
mov r13d, 1
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x190]
movzx esi, byte [rax + 3]
mov rax, qword [rsp + 0x48]
and sil, 2
setne r12b
mov ecx, dword [rax + 0x10]
mov rax, qword [r14 + 0x38]
mov qword [rbp + 0x190], rax
lea eax, [rbx - 1]
mov word [rbp + 0x1ac], cx
test al, 1
mov eax, r13d
mov ecx, 0xffffffff
cmovne eax, ecx
mov byte [rbp + 0x1ae], al
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x1b2], 0
add rcx, r11
mov qword [rbp + 0x198], rcx
mov rcx, qword [rdi]
call fcn.140130cc0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017eab8
test sil, sil
je 0x14017eb69
cmp byte [rbp + 0x1b2], al
je 0x14017ea3a
mov eax, dword [rbp - 0x70]
cmp ebx, 0x17
jl 0x14017ec16
test eax, eax
js 0x14017eb8a
jne 0x14017eb80
cmp ebx, 0x18
je 0x14017eb8a
xor edx, edx
mov dword [rbp - 0x70], edx
jmp 0x14017ec7b
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x70], ebx
mov word [rcx + 0x46], bx
and byte [rcx + 1], 0xf9
cmp byte [rcx], bl
je 0x14017eba5
call fcn.1400b4490
jmp 0x14017ebe0
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 0x14017ebcb
mov word [rcx + 0x56], r8w
call fcn.1400b4490
jmp 0x14017ebe0
cmp byte [rdx + 8], bl
je 0x14017ebdb
xor edx, edx
mov dword [rsp + 0x50], edx
jmp 0x14017ec7b
call fcn.140110e60
mov ecx, eax
test eax, eax
mov dword [rsp + 0x50], eax
je 0x14017ec79
mov r12d, eax
cmp eax, 0x65
jne 0x140183629
xor edx, edx
mov dword [rbp - 0x70], r13d
mov r15, qword [rsp + 0x48]
mov r12d, edx
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x50], edx
jmp 0x14017cc11
test eax, eax
jg 0x14017ec35
jne 0x14017ec21
cmp ebx, 0x15
je 0x14017ec35
mov rax, qword [rdi]
xor edx, edx
mov ecx, edx
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x70], ecx
jmp 0x14017ea3c
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x70], ebx
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], bx
cmp byte [rcx], bl
jne 0x14017ec6d
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14017ec6d
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], bl
je 0x14017ec6d
dec dx
mov word [rcx + 0x56], dx
xor edx, edx
mov dword [rsp + 0x50], edx
jmp 0x14017ec7b
call fcn.1400b4d00
test eax, eax
jmp 0x14017ebe4
xor edx, edx
mov r11, qword [rsp + 0x58]
test r12d, r12d
mov r12d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x78]
je 0x14017fa06
add qword [rsp + 0x48], 0x18
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2fd
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rax, qword [rsi + 0x30]
cmp byte [rax], 0
jne 0x140182ec3
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsi + 0x38]
mov qword [rbp + 0x228], rax
mov byte [rbp + 0x246], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x244], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x230], rcx
nop dword [rax]
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.140106840
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x140183241
mov qword [rbp + 0xd0], r13
xor r9d, r9d
mov word [rbp + 0xcc], r9w
mov dword [rbp + 0xd8], 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 0x14017ed5a
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xc0], rax
cmp ecx, edx
ja 0x14017ed7d
mov edx, 0x4010
mov dword [rbp + 0xc8], ecx
mov word [rbp + 0xcc], dx
jmp 0x14017eda9
mov r8d, ecx
lea r9, [rbp + 0xb8]
mov rcx, rbx
xor edx, edx
call fcn.140185800
mov r12d, eax
test eax, eax
jne 0x14017f8d2
mov ecx, dword [rbp + 0xc8]
mov rax, qword [rbp + 0xc0]
xor r9d, r9d
lea r8, [rbp + 0x228]
mov rdx, rax
call fcn.140186d30
cmp dword [rbp + 0xd8], 0
mov ebx, eax
je 0x14017edd2
lea rcx, [rbp + 0xb8]
call fcn.14019c250
xor edx, edx
mov dword [rsp + 0x50], edx
mov r12d, edx
test ebx, ebx
jle 0x14017edec
mov rax, qword [rsp + 0x48]
cmp word [rax + 2], dx
je 0x14017ee5e
test ebx, ebx
jns 0x14017f097
test edi, edi
jle 0x14017fa4e
mov rcx, qword [rsi + 0x30]
dec edi
mov word [rcx + 0x46], dx
and byte [rcx + 1], 0xf9
cmp byte [rcx], dl
je 0x14017ee13
call fcn.1400b4490
jmp 0x14017ee48
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 0x14017ee39
mov word [rcx + 0x56], r8w
call fcn.1400b4490
jmp 0x14017ee48
cmp byte [rdx + 8], r12b
jne 0x14017ed00
call fcn.140110e60
mov r12d, eax
test eax, eax
je 0x14017ed00
cmp eax, 0x65
jne 0x14017f8d2
xor edx, edx
add qword [rsp + 0x48], 0x18
mov r12d, edx
mov dword [rsp + 0x50], edx
mov r15, qword [rsp + 0x48]
jmp 0x14017cc11
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x14017eeb4
mov word [rdx + 0xc], ax
mov r15, qword [rsp + 0x48]
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
jle 0x14017b535
mov word [rdx + 0xc], ax
xor edx, edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x14017b0bd.9
cmp byte [rdx + 2], 0
je 0x14017ee9a
jmp case.0x14017b0bd.9
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r15 + 0x10]
jge case.0x14017b0bd.89
mov rax, qword [rsi + 0x78]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x98], rcx
movzx eax, word [r12 + 0x10]
mov word [rbp + 0xac], ax
test ax, ax
je 0x14017ef94
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x90], rax
lea rdx, [rbp + 0x90]
mov byte [rbp + 0xae], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.140130cc0
mov r12d, eax
mov dword [rsp + 0x50], eax
jmp 0x14017f009
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x14017efac
call fcn.1401856d0
test eax, eax
jne 0x14017dac0
mov rcx, qword [rbx + 0x38]
call fcn.14017a3f0
mov rdi, rax
test rax, rax
je 0x14017dabb
mov rdx, qword [rbp + 0x98]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.140187620
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.140130cc0
mov rdx, rdi
mov dword [rsp + 0x50], eax
mov rcx, r13
mov r12d, eax
call fcn.140138d80
mov rdi, qword [rsp + 0x70]
test r12d, r12d
jne 0x1401833f0
mov ecx, dword [rsi]
test ecx, ecx
setne al
xor edx, edx
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
mov byte [rbx + 3], r12b
mov dword [rbx + 0x20], edx
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x14017f043
test ecx, ecx
je 0x14017ea50
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2f3
test ecx, ecx
jne 0x14017ea50
cmp al, 0x1b
jne 0x14017f0a1
mov rcx, rdx
movzx edx, word [rbp + 0xac]
test rdx, rdx
je 0x14017fa1f
mov rax, qword [rbp + 0x98]
add rax, 0x14
nop dword [rax]
test byte [rax], 1
jne 0x14017f095
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14017f070
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
xor edx, edx
mov r15, qword [rsp + 0x48]
jmp 0x14017cc11
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
cmp byte [r15], 0x1a
jne 0x14017fa2b
movzx eax, word [r15 + 0x10]
mov rsi, qword [rsp + 0x68]
mov word [rbx + 0xc], ax
jmp 0x14017b2fd
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x14017b0bd.31
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x1f0], xmm0
movups xmm2, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x200], xmm2
movups xmm0, xmmword [rcx + 0x20]
movq rax, xmm2
movups xmmword [rbp + 0x210], xmm0
shr rax, 0x20
movsd xmm1, qword [rcx + 0x30]
movsd qword [rbp + 0x220], xmm1
test al, 4
jne 0x14017f141
test al, 0x28
jne 0x14017f133
test al, 2
je 0x14017f141
mov edx, 1
lea rcx, [rbp + 0x1f0]
call fcn.1400b02e0
jmp 0x14017f13f
lea rcx, [rbp + 0x1f0]
call fcn.140184be0
xor edx, edx
test byte [rbp + 0x204], 4
je 0x14017ee6b
mov rdi, qword [rbp + 0x1f0]
jmp 0x14017f168
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x48]
lea r9, [rbp - 0x78]
mov dword [rbp - 0x78], edx
xor r8d, r8d
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.140132fb0
mov qword [rbx + 0x50], rdi
xor edx, edx
mov byte [rbx + 2], 0
mov r12d, eax
mov dword [rbx + 0x20], edx
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x78]
mov byte [rbx + 3], dl
mov dword [rbx + 0x24], eax
test eax, eax
je 0x14017f204
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], edx
jne 0x14017cc11
lea rax, [0x1401dc4f4]
mov r9d, 0x1754b
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.140088f10
mov r15, qword [rsp + 0x60]
mov eax, 0xb
mov rdi, qword [rsp + 0x70]
mov r12d, eax
lea r13d, [rax - 0xa]
jmp 0x14017f8ec
test r12d, r12d
jne 0x14018301c
jmp 0x14017b2f3
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14017f23b
mov rcx, rdx
call fcn.140115880
mov rdx, rax
jmp 0x14017f241
mov word [rdx + 0x14], 4
mov rax, qword [rsi + 0x78]
mov r15, rbx
movsxd rcx, dword [rbx + 4]
mov r11, qword [rsp + 0x58]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, rbx
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x14017b52a
mov r13, qword [rsp + 0x48]
mov rbx, rdx
mov qword [rbp - 0x78], rdx
mov dword [rbp - 0x80], edx
movsxd rax, dword [r13 + 8]
imul r14, rax, 0x38
mov eax, 0x9000
add r14, qword [rsi + 0x68]
test word [r14 + 0x14], ax
je 0x14017f2aa
mov rcx, r14
call fcn.140115880
mov r14, rax
xor edx, edx
jmp 0x14017f2b1
mov word [r14 + 0x14], 4
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x14017f33d
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x14017f308
test byte [rcx + 1], 8
je 0x14017f308
mov r12d, edx
mov dword [rsp + 0x50], edx
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.140106840
mov rbx, qword [rbx + 0x30]
movabs r15, 0x7fffffffffffffff
mov qword [rbp - 0x78], rbx
mov r13d, 1
cmp rbx, r15
jl 0x14017f334
or dword [rsi + 8], 2
jmp 0x14017f34d
lea rdx, [rbp - 0x80]
call fcn.1400b41f0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018360e
cmp dword [rbp - 0x80], eax
je 0x14017f2d9
mov r13d, 1
mov ebx, r13d
mov qword [rbp - 0x78], rbx
jmp 0x14017f343
inc rbx
mov qword [rbp - 0x78], rbx
jmp 0x14017f34d
mov r13d, 1
movabs r15, 0x7fffffffffffffff
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
test eax, eax
je 0x14017f3c3
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx + 0x108]
test rcx, rcx
je 0x14017f393
mov rax, qword [rcx + 8]
test rax, rax
je 0x14017f380
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14017f374
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14017f39c
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x58]
mov rcx, rdi
call fcn.140185ae0
mov rax, qword [rdi]
cmp rax, r15
je 0x14017f420
test byte [rsi + 8], 2
jne 0x14017f420
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x78], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14017f43a
xor eax, eax
mov edi, eax
nop dword [rax]
lea rdx, [rbp - 0x78]
mov ecx, 8
call fcn.1400a6be0
mov rbx, qword [rbp - 0x78]
lea r9, [rbp - 0x80]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
and rbx, rax
xor r8d, r8d
inc rbx
mov rdx, rbx
mov qword [rbp - 0x78], rbx
call fcn.140132fb0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017f426
cmp dword [rbp - 0x80], eax
jne 0x14017f43a
inc edi
cmp edi, 0x64
jl 0x14017f3d0
mov r12d, 0xd
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
jmp 0x14017f8e7
mov byte [rsi + 3], 0
xor edx, edx
mov dword [rsi + 0x20], edx
mov qword [r14], rbx
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x54]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 8]
movsxd rcx, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
mov qword [rbp + 0x130], rax
cmp byte [r12 + 1], 0xfb
jne 0x14017f4d6
cmp qword [r13 + 0x140], 0
je 0x14017f4d6
movsx rcx, byte [rbx + 1]
mov rax, qword [r13 + 0x20]
mov rdi, qword [r12 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
xor ecx, ecx
jmp 0x14017f4dc
xor ecx, ecx
mov edi, ecx
mov esi, ecx
test byte [r12 + 2], 1
je 0x14017f500
mov rax, qword [rsp + 0x68]
inc qword [rax + 0x38]
test byte [r12 + 2], 0x20
je 0x14017f500
mov rax, qword [rbp + 0x130]
mov qword [r13 + 0x38], rax
mov rax, qword [rdx + 8]
mov qword [rbp + 0x138], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x14c], eax
test byte [r12 + 2], 0x10
je 0x14017f522
mov r9d, dword [rbx + 0x24]
jmp 0x14017f525
mov r9d, ecx
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x14017f53a
mov eax, dword [rdx]
mov dword [rbp + 0x150], eax
jmp 0x14017f540
mov dword [rbp + 0x150], ecx
mov qword [rbp + 0x128], rcx
lea rdx, [rbp + 0x128]
movzx r8d, word [r12 + 2]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.140131180
xor edx, edx
mov byte [rbx + 3], 0
mov dword [rsp + 0x50], eax
mov r12d, eax
mov dword [rbx + 0x20], edx
test eax, eax
jne 0x14017f8d2
test rdi, rdi
je 0x14017fa4e
mov rax, qword [rsp + 0x48]
mov edx, 0x12
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r13 + 0x138]
test byte [rax + 2], 4
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp + 0x130]
mov qword [rsp + 0x20], rax
call qword [r13 + 0x140]
mov r11, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x78]
movsxd rax, dword [r12 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r12 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r12 + 0xc]
test eax, eax
je 0x14017f5ff
imul rcx, rax, 0x38
xor ebx, ebx
mov r8, qword [rcx + r11]
jmp 0x14017f604
xor ebx, ebx
mov r8d, ebx
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.140133230
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
je 0x14017b359
mov r15, qword [rsp + 0x60]
mov eax, 0xb
mov r14, qword [rsp + 0x48]
lea r13d, [rax - 0xa]
jmp 0x14017f8f3
mov r12, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
cmp byte [r12 + 1], 0xfb
movsxd rcx, dword [r12 + 4]
mov r15d, dword [r12 + 8]
mov rdi, qword [rax + rcx*8]
jne 0x14017f69b
cmp qword [r13 + 0x140], 0
je 0x14017f69b
movsx rcx, byte [rdi + 1]
mov rax, qword [r13 + 0x20]
mov rsi, qword [r12 + 0x10]
shl rcx, 5
test byte [r12 + 2], 2
mov r14, qword [rcx + rax]
je 0x14017f6a1
cmp byte [rdi + 4], 0
je 0x14017f6a1
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140106840
mov rax, qword [rbx + 0x30]
mov qword [rdi + 0x50], rax
jmp 0x14017f6a1
mov r14, rdx
mov rsi, rdx
movzx edx, byte [r12 + 2]
mov rcx, qword [rdi + 0x30]
call fcn.140130610
xor edx, edx
mov dword [rsp + 0x50], eax
mov dword [rdi + 0x20], edx
mov r12d, eax
mov dword [rdi + 0x24], edx
test eax, eax
jne 0x14017f8d2
test r15b, 1
je 0x14017fa35
mov rax, qword [rsp + 0x68]
inc qword [rax + 0x38]
mov r10, qword [r13 + 0x140]
test r10, r10
je 0x14017fa35
test rsi, rsi
je 0x14017fa35
test byte [rsi + 0x30], 0x80
jne 0x14017fa35
mov rax, qword [rdi + 0x50]
lea edx, [r12 + 9]
mov r9, qword [rsi]
mov r8, r14
mov rcx, qword [r13 + 0x138]
mov qword [rsp + 0x20], rax
call r10
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
mov rax, qword [rsi + 0x38]
mov qword [r13 + 0x78], rax
add qword [r13 + 0x80], rax
mov qword [rsi + 0x38], rdx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsi + 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 0x14017f797
mov rcx, rsi
call fcn.14017a3f0
mov qword [rdi + 0x30], rax
mov r14, rax
test rax, rax
je 0x14017f8cc
mov word [rax + 0x1c], bx
cmp byte [rdi + 0x58], 0
je 0x14017f7d3
cmp byte [rdi + 0x59], 0
je 0x14017f7b1
mov rax, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x14017f7db
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 0x14017f7db
mov rdx, qword [rdi + 0x38]
lea r8, [rdx + 0x10]
mov edx, dword [rdx]
mov r9, r14
mov rcx, rsi
call fcn.140187620
xor edx, edx
mov ecx, edx
test ebx, ebx
jle 0x14017f813
mov rax, qword [r14 + 8]
add rax, 0x14
nop dword [rax + rax]
test byte [rax], 1
jne 0x14017ec00
inc ecx
add rax, 0x38
cmp ecx, ebx
jl 0x14017f800
mov rdx, qword [r15 + 8]
xor r9d, r9d
mov ecx, dword [r15 + 0x10]
mov r8, r14
call fcn.140186d30
mov r14, qword [rsp + 0x78]
xor edx, edx
mov dword [rsp + 0x50], edx
mov r12d, edx
test eax, eax
jne 0x14017ea50
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x50], edx
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2f8
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rbx, r11
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
cmp byte [rax + 0x58], 0
je 0x14017f8ab
cmp byte [rax + 0x59], 0
je 0x14017f889
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
lea rdi, [rax + 0x14]
jmp 0x14017f8b3
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 0x14017f8b3
mov rdi, qword [rax + 0x38]
lea rsi, [rdi + 0x10]
movsxd rdi, dword [rdi]
cmp dword [rbx + 0x20], edi
jge 0x14017f909
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.140185960
test eax, eax
je 0x14017f916
mov r12d, 7
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov r13d, 1
mov eax, 0xb
mov r14, qword [rsp + 0x48]
xor ebx, ebx
cmp byte [r15 + 0x67], 0
je 0x14018366f
mov r12d, 7
jmp 0x1401836a5
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 sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x48]
xor edx, edx
mov rsi, qword [rsp + 0x68]
mov r12d, edx
mov dword [rsp + 0x50], edx
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edx
jmp 0x14017b2f3
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x14017f98d
mov rcx, rbx
call fcn.140115880
mov rbx, rax
jmp 0x14017f993
mov word [rbx + 0x14], 4
movsxd rcx, dword [r12 + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.140106840
mov edx, dword [rdi + 0x40]
cmp edx, dword [r13 + 0x88]
ja 0x1401832b4
mov r8, rbx
mov rcx, rdi
call fcn.140185910
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 0xc], eax
jne 0x14017fa24
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x14017fa24
mov rcx, rbx
call fcn.140185b40
test eax, eax
jne 0x14017dabb
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2fd
mov r12d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
xor edx, edx
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2fd
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2fd
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
jmp 0x14017b2fd
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x14017fa8d
mov rcx, rdi
call fcn.140115880
mov rdi, rax
xor edx, edx
jmp 0x14017fa93
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x14017fab0
mov word [rdi + 0x14], 1
jmp 0x14017b2f3
cmp byte [rbx + 3], 0
je 0x14017fad0
mov rax, qword [rbx + 0x50]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x28], rax
mov qword [rdi], rax
jmp 0x14017b52a
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x30]
jne 0x14017fb17
mov rbx, qword [rcx]
lea rdx, [rbp - 0x28]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, rsi
mov r12d, eax
mov dword [rsp + 0x50], eax
call fcn.1401891d0
test r12d, r12d
jne 0x14018301c
mov rax, qword [rbp - 0x28]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x14017b52a
cmp byte [rcx], 0
je 0x14017fb37
mov rcx, rbx
call fcn.140184970
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
xor edx, edx
jmp 0x14017fb3e
mov r12d, edx
mov dword [rsp + 0x50], edx
cmp byte [rbx + 2], 0
je 0x14017fb4f
mov word [rdi + 0x14], 1
jmp 0x14017b2f3
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.140106840
mov rax, qword [rbx + 0x30]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rbp - 0x28], rax
mov qword [rdi], rax
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x14017fbbd
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, rsi
call fcn.1400ada90
test rax, rax
je 0x14017dac0
xor edx, edx
lea rcx, [0x140213544]
mov dword [rax + 0x24], edx
mov byte [rax + 4], 1
or dword [rax + 8], 8
mov qword [rax + 0x30], rcx
jmp 0x14017fbbf
xor edx, edx
mov byte [rax + 2], 1
mov dword [rax + 0x20], edx
cmp byte [rax], 0
jne 0x14017b2f3
mov rcx, qword [rax + 0x30]
call fcn.14012f960
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
mov dword [rbp - 0x78], edx
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov eax, edx
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x14017fc77
mov dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], 0
je 0x14017fc6d
lea rdx, [rbp - 0x78]
call fcn.1400b41f0
mov r12d, eax
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x78]
xor edx, edx
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
test r12d, r12d
jne 0x14018301c
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], 0
jle 0x14017b2f8
test eax, eax
jne 0x14017cc0f
jmp 0x14017b2f8
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b2fd
xor edx, edx
mov r15, qword [rsp + 0x48]
jmp 0x14017b2fd
cmp byte [rcx], 0
jne 0x14017fc12
test byte [rcx + 1], 8
je 0x14017fc12
mov byte [rdi + 2], dl
mov r12d, edx
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
mov dword [rsp + 0x50], edx
jmp 0x14017fc3a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.140111110
mov r12d, eax
test eax, eax
jne 0x14017fccb
xor eax, eax
mov rcx, rbx
mov r13d, eax
call fcn.140110e60
mov r12d, eax
jmp 0x14017fcee
cmp eax, 0x10
jne 0x14017fcea
mov r15, qword [rsp + 0x48]
xor edx, edx
mov r12d, edx
mov dword [rsp + 0x50], edx
mov dword [rbp - 0x60], 1
jmp 0x14017cc11
mov r13d, dword [rbp - 0x60]
mov dword [rbp - 0x60], r13d
test r12d, r12d
jne 0x14017c336
mov dword [rsp + 0x50], r12d
test r13d, r13d
jne 0x14017cc0a
mov rcx, rbx
call fcn.1401329a0
test rax, rax
js 0x14017fd3d
mov rcx, rax
call fcn.1401607c0
mov r15, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r15 + 0xc]
jge 0x14017fd42
mov dword [rbp - 0x60], 1
mov dword [rsp + 0x50], r12d
jmp 0x14017cc0f
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov dword [rbp - 0x60], r13d
mov dword [rsp + 0x50], r12d
jmp 0x14017b52a
inc dword [rsi + 0xdc]
mov rax, qword [rsp + 0x48]
mov r13d, 1
mov edi, r13d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi + 0x30]
cmp byte [rsi], dil
jne 0x14017fdd6
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x50], edx
jne 0x14017fda8
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x14017fda4
xor eax, eax
lea rcx, [rbx + 0x60]
mov edi, eax
call fcn.14019eb40
mov dword [rsp + 0x50], eax
xor edx, edx
jmp 0x14017fdff
mov rcx, rbx
call fcn.14019db70
mov edx, eax
mov rcx, rbx
call fcn.14019dce0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017fdd2
mov rcx, rbx
call fcn.14019e870
mov dword [rsp + 0x50], eax
xor eax, eax
mov edi, eax
xor edx, edx
jmp 0x14017fdff
mov rcx, rbx
call fcn.140111110
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017fe2d
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.140110e60
mov dword [rsp + 0x50], eax
xor edx, edx
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], edx
mov r12d, dword [rsp + 0x50]
test r12d, r12d
jne 0x14017f426
mov r15, qword [rsp + 0x48]
mov byte [rsi + 2], dil
cmp dword [r15 + 8], r12d
jle 0x14017f845
test edi, edi
je 0x14017f845
jmp 0x14017cc0f
cmp eax, 0x10
jne 0x14017fdf6
xor edx, edx
mov dword [rsp + 0x50], edx
jmp 0x14017fdf8
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rsi, qword [rax + rcx*8]
mov rdi, qword [rsi + 0x30]
cmp byte [rdi + 0x58], 0
je 0x14017fed2
cmp byte [rdi + 0x59], 0
je 0x14017fe9a
mov rcx, qword [rdi + 0x10]
call fcn.14019cdc0
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017ff15
mov rax, qword [rdi + 0x10]
cmp qword [rax + 0x18], 0
jne 0x14017ff15
mov rbx, qword [rsp + 0x48]
mov ecx, 0x65
mov rdi, qword [rsp + 0x70]
mov r12d, ecx
mov dword [rsp + 0x50], ecx
jmp 0x14017ffef
mov rcx, qword [rdi + 0x18]
mov dword [rbp - 0x78], edx
lea rdx, [rbp - 0x78]
call fcn.14019c760
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017ff15
cmp dword [rbp - 0x78], eax
je 0x14017ff15
mov rbx, qword [rsp + 0x48]
mov ecx, 0x65
mov rdi, qword [rsp + 0x70]
mov r12d, ecx
mov dword [rsp + 0x50], ecx
jmp 0x14017ffef
mov rdx, qword [rdi + 0x38]
xor r15d, r15d
mov rax, qword [rdx + 8]
mov qword [rdi + 0x38], rax
mov qword [rdx + 8], r15
cmp qword [rdi + 0x40], r15
jne 0x14017ff04
nop dword [rax + rax]
mov rbx, qword [rdx + 8]
mov rcx, r13
call fcn.140138d80
mov rdx, rbx
test rbx, rbx
jne 0x14017fef0
cmp qword [rdi + 0x38], r15
mov ecx, 0x65
cmovne ecx, r15d
mov dword [rsp + 0x50], ecx
mov r12d, dword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
jmp 0x14017ffef
mov rax, qword [rsi + 0x78]
mov rbx, qword [rsp + 0x48]
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 0x14017ff79
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14017ff79
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x14017ff79
dec dx
xor eax, eax
mov word [rcx + 0x56], dx
mov r12d, eax
mov dword [rsp + 0x50], eax
mov dword [rsi + 0x20], eax
jmp 0x14017fff9
call fcn.1400b4d00
jmp 0x14017ffe8
mov rax, qword [rsi + 0x78]
mov rbx, qword [rsp + 0x48]
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 0x14017ffa9
call fcn.1400b4490
jmp 0x14017ffe8
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 0x14017ffcf
mov word [rcx + 0x56], r8w
call fcn.1400b4490
jmp 0x14017ffe8
cmp byte [rdx + 8], 0
je 0x14017ffe3
xor eax, eax
mov r12d, eax
mov dword [rsp + 0x50], eax
mov dword [rsi + 0x20], eax
jmp 0x14017fff9
call fcn.140110e60
mov dword [rsp + 0x50], eax
mov r12d, eax
xor edx, edx
mov dword [rsi + 0x20], edx
test r12d, r12d
jne 0x140180012
mov rcx, qword [rsp + 0x68]
mov byte [rsi + 2], 0
movzx eax, word [rbx + 2]
inc dword [rcx + rax*4 + 0xd4]
jmp case.0x14017b0bd.9
cmp r12d, 0x65
jne 0x1401833f0
mov r12d, edx
mov dword [rsp + 0x50], edx
mov byte [rsi + 2], 1
jmp 0x1401826c1
mov r12, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r12 + 2], 1
je 0x140180056
inc qword [rsi + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x140180080
mov rcx, rbx
call fcn.1401856d0
mov r12d, eax
test eax, eax
jne 0x14018301c
mov r12, qword [rsp + 0x48]
xor edx, edx
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x2a8], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x2a0], rax
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x2b8], rcx
movzx eax, word [r12 + 0x10]
mov word [rbp + 0x2c0], ax
movzx r8d, word [r12 + 2]
test r8b, 0x10
je 0x1401800c8
mov r9d, dword [rdi + 0x24]
jmp 0x1401800cb
mov r9d, edx
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x2a0]
and r8d, 0x8a
call fcn.140131180
xor edx, edx
mov dword [rsp + 0x50], eax
mov dword [rdi + 0x20], edx
mov r12d, eax
test eax, eax
jne 0x14018301c
jmp 0x14017b2f3
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsi + 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 0x140180135
mov rcx, rbx
call fcn.1401856d0
mov r12d, eax
test eax, eax
jne 0x14018301c
mov rdx, rbx
mov rcx, rdi
call fcn.140188330
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsi + 0x78]
lea r8, [rbp - 0x34]
mov r12, qword [rsp + 0x48]
lea rdx, [rbp + 0x278]
movsxd rcx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x278], rax
movzx eax, word [r12 + 0xc]
mov word [rbp + 0x294], ax
mov byte [rbp + 0x296], 0
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x280], rcx
mov rcx, rdi
call fcn.140130cc0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
cmp dword [rbp - 0x34], eax
jne 0x1401801f8
mov dl, 4
mov rcx, rdi
call fcn.140130610
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018301c
mov r15, qword [rsp + 0x48]
xor edx, edx
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], edx
jmp 0x14017b2f8
mov r15, qword [rsp + 0x48]
cmp word [r15 + 2], 0
je 0x140180218
mov eax, dword [r13 + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x1401832bb
xor edx, edx
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], edx
jmp 0x14017b2f8
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x14018025a
mov rcx, rbx
call fcn.140184970
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
xor edx, edx
jmp 0x140180261
mov r12d, edx
mov dword [rsp + 0x50], edx
cmp byte [rbx + 2], 0
jne 0x14018032a
mov qword [rbp - 0x68], rdx
lea r8, [rbp - 0x68]
mov rdx, qword [rbx + 0x30]
mov rcx, r13
call fcn.1401849d0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x1401802d9
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x68]
mov byte [rdx + 2], r12b
mov qword [rdx + 0x50], rax
xor eax, eax
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], eax
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x14017b52a
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x14018030e
call fcn.140115880
mov r15, qword [rsp + 0x48]
mov rcx, rax
mov rax, qword [rbp - 0x68]
mov r11, qword [rsp + 0x58]
mov qword [rcx], rax
jmp 0x14017b52a
mov rax, qword [rbp - 0x68]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14018035e
call fcn.14019c2a0
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov word [rcx + 0x14], 1
mov r15, qword [rsp + 0x48]
jmp 0x14017b2fd
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x14017b626
call fcn.140184300
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x250], rax
movzx eax, word [r12 + 0x10]
mov word [rbp + 0x26c], ax
sbb al, al
mov byte [rbp + 0x26e], al
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x258], rcx
mov rcx, rbx
call fcn.140106840
mov ecx, dword [rbx + 0x40]
lea eax, [rcx - 1]
cmp eax, 0x7ffffffe
ja 0x1401832f3
mov qword [rbp + 0x108], r13
xor r9d, r9d
mov word [rbp + 0x104], r9w
mov dword [rbp + 0x110], 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 0x14018044c
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xf8], rax
cmp ecx, edx
ja 0x140180477
mov edx, 0x4010
mov dword [rbp + 0x100], ecx
mov word [rbp + 0x104], dx
mov r12d, r9d
mov dword [rsp + 0x50], r9d
jmp 0x1401804a7
mov r8d, ecx
lea r9, [rbp + 0xf0]
mov rcx, rbx
xor edx, edx
call fcn.140185800
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov ecx, dword [rbp + 0x100]
mov rax, qword [rbp + 0xf8]
xor r9d, r9d
lea r8, [rbp + 0x250]
mov rdx, rax
call fcn.140186d30
cmp dword [rbp + 0x110], 0
mov ebx, eax
je 0x1401804d0
lea rcx, [rbp + 0xf0]
call fcn.14019c250
mov r15, qword [rsp + 0x48]
test byte [r15], 1
jne 0x1401804df
neg ebx
jmp 0x1401804e1
inc ebx
test ebx, ebx
jg 0x14017cc0f
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x14018051d
mov rcx, rdi
call fcn.140115880
mov rdi, rax
xor edx, edx
mov word [rdi + 0x14], 1
mov eax, dword [r13 + 0xe8]
inc eax
cmp dword [r13 + 0xdc], eax
jg 0x14018330a
movsxd r14, dword [r12 + 0xc]
mov rax, qword [r13 + 0x20]
mov rcx, r14
mov esi, dword [r12 + 4]
shl rcx, 5
mov dword [rbp - 0x78], edx
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14018056d
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14018056d
mov rcx, rbx
call fcn.1400b42c0
lea r8, [rbp - 0x78]
mov edx, esi
mov rcx, rbx
call fcn.1400b3a20
cmp byte [rbx + 0x11], 0
mov r12d, eax
mov dword [rsp + 0x50], eax
je 0x140180596
sub dword [rbx + 0x14], 1
jne 0x140180596
mov rcx, rbx
call fcn.140198850
movsxd rdx, dword [rbp - 0x78]
mov word [rdi + 0x14], 4
mov qword [rdi], rdx
test r12d, r12d
jne 0x14017f8d2
test edx, edx
je 0x140180b0a
mov rax, qword [rsp + 0x48]
mov r9, r14
shl r9, 5
add r9, qword [r13 + 0x20]
mov r8d, dword [rax + 4]
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1401805ea
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], edx
jne 0x1401805e2
mov dword [rax + 0x28], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1401805d5
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x14018060c
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x140180604
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1401805f7
mov rsi, qword [rsp + 0x68]
lea eax, [r14 + 1]
mov byte [rbp - 0x6c], al
jmp 0x14017baf2
mov r12, qword [rsp + 0x48]
lea r8, [rbp - 0x20]
mov qword [rbp - 0x20], rdx
mov rcx, qword [r13 + 0x20]
movsxd rax, dword [r12 + 8]
mov edx, dword [r12 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14012fa20
mov r15, qword [rsp + 0x48]
mov r12d, eax
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x50], eax
cmp dword [r15 + 0xc], 0
je 0x14018067d
mov rax, qword [rbp - 0x20]
add qword [rsi + 0x38], rax
mov rax, r15
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14018067d
imul rcx, rax, 0x38
mov rax, qword [rbp - 0x20]
add qword [rcx + r11], rax
test r12d, r12d
jne 0x14017c336
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1401806bc
mov rdx, qword [rcx + 0x30]
mov rcx, r13
call fcn.1401880a0
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14012fa20
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x140180718
mov rcx, rdi
call fcn.140115880
mov rdi, rax
xor edx, edx
jmp 0x14018071e
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x20]
mov esi, dword [rbx + 0xc]
shl rcx, 5
mov dword [rbp - 0x78], edx
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14018074c
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14018074c
mov rcx, rbx
call fcn.1400b42c0
mov r8d, esi
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.1400b3520
cmp byte [rbx + 0x11], 0
mov r12d, eax
mov dword [rsp + 0x50], eax
je 0x140180776
sub dword [rbx + 0x14], 1
jne 0x140180776
mov rcx, rbx
call fcn.140198850
mov rsi, qword [rsp + 0x68]
test r12d, r12d
jne 0x14018301c
mov eax, dword [rbp - 0x78]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
xor r9d, r9d
inc byte [r13 + 0x70]
xor r8d, r8d
mov qword [rsp + 0x20], rdx
mov rcx, r13
mov rdx, qword [rax + 0x10]
call fcn.1400a45a0
dec byte [r13 + 0x70]
mov r12d, eax
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
cmp qword [r12 + 0x10], 0
movsxd rbx, dword [r12 + 4]
jne 0x140180836
mov rcx, qword [r13 + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.14016e650
and dword [r13 + 0x2c], 0xffffffef
lea r8, [rsi + 0xa8]
movzx r9d, word [r12 + 2]
mov edx, ebx
mov rcx, r13
call fcn.14015d080
or dword [r13 + 0x2c], 1
mov r12d, eax
and dword [rsi + 0xc8], 0xfffffffc
mov dword [rsp + 0x50], eax
jmp 0x14018092c
mov dword [rbp + 0x48], edx
lea rax, [rsi + 0xa8]
mov qword [rbp + 0x38], rax
lea r9, str.sqlite_master
mov qword [rbp + 0x30], r13
mov rdx, rbx
mov dword [rbp + 0x40], ebx
mov rax, qword [r13 + 0x20]
shl rdx, 5
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov dword [rbp + 0x50], ecx
mov rcx, r13
mov r8, qword [r13 + 0x20]
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.140160a90
mov rbx, rax
mov rcx, r13
test rax, rax
je 0x140183321
xor eax, eax
mov byte [r13 + 0xc5], 1
lea r9, [rbp + 0x30]
mov dword [rbp + 0x44], eax
lea r8, [fcn.14015cd80]
mov dword [rbp + 0x4c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400a45a0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x140180919
mov r12d, dword [rbp + 0x44]
mov dword [rsp + 0x50], r12d
test r12d, r12d
jne 0x140180919
cmp dword [rbp + 0x4c], r12d
jne 0x140180919
lea rax, [0x1401dc4f4]
mov r15d, 0xb
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x17b47
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140088f10
mov r12d, r15d
mov dword [rsp + 0x50], r15d
mov rdx, rbx
mov rcx, r13
call fcn.140138d80
mov byte [r13 + 0xc5], 0
test r12d, r12d
je 0x14017b359
mov rcx, r13
call fcn.14016cac0
cmp r12d, 7
je 0x14017dac0
mov r15, qword [rsp + 0x60]
jmp 0x14017f8e1
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov edx, dword [rax + 4]
call fcn.14012ce80
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [r13 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.14015c1a0
test rax, rax
je 0x1401809c8
cmp qword [r13 + 0x308], 0
jne 0x1401809bd
mov ecx, 0xffffffff
add dword [rax + 0x2c], ecx
jne 0x1401809c8
mov rdx, rax
mov rcx, r13
call fcn.1400bddb0
or dword [r13 + 0x2c], 1
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x48]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.14015c1a0
mov r8, rax
test rax, rax
je 0x1401809c8
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, r8
jne 0x140180a26
mov rcx, qword [r8 + 0x28]
mov qword [rax + 0x10], rcx
jmp 0x140180a4b
test rcx, rcx
je 0x140180a4b
nop dword [rax + rax]
lea rdx, [rcx + 0x28]
mov rcx, qword [rcx + 0x28]
cmp rcx, r8
je 0x140180a44
test rcx, rcx
jne 0x140180a30
jmp 0x140180a4b
mov rax, qword [r8 + 0x28]
mov qword [rdx], rax
mov rdx, r8
mov rcx, r13
call fcn.140145bb0
or dword [r13 + 0x2c], 1
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rbx, qword [rsp + 0x48]
xor r8d, r8d
mov rax, qword [r13 + 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.14015c1a0
mov rbx, rax
test rax, rax
je 0x14017b359
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x140180aeb
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.1400c41c0
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x140180aeb
mov rax, qword [rdx + 0x58]
add rdx, 0x58
test rax, rax
je 0x140180aeb
nop dword [rax]
cmp rax, rbx
je 0x140180ae4
lea rdx, [rax + 0x40]
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x140180ad0
jmp 0x140180aeb
mov rax, qword [rax + 0x40]
mov qword [rdx], rax
mov rdx, rbx
mov rcx, r13
call fcn.14013a3d0
or dword [r13 + 0x2c], 1
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r12, qword [rsp + 0x48]
lea r9, [rbp - 0x10]
mov rdx, qword [r13 + 0x20]
mov qword [rsp + 0x30], r9
lea r9, [rbp - 0x30]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r12 + 0xc]
mov r8, qword [r12 + 0x10]
mov r9d, dword [r12 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
movzx eax, word [r12 + 2]
add rdi, r11
shl rax, 5
add rbx, r11
mov ecx, dword [rdi]
mov rdx, qword [rax + rdx + 8]
inc ecx
mov dword [rsp + 0x20], ecx
mov rcx, r13
call fcn.1401316d0
mov r12d, eax
mov dword [rsp + 0x50], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140180b9f
mov rcx, rbx
call fcn.14019c2a0
jmp 0x140180ba5
mov word [rbx + 0x14], 1
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x140180bdf
test r12d, r12d
jne 0x14018332b
mov rdx, qword [rbp - 0x10]
dec eax
movsxd rcx, eax
mov r9b, 1
sub qword [rdi], rcx
lea rax, [fcn.1400a6a70]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
call fcn.140185e20
test byte [rbx + 0x14], 2
movzx eax, byte [rsp + 0x40]
jne 0x140180bf2
mov byte [rbx + 0x16], al
jmp 0x1401826c1
cmp byte [rbx + 0x16], al
je 0x1401826c1
movzx edx, al
mov rcx, rbx
call fcn.140186340
jmp 0x1401826c1
mov rcx, qword [rsp + 0x48]
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 0x140180c3c
mov rcx, rbx
call fcn.140185d20
test eax, eax
jne 0x14017dabb
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.14016d510
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
test byte [rdi + 0x14], 0x10
je 0x140180ce8
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x140180c8f
test al, 1
jne 0x140180c8a
mov rcx, qword [rbx + 0x10]
call fcn.140122530
mov qword [rbx + 0x10], rax
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140180ce8
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140180cb0
mov rcx, rbx
call fcn.14016d440
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsp + 0x58]
test word [rcx + 0x14], ax
je 0x140180cda
mov rdx, rdi
call fcn.14019d380
jmp 0x1401826c1
mov qword [rcx], rdi
mov word [rcx + 0x14], 4
jmp 0x1401826c1
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x140180d00
mov rcx, rdi
call fcn.14019c2a0
jmp case.0x14017b0bd.9
mov word [rdi + 0x14], 1
jmp case.0x14017b0bd.9
mov rcx, qword [rsp + 0x48]
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 0x140180d3f
mov rcx, rbx
call fcn.140185d20
test eax, eax
jne 0x14017dab6
test esi, esi
je 0x140180d5b
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.14016d580
test eax, eax
jne 0x14017cc0a
test esi, esi
js 0x14017c140
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.14016d510
mov r11, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r11
cmp word [rcx + 2], 0
je 0x140180dc3
mov rax, qword [rsi + 0x108]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x140180dc3
nop dword [rax]
cmp qword [rax + 0x30], rcx
je 0x140182e74
mov rax, qword [rax + 8]
test rax, rax
jne 0x140180db0
mov eax, dword [r13 + 0xb0]
cmp dword [rsi + 0x118], eax
jge 0x14018333e
test byte [r15 + 0x14], 0x10
jne 0x140180f13
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 0x140180e0a
add eax, 7
sar eax, 3
lea r14d, [rax + rcx*8]
mov rcx, r13
movsxd rsi, r14d
mov rdx, rsi
call fcn.140138f10
mov rbx, rax
test rax, rax
je 0x14017dab6
mov r8, rsi
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov eax, 0x9000
test word [r15 + 0x14], ax
jne 0x140180e4b
cmp dword [r15 + 0x20], 0
je 0x140180e53
mov rcx, r15
call fcn.14019c250
mov rsi, qword [rsp + 0x68]
lea rax, [0x140184370]
mov rcx, qword [rsp + 0x48]
sub rcx, qword [rsp + 0x78]
mov word [r15 + 0x14], 0x1010
mov qword [r15 + 8], rbx
mov dword [r15 + 0x10], r14d
mov qword [r15 + 0x30], rax
mov qword [rbx], rsi
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 [rsi + 0x68]
mov qword [rbx + 0x18], rax
mov eax, dword [rsi + 0x24]
mov dword [rbx + 0x54], eax
mov rax, qword [rsi + 0x78]
mov qword [rbx + 0x20], rax
mov eax, dword [rsi + 0x28]
mov dword [rbx + 0x48], eax
mov rax, qword [rsi + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [rsi + 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 0x140180f17
nop word [rax + rax]
mov word [rax + 0x14], dx
mov qword [rax + 0x18], r13
add rax, 0x38
cmp rax, rcx
jne 0x140180f00
jmp 0x140180f17
mov rbx, qword [r15 + 8]
inc dword [rsi + 0x118]
mov rax, qword [rsi + 0x108]
mov qword [rbx + 8], rax
mov rax, qword [r13 + 0x38]
mov qword [rbx + 0x38], rax
mov rax, qword [rsi + 0x38]
mov qword [rbx + 0x60], rax
mov rax, qword [rsi]
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [rsi + 0x128]
mov qword [rbx + 0x40], rax
mov qword [rsi + 0x128], rdx
mov qword [rsi + 0x38], rdx
lea rdx, [rbx + 0x70]
mov qword [rsi + 0x108], rbx
mov qword [rsi + 0x68], rdx
movsxd rcx, dword [rbx + 0x58]
mov dword [rsi + 0x24], ecx
movzx eax, word [rbx + 0x5c]
mov dword [rsi + 0x28], eax
mov qword [rsp + 0x58], rdx
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [rsi + 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 sub.VCRUNTIME140.dll_memset
mov r14, qword [r12]
mov qword [rsi + 0x88], r14
mov eax, dword [r12 + 8]
mov r12d, dword [rsp + 0x50]
lea rcx, [r14 - 0x18]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x48], rcx
mov dword [rsi + 0x90], eax
jmp 0x1401826c1
mov rax, qword [rsp + 0x48]
mov r13d, 0x9000
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [rsi + 0x68]
test word [r9 + 0x14], r13w
je 0x140181007
mov rcx, r9
call fcn.140115880
mov r9, rax
jmp 0x14018100e
mov word [r9 + 0x14], 4
mov r8, qword [rsi + 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 + 0x48]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x18]
test word [r9 + 0x14], r13w
je 0x14018105f
mov rdx, rcx
mov r8d, 0x4000
mov rcx, r9
call fcn.14019b3d0
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
movups xmm0, xmmword [rcx]
mov eax, 0x2000
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 0x14], ax
jne 0x14017b359
mov r15, qword [rsp + 0x48]
mov eax, 0xcfff
and word [r9 + 0x14], ax
mov eax, 0x4000
or word [r9 + 0x14], ax
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov eax, dword [r13 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r15, rax
jae 0x1401810d4
movsxd rax, dword [rax + 8]
add qword [r13 + 0x300], rax
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x1401810f8
add qword [r13 + 0x2f8], rax
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
add qword [rsi + 0x50], rax
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
cmp dword [r15 + 4], 0
je 0x140181145
cmp qword [r13 + 0x2f8], 0
jne case.0x14017b0bd.89
cmp qword [r13 + 0x300], 0
je 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
cmp qword [rsi + 0x50], 0
jne case.0x14017b0bd.89
cmp qword [r13 + 0x300], 0
je 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rcx, qword [rsi + 0x108]
test rcx, rcx
je 0x1401811af
mov rax, qword [rcx + 8]
test rax, rax
je 0x14018119c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140181190
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x1401811bf
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 0x24
je 0x1401811cc
mov rax, qword [rbx]
jmp 0x1401811fa
test al, 8
je 0x1401811db
movsd xmm0, qword [rbx]
call fcn.1400be140
jmp 0x1401811fa
test al, 0x12
je 0x1401811f7
cmp qword [rbx + 8], 0
je 0x1401811f7
mov rcx, rbx
call fcn.140110980
mov r11, qword [rsp + 0x58]
xor edx, edx
jmp 0x1401811fa
mov rax, rdx
mov qword [rbx], rax
mov r15d, 0xf244
and word [rbx + 0x14], r15w
or word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, r11
movzx eax, word [rdi + 0x14]
test al, 0x24
je 0x14018122a
mov rax, qword [rdi]
jmp 0x140181256
test al, 8
je 0x140181239
movsd xmm0, qword [rdi]
call fcn.1400be140
jmp 0x140181256
test al, 0x12
je 0x140181253
cmp qword [rdi + 8], 0
je 0x140181253
mov rcx, rdi
call fcn.140110980
mov r11, qword [rsp + 0x58]
jmp 0x140181256
mov rax, rdx
mov qword [rdi], rax
and word [rdi + 0x14], r15w
or word [rdi + 0x14], 4
cmp qword [rbx], rax
jge 0x14017b359
mov qword [rbx], rax
jmp 0x14017b525
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x14017b535
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x14017cc0f
mov rcx, qword [rsp + 0x48]
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 [rsi + 0x68]
test word [r8 + 0x14], ax
je 0x1401812eb
mov rcx, r8
call fcn.140115880
mov r11, qword [rsp + 0x58]
mov r8, rax
jmp 0x1401812f2
mov word [r8 + 0x14], 4
mov rcx, qword [rbx]
test rcx, rcx
jle 0x14018132b
mov rdx, qword [rdi]
mov eax, 0
test rdx, rdx
cmovle rdx, rax
test rdx, rdx
js 0x140181320
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, rdx
jl 0x14018132b
add rcx, rdx
mov qword [r8], rcx
jmp 0x14017b525
mov rcx, 0xffffffffffffffff
mov qword [r8], rcx
jmp 0x14017b525
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x14017b626
mov r15, qword [rsp + 0x48]
jle 0x14017cc11
dec rax
mov qword [rcx + r11], rax
jmp 0x14017cc11
mov rax, qword [rsp + 0x48]
movabs r8, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, r8
jle 0x140181392
dec rax
mov qword [rcx + r11], rax
mov r15, qword [rsp + 0x48]
test rax, rax
je 0x14017cc11
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov rcx, r13
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.140138f10
mov r8, rax
test rax, rax
je 0x14017dabb
xor r15d, r15d
lea rcx, [rbx + 6]
mov qword [rax + 0x10], r15
lea rcx, [rax + rcx*8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
mov word [rcx + 0x14], 1
mov qword [rcx + 0x18], r13
mov dword [rcx + 0x20], r15d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movzx eax, byte [rsp + 0x40]
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], rsi
mov byte [r8 + 0x29], r15b
mov dword [r8 + 0x24], r15d
mov byte [r8 + 0x28], al
mov rax, qword [rsp + 0x48]
mov byte [r8 + 0x2a], bl
mov byte [rax + 1], 0xf1
mov qword [rax + 0x10], r8
mov byte [rax], 0xa3
jmp 0x14018145d
mov rax, qword [rsp + 0x48]
xor r15d, r15d
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov rdi, qword [rsp + 0x58]
imul r10, rax, 0x38
add r10, rdi
mov qword [rbp - 0x68], r10
cmp qword [rbx + 0x10], r10
je 0x1401814c5
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1401814c5
mov r10, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [r10 + 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 0x1401814a0
mov r10, qword [rbp - 0x68]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [rcx + 4], 0
mov rcx, rbx
je 0x1401814e8
call qword [rax + 0x30]
jmp 0x1401814eb
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140182c2e
jle 0x140181554
mov rcx, qword [rbx]
test rcx, rcx
jne 0x140181505
mov rax, r15
jmp 0x140181539
movzx edx, word [rcx + 0x14]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x140181528
cmp byte [rcx + 0x16], 1
jne 0x140181528
mov rax, qword [rcx + 8]
jmp 0x140181539
test dl, 1
je 0x140181532
mov rax, r15
jmp 0x140181539
mov dl, 1
call fcn.14019afb0
mov r8, rax
lea rdx, [0x1401d47c0]
mov rcx, rsi
call fcn.14017af00
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x50], r12d
cmp byte [rbx + 0x29], 0
je 0x140181597
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x140181593
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rdi
test word [rcx + 0x14], ax
je 0x140181585
mov edx, 1
call fcn.14019d380
jmp 0x140181593
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 0x1401815ab
cmp dword [rcx + 0x20], 0
je 0x1401815b0
call fcn.14019c250
mov rax, qword [rbx]
xor edx, edx
mov r13d, 1
mov word [rax + 0x14], r13w
mov dword [rbx + 0x24], edx
test r12d, r12d
jne 0x140183232
mov r15, qword [rsp + 0x48]
mov r11, rdi
jmp 0x14017b2fd
mov rcx, qword [rsp + 0x48]
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 0x140181691
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x158], xmm0
movups xmmword [rbp + 0x168], xmm0
xor eax, eax
mov qword [rbp + 0x188], rax
add rdi, r11
mov eax, 0x9000
movups xmmword [rbp + 0x178], xmm0
test word [rdi + 0x14], ax
je 0x140181636
mov rcx, rdi
call fcn.14019c2a0
jmp 0x14018163c
mov word [rdi + 0x14], 1
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x168], rbx
mov qword [rbp + 0x160], rsi
mov rax, qword [rbx + 0x18]
movzx ecx, byte [rax + 0x64]
mov byte [rbp + 0x180], cl
lea rcx, [rbp + 0x158]
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r12d, dword [rbp + 0x17c]
mov rdi, qword [rsp + 0x70]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x50], r12d
add rbx, r11
jmp 0x1401816a8
mov rdx, rsi
mov rcx, rbx
call fcn.140185740
mov r11, qword [rsp + 0x58]
mov r12d, eax
mov dword [rsp + 0x50], eax
test r12d, r12d
jne 0x140183360
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
jne 0x1401816d0
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov byte [rbx + 0x16], r9b
jmp 0x14017b530
cmp byte [rbx + 0x16], r9b
je 0x140182c43
movzx edx, r9b
mov rcx, rbx
call fcn.140186340
mov r11, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
lea rax, [rbp + 0x2d8]
mov dword [rbp + 0x2d0], edx
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x2d4]
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov dword [rbp + 0x2d8], 0xffffffff
mov dword [rbp + 0x2d4], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.140133ca0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
je 0x14018175d
cmp eax, 5
jne 0x14017c336
xor eax, eax
mov r12d, eax
mov dword [rsp + 0x50], eax
lea ecx, [rax + 1]
jmp 0x140181763
mov ecx, dword [rbp + 0x2d0]
mov rax, qword [rsp + 0x48]
mov r13d, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, qword [rsp + 0x58]
test word [rbx + 0x14], r13w
je 0x140181797
mov rdx, rax
mov rcx, rbx
call fcn.14019d380
mov edx, 4
jmp 0x1401817a3
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0x2d4]
test word [rbx + 0x4c], r13w
je 0x1401817c4
mov rdx, rax
call fcn.14019d380
mov edx, 4
jmp 0x1401817cb
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0x2d8]
test word [rbx + 0x84], r13w
je 0x1401817f7
mov rdx, rax
call fcn.14019d380
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x14017b52a
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul r15, rax, 0x38
mov eax, 0x9000
add r15, qword [rsi + 0x68]
test word [r15 + 0x14], ax
je 0x14018183a
mov rcx, r15
call fcn.140115880
mov r15, rax
jmp 0x140181841
mov word [r15 + 0x14], 4
mov edx, dword [rbx + 0xc]
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x20]
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 0x140181881
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x140181884
cmp qword [rbx + 0x60], 0
jle 0x140181884
mov esi, r14d
cmp byte [rbx + 0x13], 0
jne 0x14018189f
lea rax, [0x14020f3c0]
cmp qword [rbx], rax
je 0x14018189f
mov rcx, qword [rbx + 0xd8]
jmp 0x1401818a6
lea rcx, [0x1401cfb64]
cmp esi, 5
jne 0x1401818ee
test rcx, rcx
je 0x1401818e6
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401818b7
test eax, 0x3fffffff
je 0x1401818e6
cmp byte [rbx + 0x11], 0
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax]
jne 0x1401818e6
cmp byte [rbx + 8], 0
jne 0x1401818ee
cmp dword [rcx], 2
jl 0x1401818e6
cmp qword [rcx + 0x68], 0
jne 0x1401818ee
mov esi, r14d
jmp 0x140181a6e
cmp esi, r14d
je 0x140181a6e
cmp r14d, 5
je 0x140181906
cmp esi, 5
jne 0x140181a6e
mov r12, qword [rsp + 0x60]
cmp byte [r12 + 0x65], 0
je 0x140183389
cmp dword [r12 + 0xdc], 1
jg 0x140183389
cmp r14d, 5
jne 0x140181a37
xor ecx, ecx
mov edi, ecx
cmp qword [rbx + 0x128], rcx
jne 0x1401819ad
mov dword [rbp - 0x48], ecx
movzx eax, byte [rbx + 0x16]
cmp al, 1
jb 0x14018194d
cmp al, r14b
jne 0x140181971
cmp byte [rbx + 0x11], cl
jne 0x140181967
mov rcx, qword [rbx + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + 0x38]
mov edi, eax
test eax, eax
jne 0x140181971
cmp byte [rbx + 0x16], 5
je 0x140181971
mov byte [rbx + 0x16], 1
test edi, edi
jne 0x140181a20
mov rax, qword [rbx]
lea r9, [rbp - 0x48]
mov rdx, qword [rbx + 0x130]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov edi, eax
test eax, eax
jne 0x140181a20
cmp dword [rbp - 0x48], eax
je 0x1401819ad
mov rcx, rbx
call fcn.140116380
mov edi, eax
test eax, eax
jne 0x140181a20
cmp qword [rbx + 0x128], 0
je 0x140181a20
mov rcx, rbx
call fcn.140116090
mov edi, eax
test eax, eax
jne 0x140181a20
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.140189d30
mov edi, eax
mov dword [rsp + 0x50], eax
mov r12d, eax
mov rcx, rbx
xor eax, eax
mov qword [rbx + 0x128], rax
call fcn.140116110
test r12d, r12d
je 0x140181a20
cmp byte [rbx + 8], 0
jne 0x140181a20
mov edx, 1
mov rcx, rbx
call fcn.140116c30
jmp 0x140181a73
mov dword [rsp + 0x50], edi
mov r12d, edi
test edi, edi
jne 0x140181a73
mov edx, esi
mov rcx, rbx
call fcn.140163760
jmp 0x140181a53
cmp r14d, 4
jne 0x140181a49
lea edx, [r14 - 2]
mov rcx, rbx
call fcn.140163760
mov r12d, dword [rsp + 0x50]
test r12d, r12d
jne 0x140181a73
xor eax, eax
mov rcx, r13
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.140132ef0
mov r12d, eax
mov dword [rsp + 0x50], eax
test r12d, r12d
je 0x140181a76
mov esi, r14d
mov edx, esi
mov rcx, rbx
call fcn.140163760
mov word [r15 + 0x14], 0x2202
cmp eax, 6
jne 0x140181a96
xor ebx, ebx
mov qword [r15 + 8], rbx
mov eax, ebx
jmp 0x140181ad0
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x1d0d00]
mov qword [r15 + 8], rcx
test rcx, rcx
jne 0x140181ab6
xor ebx, ebx
mov eax, ebx
jmp 0x140181ad0
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140181ac0
and eax, 0x3fffffff
xor ebx, ebx
movzx r9d, byte [rsp + 0x40]
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x16], 1
cmp r9b, 1
je 0x140181af7
movzx edx, r9b
mov rcx, r15
call fcn.140186340
movzx r9d, byte [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
test r12d, r12d
jne 0x1401835f1
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017bb02
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 8]
test eax, eax
je 0x140181b2b
imul r9, rax, 0x38
add r9, r11
jmp 0x140181b2e
mov r9, rdx
mov r8d, dword [r12 + 4]
lea rcx, [rsi + 0xa8]
mov rdx, r13
call fcn.14016de00
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x140181b91
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x140181b91
mov rcx, rsi
call fcn.1400b42c0
cmp byte [rdi + 0x21], 0
jne 0x140181ba7
mov r12d, 0x65
mov dword [rsp + 0x50], r12d
jmp 0x140181ca4
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.1400c3d00
mov r15d, eax
cmp r14d, eax
jb 0x140181c6c
cmp ebx, r14d
jae 0x140181c6c
test ebx, ebx
je 0x140181c5f
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x140181c05
xor r8d, r8d
xor edx, edx
call fcn.140126ce0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x140181c9f
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x140181c1d
nop
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140181c10
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.140108fa0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x140181c9f
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.140163e90
mov edx, dword [rdi + 0x40]
mov r12d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x140181c9f
mov r12d, 0x65
mov dword [rsp + 0x50], r12d
jmp 0x140181c9f
lea rax, [0x1401dc4f4]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x11af8
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140088f10
mov r12d, ebx
mov dword [rsp + 0x50], ebx
mov r14, qword [rsp + 0x78]
cmp byte [rsi + 0x11], 0
je 0x140181cb8
sub dword [rsi + 0x14], 1
jne 0x140181cb8
mov rcx, rsi
call fcn.140198850
test r12d, r12d
je 0x14017c140
cmp r12d, 0x65
jne 0x14017f8d2
mov r15, qword [rsp + 0x48]
xor edx, edx
mov r12d, edx
mov dword [rsp + 0x50], edx
jmp 0x14017cc11
cmp dword [r15 + 4], 0
jne 0x140181d33
mov rdx, qword [r13 + 8]
mov r8d, dword [r15 + 8]
test rdx, rdx
je 0x14017b535
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 0x140181d00
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov eax, dword [rsi + 0xc8]
mov ecx, dword [r15 + 8]
inc ecx
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rsi + 0xc8], ecx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
or byte [rax + 1], 0x40
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
and byte [rax + 1], 0xbf
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rsp + 0x48]
movzx r8d, byte [rax + 0xc]
test r8b, r8b
jne 0x140181ddf
mov eax, dword [r13 + 0x30]
bt rax, 0xa
jb 0x14017b626
mov r12, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x20]
movsxd rax, dword [r12 + 4]
mov edx, dword [r12 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140131cb0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
je 0x14017b359
mov r14, qword [rsp + 0x48]
cmp al, 6
jne 0x140181e2b
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, rsi
call fcn.14017af00
mov r15, qword [rsp + 0x60]
mov eax, 0xb
lea r13d, [rax - 0xa]
jmp 0x14017f8f1
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x50], edx
movsxd rdx, dword [r13 + 0x224]
mov rbx, qword [rcx + 0x10]
test edx, edx
jle 0x140181e8f
cmp qword [r13 + 0x248], 0
jne 0x140181e8f
mov dword [rbp - 0x78], 6
mov r12d, 6
mov dword [rsp + 0x50], r12d
test rbx, rbx
jne 0x140181f5f
mov r15, qword [rsp + 0x60]
lea eax, [rbx + 0xb]
mov r14, rcx
lea r13d, [rbx + 1]
jmp 0x14017f8f1
test rbx, rbx
jne 0x140181eb3
xor edx, edx
mov r15, rcx
mov r12d, edx
mov dword [rsp + 0x50], edx
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x140181f55
xor r8d, r8d
mov ecx, r8d
test edx, edx
jle 0x140181eeb
mov rax, qword [r13 + 0x248]
cmp qword [rax], rbx
je 0x140181f83
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x140181ed6
mov rcx, r13
call fcn.140108630
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140181f55
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x140181f55
mov edx, dword [r13 + 0x2f4]
add edx, dword [r13 + 0x2f0]
movsxd rcx, dword [r13 + 0x224]
mov rax, qword [r13 + 0x248]
mov qword [rax + rcx*8], rbx
inc dword [r13 + 0x224]
inc dword [rbx + 0x18]
test edx, edx
je 0x140181f55
cmp qword [rdi + 0xa0], 0
je 0x140181f55
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0xa0]
mov dword [rsp + 0x50], eax
mov r12d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x70]
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.1401891d0
test r12d, r12d
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov r12d, r8d
mov dword [rsp + 0x50], r8d
jmp 0x140181f5a
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x58]
mov qword [rbp + 0x58], rdx
xorps xmm0, xmm0
mov qword [rbp + 0x88], rdx
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], r13
movdqu xmmword [rbp + 0x78], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r11
call fcn.140185630
movzx ecx, word [rbp + 0x6c]
mov r12d, eax
mov dword [rsp + 0x50], eax
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140181fec
cmp byte [rbp + 0x6e], 1
jne 0x140181fec
mov rax, qword [rbp + 0x60]
jmp 0x140182004
test cl, 1
jne 0x14018212b
mov dl, 1
lea rcx, [rbp + 0x58]
call fcn.14019afb0
movzx ecx, word [rbp + 0x6c]
test rax, rax
je 0x14018212b
mov r8, qword [r13 + 0x20]
lea rbx, [rsi + 0xa8]
mov rcx, qword [rsp + 0x48]
mov rdx, rax
movsxd rcx, dword [rcx + 4]
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, r13
call fcn.1401434f0
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x48]
mov rdi, qword [rcx]
lea rcx, [r13 + 0x228]
mov rdx, rdi
call fcn.1400c41c0
mov r8, qword [rax + 0x10]
test r8, r8
je 0x1401820fc
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x1401820fc
cmp qword [rcx + 0x28], 0
je 0x1401820fc
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r13
call fcn.14019f2d0
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018211d
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x14018211d
cmp qword [rax], r13
je 0x1401820b4
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401820a4
jmp 0x14018211d
mov rcx, r13
call fcn.140108630
mov dword [rsp + 0x50], eax
mov r12d, eax
test eax, eax
jne 0x14018211d
mov rdx, qword [rsi + 0x50]
test rdx, rdx
je 0x1401820de
cmp qword [rdx], r13
je 0x1401820de
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1401820d0
movsxd rcx, dword [r13 + 0x224]
mov rax, qword [r13 + 0x248]
mov qword [rax + rcx*8], rdx
inc dword [r13 + 0x224]
inc dword [rdx + 0x18]
jmp 0x14018211d
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r13
call fcn.140160a90
mov qword [rbx], rax
mov eax, 1
mov r12d, eax
mov dword [rsp + 0x50], eax
movzx ecx, word [rbp + 0x6c]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov eax, 0x9000
test ax, cx
jne 0x14018213b
cmp dword [rbp + 0x78], 0
je 0x140182144
lea rcx, [rbp + 0x58]
call fcn.14019c250
test r12d, r12d
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
mov rcx, r13
inc dword [r13 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140188760
dec dword [r13 + 0xe8]
mov r12d, eax
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x14017c336
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x40], rdx
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401833d2
mov rdi, qword [rbx]
test rdi, rdi
je 0x1401833cd
lea rdx, [rbp - 0x40]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, rsi
mov r12d, eax
mov dword [rsp + 0x50], eax
call fcn.1401891d0
test r12d, r12d
jne 0x14018301c
mov rax, qword [rbp - 0x40]
mov r9b, 2
xor r8d, r8d
mov rcx, rsi
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.1400ada90
mov rcx, qword [rbp - 0x40]
test rax, rax
je 0x1401833c5
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
call fcn.140195a20
test eax, eax
jne 0x14017dac0
lea ecx, [rax + 0x10]
call fcn.140160ac0
mov rdi, rax
test rax, rax
je 0x14017dabb
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
add rdx, qword [rsp + 0x58]
mov qword [rdi + 8], rdx
movsxd rcx, dword [rax + 8]
mov eax, 0x9000
imul rbx, rcx, 0x38
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x140182298
mov rcx, rbx
call fcn.140115880
mov rbx, rax
mov rcx, rbx
mov word [rbx + 0x14], 1
call fcn.14019c250
mov r15, qword [rsp + 0x48]
lea rax, str.ValueList
mov r11, qword [rsp + 0x58]
mov qword [rbx], rax
lea rax, [fcn.1400d2b50]
mov qword [rbx + 8], rdi
mov word [rbx + 0x14], 0x1a01
mov byte [rbx + 0x17], 0x70
mov qword [rbx + 0x30], rax
jmp 0x14017b52a
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
mov r13, qword [rax + rcx*8]
lea rbx, [rdx + 0x38]
mov rax, qword [rsp + 0x68]
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 0x14018244b
cmp edi, 8
jb 0x14018244b
cmp r8d, 6
jl 0x14018244b
movdqa xmm7, xmmword [0x1401dc6f0]
mov eax, edi
and eax, 0x80000007
jge 0x140182355
dec eax
or eax, 0xfffffff8
inc eax
movdqa xmm5, xmmword [0x1401dc6b0]
lea rcx, [r11 + 0x20]
movdqa xmm6, xmmword [0x1401dc6d0]
mov r10d, edi
sub r10d, eax
mov r8d, 4
nop word [rax + rax]
movq xmm3, xmm7
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, xmm6
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movq xmm0, xmm6
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm6
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movq xmm0, xmm6
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x140182380
cmp rdx, rdi
jge 0x140182479
lea r8d, [r9 + 1]
nop dword [rax]
nop dword [rax + 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 0x140182460
mov rax, qword [rsp + 0x48]
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 [rsp + 0x68]
mov rdx, r15
mov r12d, eax
mov dword [rsp + 0x50], eax
call fcn.1401891d0
test r12d, r12d
jne 0x14017f8d2
mov rcx, rsi
call qword [r14 + 0x50]
mov r14, qword [rsp + 0x78]
mov byte [r13 + 2], r12b
test eax, eax
je 0x14017c140
jmp 0x14017cc0a
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsi + 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 0x140182516
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14017ca5a
mov rcx, rbx
call fcn.14019c2a0
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
jmp 0x14017b52a
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rcx, qword [rsp + 0x48]
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
movups xmmword [rbp + 0x1b8], xmm0
mov qword [rbp + 0x1b8], rbx
movups xmmword [rbp + 0x1d8], xmm0
mov byte [rbp + 0x1e0], r9b
movups xmmword [rbp + 0x1c8], xmm0
mov qword [rbp + 0x1e8], rax
test byte [rcx + 2], 1
je 0x14018257e
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140182574
mov rcx, rbx
call fcn.14019c2a0
mov rcx, qword [rsp + 0x48]
xor edx, edx
mov word [rbx + 0x14], 0x401
mov dword [rbx], edx
jmp 0x140182592
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 + 0x1b8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
mov dword [rsp + 0x50], eax
mov r12d, eax
call fcn.1401891d0
cmp dword [rbp + 0x1dc], 0
jle 0x140182616
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1401825e5
cmp byte [rbx + 0x16], 1
jne 0x1401825e5
mov rax, qword [rbx + 8]
jmp 0x1401825f8
test cl, 1
je 0x1401825ee
xor eax, eax
jmp 0x1401825f8
mov dl, 1
mov rcx, rbx
call fcn.14019afb0
mov r8, rax
lea rdx, [0x1401d47c0]
mov rcx, rsi
call fcn.14017af00
mov r12d, dword [rbp + 0x1dc]
mov dword [rsp + 0x50], r12d
test byte [rbx + 0x14], 2
movzx r9d, byte [rsp + 0x40]
jne 0x140182628
mov byte [rbx + 0x16], r9b
jmp 0x140182640
cmp byte [rbx + 0x16], r9b
je 0x140182640
movzx edx, r9b
mov rcx, rbx
call fcn.140186340
movzx r9d, byte [rsp + 0x40]
test r12d, r12d
jne 0x14018301c
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017bb02
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x14017b626
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rcx, qword [rsp + 0x68]
mov rdx, rbx
mov r12d, eax
mov dword [rsp + 0x50], eax
call fcn.1401891d0
test r12d, r12d
jne 0x14017f8d2
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x1401826c1
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r14 + rcx*8]
mov qword [rsp + 0x48], rax
mov eax, dword [r13 + 0x198]
mov rdi, qword [rsp + 0x70]
test eax, eax
jne 0x1401835d2
mov r14, qword [rbp - 0x50]
cmp rdi, r14
jb 0x140182c24
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [r13 + 0x210]
test rdx, rdx
je 0x140182c24
mov eax, dword [r13 + 0x220]
mov rcx, qword [r13 + 0x218]
add r14, rax
mov qword [rbp - 0x50], r14
call rdx
test eax, eax
jne 0x1401833e2
cmp rdi, r14
jae 0x1401826f0
mov rsi, qword [rsp + 0x68]
jmp 0x14017baf2
mov rcx, qword [rsp + 0x48]
mov edi, dword [r13 + 0x30]
or qword [r13 + 0x30], 0x4000000
and edi, 0x4000000
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 0x140182764
mov byte [rbx + 0x16], 1
jmp 0x14018277f
cmp byte [rbx + 0x16], 1
je 0x14018277f
mov dl, 1
mov rcx, rbx
call fcn.140186340
mov r12d, eax
test eax, eax
jne 0x14017f8d2
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x50], eax
mov r12d, eax
test edi, edi
jne 0x1401827a2
and qword [r13 + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
call fcn.1401891d0
and dword [rsi + 0xc8], 0xfffffffc
test r12d, r12d
jne 0x14018301c
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov qword [rbp - 0x18], rdx
cmp byte [r13 + 0x67], 0
jne 0x14017dac0
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401833d2
mov r10, qword [rbx]
test r10, r10
je 0x1401833d2
cmp qword [r10 + 0x68], 0
mov rdx, qword [rsp + 0x48]
movsxd rdx, dword [rdx + 8]
je 0x140182e91
mov r12, qword [rsp + 0x48]
movzx edi, byte [r13 + 0x6c]
mov r8, qword [rsi + 0x70]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r11
test edx, edx
jle 0x140182850
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x140182840
movzx eax, byte [r12 + 2]
lea r9, [rbp - 0x18]
mov rcx, rbx
mov byte [r13 + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r13 + 0x6c], dil
mov rcx, rsi
mov dword [rsp + 0x50], eax
mov r12d, eax
call fcn.1401891d0
test r12d, r12d
jne 0x140182895
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 4], r12d
je 0x1401828cf
mov rax, qword [rbp - 0x18]
mov qword [r13 + 0x38], rax
jmp 0x1401828cf
cmp r12b, 0x13
jne 0x1401828ca
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x1401828ca
mov rcx, qword [rsp + 0x48]
movzx ecx, word [rcx + 2]
cmp ecx, 4
jne 0x1401833ff
xor edx, edx
mov r12d, edx
mov dword [rsp + 0x50], edx
jmp 0x14017b2f3
mov r15, qword [rsp + 0x48]
inc qword [rsi + 0x38]
test r12d, r12d
jne 0x14018301c
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14018290f
mov rcx, rdx
call fcn.140115880
mov rdx, rax
jmp 0x140182915
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 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 0x14017b52a
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x68]
add rsi, qword [rax + 0x68]
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x140182974
mov rcx, rsi
call fcn.140115880
mov rsi, rax
xor edx, edx
jmp 0x14018297a
mov word [rsi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov edi, edx
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x1401829a5
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x1401829bc
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401829bc
mov rcx, rbx
call fcn.1400b42c0
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x1401829cd
mov dword [rcx + 0xbc], edi
cmp byte [rbx + 0x11], 0
mov edi, dword [rcx + 0xbc]
je 0x1401829e7
sub dword [rbx + 0x14], 1
jne 0x1401829e7
mov rcx, rbx
call fcn.140198850
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov qword [rsi], rdi
mov rsi, qword [rsp + 0x68]
jmp 0x14017b52a
mov rax, qword [rsp + 0x48]
mov r15, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp qword [r15], rbx
je 0x140182a66
mov qword [r15 + 0x18], rsi
mov qword [r15], rbx
mov byte [r15 + 0x28], r9b
movzx eax, byte [r15 + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x140182a66
mov r13, qword [rsp + 0x48]
lea r8, [r15 + 0x30]
lea r8, [r8 + rdx*8]
mov eax, dword [r13 + 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 0x140182a40
mov r13, qword [rsp + 0x60]
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 0x140182c2e
jle 0x140182ae9
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x140182abb
cmp byte [rbx + 0x16], 1
jne 0x140182abb
mov rax, qword [rbx + 8]
jmp 0x140182ace
test cl, 1
je 0x140182ac4
xor eax, eax
jmp 0x140182ace
mov dl, 1
mov rcx, rbx
call fcn.14019afb0
mov r8, rax
lea rdx, [0x1401d47c0]
mov rcx, rsi
call fcn.14017af00
mov r12d, dword [r15 + 0x24]
mov dword [rsp + 0x50], r12d
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x68]
mov esi, dword [r15 + 0x20]
add rdi, 0x128
mov r14d, dword [rbx + 4]
mov rbx, qword [rdi]
test rbx, rbx
je 0x140182c0b
nop
test esi, esi
js 0x140182b33
cmp dword [rbx], esi
jne 0x140182b2a
mov eax, dword [rbx + 4]
test eax, eax
js 0x140182b2a
cmp eax, 0x1f
jg 0x140182b33
bt r14d, eax
jae 0x140182b33
lea rdi, [rbx + 0x18]
jmp 0x140182bff
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x140182b42
mov rcx, qword [rbx + 8]
call rax
mov rax, qword [rbx + 0x18]
mov qword [rdi], rax
cmp rbx, qword [r13 + 0x1f0]
jae 0x140182b8d
cmp rbx, qword [r13 + 0x1e0]
jb 0x140182b71
mov rax, qword [r13 + 0x1d8]
mov qword [rbx], rax
mov qword [r13 + 0x1d8], rbx
jmp 0x140182bff
cmp rbx, qword [r13 + 0x1e8]
jb 0x140182b8d
mov rax, qword [r13 + 0x1c8]
mov qword [rbx], rax
mov qword [r13 + 0x1c8], rbx
jmp 0x140182bff
cmp qword [r13 + 0x308], 0
je 0x140182ba4
mov rdx, rbx
mov rcx, r13
call fcn.140110910
jmp 0x140182bff
cmp dword [0x14020e0b0], 0
je 0x140182bf6
mov rcx, qword [0x1402136d0]
test rcx, rcx
je 0x140182bbf
call qword [0x14020e130]
mov rcx, rbx
call qword [0x14020e0e8]
dec qword [0x140213658]
movsxd rcx, eax
sub qword [0x140213610], rcx
mov rcx, rbx
call qword [0x14020e0d8]
mov rcx, qword [0x1402136d0]
test rcx, rcx
je 0x140182bff
call qword [0x14020e140]
jmp 0x140182bff
mov rcx, rbx
call qword [0x14020e0d8]
mov rbx, qword [rdi]
test rbx, rbx
jne 0x140182b10
mov rsi, qword [rsp + 0x68]
xor edx, edx
mov dword [r15 + 0x24], edx
test r12d, r12d
jne 0x14018301c
jmp 0x14017f44b
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b530
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
jmp 0x14017b530
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1400c3a30
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
div rcx
mov rcx, qword [rbx + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x14017b52a
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1400c3a30
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r15, qword [rsp + 0x48]
div rcx
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 0x140182d26
inc dword [rsi + 0xf4]
jmp 0x14017cc0f
inc dword [rsi + 0xf0]
mov r11, qword [rsp + 0x58]
jmp 0x14017b52a
movzx eax, byte [r13 + 0x6e]
test al, 0x41
je 0x140182d93
cmp byte [rsi + 0xc3], 0xfe
je 0x140182d93
mov rcx, qword [rsp + 0x48]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x140182d62
mov r9, qword [rsi + 0xf8]
test r9, r9
je 0x140182d93
test al, 0x40
je 0x140182e04
mov rdx, r9
mov rcx, rsi
call fcn.140183bf0
mov rcx, qword [r13 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r13 + 0xf8]
mov rcx, rbx
call fcn.1400a6a70
xor edx, edx
mov ebx, 1
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x14020e258]
jl 0x140182df3
cmp byte [r15], 0xb5
je 0x14017b2f8
cmp dword [rsi + 0x90], 1
mov edx, ebx
jle 0x140182def
mov eax, 0x18
xor edi, edi
nop dword [rax]
mov rcx, qword [rsi + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x140182de1
mov dword [rax + rcx + 4], edi
inc edx
add rax, 0x18
cmp edx, dword [rsi + 0x90]
jl 0x140182dd0
xor edx, edx
mov eax, edx
inc eax
mov dword [r15 + 4], eax
inc dword [rsi + 0xec]
jmp 0x14017cc11
cmp dword [r13 + 0xe4], 1
jle 0x140182e55
mov r8, r9
lea rdx, str.____s
mov rcx, r13
call fcn.140160a90
mov rdx, qword [r13 + 0x100]
mov r9, rax
mov r8, rsi
mov ecx, 1
mov rbx, rax
call qword [r13 + 0xf8]
test rbx, rbx
je 0x140182d91
mov rdx, rbx
mov rcx, r13
call fcn.140138d80
jmp 0x140182d91
mov rdx, qword [r13 + 0x100]
mov ebx, 1
mov ecx, ebx
mov r8, rsi
call qword [r13 + 0xf8]
xor edx, edx
jmp 0x140182d98
mov r12d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov r15, qword [rsp + 0x48]
jmp 0x14017b530
mov rsi, qword [rsp + 0x68]
jmp 0x14017f45b
mov r15, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rsp + 0x60]
add r15, 0x18
mov rdi, qword [rsp + 0x70]
jmp 0x14017b07e
mov r15, qword [rsp + 0x48]
jmp 0x14017c571
mov r12, qword [rsp + 0x48]
mov ecx, dword [r12 + 4]
mov dword [rsi + 0x34], ecx
movzx eax, byte [r12 + 8]
mov byte [rsi + 0xc2], al
test ecx, ecx
je 0x140182f99
movzx eax, word [r12 + 2]
mov rcx, rsi
test ax, ax
je 0x140182f43
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x1d0fe0]
call fcn.14017af00
mov r9, qword [r12 + 0x10]
test r9, r9
je 0x140182f54
mov r8, qword [rsi + 0xa8]
lea rdx, str._z:__s
mov rcx, r13
call fcn.140160a90
mov qword [rsi + 0xa8], rax
jmp 0x140182f54
mov r8, qword [r12 + 0x10]
lea rdx, [0x1401d47c0]
call fcn.14017af00
mov r9, qword [rsi + 0xf8]
mov rcx, r12
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rsi + 0xa8]
mov ecx, dword [r12 + 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.140088f10
mov rcx, rsi
call fcn.1401845e0
mov r8, qword [rsp + 0x60]
mov r12d, eax
mov r14, qword [rsp + 0x48]
mov r13d, 1
cmp eax, 5
jne 0x140182fc1
mov dword [rsi + 0x34], eax
jmp 0x14017dde0
cmp dword [rsi + 0x34], 0
mov r12d, 0x65
cmovne r12d, r13d
jmp 0x14017dde0
mov r12d, 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [rsi + 0x34], r12d
mov rcx, rsi
mov byte [rsi + 0xc2], 2
call fcn.14017af00
cmp byte [rsi + 0xc4], 0
mov r13d, 1
mov r15, qword [rsp + 0x60]
cmovge r12d, r13d
jmp 0x14017f8e7
mov ecx, 0x16c88
call fcn.140136f10
mov r12d, eax
mov r15, qword [rsp + 0x60]
jmp 0x14017f8dc
lea r10, [0x140000000]
movsxd rax, esi
mov rsi, qword [rsp + 0x68]
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [r15 + rcx*8 + 8]
mov rax, qword [r15 + rcx*8]
mov rcx, rsi
movzx r8d, byte [rdx + r10 + 0x1cfb80]
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 + 0x20f460]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x20e410]
call fcn.14017af00
mov r15, qword [rsp + 0x60]
mov r12d, 0xc13
jmp 0x14017f8dc
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
call fcn.14017af00
mov r15, qword [rsp + 0x60]
mov r12d, 5
jmp 0x14017f8e1
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x14018309c
mov r12d, dword [rsp + 0x50]
mov byte [r15 + 0x65], 0
jmp 0x14017f8e1
mov r14, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rcx, r14
mov r12d, 5
sub rcx, qword [rsp + 0x78]
mov r8, r15
imul rcx
mov r13, rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x30], edx
mov byte [r15 + 0x65], 0
mov dword [rsi + 0x34], r12d
jmp 0x14017dde0
mov r15, qword [rsp + 0x60]
bt rax, 0x14
mov eax, 0xb
mov r12d, 8
cmovae r12d, eax
mov r14, rcx
lea r13d, [rax - 0xa]
jmp 0x14017f8f1
mov r14, qword [rsp + 0x48]
mov r13d, 1
cmp r12b, 5
jne 0x140183656
mov r8, qword [rsp + 0x60]
mov rcx, r14
sub rcx, qword [rsp + 0x78]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x30], edx
mov dword [rsi + 0x34], r12d
jmp 0x14017dde0
mov rdx, qword [rsi + 0xa8]
test rdx, rdx
je 0x140183198
mov rcx, r13
call fcn.140138d80
mov edx, 0x1c
mov rcx, r13
call fcn.140138f10
test rax, rax
je 0x1401831ca
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1401d37c0]
movsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1401d37c8]
mov dword [rax + 0x18], ecx
mov qword [rsi + 0xa8], rax
mov rax, r15
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x80]
cmp dword [rcx], eax
je 0x1401831f7
mov rcx, r13
call fcn.14016cb60
mov eax, dword [rsi + 0xc8]
mov r12d, 0x11
mov r15, qword [rsp + 0x60]
and eax, 0xffffffed
or eax, 1
mov dword [rsi + 0xc8], eax
jmp 0x14017f8e1
mov r15, qword [rsp + 0x60]
mov r12d, 0x204
jmp 0x14017f8e1
mov rcx, qword [rbx + 0x10]
call fcn.14012fb00
mov r15, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
jmp 0x14017f8e7
lea rax, [0x1401dc4f4]
mov r9d, 0x155c6
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.140088f10
mov r15, qword [rsp + 0x60]
mov eax, 0xb
mov rsi, qword [rsp + 0x68]
mov r12d, eax
mov rdi, qword [rsp + 0x70]
lea r13d, [rax - 0xa]
jmp 0x14017f8ec
mov r15, r13
mov rsi, qword [rsp + 0x68]
lea rdx, str.string_or_blob_too_big
mov rcx, rsi
call fcn.14017af00
mov r12d, 0x12
jmp 0x14017f8dc
mov r15, qword [rsp + 0x60]
jmp 0x14018328e
mov r15, qword [rsp + 0x60]
jmp 0x140183293
lea rax, [0x1401dc4f4]
mov r12d, 0x30b
mov ecx, r12d
mov qword [rsp + 0x20], rax
mov r9d, 0x1797e
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140088f10
mov r15, qword [rsp + 0x60]
jmp 0x14017f8dc
mov ecx, 0x17a4b
call fcn.140136f10
mov r15, qword [rsp + 0x60]
mov r12d, eax
jmp 0x14017f8e1
mov r15, qword [rsp + 0x60]
mov r12d, 6
mov byte [rsi + 0xc2], 2
jmp 0x14017f8dc
call fcn.14016cac0
jmp 0x14017dac0
mov rcx, qword [rbp - 0x10]
call fcn.1400a6a70
mov r15, qword [rsp + 0x60]
jmp 0x14017f8dc
mov r13d, 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, rsi
mov r12d, r13d
call fcn.14017af00
mov r15, qword [rsp + 0x60]
jmp 0x14017f8e7
mov rcx, rbx
call fcn.14007f760
mov rsi, qword [rsp + 0x68]
lea rdx, [0x1401d47c0]
mov rcx, rsi
mov r8, rax
call fcn.14017af00
mov r15, qword [rsp + 0x60]
jmp 0x14017f8e1
cmp esi, 5
lea rax, str.into
mov rsi, qword [rsp + 0x68]
lea r8, str.out_of
mov r13d, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r8, rax
mov rcx, rsi
mov r12d, r13d
call fcn.14017af00
mov r15, qword [rsp + 0x60]
jmp 0x14017f8e7
call qword [rdi + 0x38]
jmp 0x14017dabb
mov rdi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x60]
mov r12d, 6
jmp 0x14017f8e1
mov qword [rbp - 0x50], 0xffffffffffffffff
mov r12d, 9
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
jmp 0x14017f8e1
mov r15, qword [rsp + 0x60]
cmp ecx, 5
movzx eax, cl
mov ecx, 2
cmove eax, ecx
mov byte [rsi + 0xc2], al
jmp 0x14017f8dc
mov eax, dword [rsi + 0x2c]
mov r12, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [rsi + 0x2c], eax
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rsi + 0xa0], rcx
cmp byte [r13 + 0x67], 0
jne 0x14017dac0
test byte [r13 + 0x6e], 4
je 0x14018346b
mov rdx, qword [r13 + 0x100]
xor r9d, r9d
mov r8, rsi
lea ecx, [r9 + 4]
call qword [r13 + 0xf8]
mov rcx, r12
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r14
mov r12d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [rsi + 0x30], edx
mov r8, qword [rsp + 0x60]
mov r13d, 1
mov r14, qword [rsp + 0x48]
jmp 0x14017dde0
mov r12, qword [rsp + 0x48]
movzx eax, byte [r13 + 0x65]
mov ebx, dword [r12 + 4]
mov ecx, dword [r12 + 8]
cmp ebx, eax
je 0x140183599
test ecx, ecx
je 0x1401834e3
mov edx, 0x204
mov rcx, r13
call fcn.14016d2d0
mov al, 1
mov r15d, 1
jmp 0x140183521
test ebx, ebx
je 0x1401834fd
cmp dword [r13 + 0xe0], 0
jle 0x1401834fd
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x1401830a1
mov r15d, 1
mov rcx, rsi
mov edx, r15d
call fcn.14017a630
mov r12d, eax
test eax, eax
jne 0x14018388e
mov r12, qword [rsp + 0x48]
movzx eax, bl
mov rcx, rsi
mov byte [r13 + 0x65], al
call fcn.1401845e0
cmp eax, 5
jne 0x14018356e
mov rcx, r12
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r14
mov r12d, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r15d
mov dword [rsi + 0x30], edx
sub al, bl
mov byte [r13 + 0x65], al
mov dword [rsi + 0x34], r12d
jmp 0x140183497
mov rcx, r13
call fcn.140134100
cmp dword [rsi + 0x34], 0
mov r12d, 0x65
mov r8, qword [rsp + 0x60]
mov r13d, 1
mov r14, qword [rsp + 0x48]
cmovne r12d, r13d
jmp 0x14017dde0
test ebx, ebx
jne 0x1401835b1
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, rsi
call fcn.14017af00
jmp 0x14017df5b
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, rsi
cmovne rdx, rax
call fcn.14017af00
jmp 0x14017df5b
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x60]
mov r12d, 9
jmp 0x14017f8e1
mov r13, qword [rsp + 0x60]
jmp 0x14017dab6
mov r15, qword [rsp + 0x60]
mov eax, 0xb
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
lea r13d, [rax - 0xa]
jmp 0x14017f8f3
mov r15, qword [rsp + 0x60]
mov eax, 0xb
mov rsi, qword [rsp + 0x68]
mov r14, r13
lea r13d, [rax - 0xa]
jmp 0x14017f8f1
mov r15, qword [rsp + 0x60]
mov eax, 0xb
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
jmp 0x14017f8f3
mov r15, qword [rsp + 0x60]
mov r12d, dword [rsp + 0x50]
jmp 0x14017f8d7
mov r15, qword [rsp + 0x60]
mov eax, 0xb
jmp 0x14017f8f1
mov r12d, dword [rsp + 0x50]
jmp 0x14017f620
cmp r12d, 0x210a
jne 0x1401836a5
lea rcx, [0x1401dc4f4]
mov r9d, 0x182da
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140088f10
mov r12d, 0xb
cmp qword [rsi + 0xa8], 0
jne 0x140183724
cmp r12d, 0xc0a
je 0x140183724
mov ecx, r12d
lea r8, str.unknown_error
sub ecx, 0x64
je 0x140183708
sub ecx, 1
je 0x1401836ff
cmp ecx, 0x19f
je 0x1401836f6
movzx eax, r12b
cmp eax, 0x1d
jae 0x14018370f
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x1ce5d0]
test rcx, rcx
je 0x14018370f
mov r8, rcx
jmp 0x14018370f
lea r8, str.abort_due_to_ROLLBACK
jmp 0x14018370f
lea r8, str.no_more_rows_available
jmp 0x14018370f
lea r8, str.another_row_available
lea rdx, [0x1401d47c0]
mov rcx, rsi
call fcn.14017af00
mov dword [rsi + 0x34], r12d
jmp 0x140183731
mov dword [rsi + 0x34], r12d
cmp r12d, 0xc0a
je 0x14018375d
movzx eax, r12b
sub eax, 0xa
test eax, 0xfffffffb
jne 0x14018375d
mov rcx, qword [r15]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x140183757
xor r8d, r8d
xor edx, edx
call rax
jmp 0x140183759
mov eax, ebx
mov dword [r15 + 0x5c], eax
mov r9, qword [rsi + 0xf8]
mov rcx, r14
sub rcx, qword [rsp + 0x78]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rsi + 0xa8]
mov ecx, r12d
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.140088f10
cmp byte [rsi + 0xc5], 2
jne 0x1401837b3
mov rcx, rsi
call fcn.1401845e0
cmp r12d, 0xc0a
jne 0x14018384a
mov rcx, r15
call fcn.140161740
mov r8, qword [rsp + 0x60]
movzx eax, byte [rbp - 0x6c]
mov r12d, r13d
test al, al
je 0x14017dde0
cmp eax, 1
jb 0x140183807
mov ecx, eax
mov rax, qword [r8 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax - 8]
or word [rcx + 0x72], 8
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + 0x38]
or word [rcx + 0x72], 8
and dword [r8 + 0x2c], 0xffffffef
cmp dword [r8 + 0x48], 0
jne 0x14017dde0
cmp dword [r8 + 0x28], 0
mov edi, ebx
jle 0x14017ddd9
nop
mov rax, qword [r8 + 0x20]
mov rcx, qword [rbx + rax + 0x18]
test byte [rcx + 0x72], 8
je 0x140183839
call fcn.14016e650
mov r8, qword [rsp + 0x60]
inc edi
add rbx, 0x20
cmp edi, dword [r8 + 0x28]
jl 0x140183820
jmp 0x14017ddd9
cmp r12d, 0xb
jne 0x1401837c8
mov r8, qword [rsp + 0x60]
cmp byte [r8 + 0x65], 0
jne 0x1401837cd
movabs rax, 0x200000000
or qword [r8 + 0x30], rax
jmp 0x1401837cd
mov r8, qword [rsp + 0x60]
mov r13, rbx
mov r12d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x48]
jmp 0x14017dde0
mov r8, qword [rsp + 0x60]
mov r13, r15
mov r14, qword [rsp + 0x48]
jmp 0x14017dde0
add dword [rsi + 0xe4], edi
cmp dword [rsi + 0xd0], 0
movaps xmm8, xmmword [rsp + 0x3f0]
movaps xmm7, xmmword [rsp + 0x400]
movaps xmm6, xmmword [rsp + 0x410]
mov r15, qword [rsp + 0x420]
mov r14, qword [rsp + 0x428]
mov r13, qword [rsp + 0x468]
mov rdi, qword [rsp + 0x460]
mov rbx, qword [rsp + 0x458]
je 0x1401838f8
mov rcx, rsi
call fcn.14019c160
mov eax, r12d
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.1401b39d0
add rsp, 0x430
pop r12
pop rsi
pop rbp
ret