Function at 0x1401f9d60
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x378
movaps xmmword [rsp + 0x360], xmm10
movaps xmmword [rsp + 0x350], xmm9
movaps xmmword [rsp + 0x340], xmm8
movaps xmmword [rsp + 0x330], xmm7
movaps xmmword [rsp + 0x320], xmm6
mov qword [rsp + 0x90], rcx
mov rsi, qword [rcx + 0x10]
mov dword [rsi + 0xb0], 0
mov rcx, qword [rsi + 0x88]
mov rax, rcx
shr rax, 0x3a
jne 0x1401f9e07
mov rax, rcx
shl rax, 6
cmp rax, 0x4001
mov edx, 0x4000
cmovae rdx, rax
mov qword [rsi + 0x78], rdx
cmp rcx, 0x7fffffff
ja 0x1401f9e07
cmp ecx, 0x200000
jae 0x1401f9e07
mov eax, ecx
shl eax, 0xa
cmp eax, 0x4001
mov edx, 0x4000
cmovge edx, eax
mov dword [rsi + 0xb4], edx
mov rdx, qword [rsi + 0x10]
cmp rdx, rcx
jb 0x1401ff4dd
lea rbx, [rsi + 0xb0]
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
test rcx, rcx
je 0x1401fa3cc
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x88]
mov rdx, qword [rsi + 8]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor r8d, r8d
mov dword [rdx + r8 + 4], eax
add r8, 0x14
cmp rcx, r8
jne 0x1401f9e4e
mov r14, qword [rsi + 0x88]
test r14, r14
je 0x1401fa3cc
xor r13d, r13d
mov r12d, 0xfffe0e1a
mov rax, qword [rsi + 0x10]
cmp r13, rax
ja 0x1401ff3e6
je 0x1401ff12b
mov rbp, qword [rsi + 8]
lea rdi, [r13*4]
add rdi, r13
lea r15, [rdi*4]
add r15, rbp
mov rcx, r15
mov rdx, rbx
call fcn.1401ff5e5
lea rdi, [rdi*4 + 0x10]
add rdi, rbp
movzx ecx, word [rdi]
and ecx, 0x1f
call fcn.1401df55f
cmp al, 0x14
jne 0x1401f9ede
mov eax, dword [r15]
mov ecx, 0xfffe0c05
add eax, ecx
cmp eax, 5
jae 0x1401f9ede
mov r15, r13
jmp 0x1401fa11c
test r13, r13
je 0x1401f9f19
mov eax, dword [r15]
add eax, r12d
cmp eax, 0x1a
jae 0x1401f9f19
lea rax, [r13 - 1]
lea rax, [rax + rax*4]
mov ecx, dword [rbp + rax*4]
add ecx, r12d
cmp ecx, 0x1a
jae 0x1401fa122
test byte [rbp + rax*4 + 0x10], 0x80
mov r15, r13
je 0x1401fa11c
jmp 0x1401fa122
movzx ebp, word [rdi]
mov ecx, ebp
and ecx, 0x1f
call fcn.1401df55f
cmp al, 0x1a
jne 0x1401f9fd6
and ebp, 0x100
je 0x1401f9fd6
or byte [rdi], 0x80
mov rdx, qword [rsi + 0x10]
cmp rdx, r14
jb 0x1401ff477
lea r15, [r13 + 1]
cmp r15, r14
jae 0x1401fa122
mov rdi, qword [rsi + 8]
lea rbp, [r15 + r15*4]
lea rcx, [rdi + rbp*4]
mov eax, dword [rcx]
cmp eax, 0x110000
je 0x1401ff30d
mov edx, eax
xor edx, 0xd800
add edx, 0xffef0000
cmp edx, 0xffef07ff
jbe 0x1401ff30d
cmp eax, 0x2756
jg 0x1401f9ff1
cmp eax, 0x25b5
jle 0x1401fa02e
lea edx, [rax - 0x2714]
cmp edx, 0x3a
ja 0x1401f9fbb
movabs r8, 0x509000000102205
bt r8, rdx
jb 0x1401fa10c
cmp eax, 0x25b6
je 0x1401fa10c
cmp eax, 0x25c0
je 0x1401fa10c
jmp 0x1401fa133
mov eax, dword [r15]
mov ecx, 0xfff1ffe0
add eax, ecx
mov r15, r13
cmp eax, 0x60
jb 0x1401fa11c
jmp 0x1401fa122
cmp eax, 0x303c
jg 0x1401fa066
cmp eax, 0x2b4f
jg 0x1401fa0b0
lea edx, [rax - 0x27a1]
cmp edx, 0x1e
ja 0x1401fa01e
mov r8d, 0x40008001
bt r8d, edx
jb 0x1401fa10c
cmp eax, 0x2757
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x2138
jg 0x1401fa08f
cmp eax, 0x203b
jle 0x1401fa0de
cmp eax, 0x203c
je 0x1401fa10c
cmp eax, 0x2049
je 0x1401fa10c
cmp eax, 0x2122
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x1f12e
jle 0x1401fa0c7
cmp eax, 0x1f219
jg 0x1401fa0ee
cmp eax, 0x1f12f
je 0x1401fa10c
cmp eax, 0x1f18e
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x2387
jle 0x1401fa0fe
cmp eax, 0x2388
je 0x1401fa10c
cmp eax, 0x23cf
je 0x1401fa10c
cmp eax, 0x24c2
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x2b50
je 0x1401fa10c
cmp eax, 0x2b55
je 0x1401fa10c
cmp eax, 0x3030
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x303d
je 0x1401fa10c
cmp eax, 0x3297
je 0x1401fa10c
cmp eax, 0x3299
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0xa9
je 0x1401fa10c
cmp eax, 0xae
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x1f21a
je 0x1401fa10c
cmp eax, 0x1f22f
je 0x1401fa10c
jmp 0x1401fa133
cmp eax, 0x2139
je 0x1401fa10c
cmp eax, 0x2328
jne 0x1401fa133
mov rdx, rbx
call fcn.1401ff5e5
lea rdi, [rdi + rbp*4]
add rdi, 0x10
or byte [rdi], 0x80
mov r13, r15
inc r13
cmp r13, r14
jb 0x1401f9e75
jmp 0x1401fa3cc
lea edx, [rax - 0x1f93c]
cmp edx, 0xa
jb 0x1401fa10c
lea edx, [rax - 0x1f90c]
cmp edx, 0x2f
jb 0x1401fa10c
lea edx, [rax - 0x1f8ae]
cmp edx, 0x52
jb 0x1401fa10c
mov edx, eax
and edx, 0xfffffff8
cmp edx, 0x1f888
je 0x1401fa10c
lea r8d, [rax - 0x1f85a]
cmp r8d, 6
jb 0x1401fa10c
cmp edx, 0x1f848
je 0x1401fa10c
mov edx, eax
and edx, 0xfffffffc
cmp edx, 0x1f80c
je 0x1401fa10c
lea r8d, [rax - 0x1f7d5]
cmp r8d, 0x2b
jb 0x1401fa10c
lea r8d, [rax - 0x1f774]
cmp r8d, 0xc
jb 0x1401fa10c
mov r8d, eax
and r8d, 0xffffff80
cmp r8d, 0x1f680
je 0x1401fa10c
lea r8d, [rax - 0x1f546]
cmp r8d, 0x10a
jb 0x1401fa10c
lea r8d, [rax - 0x1f400]
cmp r8d, 0x13e
jb 0x1401fa10c
lea r8d, [rax - 0x1f249]
cmp r8d, 0x1b2
jb 0x1401fa10c
cmp edx, 0x1f23c
je 0x1401fa10c
lea edx, [rax - 0x1f232]
cmp edx, 9
jb 0x1401fa10c
lea edx, [rax - 0x1f201]
cmp edx, 0xf
jb 0x1401fa10c
lea edx, [rax - 0x1f1ad]
cmp edx, 0x39
jb 0x1401fa10c
lea edx, [rax - 0x1f191]
cmp edx, 0xa
jb 0x1401fa10c
mov edx, eax
and edx, 0xfffffffe
cmp edx, 0x1f17e
je 0x1401fa10c
lea r8d, [rax - 0x1f16c]
cmp r8d, 6
jb 0x1401fa10c
lea r8d, [rax - 0x1f10d]
cmp r8d, 3
jb 0x1401fa10c
mov r8d, eax
and r8d, 0xffffff00
cmp r8d, 0x1f000
je 0x1401fa10c
lea r8d, [rax - 0x2b1b]
cmp r8d, 2
jb 0x1401fa10c
lea r8d, [rax - 0x2b05]
cmp r8d, 3
jb 0x1401fa10c
cmp edx, 0x2934
je 0x1401fa10c
lea r8d, [rax - 0x2795]
cmp r8d, 3
jb 0x1401fa10c
lea r8d, [rax - 0x2763]
cmp r8d, 5
jb 0x1401fa10c
lea r8d, [rax - 0x2753]
cmp r8d, 3
jb 0x1401fa10c
lea r8d, [rax - 0x2733]
cmp r8d, 2
jb 0x1401fa10c
lea r8d, [rax - 0x2708]
cmp r8d, 0xb
jb 0x1401fa10c
lea r8d, [rax - 0x2690]
cmp r8d, 0x76
jb 0x1401fa10c
lea r8d, [rax - 0x2614]
cmp r8d, 0x72
jb 0x1401fa10c
lea r8d, [rax - 0x2607]
cmp r8d, 0xc
jb 0x1401fa10c
lea r8d, [rax - 0x2600]
cmp r8d, 6
jb 0x1401fa10c
lea r8d, [rax - 0x25fb]
cmp r8d, 4
jb 0x1401fa10c
cmp edx, 0x25aa
je 0x1401fa10c
lea r8d, [rax - 0x23f8]
cmp r8d, 3
jb 0x1401fa10c
lea r8d, [rax - 0x23e9]
cmp r8d, 0xb
jb 0x1401fa10c
cmp edx, 0x231a
je 0x1401fa10c
lea edx, [rax - 0x2194]
cmp edx, 6
jb 0x1401fa10c
lea edx, [rax - 0x21a9]
cmp edx, 2
jb 0x1401fa10c
add eax, 0xfffe06b9
cmp eax, 0x6b6
ja 0x1401fa122
jmp 0x1401fa10c
mov rax, qword [rsp + 0x90]
mov r12, qword [rax + 8]
mov eax, dword [rsi + 0xac]
test al, 0x20
jne 0x1401fa4aa
test al, 2
je 0x1401fa4aa
cmp qword [rsi + 0x98], 0
jne 0x1401fa4aa
mov r14, qword [rsi + 0x10]
test r14, r14
je 0x1401ff2c0
mov rdi, qword [rsi + 8]
movzx ecx, word [rdi + 0x10]
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
cmp rax, 2
ja 0x1401fa4aa
mov rcx, r12
mov edx, 0x25cc
call fcn.1401ede49
test ax, ax
je 0x1401fa4aa
mov rcx, qword [rsi + 0x80]
cmp r14, rcx
jbe 0x1401ff362
lea rax, [rcx + rcx*4]
mov rax, qword [rdi + rax*4 + 4]
lea r14, [rsp + 0xe0]
mov dword [r14], 0x25cc
mov qword [r14 + 4], rax
xor edi, edi
mov qword [r14 + 0xc], rdi
mov rcx, r14
mov rdx, rbx
call fcn.1401ff5e5
mov word [rsi + 0xbd], 1
mov byte [rsi + 0xbf], 0
mov qword [rsi + 0x80], rdi
mov qword [rsi + 0x90], rdi
mov rcx, rsi
mov rdx, r14
call fcn.1401ee0ae
mov rcx, rsi
call fcn.1401edf1e
test byte [rbx], 1
je 0x1401fa53c
mov bpl, byte [rsi + 0xc0]
mov rcx, rsi
xor edx, edx
call fcn.1401ff88d
mov rbx, rax
mov rdi, qword [rsi + 0x88]
test bpl, bpl
je 0x1401fa510
test rdi, rdi
je 0x1401fa53c
xor edx, edx
mov rax, rbx
sub rax, rdx
cmp rax, 2
jb 0x1401fa4f8
mov rcx, rsi
mov r8, rbx
call fcn.1401de7d4
mov rdi, qword [rsi + 0x88]
mov rcx, rsi
mov rdx, rbx
call fcn.1401ff88d
mov rdx, rbx
cmp rbx, rdi
mov rbx, rax
jb 0x1401fa4da
jmp 0x1401fa53c
test rdi, rdi
je 0x1401fa53c
xor edx, edx
mov rcx, rsi
mov r8, rbx
call fcn.1401de56a
mov rcx, rsi
mov rdx, rbx
call fcn.1401ff88d
mov rdx, rbx
cmp rbx, qword [rsi + 0x88]
mov rbx, rax
jb 0x1401fa517
mov dil, byte [rsi + 0xc1]
cmp dword [rsi + 0x48], 0
mov qword [rsp + 0x48], r12
je 0x1401fa5bb
mov ecx, dword [rsi + 0x4c]
call fcn.1401ddc27
cmp al, 5
je 0x1401fa5bb
mov ebx, eax
movzx eax, al
cmp eax, 2
jne 0x1401fa5bd
mov bl, 2
cmp dil, 1
jne 0x1401fa5bd
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x1401fec30
mov r14, qword [rsi + 8]
shl rax, 2
lea r15, [rax + rax*4]
xor r12d, r12d
xor r13d, r13d
movzx ecx, word [r14 + r12 + 0x10]
and ecx, 0x1f
call fcn.1401df55f
mov cl, 1
cmp al, 8
je 0x1401fa5aa
mov ecx, r13d
cmp al, 5
jb 0x1401fec39
add r12, 0x14
mov r13d, ecx
cmp r15, r12
jne 0x1401fa58b
jmp 0x1401fec32
xor ebx, ebx
lea eax, [rdi - 3]
cmp al, 0xfe
setb al
cmp dil, bl
sete cl
test bl, bl
sete dl
dec dil
cmp dil, 2
ja 0x1401fa5e3
or cl, dl
or al, cl
jne 0x1401fa6a0
mov dil, byte [rsi + 0xc0]
mov rcx, rsi
xor edx, edx
call fcn.1401ff88d
mov rbx, rax
mov r14, qword [rsi + 0x88]
cmp dil, 1
jne 0x1401fa64c
test r14, r14
je 0x1401fa684
xor r15d, r15d
mov rcx, rsi
mov rdx, r15
mov r8, rbx
call fcn.1401de56a
mov rcx, rsi
mov rdx, r15
mov r8, rbx
call fcn.1401ff8fc
mov rcx, rsi
mov rdx, rbx
call fcn.1401ff88d
mov r15, rbx
mov r14, qword [rsi + 0x88]
cmp rbx, r14
mov rbx, rax
jb 0x1401fa60c
test r14, r14
jne 0x1401fa677
jmp 0x1401fa684
test r14, r14
je 0x1401fa684
xor edx, edx
mov r15, rbx
mov rcx, rsi
mov r8, rbx
call fcn.1401ff8fc
mov rcx, rsi
mov rdx, rbx
call fcn.1401ff88d
mov rbx, rax
mov rdx, r15
cmp r15, r14
jb 0x1401fa653
mov rcx, rsi
xor edx, edx
mov r8, r14
call fcn.1401ff8fc
mov cl, byte [rsi + 0xc1]
shl cl, 3
movabs rax, 0x304010200
shr rax, cl
mov byte [rsi + 0xc1], al
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx + 0xc8]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x1401fa6bd
mov rdx, r12
mov r8, rsi
call rax
mov rbx, qword [rsi + 0x88]
mov rax, qword [rsp + 0x90]
mov dil, byte [rax + 0x18]
movzx eax, dil
mov ecx, 0x15
bt ecx, eax
jae 0x1401fa76d
mov rdx, qword [rsi + 0x10]
cmp rdx, rbx
jb 0x1401ff519
test rbx, rbx
je 0x1401fa76d
mov rax, qword [rsp + 0x30]
mov r14d, dword [rax + 0xec]
mov r15, qword [rsi + 8]
lea rax, [rbx*4]
lea r12, [rax + rax*4]
xor r13d, r13d
mov ecx, dword [r15 + r13]
cmp ecx, 0x110000
je 0x1401ff30d
mov eax, ecx
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef07ff
jbe 0x1401ff30d
call fcn.1402954fa
cmp eax, 0x110000
je 0x1401fa75f
mov ebp, eax
mov rcx, qword [rsp + 0x48]
mov edx, eax
call fcn.1401ede49
test ax, ax
je 0x1401fa75f
mov dword [r15 + r13], ebp
jmp 0x1401fa764
or dword [r15 + r13 + 4], r14d
add r13, 0x14
cmp r12, r13
jne 0x1401fa713
dec dil
cmp dil, 2
mov r13, qword [rsp + 0x48]
jb 0x1401fa99c
mov rax, qword [rsp + 0x30]
cmp byte [rax + 0xfa], 0
jne 0x1401fa99c
mov rdx, qword [rsi + 0x10]
cmp rdx, rbx
jb 0x1401ff59a
test rbx, rbx
je 0x1401fa99c
mov rdi, qword [rsi + 8]
shl rbx, 2
lea r14, [rbx + rbx*4]
xor r15d, r15d
mov ebp, 0x79ff83
lea r12, [0x1403b71ac]
mov eax, dword [rdi + r15]
cmp eax, 0x110000
je 0x1401ff30d
mov ecx, eax
xor ecx, 0xd800
add ecx, 0xffef0000
cmp ecx, 0xffef07ff
jbe 0x1401ff30d
mov ecx, eax
shr ecx, 8
cmp ecx, 0xfd
jg 0x1401fa828
cmp ecx, 0x20
je 0x1401fa879
cmp ecx, 0x30
jne 0x1401fa98f
add eax, 0xffffcfff
cmp eax, 0x17
jae 0x1401fa98f
bt ebp, eax
jae 0x1401fa98f
cdqe
mov ebx, dword [r12 + rax*4]
jmp 0x1401fa97c
cmp ecx, 0xfe
je 0x1401fa8a0
cmp ecx, 0xff
jne 0x1401fa98f
cmp eax, 0xff1e
jg 0x1401fa8b5
cmp eax, 0xff0b
jg 0x1401fa900
cmp eax, 0xff01
je 0x1401fa946
cmp eax, 0xff08
je 0x1401fa94d
cmp eax, 0xff09
jne 0x1401fa98f
mov ebx, 0xfe36
jmp 0x1401fa97c
cmp eax, 0x2024
jg 0x1401fa8e7
cmp eax, 0x2013
je 0x1401fa938
cmp eax, 0x2014
jne 0x1401fa98f
mov ebx, 0xfe31
jmp 0x1401fa97c
mov ebx, 0xfe34
cmp eax, 0xfe4f
je 0x1401fa97c
jmp 0x1401fa98f
cmp eax, 0xff3e
jg 0x1401fa91c
cmp eax, 0xff1f
je 0x1401fa954
cmp eax, 0xff3b
je 0x1401fa95b
cmp eax, 0xff3d
jne 0x1401fa98f
mov ebx, 0xfe48
jmp 0x1401fa97c
cmp eax, 0x2025
je 0x1401fa93f
cmp eax, 0x2026
jne 0x1401fa98f
mov ebx, 0xfe19
jmp 0x1401fa97c
cmp eax, 0xff0c
je 0x1401fa962
cmp eax, 0xff1a
je 0x1401fa969
cmp eax, 0xff1b
jne 0x1401fa98f
mov ebx, 0xfe14
jmp 0x1401fa97c
cmp eax, 0xff3f
je 0x1401fa970
cmp eax, 0xff5b
je 0x1401fa977
cmp eax, 0xff5d
jne 0x1401fa98f
mov ebx, 0xfe38
jmp 0x1401fa97c
mov ebx, 0xfe32
jmp 0x1401fa97c
mov ebx, 0xfe30
jmp 0x1401fa97c
mov ebx, 0xfe15
jmp 0x1401fa97c
mov ebx, 0xfe35
jmp 0x1401fa97c
mov ebx, 0xfe16
jmp 0x1401fa97c
mov ebx, 0xfe47
jmp 0x1401fa97c
mov ebx, 0xfe10
jmp 0x1401fa97c
mov ebx, 0xfe13
jmp 0x1401fa97c
mov ebx, 0xfe33
jmp 0x1401fa97c
mov ebx, 0xfe37
mov rcx, r13
mov edx, ebx
call fcn.1401ede49
test ax, ax
je 0x1401fa98f
mov dword [rdi + r15], ebx
add r15, 0x14
cmp r14, r15
jne 0x1401fa7c2
mov r12, qword [rsi + 0x88]
test r12, r12
je 0x1401fb966
mov r8, qword [rsp + 0x30]
mov rax, qword [r8 + 0xc8]
movzx ecx, byte [rax + 0x52]
cmp cl, 3
mov ebx, 1
cmovne ebx, ecx
mov rcx, qword [rax + 0x30]
mov rax, qword [rax + 0x38]
test rcx, rcx
lea rdx, [0x1401ffa07]
cmovne rdx, rcx
test rax, rax
lea rcx, [0x1401ffa0e]
cmovne rcx, rax
lea r14, [rsp + 0xb0]
mov qword [r14], r8
mov qword [r14 + 8], rsi
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], rdx
mov qword [r14 + 0x20], rcx
mov word [rsi + 0xbd], 1
mov byte [rsi + 0xbf], 0
xor edi, edi
mov qword [rsi + 0x80], rdi
mov qword [rsi + 0x90], rdi
mov al, 1
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x88], ebx
lea rax, [rdi + rdi*4]
dec rdi
lea rsi, [rax*4 + 0x24]
lea rax, [rdi + 2]
mov rcx, qword [rsp + 0xb8]
cmp rax, r12
jae 0x1401faa93
mov rdx, qword [rcx + 0x10]
cmp rdx, rax
jbe 0x1401fec61
mov rax, qword [rcx + 8]
movzx ecx, word [rax + rsi]
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
inc rdi
add rsi, 0x14
cmp rax, 2
ja 0x1401faa47
mov rcx, qword [rsp + 0xb8]
jmp 0x1401faa96
mov rdi, rax
test bl, 5
mov r12, qword [rsp + 0x48]
je 0x1401faab0
mov r14, rdi
sub r14, qword [rcx + 0x80]
jne 0x1401faabe
xor esi, esi
jmp 0x1401fab13
mov ebx, dword [rsp + 0x88]
mov r12, qword [rsp + 0x38]
jmp 0x1401fab37
xor esi, esi
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax + 0x80]
add rcx, rsi
mov rdx, qword [rax + 0x10]
cmp rdx, rcx
jbe 0x1401ff0e3
mov rbx, qword [rax + 8]
lea r15, [rcx + rcx*4]
mov edx, dword [rbx + r15*4]
mov rcx, r12
call fcn.1401ede49
test ax, ax
je 0x1401fab0b
movzx eax, dx
mov dword [rbx + r15*4 + 0xc], eax
inc rsi
cmp r14, rsi
jne 0x1401faac0
mov rsi, r14
mov rcx, qword [rsp + 0xb8]
mov ebx, dword [rsp + 0x88]
mov r12, qword [rsp + 0x38]
lea r14, [rsp + 0xb0]
mov rdx, rsi
call fcn.1401ee12d
mov rcx, qword [rsp + 0xb8]
mov r13, qword [rcx + 0x80]
cmp r13, rdi
jae 0x1401fab64
cmp byte [rcx + 0xbc], 0
je 0x1401fab64
test bl, 5
setne dl
mov rcx, r14
call fcn.1401ffa18
mov rcx, qword [rsp + 0xb8]
jmp 0x1401fab37
cmp r13, r12
je 0x1401fb171
cmp byte [rcx + 0xbc], 0
je 0x1401fb171
lea rax, [r13*4]
add rax, r13
lea rsi, [rax*4 + 0x24]
lea r15, [r13 + 1]
mov rbp, qword [rsp + 0xb8]
cmp r15, r12
jae 0x1401fabdb
mov rdx, qword [rbp + 0x10]
cmp rdx, r15
jbe 0x1401fec70
mov rax, qword [rbp + 8]
movzx ecx, word [rax + rsi]
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
add rsi, 0x14
mov r13, r15
cmp rax, 3
jb 0x1401fab8d
lea r13, [r15 - 1]
mov rbp, qword [rsp + 0xb8]
mov rcx, qword [rbp + 0x80]
cmp rcx, r15
jae 0x1401fb13e
cmp byte [rbp + 0xbc], 0
je 0x1401fac73
mov rdx, qword [rbp + 0x10]
lea rax, [rcx*4]
lea rax, [rax + rax*4]
lea r8, [r13 + 1]
mov r9, rcx
cmp rdx, r9
jbe 0x1401ff0ef
mov r10, qword [rbp + 8]
mov r10d, dword [r10 + rax]
cmp r10d, 0x110000
je 0x1401ff30d
mov r11d, r10d
xor r11d, 0xd800
add r11d, 0xffef0000
cmp r11d, 0xffef07ff
jbe 0x1401ff30d
mov r11d, r10d
and r11d, 0xfffffff0
cmp r11d, 0xfe00
je 0x1401faca4
add r10d, 0xfff1ff00
cmp r10d, 0xf0
jb 0x1401faca4
inc r9
add rax, 0x14
cmp r8, r9
jne 0x1401fac0b
cmp byte [rbp + 0xbc], 0
je 0x1401fb13e
cmp bl, 4
sete dl
mov rcx, r14
call fcn.1401ffa18
mov rbp, qword [rsp + 0xb8]
cmp qword [rbp + 0x80], r15
jb 0x1401fac73
jmp 0x1401fb13e
mov rax, qword [rsp + 0xc0]
cmp rcx, r13
jae 0x1401fb104
lea rdx, [rax + 0x588]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x30], rax
cmp byte [rbp + 0xbc], 0
je 0x1401fb104
lea rax, [rcx + 1]
mov rdx, qword [rbp + 0x10]
cmp rdx, rax
jbe 0x1401fe90a
mov rsi, qword [rbp + 8]
lea rax, [rax + rax*4]
mov r14d, dword [rsi + rax*4]
cmp r14d, 0x110000
je 0x1401ff30d
mov eax, r14d
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef07ff
jbe 0x1401ff30d
mov edx, r14d
and edx, 0xfffffff0
lea rdi, [rcx + rcx*4]
lea rax, [rsi + rdi*4]
cmp edx, 0xfe00
je 0x1401fad6f
lea ecx, [r14 - 0xe0100]
cmp ecx, 0xf0
jb 0x1401fad6f
mov edx, dword [rax]
mov rcx, qword [rsp + 0x30]
call fcn.1401ede49
cmp ax, 1
jne 0x1401fad53
movzx eax, dx
mov dword [rsi + rdi*4 + 0xc], eax
mov rcx, rbp
call fcn.1401e430a
mov rcx, qword [rbp + 0x80]
lea r14, [rsp + 0xb0]
jmp 0x1401fb069
mov ecx, dword [rax]
cmp ecx, 0x110000
je 0x1401ff30d
mov eax, ecx
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef07ff
jbe 0x1401ff30d
mov rax, qword [rsp + 0x30]
mov r8, qword [rax + 0x580]
test r8, r8
je 0x1401fae67
mov dword [rsp + 0x40], ecx
mov rdx, qword [rsp + 0x58]
mov rax, qword [rdx + 0x10]
lea rcx, [rsp + 0x270]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x268], r8
mov r12, qword [rsp + 0x280]
test r12d, 0x7fff8
lea rax, [rsp + 0x1f0]
je 0x1401fae56
shr r12d, 3
cmp r12w, 1
adc r12d, 0
xor ebx, ebx
mov r8d, ebx
lea ebx, [r8 + 1]
mov word [rsp + 0x288], bx
mov rcx, rax
lea rdx, [rsp + 0x268]
call fcn.1402869b0
lea rax, [rsp + 0x1f0]
cmp qword [rsp + 0x1f0], 9
je 0x1401fae56
mov ecx, 0xd
lea rdi, [rsp + 0x290]
mov rsi, rax
rep movsq qword [rdi], qword [rsi]
cmp dword [rsp + 0x290], 8
je 0x1401faed4
cmp r12w, bx
jne 0x1401fadfd
mov ebx, dword [rsp + 0x88]
mov r12, qword [rsp + 0x38]
mov rax, qword [rsp + 0x30]
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x80]
cmp rdx, rcx
jbe 0x1401ff0e3
mov rsi, qword [rbp + 8]
lea rdi, [rcx + rcx*4]
mov edx, dword [rsi + rdi*4]
mov rcx, rax
call fcn.1401ede49
cmp ax, 1
jne 0x1401fae9b
movzx eax, dx
mov dword [rsi + rdi*4 + 0xc], eax
mov rcx, rbp
call fcn.1401e430a
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x80]
cmp rdx, rcx
lea r14, [rsp + 0xb0]
jbe 0x1401ff0e3
mov rsi, qword [rbp + 8]
lea rdi, [rcx + rcx*4]
mov edx, dword [rsi + rdi*4]
mov rcx, qword [rsp + 0x30]
jmp 0x1401fb07c
lea rcx, [rsp + 0x298]
mov edx, dword [rsp + 0x40]
mov r8d, r14d
call fcn.140286328
test ax, ax
je 0x1401fafe6
movzx eax, ax
cmp eax, 1
mov ebx, dword [rsp + 0x88]
mov r12, qword [rsp + 0x38]
jne 0x1401fae62
mov rdx, qword [rsp + 0x58]
mov rax, qword [rdx + 0x10]
lea rcx, [rsp + 0x1a0]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x198], rax
mov rsi, qword [rsp + 0x1b0]
test esi, 0x7fff8
lea r14, [rsp + 0xb0]
je 0x1401fae62
shr esi, 3
cmp si, 1
adc esi, 0
xor edi, edi
mov r8d, edi
lea edi, [r8 + 1]
mov word [rsp + 0x1b8], di
lea rcx, [rsp + 0xe0]
lea rdx, [rsp + 0x198]
call fcn.1402869b0
cmp qword [rsp + 0xe0], 9
je 0x1401fae62
movzx eax, byte [rsp + 0x142]
test eax, eax
je 0x1401fafc1
cmp eax, 3
jne 0x1401fafd8
movzx eax, word [rsp + 0x140]
cmp ax, 1
je 0x1401fafc1
cmp ax, 0xa
jne 0x1401fafd8
mov rax, qword [rsp + 0xe0]
and eax, 0xe
cmp eax, 6
jne 0x1401fafd8
lea rcx, [rsp + 0xe0]
mov edx, dword [rsp + 0x40]
call fcn.1400fe7e1
cmp ax, 1
je 0x1401faffa
cmp si, di
jne 0x1401faf59
jmp 0x1401fae62
mov ebx, dword [rsp + 0x88]
mov r12, qword [rsp + 0x38]
lea r14, [rsp + 0xb0]
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x80]
cmp rax, rcx
jbe 0x1401ff339
mov rax, qword [rbp + 8]
movzx edx, dx
lea rcx, [rcx + rcx*4]
mov dword [rax + rcx*4 + 0xc], edx
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x80]
cmp rdx, rcx
jbe 0x1401fe8fe
mov rax, qword [rbp + 8]
lea rcx, [rcx + rcx*4]
mov eax, dword [rax + rcx*4]
mov dword [rsp + 0xe0], eax
mov qword [rsp + 0x20], 1
mov edx, 2
mov r8d, 1
mov rcx, rbp
lea r9, [rsp + 0xe0]
call fcn.1401f0e66
jmp 0x1401fb096
cmp rcx, r13
mov rax, qword [rsp + 0x30]
jb 0x1401facc6
jmp 0x1401fb104
call fcn.1401ede49
cmp ax, 1
jne 0x1401fb08e
movzx eax, dx
mov dword [rsi + rdi*4 + 0xc], eax
mov rcx, rbp
call fcn.1401e430a
mov rcx, qword [rbp + 0x80]
cmp rcx, r15
jae 0x1401fb069
mov rdx, qword [rbp + 0x10]
cmp rdx, rcx
jbe 0x1401fe8fe
mov rsi, qword [rbp + 8]
lea rdi, [rcx + rcx*4]
mov edx, dword [rsi + rdi*4]
cmp edx, 0x110000
je 0x1401ff30d
mov eax, edx
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef07ff
jbe 0x1401ff30d
mov eax, edx
and eax, 0xfffffff0
cmp eax, 0xfe00
je 0x1401fb0fa
lea eax, [rdx - 0xe0100]
cmp eax, 0xef
ja 0x1401fb069
mov rcx, qword [rsp + 0x30]
jmp 0x1401fb07c
cmp rcx, r15
jae 0x1401fb13e
mov rdx, qword [rbp + 0x10]
cmp rdx, rcx
jbe 0x1401ff0e3
mov rsi, qword [rbp + 8]
lea rdi, [rcx + rcx*4]
mov edx, dword [rsi + rdi*4]
mov rcx, rax
call fcn.1401ede49
cmp ax, 1
jne 0x1401fb136
movzx eax, dx
mov dword [rsi + rdi*4 + 0xc], eax
mov rcx, rbp
call fcn.1401e430a
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rcx + 0x80]
cmp rdi, r12
jae 0x1401fb169
mov dword [rsp + 0x70], 0
cmp byte [rcx + 0xbc], 0
jne 0x1401faa38
jmp 0x1401fb171
mov dword [rsp + 0x70], 0
call fcn.1401edf1e
mov rax, qword [rsp + 0xb8]
test byte [rsp + 0x70], 1
jne 0x1401fb4d2
mov rbx, qword [rax + 0x88]
test rbx, rbx
je 0x1401fb4d2
xor ebp, ebp
mov qword [rsp + 0x180], rbx
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x10]
cmp rdx, rbp
jbe 0x1401ff22d
mov rax, qword [rax + 8]
lea rcx, [rbp*4]
add rcx, rbp
movzx esi, word [rax + rcx*4 + 0x10]
mov ecx, esi
and ecx, 0x1f
call fcn.1401df55f
cmp esi, 0x100
jb 0x1401fb4be
movzx eax, al
add rax, 0xfffffffffffffff8
cmp rax, 0xfffffffffffffffd
jb 0x1401fb4be
lea rax, [rbp*4]
lea r12, [rax + rax*4]
lea rsi, [rax + rax*4]
add rsi, 0x24
mov rax, rbp
mov r14, rax
lea rcx, [rax + 1]
cmp rcx, rbx
jae 0x1401fb25e
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x10]
cmp rdx, rcx
jbe 0x1401ff10e
mov rax, qword [rax + 8]
movzx edi, word [rax + rsi]
mov ecx, edi
and ecx, 0x1f
call fcn.1401df55f
cmp edi, 0x100
jb 0x1401fb25a
movzx ecx, al
add rcx, 0xfffffffffffffff8
add rsi, 0x14
lea rax, [r14 + 1]
cmp rcx, 0xfffffffffffffffd
jae 0x1401fb20a
lea rcx, [r14 + 1]
mov rax, rcx
sub rax, rbp
cmp rax, 0x20
ja 0x1401fb4b5
mov qword [rsp + 0xa8], rcx
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x98], rax
cmp byte [rax + 0xbf], 0
jne 0x1401ff522
lea rbx, [rbp + 1]
cmp rbx, r14
ja 0x1401fb480
mov rax, qword [rsp + 0x98]
mov r10, qword [rax + 8]
mov rdx, qword [rax + 0x10]
lea rcx, [r12 + 0x10]
mov r9, rbp
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0x50], r12
lea rax, [rbx + rbx*4]
mov qword [rsp + 0x60], rax
lea rax, [r10 + rax*4]
add rax, 0x10
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], r10
lea rdi, [r10 + rcx]
xor eax, eax
mov qword [rsp + 0x58], r9
mov r14, r9
mov qword [rsp + 0x30], rbx
mov r15, rax
lea r13, [r14 + 1]
cmp r13, rbp
jbe 0x1401fb395
cmp rdx, r14
jbe 0x1401fec43
cmp rdx, rbx
jbe 0x1401fec52
mov qword [rsp + 0x40], r13
mov r13, rdx
mov rbx, rbp
movzx r12d, word [rdi]
mov ecx, r12d
and ecx, 0x1f
call fcn.1401df55f
mov ebp, eax
mov rax, qword [rsp + 0x38]
movzx esi, word [rax]
mov ecx, esi
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
cmp rax, 3
jb 0x1401fb35c
xor esi, esi
jmp 0x1401fb35f
shr esi, 8
movzx eax, bpl
add rax, 0xfffffffffffffffb
cmp rax, 2
mov rbp, rbx
mov rdx, r13
mov rbx, qword [rsp + 0x30]
ja 0x1401fb390
shr r12d, 8
dec r14
add rdi, 0xffffffffffffffec
lea rax, [r15 - 1]
cmp sil, r12b
jb 0x1401fb2fb
mov r13, qword [rsp + 0x40]
cmp rbx, r13
mov r12, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x80]
je 0x1401fb458
lea r8, [r9 + 2]
mov rsi, qword [rsp + 0x98]
mov rcx, rsi
mov rdx, r13
call fcn.1401de56a
mov rdx, qword [rsi + 0x10]
cmp rdx, rbx
jbe 0x1401ff1f1
mov r10, qword [rsi + 8]
mov rcx, qword [rsp + 0x60]
mov eax, dword [r10 + rcx*4 + 0x10]
mov dword [rsp + 0xf0], eax
movups xmm0, xmmword [r10 + rcx*4]
movaps xmmword [rsp + 0xe0], xmm0
cmp rbx, r13
mov r9, qword [rsp + 0x58]
je 0x1401fb42b
lea rax, [r10 + r12]
mov rcx, r9
cmp rdx, rcx
jbe 0x1401ff0cb
mov r8d, dword [rax + 0x10]
mov dword [rax + 0x24], r8d
movups xmm0, xmmword [rax]
movups xmmword [rax + 0x14], xmm0
add rax, 0xffffffffffffffec
dec rcx
inc r15
jne 0x1401fb407
cmp rdx, r13
jbe 0x1401ff1fd
lea rax, [r13*4]
add rax, r13
mov ecx, dword [rsp + 0xf0]
mov dword [r10 + rax*4 + 0x10], ecx
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [r10 + rax*4], xmm0
lea rax, [rbx + 1]
inc r9
mov rcx, qword [rsp + 0x78]
add rcx, 0x14
add r12, 0x14
mov r14, qword [rsp + 0xa0]
cmp rbx, r14
mov rbx, rax
jne 0x1401fb2c0
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rcx + 0xc8]
mov rax, qword [rax + 0x48]
test rax, rax
mov rbx, qword [rsp + 0x180]
mov r9, qword [rsp + 0xa8]
je 0x1401fb4b5
mov rdx, qword [rsp + 0xb8]
mov r8, rbp
call rax
add r14, 2
mov rbp, r14
jmp 0x1401fb4c1
inc rbp
cmp rbp, rbx
jb 0x1401fb1a3
mov rax, qword [rsp + 0xb8]
test byte [rax + 0xb0], 0x20
je 0x1401fb5ce
mov rax, qword [rax + 0x88]
xor r14d, r14d
sub rax, 1
mov r15d, 0
cmovae r15, rax
cmp r15, 2
jb 0x1401fb5ce
mov esi, 1
xor r12d, r12d
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x10]
cmp rdx, rsi
jbe 0x1401ff1e2
lea rdi, [rsi + 1]
mov rax, qword [rax + 8]
cmp dword [rax + r12 + 0x14], 0x34f
jne 0x1401fb5be
movzx ebp, word [rax + r12 + 0x10]
mov ecx, ebp
and ecx, 0x1f
call fcn.1401df55f
mov ebx, eax
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x10]
cmp rdx, rdi
jbe 0x1401ff236
mov rax, qword [rax + 8]
movzx r13d, word [rax + r12 + 0x38]
mov ecx, r13d
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
shr r13d, 8
cmp rax, 3
cmovae r13d, r14d
test r13b, r13b
je 0x1401fb59e
movzx eax, bl
add rax, 0xfffffffffffffff8
cmp rax, 0xfffffffffffffffd
jb 0x1401fb59e
shr ebp, 8
cmp r13b, bpl
jb 0x1401fb5be
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x10]
cmp rdx, rsi
jbe 0x1401ff26c
mov rax, qword [rax + 8]
and word [rax + r12 + 0x24], 0xffbf
add r12, 0x14
mov rsi, rdi
cmp rdi, r15
jb 0x1401fb509
test byte [rsp + 0x70], 1
jne 0x1401fb966
mov rcx, qword [rsp + 0xb8]
cmp byte [rcx + 0xbc], 0
je 0x1401fb966
cmp byte [rsp + 0x88], 4
je 0x1401fb966
movzx eax, byte [rsp + 0x88]
dec rax
cmp rax, 1
ja 0x1401fb966
mov r15, qword [rcx + 0x88]
mov word [rcx + 0xbd], 1
mov byte [rcx + 0xbf], 0
xor r12d, r12d
mov qword [rcx + 0x80], r12
mov qword [rcx + 0x90], r12
call fcn.1401e430a
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rcx + 0x80]
cmp rax, r15
jae 0x1401fb961
lea rdi, [rsp + 0xb0]
xor esi, esi
cmp byte [rcx + 0xbc], 0
je 0x1401fb961
mov rdx, qword [rcx + 0x10]
cmp rdx, rax
jbe 0x1401fe90a
mov r14, qword [rcx + 8]
lea r13, [rax + rax*4]
movzx ecx, word [r14 + r13*4 + 0x10]
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
cmp rax, 3
jae 0x1401fb8c8
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x90]
lea rcx, [rdx - 1]
cmp rsi, rcx
je 0x1401fb757
sub rdx, 1
mov ecx, 0
cmovae rcx, rdx
mov r9b, byte [rax + 0xbe]
lea r8, [rax + 0x18]
test r9b, r9b
mov rdx, r8
cmove rdx, rax
mov rdx, qword [rdx + 0x10]
cmp rcx, rdx
jae 0x1401ff2dd
lea rbp, [r14 + r13*4]
add rbp, 0x10
test r9b, r9b
cmove r8, rax
mov rax, qword [r8 + 8]
lea rcx, [rcx + rcx*4]
movzx ebx, word [rax + rcx*4 + 0x10]
mov ecx, ebx
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
shr ebx, 8
cmp rax, 3
cmovae ebx, r12d
movzx ebp, word [rbp]
mov ecx, ebp
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
cmp rax, 2
ja 0x1401fb8c8
shr ebp, 8
cmp bl, bpl
jae 0x1401fb8c8
mov rax, qword [rsp + 0xb8]
mov r8b, byte [rax + 0xbe]
lea rcx, [rax + 0x18]
test r8b, r8b
mov rdx, rcx
cmove rdx, rax
mov rdx, qword [rdx + 0x10]
cmp rsi, rdx
jae 0x1401ff2a8
test r8b, r8b
cmove rcx, rax
mov rax, qword [rcx + 8]
lea rbx, [rsi + rsi*4]
mov edx, dword [rax + rbx*4]
cmp edx, 0x110000
je 0x1401ff30d
mov eax, edx
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef07ff
jbe 0x1401ff30d
lea rax, [r14 + r13*4]
mov r8d, dword [rax]
cmp r8d, 0x110000
je 0x1401ff30d
mov eax, r8d
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef07ff
jbe 0x1401ff30d
mov rcx, rdi
call qword [rsp + 0xd0]
cmp eax, 0x110000
je 0x1401fb8c8
mov ebp, eax
mov rcx, qword [rsp + 0x48]
mov edx, eax
call fcn.1401ede49
cmp ax, 1
jne 0x1401fb8c8
mov r14d, edx
mov rcx, qword [rsp + 0xb8]
call fcn.1401e430a
mov rcx, qword [rsp + 0xb8]
cmp byte [rcx + 0xbc], 0
je 0x1401fb966
mov r8, qword [rcx + 0x90]
mov rdx, rsi
call fcn.1401df0da
mov rax, qword [rsp + 0xb8]
dec qword [rax + 0x90]
mov ecx, dword [rax + 0xb0]
mov dword [rsp + 0xe0], ecx
mov r8b, byte [rax + 0xbe]
lea rcx, [rax + 0x18]
test r8b, r8b
mov rdx, rcx
cmove rdx, rax
mov rdx, qword [rdx + 0x10]
cmp rsi, rdx
jae 0x1401ff2b4
test r8b, r8b
cmove rcx, rax
mov rax, qword [rcx + 8]
lea rcx, [rax + rbx*4]
mov dword [rcx], ebp
movzx eax, r14w
mov dword [rcx + 0xc], eax
lea rdx, [rsp + 0xe0]
call fcn.1401ff5e5
mov eax, dword [rsp + 0xe0]
mov rcx, qword [rsp + 0xb8]
mov dword [rcx + 0xb0], eax
mov rax, qword [rcx + 0x80]
cmp rax, r15
jb 0x1401fb660
jmp 0x1401fb961
mov rcx, qword [rsp + 0xb8]
call fcn.1401e430a
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x90]
sub rdx, 1
mov ecx, 0
cmovae rcx, rdx
mov r9b, byte [rax + 0xbe]
lea r8, [rax + 0x18]
test r9b, r9b
mov rdx, r8
cmove rdx, rax
mov rdx, qword [rdx + 0x10]
cmp rcx, rdx
jae 0x1401ff2dd
test r9b, r9b
cmove r8, rax
mov rax, qword [r8 + 8]
lea rcx, [rcx + rcx*4]
movzx ebx, word [rax + rcx*4 + 0x10]
mov ecx, ebx
and ecx, 0x1f
call fcn.1401df55f
mov rcx, qword [rsp + 0xb8]
cmp ebx, 0x100
jb 0x1401fb952
movzx eax, al
add rax, 0xfffffffffffffff8
cmp rax, 0xfffffffffffffffd
jae 0x1401fb8b3
mov rsi, qword [rcx + 0x90]
dec rsi
jmp 0x1401fb8b3
call fcn.1401edf1e
mov rax, qword [rsp + 0x90]
mov r12, qword [rax]
mov r15, qword [rax + 0x10]
test byte [r15 + 0xb0], 1
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], r12
je 0x1401fbbb4
cmp byte [r12 + 0xf9], 0
je 0x1401fbbb4
movzx eax, byte [r15 + 0xc1]
mov ecx, 0x15
bt ecx, eax
jae 0x1401fb9ca
mov esi, dword [r12 + 0xe0]
mov ebp, dword [r12 + 0xe8]
or ebp, esi
or esi, dword [r12 + 0xe4]
jmp 0x1401fb9e4
mov esi, dword [r12 + 0xe0]
mov ebp, dword [r12 + 0xe4]
or ebp, esi
or esi, dword [r12 + 0xe8]
mov rax, qword [r15 + 0x88]
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1401fbbb4
xor edi, edi
mov dword [rsp + 0x58], esi
mov rdx, qword [r15 + 0x10]
cmp rdx, rdi
jbe 0x1401ff1af
mov rax, qword [r15 + 8]
lea rcx, [rdi + rdi*4]
cmp dword [rax + rcx*4], 0x2044
jne 0x1401fba78
mov qword [rsp + 0x48], rcx
lea r12, [rdi + 1]
lea rax, [rdi*4]
lea r13, [rax + rax*4]
lea rbx, [rax + rax*4]
add rbx, 0xfffffffffffffffc
xor ecx, ecx
mov r14, rcx
cmp r12, 1
je 0x1401fba83
lea rcx, [r12 - 2]
mov rdx, qword [r15 + 0x10]
cmp rdx, rcx
jbe 0x1401ff0d7
mov rax, qword [r15 + 8]
movzx ecx, word [rax + rbx]
and ecx, 0x1f
call fcn.1401df55f
dec r12
add rbx, 0xffffffffffffffec
lea rcx, [r14 - 0x14]
cmp al, 8
je 0x1401fba3c
jmp 0x1401fba86
inc rdi
mov r15, rdi
jmp 0x1401fbba1
xor r12d, r12d
lea r15, [rdi + 1]
mov rbx, r15
cmp r15, qword [rsp + 0x38]
jae 0x1401fbad8
lea rsi, [r13 + 0x24]
mov rbx, r15
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
cmp rdx, rbx
jbe 0x1401ff102
mov rax, qword [rax + 8]
movzx ecx, word [rax + rsi]
and ecx, 0x1f
call fcn.1401df55f
cmp al, 8
jne 0x1401fbad4
inc rbx
add rsi, 0x14
cmp qword [rsp + 0x38], rbx
jne 0x1401fba9b
mov rbx, qword [rsp + 0x38]
mov esi, dword [rsp + 0x58]
mov rax, rbx
sub rax, r12
cmp rax, 2
jb 0x1401fbaf4
mov rcx, qword [rsp + 0x30]
mov rdx, r12
mov r8, rbx
call fcn.1401de7d4
cmp r12, rdi
ja 0x1401ff49e
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
cmp rdx, rdi
jb 0x1401ff4b0
cmp r12, rdi
mov r12, qword [rsp + 0x40]
je 0x1401fbb3c
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 8]
add rax, r13
add rax, 4
or dword [rax + r14], ebp
add r14, 0x14
jne 0x1401fbb29
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
cmp rdx, rdi
jbe 0x1401ff224
mov eax, dword [r12 + 0xe0]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rdx + 8]
mov r8, qword [rsp + 0x48]
or dword [rcx + r8*4 + 4], eax
cmp r15, rbx
ja 0x1401ff4bf
mov rdx, qword [rdx + 0x10]
cmp rdx, rbx
jb 0x1401ff4d1
cmp r15, rbx
je 0x1401fbba1
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 8]
lea rcx, [rbx + rbx*4]
lea rcx, [rcx*4 - 0x14]
or dword [rax + r13 + 0x18], esi
add r13, 0x14
cmp rcx, r13
jne 0x1401fbb90
mov r15, rbx
mov rdi, r15
cmp r15, qword [rsp + 0x38]
mov r15, qword [rsp + 0x30]
jb 0x1401fb9ff
mov rax, qword [r12 + 0xc8]
mov rax, qword [rax + 0x40]
test rax, rax
je 0x1401fbbd9
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rcx + 8]
mov rcx, r12
mov r8, r15
call rax
mov rax, qword [r12 + 0xb8]
test rax, rax
je 0x1401fbd1b
mov r8, qword [r12 + 0xb0]
shl rax, 4
add rax, r8
mov r9d, dword [r8 + 8]
mov r10d, dword [r8 + 0xc]
test r9d, r9d
jne 0x1401fbc10
cmp r10d, 0xffffffff
je 0x1401fbd0e
mov rcx, qword [r12 + 0x10]
test rcx, rcx
je 0x1401fbd0e
mov r11d, dword [r8]
mov rdx, qword [r12 + 8]
xor esi, esi
mov rdi, rcx
shr rcx, 1
add rcx, rsi
lea rbx, [rcx + rcx*2]
shl rbx, 4
mov ebp, dword [rdx + rbx + 0x18]
cmp ebp, r11d
je 0x1401fbc5e
lea rbx, [rcx + 1]
cmp ebp, r11d
cmova rdi, rcx
cmovb rsi, rbx
mov rcx, rdi
sub rcx, rsi
ja 0x1401fbc2b
jmp 0x1401fbd0e
mov r11d, dword [rdx + rbx + 0x20]
mov cl, byte [rdx + rbx + 0x1c]
mov esi, dword [r8 + 4]
shl esi, cl
test r11d, r11d
je 0x1401fbd0e
and esi, r11d
not r11d
mov rcx, qword [r15 + 0x88]
test r9d, r9d
jne 0x1401fbcca
cmp r10d, 0xffffffff
jne 0x1401fbcca
mov rdx, qword [r15 + 0x10]
cmp rdx, rcx
jb 0x1401ff4f5
test rcx, rcx
je 0x1401fbd0e
mov rdx, qword [r15 + 8]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor r9d, r9d
mov r10d, dword [rdx + r9 + 4]
and r10d, r11d
or r10d, esi
mov dword [rdx + r9 + 4], r10d
add r9, 0x14
cmp rcx, r9
jne 0x1401fbcaf
jmp 0x1401fbd0e
mov rdx, qword [r15 + 0x10]
cmp rdx, rcx
jb 0x1401ff501
test rcx, rcx
je 0x1401fbd0e
mov rdx, qword [r15 + 8]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor edi, edi
mov ebx, dword [rdx + rdi + 8]
cmp ebx, r9d
jb 0x1401fbd05
cmp ebx, r10d
jae 0x1401fbd05
mov ebx, dword [rdx + rdi + 4]
and ebx, r11d
or ebx, esi
mov dword [rdx + rdi + 4], ebx
add rdi, 0x14
cmp rcx, rdi
jne 0x1401fbcea
add r8, 0x10
cmp r8, rax
jne 0x1401fbbf9
cmp byte [r12 + 0xfe], 0
je 0x1401fbec9
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rax + 0x88]
cmp rdx, rcx
jb 0x1401ff53a
test rcx, rcx
je 0x1401fbec9
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 8]
shl rcx, 2
lea rbx, [rcx + rcx*4]
xor r15d, r15d
mov ebp, 0x18000479
mov r12d, 0x38400079
lea r13, [0x1402efc20]
movzx ecx, word [rdi + r15 + 0x10]
and ecx, 0x1f
call fcn.1401df55f
cmp al, 5
jne 0x1401fbebc
movzx esi, word [rdi + r15 + 0x10]
mov ecx, esi
and ecx, 0x1f
call fcn.1401df55f
movzx ecx, al
add rcx, 0xfffffffffffffffb
shr esi, 8
mov eax, esi
cmp rcx, 3
jb 0x1401fbdac
xor eax, eax
cmp al, 0xc7
ja case.0x1401fbdf9.4
mov ecx, dword [rdi + r15]
mov edx, ecx
and edx, 0xffffff00
cmp edx, 0xe00
jne 0x1401fbddb
test al, al
je 0x1401fbe03
mov sil, 0xde
cmp ecx, 0xe3a
je case.0x1401fbdf9.4
movzx ecx, al
cmp ecx, 0x6a
jg 0x1401fbe25
add ecx, 0xfffffffd
cmp ecx, 0x21
ja case.default.0x1401fbdf9
movsxd rcx, dword [r13 + rcx*4]
add rcx, r13
mov esi, eax
jmp rcx
mov sil, 0xdc
jmp case.0x1401fbdf9.4
lea eax, [rcx - 0xe31]
cmp eax, 0x1d
jbe 0x1401fbe40
xor esi, esi
add ecx, 0xfffff14f
cmp ecx, 0x1c
ja case.0x1401fbdf9.4
bt ebp, ecx
jae 0x1401fbe7b
mov sil, 0xe6
jmp case.0x1401fbdf9.4
cmp ecx, 0x80
jg 0x1401fbe4b
cmp ecx, 0x6b
je case.0x1401fbdf9.10
cmp ecx, 0x76
je case.0x1401fbdf9.15
mov esi, eax
cmp ecx, 0x7a
je case.0x1401fbdf9.26
jmp case.0x1401fbdf9.4
bt r12d, eax
jae 0x1401fbe0e
mov sil, 0xe8
jmp case.0x1401fbdf9.4
cmp ecx, 0x81
je case.0x1401fbdf9.15
cmp ecx, 0x83
je case.0x1401fbdf9.15
mov esi, eax
cmp ecx, 0x84
je case.0x1401fbdf9.26
jmp case.0x1401fbdf9.4
mov sil, 0xe4
jmp case.0x1401fbdf9.4
mov sil, 0xde
jmp case.0x1401fbdf9.4
mov sil, 0xc
jmp case.0x1401fbdf9.4
mov sil, 0xd6
jmp case.0x1401fbdf9.4
cmp ecx, 0xb
je case.0x1401fbdf9.15
jmp case.0x1401fbdf9.4
mov esi, eax
movzx r14d, word [rdi + r15 + 0x10]
mov ecx, r14d
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
cmp rax, 2
ja 0x1401fbebc
movzx eax, r14b
movzx ecx, sil
shl ecx, 8
movzx eax, ax
or eax, ecx
mov word [rdi + r15 + 0x10], ax
add r15, 0x14
cmp rbx, r15
jne 0x1401fbd72
mov r15, qword [rsp + 0x30]
mov rdx, qword [r15 + 0x10]
mov rcx, qword [r15 + 0x88]
cmp rdx, rcx
jb 0x1401ff4e9
test rcx, rcx
je 0x1401fbf5d
mov rax, qword [r15 + 8]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor edx, edx
mov r12, qword [rsp + 0x40]
mov r8d, dword [rax + rdx + 0xc]
mov dword [rax + rdx], r8d
add rdx, 0x14
cmp rcx, rdx
jne 0x1401fbefa
mov rdx, qword [r15 + 0x10]
mov rcx, qword [r15 + 0x88]
cmp rdx, rcx
jb 0x1401ff546
mov rax, qword [rsp + 0x90]
mov r14, qword [rax + 8]
test rcx, rcx
je 0x1401fbf6e
mov rsi, qword [r15 + 8]
lea rax, [rcx + rcx*4]
lea rdi, [rsi + rax*4]
movzx edx, word [rsi]
mov rcx, r14
call fcn.1401b7f0f
mov word [rsi + 0xc], ax
mov word [rsi + 0xe], 0
add rsi, 0x14
cmp rsi, rdi
jne 0x1401fbf3d
jmp 0x1401fbf6e
mov rax, qword [rsp + 0x90]
mov r14, qword [rax + 8]
mov r12, qword [rsp + 0x40]
cmp byte [r12 + 0xfd], 0
je 0x1401fbfd8
mov rdx, qword [r15 + 0x10]
mov rcx, qword [r15 + 0x88]
cmp rdx, rcx
jb 0x1401ff552
test rcx, rcx
je 0x1401fbfd8
mov rsi, qword [r15 + 8]
shl rcx, 2
lea rdi, [rcx + rcx*4]
xor ebx, ebx
movzx ecx, word [rsi + rbx + 0x10]
and ecx, 0x1f
call fcn.1401df55f
cmp al, 5
jne 0x1401fbfc6
test byte [rsi + rbx + 0x10], 0x20
mov ax, 8
je 0x1401fbfca
movzx ecx, word [rsi + rbx + 0xc]
and ecx, 0x10
jne 0x1401fbfca
mov ax, 2
mov word [rsi + rbx + 0xc], ax
add rbx, 0x14
cmp rdi, rbx
jne 0x1401fbfa0
cmp byte [r12 + 0x104], 0
mov qword [rsp + 0x38], r14
je 0x1401fc1da
mov rax, qword [r14 + 0x820]
test rax, rax
je 0x1401fc549
mov rcx, qword [r14 + 0x828]
mov edx, dword [r14 + 0x830]
movzx r8d, word [r14 + 0x834]
lea r9, [rsp + 0x1f0]
mov qword [r9], rax
mov qword [r9 + 8], rcx
xor eax, eax
mov qword [r9 + 0x10], rax
mov dword [r9 + 0x18], 0
mov dword [r9 + 0x1c], edx
mov word [r9 + 0x20], r8w
mov qword [r9 + 0x28], rax
mov r15, qword [r12 + 0x98]
mov rsi, qword [r12 + 0xa0]
lea rbx, [rsp + 0xe0]
lea r12, [rsp + 0x290]
lea r13, [rsp + 0x198]
mov ebp, 0x15
mov rdi, qword [rsp + 0x30]
mov rcx, rbx
lea rdx, [rsp + 0x1f0]
call fcn.14028c163
cmp qword [rsp + 0xe0], 0
je 0x1401fc544
mov r8, qword [rsp + 0xf0]
mov r9, qword [rsp + 0xf8]
mov eax, dword [rsp + 0x100]
movzx edx, word [rsp + 0x104]
mov rcx, qword [rsp + 0x218]
lea r10, [rcx + 1]
mov qword [rsp + 0x218], r10
cmp rsi, rcx
jbe 0x1401ff13b
mov r14d, dword [r15 + rcx*4]
mov qword [rsp + 0x198], r8
mov qword [rsp + 0x1a0], r9
mov qword [rsp + 0x1a8], 0
mov dword [rsp + 0x1b0], 0
mov dword [rsp + 0x1b4], eax
mov word [rsp + 0x1b8], dx
mov rcx, r12
mov rdx, r13
call fcn.14028b96d
cmp word [rsp + 0x290], 0xb
je 0x1401fc06e
mov r8d, 0x90
mov rcx, rbx
mov rdx, r12
call sub.msvcrt.dll_memcpy
test dword [rsp + 0x168], r14d
je 0x1401fc103
mov al, byte [rsp + 0x16c]
test al, 0x20
jne 0x1401fc15f
mov rcx, qword [rsp + 0x30]
mov cl, byte [rcx + 0xc1]
dec cl
cmp cl, 2
jae 0x1401fc15b
test al, al
jns 0x1401fc15f
jmp 0x1401fc103
test al, al
jns 0x1401fc103
test al, 0x10
jne 0x1401fc18f
mov rcx, qword [rsp + 0x30]
movzx ecx, byte [rcx + 0xc1]
bt ebp, ecx
jae 0x1401fc18f
test al, 0x40
je 0x1401fc193
mov rcx, rbx
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
call fcn.1401ffca0
jmp 0x1401fc103
test al, 0x40
je 0x1401fc178
mov r8, qword [rdi + 0x88]
test r8, r8
je 0x1401fc1a9
mov rcx, rdi
xor edx, edx
call fcn.1401ff8fc
mov rcx, rbx
mov rdx, rdi
mov r8, qword [rsp + 0x38]
call fcn.1401ffca0
mov r8, qword [rdi + 0x88]
test r8, r8
je 0x1401fc103
mov rcx, qword [rsp + 0x30]
xor edx, edx
call fcn.1401ff8fc
jmp 0x1401fc103
mov rbp, qword [r14 + 0x998]
mov dword [rsp + 0x106], 0x10100
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], r15
mov dword [rsp + 0xf8], 1
mov word [rsp + 0x104], 0xffff
movabs rax, 0x100000000
mov qword [rsp + 0xfc], rax
mov qword [rsp + 0xe0], 6
mov rdx, qword [r12 + 0x58]
test rdx, rdx
je 0x1401fc544
movabs rcx, 0x8000000000000000
mov rax, qword [rsp + 0x38]
lea rdi, [rax + 0x998]
mov rsi, qword [r12 + 0x50]
mov rax, rdx
shl rax, 4
add rax, rsi
mov qword [rsp + 0x80], rax
xor eax, eax
cmp rbp, rcx
mov r14d, 0
cmove rdi, rax
lea rax, [r12 + 0x28]
mov qword [rsp + 0x60], rax
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0x78], rax
mov rax, qword [r12 + 0x28]
mov qword [rsp + 0x48], rax
xor r15d, r15d
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rdx
mov rcx, r15
sub rcx, 1
jae 0x1401fc2b9
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
xor ecx, ecx
jmp 0x1401fc2ee
cmp rdx, rcx
jbe 0x1401ff197
shl rcx, 4
mov rax, r15
shl rax, 4
mov r8, qword [rsp + 0x58]
add rax, r8
cmp rdx, r15
cmovbe rax, qword [rsp + 0x60]
mov rcx, qword [r8 + rcx]
mov rax, qword [rax]
cmp rcx, rax
ja 0x1401ff43c
cmp qword [rsp + 0x48], rax
jb 0x1401ff463
cmp rcx, rax
je 0x1401fc50d
lea rax, [rax + rax*2]
mov rdx, qword [rsp + 0x78]
lea rbx, [rdx + rax*4]
lea rax, [rcx + rcx*2]
lea r12, [rdx + rax*4]
movzx eax, word [r12 + 4]
mov word [rsp + 0x104], ax
mov eax, dword [r12]
mov dword [rsp + 0xf8], eax
mov cl, byte [r12 + 7]
mov byte [rsp + 0x108], cl
mov cl, byte [r12 + 6]
mov byte [rsp + 0x107], cl
mov cl, byte [r12 + 8]
mov byte [rsp + 0x109], cl
movabs rcx, 0x8000000000000000
cmp rbp, rcx
je 0x1401fc500
movzx ecx, word [r12 + 4]
mov rdx, qword [rdi + 8]
imul r8, rcx, 0x38
cmp qword [rdi + 0x10], rcx
lea r13, [rdx + r8]
cmovbe r13, r14
jbe 0x1401fc500
test eax, eax
je 0x1401fc500
mov rcx, qword [rsp + 0xf0]
mov rax, qword [rcx + 0x88]
test rax, rax
je 0x1401fc500
mov r9d, dword [rdx + r8 + 0x30]
mov dword [rsp + 0xfc], r9d
cmp byte [rdx + r8 + 0x34], 0
je 0x1401fc446
cmp byte [rcx + 0xbd], 0
jne 0x1401ff44b
dec rax
mov qword [rcx + 0x80], rax
mov rdx, qword [rcx + 0x10]
cmp rdx, rax
jbe 0x1401fe90a
mov r8, qword [rcx + 8]
lea rax, [rax + rax*4]
mov ecx, dword [rsp + 0xf8]
test dword [r8 + rax*4 + 4], ecx
je 0x1401fc42d
mov r9d, dword [rsp + 0xfc]
mov rcx, qword [rsp + 0xe8]
mov edx, dword [r8 + rax*4]
movzx r8d, word [r8 + rax*4 + 0xc]
call fcn.1401bc081
test al, al
je 0x1401fc42d
mov rcx, r13
lea rdx, [rsp + 0xe0]
call fcn.1401e0b21
mov rcx, qword [rsp + 0xf0]
mov rax, qword [rcx + 0x80]
test rax, rax
jne 0x1401fc3cd
jmp 0x1401fc500
mov word [rcx + 0xbd], 1
mov byte [rcx + 0xbf], 0
xor eax, eax
mov qword [rcx + 0x90], rax
xor r14d, r14d
mov qword [rcx + 0x80], rax
xor eax, eax
cmp byte [rcx + 0xbc], 0
je 0x1401fc4fb
mov rdx, qword [rcx + 0x10]
cmp rdx, rax
jbe 0x1401fe90a
mov r8, qword [rcx + 8]
lea rax, [rax + rax*4]
mov ecx, dword [rsp + 0xf8]
test dword [r8 + rax*4 + 4], ecx
je 0x1401fc4d2
mov r9d, dword [rsp + 0xfc]
mov rcx, qword [rsp + 0xe8]
mov edx, dword [r8 + rax*4]
movzx r8d, word [r8 + rax*4 + 0xc]
call fcn.1401bc081
test al, al
je 0x1401fc4d2
mov rcx, r13
lea rdx, [rsp + 0xe0]
call fcn.1401e0b21
test al, al
jne 0x1401fc4df
mov rcx, qword [rsp + 0xf0]
call fcn.1401e430a
mov rcx, qword [rsp + 0xf0]
mov rax, qword [rcx + 0x80]
cmp rax, qword [rcx + 0x88]
jb 0x1401fc46b
call fcn.1401edf1e
add r12, 0xc
cmp r12, rbx
jne 0x1401fc317
mov rax, qword [rsi + 8]
test rax, rax
mov rcx, qword [rsp + 0x40]
je 0x1401fc52a
mov r8, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x38]
call rax
add rsi, 0x10
inc r15
cmp rsi, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x50]
jne 0x1401fc2a4
mov r15, qword [rsp + 0x30]
mov word [r15 + 0xbd], 0
mov byte [r15 + 0xbf], 1
mov qword [r15 + 0x90], 0
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1401fc5a3
mov rcx, qword [r15 + 0x20]
lea rax, [rax + rax*4]
lea rax, [rax*4 - 0x14]
movabs rdx, 0xcccccccccccccccd
mul rdx
shr rdx, 4
lea rax, [rdx + rdx*4]
lea r8, [rax*4 + 0x14]
xor edx, edx
call sub.msvcrt.dll_memset
mov rbx, qword [r15 + 0x88]
mov al, byte [r15 + 0xc1]
dec al
cmp al, 2
jae 0x1401fc60c
mov rdx, qword [r15 + 0x10]
cmp rdx, rbx
jb 0x1401ff55e
mov rdx, qword [r15 + 0x28]
cmp rdx, rbx
jb 0x1401ff567
test rbx, rbx
mov r12, qword [rsp + 0x38]
je 0x1401fc97b
mov rsi, qword [r15 + 8]
mov rdi, qword [r15 + 0x20]
xor r14d, r14d
movzx edx, word [rsi + r14]
mov rcx, r12
xor r8d, r8d
call fcn.1401ef64b
mov dword [rdi + r14], eax
add r14, 0x14
dec rbx
jne 0x1401fc5ea
jmp 0x1401fc97b
mov rdx, qword [r15 + 0x10]
cmp rdx, rbx
jb 0x1401ff570
mov rdx, qword [r15 + 0x28]
cmp rdx, rbx
jb 0x1401ff579
test rbx, rbx
mov r14, qword [rsp + 0x38]
je 0x1401fc97b
mov rdi, qword [r15 + 8]
mov rbp, qword [r15 + 0x20]
lea rax, [r14 + 0x320]
mov qword [rsp + 0x40], rax
lea rax, [r14 + 0x950]
mov qword [rsp + 0x48], rax
movss xmm6, dword [0x1402efc14]
movss xmm7, dword [0x1402efc18]
movss xmm8, dword [0x1402efc1c]
movss xmm9, dword [0x1402efc10]
xor r12d, r12d
lea rax, [r12*4]
lea rsi, [rax + rax*4]
mov r13d, dword [rdi + rsi]
mov rcx, r14
mov edx, r13d
mov r8b, 1
call fcn.1401ef64b
neg eax
mov dword [rbp + rsi + 4], eax
mov rcx, r14
mov edx, r13d
xor r8d, r8d
call fcn.1401ef64b
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
sub dword [rbp + rsi + 8], ecx
mov rcx, r14
mov edx, r13d
call fcn.140293056
test ax, ax
je 0x1401fc6d0
movsx eax, dx
jmp 0x1401fc962
lea rcx, [rsp + 0xe0]
mov rdx, r14
mov r8d, r13d
call fcn.1401ddff5
mov esi, dword [rsp + 0xe0]
test esi, esi
je 0x1401fc6f5
mov esi, dword [rsp + 0xe8]
mov rcx, qword [r14 + 0x8c0]
mov eax, dword [r14 + 0x320]
test rcx, rcx
je 0x1401fc745
cmp dword [r14 + 0x2c8], 2
jne 0x1401fc745
cmp eax, 2
jne 0x1401fc745
lea rcx, [rsp + 0xe0]
mov rdx, r14
mov r8d, r13d
call fcn.1401de244
movzx eax, word [rsp + 0xe0]
test ax, ax
je 0x1401fc73f
movzx eax, word [rsp + 0xe2]
cwde
jmp 0x1401fc960
mov rdx, qword [r14 + 0x6a8]
test rdx, rdx
je 0x1401fc95d
mov r8, qword [r14 + 0x6b0]
mov r9d, r8d
shr r9d, 2
cmp r13w, r9w
jae 0x1401fc78c
movzx r9d, r13w
lea r10, [r9*4 + 4]
cmp r10, r8
ja 0x1401fc95d
shl r9, 2
lea r8, [rdx + r9]
add r8, 2
jmp 0x1401fc7c8
mov rdx, qword [r14 + 0x6c0]
mov r8d, r13d
sub r8d, r9d
mov r9d, edx
shr r9d, 1
cmp r8w, r9w
jae 0x1401fc95d
movzx r8d, r8w
lea r9, [r8*2 + 2]
cmp r9, rdx
ja 0x1401fc95d
add r8, r8
add r8, qword [r14 + 0x6b8]
movzx edx, word [r8]
rol dx, 8
movsx edx, dx
cvtsi2ss xmm10, edx
test rcx, rcx
je 0x1401fc91d
cmp eax, 2
je 0x1401fc91d
mov r8d, esi
mov rdx, rdi
mov ecx, 0xb
lea rdi, [rsp + 0xe0]
mov rsi, qword [rsp + 0x40]
rep movsq qword [rdi], qword [rsi]
movzx eax, byte [r14 + 0x990]
cmp rax, 0x21
jae 0x1401ff5a9
cmp dword [rsp + 0xe8], 0
mov rdi, rdx
mov esi, r8d
je 0x1401fc91d
mov edx, dword [rsp + 0xec]
mov r8, qword [rsp + 0xf8]
sub r8, rdx
jb 0x1401fc91d
cmp r8, 2
jb 0x1401fc91d
cmp r8, 4
jb 0x1401fc91d
add rdx, qword [rsp + 0xf0]
movzx r9d, word [rdx + 2]
test r9w, r9w
je 0x1401fc91d
movzx ecx, word [rdx]
rol cx, 8
rol r9w, 8
lea r10d, [r9 - 1]
cmp r9w, r13w
cmovbe r13d, r10d
mov r11d, ecx
shr r11d, 4
and r11d, 3
lea r9, [r11 + 1]
movzx r10d, r13w
imul r10, r9
add r11, r10
add r11, 5
cmp r11, r8
ja 0x1401fc91d
and ecx, 0xf
inc ecx
add r10, 4
add rdx, r10
xor r10d, r10d
xor r8d, r8d
mov r11d, r8d
shl r11d, 8
movzx r8d, byte [rdx + r10]
or r8d, r11d
inc r10
cmp r9, r10
jne 0x1401fc8bb
mov edx, r8d
shr edx, cl
cmp edx, 0xffff
ja 0x1401fc91d
mov r9d, 0xffffffff
shl r9d, cl
not r9d
and r8d, r9d
cmp r8d, 0xffff
ja 0x1401fc91d
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x100]
mov r9, qword [rsp + 0x48]
call fcn.14028fee1
cmp eax, 1
jne 0x1401fc91d
addss xmm0, xmm9
addss xmm10, xmm0
movaps xmm0, xmm10
cmpltps xmm0, xmm6
movaps xmm1, xmm7
cmpleps xmm1, xmm10
andps xmm1, xmm0
cvttss2si eax, xmm10
ucomiss xmm10, xmm8
movd ecx, xmm1
mov edx, 0x7fffffff
cmova eax, edx
ucomiss xmm10, xmm10
mov edx, 0
cmovp eax, edx
movsx edx, ax
cmp edx, eax
sete dl
test cl, dl
jne 0x1401fc95f
xor eax, eax
cwde
add eax, esi
lea rcx, [r12 + r12*4]
inc r12
sub dword [rbp + rcx*4 + 0xc], eax
cmp r12, rbx
mov r14, qword [rsp + 0x38]
jne 0x1401fc679
test byte [r15 + 0xb0], 4
je 0x1401fcbaa
mov rdx, qword [r15 + 0x10]
mov rsi, qword [r15 + 0x88]
mov cl, byte [r15 + 0xc1]
mov al, 6
shr al, cl
mov byte [rsp + 0x48], al
cmp rdx, rsi
jb 0x1401ff582
mov rdx, qword [r15 + 0x28]
cmp rdx, rsi
jb 0x1401ff58b
test rsi, rsi
je 0x1401fcbaa
mov rdi, qword [r15 + 8]
mov rax, qword [r15 + 0x20]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 0xada]
mov qword [rsp + 0x58], rax
lea eax, [rax*4]
imul rcx, rax, 0xe38e38f
shr rcx, 0x20
mov rax, rcx
mov qword [rsp + 0x50], rcx
neg eax
mov dword [rsp + 0x80], eax
mov r13d, 0x39
xor r12d, r12d
lea rax, [r12*4]
lea rbp, [rax + rax*4]
movzx r14d, word [rdi + rbp + 0x10]
mov ecx, r14d
and ecx, 0x1f
call fcn.1401df55f
cmp al, 0x16
jne case.0x1401fca66.7
lea rbx, [r12 + r12*4]
test byte [rdi + rbx*4 + 0xc], 0x20
jne case.0x1401fca66.7
shr r14d, 8
movzx eax, r14b
dec eax
cmp eax, 0x14
ja case.0x1401fca66.7
add rbp, qword [rsp + 0x40]
lea rcx, [0x1402efca8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, r14d
shr eax, 1
add eax, dword [rsp + 0x58]
xor edx, edx
div r14d
test byte [rsp + 0x48], 1
jne 0x1401fcb9b
neg eax
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rbx*4 + 4], eax
jmp case.0x1401fca66.7
test byte [rsp + 0x48], 1
jne 0x1401fcb6b
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0x80]
mov dword [rax + rbx*4 + 4], ecx
jmp case.0x1401fca66.7
mov edx, 0x30
xor r14d, r14d
test r14b, 1
jne case.0x1401fca66.7
lea r15d, [rdx + 1]
cmp edx, r13d
setae r14b
cmovae r15d, r13d
cmovae edx, r13d
mov rcx, qword [rsp + 0x38]
call fcn.1401ede49
mov r8d, edx
mov edx, r15d
mov r15, qword [rsp + 0x30]
cmp ax, 1
jne 0x1401fcab9
test byte [rsp + 0x48], 1
jne 0x1401fcb8b
mov rcx, qword [rsp + 0x38]
mov edx, r8d
jmp 0x1401fcb3f
mov r14, qword [rsp + 0x38]
mov rcx, r14
mov edx, 0x2e
call fcn.1401ede49
test ax, ax
jne 0x1401fcb35
mov rcx, r14
mov edx, 0x2c
call fcn.1401ede49
cmp ax, 1
jne case.0x1401fca66.7
mov r14, qword [rsp + 0x38]
test byte [rsp + 0x48], 1
jne 0x1401fcb86
mov rcx, r14
mov r8b, 1
call fcn.1401ef64b
jmp 0x1401fca81
test byte [rsp + 0x48], 1
jne 0x1401fcb75
mov rdx, qword [rsp + 0x40]
mov eax, dword [rdx + rbx*4 + 4]
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
mov dword [rdx + rbx*4 + 4], ecx
jmp case.0x1401fca66.7
mov rax, qword [rsp + 0x50]
mov dword [rbp], eax
jmp case.0x1401fca66.7
mov eax, dword [rbp]
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
mov dword [rbp], ecx
jmp case.0x1401fca66.7
mov rcx, r14
jmp 0x1401fcb93
mov rcx, qword [rsp + 0x38]
mov edx, r8d
xor r8d, r8d
call fcn.1401ef64b
mov dword [rbp], eax
inc r12
cmp r12, rsi
jne 0x1401fca0c
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov qword [rsp + 0x78], rax
cmp byte [rax + 0xff], 0
je 0x1401fcbd0
mov bpl, byte [r15 + 0xc1]
and bpl, 1
jmp 0x1401fcbd2
xor ebp, ebp
mov rdx, qword [r15 + 0x28]
mov rcx, qword [r15 + 0x88]
cmp rdx, rcx
jb 0x1401ff50d
test rcx, rcx
mov r14, qword [rsp + 0x38]
je 0x1401fcc13
mov rax, qword [r15 + 0x20]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor edx, edx
mov word [rax + rdx + 0x10], 0
mov byte [rax + rdx + 0x12], 0
add rdx, 0x14
cmp rcx, rdx
jne 0x1401fcbfe
mov rcx, qword [rsp + 0x78]
cmp byte [rcx + 0xfc], 0
je 0x1401fcc3d
mov rax, qword [rcx + 0xc8]
cmp byte [rax + 0x51], 0
jne 0x1401fcc3d
mov rcx, r15
mov edx, ebp
call fcn.140201a73
mov rcx, qword [rsp + 0x78]
cmp byte [rcx + 0x100], 0
mov dword [rsp + 0x6c], ebp
je 0x1401fdb44
mov rax, r15
mov r15, qword [r14 + 0xa30]
mov dword [rsp + 0x106], 0x10101
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 1
mov word [rsp + 0x104], 0xffff
movabs rax, 0x100000000
mov qword [rsp + 0xfc], rax
mov qword [rsp + 0xe0], 6
mov rdx, qword [rcx + 0x70]
test rdx, rdx
je 0x1401fcef0
movabs r12, 0x8000000000000000
lea rbp, [r14 + 0xa30]
mov rax, qword [rsp + 0x78]
mov rsi, qword [rax + 0x68]
mov rcx, rdx
shl rcx, 4
add rcx, rsi
mov qword [rsp + 0x50], rcx
xor ecx, ecx
cmp r15, r12
cmove rbp, rcx
lea rcx, [rax + 0x40]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x80], rcx
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x40], rax
xor edi, edi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x58], rdx
mov rcx, rdi
sub rcx, 1
jae 0x1401fcd24
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
xor ecx, ecx
jmp 0x1401fcd59
cmp rdx, rcx
jbe 0x1401ff197
shl rcx, 4
mov rax, rdi
shl rax, 4
mov r8, qword [rsp + 0x48]
add rax, r8
cmp rdx, rdi
cmovbe rax, qword [rsp + 0x60]
mov rcx, qword [r8 + rcx]
mov rax, qword [rax]
cmp rcx, rax
ja 0x1401ff43c
cmp qword [rsp + 0x40], rax
jb 0x1401ff40d
cmp rcx, rax
je 0x1401fceb9
lea rax, [rax + rax*2]
mov rdx, qword [rsp + 0x80]
lea r14, [rdx + rax*4]
lea rax, [rcx + rcx*2]
lea rbx, [rdx + rax*4]
movzx eax, word [rbx + 4]
mov word [rsp + 0x104], ax
mov eax, dword [rbx]
mov dword [rsp + 0xf8], eax
mov cl, byte [rbx + 7]
mov byte [rsp + 0x108], cl
mov cl, byte [rbx + 6]
mov byte [rsp + 0x107], cl
mov cl, byte [rbx + 8]
mov byte [rsp + 0x109], cl
cmp r15, r12
je 0x1401fceac
movzx r8d, word [rbx + 4]
mov rcx, qword [rbp + 8]
imul rdx, r8, 0x38
cmp qword [rbp + 0x10], r8
lea r13, [rcx + rdx]
mov r8d, 0
cmovbe r13, r8
jbe 0x1401fceac
test eax, eax
je 0x1401fceac
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0x88], 0
je 0x1401fceac
mov ecx, dword [rcx + rdx + 0x30]
mov dword [rsp + 0xfc], ecx
mov qword [rax + 0x80], 0
xor ecx, ecx
cmp byte [rax + 0xbc], 0
je 0x1401fceac
mov rdx, qword [rax + 0x10]
cmp rdx, rcx
jbe 0x1401fe8fe
mov rax, qword [rax + 8]
lea r8, [rcx + rcx*4]
mov ecx, dword [rsp + 0xf8]
test dword [rax + r8*4 + 4], ecx
je 0x1401fce83
mov r9d, dword [rsp + 0xfc]
mov rcx, qword [rsp + 0xe8]
mov edx, dword [rax + r8*4]
movzx r8d, word [rax + r8*4 + 0xc]
call fcn.1401bc081
test al, al
je 0x1401fce83
mov rcx, r13
lea rdx, [rsp + 0xe0]
call fcn.1401e1884
test al, al
jne 0x1401fce90
mov rcx, qword [rsp + 0xf0]
call fcn.1401e430a
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 0x80]
cmp rcx, qword [rax + 0x88]
jb 0x1401fce1c
add rbx, 0xc
cmp rbx, r14
jne 0x1401fcd85
mov rax, qword [rsi + 8]
test rax, rax
mov r14, qword [rsp + 0x38]
je 0x1401fced9
mov r8, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x78]
mov rdx, r14
call rax
add rsi, 0x10
inc rdi
cmp rsi, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
jne 0x1401fcd0f
mov r15, qword [rsp + 0x30]
mov ebp, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x78]
cmp byte [rcx + 0x102], 0
je 0x1401fe779
mov al, byte [r14 + 0x454]
cmp al, 2
je 0x1401fe779
movups xmm0, xmmword [r14 + 0x440]
mov rdx, rcx
mov ecx, dword [r14 + 0x450]
lea r13, [rsp + 0x268]
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], 0
mov dword [r13 + 0x18], 0
mov dword [r13 + 0x1c], ecx
mov byte [r13 + 0x20], al
mov eax, dword [rdx + 0xf0]
mov dword [rsp + 0x80], eax
mov al, byte [rdx + 0xf8]
mov byte [rsp + 0x1d0], al
xor eax, eax
mov qword [rsp + 0x190], rax
lea r12, [rsp + 0x290]
xorps xmm6, xmm6
lea rbx, [0x1403b7212]
mov rcx, r12
mov rdx, r13
call fcn.140286e87
cmp dword [rsp + 0x290], 4
je 0x1401fe774
mov ecx, 0xb
lea rdi, [rsp + 0xe0]
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
cmp byte [rsp + 0x131], 0
jne 0x1401fcf87
mov dl, byte [r15 + 0xc1]
lea ecx, [rdx - 1]
mov al, byte [rsp + 0x130]
cmp cl, 2
jae 0x1401fcfd9
test al, al
jne 0x1401fcfdd
jmp 0x1401fcf87
test al, al
jne 0x1401fcf87
mov r8b, byte [rsp + 0x132]
test byte [rsp + 0x190], 1
jne 0x1401fd042
test r8b, r8b
je 0x1401fd042
mov rcx, qword [r15 + 0x28]
mov al, 1
mov qword [rsp + 0x190], rax
test rcx, rcx
je 0x1401fd042
mov r10d, r8d
mov r9, rdx
mov rax, qword [r15 + 0x20]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor edx, edx
mov byte [rax + rdx + 0x12], 2
movzx r8d, byte [r15 + 0xc1]
movzx r8d, word [rbx + r8*2]
mov word [rax + rdx + 0x10], r8w
add rdx, 0x14
cmp rcx, rdx
jne 0x1401fd01b
mov rdx, r9
mov r8d, r10d
mov byte [rsp + 0x48], r8b
test dl, 1
jne 0x1401fd068
mov r8, qword [r15 + 0x88]
test r8, r8
je 0x1401fd068
mov rcx, r15
mov rsi, rdx
xor edx, edx
call fcn.1401ff8fc
mov rdx, rsi
cmp byte [rsp + 0x133], 0
je 0x1401fd5e6
cmp dword [rsp + 0xe0], 1
jne 0x1401fdb1c
mov qword [rsp + 0x178], rdx
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
movaps xmmword [rsp + 0x1f0], xmm6
xor ebp, ebp
mov qword [rsp + 0x230], rbp
mov qword [r15 + 0x80], rbp
movzx edi, word [rsp + 0x12a]
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x1d8], rax
movzx r9d, word [rsp + 0x128]
xor eax, eax
test r9d, r9d
sete al
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x58], rax
movzx eax, word [rsp + 0x12c]
mov dword [rsp + 0x180], eax
xor eax, eax
xor esi, esi
mov dword [rsp + 0xdc], edi
mov qword [rsp + 0xa8], r9
mov rcx, qword [r15 + 0x88]
cmp rax, rcx
jb 0x1401fd184
xor edx, edx
jmp 0x1401fd1ce
mov rdx, qword [r15 + 0x10]
cmp rdx, rax
jbe 0x1401ff260
mov rdx, qword [r15 + 8]
lea r8, [rax + rax*4]
movzx r8d, word [rdx + r8*4]
cmp r8w, 0xffff
je 0x1401fd1cc
mov dl, 1
cmp r8w, di
jb 0x1401fd1ce
sub r8d, edi
movzx r8d, r8w
cmp qword [rsp + 0x1d8], r8
jbe 0x1401fd1ce
mov rdx, qword [rsp + 0x1c8]
mov dl, byte [rdx + r8]
jmp 0x1401fd1ce
mov dl, 2
movzx edx, dl
movzx ebx, si
imul rbx, r9
cmp r9w, dx
mov r8d, 1
cmovbe rdx, r8
add rdx, rbx
cmp rdx, qword [rsp + 0x60]
jae 0x1401fdb01
mov r8, qword [rsp + 0x88]
movzx edx, byte [r8 + rdx]
lea r8, [rdx*4 + 4]
cmp r8, qword [rsp + 0x70]
ja 0x1401fdb01
shl rdx, 2
mov r10, qword [rsp + 0xa0]
movzx r8d, word [r10 + rdx + 2]
movzx r12d, word [r10 + rdx]
shl r12d, 0x10
or r12d, r8d
bswap r12d
mov r10d, r12d
shr r10d, 0x10
test si, si
je 0x1401fd2aa
cmp byte [r15 + 0xbd], 0
mov rdx, rax
je 0x1401fd255
mov rdx, qword [r15 + 0x90]
cmp rax, rcx
jae 0x1401fd2aa
test rdx, rdx
je 0x1401fd2aa
test r10d, 0x3fff
jne 0x1401fd27d
movzx r8d, r12w
test r8d, r8d
jne 0x1401fd27d
mov r8d, r10d
and r8d, 0x4000
jne 0x1401fd2aa
dec rdx
inc rax
mov rcx, r15
mov r8, rax
mov esi, r10d
call fcn.1401ded84
mov r10d, esi
mov r9, qword [rsp + 0xa8]
mov rax, qword [r15 + 0x80]
mov rcx, qword [r15 + 0x88]
lea r8, [rax + 2]
cmp r8, rcx
ja 0x1401fd317
add rbx, qword [rsp + 0x1e8]
cmp rbx, qword [rsp + 0x60]
jae 0x1401fdb01
mov rcx, qword [rsp + 0x88]
movzx ecx, byte [rcx + rbx]
lea rdx, [rcx*4 + 4]
cmp rdx, qword [rsp + 0x70]
ja 0x1401fdb01
shl rcx, 2
mov rdx, qword [rsp + 0xa0]
movzx ecx, word [rdx + rcx + 2]
test ecx, 0xff3f
je 0x1401fd317
mov rcx, r15
mov rdx, rax
mov esi, r10d
call fcn.1401de7d4
mov r10d, esi
mov r9, qword [rsp + 0xa8]
test r12d, r12d
jns 0x1401fd344
cmp rbp, 8
jae 0x1401fd368
mov rax, qword [r15 + 0x80]
mov qword [rsp + rbp*8 + 0x1f0], rax
mov rbp, qword [rsp + 0x230]
inc rbp
mov qword [rsp + 0x230], rbp
movzx ecx, r10w
and ecx, 0x3fff
je 0x1401fd56c
test rbp, rbp
je 0x1401fd56c
lea rax, [rcx + 2]
cmp rax, qword [rsp + 0x40]
jbe 0x1401fd37b
mov qword [rsp + 0x230], 0
xor ebp, ebp
jmp 0x1401fd56c
mov dword [rsp + 0x1e0], r10d
mov rax, qword [rsp + 0x58]
movzx r14d, word [rax + rcx]
rol r14w, 8
mov r8, qword [r15 + 0x88]
mov rdx, qword [r15 + 8]
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x50], rax
mov rax, qword [r15 + 0x28]
mov r11, qword [r15 + 0x20]
mov sil, byte [r15 + 0xc1]
dec sil
mov r9d, dword [r15 + 0xb0]
mov dword [rsp + 0x98], r9d
movzx ebx, cx
add ebx, 2
lea rcx, [rbp - 1]
mov qword [rsp + 0x230], rcx
cmp rbp, 8
ja 0x1401ff11a
movzx r9d, bx
lea r10, [r9 + 2]
cmp r10, qword [rsp + 0x40]
jbe 0x1401fd3f7
xor r15d, r15d
jmp 0x1401fd406
mov r10, qword [rsp + 0x58]
movzx r15d, word [r10 + r9]
rol r15w, 8
mov r9, qword [rsp + rcx*8 + 0x1f0]
cmp r9, r8
jae 0x1401fd477
cmp qword [rsp + 0x50], r9
jbe 0x1401ff156
cmp rax, r9
jbe 0x1401ff16a
mov r13d, r14d
and r13b, 1
and r14d, 0xfffe
movsx r14d, r14w
lea r9, [r9 + r9*4]
mov r10d, dword [rdx + r9*4 + 4]
lea rdi, [r11 + r9*4]
cmp sil, 2
jae 0x1401fd498
cmp byte [rsp + 0x48], 0
je 0x1401fd4bf
cmp r14d, 0xffff8000
jne 0x1401fd4f6
mov byte [rdi + 0x12], 0
mov word [r11 + r9*4 + 0x10], 0
mov dword [r11 + r9*4 + 0xc], 0
jmp 0x1401fd47a
xor r13d, r13d
sub rcx, 1
jb 0x1401fd544
add ebx, 2
mov r14d, r15d
test r13b, r13b
je 0x1401fd3d1
jmp 0x1401fd544
cmp byte [rsp + 0x48], 0
je 0x1401fd4d3
cmp r14d, 0xffff8000
jne 0x1401fd50a
mov byte [rdi + 0x12], 0
mov word [r11 + r9*4 + 0x10], 0
mov dword [r11 + r9*4 + 8], 0
jmp 0x1401fd47a
test dword [rsp + 0x80], r10d
je 0x1401fd47a
add dword [rdi], r14d
add dword [r11 + r9*4 + 8], r14d
jmp 0x1401fd47a
test dword [rsp + 0x80], r10d
je 0x1401fd47a
cmp dword [r11 + r9*4 + 0xc], 0
jne 0x1401fd47a
lea r9, [r11 + r9*4]
add r9, 0xc
add dword [r9 - 8], r14d
mov dword [r9], r14d
jmp 0x1401fd47a
cmp byte [rdi + 0x12], 0
je 0x1401fd47a
lea r9, [r11 + r9*4]
add r9, 0xc
jmp 0x1401fd51c
cmp byte [rdi + 0x12], 0
je 0x1401fd47a
lea r9, [r11 + r9*4]
add r9, 8
add dword [r9], r14d
mov r10d, dword [rsp + 0x98]
or r10d, 8
mov r9, qword [rsp + 0x30]
mov dword [rsp + 0x98], r10d
mov dword [r9 + 0xb0], r10d
jmp 0x1401fd47a
inc rcx
mov rbp, rcx
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
lea r13, [rsp + 0x268]
mov r9, qword [rsp + 0xa8]
mov r10d, dword [rsp + 0x1e0]
test r9d, r9d
je 0x1401ff20c
movzx eax, r12w
sub eax, dword [rsp + 0x180]
cdq
idiv r9d
mov esi, eax
mov eax, 0x10000
cmp esi, eax
cmovae esi, eax
mov rax, qword [r15 + 0x80]
cmp rax, qword [r15 + 0x88]
jae 0x1401fdb01
mov ecx, dword [r15 + 0xb4]
dec ecx
mov dword [r15 + 0xb4], ecx
bt r10d, 0xe
mov edi, dword [rsp + 0xdc]
jae 0x1401fd5ca
test ecx, ecx
jg 0x1401fd174
mov rcx, r15
call fcn.1401e430a
mov r9, qword [rsp + 0xa8]
mov rax, qword [r15 + 0x80]
jmp 0x1401fd174
cmp byte [rsp + 0x1d0], 0
je 0x1401fcf87
mov qword [rsp + 0x178], rdx
mov dword [rsp + 0x1be], 0x10101
mov qword [rsp + 0x1a0], r14
mov qword [rsp + 0x1a8], r15
mov word [rsp + 0x1bc], 0xffff
mov qword [rsp + 0x198], 6
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x1b0], eax
movabs rax, 0x100000008
mov qword [rsp + 0x1b4], rax
mov cl, byte [r15 + 0xc1]
mov al, 6
shr al, cl
mov byte [rsp + 0x60], al
cmp qword [r15 + 0x88], 0
je 0x1401fdaf3
mov r13, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x50], rcx
add rcx, 6
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x40], rax
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
shr edx, 2
mov qword [rsp + 0x58], rdx
mov rax, r15
xor ebp, ebp
mov rdx, qword [rax + 0x10]
cmp rdx, rbp
jbe 0x1401ff1a3
mov rax, qword [rax + 8]
lea rdi, [rbp*4]
add rdi, rbp
mov ecx, dword [rsp + 0x80]
test dword [rax + rdi*4 + 4], ecx
je 0x1401fd78f
mov byte [rsp + 0x20], 0
lea rsi, [rsp + 0x1f0]
mov rcx, rsi
lea rdx, [rsp + 0x198]
mov r8, rbp
mov r9w, 1
call fcn.1401e2dae
mov rcx, rsi
call fcn.1401e2e71
test al, al
je 0x1401fd78f
mov r12, qword [rsp + 0x1a8]
mov rdx, qword [r12 + 0x10]
cmp rdx, rbp
jbe 0x1401ff245
mov rbx, qword [rsp + 0x208]
cmp rdx, rbx
jbe 0x1401ff254
mov rax, qword [r12 + 8]
movzx edx, word [rax + rdi*4]
lea rsi, [rbx + rbx*4]
mov r8d, dword [rax + rsi*4]
movzx eax, r8w
cmp r13, 3
je 0x1401fd79a
cmp r13, 2
je 0x1401fd8da
test r13, r13
jne 0x1401fdac2
cmp word [rsp + 0x58], 0
je 0x1401fdac2
shl edx, 0x10
or edx, eax
mov r10, qword [rsp + 0x58]
movzx eax, r10w
cmp eax, 1
jne 0x1401fd92e
xor eax, eax
jmp 0x1401fd98c
inc rbp
mov rbx, rbp
jmp 0x1401fdad7
cmp qword [rsp + 0x40], 2
jb 0x1401fdac2
je 0x1401fdac2
mov rcx, qword [rsp + 0x50]
movzx r10d, word [rcx]
rol r10w, 8
cmp qword [rsp + 0x40], 4
jb 0x1401fdac2
je 0x1401fdac2
mov rcx, qword [rsp + 0x50]
movzx ecx, byte [rcx + 2]
lea r15, [rcx*2 + 6]
cmp qword [rsp + 0x40], r15
jb 0x1401fdac2
movzx r9d, r10w
lea r14, [r15 + r9]
cmp r14, qword [rsp + 0x40]
ja 0x1401fdac2
add r9, r14
cmp r9, qword [rsp + 0x40]
ja 0x1401fdac2
mov r11, qword [rsp + 0x50]
movzx r11d, byte [r11 + 3]
mov dword [rsp + 0xa0], r11d
mov r11, qword [rsp + 0x50]
movzx r11d, byte [r11 + 4]
mov dword [rsp + 0x70], r11d
movzx r11d, word [rsp + 0xa0]
imul r11d, dword [rsp + 0x70]
mov dword [rsp + 0x98], r11d
movzx r11d, r11w
add r11, r9
cmp r11, qword [rsp + 0x40]
ja 0x1401fdac2
cmp r10w, dx
jbe 0x1401fdac2
cmp r10w, r8w
jbe 0x1401fdac2
add r15, qword [rsp + 0x50]
movzx edx, byte [r15 + rdx]
cmp dl, byte [rsp + 0xa0]
ja 0x1401fdac2
add r14, qword [rsp + 0x50]
mov al, byte [r14 + rax]
cmp al, byte [rsp + 0x70]
ja 0x1401fdac2
movzx eax, al
movzx r8d, word [rsp + 0x70]
movzx edx, dx
imul edx, r8d
movzx eax, ax
add eax, edx
cmp word [rsp + 0x98], ax
jbe 0x1401fdac2
add r9, qword [rsp + 0x50]
movzx eax, ax
movzx eax, byte [r9 + rax]
cmp cl, al
jbe 0x1401fdac2
mov rcx, qword [rsp + 0x88]
lea rax, [rcx + rax*2]
jmp 0x1401fd9ce
lea rcx, [rsp + 0xe8]
call fcn.140287255
test ax, ax
je 0x1401fdac2
test dx, dx
je 0x1401fdac2
movsx eax, dx
test byte [rsp + 0x60], 1
jne 0x1401fd9da
cmp byte [rsp + 0x48], 0
je 0x1401fda0c
mov rdx, qword [r12 + 0x28]
cmp rdx, rbx
jbe 0x1401ff371
mov rcx, qword [r12 + 0x20]
mov dword [rcx + rsi*4 + 8], eax
jmp 0x1401fd9f8
xor eax, eax
mov ecx, r10d
movzx r8d, cx
shr r8d, 1
lea r9d, [rax + r8]
cmp r9w, r10w
jae 0x1401fdac2
movzx r10d, r9w
add r10, r10
lea r11, [r10 + r10*2]
add r11, 6
cmp r11, qword [rsp + 0x40]
ja 0x1401fdac2
lea r10, [r10 + r10*2]
mov r11, qword [rsp + 0x50]
mov r10d, dword [r11 + r10]
bswap r10d
cmp r10d, edx
ja 0x1401fd97a
mov eax, r9d
movzx r8d, r8w
sub ecx, r8d
cmp cx, 1
mov r10, qword [rsp + 0x58]
ja 0x1401fd933
cmp ax, r10w
jae 0x1401fdac2
movzx eax, ax
add rax, rax
lea rcx, [rax + rax*2]
add rcx, 6
cmp rcx, qword [rsp + 0x40]
ja 0x1401fdac2
lea rax, [rax + rax*2]
mov rcx, qword [rsp + 0x50]
mov ecx, dword [rcx + rax]
bswap ecx
cmp ecx, edx
jne 0x1401fdac2
add rax, qword [rsp + 0x50]
add rax, 4
movzx edx, word [rax]
rol dx, 8
jmp 0x1401fd8f0
cmp byte [rsp + 0x48], 0
je 0x1401fda59
mov rdx, qword [r12 + 0x28]
cmp rdx, rbx
jbe 0x1401ff37d
mov rcx, qword [r12 + 0x20]
mov dword [rcx + rsi*4 + 0xc], eax
mov rax, qword [rsp + 0x1a8]
or dword [rax + 0xb0], 8
jmp 0x1401fdaa2
mov rdx, qword [r12 + 0x28]
cmp rdx, rbp
jbe 0x1401ff39e
mov ecx, eax
sar ecx, 1
mov rdx, qword [r12 + 0x20]
add dword [rdx + rdi*4 + 4], ecx
mov rdx, qword [r12 + 0x28]
cmp rdx, rbx
jbe 0x1401ff3b6
sub eax, ecx
mov rcx, qword [r12 + 0x20]
add dword [rcx + rsi*4 + 4], eax
mov rdx, qword [r12 + 0x28]
cmp rdx, rbx
jbe 0x1401ff3ce
mov rcx, qword [r12 + 0x20]
add dword [rcx + rsi*4 + 0xc], eax
jmp 0x1401fdaa2
mov rdx, qword [r12 + 0x28]
cmp rdx, rbp
jbe 0x1401ff3aa
mov ecx, eax
sar ecx, 1
mov rdx, qword [r12 + 0x20]
add dword [rdx + rdi*4], ecx
mov rdx, qword [r12 + 0x28]
cmp rdx, rbx
jbe 0x1401ff3c2
sub eax, ecx
mov rcx, qword [r12 + 0x20]
add dword [rcx + rsi*4], eax
mov rdx, qword [r12 + 0x28]
cmp rdx, rbx
jbe 0x1401ff3da
mov rcx, qword [r12 + 0x20]
add dword [rcx + rsi*4 + 8], eax
lea r8, [rbx + 1]
mov rax, r8
sub rax, rbp
cmp rax, 2
jb 0x1401fdac2
mov rcx, qword [rsp + 0x1a8]
mov rdx, rbp
call fcn.1401de7d4
mov rbp, rbx
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
lea r12, [rsp + 0x290]
mov rax, qword [rsp + 0x1a8]
cmp rbx, qword [rax + 0x88]
lea rbx, [0x1403b7212]
jb 0x1401fd6b2
mov ebp, dword [rsp + 0x6c]
lea r13, [rsp + 0x268]
jmp 0x1401fdb14
mov ebp, dword [rsp + 0x6c]
lea r12, [rsp + 0x290]
lea rbx, [0x1403b7212]
mov rdx, qword [rsp + 0x178]
test dl, 1
jne 0x1401fcf87
mov r8, qword [r15 + 0x88]
test r8, r8
je 0x1401fcf87
mov rcx, r15
xor edx, edx
call fcn.1401ff8fc
jmp 0x1401fcf87
cmp byte [rcx + 0x103], 0
je 0x1401fcefe
mov rax, qword [r14 + 0x808]
test rax, rax
je 0x1401fcefe
mov r9, rcx
movzx ecx, word [r14 + 0x81c]
mov edx, dword [r14 + 0x818]
mov r8, qword [r14 + 0x810]
lea r13, [rsp + 0x198]
mov qword [r13], rax
mov qword [r13 + 8], r8
mov qword [r13 + 0x10], 0
mov dword [r13 + 0x18], 0
mov dword [r13 + 0x1c], edx
mov word [r13 + 0x20], cx
mov al, byte [r9 + 0xf8]
mov byte [rsp + 0x48], al
movzx eax, word [r14 + 0x400]
mov qword [rsp + 0x98], rax
movzx eax, word [r14 + 0x402]
mov word [rsp + 0x180], ax
movzx eax, word [r14 + 0x404]
mov word [rsp + 0xdc], ax
movzx eax, word [r14 + 0x406]
mov word [rsp + 0x190], ax
movzx eax, word [r14 + 0x418]
mov word [rsp + 0x1e8], ax
mov rax, qword [r14 + 0x420]
mov qword [rsp + 0x178], rax
mov rax, qword [r14 + 0x428]
mov qword [rsp + 0x1e0], rax
mov rax, qword [r14 + 0x408]
mov qword [rsp + 0x1d8], rax
mov rax, qword [r14 + 0x410]
mov qword [rsp + 0x1d0], rax
mov rax, qword [r14 + 0x430]
mov qword [rsp + 0x1c8], rax
mov rax, qword [r14 + 0x438]
mov qword [rsp + 0x260], rax
xorps xmm6, xmm6
lea r12, [rsp + 0x290]
lea rbx, [rsp + 0xe0]
xor eax, eax
mov qword [rsp + 0x40], rax
mov rcx, r12
mov rdx, r13
call fcn.14028b53f
cmp dword [rsp + 0x290], 5
je 0x1401fcef9
mov ecx, 0xf
mov rdi, rbx
mov rsi, r12
rep movsq qword [rdi], qword [rsi]
cmp byte [rsp + 0x155], 0
jne 0x1401fdc72
mov bl, byte [r15 + 0xc1]
lea ecx, [rbx - 1]
mov al, byte [rsp + 0x154]
cmp cl, 2
jae 0x1401fdcc2
test al, al
jne 0x1401fdcca
jmp 0x1401fdd88
test al, al
jne 0x1401fdd88
mov r12b, byte [rsp + 0x156]
test byte [rsp + 0x40], 1
lea r9, [0x1403b7208]
jne 0x1401fdd24
test r12b, r12b
je 0x1401fdd24
mov rcx, qword [r15 + 0x28]
mov al, 1
mov qword [rsp + 0x40], rax
test rcx, rcx
je 0x1401fdd24
mov rax, qword [r15 + 0x20]
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor edx, edx
mov byte [rax + rdx + 0x12], 2
movzx r8d, byte [r15 + 0xc1]
movzx r8d, word [r9 + r8*2]
mov word [rax + rdx + 0x10], r8w
add rdx, 0x14
cmp rcx, rdx
jne 0x1401fdd03
test bl, 1
mov rcx, qword [rsp + 0x78]
jne 0x1401fdd61
mov r8, qword [r15 + 0x88]
test r8, r8
je 0x1401fdd61
mov rcx, r15
xor edx, edx
call fcn.1401ff8fc
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0xe0]
lea rdx, [0x1402efcfc]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov rax, qword [rsp + 0xe0]
lea rdx, [0x1402efcfc]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp byte [rsp + 0x48], 0
jne 0x1401fdd95
lea r12, [rsp + 0x290]
lea rbx, [rsp + 0xe0]
jmp 0x1401fdc72
mov edx, dword [rcx + 0xf0]
lea r12, [rsp + 0x290]
mov rcx, r12
mov r8, r14
mov r9, r15
call fcn.140201680
test bl, 1
jmp 0x1401fe6fb
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
movaps xmmword [rsp + 0x1f0], xmm6
xor esi, esi
mov qword [rsp + 0x230], rsi
mov qword [r15 + 0x80], rsi
mov eax, dword [rsp + 0x150]
cmp eax, 1
adc eax, 0
mov rcx, qword [rsp + 0x140]
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rsp + 0x148]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rax
add rax, rax
mov qword [rsp + 0x80], rax
xor ebp, ebp
xor r13d, r13d
mov r14, qword [r15 + 0x88]
cmp rbp, r14
jae 0x1401fde79
mov rdx, qword [r15 + 0x10]
cmp rdx, rbp
jbe 0x1401ff392
mov rax, qword [r15 + 8]
lea rcx, [rbp*4]
add rcx, rbp
movzx edx, word [rax + rcx*4]
cmp dx, 0xffff
je 0x1401fde7e
lea rcx, [rsp + 0xe8]
call fcn.14027cc88
mov r8d, edx
test ax, ax
mov eax, 1
cmove r8d, eax
jmp 0x1401fde83
xor r8d, r8d
jmp 0x1401fde83
mov r8w, 2
lea rcx, [rsp + 0xe8]
mov edx, r13d
call fcn.1401b7ad3
mov rdi, rax
test di, di
je 0x1401fe6df
mov ecx, edi
shr ecx, 0x10
mov r8, rdi
shr r8, 0x20
shr rdi, 0x30
test r13w, r13w
mov qword [rsp + 0x60], r8
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x70], r13
je 0x1401fdf1f
cmp byte [r15 + 0xbd], 0
mov rdx, rbp
je 0x1401fdeda
mov rdx, qword [r15 + 0x90]
test rdx, rdx
je 0x1401fdf1f
cmp rbp, r14
jae 0x1401fdf1f
cmp edi, 0xffff
jne 0x1401fdefb
test cx, cx
jne 0x1401fdefb
mov eax, r8d
and eax, 0x4000
jne 0x1401fdf1f
dec rdx
inc rbp
mov rcx, r15
mov r8, rbp
call fcn.1401ded84
mov r8, qword [rsp + 0x60]
mov rbp, qword [r15 + 0x80]
mov r14, qword [r15 + 0x88]
lea r13, [rbp + 2]
cmp r13, r14
ja 0x1401fdf6d
lea rcx, [rsp + 0xe8]
mov rdx, qword [rsp + 0x70]
xor r8d, r8d
call fcn.1401b7ad3
test ax, ax
je 0x1401fe6df
movabs rcx, 0xfffeffffffffffff
cmp rax, rcx
mov r8, qword [rsp + 0x60]
ja 0x1401fdf6d
mov rcx, r15
mov rdx, rbp
mov r8, r13
call fcn.1401de7d4
mov r8, qword [rsp + 0x60]
bt r8d, 0xd
jb 0x1401fdf84
test r8w, r8w
mov rcx, qword [rsp + 0x78]
js 0x1401fdfa1
mov r8, rsi
jmp 0x1401fdfd7
mov qword [rsp + 0x230], 0
mov esi, 0
test r8w, r8w
jns 0x1401fe1e0
jmp 0x1401fdfab
cmp rsi, 8
jae 0x1401fe23a
mov r15, qword [rsp + 0x30]
mov rax, qword [r15 + 0x80]
mov qword [rsp + rsi*8 + 0x1f0], rax
mov r8, qword [rsp + 0x230]
inc r8
mov qword [rsp + 0x230], r8
mov rcx, qword [rsp + 0x78]
cmp edi, 0xffff
je 0x1401fe1dd
test r8, r8
je 0x1401fe1dd
cmp dword [rsp + 0x58], 0xffff
ja 0x1401fe1dd
mov r9, qword [r15 + 0x88]
mov rax, qword [r15 + 8]
mov qword [rsp + 0xa0], rax
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x70], rax
mov rax, qword [r15 + 0x28]
mov r11, qword [r15 + 0x20]
mov bpl, byte [r15 + 0xc1]
dec bpl
mov ecx, dword [rcx + 0xf0]
mov dword [rsp + 0x188], ecx
mov ecx, dword [r15 + 0xb0]
mov dword [rsp + 0x18c], ecx
lea r15, [rdi*2 + 2]
lea rcx, [r8 - 1]
mov rsi, rcx
mov qword [rsp + 0x230], rcx
cmp r8, 8
ja 0x1401ff2cc
cmp r15, qword [rsp + 0x50]
ja 0x1401fe1e0
mov ecx, edi
add cx, word [rsp + 0x58]
jb 0x1401fe1e0
mov rcx, qword [rsp + rsi*8 + 0x1f0]
cmp rcx, r9
jae 0x1401fe104
cmp qword [rsp + 0x70], rcx
jbe 0x1401ff345
cmp rax, rcx
jbe 0x1401ff356
mov rdx, qword [rsp + 0xa8]
movzx edx, word [rdx + r15 - 2]
rol dx, 8
mov r14d, edx
and r14b, 1
and edx, 0xfffe
movsx r13d, dx
lea rcx, [rcx + rcx*4]
mov rdx, qword [rsp + 0xa0]
mov edx, dword [rdx + rcx*4 + 4]
lea r10, [r11 + rcx*4]
cmp bpl, 2
jae 0x1401fe133
test r12b, r12b
je 0x1401fe159
cmp r13d, 0xffff8000
jne 0x1401fe191
mov byte [r10 + 0x12], 0
mov word [r11 + rcx*4 + 0x10], 0
mov dword [r11 + rcx*4 + 0xc], 0
jmp 0x1401fe107
xor r14d, r14d
mov rcx, rsi
sub rcx, 1
setb dl
test r14b, r14b
jne 0x1401fe1e0
add edi, dword [rsp + 0x58]
add r15, qword [rsp + 0x80]
test dl, dl
je 0x1401fe04f
jmp 0x1401fe1e0
test r12b, r12b
je 0x1401fe16c
cmp r13d, 0xffff8000
jne 0x1401fe1a6
mov byte [r10 + 0x12], 0
mov word [r11 + rcx*4 + 0x10], 0
mov dword [r11 + rcx*4 + 8], 0
jmp 0x1401fe107
test dword [rsp + 0x188], edx
je 0x1401fe107
add dword [r10], r13d
add dword [r11 + rcx*4 + 8], r13d
jmp 0x1401fe107
test dword [rsp + 0x188], edx
je 0x1401fe107
cmp dword [r11 + rcx*4 + 0xc], 0
jne 0x1401fe107
lea rcx, [r11 + rcx*4]
add rcx, 0xc
add dword [rcx - 8], r13d
mov dword [rcx], r13d
jmp 0x1401fe107
cmp byte [r10 + 0x12], 0
je 0x1401fe107
lea rcx, [r11 + rcx*4]
add rcx, 0xc
jmp 0x1401fe1b9
cmp byte [r10 + 0x12], 0
je 0x1401fe107
lea rcx, [r11 + rcx*4]
add rcx, 8
add dword [rcx], r13d
mov edx, dword [rsp + 0x18c]
or edx, 8
mov rcx, qword [rsp + 0x30]
mov dword [rsp + 0x18c], edx
mov dword [rcx + 0xb0], edx
jmp 0x1401fe107
mov rsi, r8
mov r15, qword [rsp + 0x30]
mov rbp, qword [r15 + 0x80]
cmp rbp, qword [r15 + 0x88]
jae 0x1401fe6df
bt dword [rsp + 0x60], 0xe
jae 0x1401fe20c
mov eax, dword [r15 + 0xb4]
test eax, eax
jg 0x1401fe222
mov rcx, r15
call fcn.1401e430a
mov eax, dword [r15 + 0xb4]
mov rbp, qword [r15 + 0x80]
dec eax
mov dword [r15 + 0xb4], eax
mov eax, dword [rsp + 0x88]
mov r13d, eax
jmp 0x1401fde29
mov qword [rsp + 0x230], 0
xor esi, esi
jmp 0x1401fe1e0
mov ax, 6
cmp dword [rsp + 0x98], 6
jne 0x1401fe728
mov byte [rsp + 0x238], 0
xor r10d, r10d
mov qword [rsp + 0x230], r10
mov word [rsp + 0x1f0], ax
movzx eax, word [rsp + 0x180]
mov word [rsp + 0x1f2], ax
movzx eax, word [rsp + 0xdc]
mov word [rsp + 0x1f4], ax
movzx eax, word [rsp + 0x190]
mov word [rsp + 0x1f6], ax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x200], rax
movzx eax, word [rsp + 0x1e8]
mov word [rsp + 0x208], ax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x228], rax
mov qword [r15 + 0x80], r10
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x70], rax
xor eax, eax
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x50], rax
xor edi, edi
mov r14, qword [r15 + 0x88]
cmp r10, r14
jae 0x1401fe39a
mov rdx, qword [r15 + 0x10]
cmp rdx, r10
jbe 0x1401ff389
mov rax, qword [r15 + 8]
mov rsi, r10
lea rcx, [r10 + r10*4]
movzx edx, word [rax + rcx*4]
cmp dx, 0xffff
je 0x1401fe3a2
lea rcx, [rsp + 0xe8]
call fcn.14027cc88
mov r8d, edx
test ax, ax
mov eax, 1
cmove r8d, eax
jmp 0x1401fe3a7
mov rsi, r10
xor r8d, r8d
jmp 0x1401fe3a7
mov r8w, 2
lea rcx, [rsp + 0xe8]
mov edx, edi
call fcn.1401b7ad3
mov rbp, rax
test bp, bp
je 0x1401fe6df
mov r10, rsi
mov ecx, ebp
shr ecx, 0x10
mov r12, rbp
shr r12, 0x20
mov r13, rbp
shr r13, 0x30
test di, di
mov dword [rsp + 0x58], ecx
je 0x1401fe436
cmp byte [r15 + 0xbd], 0
mov rdx, r10
je 0x1401fe3f5
mov rdx, qword [r15 + 0x90]
test rdx, rdx
je 0x1401fe436
cmp r10, r14
jae 0x1401fe436
cmp r13d, 0xffff
jne 0x1401fe417
test cx, cx
jne 0x1401fe417
mov eax, r12d
and eax, 0x4000
jne 0x1401fe436
dec rdx
inc r10
mov rcx, r15
mov r8, r10
call fcn.1401ded84
mov r10, qword [r15 + 0x80]
mov r14, qword [r15 + 0x88]
lea rsi, [r10 + 2]
cmp rsi, r14
ja 0x1401fe484
lea rcx, [rsp + 0xe8]
mov edx, edi
xor r8d, r8d
mov rdi, r10
call fcn.1401b7ad3
test ax, ax
je 0x1401fe6df
mov r10, rdi
movabs rcx, 0xfffeffffffffffff
cmp rax, rcx
ja 0x1401fe484
mov rcx, r15
mov rdx, r10
mov r8, rsi
call fcn.1401de7d4
mov r10, qword [r15 + 0x80]
cmp byte [rsp + 0x50], 0
je 0x1401fe674
cmp r13d, 0xffff
je 0x1401fe674
cmp r10, qword [r15 + 0x88]
jae 0x1401fe674
cmp dword [rsp + 0x98], 6
jne 0x1401fe4bc
mov rdx, qword [r15 + 0x28]
jmp 0x1401fe63f
mov qword [rsp + 0x60], r10
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x70]
mov r8d, r13d
call fcn.14028b20d
mov rdi, rax
test di, di
je 0x1401fe57a
mov r13, qword [r15 + 0x10]
mov rcx, qword [rsp + 0x80]
cmp r13, rcx
jbe 0x1401ff486
movabs rax, 0xffffffffffff
and rdi, rax
mov r14, qword [r15 + 8]
lea rax, [rcx + rcx*4]
movzx edx, word [r14 + rax*4]
lea rcx, [rsp + 0x1f0]
call fcn.14028afb2
xor esi, esi
mov r11, r14
test rax, rax
je 0x1401fe584
mov r10, rdi
shr r10, 0x10
movzx r8d, r10w
mov r9, rdx
shr r9, 2
cmp r8d, r9d
mov rcx, qword [rsp + 0x60]
jae 0x1401fe58e
movzx r9d, r10w
lea r8, [r9*4 + 4]
mov r14d, 0
cmp r8, rdx
ja 0x1401fe591
shl r9, 2
movzx edx, word [rax + r9 + 2]
movzx esi, word [rax + r9]
shl esi, 0x10
or esi, edx
bswap esi
mov r14d, esi
shr r14d, 0x10
jmp 0x1401fe591
mov r10, qword [rsp + 0x60]
jmp 0x1401fe69a
xor r14d, r14d
mov rcx, qword [rsp + 0x60]
jmp 0x1401fe591
xor r14d, r14d
cmp r13, rcx
jbe 0x1401ff48f
lea r15, [rcx + rcx*4]
movzx edx, word [r11 + r15*4]
lea rcx, [rsp + 0x1f0]
call fcn.14028afb2
mov cl, 1
test rax, rax
je 0x1401fe5f5
shr rdi, 0x20
mov r8, rdx
shr r8, 2
cmp r8d, edi
jbe 0x1401fe5f5
lea r9, [rdi*4 + 4]
cmp r9, rdx
mov r10, qword [rsp + 0x60]
ja 0x1401fe5fa
shl rdi, 2
movzx ecx, word [rax + rdi + 2]
movzx r8d, word [rax + rdi]
shl r8d, 0x10
or r8d, ecx
bswap r8d
xor ecx, ecx
jmp 0x1401fe5fa
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x30]
mov rdx, qword [r9 + 0x28]
cmp rdx, r10
jbe 0x1401ff3fe
mov eax, r8d
shr eax, 0x10
test cl, cl
mov ecx, 0
cmovne eax, ecx
cmovne r8d, ecx
mov rcx, qword [r9 + 0x20]
sub esi, r8d
movsx r8d, si
mov dword [rcx + r15*4 + 8], r8d
sub r14d, eax
movsx eax, r14w
mov dword [rcx + r15*4 + 0xc], eax
mov r15, r9
cmp rdx, r10
jbe 0x1401ff3fe
mov rax, qword [r15 + 0x20]
lea rcx, [r10 + r10*4]
mov byte [rax + rcx*4 + 0x12], 1
mov rdx, qword [rsp + 0x80]
sub edx, r10d
mov word [rax + rcx*4 + 0x10], dx
or byte [r15 + 0xb0], 8
mov r10, qword [r15 + 0x80]
bt rbp, 0x2f
jae 0x1401fe69a
mov byte [rsp + 0x238], 1
mov qword [rsp + 0x230], r10
mov al, 1
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x80], r10
cmp r10, qword [r15 + 0x88]
jae 0x1401fe6df
bt r12d, 0xe
jae 0x1401fe6b5
mov eax, dword [r15 + 0xb4]
test eax, eax
jg 0x1401fe6cb
mov rcx, r15
call fcn.1401e430a
mov eax, dword [r15 + 0xb4]
mov r10, qword [r15 + 0x80]
dec eax
mov dword [r15 + 0xb4], eax
mov eax, dword [rsp + 0x58]
mov edi, eax
jmp 0x1401fe34e
test bl, 1
mov r14, qword [rsp + 0x38]
mov ebp, dword [rsp + 0x6c]
lea r13, [rsp + 0x198]
lea r12, [rsp + 0x290]
lea rbx, [rsp + 0xe0]
jne 0x1401fdc72
mov r8, qword [r15 + 0x88]
test r8, r8
je 0x1401fdc72
mov rcx, r15
xor edx, edx
call fcn.1401ff8fc
jmp 0x1401fdc72
mov rax, qword [rsp + 0x98]
lea rcx, [0x1402efd10]
invalid
invalid
invalid
invalid
cwde
add byte [rax], al
add byte [rax - 0x73], cl
or eax, 0xf15d9
invalid
invalid
invalid
invalid
fst dword [0x1a367e748]
add al, 0x81
movsxd rax, dword [rcx + rax*4]
add rax, rcx
add eax, ecx
jmp rax
xor eax, eax
jmp case.default.0x1401fe73e
invalid
invalid
invalid
mov ax, 1
jmp case.default.0x1401fe73e
invalid
invalid
invalid
mov ax, 2
jmp case.default.0x1401fe73e
invalid
invalid
invalid
mov ax, 3
jmp case.default.0x1401fe73e
mov ax, 4
jmp case.default.0x1401fe73e
mov ax, 5
jmp case.default.0x1401fe73e
mov rcx, qword [rsp + 0x78]
cmp byte [rcx + 0x105], 0
je 0x1401fe9c6
cmp dword [r14 + 0xac8], 0
je 0x1401fe9c6
movss xmm6, dword [r14 + 0xacc]
xorps xmm0, xmm0
ucomiss xmm0, xmm6
jae 0x1401fe9c6
mov rdx, qword [r14 + 0x838]
test rdx, rdx
je 0x1401fe9c2
mov ebp, dword [rcx + 0xf4]
add r14, 0x840
lea rax, [rsp + 0xe8]
mov ecx, 0xd
mov rdi, rax
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
mov qword [rax - 8], rdx
cmp byte [r15 + 0xbf], 0
jne 0x1401fe844
mov word [r15 + 0xbd], 0
mov byte [r15 + 0xbf], 1
mov qword [r15 + 0x90], 0
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1401fe844
mov rcx, qword [r15 + 0x20]
lea rax, [rax + rax*4]
lea rax, [rax*4 - 0x14]
movabs rdx, 0xcccccccccccccccd
mul rdx
shr rdx, 4
lea rax, [rdx + rdx*4]
lea r8, [rax*4 + 0x14]
xor edx, edx
call sub.msvcrt.dll_memset
mov al, byte [r15 + 0xc1]
dec al
cmp al, 2
jae 0x1401fe916
lea rcx, [rsp + 0xe0]
movaps xmm1, xmm6
call fcn.1401b8b07
mov dword [rsp + 0x38], edx
test eax, eax
mov rcx, qword [rsp + 0x78]
je 0x1401fe9c2
mov rcx, r15
xor edx, edx
call fcn.1401ff88d
mov r14, qword [r15 + 0x88]
test r14, r14
je 0x1401fe9b7
mov ecx, dword [rsp + 0x38]
mov r12d, ecx
shr r12d, 0x1f
add r12d, ecx
sar r12d, 1
mov rcx, qword [rsp + 0x30]
mov r13, qword [rcx + 8]
mov rdi, qword [rcx + 0x10]
mov rbx, qword [rcx + 0x28]
mov rsi, qword [rcx + 0x20]
xor ecx, ecx
cmp rdi, rcx
jbe 0x1401ff278
mov r15, rax
lea rax, [rcx + rcx*4]
test dword [r13 + rax*4 + 4], ebp
je 0x1401fe8e4
cmp rbx, rcx
jbe 0x1401ff290
mov ecx, dword [rsp + 0x38]
add dword [rsi + rax*4], ecx
add dword [rsi + rax*4 + 8], r12d
mov rcx, qword [rsp + 0x30]
mov rdx, r15
call fcn.1401ff88d
mov rcx, r15
cmp r15, r14
jb 0x1401fe8b8
jmp 0x1401fe9b7
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec68
lea rcx, [rsp + 0x118]
movaps xmm1, xmm6
call fcn.1401b8b07
mov dword [rsp + 0x38], edx
test eax, eax
mov rcx, qword [rsp + 0x78]
je 0x1401fe9c2
mov rcx, r15
xor edx, edx
call fcn.1401ff88d
mov r14, qword [r15 + 0x88]
test r14, r14
je 0x1401fe9b7
mov ecx, dword [rsp + 0x38]
mov r12d, ecx
shr r12d, 0x1f
add r12d, ecx
sar r12d, 1
mov rcx, qword [rsp + 0x30]
mov r13, qword [rcx + 8]
mov rdi, qword [rcx + 0x10]
mov rbx, qword [rcx + 0x28]
mov rsi, qword [rcx + 0x20]
xor ecx, ecx
cmp rdi, rcx
jbe 0x1401ff281
mov r15, rax
lea rax, [rcx + rcx*4]
test dword [r13 + rax*4 + 4], ebp
je 0x1401fe9a2
cmp rbx, rcx
jbe 0x1401ff299
mov ecx, dword [rsp + 0x38]
add dword [rsi + rax*4 + 4], ecx
add dword [rsi + rax*4 + 0xc], r12d
mov rcx, qword [rsp + 0x30]
mov rdx, r15
call fcn.1401ff88d
mov rcx, r15
cmp r15, r14
jb 0x1401fe975
mov ebp, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x78]
jmp 0x1401fe9c6
mov ebp, dword [rsp + 0x6c]
cmp byte [rcx + 0xfc], 0
je 0x1401fe9f4
mov rax, qword [rcx + 0xc8]
cmp byte [rax + 0x51], 1
mov rax, qword [rsp + 0x90]
mov rsi, qword [rax + 0x10]
jne 0x1401fea00
mov rcx, rsi
mov edx, ebp
call fcn.140201a73
jmp 0x1401fea00
mov rax, qword [rsp + 0x90]
mov rsi, qword [rax + 0x10]
test byte [rsi + 0xb0], 2
je 0x1401fea68
test byte [rsi + 0xac], 0x18
jne 0x1401fea68
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsi + 0x88]
cmp rdx, rcx
jb 0x1401ff5bd
mov rdx, qword [rsi + 0x28]
cmp rdx, rcx
jb 0x1401ff5c9
test rcx, rcx
je 0x1401fea68
mov rax, qword [rsi + 8]
mov rdx, qword [rsi + 0x20]
xor r8d, r8d
xorps xmm0, xmm0
test byte [rax + r8 + 0x10], 0x20
je 0x1401fea5f
movzx r9d, word [rax + r8 + 0xc]
and r9d, 0x10
jne 0x1401fea5f
movups xmmword [rdx + r8], xmm0
add r8, 0x14
dec rcx
jne 0x1401fea46
mov rax, qword [rsp + 0x90]
mov rdi, qword [rax]
cmp byte [rdi + 0x104], 0
je 0x1401feacd
mov r8, qword [rsi + 0x88]
test r8, r8
je 0x1401feacd
mov r9, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x28]
mov r10, qword [rsi + 0x20]
xor r11d, r11d
xorps xmm0, xmm0
xor eax, eax
cmp rcx, rax
je 0x1401ff17c
cmp dword [r9 + r11], 0xffff
jne 0x1401feac1
cmp rdx, rax
jbe 0x1401ff1d6
movups xmmword [r10 + r11], xmm0
inc rax
add r11, 0x14
cmp r8, rax
jne 0x1401feaa0
mov rbx, qword [rsi + 0x88]
test rbx, rbx
je 0x1401feb15
mov eax, dword [rsi + 0xb0]
and eax, 8
je 0x1401feb15
mov bpl, byte [rsi + 0xc1]
mov r14, qword [rsi + 0x20]
mov r15, qword [rsi + 0x28]
xor r9d, r9d
lea r12, [r9 + 1]
mov byte [rsp + 0x20], bpl
mov rcx, r14
mov rdx, r15
mov r8, rbx
call fcn.140201af4
mov r9, r12
cmp rbx, r12
jne 0x1401feaf6
cmp byte [rdi + 0xfe], 0
je 0x1401febc7
mov rax, qword [rsp + 0x90]
mov rbx, qword [rax + 8]
mov r12, qword [rsi + 0x88]
cmp r12, 2
jb 0x1401feba5
mov r15d, 1
mov r13d, 0x24
xor r14d, r14d
mov ebp, dword [rsp + 0x6c]
mov rdx, qword [rsi + 0x10]
cmp rdx, r15
jbe 0x1401ff18b
mov rax, qword [rsi + 8]
movzx ecx, word [rax + r13]
and ecx, 0x1f
call fcn.1401df55f
movzx eax, al
add rax, 0xfffffffffffffffb
cmp rax, 3
jb 0x1401feb97
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], r15
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
mov r9, r14
call fcn.140201c81
mov r14, r15
inc r15
add r13, 0x14
cmp r12, r15
jne 0x1401feb4e
jmp 0x1401febac
xor r14d, r14d
mov ebp, dword [rsp + 0x6c]
mov byte [rsp + 0x28], bpl
mov qword [rsp + 0x20], r12
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
mov r9, r14
call fcn.140201c81
movzx eax, byte [rsi + 0xc1]
mov ecx, 0x15
bt ecx, eax
jae 0x1401febee
mov r8, qword [rsi + 0x88]
test r8, r8
je 0x1401febee
mov rcx, rsi
xor edx, edx
call fcn.1401ff8fc
mov rax, qword [rsp + 0x90]
mov rbx, qword [rax + 8]
test byte [rsi + 0xb0], 2
je 0x1401fee4a
mov eax, dword [rsi + 0xac]
test al, 8
jne 0x1401fee4a
test al, 0x10
jne 0x1401fece7
cmp word [rsi + 0xa8], 0
je 0x1401fec7f
movzx edx, word [rsi + 0xaa]
jmp 0x1401fec92
xor ecx, ecx
and cl, 1
mov bl, 2
sub bl, cl
mov r12, qword [rsp + 0x48]
jmp 0x1401fa5bd
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rcx, r14
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rcx, rbx
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
mov rcx, rax
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
mov rcx, r15
call fcn.1400793c0
mov rcx, rbx
mov edx, 0x20
call fcn.1401ede49
cmp ax, 1
jne 0x1401fece7
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 0x88]
cmp rax, rcx
jb 0x1401ff5d5
test rcx, rcx
je 0x1401fee4a
mov rax, qword [rsi + 8]
movzx edx, dx
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor r8d, r8d
test byte [rax + r8 + 0x10], 0x20
je 0x1401fecd9
movzx r9d, word [rax + r8 + 0xc]
and r9d, 0x10
jne 0x1401fecd9
mov dword [rax + r8], edx
add r8, 0x14
cmp rcx, r8
jne 0x1401fecc1
jmp 0x1401fee4a
mov qword [rsp + 0x30], rbx
mov r13, qword [rsi + 0x88]
test r13, r13
je 0x1401fee3b
mov rbp, 0xfffffffffffffff4
xor ebx, ebx
xor r14d, r14d
xor r15d, r15d
lea r12, [r14 - 1]
mov rax, r15
mov rdx, qword [rsi + 0x10]
cmp rdx, r15
jbe 0x1401ff14a
lea r15, [rax + 1]
mov rcx, qword [rsi + 8]
lea r8, [rax + rax*4]
test byte [rcx + r8*4 + 0x10], 0x20
je 0x1401fedd2
movzx r9d, word [rcx + r8*4 + 0xc]
and r9d, 0x10
jne 0x1401fedd2
mov r9d, dword [rcx + r8*4 + 8]
cmp r15, qword [rsi + 0x88]
jae 0x1401fed7f
cmp rdx, r15
jbe 0x1401ff1bb
lea r10, [r15 + r15*4]
cmp r9d, dword [rcx + r10*4 + 8]
je 0x1401fedc7
test r14, r14
jne 0x1401fed84
lea r8, [rax + 2]
mov rcx, rsi
mov rdx, rax
call fcn.1401de56a
jmp 0x1401fedc7
test r14, r14
je 0x1401fedc7
cmp rdx, r12
jbe 0x1401ff1c7
lea rax, [r12 + r12*4]
mov eax, dword [rcx + rax*4 + 8]
cmp r9d, eax
jae 0x1401fedc7
mov edx, dword [rcx + r8*4 + 4]
and edx, 1
add rcx, rbp
mov r8, rbx
cmp dword [rcx], eax
jne 0x1401fedc7
mov r10d, dword [rcx - 4]
and r10d, 0xfffffffe
or r10d, edx
mov dword [rcx - 4], r10d
mov dword [rcx], r9d
add rcx, 0xffffffffffffffec
inc r8
jne 0x1401feda8
cmp r15, r13
jb 0x1401fed0f
jmp 0x1401fee3e
cmp r14, rax
je 0x1401fee26
cmp rdx, r14
jbe 0x1401ff2e9
lea r9, [r14 + r14*4]
movups xmm0, xmmword [rcx + r8*4]
mov edx, dword [rcx + r8*4 + 0x10]
mov dword [rcx + r9*4 + 0x10], edx
movups xmmword [rcx + r9*4], xmm0
mov rdx, qword [rsi + 0x28]
cmp rdx, rax
jbe 0x1401ff2f5
cmp rdx, r14
jbe 0x1401ff301
mov rax, qword [rsi + 0x20]
movups xmm0, xmmword [rax + r8*4]
mov ecx, dword [rax + r8*4 + 0x10]
mov dword [rax + r9*4 + 0x10], ecx
movups xmmword [rax + r9*4], xmm0
inc r14
dec rbx
add rbp, 0x14
cmp r15, r13
jb 0x1401fed0b
jmp 0x1401fee3e
xor r14d, r14d
mov qword [rsi + 0x88], r14
mov rbx, qword [rsp + 0x30]
cmp byte [rdi + 0x104], 0
je 0x1401fefac
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsi + 0x88]
test rbx, rbx
je 0x1401fef9d
mov r13, 0xfffffffffffffff4
xor ebp, ebp
xor r14d, r14d
xor r15d, r15d
lea r12, [r14 - 1]
mov rax, r15
mov rdx, qword [rsi + 0x10]
cmp rdx, r15
jbe 0x1401ff14a
lea r15, [rax + 1]
mov rcx, qword [rsi + 8]
lea r8, [rax + rax*4]
cmp dword [rcx + r8*4], 0xffff
jne 0x1401fef34
mov r9d, dword [rcx + r8*4 + 8]
cmp r15, qword [rsi + 0x88]
jae 0x1401feee1
cmp rdx, r15
jbe 0x1401ff1bb
lea r10, [r15 + r15*4]
cmp r9d, dword [rcx + r10*4 + 8]
je 0x1401fef29
test r14, r14
jne 0x1401feee6
lea r8, [rax + 2]
mov rcx, rsi
mov rdx, rax
call fcn.1401de56a
jmp 0x1401fef29
test r14, r14
je 0x1401fef29
cmp rdx, r12
jbe 0x1401ff1c7
lea rax, [r12 + r12*4]
mov eax, dword [rcx + rax*4 + 8]
cmp r9d, eax
jae 0x1401fef29
mov edx, dword [rcx + r8*4 + 4]
and edx, 1
add rcx, r13
mov r8, rbp
cmp dword [rcx], eax
jne 0x1401fef29
mov r10d, dword [rcx - 4]
and r10d, 0xfffffffe
or r10d, edx
mov dword [rcx - 4], r10d
mov dword [rcx], r9d
add rcx, 0xffffffffffffffec
inc r8
jne 0x1401fef0a
cmp r15, rbx
jb 0x1401fee7f
jmp 0x1401fefa0
cmp r14, rax
je 0x1401fef88
cmp rdx, r14
jbe 0x1401ff2e9
lea rdx, [rcx + r8*4]
lea r9, [r14 + r14*4]
movups xmm0, xmmword [rdx]
mov edx, dword [rdx + 0x10]
mov dword [rcx + r9*4 + 0x10], edx
movups xmmword [rcx + r9*4], xmm0
mov rdx, qword [rsi + 0x28]
cmp rdx, rax
jbe 0x1401ff2f5
cmp rdx, r14
jbe 0x1401ff301
mov rax, qword [rsi + 0x20]
movups xmm0, xmmword [rax + r8*4]
mov ecx, dword [rax + r8*4 + 0x10]
mov dword [rax + r9*4 + 0x10], ecx
movups xmmword [rax + r9*4], xmm0
inc r14
dec rbp
add r13, 0x14
cmp r15, rbx
jb 0x1401fee7b
jmp 0x1401fefa0
xor r14d, r14d
mov qword [rsi + 0x88], r14
mov rbx, qword [rsp + 0x30]
mov rax, qword [rdi + 0xc8]
mov rax, qword [rax + 0x28]
test rax, rax
je 0x1401fefc7
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
call rax
test byte [rsi + 0xb0], 0x10
je 0x1401ff069
mov rcx, rsi
xor edx, edx
call fcn.140202676
mov r14, qword [rsi + 0x88]
test r14, r14
je 0x1401ff069
mov rdi, rax
mov r15, qword [rsi + 8]
mov rbx, qword [rsi + 0x10]
xor ecx, ecx
cmp rcx, rdi
ja 0x1401ff421
cmp rbx, rdi
jb 0x1401ff42a
lea rax, [rcx*4]
lea rax, [rax + rax*4]
lea r8, [r15 + rax]
lea rdx, [rdi*4]
lea rdx, [rdx + rdx*4]
mov r9, rdx
sub r9, rax
test r9, r9
je 0x1401ff053
add r9, 0xffffffffffffffec
test byte [r8 + 4], 1
lea r8, [r8 + 0x14]
je 0x1401ff02b
cmp rcx, rdi
je 0x1401ff053
or byte [r15 + rax + 4], 1
add rax, 0x14
cmp rdx, rax
jne 0x1401ff044
mov rcx, rsi
mov rdx, rdi
call fcn.140202676
mov rcx, rdi
cmp rdi, r14
mov rdi, rax
jb 0x1401feff7
mov rax, qword [rsp + 0x90]
mov al, byte [rax + 0x18]
mov byte [rsi + 0xc1], al
mov qword [rsi + 0x78], 0x3fffffff
mov dword [rsi + 0xb4], 0x1fffffff
movaps xmm6, xmmword [rsp + 0x320]
movaps xmm7, xmmword [rsp + 0x330]
movaps xmm8, xmmword [rsp + 0x340]
movaps xmm9, xmmword [rsp + 0x350]
movaps xmm10, xmmword [rsp + 0x360]
add rsp, 0x378
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.1400793c0
cmp rcx, rdx
cmovbe rcx, rdx
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
mov edx, 8
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
xor ecx, ecx
xor edx, edx
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_metamorphosis.rs
mov rdx, rsi
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec68
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
mov rcx, r9
mov rdx, qword [rsp + 0x50]
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
mov rcx, r9
mov rdx, rax
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_mod.rs846_
mov rdx, rcx
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_fallback.rs
jmp 0x1401fec77
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401ff24c
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff23d
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec77
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rcx, r12
call fcn.1400793c0
lea r8, str.846_
jmp 0x1401fec68
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
mov rcx, rsi
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rcx, r13
call fcn.1400793c0
lea rcx, str.attempt_to_divide_by_zeroassertion_failed:_mid___self.len___home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ttf_parser_0.20.0_src_tables_cff_argstack.rs
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ttf_parser_0.20.0_src_aat.rs
mov edx, 0x19
call fcn.14007aaa0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff23d
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
jmp 0x1401ff24c
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
mov rcx, rdi
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
mov rcx, rbp
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec68
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
jmp 0x1401ff1e9
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_tracking.rs
jmp 0x1401ff288
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_tracking.rs
mov rdx, rdi
call fcn.1400793c0
lea r8, str.p36_
jmp 0x1401ff2a0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_tracking.rs
mov rdx, rbx
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
jmp 0x1401ff1e9
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_normalize.rs
jmp 0x1401ff1e9
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff132
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_extended_kerning.rs
mov edx, 8
jmp 0x1401ff1e9
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec4a
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec68
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401fec4a
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1403620e0]
lea r8, [rsp + 0xe0]
mov edx, 0x2b
call fcn.14007f9a0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
jmp 0x1401ff174
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_extended_kerning.rs
mov rdx, qword [rsp + 0x70]
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_extended_kerning.rs
jmp 0x1401ff174
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rdx, r14
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_extended_kerning.rs
jmp 0x1401ff405
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_extended_kerning.rs
jmp 0x1401ff24c
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401ff24c
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401ff24c
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_kerning.rs
jmp 0x1401fec59
lea rcx, [0x1403893e9]
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov edx, 0x23
call fcn.14007aaa0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rcx, r10
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
mov rcx, rax
mov rdx, qword [rsp + 0x40]
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff4a8
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rcx, rdi
mov rdx, rbx
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
mov rdx, rax
call fcn.14007ec10
lea rcx, str.assertion_failed:__ctx.buffer.have_output_home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_layout.rs
lea r8, [0x1403685e0]
mov edx, 0x29
call fcn.14007aaa0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_map.rs
mov rcx, rax
mov rdx, qword [rsp + 0x48]
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rcx, r14
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_aat_extended_kerning.rs
jmp 0x1401ff496
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rdx, r13
call fcn.1400793c0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rcx, r12
mov rdx, rdi
call fcn.14007ec10
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rcx, rdi
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rcx, r15
mov rdx, rbx
call fcn.14007ec10
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff5a1
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_position.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff5a1
lea rcx, str.assertion_failed:__self.have_positions
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov edx, 0x26
call fcn.14007aaa0
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_fallback.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_ot_substitute.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff5a1
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff5a1
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff5a1
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
jmp 0x1401ff5a1
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_fallback.rs
jmp 0x1401ff592
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_fallback.rs
mov rcx, rsi
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rcx, rbx
call fcn.14007a270
lea r8, str.x8__
mov edx, 0x20
mov rcx, rax
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
call fcn.14007a270
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_shape.rs
mov rdx, rax
call fcn.14007a270
int3
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
jmp 0x1402027e9
invalid
loopne 0x1401ffb24
invalid
inc dword [rbx + 0x387711f8]
lea rcx, [0x1402efd28]
movsxd rax, dword [rcx + rax*4]
add byte [rax + 0x63], cl
add al, 0x81
add rax, rcx
jmp rax
mov bp, 0x200
jmp 0x1401ffbad
add byte [rax], al
je 0x1401ffba9
cmp edi, 0x3000
add byte [rax], dh
add byte [rax], al
jne case.0x1401ffb39.11
test byte [rax], 0
add byte [rsi - 0x43], ah
invalid
invalid
mov bp, 0x100
add byte [rcx], al
jmp 0x1401ffbad
add byte [rdx], dl
cmp edi, 0x20
je 0x1401ffbad
invalid
cmp r15d, 0xa0
cmp edi, 0xa0
add byte [rcx + rdi - 0x17], dh
fiadd dword [rax]
add byte [rax], al
je 0x1401ffbad
jmp case.0x1401ffb39.11
mov bp, 0x300
jmp 0x1401ffbad
mov bp, 0x400
jmp 0x1401ffbad
mov bp, 0x600
jmp 0x1401ffbad
mov bp, 0x1300
jmp 0x1401ffbad
mov bp, 0x1400
jmp 0x1401ffbad
mov bp, 0x500
jmp 0x1401ffbad
mov bp, 0x1000
jmp 0x1401ffbad
mov bp, 0x1100
mov rcx, qword [rsi + 0x10]
mov edx, 0x20
call fcn.1401ede49
cmp ax, 1
jne 0x1401ffc2b
mov ebx, edx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x10]
mov rcx, qword [rax + 0x80]
cmp rdx, rcx
jbe 0x1401ffc6a
mov rdi, qword [rax + 8]
lea r15, [rcx + rcx*4]
movzx r14d, word [rdi + r15*4 + 0x10]
mov ecx, r14d
and ecx, 0x1f
call fcn.1401df55f
cmp al, 0x16
jne 0x1401ffc0f
lea rax, [rdi + r15*4]
add rax, 0x10
movzx ecx, r14b
movzx edx, bp
movzx ecx, cx
or ecx, edx
mov word [rax], cx
mov rcx, qword [rsi + 8]
movzx edx, bx
call 0x1402027e9
mov rax, qword [rsi + 8]
or dword [rax + 0xb0], 4
jmp 0x1401ffab8
invalid
invalid
invalid
invalid
invalid
cmp edi, 0x2011
jne case.0x1401ffb39.11
mov rcx, qword [rsi + 0x10]
mov edx, 0x2010
call fcn.1401ede49
cmp ax, 1
jne case.0x1401ffb39.11
mov rcx, qword [rsi + 8]
movzx edx, dx
jmp 0x1401ffad2
mov rcx, qword [rsi + 8]
xor edx, edx
jmp 0x1401ffad2
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
call fcn.1400793c0
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1403620e0]
lea r8, [rsp + 0x37]
mov edx, 0x2b
call fcn.14007f9a0
int3
sub rsp, 0x28
mov r9, qword [rcx + 0x10]
mov rax, qword [rcx + 0x80]
cmp r9, rax
jbe 0x140202813
mov r8, qword [rcx + 8]
lea rax, [rax + rax*4]
mov dword [r8 + rax*4 + 0xc], edx
add rsp, 0x28
jmp fcn.1401e430a
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_rustybuzz_0.12.1_src_buffer.rs
mov rcx, rax
mov rdx, r9
call fcn.1400793c0
int3