Function at 0x1401e4808
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x568
movaps xmmword [rsp + 0x550], xmm6
mov dword [rsp + 0x90], r9d
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x4f0], rcx
mov byte [rsp + 0xcf], r8b
test r8b, r8b
je 0x1401ea31a
mov byte [rsp + 0xb0], r8b
mov rax, qword [rsp + 0x5d8]
xor ecx, ecx
mov qword [rsp + 0x158], rcx
mov dword [rsp + 0x140], ecx
mov qword [rsp + 0x318], rcx
mov dword [rsp + 0x300], ecx
test rax, rax
je 0x1401e48ab
mov rsi, qword [rax + 8]
mov r12, qword [rax + 0x10]
cmp r12, 2
jae 0x1401e48be
xor ecx, ecx
mov ebx, 1
cmp r12, 1
jne 0x1401e56c9
mov rdi, rsi
mov r12, rdx
mov rsi, rcx
jmp 0x1401e4933
cmp dword [rsp + 0x90], 1
je 0x1401e4a5f
jmp 0x1401e4dba
movzx eax, word [rsi]
cmp eax, 0x2d78
je 0x1401e492a
mov r8d, 1
lea rdi, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov cl, 1
xor eax, eax
mov r9d, ecx
lea rdx, [r8 + 1]
cmp rdx, r12
setb cl
cmp byte [rsi + r8 - 1], 0x2d
jne 0x1401e4910
cmp rdx, r12
jae 0x1401e4910
cmp byte [rsi + r8 + 1], 0x2d
jne 0x1401e4910
lea rbx, [r8 - 1]
cmp byte [rsi + r8], 0x78
je 0x1401e5374
mov rax, rbx
mov rdi, rsi
mov r8, rdx
cmp r12, rdx
jne 0x1401e48d9
test rax, rax
cmovne r12, rax
cmove rdi, rsi
xor esi, esi
mov rbx, r12
jmp 0x1401e4933
lea rdi, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
xor ebx, ebx
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
lea r8, str._hbsc_hbot
lea r9, [0x1401c375d]
mov rcx, rsi
mov rdx, r12
call fcn.1401ea790
mov byte [rsp + 0xe0], al
lea rax, [rsp + 0x300]
mov qword [rsp + 0x20], rax
lea r8, [0x1403692d5]
lea r9, [0x1401c39f1]
mov rcx, rsi
mov rdx, r12
call fcn.1401ea790
test rbx, rbx
sete cl
or al, cl
jne 0x1401e4a47
test rbx, rbx
js 0x1401ea3c2
mov al, byte [0x1403f9274]
mov edx, 1
mov rcx, rbx
call fcn.140061500
test rax, rax
je 0x1401ea3cc
mov rbp, rax
lea rax, [rsp + 0x318]
mov qword [rsp + 0xd8], rax
mov rsi, rbp
mov rcx, rbp
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
xor eax, eax
mov qword [rsp + 0x50], rbp
mov rsi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x50]
mov cl, byte [rcx + rax]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
mov byte [rsi + rax], dl
inc rax
cmp rbx, rax
jne 0x1401e49e9
movabs rax, 0x8000000000000000
cmp rbx, rax
je 0x1401e4a47
lea r8, [rsp + 0x300]
mov rcx, rsi
mov rdx, rbx
call fcn.1401eaa14
test al, al
je 0x1401e4b1e
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, qword [rsp + 0x50]
call fcn.1402e3f64
cmp dword [rsp + 0x90], 1
setne al
or al, byte [rsp + 0xe0]
jne 0x1401e4dba
lea rsi, [rsp + 0x158]
mov eax, dword [rsp + 0x5d0]
cmp eax, 0x4d6c796c
jg 0x1401e4aa7
cmp eax, 0x47756a71
jle 0x1401e4ad9
cmp eax, 0x47756a72
je 0x1401e4bce
cmp eax, 0x47757275
je 0x1401e4bdc
cmp eax, 0x4b6e6461
jne 0x1401e4cdf
mov edi, 0x6b6e6432
jmp 0x1401e4be8
cmp eax, 0x4f727960
jle 0x1401e4afe
cmp eax, 0x4f727961
je 0x1401e4bd5
cmp eax, 0x54616d6c
je 0x1401e4be3
cmp eax, 0x54656c75
jne 0x1401e4cdf
mov edi, 0x74656c32
jmp 0x1401e4be8
mov edi, 0x626e6732
cmp eax, 0x42656e67
je 0x1401e4be8
cmp eax, 0x44657661
jne 0x1401e4cdf
mov edi, 0x64657632
jmp 0x1401e4be8
cmp eax, 0x4d6c796d
je 0x1401e4bc7
mov edi, 0x6d796d32
cmp eax, 0x4d796d72
je 0x1401e4c73
jmp 0x1401e4cdf
lea rdx, [rsp + 0x3c0]
mov rax, qword [rsp + 0x50]
mov qword [rdx], rax
mov qword [rdx + 8], rbx
mov qword [rdx + 0x10], 0
mov qword [rdx + 0x18], rbx
mov qword [rdx + 0x20], 1
movabs r14, 0x2d0000002d
mov qword [rdx + 0x28], r14
lea rcx, [rsp + 0x270]
call fcn.1400f9ceb
mov r8, rbx
cmp rbx, 6
jb 0x1401e5992
cmp qword [rsp + 0x270], 0
mov r8, rbx
je 0x1401e5992
mov rdi, qword [rsp + 0x278]
mov r15, rdi
mov rax, rbx
inc r15
je 0x1401e58f6
mov rax, rbx
sub rax, r15
jbe 0x1401e58f0
mov rcx, qword [rsp + 0x50]
cmp byte [rcx + r15], 0xc0
jge 0x1401e58f6
mov qword [rsp + 0xa8], r15
lea rax, [0x140369328]
jmp 0x1401ea490
mov edi, 0x6d6c6d32
jmp 0x1401e4be8
mov edi, 0x676a7232
jmp 0x1401e4be8
mov edi, 0x6f727932
jmp 0x1401e4be8
mov edi, 0x67757232
jmp 0x1401e4be8
mov edi, 0x746d6c32
mov r8, qword [rsp + 0x158]
cmp r8, 3
jbe 0x1401e4c07
lea rax, [rsp + 0x148]
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
jmp 0x1401e4c1b
lea rdx, [rsp + 0x144]
mov rcx, r8
mov rax, rsi
mov r8d, 3
cmp rcx, r8
jne 0x1401e4c3c
lea rcx, [rsp + 0x140]
call fcn.1401dd4ed
lea rax, [rsp + 0x148]
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov r8d, edi
bswap r8d
mov r9d, r8d
shl r9d, 8
mov r10d, r8d
shl r10d, 0x18
and r9d, 0x7f0000
or r9d, r10d
shr r8d, 8
and r8d, 0x7f00
add r8d, r9d
add r8d, 0x33
mov dword [rdx + rcx*4], r8d
inc qword [rax]
mov rax, qword [rsp + 0x158]
cmp rax, 4
jb 0x1401e4cbb
mov rdx, qword [rsp + 0x148]
cmp rdx, 3
je 0x1401e4cdf
lea rbx, [rsp + 0x148]
cmp rdx, rax
jne 0x1401e4cce
lea rcx, [rsp + 0x140]
call fcn.1401dd4ed
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x150]
jmp 0x1401e4cd9
cmp rax, 3
je 0x1401e4cdf
lea rcx, [rsp + 0x144]
mov rbx, rsi
jmp 0x1401e4cd9
mov rcx, qword [rsp + 0x150]
mov rax, rdx
mov dword [rcx + rax*4], edi
inc qword [rbx]
mov rax, qword [rsp + 0x158]
mov rcx, rax
cmp rax, 4
jb 0x1401e4cf8
mov rcx, qword [rsp + 0x148]
cmp rcx, 3
je 0x1401e4dba
mov ecx, dword [rsp + 0x5d0]
cmp ecx, 0x4e6b6f6e
jle 0x1401e4d30
cmp ecx, 0x4e6b6f6f
je 0x1401e4d51
cmp ecx, 0x56616969
je 0x1401e4d58
cmp ecx, 0x59696969
jne 0x1401e4d5f
mov edi, 0x79692020
jmp 0x1401e4d6c
mov edi, 0x6b616e61
cmp ecx, 0x48697261
je 0x1401e4d6c
cmp dword [rsp + 0x5d0], 0x4c616f6f
jne 0x1401e4d5f
mov edi, 0x6c616f20
jmp 0x1401e4d6c
mov edi, 0x6e6b6f20
jmp 0x1401e4d6c
mov edi, 0x76616920
jmp 0x1401e4d6c
mov edi, dword [rsp + 0x5d0]
or edi, 0x20000000
cmp rax, 3
jbe 0x1401e4d83
lea rsi, [rsp + 0x148]
mov rcx, qword [rsi]
mov rdx, qword [rsi + 8]
jmp 0x1401e4d93
lea rdx, [rsp + 0x144]
mov rcx, rax
mov eax, 3
cmp rcx, rax
jne 0x1401e4db4
lea rcx, [rsp + 0x140]
call fcn.1401dd4ed
lea rsi, [rsp + 0x148]
mov rcx, qword [rsi]
mov rdx, qword [rsi + 8]
mov dword [rdx + rcx*4], edi
inc qword [rsi]
lea rax, [rsp + 0x144]
movups xmm0, xmmword [rax - 4]
movups xmm1, xmmword [rax + 0xc]
lea rcx, [rsp + 0x3c0]
movaps xmmword [rcx + 0x10], xmm1
movaps xmmword [rcx], xmm0
lea rdx, [rsp + 0x304]
movups xmm2, xmmword [rdx - 4]
movups xmm3, xmmword [rdx + 0xc]
movaps xmmword [rcx + 0x20], xmm2
movaps xmmword [rcx + 0x30], xmm3
movaps xmmword [rax + 0xc], xmm1
movaps xmmword [rax - 4], xmm0
movaps xmmword [rdx + 0xc], xmm3
movaps xmmword [rdx - 4], xmm2
xor eax, eax
mov word [rsp + 0x250], ax
mov word [rsp + 0x110], ax
mov word [rsp + 0x114], ax
mov dword [rsp + 0x270], eax
mov dword [rsp + 0x278], eax
mov word [rsp + 0x218], ax
mov word [rsp + 0x21c], ax
mov rax, qword [rsp + 0x78]
lea rcx, [rax + 0x998]
mov qword [rsp + 0x98], rcx
lea rcx, [rax + 0xa30]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rax + 0x998]
mov qword [rsp + 0x58], rcx
mov rax, qword [rax + 0xa30]
mov qword [rsp + 0x68], rax
lea rbp, [0x1403623f8]
cmp byte [rbp], 0
lea rbp, [rbp + 1]
je 0x1401e4ea3
mov r13d, 1
mov r15, qword [rsp + 0x50]
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x68], rax
jne 0x1401e4ec3
jmp 0x1401e5044
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x58], rax
je 0x1401e5044
xor r13d, r13d
mov r15, qword [rsp + 0x98]
mov r14, qword [rsp + 0x158]
lea rsi, [rsp + 0x144]
cmp r14, 4
jb 0x1401e4ee9
mov r14, qword [rsp + 0x148]
mov rsi, qword [rsp + 0x150]
lea rdi, [r15 + 0x18]
shl r14, 2
xor r12d, r12d
cmp r14, r12
je 0x1401e4f1e
mov ebx, dword [rsi + r12]
mov rcx, qword [r15 + 0x28]
mov rdx, qword [r15 + 0x30]
mov r8d, ebx
call fcn.1401db2f0
add r12, 4
cmp ax, 1
jne 0x1401e4ef4
mov r8d, edx
mov al, 1
jmp 0x1401e4f72
movabs rax, 0x64666c7444464c54
mov qword [rsp + 0x3c0], rax
mov dword [rsp + 0x3c8], 0x6c61746e
mov r14, qword [r15 + 0x28]
mov r15, qword [r15 + 0x30]
xor esi, esi
cmp rsi, 3
je 0x1401e5044
mov ebx, dword [rsp + rsi*4 + 0x3c0]
inc rsi
mov rcx, r14
mov rdx, r15
mov r8d, ebx
call fcn.1401db2f0
cmp ax, 1
jne 0x1401e4f45
mov r8d, edx
xor eax, eax
mov dword [rsp + r13*8 + 0x270], 1
mov dword [rsp + r13*8 + 0x274], ebx
mov byte [rsp + r13 + 0x250], al
mov word [rsp + r13*4 + 0x110], 1
mov word [rsp + r13*4 + 0x112], r8w
mov r14, qword [rsp + 0x318]
lea r15, [rsp + 0x304]
cmp r14, 4
jb 0x1401e4fc8
mov r14, qword [rsp + 0x308]
mov r15, qword [rsp + 0x310]
lea rcx, [rsp + 0x3c0]
mov rdx, rdi
call fcn.1401b547c
cmp word [rsp + 0x3f4], 3
je 0x1401e5044
mov rdi, qword [rsp + 0x3d0]
mov rbx, qword [rsp + 0x3d8]
shl r14, 2
xor esi, esi
cmp r14, rsi
je 0x1401e5019
mov r8d, dword [r15 + rsi]
mov rcx, rdi
mov rdx, rbx
call fcn.1401db2f0
add rsi, 4
cmp ax, 1
jne 0x1401e4ff9
jmp 0x1401e5030
mov rcx, rdi
mov rdx, rbx
mov r8d, 0x64666c74
call fcn.1401db2f0
cmp ax, 1
jne 0x1401e5044
mov word [rsp + r13*4 + 0x218], 1
mov word [rsp + r13*4 + 0x21a], dx
lea rax, [0x1403623fa]
cmp rbp, rax
jne 0x1401e4e78
movzx esi, word [rsp + 0x250]
mov rdi, qword [rsp + 0x110]
mov ebp, dword [rsp + 0x270]
mov r14d, dword [rsp + 0x274]
mov r15, qword [rsp + 0x278]
mov rbx, qword [rsp + 0x218]
cmp qword [rsp + 0x318], 4
jb 0x1401e50a4
mov r8, qword [rsp + 0x310]
mov rcx, qword [0x1403f9220]
xor edx, edx
call fcn.1402e3f64
cmp qword [rsp + 0x158], 4
jb 0x1401e50c5
mov r8, qword [rsp + 0x150]
mov rcx, qword [0x1403f9220]
xor edx, edx
call fcn.1402e3f64
lea rax, [0x1403678a0]
cmp dword [rsp + 0x90], 0
je 0x1401e5e32
mov edx, dword [rsp + 0x5d0]
cmp edx, 0x4d616e68
jg 0x1401e514a
cmp edx, 0x4772616d
jle 0x1401e51b0
cmp edx, 0x4b686d71
jg 0x1401e525a
cmp edx, 0x48656271
jle 0x1401e547e
cmp edx, 0x4a617660
jg 0x1401e55d4
cmp edx, 0x48656272
je 0x1401e9fb0
cmp edx, 0x486d6e67
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x486d6e70
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x53696463
jle 0x1401e520a
cmp edx, 0x54616c64
jg 0x1401e52a3
cmp edx, 0x536f796e
jle 0x1401e54b6
cmp edx, 0x53797262
jg 0x1401e560a
cmp edx, 0x536f796f
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x53756e64
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x53796c6f
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x43616b6c
jle 0x1401e52e7
cmp edx, 0x446f6771
jle 0x1401e5409
cmp edx, 0x456c796c
jg 0x1401e5568
cmp edx, 0x446f6772
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x4475706c
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x45677970
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4e657760
jle 0x1401e5330
cmp edx, 0x506c7263
jle 0x1401e5441
cmp edx, 0x526f6866
jg 0x1401e559e
cmp edx, 0x506c7264
je 0x1401e5876
cmp edx, 0x51616167
je 0x1401e9fa4
mov rcx, rax
cmp edx, 0x526a6e67
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4c616f6e
jle 0x1401e54f3
cmp edx, 0x4d616869
jg 0x1401e563b
cmp edx, 0x4c616f6f
je 0x1401e58e4
cmp edx, 0x4c657063
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4c696d62
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x54676c66
jle 0x1401e5530
cmp edx, 0x54697267
jg 0x1401e5671
cmp edx, 0x54676c67
je 0x1401e5876
cmp edx, 0x54686169
je 0x1401e58e4
mov rcx, rax
cmp edx, 0x54696274
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x42656e66
jg 0x1401e538f
cmp edx, 0x41726161
jle 0x1401e56ee
cmp edx, 0x41726162
je 0x1401e58af
cmp edx, 0x42616c69
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4261746b
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4d6f6e66
jg 0x1401e53d1
cmp edx, 0x4d656465
jle 0x1401e5713
cmp edx, 0x4d656466
je 0x1401e5876
cmp edx, 0x4d6c796d
je 0x1401e583b
mov rcx, rax
cmp edx, 0x4d6f6469
je 0x1401e5876
jmp 0x1401e5e35
lea rcx, [rsi + r8]
mov rdx, r12
sub rdx, r8
test rax, rax
je 0x1401e56a7
mov rbx, rax
jmp 0x1401e48a0
cmp edx, 0x42726167
jle 0x1401e5738
cmp edx, 0x42726168
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x42756769
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x42756864
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4d756c73
jle 0x1401e5758
cmp edx, 0x4d756c74
je 0x1401e5876
cmp edx, 0x4d796d72
je 0x1401e5e0c
mov rcx, rax
cmp edx, 0x4e616e64
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x43687272
jle 0x1401e577d
cmp edx, 0x43687273
je 0x1401e5876
cmp edx, 0x44657661
je 0x1401e583b
mov rcx, rax
cmp edx, 0x4469616b
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4f727960
jle 0x1401e57a2
cmp edx, 0x4f727961
je 0x1401e583b
cmp edx, 0x50686167
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x50686c70
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x47757274
jle 0x1401e57c7
cmp edx, 0x47757275
je 0x1401e583b
cmp edx, 0x48616e67
je 0x1401e9f98
mov rcx, rax
cmp edx, 0x48616e6f
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x53696e67
jle 0x1401e57e5
cmp edx, 0x53696e68
je 0x1401e583b
cmp edx, 0x536f6764
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x536f676f
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4b6e6460
jle 0x1401e5806
cmp edx, 0x4b6e6461
je 0x1401e583b
cmp edx, 0x4b746869
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4c616e61
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x54617673
jle 0x1401e5822
cmp edx, 0x54617674
je 0x1401e5876
cmp edx, 0x54656c75
je 0x1401e583b
mov rcx, rax
cmp edx, 0x54666e67
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x456c796d
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x476f6e67
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x476f6e6d
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x526f6867
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x53617572
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x53687264
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4a617661
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x4b616c69
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4b686172
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x53797263
je 0x1401e58af
cmp edx, 0x54616762
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x54616b72
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4d61686a
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x4d616b61
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4d616e64
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x54697268
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x5763686f
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x5a616e62
je 0x1401e5876
jmp 0x1401e5e35
test rbx, rbx
jne 0x1401e489d
test r9b, 1
je 0x1401e488e
mov ebx, 1
cmp byte [rsi + 1], 0xbf
jg 0x1401e489d
lea rax, [0x1403692b8]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov rcx, rsi
mov rdx, r12
xor r8d, r8d
call fcn.140080f80
jmp 0x1401ea47f
cmp edx, 0x41646c6d
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x41686f6d
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4d616e69
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4d617263
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x42656e67
je 0x1401e583b
mov rcx, rax
cmp edx, 0x42686b73
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4d6f6e67
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4d746569
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x43616b6d
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4368616d
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4e657761
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x4e6b6f6f
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4772616e
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x47756a72
je 0x1401e583b
jmp 0x1401e5e32
cmp edx, 0x53696464
je 0x1401e5876
mov rcx, rax
cmp dword [rsp + 0x5d0], 0x53696e64
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x4b686d72
je 0x1401e5e03
mov rcx, rax
cmp edx, 0x4b686f6a
je 0x1401e5876
jmp 0x1401e5e35
cmp edx, 0x54616c65
je 0x1401e5876
cmp dword [rsp + 0x5d0], 0x54616d6c
jne 0x1401e5e32
test ebp, ebp
je 0x1401e585c
cmp r14d, 0x44464c54
je 0x1401e5e32
mov rcx, rax
cmp r14d, 0x6c61746e
je 0x1401e5e35
cmp r14b, 0x33
lea rcx, [0x140367ab0]
lea rax, [0x140367a58]
cmovne rcx, rax
test ebp, ebp
jmp 0x1401e589a
test ebp, ebp
je 0x1401e58a3
cmp r14d, 0x6c61746e
lea rax, [0x1403678a0]
lea rcx, [0x140367ab0]
cmove rcx, rax
cmp r14d, 0x44464c54
cmove rcx, rax
jmp 0x1401e5e35
lea rcx, [0x140367ab0]
jmp 0x1401e5e35
cmp edx, 0x41726162
je 0x1401e58cb
test ebp, ebp
je 0x1401e58cb
mov rcx, rax
cmp r14d, 0x44464c54
je 0x1401e5e35
movsx rax, byte [rsp + 0xb0]
lea rcx, [0x1403b70f0]
mov rcx, qword [rcx + rax*8]
jmp 0x1401e5e35
lea rcx, [0x140367950]
jmp 0x1401e5e35
jne 0x1401e4bb3
lea rsi, [r15 + rbp]
lea rdx, [rsp + 0x3c0]
mov qword [rdx], rsi
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], 0
mov qword [rdx + 0x18], rax
mov qword [rdx + 0x20], 1
mov qword [rdx + 0x28], r14
lea rcx, [rsp + 0x270]
call fcn.1400f9ceb
cmp qword [rsp + 0x270], 0
je 0x1401e5943
mov rdi, qword [rsp + 0x278]
jmp 0x1401e5949
not rdi
add rdi, rbx
mov r8, rbx
cmp rdi, 3
jne 0x1401e5992
mov rax, rbx
sub rax, r15
jbe 0x1401ea262
mov rcx, qword [rsp + 0x50]
mov cl, byte [rcx + r15]
mov edx, ecx
and dl, 0xdf
add dl, 0xa5
cmp dl, 0xe6
cmovae rbp, rsi
mov r8, rbx
test r15, r15
je 0x1401e5992
cmp dl, 0xe6
jb 0x1401e5992
mov r8, rax
mov rbp, rsi
cmp cl, 0xbf
jle 0x1401ea481
mov qword [rsp + 0x60], r8
mov qword [rsp + 0xd0], rbx
mov r12d, 0x583
xor eax, eax
mov qword [rsp + 0xa8], rax
lea rdi, [rsp + 0x270]
lea r13, [rsp + 0x3c0]
lea rax, [0x1403692f8]
mov qword [rsp + 0xb8], rax
xor eax, eax
mov edx, 0x583
mov qword [rsp + 0x68], rbp
movabs r14, 0x2d0000002d
mov rsi, qword [rsp + 0x60]
mov qword [rsp + 0x70], rdx
shr r12, 1
mov qword [rsp + 0x98], rax
add r12, rax
lea rdx, [r12 + r12*2]
lea rax, str.aaaaeaaoaatababaabhabqabsabvacfacmacqacracwacxacyadaadfadpaebaecafafbafkafsaguagwahgahtaigaiiaiwajpajtakakbalnalsamamfamwanaoaapaapcapdapjapkaplapmapwararbariarkarnarqarsaryarzasatjatvaujauzavavlayaycayhaylaynaypayrazazbazdazjaznazzbabadbagbahbaibalbaubbcbbjbbpbbrbbzbccbchbcibclbcqbcrbebeabebberbewbflbfqbftbfubfybgbgnbgpbgqbgrbhbbhkbhrbibilbinbiubjnbjobjqbjsbjtbkfbkoblableblgbliblkblnbltbmbmbbmlbmmbnbobpdbplbpqbqibqkbrbrabrcbribrmbsbshbtbbtdbtibtjbtmbtobtsbtxbtzbumbvebvubwebxkbxobxpbxrbynbyvbzcbzjbzkcacaacaccafcakcbkcblcclccmccoccqcdocecekceycfmchchfchgchhchjchkchnchpchqchzciwcjyckackbcknckscktckzclccldclecljcltcmncmrcnbcnhcnkcnlcnpcnrcntcnucnwcocoacobcoqcpacpecpfcpicpxcqdcqucrcrhcricrjcrkcrlcrmcrpcrrcrscrtcrxcscsacshcsjcslcsocspcsvcswcsyctcctdctecthctlctsctucucuccvcvncwdczhczocztdadaodapdcrdedendepdgodgrdhddhvdibdikdindipdiqdiwdjedjkdjrdksdngdnkdoidrhdridrwdsbdtydundupdvdwkdwudwydyudzdznecreeekkekyelemkemyenenbenfenheoesesgesiesketetoeueuqeveevnewoeyofafabfanfarfatfblffffmfifilfjflmfmpfngfofosfpefubfucfuefuffuhfuifuqfurfuvgagaagacgadgaegalgangargawgaxgazgbmgcegcfgclgcrgdgdaggoghaghkghogibgilgjugkpglgldgmzgngnbgnognwgomgoqgoxgpegrogrrgrtgrugswguguagugguigukgulgungvgwigynhahaahaehaihakhalharhaxhbnhcahdnheheahihjihlthmahmchmdhmehmghmhhmihmjhmlhmmhmphmqhmrhmshmwhmyhmzhnehnjhnohohochoihojhrhrahrmhsbhsnhthuhujhuphushwchyhywhziaibyicridaidbieigigbihbiiijcijeijnijsikikeiktinginhioiriisismititziuiwixljajacjakjamjanjaxjbejbnjgojijiijkmjkpjudjuljvjvdjwkakaakabkackamkarkbdkbykcakcnkdrkdtkeakebkekkexkfakfrkfxkfykgkgekhakhbkhkkhnkhskhtkhvkikiskiukjkjbkjhkjpkjtkkkknkkzklklmklnkmkmbkmnkmokmrkmskmvkmwknknckngknjknnknrkokodkohkoikopkoykozkpekplkppkpvkpykqskqykrkrckrikrkkrmkrnkrtkrukskshksiksmksskswktbktuktwkukuikulkuukuwkuykvkvbkvlkvqkvrkvtkvukvykwkwwkwykxckxdkxfkxkkxlkxukykykkyulalacladlahlaklamlazlblbelbjlbllcelcfldildklgliliflirliwliylkblkolkslldlmalmblmnlmwlnlnalnlloloulrilrmlrtlsblsmltltglthltoltslulusluyluzlvlvilvslwglzhlzzmaimajmakmammanmapmawmaxmbfmbnmchmcmmcrmctmdemdfmdymenmeomfamfbmfemfpmgmhmhcmhrmhvmiminmizmkmknmkrmkumlmlemlnmlqmlrmmrmnmncmndmngmnhmnkmnpmnsmnwmnxmomodmokmopmormpemqgmrmrhmrjmsmscmshmsimtmthmtrmtsmudmuimunmupmuqmvbmvemvfmwkmwqmwrmwwmymymmyqmyvmzbmzsnanagnannasnaznbnchncincjnclncrncxndndbndgnenefngnglngmngongrngunhcnhdnhenhgnhinhknhmnhnnhpnhqnhtnhvnhwnhxnhynhzniqnisnivnjtnjznkonkxnlnlanlenlnnlvnnnnhnnznonodnpinplnqonrnsknsmnsuntonuenuunuznvnwenynydnynocojojcojgojsojwokdokiokmokromonxoorororcornoroorrorsoryosotwouapapaapalpappaspbtpbupcepckpcmpdupeapelpespeypgapipihpilpispkhpkoplplgplkpllplnplppltpmlpmypocpohpovppapreprpprspspsepstpubpuzpwopwwququbqucqudqufqugquhqukqulqumqupqurqusquvquwquxquyqvaqvcqveqvhqviqvjqvlqvmqvnqvoqvpqvsqvwqvzqwaqwcqwhqwsqwtqxaqxcqxhqxlqxnqxoqxpqxrqxtqxuqxwragralrbbrblrcfrifrkirmrmcrmfrmlrmnrmormsrmwrmyrmzrnroromroprtcruruerwrwrsasadsahsamsayscscfschscisckscssdsdcsdhsdnsdssesehseksezsfmsgsgcsgosgwshishlshushysisibsigsizsjdsjosjsskskgskrsksskwskyslslasmsmasmdsmjsmlsmnsmssmtsnsnbsnhsosogspvspysqsrsrbsrcsrksrmsrnsrosrssssshsslssmststastvsusuqsursvsvcsveswswbswcswhswkswnswvsyctataatajtaqtastautcbtcetchtcptcstcytcztdxtetectemteztfntgtghtgjtgntgrtgxtgyththtthvthztitiatigtjotktkgtkmtltmgtmhtmntmwtntnatnetnftngtotodtoitojtoltortpitrtrftrktrutstsgttttcttmttqtuatultuutuvtuytvytwtxctxytytyvtzhtzjtzmtzoublugukukiulnunrururkuspuzuznuzsvapvevivicvitvkkvkpvktvlsvmwvowawagwbmwbrweawesweuwlcwlewlkwniwowrywsgwuuxalxanxbdxhxmgxmmxmvxmwxnjxnqxnrxpexslxstxupxwoyajyakybaybbybdycryddyiyihyimyoyosyuayuezazchzdjzehzenzgbzghzgmzgnzhzhdzhnzkbzljzlmzlnzlqzmizmzzndznezomzqezsmzuzumzybzygzyjzynzypzzj
mov rcx, qword [rax + rdx*8]
mov qword [rsp + 0x88], rdx
mov r15, qword [rax + rdx*8 + 8]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x3c0], rcx
mov qword [rsp + 0x3c8], r15
mov qword [rsp + 0x3d0], 0
mov qword [rsp + 0x3d8], r15
mov qword [rsp + 0x3e0], 1
mov qword [rsp + 0x3e8], r14
mov rcx, rdi
mov rdx, r13
call fcn.1400f9ceb
mov rbx, qword [rsp + 0x270]
mov rbp, qword [rsp + 0x278]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x3c0], rax
mov qword [rsp + 0x3c8], rsi
mov qword [rsp + 0x3d0], 0
mov qword [rsp + 0x3d8], rsi
mov qword [rsp + 0x3e0], 1
mov qword [rsp + 0x3e8], r14
mov rcx, rdi
mov rdx, r13
call fcn.1400f9ceb
test rbx, rbx
cmove rbp, r15
cmp qword [rsp + 0x270], 0
mov rax, rsi
je 0x1401e5ad5
mov rax, qword [rsp + 0x278]
cmp rbp, rax
cmova rax, rbp
cmp rax, r15
mov r9, r15
cmovb r9, rax
cmp rax, rsi
mov r8, rsi
cmovb r8, rax
test r9, r9
mov rcx, qword [rsp + 0x58]
je 0x1401e5b0a
cmp rax, r15
jae 0x1401e5b0a
cmp byte [rcx + r9], 0xbf
jle 0x1401ea350
test r8, r8
mov rbp, qword [rsp + 0x68]
je 0x1401e5b25
cmp rax, rsi
jae 0x1401e5b25
cmp byte [rbp + r8], 0xc0
jl 0x1401ea336
mov r15, r9
sub r15, r8
cmovb r8, r9
mov rdx, rbp
call sub.msvcrt.dll_memcmp
cdqe
test eax, eax
cmovne r15, rax
test r15, r15
je 0x1401e5c00
lea rax, [r12 + 1]
test r15, r15
mov rdx, qword [rsp + 0x70]
cmovg rdx, r12
mov rcx, qword [rsp + 0x98]
cmovs rcx, rax
mov rax, rcx
mov r12, rdx
sub r12, rcx
ja 0x1401e59e9
cmp qword [rsp + 0xd0], 3
jne 0x1401e4a34
mov rdx, qword [rsp + 0x50]
movzx eax, byte [rdx + 1]
shl eax, 0x10
movzx ecx, byte [rdx + 2]
movzx edx, byte [rdx]
shl edx, 0x18
or edx, eax
shl ecx, 8
lea edi, [rcx + rdx]
add edi, 0x20
bswap edi
mov eax, edi
shr eax, 8
mov esi, edi
shr esi, 0x10
lea ecx, [rdi - 0x61]
xor ebp, ebp
cmp cl, 0x1a
setb r13b
add al, 0x9f
xor ebx, ebx
cmp al, 0x1a
setb r12b
lea eax, [rsi - 0x61]
xor r14d, r14d
cmp al, 0x1a
setb r15b
mov rdx, qword [rsp + 0x318]
cmp rdx, 3
jbe 0x1401e5d80
lea rcx, [rsp + 0x308]
mov rax, qword [rcx]
mov qword [rsp + 0xd8], rcx
mov rcx, qword [rcx + 8]
jmp 0x1401e5d90
mov edx, 0x582
sub rdx, r12
lea rax, str.aaaaeaaoaatababaabhabqabsabvacfacmacqacracwacxacyadaadfadpaebaecafafbafkafsaguagwahgahtaigaiiaiwajpajtakakbalnalsamamfamwanaoaapaapcapdapjapkaplapmapwararbariarkarnarqarsaryarzasatjatvaujauzavavlayaycayhaylaynaypayrazazbazdazjaznazzbabadbagbahbaibalbaubbcbbjbbpbbrbbzbccbchbcibclbcqbcrbebeabebberbewbflbfqbftbfubfybgbgnbgpbgqbgrbhbbhkbhrbibilbinbiubjnbjobjqbjsbjtbkfbkoblableblgbliblkblnbltbmbmbbmlbmmbnbobpdbplbpqbqibqkbrbrabrcbribrmbsbshbtbbtdbtibtjbtmbtobtsbtxbtzbumbvebvubwebxkbxobxpbxrbynbyvbzcbzjbzkcacaacaccafcakcbkcblcclccmccoccqcdocecekceycfmchchfchgchhchjchkchnchpchqchzciwcjyckackbcknckscktckzclccldclecljcltcmncmrcnbcnhcnkcnlcnpcnrcntcnucnwcocoacobcoqcpacpecpfcpicpxcqdcqucrcrhcricrjcrkcrlcrmcrpcrrcrscrtcrxcscsacshcsjcslcsocspcsvcswcsyctcctdctecthctlctsctucucuccvcvncwdczhczocztdadaodapdcrdedendepdgodgrdhddhvdibdikdindipdiqdiwdjedjkdjrdksdngdnkdoidrhdridrwdsbdtydundupdvdwkdwudwydyudzdznecreeekkekyelemkemyenenbenfenheoesesgesiesketetoeueuqeveevnewoeyofafabfanfarfatfblffffmfifilfjflmfmpfngfofosfpefubfucfuefuffuhfuifuqfurfuvgagaagacgadgaegalgangargawgaxgazgbmgcegcfgclgcrgdgdaggoghaghkghogibgilgjugkpglgldgmzgngnbgnognwgomgoqgoxgpegrogrrgrtgrugswguguagugguigukgulgungvgwigynhahaahaehaihakhalharhaxhbnhcahdnheheahihjihlthmahmchmdhmehmghmhhmihmjhmlhmmhmphmqhmrhmshmwhmyhmzhnehnjhnohohochoihojhrhrahrmhsbhsnhthuhujhuphushwchyhywhziaibyicridaidbieigigbihbiiijcijeijnijsikikeiktinginhioiriisismititziuiwixljajacjakjamjanjaxjbejbnjgojijiijkmjkpjudjuljvjvdjwkakaakabkackamkarkbdkbykcakcnkdrkdtkeakebkekkexkfakfrkfxkfykgkgekhakhbkhkkhnkhskhtkhvkikiskiukjkjbkjhkjpkjtkkkknkkzklklmklnkmkmbkmnkmokmrkmskmvkmwknknckngknjknnknrkokodkohkoikopkoykozkpekplkppkpvkpykqskqykrkrckrikrkkrmkrnkrtkrukskshksiksmksskswktbktuktwkukuikulkuukuwkuykvkvbkvlkvqkvrkvtkvukvykwkwwkwykxckxdkxfkxkkxlkxukykykkyulalacladlahlaklamlazlblbelbjlbllcelcfldildklgliliflirliwliylkblkolkslldlmalmblmnlmwlnlnalnlloloulrilrmlrtlsblsmltltglthltoltslulusluyluzlvlvilvslwglzhlzzmaimajmakmammanmapmawmaxmbfmbnmchmcmmcrmctmdemdfmdymenmeomfamfbmfemfpmgmhmhcmhrmhvmiminmizmkmknmkrmkumlmlemlnmlqmlrmmrmnmncmndmngmnhmnkmnpmnsmnwmnxmomodmokmopmormpemqgmrmrhmrjmsmscmshmsimtmthmtrmtsmudmuimunmupmuqmvbmvemvfmwkmwqmwrmwwmymymmyqmyvmzbmzsnanagnannasnaznbnchncincjnclncrncxndndbndgnenefngnglngmngongrngunhcnhdnhenhgnhinhknhmnhnnhpnhqnhtnhvnhwnhxnhynhzniqnisnivnjtnjznkonkxnlnlanlenlnnlvnnnnhnnznonodnpinplnqonrnsknsmnsuntonuenuunuznvnwenynydnynocojojcojgojsojwokdokiokmokromonxoorororcornoroorrorsoryosotwouapapaapalpappaspbtpbupcepckpcmpdupeapelpespeypgapipihpilpispkhpkoplplgplkpllplnplppltpmlpmypocpohpovppapreprpprspspsepstpubpuzpwopwwququbqucqudqufqugquhqukqulqumqupqurqusquvquwquxquyqvaqvcqveqvhqviqvjqvlqvmqvnqvoqvpqvsqvwqvzqwaqwcqwhqwsqwtqxaqxcqxhqxlqxnqxoqxpqxrqxtqxuqxwragralrbbrblrcfrifrkirmrmcrmfrmlrmnrmormsrmwrmyrmzrnroromroprtcruruerwrwrsasadsahsamsayscscfschscisckscssdsdcsdhsdnsdssesehseksezsfmsgsgcsgosgwshishlshushysisibsigsizsjdsjosjsskskgskrsksskwskyslslasmsmasmdsmjsmlsmnsmssmtsnsnbsnhsosogspvspysqsrsrbsrcsrksrmsrnsrosrssssshsslssmststastvsusuqsursvsvcsveswswbswcswhswkswnswvsyctataatajtaqtastautcbtcetchtcptcstcytcztdxtetectemteztfntgtghtgjtgntgrtgxtgyththtthvthztitiatigtjotktkgtkmtltmgtmhtmntmwtntnatnetnftngtotodtoitojtoltortpitrtrftrktrutstsgttttcttmttqtuatultuutuvtuytvytwtxctxytytyvtzhtzjtzmtzoublugukukiulnunrururkuspuzuznuzsvapvevivicvitvkkvkpvktvlsvmwvowawagwbmwbrweawesweuwlcwlewlkwniwowrywsgwuuxalxanxbdxhxmgxmmxmvxmwxnjxnqxnrxpexslxstxupxwoyajyakybaybbybdycryddyiyihyimyoyosyuayuezazchzdjzehzenzgbzghzgmzgnzhzhdzhnzkbzljzlmzlnzlqzmizmzzndznezomzqezsmzuzumzybzygzyjzynzypzzj
mov rcx, qword [rsp + 0x88]
lea rcx, [rax + rcx*8]
mov rbx, r12
sub r12, 1
jb 0x1401e5c4e
mov rdi, rdx
mov r8, qword [rcx + 8]
cmp r8, qword [rcx - 0x10]
jne 0x1401e5c55
lea rsi, [rcx - 0x18]
mov rdx, qword [rcx - 0x18]
mov rcx, qword [rcx]
call sub.msvcrt.dll_memcmp
lea rdx, [rdi + 1]
mov rcx, rsi
test eax, eax
je 0x1401e5c1b
jmp 0x1401e5c55
xor ebx, ebx
mov edi, 0x582
mov rax, qword [rsp + 0x318]
cmp rax, 4
jb 0x1401e5c6b
mov rax, qword [rsp + 0x308]
mov r14d, 3
sub r14, rax
mov eax, 0x582
sub rax, rbx
cmp r14, rax
cmovb rax, r14
test rax, rax
je 0x1401e4a34
mov r15, rbx
lea rax, [rbx + rbx*2]
lea rcx, str.aaaaeaaoaatababaabhabqabsabvacfacmacqacracwacxacyadaadfadpaebaecafafbafkafsaguagwahgahtaigaiiaiwajpajtakakbalnalsamamfamwanaoaapaapcapdapjapkaplapmapwararbariarkarnarqarsaryarzasatjatvaujauzavavlayaycayhaylaynaypayrazazbazdazjaznazzbabadbagbahbaibalbaubbcbbjbbpbbrbbzbccbchbcibclbcqbcrbebeabebberbewbflbfqbftbfubfybgbgnbgpbgqbgrbhbbhkbhrbibilbinbiubjnbjobjqbjsbjtbkfbkoblableblgbliblkblnbltbmbmbbmlbmmbnbobpdbplbpqbqibqkbrbrabrcbribrmbsbshbtbbtdbtibtjbtmbtobtsbtxbtzbumbvebvubwebxkbxobxpbxrbynbyvbzcbzjbzkcacaacaccafcakcbkcblcclccmccoccqcdocecekceycfmchchfchgchhchjchkchnchpchqchzciwcjyckackbcknckscktckzclccldclecljcltcmncmrcnbcnhcnkcnlcnpcnrcntcnucnwcocoacobcoqcpacpecpfcpicpxcqdcqucrcrhcricrjcrkcrlcrmcrpcrrcrscrtcrxcscsacshcsjcslcsocspcsvcswcsyctcctdctecthctlctsctucucuccvcvncwdczhczocztdadaodapdcrdedendepdgodgrdhddhvdibdikdindipdiqdiwdjedjkdjrdksdngdnkdoidrhdridrwdsbdtydundupdvdwkdwudwydyudzdznecreeekkekyelemkemyenenbenfenheoesesgesiesketetoeueuqeveevnewoeyofafabfanfarfatfblffffmfifilfjflmfmpfngfofosfpefubfucfuefuffuhfuifuqfurfuvgagaagacgadgaegalgangargawgaxgazgbmgcegcfgclgcrgdgdaggoghaghkghogibgilgjugkpglgldgmzgngnbgnognwgomgoqgoxgpegrogrrgrtgrugswguguagugguigukgulgungvgwigynhahaahaehaihakhalharhaxhbnhcahdnheheahihjihlthmahmchmdhmehmghmhhmihmjhmlhmmhmphmqhmrhmshmwhmyhmzhnehnjhnohohochoihojhrhrahrmhsbhsnhthuhujhuphushwchyhywhziaibyicridaidbieigigbihbiiijcijeijnijsikikeiktinginhioiriisismititziuiwixljajacjakjamjanjaxjbejbnjgojijiijkmjkpjudjuljvjvdjwkakaakabkackamkarkbdkbykcakcnkdrkdtkeakebkekkexkfakfrkfxkfykgkgekhakhbkhkkhnkhskhtkhvkikiskiukjkjbkjhkjpkjtkkkknkkzklklmklnkmkmbkmnkmokmrkmskmvkmwknknckngknjknnknrkokodkohkoikopkoykozkpekplkppkpvkpykqskqykrkrckrikrkkrmkrnkrtkrukskshksiksmksskswktbktuktwkukuikulkuukuwkuykvkvbkvlkvqkvrkvtkvukvykwkwwkwykxckxdkxfkxkkxlkxukykykkyulalacladlahlaklamlazlblbelbjlbllcelcfldildklgliliflirliwliylkblkolkslldlmalmblmnlmwlnlnalnlloloulrilrmlrtlsblsmltltglthltoltslulusluyluzlvlvilvslwglzhlzzmaimajmakmammanmapmawmaxmbfmbnmchmcmmcrmctmdemdfmdymenmeomfamfbmfemfpmgmhmhcmhrmhvmiminmizmkmknmkrmkumlmlemlnmlqmlrmmrmnmncmndmngmnhmnkmnpmnsmnwmnxmomodmokmopmormpemqgmrmrhmrjmsmscmshmsimtmthmtrmtsmudmuimunmupmuqmvbmvemvfmwkmwqmwrmwwmymymmyqmyvmzbmzsnanagnannasnaznbnchncincjnclncrncxndndbndgnenefngnglngmngongrngunhcnhdnhenhgnhinhknhmnhnnhpnhqnhtnhvnhwnhxnhynhzniqnisnivnjtnjznkonkxnlnlanlenlnnlvnnnnhnnznonodnpinplnqonrnsknsmnsuntonuenuunuznvnwenynydnynocojojcojgojsojwokdokiokmokromonxoorororcornoroorrorsoryosotwouapapaapalpappaspbtpbupcepckpcmpdupeapelpespeypgapipihpilpispkhpkoplplgplkpllplnplppltpmlpmypocpohpovppapreprpprspspsepstpubpuzpwopwwququbqucqudqufqugquhqukqulqumqupqurqusquvquwquxquyqvaqvcqveqvhqviqvjqvlqvmqvnqvoqvpqvsqvwqvzqwaqwcqwhqwsqwtqxaqxcqxhqxlqxnqxoqxpqxrqxtqxuqxwragralrbbrblrcfrifrkirmrmcrmfrmlrmnrmormsrmwrmyrmzrnroromroprtcruruerwrwrsasadsahsamsayscscfschscisckscssdsdcsdhsdnsdssesehseksezsfmsgsgcsgosgwshishlshushysisibsigsizsjdsjosjsskskgskrsksskwskyslslasmsmasmdsmjsmlsmnsmssmtsnsnbsnhsosogspvspysqsrsrbsrcsrksrmsrnsrosrssssshsslssmststastvsusuqsursvsvcsveswswbswcswhswkswnswvsyctataatajtaqtastautcbtcetchtcptcstcytcztdxtetectemteztfntgtghtgjtgntgrtgxtgyththtthvthztitiatigtjotktkgtkmtltmgtmhtmntmwtntnatnetnftngtotodtoitojtoltortpitrtrftrktrutstsgttttcttmttqtuatultuutuvtuytvytwtxctxytytyvtzhtzjtzmtzoublugukukiulnunrururkuspuzuznuzsvapvevivicvitvkkvkpvktvlsvmwvowawagwbmwbrweawesweuwlcwlewlkwniwowrywsgwuuxalxanxbdxhxmgxmmxmvxmwxnjxnqxnrxpexslxstxupxwoyajyakybaybbybdycryddyiyihyimyoyosyuayuezazchzdjzehzenzgbzghzgmzgnzhzhdzhnzkbzljzlmzlnzlqzmizmzzndznezomzqezsmzuzumzybzygzyjzynzypzzj
lea rsi, [rcx + rax*8]
lea rbx, [rsp + 0x304]
cmp rdi, r14
cmovb r14, rdi
lea r12, [rsp + 0x308]
lea rdi, [rcx + rax*8]
add rdi, 0x10
lea r13, [0x1403725a8]
cmp r15, 0x582
ja 0x1401ea129
mov r8, qword [rdi - 8]
cmp r8, qword [rsi + 8]
jne 0x1401e4a34
mov rdx, qword [rsi]
mov rcx, qword [rdi - 0x10]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1401e4a34
mov ebp, dword [rdi]
test ebp, ebp
je 0x1401e4a34
mov rax, qword [rsp + 0x318]
cmp rax, 4
jb 0x1401e5d41
mov rdx, qword [rsp + 0x308]
cmp rdx, 3
je 0x1401e4a34
cmp rdx, rax
jne 0x1401e5d57
lea rcx, [rsp + 0x300]
call fcn.1401dd4ed
mov rax, qword [rsp + 0x308]
mov rcx, qword [rsp + 0x310]
jmp 0x1401e5d62
lea rdx, [rsp + 0x318]
mov rcx, rbx
cmp rax, 3
jne 0x1401e5d65
jmp 0x1401e4a34
mov rcx, qword [rsp + 0x310]
mov rax, rdx
mov rdx, r12
mov dword [rcx + rax*4], ebp
inc qword [rdx]
inc r15
add rdi, 0x18
dec r14
jne 0x1401e5cc4
jmp 0x1401e4a34
lea rcx, [rsp + 0x304]
mov rax, rdx
mov edx, 3
cmp rax, rdx
jne 0x1401e5db9
lea rcx, [rsp + 0x300]
call fcn.1401dd4ed
lea rcx, [rsp + 0x308]
mov rax, qword [rcx]
mov qword [rsp + 0xd8], rcx
mov rcx, qword [rcx + 8]
mov bpl, r13b
mov bl, r12b
mov edx, edi
shl edx, 8
shl esi, 8
mov r14b, r15b
shl edi, 0x18
shl ebp, 0x1d
xor ebp, edi
and edx, 0xff0000
shl ebx, 0x15
xor ebx, edx
or ebx, ebp
movzx edx, si
shl r14d, 0xd
xor r14d, edx
lea edx, [r14 + rbx]
add edx, 0x20
mov dword [rcx + rax*4], edx
mov rax, qword [rsp + 0xd8]
inc qword [rax]
jmp 0x1401e4a34
lea rcx, [0x140367b08]
jmp 0x1401e5e35
lea rcx, [0x140367b60]
test ebp, ebp
je 0x1401e5e35
cmp r14d, 0x44464c54
je 0x1401e5e32
cmp r14d, 0x6c61746e
je 0x1401e5e32
cmp r14d, 0x6d796d72
jne 0x1401e5e35
mov rcx, rax
mov al, byte [rcx + 0x50]
mov r10b, byte [rcx + 0x51]
mov rdx, qword [rsp + 0x78]
cmp qword [rdx + 0x820], 0
je 0x1401e5e72
movabs rdx, 0x8000000000000000
cmp qword [rsp + 0x58], rdx
sete r8b
mov r12b, byte [rsp + 0xb0]
cmp r12b, 3
setb dl
or dl, r8b
jmp 0x1401e5e7c
xor edx, edx
mov r12b, byte [rsp + 0xb0]
lea r8, [0x140368ef0]
test dl, dl
cmove r8, rcx
lea r9, [0x1403678a0]
cmp rcx, r9
cmove r8, rcx
xor r9d, r9d
cmp r10b, 2
xorps xmm6, xmm6
lea rcx, [rsp + 0x140]
movups xmmword [rcx + 0x10], xmm6
movups xmmword [rcx + 0x28], xmm6
mov r10d, dword [rsp + 0x3c0]
mov dword [rcx + 0x82], r10d
movzx r10d, word [rsp + 0x3c4]
mov word [rcx + 0x86], r10w
mov r11, qword [rsp + 0x78]
mov qword [rcx + 0xa8], r11
mov byte [rcx + 0xbb], r12b
mov r10d, dword [rsp + 0x90]
mov dword [rcx + 0xa0], r10d
mov r10d, dword [rsp + 0x5d0]
mov dword [rcx + 0xa4], r10d
mov qword [rcx], r9
mov r10d, 8
mov qword [rcx + 8], r10
mov qword [rcx + 0x20], r10
mov qword [rcx + 0x38], r10
mov qword [rcx + 0x40], r9
mov dword [rcx + 0x48], ebp
mov dword [rcx + 0x4c], r14d
mov qword [rcx + 0x50], r15
mov qword [rcx + 0x58], rdi
mov qword [rcx + 0x60], rbx
mov qword [rcx + 0x68], r11
movups xmmword [rcx + 0x70], xmm6
mov word [rcx + 0x80], si
mov qword [rcx + 0x88], r9
mov qword [rcx + 0x90], 2
mov qword [rcx + 0x98], r9
mov byte [rcx + 0xb8], dl
setne byte [rcx + 0xb9]
mov byte [rcx + 0xba], al
mov qword [rcx + 0xb0], r8
xor edx, edx
call fcn.1401dcfdc
lea rcx, [rsp + 0x140]
mov rax, qword [rcx + 8]
mov rdx, qword [rcx + 0x10]
lea rdx, [rdx + rdx*4]
movups xmmword [rax + rdx*8], xmm6
mov qword [rax + rdx*8 + 0x10], 0
movaps xmm0, xmmword [str.nrvr]
movups xmmword [rax + rdx*8 + 0x18], xmm0
inc qword [rcx + 0x10]
xor edx, edx
xor r8d, r8d
call fcn.1401ec920
movzx eax, byte [rsp + 0x1fb]
cmp rax, 1
je 0x1401e6084
cmp eax, 2
jne 0x1401e6150
mov rsi, qword [rsp + 0x150]
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e6002
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.altr]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e6063
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.mltr]
jmp 0x1401e6136
mov rsi, qword [rsp + 0x150]
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e60b9
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.artl]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e611a
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.mrtl]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
jmp 0x1401e6158
mov rsi, qword [rsp + 0x150]
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e6185
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [0x1402ef470]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e61e6
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.rmun]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e6247
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.mond]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e62a8
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.dnar]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e6309
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.kart]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x140]
jne 0x1401e636a
lea rcx, [rsp + 0x140]
mov rdx, rsi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rsi
movaps xmm0, xmmword [str.FRAH]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rdi, qword [rsp + 0x150]
mov rax, qword [rsp + 0x1f0]
inc rdi
mov qword [rsp + 0x150], rdi
mov rax, qword [rax + 8]
test rax, rax
je 0x1401e63c1
lea rcx, [rsp + 0x140]
call rax
mov rdi, qword [rsp + 0x150]
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rdi
cmp rdi, qword [rsp + 0x140]
jne 0x1401e63ee
lea rcx, [rsp + 0x140]
mov rdx, rdi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
lea rdx, [rsp + 0x1c8]
mov rcx, qword [rdx - 0x80]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rdi
movaps xmm0, xmmword [str.ZZUB]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rdi, qword [rdx - 0x78]
inc rdi
mov qword [rdx - 0x78], rdi
lea rsi, str.mvba
lea r14, str.tlac
lea rbx, [rsp + 0x140]
mov r12, qword [rsp + 0x5e8]
mov r15d, dword [rsi]
test r15d, r15d
je 0x1401e64af
mov ebp, dword [rsi + 4]
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rdi
cmp rdi, qword [rsp + 0x140]
jne 0x1401e646f
mov rcx, rbx
mov rdx, rdi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rdi
mov dword [rcx + rax*8 + 0x18], r15d
mov dword [rcx + rax*8 + 0x1c], 1
mov dword [rcx + rax*8 + 0x20], ebp
and ebp, 1
mov dword [rcx + rax*8 + 0x24], ebp
mov rdi, qword [rsp + 0x150]
inc rdi
mov qword [rsp + 0x150], rdi
add rsi, 8
cmp rsi, r14
jne 0x1401e643c
mov al, byte [rsp + 0x1fb]
dec al
cmp al, 1
ja 0x1401e655d
lea rsi, str.tlac
lea r14, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
lea rbx, [rsp + 0x140]
mov r15d, dword [rsi]
test r15d, r15d
je 0x1401e6552
mov ebp, dword [rsi + 4]
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rdi
cmp rdi, qword [rsp + 0x140]
jne 0x1401e6512
mov rcx, rbx
mov rdx, rdi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rdi
mov dword [rcx + rax*8 + 0x18], r15d
mov dword [rcx + rax*8 + 0x1c], 1
mov dword [rcx + rax*8 + 0x20], ebp
and ebp, 1
mov dword [rcx + rax*8 + 0x24], ebp
mov rdi, qword [rsp + 0x150]
inc rdi
mov qword [rsp + 0x150], rdi
add rsi, 8
cmp rsi, r14
jne 0x1401e64df
jmp 0x1401e65c6
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rdi
cmp rdi, qword [rsp + 0x140]
jne 0x1401e6592
lea rcx, [rsp + 0x140]
mov rdx, rdi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov r12, qword [rsp + 0x5e8]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rdi
movaps xmm0, xmmword [0x1402ef4e0]
movups xmmword [rcx + rax*8 + 0x18], xmm0
mov rdi, qword [rsp + 0x150]
inc rdi
mov qword [rsp + 0x150], rdi
mov rax, r12
shl rax, 4
mov qword [rsp + 0x200], rax
test r12, r12
je 0x1401e6907
mov rcx, qword [rsp + 0x5e0]
mov rax, qword [rsp + 0x200]
lea r15, [rcx + rax]
xor esi, esi
lea rbx, [rsp + 0x140]
mov eax, dword [rcx + rsi + 0xc]
not eax
xor ebp, ebp
or eax, dword [rcx + rsi + 8]
sete al
mov r14d, dword [rcx + rsi]
test r14d, r14d
je 0x1401e6690
mov bpl, al
mov r12d, dword [rcx + rsi + 4]
test ebp, ebp
mov r13d, r12d
cmove r13d, ebp
movups xmm6, xmmword [rsp + 0x1b0]
mov rax, rdi
cmp rdi, qword [rsp + 0x140]
jne 0x1401e664d
mov rcx, rbx
mov rdx, rdi
call fcn.1401dcfdc
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x148]
lea rax, [rax + rax*4]
movups xmmword [rcx + rax*8], xmm6
mov qword [rcx + rax*8 + 0x10], rdi
mov dword [rcx + rax*8 + 0x18], r14d
mov dword [rcx + rax*8 + 0x1c], r12d
mov dword [rcx + rax*8 + 0x20], ebp
mov dword [rcx + rax*8 + 0x24], r13d
mov rdi, qword [rsp + 0x150]
inc rdi
mov qword [rsp + 0x150], rdi
mov rcx, qword [rsp + 0x5e0]
add rsi, 0x10
cmp qword [rsp + 0x200], rsi
jne 0x1401e65fc
cmp byte [rsp + 0x1f8], 0
je 0x1401e6907
lea r12, [rsp + 0x3c8]
lea rbp, str.crfa
mov r13, qword [rsp + 0x5e0]
mov rcx, qword [rsp + 0x1e8]
mov rax, qword [rcx + 0x7e8]
test rax, rax
je 0x1401e68fa
mov r14d, dword [r13]
mov esi, dword [r13 + 4]
mov rdx, qword [rcx + 0x800]
mov qword [r12 + 0x10], rdx
movups xmm0, xmmword [rcx + 0x7f0]
movups xmmword [r12], xmm0
mov qword [rsp + 0x3c0], rax
cmp r14d, 0x61616c74
jne 0x1401e67a8
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x3c0]
mov r8w, 0x11
call fcn.14028b001
cmp byte [rsp + 0x315], 2
je 0x1401e68fa
mov rax, qword [rsp + 0x308]
and eax, 0x3fffc
je 0x1401e68fa
mov rdx, qword [rsp + 0x1d8]
cmp rdx, qword [rsp + 0x1c8]
jne 0x1401e6776
lea rcx, [rsp + 0x1c8]
call fcn.1401dc204
mov rdx, qword [rsp + 0x1d8]
mov eax, esi
shl eax, 0x10
movabs rcx, 0x100000011
or rax, rcx
mov rcx, qword [rsp + 0x1d0]
lea rdx, [rdx + rdx*2]
mov dword [rcx + rdx*2], eax
shr rax, 0x20
mov word [rcx + rdx*2 + 4], ax
inc qword [rsp + 0x1d8]
mov edi, 0x4c
xor eax, eax
mov ecx, 0x4c
shr rdi, 1
add rdi, rax
mov edx, dword [rbp + rdi*8]
cmp edx, r14d
je 0x1401e67df
lea r8, [rdi + 1]
cmp edx, r14d
cmova rcx, rdi
cmovb rax, r8
mov rdi, rcx
sub rdi, rax
ja 0x1401e67b4
jmp 0x1401e68fa
mov dword [rsp + 0x50], esi
mov rsi, r15
mov r15, r12
mov r12b, byte [rbp + rdi*8 + 6]
movzx r14d, r12b
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x3c0]
mov r8d, r14d
call fcn.14028b001
mov bl, byte [rsp + 0x315]
cmp bl, 2
jne 0x1401e6827
cmp r12b, 0x25
mov r12, r15
mov r15, rsi
je 0x1401e6845
jmp 0x1401e68fa
mov rax, qword [rsp + 0x308]
and eax, 0x3fffc
cmp r12b, 0x25
jne 0x1401e6885
test rax, rax
mov r12, r15
mov r15, rsi
jne 0x1401e688b
cmp byte [rbp + rdi*8 + 4], 1
jne 0x1401e686d
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x3c0]
mov r8w, 3
call fcn.14028b001
mov bl, byte [rsp + 0x315]
cmp bl, 2
je 0x1401e68fa
mov rax, qword [rsp + 0x308]
and eax, 0x3fffc
jmp 0x1401e688b
mov r12, r15
mov r15, rsi
test rax, rax
je 0x1401e68fa
shl rdi, 3
cmp dword [rsp + 0x50], 1
adc rdi, rbp
movzx esi, byte [rdi + 4]
mov rdx, qword [rsp + 0x1d8]
cmp rdx, qword [rsp + 0x1c8]
jne 0x1401e68c7
lea rcx, [rsp + 0x1c8]
call fcn.1401dc204
mov rdx, qword [rsp + 0x1d8]
movzx eax, bl
shl rax, 0x20
shl rsi, 0x10
or r14, rax
or r14, rsi
mov rax, qword [rsp + 0x1d0]
lea rcx, [rdx + rdx*2]
mov dword [rax + rcx*2], r14d
shr r14, 0x20
mov word [rax + rcx*2 + 4], r14w
inc qword [rsp + 0x1d8]
add r13, 0x10
cmp r13, r15
jne 0x1401e66c7
mov rax, qword [rsp + 0x1f0]
mov rax, qword [rax + 0x10]
test rax, rax
je 0x1401e6922
lea rcx, [rsp + 0x140]
call rax
lea rsi, [rsp + 0x300]
lea rdx, [rsp + 0x140]
mov r8d, 0xc0
mov rcx, rsi
call sub.msvcrt.dll_memcpy
xor r14d, r14d
mov word [rsp + 0x248], r14w
mov word [rsp + 0x24c], r14w
mov dword [rsp + 0x4d8], r14d
mov dword [rsp + 0x4e0], r14d
mov r15, qword [rsi + 0x68]
lea r12, [r15 + 0x998]
add r15, 0xa30
lea rcx, [0x1403623f8]
lea rax, [rsp + 0x3c0]
mov qword [rsp + 0xa0], rax
lea rsi, [rsp + 0x270]
cmp byte [r14 + rcx], 0
je 0x1401e69ba
mov r13d, 1
mov rdi, r15
movabs rax, 0x8000000000000000
cmp qword [r15], rax
jne 0x1401e69d4
jmp 0x1401e6b22
movabs rax, 0x8000000000000000
cmp qword [r12], rax
je 0x1401e6b22
xor r13d, r13d
mov rdi, r12
cmp word [rsp + r13*4 + 0x358], 0
je 0x1401e6b22
lea rdx, [rdi + 0x18]
movzx r8d, word [rsp + r13*4 + 0x35a]
movzx ebp, word [rsp + r13*4 + 0x360]
movzx ebx, word [rsp + r13*4 + 0x362]
lea rcx, [rsp + 0x3c0]
call fcn.1401b547c
movzx eax, word [rsp + 0x3f4]
cmp ax, 3
je 0x1401e6b1b
mov ecx, dword [rsp + 0x3f0]
mov dword [rsp + 0x2a0], ecx
movups xmm0, xmmword [rsp + 0x3c0]
movups xmm1, xmmword [rsp + 0x3d0]
movups xmm2, xmmword [rsp + 0x3e0]
movaps xmmword [rsp + 0x290], xmm2
movaps xmmword [rsp + 0x280], xmm1
movaps xmmword [rsp + 0x270], xmm0
lea rdx, [rsp + 0x3f6]
movzx ecx, word [rdx + 8]
lea r8, [rsp + 0x2a6]
mov word [r8 + 8], cx
mov rcx, qword [rdx]
mov qword [r8], rcx
mov word [rsp + 0x2a4], ax
test bp, bp
je 0x1401e6ab7
lea rcx, [rsp + 0x3c0]
mov rdx, rsi
mov r8d, ebx
call fcn.1401b5580
movzx eax, word [rsp + 0x3d4]
cmp ax, 2
je 0x1401e6b1b
movzx ebx, word [rsp + 0x3d6]
jmp 0x1401e6ac5
cmp ax, 2
je 0x1401e6b1b
movzx ebx, word [rsp + 0x2a6]
test ax, ax
je 0x1401e6b1b
add rdi, 0x38
lea rcx, [rsp + 0x3c0]
mov rdx, rdi
mov r8d, ebx
call fcn.1401b54e4
cmp qword [rsp + 0x3c0], 0
je 0x1401e6b1b
mov eax, dword [rsp + 0x3d0]
mov word [rsp + r13*4 + 0x248], 1
mov word [rsp + r13*4 + 0x24a], bx
mov dword [rsp + r13*8 + 0x4d8], 1
mov dword [rsp + r13*8 + 0x4dc], eax
lea rcx, [0x1403623f8]
cmp r14, 1
je 0x1401e6b30
inc r14
jmp 0x1401e6996
movups xmm0, xmmword [rsp + 0x4d8]
movaps xmmword [rsp + 0x250], xmm0
xor ebx, ebx
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], 8
mov qword [rsp + 0x228], rbx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x110], xmm0
mov r14, qword [rsp + 0x310]
test r14, r14
je 0x1401e6ba4
mov r12, qword [rsp + 0x308]
cmp r14, 0x15
jae 0x1401e6bc1
cmp r14, 1
jbe 0x1401e74fd
mov r8d, 1
mov rcx, r12
mov rdx, r14
call fcn.1401dcaab
jmp 0x1401e7408
mov dword [rsp + 0x108], 2
mov eax, 8
mov qword [rsp + 0x80], rax
jmp 0x1401e7b29
lea rax, [r14*4]
and rax, 0xfffffffffffffff8
lea rcx, [rax + rax*4]
mov al, byte [0x1403f9274]
mov edx, 8
call fcn.140061500
test rax, rax
je 0x1401ea3de
mov r15, rax
mov al, byte [0x1403f9274]
mov ecx, 0x100
mov edx, 8
call fcn.140061500
test rax, rax
mov qword [rsp + 0x60], r15
je 0x1401ea3fb
mov rbp, rax
lea rax, [r12 + 0x50]
mov qword [rsp + 0xb8], rax
lea rax, [r12 - 0x28]
mov qword [rsp + 0xa8], rax
mov eax, 0x10
mov qword [rsp + 0xd0], rax
xor esi, esi
xor r10d, r10d
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x68], rsi
mov rax, r14
sub rax, r10
lea r9, [r10 + r10*4]
lea rcx, [r12 + r9*8]
cmp rax, 2
mov qword [rsp + 0x58], r10
jae 0x1401e6c72
mov r8, rax
jmp 0x1401e6dab
mov edx, dword [rcx + 0x40]
cmp edx, dword [r12 + r9*8 + 0x18]
setb r8b
jne 0x1401e72ab
mov r8, qword [rcx + 0x38]
cmp r8, qword [r12 + r9*8 + 0x10]
setb r8b
jne 0x1401e72ab
mov r8d, dword [rcx + 0x44]
cmp r8d, dword [r12 + r9*8 + 0x1c]
setb r8b
jne 0x1401e72ab
mov r8d, dword [rcx + 0x48]
cmp r8d, dword [r12 + r9*8 + 0x20]
setb r8b
jne 0x1401e72ab
mov r8d, dword [rcx + 0x4c]
cmp r8d, dword [r12 + r9*8 + 0x24]
setb r8b
jne 0x1401e72ab
xor r8d, r8d
cmp r8, 2
je 0x1401e6cf6
mov r10, qword [rcx + r8*8]
lea r11, [r8 + 1]
cmp qword [rcx + r8*8 + 0x28], r10
mov r10, qword [rsp + 0x58]
mov r8, r11
je 0x1401e6cd3
jb 0x1401e72b4
mov r8d, 2
cmp rax, 3
jb 0x1401e6dab
mov r8, qword [rsp + 0xb8]
lea r9, [r8 + r9*8]
mov r8d, 2
mov r11d, edx
lea r10, [r8 + r8*4]
mov edx, dword [rcx + r10*8 + 0x18]
cmp edx, r11d
setb bl
jne 0x1401e6d8f
lea r11, [r8 - 1]
lea r11, [r11 + r11*4]
mov rsi, qword [rcx + r10*8 + 0x10]
cmp rsi, qword [rcx + r11*8 + 0x10]
setb bl
jne 0x1401e6d8f
mov esi, dword [rcx + r10*8 + 0x1c]
cmp esi, dword [rcx + r11*8 + 0x1c]
setb bl
jne 0x1401e6d8f
mov esi, dword [rcx + r10*8 + 0x20]
cmp esi, dword [rcx + r11*8 + 0x20]
setb bl
jne 0x1401e6d8f
mov r10d, dword [rcx + r10*8 + 0x24]
cmp r10d, dword [rcx + r11*8 + 0x24]
setb bl
jne 0x1401e6d8f
xor r10d, r10d
cmp r10, 2
je 0x1401e6d93
mov r11, qword [r9 + r10*8 - 0x28]
lea rsi, [r10 + 1]
cmp qword [r9 + r10*8], r11
mov r10, rsi
je 0x1401e6d73
jae 0x1401e6d93
jmp 0x1401e6da6
test bl, bl
jne 0x1401e6da6
inc r8
add r9, 0x28
cmp r8, rax
jne 0x1401e6d18
mov r8, rax
mov r10, qword [rsp + 0x58]
lea rbx, [r8 + r10]
mov rdi, rbx
sub rdi, r10
jb 0x1401ea26e
cmp rbx, r14
ja 0x1401ea26e
jae 0x1401e6df8
cmp r8, 0xa
jae 0x1401e6df8
lea rbx, [r10 + 0xa]
cmp rbx, r14
cmovae rbx, r14
mov rdi, rbx
sub rdi, r10
jb 0x1401ea28b
cmp r8, 1
adc r8, 0
mov rdx, rdi
call fcn.1401dcaab
mov r10, qword [rsp + 0x58]
mov qword [rsp + 0xd8], rbx
mov r13, qword [rsp + 0xd0]
cmp qword [rsp + 0x68], r13
jne 0x1401e6e6d
mov rcx, r13
shl rcx, 5
mov al, byte [0x1403f9274]
mov edx, 8
call fcn.140061500
test rax, rax
je 0x1401ea2a4
mov rbx, rax
lea rsi, [r13*2]
shl r13, 4
mov rcx, rax
mov rdx, rbp
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rbp
call fcn.1402e3f64
mov rbp, rbx
mov qword [rsp + 0xd0], rsi
mov r10, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
shl rax, 4
mov qword [rbp + rax], rdi
mov rsi, rcx
mov qword [rbp + rax + 8], r10
inc rsi
mov qword [rsp + 0xb0], rbp
cmp rsi, 2
jb 0x1401e7295
mov rcx, rsi
shl rcx, 4
mov rax, qword [rcx + rbp - 0x10]
mov rdx, qword [rcx + rbp - 8]
add rdx, rax
cmp rdx, r14
je 0x1401e6efa
mov r8, qword [rcx + rbp - 0x20]
cmp r8, rax
jbe 0x1401e6efa
cmp rsi, 2
jbe 0x1401e7295
lea rbx, [rsi - 3]
mov rdx, rbx
shl rdx, 4
mov rdx, qword [rbp + rdx]
lea r9, [r8 + rax]
cmp rdx, r9
jbe 0x1401e6f10
cmp rsi, 3
jbe 0x1401e7295
add r8, rdx
cmp qword [rcx + rbp - 0x40], r8
jbe 0x1401e6f10
jmp 0x1401e7295
cmp rsi, 3
jb 0x1401e6f15
lea rbx, [rsi - 3]
mov rcx, rbx
shl rcx, 4
mov rdx, qword [rbp + rcx]
cmp rdx, rax
jb 0x1401e6f19
lea rbx, [rsi - 2]
cmp rsi, rbx
jbe 0x1401ea034
lea rax, [rbx + 1]
cmp rsi, rax
jbe 0x1401ea04c
mov r13, rbx
shl r13, 4
mov r10, qword [rbp + r13 + 8]
shl rax, 4
mov rdx, qword [rbp + rax]
mov rcx, qword [rbp + rax + 8]
add rcx, rdx
mov r15, rcx
sub r15, r10
jb 0x1401ea08e
cmp rcx, r14
ja 0x1401ea0ad
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x68], rsi
mov r9, qword [rbp + r13]
lea rdx, [rax + rbp]
mov qword [rsp + 0x98], rdx
lea rax, [rbp + rax + 8]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x58], r10
lea rax, [r10 + r10*4]
lea r14, [r12 + rax*8]
lea rax, [r9 + r9*4]
lea rdi, [r14 + rax*8]
lea rax, [rcx + rcx*4]
lea rbp, [r12 + rax*8]
mov rsi, r15
sub rsi, r9
cmp rsi, r9
mov qword [rsp + 0x50], r9
jae 0x1401e710c
mov qword [rsp + 0xe0], rbx
lea rax, [rsi*8]
lea r12, [rax + rax*4]
mov r15, qword [rsp + 0x60]
mov rcx, r15
mov rdx, rdi
mov r8, r12
mov rbx, r9
call sub.msvcrt.dll_memcpy
add r12, r15
mov rdx, r15
test rbx, rbx
jle 0x1401e7208
test rsi, rsi
mov rbx, qword [rsp + 0xe0]
mov rsi, qword [rsp + 0x98]
jle 0x1401e7223
mov eax, dword [r12 - 0x10]
cmp eax, dword [rdi - 0x10]
setb al
jne 0x1401e70a7
mov rax, qword [r12 - 0x18]
cmp rax, qword [rdi - 0x18]
setb al
jne 0x1401e70a7
mov eax, dword [r12 - 0xc]
cmp eax, dword [rdi - 0xc]
setb al
jne 0x1401e70a7
mov eax, dword [r12 - 8]
cmp eax, dword [rdi - 8]
setb al
jne 0x1401e70a7
mov eax, dword [r12 - 4]
cmp eax, dword [rdi - 4]
setb al
jne 0x1401e70a7
lea rax, [r12 - 0x28]
mov r8, 0xfffffffffffffffb
cmp r8, 0xfffffffffffffffd
je 0x1401e7107
mov rcx, qword [r12 + r8*8]
mov rdx, qword [rdi + r8*8]
inc r8
cmp rcx, rdx
je 0x1401e705e
mov eax, 0
sbb rax, rax
cmp rcx, rdx
mov r8d, 0
adc r8, 0xffffffffffffffff
lea rax, [rax + rax*4]
lea rdi, [rdi + rax*8]
lea rax, [r8 + r8*4]
lea r12, [r12 + rax*8]
mov rax, r12
cmp rcx, rdx
jb 0x1401e70d2
jmp 0x1401e70d5
movzx eax, al
mov rcx, rax
neg rcx
lea rcx, [rcx + rcx*4]
lea rdi, [rdi + rcx*8]
xor al, 1
movzx ecx, al
mov rax, rcx
neg rax
lea rax, [rax + rax*4]
lea r12, [r12 + rax*8]
mov rax, r12
test cl, cl
jne 0x1401e70d5
mov rax, rdi
mov rcx, qword [rax + 0x20]
mov qword [rbp - 8], rcx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x18], xmm1
movups xmmword [rbp - 0x28], xmm0
cmp rdi, r14
jbe 0x1401e7203
add rbp, 0xffffffffffffffd8
cmp r12, r15
ja 0x1401e700c
jmp 0x1401e7203
mov r12, rax
jmp 0x1401e70d5
lea rax, [r9*8]
lea r12, [rax + rax*4]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
mov rdx, r14
mov r8, r12
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x50]
add r12, rsi
test rax, rax
jle 0x1401e7212
mov rdx, rsi
cmp r15, rax
mov r15, rsi
mov rsi, qword [rsp + 0x98]
jle 0x1401e7200
mov eax, dword [rdi + 0x18]
cmp eax, dword [rdx + 0x18]
setb al
jne 0x1401e71ad
mov rax, qword [rdi + 0x10]
cmp rax, qword [rdx + 0x10]
setb al
jne 0x1401e71ad
mov eax, dword [rdi + 0x1c]
cmp eax, dword [rdx + 0x1c]
setb al
jne 0x1401e71ad
mov eax, dword [rdi + 0x20]
cmp eax, dword [rdx + 0x20]
setb al
jne 0x1401e71ad
mov eax, dword [rdi + 0x24]
cmp eax, dword [rdx + 0x24]
setb al
jne 0x1401e71ad
xor eax, eax
cmp rax, 2
je 0x1401e71a6
mov rcx, qword [rdi + rax*8]
mov r8, qword [rdx + rax*8]
inc rax
cmp rcx, r8
je 0x1401e718e
jb 0x1401e71b1
xor eax, eax
mov rcx, rdx
jmp 0x1401e71b6
test al, al
je 0x1401e71a6
mov al, 1
mov rcx, rdi
mov r8, qword [rcx + 0x20]
mov qword [r14 + 0x20], r8
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
add r14, 0x28
mov ecx, eax
xor cl, 1
movzx ecx, cl
lea rcx, [rcx + rcx*4]
lea rdx, [rdx + rcx*8]
cmp rdx, r12
jae 0x1401e71fb
movzx eax, al
lea rax, [rax + rax*4]
lea rdi, [rdi + rax*8]
cmp rdi, rbp
jb 0x1401e7153
mov rdi, r14
jmp 0x1401e7223
mov rdi, r14
mov rdx, r15
jmp 0x1401e7223
mov rbx, qword [rsp + 0xe0]
jmp 0x1401e721b
mov rdi, r14
mov rdx, rsi
mov r15, rsi
mov rsi, qword [rsp + 0x98]
sub r12, rdx
mov rcx, rdi
mov r8, r12
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x90]
add rax, qword [rsp + 0x50]
mov qword [rsi], rax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
mov qword [rcx], rax
mov rsi, qword [rsp + 0x68]
cmp rsi, rbx
jbe 0x1401ea0cc
mov rbp, qword [rsp + 0xb0]
add r13, rbp
lea rdx, [r13 + 0x10]
not rbx
add rbx, rsi
shl rbx, 4
mov rcx, r13
mov r8, rbx
call sub.msvcrt.dll_memmove
dec rsi
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x88]
jmp 0x1401e6e91
mov r10, qword [rsp + 0xd8]
cmp r10, r14
jb 0x1401e6c4c
jmp 0x1401e73da
test r8b, r8b
je 0x1401e6cf6
mov r8d, 2
cmp rax, 3
jb 0x1401e7365
mov r8, qword [rsp + 0xb8]
lea r10, [r8 + r9*8]
mov r8d, 2
mov esi, edx
lea r11, [r8 + r8*4]
mov edx, dword [rcx + r11*8 + 0x18]
cmp edx, esi
setb bl
jne 0x1401e7349
lea rsi, [r8 - 1]
lea rsi, [rsi + rsi*4]
mov rdi, qword [rcx + r11*8 + 0x10]
cmp rdi, qword [rcx + rsi*8 + 0x10]
setb bl
jne 0x1401e7349
mov edi, dword [rcx + r11*8 + 0x1c]
cmp edi, dword [rcx + rsi*8 + 0x1c]
setb bl
jne 0x1401e7349
mov edi, dword [rcx + r11*8 + 0x20]
cmp edi, dword [rcx + rsi*8 + 0x20]
setb bl
jne 0x1401e7349
mov r11d, dword [rcx + r11*8 + 0x24]
cmp r11d, dword [rcx + rsi*8 + 0x24]
setb bl
jne 0x1401e7349
xor r11d, r11d
cmp r11, 2
je 0x1401e7360
mov rsi, qword [r10 + r11*8 - 0x28]
lea rdi, [r11 + 1]
cmp qword [r10 + r11*8], rsi
mov r11, rdi
je 0x1401e732d
jb 0x1401e734d
jmp 0x1401e7360
test bl, bl
je 0x1401e7360
inc r8
add r10, 0x28
cmp r8, rax
jne 0x1401e72d6
mov r8, rax
mov r10, qword [rsp + 0x58]
mov rbx, r8
add rbx, r10
jb 0x1401ea2e9
cmp rbx, r14
ja 0x1401ea2dd
cmp r8, 2
jb 0x1401e6daf
mov rax, r8
shr rax, 1
lea rdx, [r8 + r8*4]
shl r9, 3
lea rdx, [r9 + rdx*8]
add rdx, qword [rsp + 0xa8]
mov r9, rcx
xor r10d, r10d
xor r11d, r11d
mov rsi, qword [r9 + r11*8]
mov rdi, qword [rdx + r11*8]
mov qword [r9 + r11*8], rdi
mov qword [rdx + r11*8], rsi
inc r11
cmp r11, 5
jne 0x1401e73a7
inc r10
add rdx, 0xffffffffffffffd8
add r9, 0x28
cmp r10, rax
jne 0x1401e73a4
mov r10, qword [rsp + 0x58]
jmp 0x1401e6daf
mov rcx, qword [0x1403f9220]
xor edi, edi
xor edx, edx
mov r8, rbp
call fcn.1402e3f64
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, r15
call fcn.1402e3f64
cmp r14, 1
je 0x1401e74ff
lea rax, [r12 + 0x4c]
mov ecx, 1
xor edi, edi
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
lea rdx, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
cmp r14, rdi
jbe 0x1401e9fbf
lea r9, [rdi + rdi*4]
mov r10d, dword [rax - 0xc]
cmp r10d, dword [r12 + r9*8 + 0x18]
jne 0x1401e7469
test byte [rax - 4], 1
lea r10, [r12 + r9*8 + 0x20]
mov r11d, dword [r10]
jne 0x1401e749c
test r11b, 1
je 0x1401e7455
xor r11d, 1
mov dword [r10], r11d
mov esi, dword [r12 + r9*8 + 0x1c]
mov ebx, dword [rax - 8]
cmp esi, ebx
cmova ebx, esi
mov dword [r12 + r9*8 + 0x1c], ebx
jmp 0x1401e74b2
inc rdi
cmp r14, rdi
jbe 0x1401e9fbc
lea r9, [rax - 0x24]
lea r10, [rdi + rdi*4]
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
mov r9, qword [r9 + 0x20]
mov qword [r12 + r10*8 + 0x20], r9
movups xmmword [r12 + r10*8 + 0x10], xmm1
movups xmmword [r12 + r10*8], xmm0
jmp 0x1401e74e6
or r11d, 1
mov dword [r10], r11d
mov esi, dword [rax - 8]
mov dword [r12 + r9*8 + 0x1c], esi
mov esi, dword [rax]
mov dword [r12 + r9*8 + 0x24], esi
lea r9, [r12 + r9*8]
mov esi, dword [rax - 4]
and esi, 2
or esi, r11d
mov dword [r10], esi
mov r10, qword [rax - 0x24]
mov r11, qword [r9]
mov rsi, qword [r9 + 8]
cmp r11, r10
cmovb r10, r11
mov qword [r9], r10
mov r10, qword [rax - 0x1c]
cmp rsi, r10
cmovb r10, rsi
mov qword [r9 + 8], r10
inc rcx
add rax, 0x28
cmp r14, rcx
jne 0x1401e7422
cmp r14, rdi
ja 0x1401e74ff
jmp 0x1401e750d
xor edi, edi
inc rdi
mov qword [rsp + 0x310], rdi
mov r14, rdi
lea rax, [r14 + r14*4]
lea rax, [r12 + rax*8]
mov qword [rsp + 0x60], rax
mov r15, qword [rsp + 0x368]
lea rsi, [r15 + 0x998]
add r15, 0xa30
mov dword [rsp + 0x108], 2
mov dword [rsp + 0x58], 2
mov qword [rsp + 0x78], rsi
lea rdi, [0x1403623f8]
mov rbx, qword [rsp + 0x60]
mov r11, r12
add r12, 0x28
test byte [r11 + 0x20], 1
mov eax, dword [r11 + 0x1c]
je 0x1401e756e
xor r14d, r14d
cmp eax, 1
je 0x1401e759d
test eax, eax
je 0x1401e757a
bsr ecx, eax
xor ecx, 0x1f
jmp 0x1401e757f
mov ecx, 0x20
mov r14d, 0x20
sub r14d, ecx
cmp r14d, 8
mov ecx, 8
cmovae r14d, ecx
test eax, eax
je 0x1401e79e5
add r14d, dword [rsp + 0x58]
cmp r14d, 0x20
ja 0x1401e79e5
xor eax, eax
mov word [rsp + 0x138], ax
mov dword [rsp + 0x98], 0
mov word [rsp + 0x13c], ax
mov r13, rdi
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x50], r11
cmp byte [r13], 0
je 0x1401e75fb
movabs rax, 0x8000000000000000
cmp qword [r15], rax
je 0x1401e760a
inc r13
mov ebp, 1
mov qword [rsp + 0x68], r15
jmp 0x1401e7628
movabs rax, 0x8000000000000000
cmp qword [rsi], rax
jne 0x1401e761e
inc r13
lea rax, [0x1403623fa]
cmp r13, rax
jne 0x1401e75d6
jmp 0x1401e7844
inc r13
xor ebp, ebp
mov qword [rsp + 0x68], rsi
cmp dword [rsp + rbp*8 + 0x250], 0
je 0x1401e764b
mov eax, dword [rsp + rbp*8 + 0x254]
cmp eax, dword [r11 + 0x18]
jne 0x1401e764b
mov rax, qword [r11 + rbp*8]
mov qword [rsp + rbp*8 + 0x110], rax
cmp word [rsp + rbp*4 + 0x358], 0
je 0x1401e782f
mov rax, qword [rsp + 0x68]
lea rdx, [rax + 0x18]
movzx r8d, word [rsp + rbp*4 + 0x35a]
movzx esi, word [rsp + rbp*4 + 0x360]
movzx r12d, word [rsp + rbp*4 + 0x362]
mov eax, dword [r11 + 0x18]
mov dword [rsp + 0xb0], eax
lea rcx, [rsp + 0x3c0]
call fcn.1401b547c
movzx eax, word [rsp + 0x3f4]
cmp ax, 3
jne 0x1401e76ad
mov rsi, qword [rsp + 0x78]
jmp 0x1401e773f
mov ecx, dword [rsp + 0x3f0]
mov dword [rsp + 0x2a0], ecx
movups xmm0, xmmword [rsp + 0x3c0]
movups xmm1, xmmword [rsp + 0x3d0]
movups xmm2, xmmword [rsp + 0x3e0]
movaps xmmword [rsp + 0x290], xmm2
movaps xmmword [rsp + 0x280], xmm1
movaps xmmword [rsp + 0x270], xmm0
lea rdx, [rsp + 0x3f6]
movzx ecx, word [rdx + 8]
lea r8, [rsp + 0x2a6]
mov word [r8 + 8], cx
mov rcx, qword [rdx]
mov qword [r8], rcx
mov word [rsp + 0x2a4], ax
test si, si
je 0x1401e7749
lea rcx, [rsp + 0x3c0]
lea rdx, [rsp + 0x270]
mov r8d, r12d
call fcn.1401b5580
cmp word [rsp + 0x3d4], 2
mov rsi, qword [rsp + 0x78]
jne 0x1401e7777
mov r11, qword [rsp + 0x50]
jmp 0x1401e782f
cmp ax, 2
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x50]
je 0x1401e782f
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x90], rax
mov rdi, qword [rsp + 0x298]
jmp 0x1401e7794
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x90], rax
mov rdi, qword [rsp + 0x3c8]
mov r11, qword [rsp + 0x50]
mov rbx, rdi
and rbx, 0x1fffe
je 0x1401e781e
add qword [rsp + 0x68], 0x38
xor esi, esi
mov rax, rsi
add rsi, 2
cmp rsi, rdi
ja 0x1401e77fb
mov rcx, qword [rsp + 0x90]
movzx r12d, word [rcx + rax]
rol r12w, 8
lea rcx, [rsp + 0x3c0]
mov rdx, qword [rsp + 0x68]
mov r8d, r12d
call fcn.1401b54e4
mov r11, qword [rsp + 0x50]
cmp qword [rsp + 0x3c0], 0
je 0x1401e77fb
mov eax, dword [rsp + 0xb0]
cmp dword [rsp + 0x3d0], eax
je 0x1401e7802
cmp rbx, rsi
jne 0x1401e77a8
jmp 0x1401e781e
mov word [rsp + rbp*4 + 0x138], 1
mov word [rsp + rbp*4 + 0x13a], r12w
mov al, 1
mov dword [rsp + 0x98], eax
lea rdi, [0x1403623f8]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x78]
lea rax, [0x1403623fa]
cmp r13, rax
mov r12, qword [rsp + 0x70]
jne 0x1401e75d6
mov ebp, dword [r11 + 0x20]
mov r13d, dword [rsp + 0x98]
test r13b, 1
jne 0x1401e79d8
mov eax, ebp
and eax, 0x10
je 0x1401e79d8
mov r8, rdi
cmp byte [r8], 0
je 0x1401e788b
movabs rax, 0x8000000000000000
cmp qword [r15], rax
je 0x1401e789a
inc r8
mov r9d, 1
mov r10, r15
jmp 0x1401e78b7
movabs rax, 0x8000000000000000
cmp qword [rsi], rax
jne 0x1401e78ae
inc r8
lea rax, [0x1403623fa]
cmp r8, rax
jne 0x1401e7868
jmp 0x1401e79d4
inc r8
xor r9d, r9d
mov r10, rsi
mov rcx, qword [r10 + 0x50]
mov rax, rcx
movabs rdx, 0xaaaaaaaaaaaaaaab
mul rdx
shr rdx, 2
test dx, dx
je 0x1401e798a
mov qword [rsp + 0x68], r9
mov r9d, r13d
mov eax, dword [r11 + 0x18]
movzx r11d, dx
cmp r11d, 1
jne 0x1401e78f3
xor r11d, r11d
jmp 0x1401e793c
mov rbx, qword [r10 + 0x48]
xor r11d, r11d
mov ebp, edx
movzx edi, bp
shr edi, 1
lea esi, [r11 + rdi]
cmp si, dx
jae 0x1401e7971
movzx r12d, si
add r12, r12
lea r13, [r12 + r12*2]
add r13, 6
cmp r13, rcx
ja 0x1401e7971
lea r12, [r12 + r12*2]
mov r12d, dword [rbx + r12]
bswap r12d
cmp r12d, eax
ja 0x1401e7931
mov r11d, esi
movzx esi, di
sub ebp, esi
cmp bp, 1
ja 0x1401e78fc
cmp r11w, dx
lea rdi, [0x1403623f8]
mov r12, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov r13d, r9d
jae 0x1401e796a
movzx edx, r11w
add rdx, rdx
lea rsi, [rdx + rdx*2]
add rsi, 6
cmp rsi, rcx
jbe 0x1401e79a1
mov rsi, qword [rsp + 0x78]
jmp 0x1401e798a
lea rdi, [0x1403623f8]
mov r12, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x78]
mov r13d, r9d
lea rax, [0x1403623fa]
cmp r8, rax
mov r11, qword [rsp + 0x50]
jne 0x1401e7868
jmp 0x1401e79d4
lea rcx, [rdx + rdx*2]
mov rdx, qword [r10 + 0x48]
mov ecx, dword [rdx + rcx]
bswap ecx
cmp ecx, eax
mov rsi, qword [rsp + 0x78]
jne 0x1401e798a
mov rax, qword [rsp + 0x68]
mov word [rsp + rax*4 + 0x138], 1
mov word [rsp + rax*4 + 0x13a], r11w
mov r13b, 1
jmp 0x1401e798a
mov ebp, dword [r11 + 0x20]
test r13b, 1
jne 0x1401e79f3
mov eax, ebp
and eax, 2
jne 0x1401e79f3
cmp r12, rbx
jne 0x1401e7554
jmp 0x1401e7b11
test bpl, 1
je 0x1401e7a0d
cmp dword [r11 + 0x1c], 1
jne 0x1401e7a0d
mov r12d, 2
mov ebx, 1
jmp 0x1401e7a3e
mov eax, 1
mov ecx, r14d
shl eax, cl
mov r12d, 0xffffffff
mov ebx, dword [rsp + 0x58]
mov ecx, ebx
shl r12d, cl
add r12d, eax
mov eax, dword [r11 + 0x24]
shl eax, cl
and eax, r12d
or dword [rsp + 0x108], eax
mov dword [rsp + 0x58], r14d
mov eax, dword [r11 + 0x18]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x68], rax
mov r13d, 1
mov ecx, ebx
shl r13d, cl
movups xmm6, xmmword [r11]
test bpl, 4
sete dil
test bpl, 8
sete r14b
mov rdx, qword [rsp + 0x228]
cmp rdx, qword [rsp + 0x218]
jne 0x1401e7a99
lea rcx, [rsp + 0x218]
call fcn.1401381bf
mov rdx, qword [rsp + 0x228]
and r13d, r12d
shr bpl, 5
and bpl, 1
mov rcx, qword [rsp + 0x220]
lea rax, [rdx + rdx*2]
shl rax, 4
mov r8, qword [rsp + 0x68]
mov qword [rcx + rax], r8
movups xmmword [rcx + rax + 8], xmm6
mov r8d, dword [rsp + 0x50]
mov dword [rcx + rax + 0x18], r8d
mov dword [rcx + rax + 0x1c], ebx
mov dword [rcx + rax + 0x20], r12d
mov dword [rcx + rax + 0x24], r13d
mov byte [rcx + rax + 0x28], dil
mov byte [rcx + rax + 0x29], r14b
mov qword [rsp + 0x80], rcx
mov byte [rcx + rax + 0x2a], bpl
inc rdx
mov qword [rsp + 0x228], rdx
mov r12, qword [rsp + 0x70]
cmp r12, qword [rsp + 0x60]
mov rbx, rdx
jne 0x1401e7548
jmp 0x1401e7b29
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x80], rax
mov rbx, qword [rsp + 0x228]
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x4c8], rax
lea rcx, [rsp + 0x300]
xor edx, edx
xor r8d, r8d
call fcn.1401ec920
lea rcx, [rsp + 0x300]
mov dl, 1
xor r8d, r8d
call fcn.1401ec920
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x250], rax
xor eax, eax
mov qword [rsp + 0x218], rax
mov ecx, 4
mov qword [rsp + 0x220], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x228], xmm0
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x270], rax
mov ecx, 8
mov qword [rsp + 0x278], rcx
movups xmmword [rsp + 0x280], xmm0
mov qword [rsp + 0x290], rcx
mov qword [rsp + 0x298], rax
lea rax, [rsp + 0x318]
mov rax, qword [rax + 0x50]
lea rdx, [rax + 0x950]
mov qword [rsp + 0x500], rdx
lea rdx, [rax + 0x998]
mov qword [rsp + 0x508], rdx
mov qword [rsp + 0x528], rax
lea rax, [rax + 0xa30]
mov qword [rsp + 0x520], rax
lea rax, [rsp + 0x3c0]
mov qword [rsp + 0x4e8], rax
add rax, rcx
mov qword [rsp + 0x4f8], rax
mov rax, qword [rsp + 0x80]
lea rdx, [rax + 2]
mov qword [rsp + 0x518], rdx
add rax, rcx
mov qword [rsp + 0x510], rax
mov rax, rbx
shl rax, 4
lea rax, [rax + rax*2]
mov qword [rsp + 0x130], rax
lea rax, [0x1403623f8]
mov qword [rsp + 0x268], rax
mov r13d, 0xff
mov qword [rsp + 0xb0], rbx
mov rax, qword [rsp + 0x528]
movzx r8d, byte [rax + 0x990]
cmp r8, 0x21
jae 0x1401ea2c1
mov rax, qword [rsp + 0x268]
movzx ecx, byte [rax]
mov rax, rcx
mov qword [rsp + 0x208], rcx
test rcx, rcx
je 0x1401e7cc1
mov dword [rsp + 0xec], 0
mov rdx, qword [rsp + 0x520]
jmp 0x1401e7cd4
mov dword [rsp + 0xec], 0
mov rdx, qword [rsp + 0x508]
mov rax, rdx
movabs rcx, 0x8000000000000000
cmp qword [rdx], rcx
je 0x1401e7d45
mov rcx, qword [rax + 0x78]
test rcx, rcx
je 0x1401e7d3a
mov rdx, qword [rax + 0x90]
mov r9, qword [rsp + 0x4f8]
mov qword [r9 + 0x10], rdx
movups xmm0, xmmword [rax + 0x80]
movups xmmword [r9], xmm0
mov qword [rsp + 0x3c0], rcx
lea rcx, [rsp + 0x3c0]
mov rdx, qword [rsp + 0x500]
call fcn.14027d0af
mov dword [rsp + 0xec], eax
mov dword [rsp + 0x214], edx
jmp 0x1401e7d45
mov dword [rsp + 0xec], 0
mov rax, qword [rsp + 0x208]
mov rax, qword [rsp + rax*8 + 0x370]
mov qword [rsp + 0x548], rax
test rax, rax
je 0x1401e8955
mov rdx, qword [rsp + 0x208]
movzx eax, word [rsp + rdx*4 + 0x250]
mov word [rsp + 0x10e], ax
lea rax, [rdx*8]
lea rax, [rax + rax*2]
lea rcx, [rsp + rax + 0x218]
mov qword [rsp + 0xa8], rcx
lea rcx, [rsp + 0x318]
lea rcx, [rcx + rax + 8]
lea rax, [rsp + rax + 0x270]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x518]
lea rax, [rax + rdx*4]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x510]
lea rax, [rax + rdx*8]
mov qword [rsp + 0x128], rax
mov rdx, rcx
xor r15d, r15d
xor eax, eax
mov qword [rsp + 0xa0], rax
xor eax, eax
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xf0], rcx
cmp word [rsp + 0x10e], 0
je 0x1401e7e80
mov rax, qword [rsp + 0x208]
mov rcx, qword [rsp + 0xc0]
cmp qword [rsp + rax*8 + 0x110], rcx
jne 0x1401e7e80
mov rax, qword [rsp + 0x208]
test rax, rax
setne r8b
movzx r9d, word [rsp + rax*4 + 0x252]
mov rcx, qword [rsp + 0x368]
mov al, 1
mov byte [rsp + 0x40], al
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x214]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0x20], eax
mov byte [rsp + 0x48], 0
mov dword [rsp + 0x30], 2
mov rdx, qword [rsp + 0xa8]
call fcn.1401c5a29
test rbx, rbx
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xf0]
je 0x1401e7f5c
mov rsi, qword [rsp + 0x368]
xor edi, edi
mov rcx, qword [rsp + 0xb8]
cmp word [rcx + rdi - 2], 0
je 0x1401e7f4a
mov rcx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc0]
cmp qword [rcx + rdi], r8
jne 0x1401e7f4a
cmp qword [rsp + 0x208], 0
setne r8b
mov rax, qword [rsp + 0xb8]
movzx r9d, word [rax + rdi]
mov r10, qword [rsp + 0x80]
mov eax, dword [r10 + rdi + 0x20]
mov cl, byte [r10 + rdi + 0x28]
mov dl, byte [r10 + rdi + 0x29]
mov r10b, byte [r10 + rdi + 0x2a]
mov byte [rsp + 0x48], r10b
mov byte [rsp + 0x40], dl
mov byte [rsp + 0x38], cl
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x214]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0x20], eax
mov rcx, rsi
mov rdx, qword [rsp + 0xa8]
call fcn.1401c5a29
mov rdx, qword [rsp + 0xf0]
mov rax, qword [rsp + 0xa8]
add rdi, 0x30
cmp qword [rsp + 0x130], rdi
jne 0x1401e7ea3
mov rdi, qword [rax + 0x10]
mov r14, rdi
mov rcx, qword [rsp + 0xa0]
sub r14, rcx
jbe 0x1401e7fb8
mov rax, qword [rax + 8]
lea rsi, [rcx + rcx*2]
mov rbp, rax
lea rax, [rax + rsi*4]
mov qword [rsp + 0x88], rax
cmp r14, 0x15
jae 0x1401e7fc8
mov rdx, rdi
cmp r14, 1
jbe 0x1401e87a1
mov r8d, 1
mov rcx, qword [rsp + 0x88]
mov rdx, r14
call fcn.1401dc903
mov rdx, rdi
jmp 0x1401e87a1
mov rax, rdi
mov qword [rsp + 0xa0], rdi
jmp 0x1401e88c3
mov qword [rsp + 0x530], rsi
mov qword [rsp + 0x538], rdi
lea rax, [r14 + r14]
and rax, 0xfffffffffffffffc
lea rcx, [rax + rax*2]
mov al, byte [0x1403f9274]
mov edx, 4
call fcn.140061500
mov qword [rsp + 0x70], rax
test rax, rax
je 0x1401ea228
mov al, byte [0x1403f9274]
mov ecx, 0x100
mov edx, 8
call fcn.140061500
test rax, rax
mov rdi, qword [rsp + 0x88]
je 0x1401ea245
mov r12, rax
mov rax, qword [rsp + 0xa0]
lea rax, [rax*4]
lea rax, [rax + rax*2]
add rax, rbp
add rax, 0x20
mov qword [rsp + 0xd0], rax
add rbp, 0xfffffffffffffff4
mov qword [rsp + 0x540], rbp
mov eax, 0x10
mov qword [rsp + 0xf8], rax
xor r10d, r10d
xor ecx, ecx
mov qword [rsp + 0xe0], r14
mov qword [rsp + 0xd8], r15
mov rax, r14
sub rax, rcx
mov qword [rsp + 0x58], rcx
lea r9, [rcx + rcx*2]
lea rcx, [rdi + r9*4]
cmp rax, 2
jae 0x1401e809d
mov r8, rax
jmp 0x1401e8166
movzx edx, word [rcx + 0x10]
xor r8d, r8d
cmp dx, word [rdi + r9*4 + 4]
setne r8b
cmovb r8d, r13d
test r8b, r8b
jne 0x1401e80dc
mov r8b, byte [rcx + 0x12]
sub r8b, byte [rdi + r9*4 + 6]
jne 0x1401e80dc
mov r8b, byte [rcx + 0x13]
sub r8b, byte [rdi + r9*4 + 7]
jne 0x1401e80dc
mov r8b, byte [rcx + 0x14]
sub r8b, byte [rdi + r9*4 + 8]
je 0x1401e862a
cmp r8b, 0xff
je 0x1401e8637
mov r8d, 2
cmp rax, 3
jb 0x1401e8166
mov rsi, r10
mov r8, qword [rsp + 0xd0]
lea r9, [r8 + r9*4]
mov r8d, 2
mov r11d, edx
movzx edx, word [r9 - 4]
xor r10d, r10d
cmp dx, r11w
setne r10b
cmovb r10d, r13d
test r10b, r10b
jne 0x1401e8140
mov r10b, byte [r9 - 2]
sub r10b, byte [r9 - 0xe]
jne 0x1401e8140
mov r10b, byte [r9 - 1]
sub r10b, byte [r9 - 0xd]
jne 0x1401e8140
mov r10b, byte [r9]
sub r10b, byte [r9 - 0xc]
je 0x1401e8154
cmp r10b, 0xff
je 0x1401e8163
inc r8
add r9, 0xc
cmp rax, r8
jne 0x1401e8107
jmp 0x1401e8160
mov r10d, dword [r9 - 8]
cmp r10d, dword [r9 - 0x14]
jae 0x1401e8146
jmp 0x1401e8163
mov r8, rax
mov r10, rsi
mov r9, qword [rsp + 0x58]
lea rax, [r8 + r9]
mov rsi, rax
sub rsi, r9
jb 0x1401e9fcf
cmp rax, r14
ja 0x1401e9fcf
jae 0x1401e81c4
cmp r8, 0xa
jae 0x1401e81c4
lea rax, [r9 + 0xa]
cmp rax, r14
cmovae rax, r14
mov rsi, rax
sub rsi, r9
jb 0x1401ea01d
cmp r8, 1
adc r8, 0
mov rdx, rsi
mov rbp, r10
mov rbx, rax
call fcn.1401dc903
mov rax, rbx
mov r9, qword [rsp + 0x58]
mov r10, rbp
mov qword [rsp + 0x100], rax
mov rbx, qword [rsp + 0xf8]
cmp r10, rbx
jne 0x1401e8249
mov rbp, r10
mov rcx, rbx
shl rcx, 5
mov al, byte [0x1403f9274]
mov edx, 8
call fcn.140061500
test rax, rax
je 0x1401ea000
mov r14, rax
lea rdi, [rbx + rbx]
shl rbx, 4
mov rcx, rax
mov rdx, r12
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, r12
call fcn.1402e3f64
mov r12, r14
mov qword [rsp + 0xf8], rdi
mov rdi, qword [rsp + 0x88]
mov r14, qword [rsp + 0xe0]
mov r10, rbp
mov r9, qword [rsp + 0x58]
mov rax, r10
shl rax, 4
mov qword [r12 + rax], rsi
mov qword [r12 + rax + 8], r9
inc r10
mov rbx, qword [rsp + 0xb0]
mov qword [rsp + 0x60], r12
cmp r10, 2
jb 0x1401e8614
mov rcx, r10
shl rcx, 4
mov rax, qword [rcx + r12 - 0x10]
mov rdx, qword [rcx + r12 - 8]
add rdx, rax
cmp rdx, r14
je 0x1401e82d1
mov r8, qword [rcx + r12 - 0x20]
cmp r8, rax
jbe 0x1401e82d1
cmp r10, 2
jbe 0x1401e8614
lea rsi, [r10 - 3]
mov rdx, rsi
shl rdx, 4
mov rdx, qword [r12 + rdx]
lea r9, [r8 + rax]
cmp rdx, r9
jbe 0x1401e82e6
cmp r10, 3
jbe 0x1401e8614
add r8, rdx
cmp qword [rcx + r12 - 0x40], r8
jbe 0x1401e82e6
jmp 0x1401e8614
cmp r10, 3
jb 0x1401e82eb
lea rsi, [r10 - 3]
mov rcx, rsi
shl rcx, 4
mov rdx, qword [r12 + rcx]
cmp rdx, rax
jb 0x1401e82ef
lea rsi, [r10 - 2]
cmp r10, rsi
jbe 0x1401e9eb9
lea rax, [rsi + 1]
cmp r10, rax
jbe 0x1401e9ed1
mov rbp, rsi
shl rbp, 4
mov r9, qword [r12 + rbp + 8]
shl rax, 4
mov rdx, qword [r12 + rax]
mov rcx, qword [r12 + rax + 8]
add rcx, rdx
mov rbx, rcx
sub rbx, r9
jb 0x1401e9f18
cmp rcx, r14
ja 0x1401e9f79
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x68], r10
mov rdx, qword [r12 + rbp]
lea r8, [r12 + rax]
mov qword [rsp + 0x90], r8
lea rax, [r12 + rax + 8]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x58], r9
lea rax, [r9 + r9*2]
lea r15, [rdi + rax*4]
lea rax, [rdx + rdx*2]
lea r14, [r15 + rax*4]
lea r13, [rcx + rcx*2]
mov rdi, rbx
sub rdi, rdx
cmp rdi, rdx
mov qword [rsp + 0x50], rdx
jae 0x1401e8482
lea rax, [rdi*4]
lea r12, [rax + rax*2]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
mov rdx, r14
mov r8, r12
call sub.msvcrt.dll_memcpy
add r12, rbx
cmp qword [rsp + 0x50], 0
jle 0x1401e8562
test rdi, rdi
jle 0x1401e8562
mov rax, qword [rsp + 0xd0]
lea rax, [rax + r13*4]
add rax, 0xffffffffffffffd4
mov r13d, 0xff
mov rdi, qword [rsp + 0x88]
movzx edx, word [r12 - 8]
xor ecx, ecx
cmp dx, word [r14 - 8]
setne cl
cmovb ecx, r13d
test cl, cl
jne 0x1401e842a
mov cl, byte [r12 - 6]
sub cl, byte [r14 - 6]
jne 0x1401e842a
mov cl, byte [r12 - 5]
sub cl, byte [r14 - 5]
jne 0x1401e842a
mov cl, byte [r12 - 4]
sub cl, byte [r14 - 4]
jne 0x1401e842a
mov edx, dword [r12 - 0xc]
xor ecx, ecx
cmp edx, dword [r14 - 0xc]
setne cl
cmovb ecx, r13d
xor edx, edx
xor r8d, r8d
cmp cl, 0xff
setne dl
sete r8b
neg r8
neg rdx
cmp cl, 0xff
lea rcx, [r8 + r8*2]
lea r14, [r14 + rcx*4]
lea rcx, [rdx + rdx*2]
lea r12, [r12 + rcx*4]
mov rcx, r12
cmove rcx, r14
mov edx, dword [rcx + 8]
mov dword [rax + 8], edx
mov rcx, qword [rcx]
mov qword [rax], rcx
cmp r14, r15
jbe 0x1401e8477
add rax, 0xfffffffffffffff4
cmp r12, rbx
ja 0x1401e83df
mov r15, r14
mov rdx, rbx
jmp 0x1401e858d
lea rax, [rdx*4]
lea r12, [rax + rax*2]
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
mov rdx, r15
mov r8, r12
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x50]
add r12, rdi
test rax, rax
jle 0x1401e8577
cmp rbx, rax
mov rdi, qword [rsp + 0x88]
jle 0x1401e8567
lea rax, [rdi + r13*4]
mov rbx, qword [rsp + 0x70]
mov rdx, rbx
mov r13d, 0xff
movzx r8d, word [r14 + 4]
xor ecx, ecx
cmp r8w, word [rdx + 4]
setne cl
cmovb ecx, r13d
test cl, cl
jne 0x1401e8516
mov cl, byte [r14 + 6]
sub cl, byte [rdx + 6]
jne 0x1401e8516
mov cl, byte [r14 + 7]
sub cl, byte [rdx + 7]
jne 0x1401e8516
mov cl, byte [r14 + 8]
sub cl, byte [rdx + 8]
jne 0x1401e8516
mov r8d, dword [r14]
xor ecx, ecx
cmp r8d, dword [rdx]
setne cl
cmovb ecx, r13d
xor r9d, r9d
xor r8d, r8d
cmp cl, 0xff
setne r9b
sete cl
mov r10, rdx
cmove r10, r14
mov r11d, dword [r10 + 8]
mov dword [r15 + 8], r11d
mov r10, qword [r10]
mov qword [r15], r10
add r15, 0xc
lea r9, [r9 + r9*2]
lea rdx, [rdx + r9*4]
cmp rdx, r12
jae 0x1401e858d
mov r8b, cl
lea rcx, [r8 + r8*2]
lea r14, [r14 + rcx*4]
cmp r14, rax
jb 0x1401e84d5
jmp 0x1401e858d
mov r15, r14
jmp 0x1401e857c
mov rbx, qword [rsp + 0x70]
mov rdx, rbx
mov r13d, 0xff
jmp 0x1401e858d
mov rbx, qword [rsp + 0x70]
mov rdx, rbx
mov r13d, 0xff
mov rdi, qword [rsp + 0x88]
sub r12, rdx
mov rcx, r15
mov r8, r12
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x98]
add rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x90]
mov qword [rcx], rax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
mov qword [rcx], rax
mov rax, qword [rsp + 0x68]
cmp rax, rsi
mov r14, qword [rsp + 0xe0]
jbe 0x1401e9f37
mov r12, qword [rsp + 0x60]
add rbp, r12
lea rdx, [rbp + 0x10]
not rsi
add rsi, rax
shl rsi, 4
mov rcx, rbp
mov r8, rsi
call sub.msvcrt.dll_memmove
mov r10, qword [rsp + 0x68]
dec r10
mov rbx, qword [rsp + 0xb0]
mov r15, qword [rsp + 0xd8]
jmp 0x1401e8269
mov rcx, qword [rsp + 0x100]
cmp rcx, r14
jb 0x1401e807c
jmp 0x1401e8761
mov r8d, dword [rcx + 0xc]
cmp r8d, dword [rcx]
jae 0x1401e80e6
mov r8d, 2
cmp rax, 3
jb 0x1401e86b7
mov rsi, r10
mov r8, qword [rsp + 0xd0]
lea r9, [r8 + r9*4]
mov r8d, 2
mov r11d, edx
movzx edx, word [r9 - 4]
xor r10d, r10d
cmp dx, r11w
setne r10b
cmovb r10d, r13d
test r10b, r10b
jne 0x1401e8691
mov r10b, byte [r9 - 2]
sub r10b, byte [r9 - 0xe]
jne 0x1401e8691
mov r10b, byte [r9 - 1]
sub r10b, byte [r9 - 0xd]
jne 0x1401e8691
mov r10b, byte [r9]
sub r10b, byte [r9 - 0xc]
je 0x1401e86a5
cmp r10b, 0xff
jne 0x1401e86b4
inc r8
add r9, 0xc
cmp rax, r8
jne 0x1401e8658
jmp 0x1401e86b1
mov r10d, dword [r9 - 8]
cmp r10d, dword [r9 - 0x14]
jb 0x1401e8697
jmp 0x1401e86b4
mov r8, rax
mov r10, rsi
mov rax, r8
mov r9, qword [rsp + 0x58]
add rax, r9
jb 0x1401ea111
cmp rax, r14
mov rdx, qword [rsp + 0xa0]
ja 0x1401ea11d
cmp r8, 2
jb 0x1401e816f
mov rsi, rax
mov r11, r10
mov rax, r8
shr rax, 1
add rdx, r9
add rdx, r8
lea rdx, [rdx + rdx*2]
mov r9, qword [rsp + 0x540]
lea rdx, [r9 + rdx*4]
mov r9, rcx
mov r10d, dword [r9 + 8]
mov dword [rsp + 0x3c8], r10d
mov r10, qword [r9]
mov qword [rsp + 0x3c0], r10
mov r10d, dword [rdx + 8]
mov dword [r9 + 8], r10d
mov r10, qword [rdx]
mov qword [r9], r10
mov r10d, dword [rsp + 0x3c8]
mov dword [rdx + 8], r10d
mov r10, qword [rsp + 0x3c0]
mov qword [rdx], r10
add r9, 0xc
add rdx, 0xfffffffffffffff4
dec rax
jne 0x1401e8708
mov r10, r11
mov r9, qword [rsp + 0x58]
mov rax, rsi
jmp 0x1401e816f
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, r12
call fcn.1402e3f64
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.1402e3f64
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rax + 0x10]
mov rdi, qword [rsp + 0x538]
mov rsi, qword [rsp + 0x530]
mov rax, qword [rsp + 0xa0]
lea rcx, [rax + 1]
cmp rcx, rdi
jae 0x1401e8897
lea rax, [rsi*4 + 0x13]
cmp rdx, rcx
jbe 0x1401e8ae0
mov rsi, qword [rsp + 0xa0]
cmp rdx, rsi
jbe 0x1401e8ae9
mov r8, qword [rsp + 0xa8]
mov r8, qword [r8 + 8]
lea r10, [r8 + rax]
add r10, 0xfffffffffffffff9
movzx r11d, word [r10 + 4]
lea r9, [rsi + rsi*2]
cmp r11w, word [r8 + r9*4 + 4]
jne 0x1401e8854
mov r10d, dword [r10]
or dword [r8 + r9*4], r10d
cmp rdx, rcx
jbe 0x1401e8b01
cmp rdx, qword [rsp + 0xa0]
jbe 0x1401e8b0a
cmp byte [r8 + rax - 1], 0
setne r10b
cmp byte [r8 + r9*4 + 6], 0
setne r11b
and r11b, r10b
mov byte [r8 + r9*4 + 6], r11b
cmp byte [r8 + rax], 0
setne r10b
cmp byte [r8 + r9*4 + 7], 0
setne r11b
and r11b, r10b
mov byte [r8 + r9*4 + 7], r11b
jmp 0x1401e887c
inc rsi
cmp rdx, rsi
jbe 0x1401e8af5
mov qword [rsp + 0xa0], rsi
lea r9, [rsi + rsi*2]
mov r11, qword [r10]
mov r10d, dword [r10 + 8]
mov dword [r8 + r9*4 + 8], r10d
mov qword [r8 + r9*4], r11
inc rcx
add rax, 0xc
cmp rdi, rcx
jne 0x1401e87be
mov rcx, qword [rsp + 0xa0]
inc rcx
mov rax, rdx
mov qword [rsp + 0xa0], rdx
cmp rdx, rcx
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xf0]
jb 0x1401e88c3
mov qword [rax + 0x10], rcx
mov qword [rsp + 0xa0], rcx
cmp r15, qword [rdx + 8]
jae 0x1401e8931
mov rax, qword [rdx]
mov rcx, r15
shl rcx, 4
mov r8, qword [rsp + 0xc0]
cmp qword [rax + rcx], r8
jne 0x1401e8931
mov rsi, qword [rax + rcx + 8]
mov rcx, qword [rsp + 0x4d0]
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1401e8908
call fcn.1402c2b85
mov rcx, qword [rsp + 0x4d0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov r8, rcx
mov rcx, rdx
shl rcx, 4
mov r9, qword [rsp + 0xa0]
mov qword [rax + rcx], r9
mov qword [rax + rcx + 8], rsi
inc rdx
mov qword [r8 + 0x10], rdx
inc r15
mov rcx, qword [rsp + 0xc0]
inc rcx
mov rax, rcx
mov qword [rsp + 0xc0], rcx
cmp rcx, qword [rsp + 0x548]
jne 0x1401e7e01
mov rcx, qword [rsp + 0x268]
inc rcx
lea rax, [0x1403623fa]
mov qword [rsp + 0x268], rcx
cmp rcx, rax
jne 0x1401e7c77
movups xmm0, xmmword [rsp + 0x218]
movups xmm1, xmmword [rsp + 0x228]
movups xmm2, xmmword [rsp + 0x238]
movaps xmmword [rsp + 0x3e0], xmm2
movaps xmmword [rsp + 0x3d0], xmm1
movaps xmmword [rsp + 0x3c0], xmm0
movups xmm3, xmmword [rsp + 0x270]
movups xmm4, xmmword [rsp + 0x280]
movups xmm5, xmmword [rsp + 0x290]
movaps xmmword [rsp + 0x3f0], xmm3
movaps xmmword [rsp + 0x400], xmm4
movaps xmmword [rsp + 0x410], xmm5
movups xmmword [rsp + 0x288], xmm0
movups xmmword [rsp + 0x298], xmm1
movups xmmword [rsp + 0x2a8], xmm2
movaps xmm0, xmmword [rsp + 0x3f0]
movaps xmm1, xmmword [rsp + 0x400]
movaps xmm2, xmmword [rsp + 0x410]
movups xmmword [rsp + 0x2d8], xmm2
movups xmmword [rsp + 0x2c8], xmm1
movups xmmword [rsp + 0x2b8], xmm0
movzx eax, word [rsp + 0x380]
movups xmm0, xmmword [rsp + 0x348]
movups xmmword [rsp + 0x2e8], xmm0
mov word [rsp + 0x2fc], ax
mov eax, dword [rsp + 0x108]
mov dword [rsp + 0x2f8], eax
mov rax, qword [rsp + 0x4c8]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x278], rax
mov qword [rsp + 0x280], rbx
mov eax, 4
mov qword [rsp + 0x130], rax
xor eax, eax
mov qword [rsp + 0xa8], rax
cmp byte [rsp + 0x3b8], 0
je 0x1401e951a
mov rsi, qword [rsp + 0x3a8]
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x60], rax
mov r15, qword [rsp + 0x398]
cmp r15, 0x15
jae 0x1401e8b23
cmp r15, 1
jbe 0x1401e926d
mov r8d, 1
mov rcx, qword [rsp + 0x60]
mov rdx, r15
call fcn.1401dccbe
jmp 0x1401e9272
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
jmp 0x1401e8b19
mov rcx, rsi
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
jmp 0x1401e8b19
mov rcx, rsi
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
jmp 0x1401e8b19
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
jmp 0x1401e8b19
mov rcx, qword [rsp + 0xa0]
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
call fcn.1400793c0
jmp 0x1401ea47f
mov qword [rsp + 0x100], rsi
mov rax, r15
and rax, 0xfffffffffffffffe
lea rcx, [rax + rax*2]
mov al, byte [0x1403f9274]
mov edx, 2
call fcn.140061500
test rax, rax
je 0x1401ea44d
mov rdi, rax
mov al, byte [0x1403f9274]
mov ecx, 0x100
mov edx, 8
call fcn.140061500
test rax, rax
mov qword [rsp + 0x78], rdi
je 0x1401ea467
mov r12, rax
mov rax, qword [rsp + 0x60]
lea rcx, [rax + 0x10]
mov qword [rsp + 0xa0], rcx
add rax, 0xfffffffffffffffa
mov qword [rsp + 0xd8], rax
mov ebp, 0x10
xor r13d, r13d
lea rax, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov qword [rsp + 0xc0], rax
xor r11d, r11d
mov qword [rsp + 0xe0], r15
mov rax, r15
sub rax, r11
lea r9, [r11 + r11*2]
mov rcx, qword [rsp + 0x60]
lea rcx, [rcx + r9*2]
cmp rax, 2
mov qword [rsp + 0x50], r11
jae 0x1401e8bdd
mov r8, rax
jmp 0x1401e8cfa
movzx edx, word [rcx + 6]
cmp dx, word [rcx]
jne 0x1401e8c94
cmp byte [rcx + 0xa], 0
jne 0x1401e8c96
movzx r8d, word [rcx + 8]
mov r10, qword [rsp + 0x60]
movzx r10d, word [r10 + r9*2 + 2]
cmp r8w, r10w
jae 0x1401e8c96
xor r10d, r8d
cmp r10w, 2
jb 0x1401e8c96
mov r8d, 2
cmp rax, 3
jb 0x1401e91b1
mov r8, qword [rsp + 0xa0]
lea r9, [r8 + r9*2]
mov r8d, 2
mov r10d, edx
movzx edx, word [r9 - 4]
cmp dx, r10w
jne 0x1401e8c7a
cmp byte [r9], 0
jne 0x1401e91b1
movzx r10d, word [r9 - 2]
movzx r11d, word [r9 - 8]
cmp r10w, r11w
jae 0x1401e91ac
xor r11d, r10d
cmp r11w, 2
mov r11, qword [rsp + 0x50]
jae 0x1401e8c80
jmp 0x1401e91b1
jae 0x1401e91b1
inc r8
add r9, 6
cmp rax, r8
jne 0x1401e8c3a
mov r8, rax
jmp 0x1401e91b1
jb 0x1401e8c18
mov r8d, 2
cmp rax, 3
jb 0x1401e8cfa
mov r8, qword [rsp + 0xa0]
lea r9, [r8 + r9*2]
mov r8d, 2
mov r10d, edx
movzx edx, word [r9 - 4]
cmp dx, r10w
jne 0x1401e8ce4
cmp byte [r9], 0
jne 0x1401e8ce6
movzx r10d, word [r9 - 2]
movzx r11d, word [r9 - 8]
cmp r10w, r11w
jae 0x1401e8ce6
xor r11d, r10d
cmp r11w, 1
jbe 0x1401e8ce6
jmp 0x1401e8cf5
jb 0x1401e8cf5
inc r8
add r9, 6
cmp rax, r8
jne 0x1401e8cb4
mov r8, rax
mov r11, qword [rsp + 0x50]
lea rdx, [r8 + r11]
mov rbx, rdx
sub rbx, r11
jb 0x1401ea2f5
cmp rdx, r15
ja 0x1401ea2f5
jae 0x1401e8d49
cmp r8, 0xa
jae 0x1401e8d49
lea rbx, [r11 + 0xa]
cmp rbx, r15
cmovae rbx, r15
mov qword [rsp + 0xd0], rbx
sub rbx, r11
jb 0x1401ea377
cmp r8, 1
adc r8, 0
mov rdx, rbx
call fcn.1401dccbe
jmp 0x1401e8d51
mov qword [rsp + 0xd0], rdx
cmp r13, rbp
jne 0x1401e8db1
mov rcx, rbp
shl rcx, 5
mov al, byte [0x1403f9274]
mov edx, 8
call fcn.140061500
test rax, rax
je 0x1401ea39d
mov r14, rax
lea rsi, [rbp*2]
shl rbp, 4
mov rcx, rax
mov rdx, r12
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, r12
call fcn.1402e3f64
mov r12, r14
mov qword [rsp + 0xb8], rsi
jmp 0x1401e8db9
mov qword [rsp + 0xb8], rbp
mov rcx, qword [rsp + 0x50]
mov rax, r13
shl rax, 4
mov qword [r12 + rax], rbx
mov qword [r12 + rax + 8], rcx
inc r13
mov qword [rsp + 0x88], r12
cmp r13, 2
jb 0x1401e9186
mov rcx, r13
shl rcx, 4
mov rax, qword [rcx + r12 - 0x10]
mov rdx, qword [rcx + r12 - 8]
add rdx, rax
cmp rdx, r15
je 0x1401e8e41
mov r8, qword [rcx + r12 - 0x20]
cmp r8, rax
jbe 0x1401e8e41
cmp r13, 2
jbe 0x1401e9186
lea rbp, [r13 - 3]
mov rdx, rbp
shl rdx, 4
mov rdx, qword [r12 + rdx]
lea r9, [r8 + rax]
cmp rdx, r9
jbe 0x1401e8e56
cmp r13, 3
jbe 0x1401e9186
add r8, rdx
cmp qword [rcx + r12 - 0x40], r8
jbe 0x1401e8e56
jmp 0x1401e9186
cmp r13, 3
jb 0x1401e8e5b
lea rbp, [r13 - 3]
mov rcx, rbp
shl rcx, 4
mov rdx, qword [r12 + rcx]
cmp rdx, rax
jb 0x1401e8e5f
lea rbp, [r13 - 2]
cmp r13, rbp
jbe 0x1401ea141
lea rax, [rbp + 1]
cmp r13, rax
jbe 0x1401ea15c
mov r14, rbp
shl r14, 4
mov rdx, qword [r12 + r14 + 8]
shl rax, 4
mov r8, qword [r12 + rax]
mov rcx, qword [r12 + rax + 8]
add rcx, r8
mov rsi, rcx
sub rsi, rdx
mov qword [rsp + 0x50], rdx
jb 0x1401ea199
cmp rcx, r15
ja 0x1401ea1c2
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x68], r13
mov r15, qword [r12 + r14]
lea r8, [r12 + rax]
mov qword [rsp + 0x98], r8
lea rax, [r12 + rax + 8]
mov qword [rsp + 0x90], rax
lea rax, [rdx + rdx*2]
mov rdx, qword [rsp + 0x60]
lea rbx, [rdx + rax*2]
lea rax, [r15 + r15*2]
lea r12, [rbx + rax*2]
lea rax, [rcx + rcx*2]
mov qword [rsp + 0x70], rax
mov rdi, rsi
sub rdi, r15
cmp rdi, r15
jae 0x1401e9019
lea rax, [rdi + rdi]
lea r13, [rax + rax*2]
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
mov rdx, r12
mov r8, r13
call sub.msvcrt.dll_memcpy
add r13, rsi
test r15, r15
mov rsi, r15
jle 0x1401e9100
test rdi, rdi
mov r15, qword [rsp + 0x98]
jle 0x1401e90f3
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x70]
lea rax, [rax + rcx*2]
mov rdi, qword [rsp + 0x78]
movzx ecx, word [r13 - 6]
movzx edx, word [r12 - 6]
cmp cx, dx
jne 0x1401e8f70
cmp byte [r13 - 2], 0
je 0x1401e8fc7
add r13, 0xfffffffffffffffa
mov r8, r13
jmp 0x1401e8fa2
mov r8d, 0
sbb r8, r8
cmp cx, dx
mov r9d, 0
adc r9, 0xffffffffffffffff
lea r8, [r8 + r8*2]
lea r12, [r12 + r8*2]
lea r8, [r9 + r9*2]
lea r13, [r13 + r8*2]
mov r8, r13
cmp cx, dx
jae 0x1401e8fa2
mov r8, r12
movzx ecx, word [r8 + 4]
mov word [rax + 4], cx
mov ecx, dword [r8]
mov dword [rax], ecx
cmp r12, rbx
jbe 0x1401e90ee
add rax, 0xfffffffffffffffa
cmp r13, rdi
ja 0x1401e8f50
jmp 0x1401e90ee
movzx ecx, word [r13 - 4]
movzx edx, word [r12 - 4]
mov r8d, edx
xor r8d, ecx
cmp r8w, 2
setae r8b
cmp cx, dx
setb cl
and cl, r8b
movzx ecx, cl
mov rdx, rcx
neg rdx
lea rdx, [rdx + rdx*2]
lea r12, [r12 + rdx*2]
xor cl, 1
movzx ecx, cl
mov rdx, rcx
neg rdx
lea rdx, [rdx + rdx*2]
lea r13, [r13 + rdx*2]
mov r8, r13
test cl, cl
je 0x1401e8f9f
jmp 0x1401e8fa2
lea rax, [r15 + r15]
lea r13, [rax + rax*2]
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
mov rdx, rbx
mov r8, r13
call sub.msvcrt.dll_memcpy
add r13, rdi
test r15, r15
jle 0x1401e910d
cmp rsi, r15
mov rsi, r15
jle 0x1401e9108
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x70]
lea rax, [rax + rcx*2]
mov rdx, rdi
mov r15, qword [rsp + 0x98]
movzx ecx, word [r12]
movzx r8d, word [rdx]
cmp cx, r8w
jne 0x1401e909e
cmp byte [r12 + 4], 0
jne 0x1401e90a7
movzx r8d, word [r12 + 2]
movzx r9d, word [rdx + 2]
xor ecx, ecx
cmp r8w, r9w
jae 0x1401e90a9
xor r9d, r8d
mov r8, rdx
cmp r9w, 2
jae 0x1401e90a0
jmp 0x1401e90ac
jae 0x1401e90a7
mov cl, 1
mov r8, r12
jmp 0x1401e90ac
xor ecx, ecx
mov r8, rdx
movzx r9d, word [r8 + 4]
mov word [rbx + 4], r9w
mov r8d, dword [r8]
mov dword [rbx], r8d
add rbx, 6
mov r8d, ecx
xor r8b, 1
movzx r8d, r8b
lea r8, [r8 + r8*2]
lea rdx, [rdx + r8*2]
cmp rdx, r13
jae 0x1401e911b
movzx ecx, cl
lea rcx, [rcx + rcx*2]
lea r12, [r12 + rcx*2]
cmp r12, rax
jb 0x1401e9065
jmp 0x1401e911b
mov rbx, r12
jmp 0x1401e90fb
mov rbx, r12
mov rdi, qword [rsp + 0x78]
mov rdx, rdi
jmp 0x1401e911b
mov rbx, r12
mov rdi, qword [rsp + 0x78]
mov rdx, rdi
jmp 0x1401e9113
mov rdx, rdi
mov rsi, r15
mov r15, qword [rsp + 0x98]
sub r13, rdx
mov rcx, rbx
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x58]
add rax, rsi
mov qword [r15], rax
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x90]
mov qword [rcx], rax
mov r13, qword [rsp + 0x68]
cmp r13, rbp
jbe 0x1401ea1eb
mov r12, qword [rsp + 0x88]
add r14, r12
lea rdx, [r14 + 0x10]
not rbp
add rbp, r13
shl rbp, 4
mov rcx, r14
mov r8, rbp
call sub.msvcrt.dll_memmove
dec r13
mov r15, qword [rsp + 0xe0]
jmp 0x1401e8dd9
mov r11, qword [rsp + 0xd0]
cmp r11, r15
mov rbx, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xb8]
jb 0x1401e8bb7
jmp 0x1401e9243
mov r11, qword [rsp + 0x50]
mov rdx, r8
add rdx, r11
jb 0x1401ea425
cmp rdx, r15
ja 0x1401ea415
cmp r8, 2
jb 0x1401e8cfe
mov rax, r8
shr rax, 1
mov rsi, rdx
lea rdx, [rdx + rdx*2]
mov r9, qword [rsp + 0xd8]
lea rdx, [r9 + rdx*2]
mov r9, rcx
movzx r10d, word [r9 + 4]
mov word [rsp + 0x3c4], r10w
mov r10d, dword [r9]
mov dword [rsp + 0x3c0], r10d
movzx r10d, word [rdx + 4]
mov word [r9 + 4], r10w
mov r10d, dword [rdx]
mov dword [r9], r10d
movzx r10d, word [rsp + 0x3c4]
mov word [rdx + 4], r10w
mov r10d, dword [rsp + 0x3c0]
mov dword [rdx], r10d
add r9, 6
add rdx, 0xfffffffffffffffa
dec rax
jne 0x1401e91ec
mov rdx, rsi
jmp 0x1401e8cfe
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, r12
call fcn.1402e3f64
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rdi
call fcn.1402e3f64
mov rsi, qword [rsp + 0x100]
test r15, r15
je 0x1401e92eb
xor ecx, ecx
mov rax, r15
mov rdx, qword [rsp + 0x60]
mov r11, qword [rsp + 0x60]
cmp byte [rdx + 4], 0
lea r8, [rcx + rcx*2]
je 0x1401e9290
xor r9d, r9d
jmp 0x1401e92a9
mov r9, qword [rsp + 0x60]
movzx r9d, word [r9 + r8*2 + 2]
xor r9w, word [rdx + 2]
cmp r9w, 2
setae r9b
test r9b, r9b
jne 0x1401e92be
mov r9, qword [rsp + 0x60]
movzx r8d, word [r9 + r8*2]
cmp word [rdx], r8w
je 0x1401e92e0
inc rcx
cmp r15, rcx
jbe 0x1401e9fec
lea r8, [rcx + rcx*2]
mov r9d, dword [rdx]
movzx r10d, word [rdx + 4]
mov word [r11 + r8*2 + 4], r10w
mov dword [r11 + r8*2], r9d
add rdx, 6
dec rax
jne 0x1401e9281
jmp 0x1401e92ed
xor ecx, ecx
inc rcx
cmp r15, rcx
jb 0x1401e92fd
mov qword [rsp + 0x398], rcx
xor eax, eax
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 4
mov qword [rsp + 0x120], rax
mov rax, qword [rsi + 0x820]
test rax, rax
je 0x1401e951a
mov rcx, qword [rsi + 0x828]
mov edx, dword [rsi + 0x830]
movzx r8d, word [rsi + 0x834]
lea r9, [rsp + 0x218]
mov qword [r9], rax
mov qword [r9 + 8], rcx
mov qword [r9 + 0x10], 0
mov dword [r9 + 0x18], 0
mov dword [r9 + 0x1c], edx
mov word [r9 + 0x20], r8w
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x58], rax
mov r14d, 4
xor esi, esi
lea rcx, [rsp + 0x3c0]
lea rdx, [rsp + 0x218]
call fcn.14028c163
mov rdi, qword [rsp + 0x3c0]
test rdi, rdi
je 0x1401e94f2
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], rsi
mov r13, qword [rsp + 0x3c8]
mov rax, r13
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
mov rbp, rdx
mov eax, dword [rsp + 0x3e8]
mov dword [rsp + 0x50], eax
shr rbp, 3
test ebp, ebp
je 0x1401e9489
mov esi, 0xc
cmp rsi, r13
ja 0x1401e9489
movzx ebx, word [rdi + rsi - 0xc]
mov r8d, ebx
rol r8w, 8
movzx r14d, word [rdi + rsi - 0xa]
mov r9d, r14d
rol r9w, 8
mov r12d, dword [rdi + rsi - 8]
bswap r12d
mov r15d, dword [rdi + rsi - 4]
bswap r15d
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x58]
call fcn.1401c5c1b
test al, al
je 0x1401e9455
and r15d, dword [rsp + 0x50]
or r15d, r12d
mov dword [rsp + 0x50], r15d
add rsi, 0xc
dec ebp
jne 0x1401e93f7
jmp 0x1401e9489
movzx eax, bx
cmp eax, 0x300
jne 0x1401e944b
movzx eax, r14w
cmp eax, 0x300
jne 0x1401e944b
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x58]
mov r8w, 0x25
mov r9w, 1
call fcn.1401c5c1b
test al, al
jne 0x1401e943e
jmp 0x1401e944b
mov rdx, qword [rsp + 0x98]
cmp rdx, qword [rsp + 0x110]
jne 0x1401e94c2
lea rcx, [rsp + 0x110]
call fcn.1401a6bfa
mov rbx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x120]
jmp 0x1401e94d2
mov rbx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x90]
mov eax, dword [rsp + 0x50]
mov dword [r14 + rdx*4], eax
mov rsi, qword [rsp + 0x120]
inc rsi
mov qword [rsp + 0x120], rsi
jmp 0x1401e938a
mov r11, qword [rsp + 0x110]
movabs rax, 0x8000000000000000
cmp r11, rax
jne 0x1401e9bc5
mov eax, 4
mov qword [rsp + 0x130], rax
xor esi, esi
xor r11d, r11d
mov edi, 0
mov ebp, 0
test rbx, rbx
je 0x1401e9657
xor eax, eax
mov rcx, rbx
mov rdx, rbx
shr rcx, 1
add rcx, rax
lea r8, [rcx + rcx*2]
shl r8, 4
mov r9, qword [rsp + 0x80]
mov r9d, dword [r9 + r8 + 0x18]
cmp r9d, 0x66726163
je 0x1401e9584
mov r8, rcx
ja 0x1401e9566
mov r8, rdx
cmp r9d, 0x66726163
jae 0x1401e9575
inc rcx
mov rax, rcx
mov rcx, r8
mov rdx, r8
sub rcx, rax
ja 0x1401e953a
xor edi, edi
jmp 0x1401e9591
mov rax, qword [rsp + 0x80]
mov edi, dword [rax + r8 + 0x24]
xor eax, eax
mov rcx, rbx
mov rdx, rbx
shr rcx, 1
add rcx, rax
lea r8, [rcx + rcx*2]
shl r8, 4
mov r9, qword [rsp + 0x80]
mov r9d, dword [r9 + r8 + 0x18]
cmp r9d, 0x6e756d72
je 0x1401e95e3
mov r8, rcx
ja 0x1401e95c5
mov r8, rdx
cmp r9d, 0x6e756d72
jae 0x1401e95d4
inc rcx
mov rax, rcx
mov rcx, r8
mov rdx, r8
sub rcx, rax
ja 0x1401e9599
xor eax, eax
jmp 0x1401e95f0
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + r8 + 0x24]
mov qword [rsp + 0xa8], rax
xor eax, eax
mov rcx, rbx
mov rdx, rbx
shr rcx, 1
add rcx, rax
lea r8, [rcx + rcx*2]
shl r8, 4
mov r9, qword [rsp + 0x80]
mov r9d, dword [r9 + r8 + 0x18]
cmp r9d, 0x646e6f6d
je 0x1401e964a
mov r8, rcx
ja 0x1401e962c
mov r8, rdx
cmp r9d, 0x646e6f6d
jae 0x1401e963b
inc rcx
mov rax, rcx
mov rcx, r8
mov rdx, r8
sub rcx, rax
ja 0x1401e9600
xor ebp, ebp
jmp 0x1401e9657
mov rax, qword [rsp + 0x80]
mov ebp, dword [rax + r8 + 0x24]
mov r14b, 1
test edi, edi
jne 0x1401e9672
cmp dword [rsp + 0xa8], 0
setne al
test ebp, ebp
setne r14b
and r14b, al
test rbx, rbx
je 0x1401e96d2
xor eax, eax
mov rcx, rbx
mov rdx, rbx
shr rcx, 1
add rcx, rax
lea r8, [rcx + rcx*2]
shl r8, 4
mov r9, qword [rsp + 0x80]
mov r9d, dword [r9 + r8 + 0x18]
cmp r9d, 0x72746c6d
je 0x1401e96fd
mov r8, rcx
ja 0x1401e96ab
mov r8, rdx
cmp r9d, 0x72746c6d
jae 0x1401e96ba
inc rcx
mov rax, rcx
mov rcx, r8
mov rdx, r8
sub rcx, rax
ja 0x1401e967f
mov dword [rsp + 0xa0], 0
jmp 0x1401e9711
mov byte [rsp + 0x90], 1
mov dword [rsp + 0x100], 0
mov r15b, byte [rsp + 0x3bb]
mov dword [rsp + 0xa0], 0
jmp 0x1401e9780
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + r8 + 0x24]
mov dword [rsp + 0xa0], eax
xor eax, eax
mov rcx, rbx
mov rdx, rbx
shr rcx, 1
add rcx, rax
lea r8, [rcx + rcx*2]
shl r8, 4
mov r9, qword [rsp + 0x80]
mov r9d, dword [r9 + r8 + 0x18]
cmp r9d, 0x76657274
je 0x1401e97a6
mov r8, rcx
ja 0x1401e9745
mov r8, rdx
cmp r9d, 0x76657274
jae 0x1401e9754
inc rcx
mov rax, rcx
mov rcx, r8
mov rdx, r8
sub rcx, rax
ja 0x1401e9719
mov dword [rsp + 0x100], 0
movzx r15d, byte [rsp + 0x3bb]
test rbx, rbx
jne 0x1401e97c7
mov byte [rsp + 0x90], 1
mov dword [rsp + 0xf8], 0
mov dword [rsp + 0x128], 0
mov dword [rsp + 0xc0], 0
jmp 0x1401e9909
mov rax, qword [rsp + 0x80]
cmp dword [rax + r8 + 0x24], 0
setne al
mov dword [rsp + 0x100], eax
movzx r15d, byte [rsp + 0x3bb]
lea rax, str.nrkvnreknreknrkvnrkv
mov eax, dword [rax + r15*4]
xor ecx, ecx
mov r8, rbx
mov rdx, rbx
shr r8, 1
add r8, rcx
lea r9, [r8 + r8*2]
shl r9, 4
mov r10, qword [rsp + 0x80]
mov r10d, dword [r10 + r9 + 0x18]
cmp r10d, eax
je 0x1401e9829
lea r9, [r8 + 1]
cmp r10d, eax
cmova rdx, r8
cmovb rcx, r9
mov r8, rdx
sub r8, rcx
ja 0x1401e97da
mov dword [rsp + 0xc0], 0
mov dword [rsp + 0x128], 0
jmp 0x1401e9849
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + r9 + 0x20]
mov dword [rsp + 0x128], ecx
test ecx, ecx
setne cl
mov dword [rsp + 0xc0], ecx
xor ecx, ecx
mov rdx, rbx
mov r8, rbx
shr rdx, 1
add rdx, rcx
lea r9, [rdx + rdx*2]
shl r9, 4
mov r10, qword [rsp + 0x80]
mov r10d, dword [r10 + r9 + 0x18]
cmp r10d, 0x7472616b
je 0x1401e98ac
mov r9, rdx
ja 0x1401e987d
mov r9, r8
cmp r10d, 0x7472616b
jae 0x1401e988c
inc rdx
mov rcx, rdx
mov rdx, r9
mov r8, r9
sub rdx, rcx
ja 0x1401e9851
mov dword [rsp + 0xf8], 0
mov byte [rsp + 0x90], 1
jmp 0x1401e98ca
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + r9 + 0x20]
mov dword [rsp + 0xf8], ecx
test ecx, ecx
sete byte [rsp + 0x90]
xor ecx, ecx
mov r8, rbx
mov rdx, rbx
shr r8, 1
add r8, rcx
lea r9, [r8 + r8*2]
shl r9, 4
mov r10, qword [rsp + 0x80]
mov r10d, dword [r10 + r9 + 0x18]
cmp r10d, eax
je 0x1401e990d
lea r9, [r8 + 1]
cmp r10d, eax
cmova rdx, r8
cmovb rcx, r9
mov r8, rdx
sub r8, rcx
ja 0x1401e98d2
xor eax, eax
jmp 0x1401e991b
mov rax, qword [rsp + 0x80]
movzx eax, word [rax + r9 + 4]
mov rcx, qword [rsp + 0x3b0]
cmp dword [rcx], 0
mov dword [rsp + 0x78], edi
mov dword [rsp + 0x70], ebp
mov qword [rsp + 0xe0], rcx
je 0x1401e9951
cmp dword [rsp + 0x2f0], 0
je 0x1401e9955
mov ecx, dword [rcx + 4]
cmp ecx, dword [rsp + 0x2f4]
sete cl
jmp 0x1401e9957
xor ecx, ecx
jmp 0x1401e995a
xor ecx, ecx
xor cl, 1
mov rbp, qword [rsp + 0x3a8]
test cl, cl
je 0x1401e996b
xor r12d, r12d
jmp 0x1401e9977
cmp qword [rbp + 0x6e8], 0
setne r12b
mov r8d, 0xfffc
mov bl, byte [rsp + 0x3b8]
cmp qword [rbp + 0x808], 0
mov qword [rsp + 0x98], rsi
mov qword [rsp + 0x58], r11
mov byte [rsp + 0x60], r14b
mov qword [rsp + 0x88], r15
je 0x1401e99d8
cmp qword [rbp + 0x768], 0
sete cl
test bl, bl
setne dl
test ax, ax
sete r9b
mov eax, r12d
xor al, 1
or al, dl
or al, cl
or r9b, al
xor al, 1
and al, r12b
xor r11d, r11d
mov r12d, eax
jmp 0x1401e99f1
test bl, bl
je 0x1401e9bda
xor r12d, r12d
cmp byte [rbp + 0x454], 2
setne r11b
xor r9d, r9d
or r8d, dword [rbp + 0x378]
mov dword [rsp + 0xd8], r8d
mov esi, r12d
xor sil, 1
mov dword [rsp + 0xd0], r9d
test r9b, r9b
sete r14b
mov r13d, r11d
xor r13b, 1
cmp byte [rsp + 0x3b9], 0
setne r15b
and r15b, r14b
test r13b, r13b
mov dword [rsp + 0x68], r11d
mov byte [rsp + 0x50], bl
jne 0x1401e9ab4
test r15b, r15b
je 0x1401e9ab4
mov al, byte [rbp + 0x454]
cmp al, 2
jne 0x1401e9a4e
xor r15d, r15d
jmp 0x1401e9ab0
movups xmm0, xmmword [rbp + 0x440]
mov ecx, dword [rbp + 0x450]
lea rdi, [rsp + 0x218]
mov byte [rdi + 0x20], al
mov dword [rdi + 0x18], 0
mov dword [rdi + 0x1c], ecx
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], 0
lea rbx, [rsp + 0x3c0]
mov rcx, rbx
mov rdx, rdi
call fcn.140286e87
cmp qword [rsp + 0x3c0], 4
setne r15b
je 0x1401e9aa7
cmp byte [rsp + 0x413], 0
je 0x1401e9a83
mov bl, byte [rsp + 0x50]
mov r11d, dword [rsp + 0x68]
xor r15b, 1
and r14b, sil
mov r9, qword [rsp + 0xb0]
test r9, r9
je 0x1401e9b12
xor eax, eax
mov rcx, r9
shr r9, 1
add r9, rax
lea rdx, [r9 + r9*2]
shl rdx, 4
mov r8, qword [rsp + 0x80]
mov r8d, dword [r8 + rdx + 0x18]
cmp r8d, 0x6d61726b
je 0x1401e9b1f
mov r10, r9
mov rdx, r9
ja 0x1401e9af8
mov rdx, rcx
cmp r8d, 0x6d61726b
jae 0x1401e9b07
mov rax, r10
inc rax
mov r9, rdx
mov rcx, rdx
sub r9, rax
ja 0x1401e9ac9
mov dword [rsp + 0xf0], 0
jmp 0x1401e9b36
mov rax, qword [rsp + 0x80]
cmp dword [rax + rdx + 0x24], 0
setne al
mov dword [rsp + 0xf0], eax
mov dword [rsp + 0xb0], r12d
mov eax, r11d
and al, r14b
cmp al, 1
jne 0x1401e9bb5
mov al, byte [rbp + 0x454]
cmp al, 2
je 0x1401e9bfe
mov esi, ebx
movups xmm0, xmmword [rbp + 0x440]
mov ecx, dword [rbp + 0x450]
lea rdi, [rsp + 0x218]
mov byte [rdi + 0x20], al
mov dword [rdi + 0x18], 0
mov dword [rdi + 0x1c], ecx
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], 0
lea rbx, [rsp + 0x3c0]
mov rcx, rbx
mov rdx, rdi
call fcn.140286e87
cmp dword [rsp + 0x3c0], 4
je 0x1401e9bfc
cmp byte [rsp + 0x412], 0
je 0x1401e9b8d
xor r12d, r12d
xor eax, eax
mov ebx, esi
jmp 0x1401e9c08
xor r12d, r12d
mov eax, 0
test r14b, 1
jne 0x1401e9bfe
jmp 0x1401e9c08
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x130], rax
jmp 0x1401e951f
test ax, ax
je 0x1401e99e3
xor r11d, r11d
mov eax, r12d
xor al, 1
mov r9d, 0
je 0x1401e99f1
jmp 0x1401e99e3
mov ebx, esi
mov r12b, 1
mov al, byte [rsp + 0x3ba]
test bl, bl
sete bl
cmp byte [rsp + 0x90], 0
mov dword [rsp + 0xb8], eax
je 0x1401e9c2b
mov dword [rsp + 0x90], 0
jmp 0x1401e9c3d
cmp qword [rbp + 0x838], 0
setne al
mov dword [rsp + 0x90], eax
mov esi, dword [rsp + 0x3a0]
mov ebp, dword [rsp + 0x3a4]
mov rax, qword [rsp + 0x5e8]
test rax, rax
je 0x1401e9c94
movabs rcx, 0x800000000000000
dec rcx
cmp rax, rcx
ja 0x1401ea432
mov al, byte [0x1403f9274]
mov edx, 4
mov rcx, qword [rsp + 0x200]
call fcn.140061500
test rax, rax
je 0x1401ea439
mov rdi, rax
jmp 0x1401e9c99
mov edi, 4
and r14b, r13b
and r12b, bl
mov rcx, rdi
mov rdx, qword [rsp + 0x5e0]
mov r8, qword [rsp + 0x200]
call sub.msvcrt.dll_memcpy
lea rbx, [rsp + 0x3c0]
mov rax, qword [rsp + 0x88]
mov byte [rbx + 0x106], al
mov dword [rbx + 0xc0], esi
mov dword [rbx + 0xc4], ebp
mov rsi, qword [rsp + 0xe0]
mov qword [rbx + 0xc8], rsi
lea rdx, [rsp + 0x270]
mov r8d, 0x90
mov rcx, rbx
call sub.msvcrt.dll_memcpy
cmp word [rsp + 0xd8], 0xfffe
mov rax, qword [rsp + 0x58]
mov qword [rbx + 0x90], rax
mov rax, qword [rsp + 0x130]
mov qword [rbx + 0x98], rax
mov rax, qword [rsp + 0x98]
mov qword [rbx + 0xa0], rax
mov qword [rbx + 0xd0], 0
mov eax, dword [rsp + 0x78]
mov dword [rbx + 0xe0], eax
mov rax, qword [rsp + 0xa8]
mov dword [rbx + 0xe4], eax
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0xe8], eax
mov eax, dword [rsp + 0xa0]
mov dword [rbx + 0xec], eax
mov eax, dword [rsp + 0x128]
mov dword [rbx + 0xf0], eax
mov eax, dword [rsp + 0xf8]
mov dword [rbx + 0xf4], eax
mov eax, dword [rsp + 0xc0]
mov byte [rbx + 0xf8], al
mov al, byte [rsp + 0x60]
mov byte [rbx + 0xf9], al
mov eax, dword [rsp + 0x100]
mov byte [rbx + 0xfa], al
mov eax, dword [rsp + 0xf0]
mov byte [rbx + 0xfb], al
mov byte [rbx + 0xfc], r15b
setae byte [rbx + 0xfd]
mov eax, dword [rsp + 0xb8]
mov byte [rbx + 0xfe], al
mov byte [rbx + 0xff], r12b
mov eax, dword [rsp + 0xb0]
mov byte [rbx + 0x100], al
mov byte [rbx + 0x101], r14b
mov eax, dword [rsp + 0x68]
mov byte [rbx + 0x102], al
mov eax, dword [rsp + 0xd0]
mov byte [rbx + 0x103], al
mov al, byte [rsp + 0x50]
mov byte [rbx + 0x104], al
mov eax, dword [rsp + 0x90]
mov byte [rbx + 0x105], al
mov rax, qword [rsp + 0x5e8]
mov qword [rbx + 0xa8], rax
mov qword [rbx + 0xb0], rdi
mov qword [rbx + 0xb8], rax
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x1401e9e75
lea rcx, [rsp + 0x3c0]
call rax
mov rdi, rax
mov rsi, rdx
mov rcx, qword [rsp + 0x490]
mov rdx, qword [rsp + 0x498]
call fcn.1401856ea
mov qword [rsp + 0x490], rdi
mov qword [rsp + 0x498], rsi
lea rdx, [rsp + 0x3c0]
mov r8d, 0x108
mov rcx, qword [rsp + 0x4f0]
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x300]
call fcn.1401c59a3
movaps xmm6, xmmword [rsp + 0x550]
add rsp, 0x568
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x3c0], rax
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401e9ee7
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x3c0], rax
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0x4e8]
mov qword [rcx + 8], 1
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
mov rbx, qword [rsp + 0x70]
call fcn.1400790c0
jmp 0x1401ea47f
mov rax, rcx
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, r9
mov rdx, rax
mov rbx, qword [rsp + 0x70]
call fcn.14007ec10
jmp 0x1401ea47f
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x3c0]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov r12, qword [rsp + 0x60]
call fcn.1400790c0
jmp 0x1401ea47f
mov rax, rcx
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, rax
mov rdx, r14
mov rbx, qword [rsp + 0x70]
call fcn.14007a270
jmp 0x1401ea47f
lea rcx, [0x1403679a8]
jmp 0x1401e5e35
lea rcx, [0x140367bb8]
jmp 0x1401e5e35
lea rcx, [0x140367a00]
jmp 0x1401e5e35
mov r8, rdx
mov rcx, rdi
mov rdx, r14
call fcn.1400793c0
jmp 0x1401ea47f
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.14007aaa0
jmp 0x1401ea47f
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_map.rs_b16_
mov rdx, r15
call fcn.1400793c0
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, r9
mov rdx, rax
call fcn.14007ec10
jmp 0x1401ea47f
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x3c0], rax
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401ea062
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x3c0], rax
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0xa0]
mov qword [rcx + 8], 1
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
call fcn.1400790c0
jmp 0x1401ea47f
mov rbx, rcx
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, r10
mov rdx, rbx
mov r15, qword [rsp + 0x60]
call fcn.14007ec10
jmp 0x1401ea47f
mov rbx, rcx
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, rbx
mov rdx, r14
mov r15, qword [rsp + 0x60]
call fcn.14007a270
jmp 0x1401ea47f
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x3c0]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rbp, qword [rsp + 0xb0]
call fcn.1400790c0
jmp 0x1401ea47f
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401e9f22
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401e9f83
mov ebx, 0x583
mov rcx, r15
mov rdx, rbx
mov r8, r13
call fcn.1400793c0
jmp 0x1401ea47f
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x3c0]
mov qword [rcx], rax
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401ea175
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x3c0]
mov qword [rcx], rax
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov qword [rcx + 8], 1
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
call fcn.1400790c0
jmp 0x1401ea47f
mov rdx, rcx
lea rax, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0x50]
mov r8, qword [rsp + 0xc0]
call fcn.14007ec10
jmp 0x1401ea47f
lea rax, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov qword [rsp + 0xc0], rax
mov rdx, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xc0]
call fcn.14007a270
jmp 0x1401ea47f
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x3c0]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_unicode_segmentation_1.10.1_src_grapheme.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
lea rdx, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
call fcn.1400790c0
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
lea r13, [0x140369340]
jmp 0x1401ea12e
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.14007aaa0
jmp 0x1401ea47f
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0x58]
mov rdx, rbx
call fcn.14007ec10
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
lea rax, str.x8__
mov edx, 0x20
mov rcx, r8
mov r8, rax
call fcn.14007a270
jmp 0x1401ea47f
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401ea0b7
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
jmp 0x1401ea098
mov qword [rsp + 0x88], r12
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.14007aaa0
jmp 0x1401ea47f
lea rdx, [rsp + 0x3c0]
mov qword [rdx], 0
lea rcx, [rsp + 0xcf]
call fcn.1401dcecb
mov qword [rsp + 0x58], rbp
mov r15, rsi
mov r9, r8
lea rax, [0x140369310]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x58]
mov rdx, r15
mov r8, qword [rsp + 0xa8]
call fcn.140080f80
jmp 0x1401ea47f
mov qword [rsp + 0x88], r12
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xd0]
call fcn.14007ec10
jmp 0x1401ea47f
mov qword [rsp + 0x88], r12
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
call fcn.140076fd0
jmp 0x1401ea47f
mov ecx, 1
mov rdx, rbx
call fcn.140077010
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
mov rcx, rdx
mov qword [rsp + 0x88], r12
jmp 0x1401ea1d1
mov qword [rsp + 0x88], r12
jmp 0x1401ea1ab
call fcn.140076fd0
jmp 0x1401ea47f
mov ecx, 4
mov rdx, qword [rsp + 0x200]
call fcn.140077010
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
jmp 0x1401ea47f
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.14007aaa0
ud2
mov qword [rsp + 0xa8], r15
lea rax, [0x140369358]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x58], rax
mov r15, rbx
mov r9, rbx
jmp 0x1401ea350