Function at 0x14005b850
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x138
mov r12, qword [r9 + 0x18]
mov rbx, qword [r9 + 0x20]
cmp r12, rbx
jbe 0x14005b87c
mov qword [rcx], 0
jmp 0x14005dd7d
mov r13, r9
mov rdi, r8
mov r14, rdx
mov qword [rsp + 0x30], rcx
mov r11d, dword [r9]
mov rax, r11
dec rax
cmp rax, 2
jb 0x14005b8be
lea rax, [r14 + 0x58]
cmp byte [r14 + 0x68], 3
lea rcx, [0x1400ffd40]
cmovne rcx, rax
xor r10d, r10d
cmp byte [rcx + 0x10], 2
cmovne r10, rcx
jne 0x14005ba72
cmp byte [r13 + 0x28], 0
je 0x14005b9b2
test r12, r12
je 0x14005b989
lea rax, [r12 - 1]
cmp qword [r13 + 0x10], rax
jbe 0x14005b989
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x14005b989
movzx ecx, byte [rcx + rax]
movzx r15d, cl
mov r8d, dword [r13 + 4]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov rax, qword [r14 + 0x290]
or rax, qword [r14 + 0x2a0]
mov rdx, qword [r14 + 0x288]
or rdx, qword [r14 + 0x298]
or rdx, rax
je 0x14005bc72
lea rax, [r14 + 0x288]
mov rdx, r15
shr rdx, 3
and edx, 0xfffffff0
mov esi, r8d
mov r8d, 1
xor r9d, r9d
shld r9, r8, cl
shl r8, cl
xor r10d, r10d
test cl, 0x40
cmovne r9, r8
cmovne r8, r10
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
mov r8d, esi
je 0x14005bc72
mov esi, 4
cmp esi, 5
je 0x14005bcf8
jmp 0x14005bc9f
mov r8d, dword [r13 + 4]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov bpl, 2
movzx ecx, bpl
test r11d, r11d
jne 0x14005bc81
jmp 0x14005bcd0
test r12, r12
je 0x14005bb59
lea rax, [r12 - 1]
cmp qword [r13 + 0x10], rax
jbe 0x14005bb59
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x14005bb59
movzx ecx, byte [rcx + rax]
movzx r15d, cl
mov r8d, dword [r13 + 4]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov rax, qword [r14 + 0x290]
or rax, qword [r14 + 0x2a0]
mov rdx, qword [r14 + 0x288]
or rdx, qword [r14 + 0x298]
or rdx, rax
je 0x14005c087
lea rax, [r14 + 0x288]
mov rdx, r15
shr rdx, 3
and edx, 0xfffffff0
mov esi, r8d
mov r8d, 1
xor r9d, r9d
shld r9, r8, cl
shl r8, cl
xor r10d, r10d
test cl, 0x40
cmovne r9, r8
cmovne r8, r10
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
mov r8d, esi
je 0x14005c087
mov esi, 4
cmp esi, 5
je 0x14005c19b
jmp 0x14005c0c0
cmp byte [r13 + 0x28], 0
mov rbp, qword [r14 + 0x178]
mov eax, dword [rbp + 0x17c]
mov dword [rsp + 0xb8], eax
mov qword [rsp + 0x78], r10
je 0x14005bbaf
test r12, r12
je 0x14005bb82
lea rax, [r12 - 1]
cmp qword [r13 + 0x10], rax
jbe 0x14005bb82
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x14005bb82
movzx ecx, byte [rcx + rax]
movzx r15d, cl
mov eax, dword [r13 + 4]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov rax, qword [r14 + 0x290]
or rax, qword [r14 + 0x2a0]
mov rdx, qword [r14 + 0x288]
or rdx, qword [r14 + 0x298]
or rdx, rax
je 0x14005c6fc
lea rax, [r14 + 0x288]
mov rdx, r15
shr rdx, 3
and edx, 0xfffffff0
mov r8d, 1
xor r9d, r9d
shld r9, r8, cl
shl r8, cl
xor r10d, r10d
test cl, 0x40
cmovne r9, r8
cmovne r8, r10
mov r10, qword [rsp + 0x78]
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
je 0x14005c6fc
mov ecx, 4
cmp ecx, 5
je 0x14005c762
jmp 0x14005cd44
mov r8d, dword [r13 + 4]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov bpl, 2
movzx ecx, bpl
test r11d, r11d
jne 0x14005c09a
jmp 0x14005c16f
mov eax, dword [r13 + 4]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov sil, 2
movzx eax, sil
test r11d, r11d
jne 0x14005c70b
jmp 0x14005c736
test r12, r12
je 0x14005c05a
lea rax, [r12 - 1]
cmp qword [r13 + 0x10], rax
jbe 0x14005c05a
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x14005c05a
movzx ecx, byte [rcx + rax]
movzx r15d, cl
mov eax, dword [r13 + 4]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov rax, qword [r14 + 0x290]
or rax, qword [r14 + 0x2a0]
mov rdx, qword [r14 + 0x288]
or rdx, qword [r14 + 0x298]
or rdx, rax
je 0x14005c9b5
lea rax, [r14 + 0x288]
mov rdx, r15
shr rdx, 3
and edx, 0xfffffff0
mov r8d, 1
xor r9d, r9d
shld r9, r8, cl
shl r8, cl
xor r10d, r10d
test cl, 0x40
cmovne r9, r8
cmovne r8, r10
mov r10, qword [rsp + 0x78]
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
je 0x14005c9b5
mov ecx, 4
cmp ecx, 5
je 0x14005ca1b
jmp 0x14005cd44
movzx ebp, byte [r14 + r15 + 0x78]
movzx ecx, bpl
test r11d, r11d
je 0x14005bcd0
cmp r11d, 2
jne 0x14005bccc
mov esi, 2
test byte [r14 + 0x71], 1
jne 0x14005c025
mov r15d, r8d
cmp esi, 5
je 0x14005bcf8
lea ecx, [rsi - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
test eax, eax
je 0x14005c112
cmp eax, 1
jne 0x14005c13d
test r12, r12
jne 0x14005c0e0
jmp 0x14005e039
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14005ded4
mov rax, qword [rdi + 0x48]
mov r15d, dword [rax + rcx*4]
mov esi, 5
test r15d, r15d
js 0x14005c6ca
cmp esi, 5
jne 0x14005bc9f
cmp qword [rdi], 1
jne 0x14005bd1d
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], r12
cmp r12, rbx
jae 0x14005bf76
mov rsi, qword [r13 + 8]
mov r13, qword [r13 + 0x10]
lea r10, [rsp + 0x48]
jmp 0x14005bd6a
mov eax, r15d
and eax, 0x10000000
je 0x14005c629
inc r12
cmp r12, rbx
jae 0x14005bf7e
cmp r15d, 0x7ffffff
jbe 0x14005bdd0
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], r12
cmp r12, r13
jae 0x14005de9e
movzx r8d, byte [rsi + r12]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14005de90
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x14005beff
mov r15d, eax
cmp r15d, 0x8000000
jae 0x14005bd50
jmp 0x14005bd5e
cmp r12, rbx
jae 0x14005bd5e
mov r9, qword [rdi + 0x30]
nop dword [rax]
movzx eax, byte [rsi + r12]
movzx eax, byte [r14 + rax + 0x188]
mov ecx, r15d
add rcx, rax
mov eax, dword [r9 + rcx*4]
cmp rax, 0x7ffffff
ja 0x14005be93
lea rbp, [r12 + 3]
cmp rbp, rbx
jae 0x14005be93
movzx ecx, byte [rsi + r12 + 1]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov r15d, dword [r9 + rcx*4]
cmp r15, 0x7ffffff
ja 0x14005be80
movzx eax, byte [rsi + r12 + 2]
movzx eax, byte [r14 + rax + 0x188]
add rax, r15
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x14005be8f
movzx ecx, byte [rsi + r12 + 3]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov r15d, dword [r9 + rcx*4]
cmp r15d, 0x7ffffff
ja 0x14005bea3
add r12, 4
cmp r12, rbx
jb 0x14005bde0
jmp 0x14005bd5e
inc r12
mov edx, eax
mov rbp, r12
test r15d, r15d
jns 0x14005beea
jmp 0x14005beaa
add r12, 2
mov edx, r15d
mov rbp, r12
mov r15d, eax
test r15d, r15d
jns 0x14005beea
jmp 0x14005beaa
mov edx, eax
test r15d, r15d
jns 0x14005beea
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], rbp
cmp rbp, r13
jae 0x14005df91
movzx r8d, byte [rsi + rbp]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x14005defe
mov r15d, dword [r9 + rcx*4]
test r15d, r15d
js 0x14005bf3b
mov r12, rbp
cmp r15d, 0x8000000
jae 0x14005bd50
jmp 0x14005bd5e
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
mov rbp, r10
mov rcx, r10
mov edx, r15d
call fcn.1400f81b0
test eax, eax
jne 0x14005dbd4
mov r15d, edx
mov r10, rbp
cmp r15d, 0x8000000
jae 0x14005bd50
jmp 0x14005bd5e
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
mov rcx, r10
call fcn.1400f81b0
test eax, eax
jne 0x14005dec4
mov r15d, edx
mov r12, rbp
lea r10, [rsp + 0x48]
cmp r15d, 0x8000000
jae 0x14005bd50
jmp 0x14005bd5e
mov rsi, qword [r13 + 8]
mov r13, qword [r13 + 0x10]
cmp rbx, r13
jae 0x14005bfdc
test rsi, rsi
je 0x14005bfdc
movzx esi, byte [rsi + rbx]
movzx eax, byte [r14 + rsi + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14005de90
mov rax, qword [rdi + 0x30]
mov r8d, dword [rax + rcx*4]
test r8d, r8d
js 0x14005d38a
mov eax, r8d
mov r13, rbx
test eax, 0x8000000
jne 0x14005dd2f
test eax, 0x20000000
je 0x14005c01e
jmp 0x14005c5a5
movzx eax, byte [r14 + 0x287]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
inc rcx
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x14005dfa5
mov rdx, qword [rdi + 0x30]
mov r8d, dword [rdx + rcx*4]
test r8d, r8d
js 0x14005d3db
test r8d, 0x8000000
jne 0x14005dd2f
xor ecx, ecx
jmp 0x14005dd3f
mov eax, r8d
mov rdx, qword [r14 + 0x178]
cmp qword [rdx + 0x160], rax
jbe 0x14005c6a0
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x14005bcdd
jmp 0x14005ded4
mov eax, dword [r13 + 4]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov sil, 2
movzx eax, sil
test r11d, r11d
jne 0x14005c9c4
jmp 0x14005c9ef
movzx ebp, byte [r14 + r15 + 0x78]
movzx ecx, bpl
test r11d, r11d
je 0x14005c16f
cmp r11d, 2
jne 0x14005c16b
mov esi, 2
test byte [r14 + 0x71], 1
jne 0x14005c66b
mov r15d, r8d
cmp esi, 5
je 0x14005c19b
lea ecx, [rsi - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
test eax, eax
je 0x14005c112
cmp eax, 1
jne 0x14005c13d
test r12, r12
je 0x14005e039
movzx eax, byte [0x14018d171]
mov ecx, 0x10
mov edx, 8
call fcn.1400053b0
test rax, rax
je 0x14005e014
dec r12
mov byte [rax], 0
mov byte [rax + 1], r15b
mov qword [rax + 8], r12
jmp 0x14005dbdc
movzx eax, byte [0x14018d171]
mov ecx, 0x10
mov edx, 8
call fcn.1400053b0
test rax, rax
je 0x14005e014
mov byte [rax], 1
mov qword [rax + 8], r12
jmp 0x14005dbdc
movzx eax, byte [0x14018d171]
mov ecx, 0x10
mov edx, 8
call fcn.1400053b0
test rax, rax
je 0x14005e014
mov byte [rax], 3
mov dword [rax + 4], esi
mov dword [rax + 8], r15d
jmp 0x14005dbdc
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14005ded4
mov rax, qword [rdi + 0x48]
mov r15d, dword [rax + rcx*4]
mov esi, 5
test r15d, r15d
js 0x14005c983
cmp esi, 5
jne 0x14005c0c0
cmp qword [rdi], 1
jne 0x14005c1c0
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], r12
cmp r12, rbx
jae 0x14005c535
mov rbp, qword [r13 + 8]
mov r13, qword [r13 + 0x10]
mov rax, qword [r14 + 0x178]
mov qword [rsp + 0x78], rax
mov rax, qword [r14 + 0x180]
and eax, 0x3f
mov qword [rsp + 0xb0], rax
xor r10d, r10d
jmp 0x14005c224
mov qword [rsp + 0xb8], r12
inc r12
cmp r12, rbx
jae 0x14005c547
cmp r15d, 0x7ffffff
jbe 0x14005c290
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], r12
cmp r12, r13
jae 0x14005de9e
movzx r8d, byte [rbp + r12]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14005de90
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x14005c3ee
mov r15d, eax
cmp r15d, 0x8000000
jae 0x14005c440
jmp 0x14005c218
cmp r12, rbx
jae 0x14005c218
mov r9, qword [rdi + 0x30]
nop dword [rax]
movzx eax, byte [rbp + r12]
movzx eax, byte [r14 + rax + 0x188]
mov ecx, r15d
add rcx, rax
mov edx, dword [r9 + rcx*4]
cmp rdx, 0x7ffffff
ja 0x14005c346
lea rsi, [r12 + 3]
cmp rsi, rbx
jae 0x14005c346
movzx eax, byte [rbp + r12 + 1]
movzx eax, byte [r14 + rax + 0x188]
add rax, rdx
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x14005c36a
movzx ecx, byte [rbp + r12 + 2]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov edx, dword [r9 + rcx*4]
cmp rdx, 0x7ffffff
ja 0x14005c3cc
movzx eax, byte [rbp + r12 + 3]
movzx eax, byte [r14 + rax + 0x188]
add rax, rdx
mov r15d, dword [r9 + rax*4]
cmp r15d, 0x7ffffff
ja 0x14005c3e1
add r12, 4
cmp r12, rbx
jb 0x14005c2a0
jmp 0x14005c218
mov ecx, edx
mov rsi, r12
mov edx, r15d
test ecx, ecx
js 0x14005c376
mov r15d, ecx
mov r12, rsi
cmp r15d, 0x8000000
jae 0x14005c440
jmp 0x14005c218
inc r12
mov ecx, eax
mov rsi, r12
test ecx, ecx
jns 0x14005c352
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], rsi
cmp rsi, r13
jae 0x14005dfb3
movzx r8d, byte [rbp + rsi]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x14005defe
mov r15d, dword [r9 + rcx*4]
test r15d, r15d
js 0x14005c4dd
mov r12, rsi
cmp r15d, 0x8000000
jae 0x14005c440
jmp 0x14005c218
add r12, 2
mov ecx, edx
mov rsi, r12
mov edx, eax
test ecx, ecx
jns 0x14005c352
jmp 0x14005c376
mov ecx, r15d
test ecx, ecx
jns 0x14005c352
jmp 0x14005c376
mov qword [rsp + 0x40], r13
mov r13d, r11d
mov rsi, r10
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
call fcn.1400f81b0
test eax, eax
jne 0x14005dbd4
mov r15d, edx
mov r10, rsi
mov r11d, r13d
mov r13, qword [rsp + 0x40]
cmp r15d, 0x8000000
jb 0x14005c218
nop word [rax + rax]
mov eax, r15d
mov ecx, eax
and ecx, 0x10000000
jne 0x14005c218
test eax, 0x8000000
je 0x14005cba4
xor r11d, r11d
mov r10d, 1
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x160], 1
je 0x14005c210
mov eax, r15d
and eax, 0x7ffffff
mov rcx, qword [rsp + 0xb0]
shr rax, cl
mov rdx, qword [rdi + 0x70]
cmp rax, rdx
jae 0x14005df0f
mov rcx, qword [rdi + 0x60]
shl rax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x14005df20
mov rax, qword [rcx + rax]
test byte [rax + 0x10], 2
je 0x14005c210
cmp rdx, 0xc
jbe 0x14005e06d
add rdx, 0xfffffffffffffff3
cmp rdx, 3
jbe 0x14005e080
mov r11d, dword [rax + 0x1d]
jmp 0x14005c210
mov qword [rsp + 0x40], r13
mov r13d, r11d
mov qword [rsp + 0xa0], r10
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.1400f81b0
test eax, eax
jne 0x14005decc
mov r15d, edx
mov r12, rsi
mov r10, qword [rsp + 0xa0]
mov r11d, r13d
mov r13, qword [rsp + 0x40]
cmp r15d, 0x8000000
jae 0x14005c440
jmp 0x14005c218
mov rbp, qword [r13 + 8]
mov r13, qword [r13 + 0x10]
xor r10d, r10d
cmp rbx, r13
jb 0x14005c554
jmp 0x14005c5af
mov r12, qword [rsp + 0xb8]
cmp rbx, r13
jae 0x14005c5af
test rbp, rbp
je 0x14005c5af
movzx esi, byte [rbp + rbx]
movzx eax, byte [r14 + rsi + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14005de90
mov rax, qword [rdi + 0x30]
mov r8d, dword [rax + rcx*4]
test r8d, r8d
js 0x14005d467
mov eax, r8d
mov r13, rbx
test eax, 0x8000000
jne 0x14005c5ed
test eax, 0x20000000
je 0x14005c604
mov ecx, esi
mov rdx, rbx
jmp 0x14005cd71
movzx eax, byte [r14 + 0x287]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
inc rcx
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x14005dfa5
mov rdx, qword [rdi + 0x30]
mov r8d, dword [rdx + rcx*4]
test r8d, r8d
js 0x14005d4b8
test r8d, 0x8000000
je 0x14005c604
mov rcx, r14
mov rdx, rdi
call fcn.14005b740
mov r11d, eax
mov r10d, 1
mov r12, r13
mov rcx, rdi
mov rdx, rbx
mov rsi, r10
mov edi, r11d
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov qword [rcx + 8], r12
mov dword [rcx + 0x10], edi
jmp 0x14005dd7d
mov eax, r15d
test eax, 0x8000000
jne 0x14005c8dc
test eax, 0x40000000
jne 0x14005cc31
test eax, 0x20000000
je 0x14005e120
mov rcx, rdi
mov rdx, r12
call fcn.14005b800
cmp r12, r13
jae 0x14005dfe6
movzx ecx, byte [rsi + r12]
jmp 0x14005cd6e
mov eax, r8d
mov rdx, qword [r14 + 0x178]
cmp qword [rdx + 0x160], rax
jbe 0x14005c959
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x14005c17c
jmp 0x14005ded4
lea rcx, [rsp + 0x80]
mov rsi, r11
mov r15d, r8d
call fcn.140014c70
mov r8d, r15d
mov r11, rsi
mov r15d, eax
mov esi, 5
test r15d, r15d
jns 0x14005bcf3
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r11d
mov r9d, ebp
call fcn.1400f8e60
mov rsi, rax
mov r15, rax
shr r15, 0x20
cmp esi, 5
je 0x14005bcf8
jmp 0x14005bc9f
movzx esi, byte [r14 + r15 + 0x78]
movzx eax, sil
test r11d, r11d
je 0x14005c736
cmp r11d, 2
jne 0x14005c732
mov ecx, 2
test byte [r14 + 0x71], 1
jne 0x14005c908
mov eax, dword [rsp + 0x40]
mov r15d, eax
cmp ecx, 5
je 0x14005c762
jmp 0x14005cd44
add rax, 6
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x14005cc03
mov rcx, qword [rdi + 0x48]
mov r15d, dword [rcx + rax*4]
mov ecx, 5
test r15d, r15d
js 0x14005cc6f
cmp ecx, 5
jne 0x14005cd44
mov qword [rsp + 0xe0], rbp
mov qword [rsp + 0xb0], r11
mov rbp, qword [r13 + 8]
mov r9, qword [r13 + 0x10]
mov rax, qword [r10]
mov r10, qword [r10 + 8]
mov rcx, qword [r10 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
lea rdx, [rcx + rax]
add rdx, 0x10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x80]
mov r8, rbp
mov qword [rsp + 0xa0], r9
call qword [r10 + 0x40]
cmp qword [rsp + 0x80], 0
je 0x14005cb95
mov r13, qword [rsp + 0x88]
cmp dword [rsp + 0xb8], 0
je 0x14005ce06
mov qword [rsp + 0x50], rbp
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], rbx
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x4c], eax
mov byte [rsp + 0x70], 1
lea rcx, [rsp + 0x48]
mov rdx, r13
mov r8, rbx
call fcn.1400608f0
mov rsi, qword [rsp + 0x60]
test rsi, rsi
je 0x14005c937
lea rax, [rsi - 1]
cmp qword [rsp + 0x58], rax
jbe 0x14005c937
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14005c937
movzx ecx, byte [rcx + rax]
movzx eax, cl
mov r15d, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0xc8], rdi
mov rdx, qword [r14 + 0x290]
or rdx, qword [r14 + 0x2a0]
mov r9, qword [r14 + 0x288]
or r9, qword [r14 + 0x298]
or r9, rdx
je 0x14005cd88
lea rdx, [r14 + 0x288]
mov r12, rax
shr r12, 3
and r12d, 0xfffffff0
mov r9d, 1
xor r10d, r10d
shld r10, r9, cl
shl r9, cl
xor r11d, r11d
test cl, 0x40
cmovne r10, r9
cmovne r9, r11
and r10, qword [rdx + r12 + 8]
and r9, qword [rdx + r12]
or r9, r10
je 0x14005cd88
mov edx, 4
jmp 0x14005cdd7
mov rcx, r14
mov rdx, rdi
mov r8d, r15d
call fcn.14005b740
mov esi, eax
mov rcx, rdi
mov rdx, r12
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov qword [rcx], 1
jmp 0x14005dd00
mov ecx, dword [rsp + 0x40]
cmp qword [rbp + 0x160], rcx
jbe 0x14005cc46
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jb 0x14005c743
jmp 0x14005cc03
mov r15d, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0xc8], rdi
mov r12b, 2
jmp 0x14005cd8e
lea rcx, [rsp + 0x80]
mov rsi, r11
mov r15d, r8d
call fcn.140014c70
mov r8d, r15d
mov r11, rsi
mov r15d, eax
mov esi, 5
test r15d, r15d
jns 0x14005c192
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r11d
mov r9d, ebp
call fcn.1400f8e60
mov rsi, rax
mov r15, rax
shr r15, 0x20
cmp esi, 5
je 0x14005c19b
jmp 0x14005c0c0
movzx esi, byte [r14 + r15 + 0x78]
movzx eax, sil
test r11d, r11d
je 0x14005c9ef
cmp r11d, 2
jne 0x14005c9eb
mov ecx, 2
test byte [r14 + 0x71], 1
jne 0x14005cbd9
mov eax, dword [rsp + 0x40]
mov r15d, eax
cmp ecx, 5
je 0x14005ca1b
jmp 0x14005cd44
add rax, 6
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jae 0x14005cc03
mov rcx, qword [rdi + 0x48]
mov r15d, dword [rcx + rax*4]
mov ecx, 5
test r15d, r15d
js 0x14005cd07
cmp ecx, 5
jne 0x14005cd44
mov qword [rsp + 0xe0], rbp
mov qword [rsp + 0xb0], r11
mov rbp, qword [r13 + 8]
mov r9, qword [r13 + 0x10]
mov rax, qword [r10]
mov r10, qword [r10 + 8]
mov rcx, qword [r10 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
lea rdx, [rcx + rax]
add rdx, 0x10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x80]
mov r8, rbp
mov qword [rsp + 0xa0], r9
call qword [r10 + 0x40]
cmp qword [rsp + 0x80], 0
je 0x14005cb95
mov rsi, qword [rsp + 0x88]
cmp dword [rsp + 0xb8], 0
je 0x14005d627
mov qword [rsp + 0x50], rbp
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], rbx
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x4c], eax
mov byte [rsp + 0x70], 0
lea rcx, [rsp + 0x48]
mov rdx, rsi
mov r8, rbx
call fcn.1400608f0
mov r15, qword [rsp + 0x60]
test r15, r15
je 0x14005cc0f
lea rax, [r15 - 1]
cmp qword [rsp + 0x58], rax
jbe 0x14005cc0f
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14005cc0f
movzx ecx, byte [rcx + rax]
movzx eax, cl
mov r13d, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0xc8], rdi
mov rdx, qword [r14 + 0x290]
or rdx, qword [r14 + 0x2a0]
mov r9, qword [r14 + 0x288]
or r9, qword [r14 + 0x298]
or r9, rdx
je 0x14005d504
lea rdx, [r14 + 0x288]
mov r12, rax
shr r12, 3
and r12d, 0xfffffff0
mov r9d, 1
xor r10d, r10d
shld r10, r9, cl
shl r9, cl
xor r11d, r11d
test cl, 0x40
cmovne r10, r9
cmovne r9, r11
and r10, qword [rdx + r12 + 8]
and r9, qword [rdx + r12]
or r9, r10
je 0x14005d504
mov edx, 4
jmp 0x14005d5de
xor eax, eax
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
jmp 0x14005dd7d
test eax, 0x40000000
jne 0x14005ccb1
test eax, 0x20000000
je 0x14005e120
mov rcx, rdi
mov rdx, r12
call fcn.14005b800
cmp r12, r13
jae 0x14005dfe6
movzx ecx, byte [rbp + r12]
jmp 0x14005cd6e
mov ecx, dword [rsp + 0x40]
cmp qword [rbp + 0x160], rcx
jbe 0x14005ccde
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rdi + 0x58]
cmp rax, rdx
jb 0x14005c9fc
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
jmp 0x14005df16
mov r13d, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x4c]
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0xc8], rdi
mov r12b, 2
jmp 0x14005d50a
mov rcx, rdi
mov rdx, r12
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
jmp 0x14005b870
lea rcx, [rsp + 0x80]
mov r15, r11
call fcn.140014c70
mov r10, qword [rsp + 0x78]
mov r11, r15
mov r15d, eax
mov ecx, 5
test r15d, r15d
jns 0x14005c759
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r11d
mov r8d, dword [rsp + 0x40]
mov r9d, esi
mov rsi, r11
call fcn.1400f8e60
mov r10, qword [rsp + 0x78]
mov r11, rsi
mov rcx, rax
mov r15, rax
shr r15, 0x20
cmp ecx, 5
je 0x14005c762
jmp 0x14005cd44
mov rcx, rdi
mov rdx, r12
mov rsi, r10
mov edi, r11d
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov rax, qword [rsp + 0xb8]
mov qword [rcx + 8], rax
mov dword [rcx + 0x10], edi
jmp 0x14005dd7d
lea rcx, [rsp + 0x80]
mov r15, r11
call fcn.140014c70
mov r10, qword [rsp + 0x78]
mov r11, r15
mov r15d, eax
mov ecx, 5
test r15d, r15d
jns 0x14005ca12
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r11d
mov r8d, dword [rsp + 0x40]
mov r9d, esi
mov rsi, r11
call fcn.1400f8e60
mov r10, qword [rsp + 0x78]
mov r11, rsi
mov rcx, rax
mov r15, rax
shr r15, 0x20
cmp ecx, 5
je 0x14005ca1b
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
test eax, eax
je 0x14005dbd4
cmp eax, 1
jne 0x14005cd7b
test r12, r12
je 0x14005e039
dec r12
mov ecx, r15d
mov rdx, r12
call fcn.14000f510
jmp 0x14005dbdc
mov edx, r15d
call fcn.14000f5b0
jmp 0x14005dbdc
movzx r12d, byte [r14 + rax + 0x78]
movzx ecx, r12b
test r15d, r15d
je 0x14005cdb6
cmp r15d, 2
jne 0x14005cdb2
mov edx, 2
test byte [r14 + 0x71], 1
jne 0x14005d431
mov eax, r8d
jmp 0x14005cdd7
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14005ded4
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
mov edx, 5
test eax, eax
js 0x14005dca8
shl rax, 0x20
mov edx, edx
or rdx, rax
lea rcx, [rsp + 0xe8]
mov r8, rsi
call fcn.14005b540
cmp dword [rsp + 0xe8], 0
jne 0x14005d601
mov r15d, dword [rsp + 0xec]
cmp qword [rdi], 1
jne 0x14005ce2b
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], r13
mov qword [rdi + 0x10], r13
cmp r13, rbx
mov r10, qword [rsp + 0x78]
mov r12, qword [rsp + 0xa0]
jae 0x14005d31e
lea rax, [rbx + 1]
mov qword [rsp + 0xd8], rax
lea rax, [r14 + 0x288]
mov qword [rsp + 0xd0], rax
movzx eax, byte [r14 + 0x71]
mov byte [rsp + 0x120], al
mov ecx, dword [rsp + 0x40]
lea rax, [rcx + rcx*2]
add rax, rax
add rax, 0xc
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rcx
shl rcx, 0x20
or rcx, 2
mov qword [rsp + 0x118], rcx
jmp 0x14005ceb7
mov r13, rsi
inc r13
cmp r13, rbx
jae 0x14005d31e
cmp r15d, 0x7ffffff
jbe 0x14005cf19
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], r13
cmp r13, r12
jae 0x14005df7d
movzx r8d, byte [rbp + r13]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14005de90
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x14005d056
mov rsi, r13
mov r15d, eax
jmp 0x14005d084
cmp r13, rbx
jae 0x14005ceab
mov r9, qword [rdi + 0x30]
nop word cs:[rax + rax]
movzx eax, byte [rbp + r13]
movzx eax, byte [r14 + rax + 0x188]
mov ecx, r15d
add rcx, rax
mov eax, dword [r9 + rcx*4]
cmp rax, 0x7ffffff
ja 0x14005cfda
lea rsi, [r13 + 3]
cmp rsi, rbx
jae 0x14005cfda
movzx ecx, byte [rbp + r13 + 1]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov r15d, dword [r9 + rcx*4]
cmp r15, 0x7ffffff
ja 0x14005cfcc
movzx eax, byte [rbp + r13 + 2]
movzx eax, byte [r14 + rax + 0x188]
add rax, r15
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x14005cfd6
movzx ecx, byte [rbp + r13 + 3]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov r15d, dword [r9 + rcx*4]
cmp r15d, 0x7ffffff
ja 0x14005cfe5
add r13, 4
cmp r13, rbx
jb 0x14005cf30
jmp 0x14005ceab
inc r13
mov edx, eax
mov rsi, r13
jmp 0x14005cfe7
add r13, 2
mov edx, r15d
mov rsi, r13
mov r15d, eax
jmp 0x14005cfe7
mov edx, eax
test r15d, r15d
jns 0x14005d084
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], rsi
cmp rsi, r12
jae 0x14005dfd2
movzx r8d, byte [rbp + rsi]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x14005defe
mov r15d, dword [r9 + rcx*4]
test r15d, r15d
jns 0x14005d084
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.1400f81b0
test eax, eax
jne 0x14005decc
mov r15d, edx
jmp 0x14005d07f
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
call fcn.1400f81b0
test eax, eax
jne 0x14005ddba
mov r15d, edx
mov rsi, r13
mov r10, qword [rsp + 0x78]
cmp r15d, 0x7ffffff
jbe 0x14005cea8
test r15d, 0x10000000
je 0x14005d53a
mov rax, qword [r10]
mov r10, qword [r10 + 8]
mov rcx, qword [r10 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
lea rdx, [rcx + rax]
add rdx, 0x10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0xe8]
mov r8, rbp
mov r9, r12
call qword [r10 + 0x40]
cmp qword [rsp + 0xe8], 0
je 0x14005d57f
mov r13, qword [rsp + 0xf0]
cmp r13, rsi
jbe 0x14005d1e1
cmp dword [rsp + 0xb8], 0
mov r10, qword [rsp + 0xb0]
je 0x14005d287
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xc8], rbx
cmp r12, rbx
jb 0x14005e093
cmp qword [rsp + 0xd8], r13
jb 0x14005e093
lea rsi, [r13 - 1]
cmp r12, rsi
jbe 0x14005d1ee
movzx eax, byte [rbp + rsi]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
mov rdx, qword [r14 + 0x288]
or rdx, qword [r14 + 0x298]
or rdx, rcx
je 0x14005d203
movzx r15d, al
xor edx, edx
mov ecx, r15d
mov r8d, 1
shld rdx, r8, cl
mov r8, r15
shr r8, 3
mov r9d, 1
shl r9, cl
and r8d, 0xfffffff0
test r15b, 0x40
cmovne rdx, r9
mov ecx, 0
cmovne r9, rcx
mov rcx, qword [rsp + 0xd0]
and rdx, qword [rcx + r8 + 8]
and r9, qword [rcx + r8]
or r9, rdx
je 0x14005d203
mov eax, 4
cmp eax, 5
mov r12, qword [rsp + 0xa0]
je 0x14005d287
jmp 0x14005d2ef
mov r13, rsi
mov r10, qword [rsp + 0x78]
jmp 0x14005ceab
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov r12b, 2
jmp 0x14005d20c
movzx eax, al
movzx r12d, byte [r14 + rax + 0x78]
movzx ecx, r12b
test r10d, r10d
je 0x14005d25b
cmp r10d, 2
jne 0x14005d257
mov eax, dword [rsp + 0x40]
mov r15d, eax
mov rax, qword [rsp + 0x118]
test byte [rsp + 0x120], 1
je 0x14005d27a
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x110]
cmp qword [rax + 0x160], rdx
jbe 0x14005d29a
add rcx, qword [rsp + 0x108]
jmp 0x14005d25b
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14005ded4
mov rax, qword [rdi + 0x48]
mov r15d, dword [rax + rcx*4]
mov eax, 5
test r15d, r15d
js 0x14005d2bc
cmp eax, 5
mov r12, qword [rsp + 0xa0]
jne 0x14005d2ef
cmp r13, rbx
mov r10, qword [rsp + 0x78]
jb 0x14005ceb7
jmp 0x14005d31e
lea rcx, [rsp + 0x80]
call fcn.140014c70
mov r10, qword [rsp + 0xb0]
mov r15d, eax
mov eax, 5
test r15d, r15d
jns 0x14005d27a
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r10d
mov r8d, dword [rsp + 0x40]
mov r9d, r12d
call fcn.1400f8e60
mov r15, rax
shr r15, 0x20
cmp eax, 5
mov r12, qword [rsp + 0xa0]
je 0x14005d287
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
test ecx, ecx
je 0x14005dee2
cmp ecx, 1
jne 0x14005deef
mov ecx, r15d
mov rdx, rsi
call fcn.14000f510
jmp 0x14005d609
cmp rbx, r12
jae 0x14005d35d
movzx esi, byte [rbp + rbx]
mov rcx, r14
mov rdx, rdi
mov r8d, r15d
mov r9d, esi
call fcn.14005b640
test eax, eax
jne 0x14005dbb9
mov r8d, edx
mov eax, edx
test eax, 0x8000000
jne 0x14005dcd7
test eax, 0x20000000
je 0x14005d382
jmp 0x14005dc51
mov rcx, r14
mov rdx, rdi
mov r8d, r15d
call fcn.14005b6c0
test eax, eax
jne 0x14005dbd4
mov r8d, edx
test edx, 0x8000000
jne 0x14005dcda
xor r14d, r14d
jmp 0x14005dced
mov r8d, esi
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
call fcn.1400f81b0
test eax, eax
je 0x14005dd09
movzx eax, byte [0x14018d171]
mov ecx, 0x10
mov edx, 8
call fcn.1400053b0
test rax, rax
je 0x14005e014
mov byte [rax], 1
mov qword [rax + 8], rbx
jmp 0x14005dbdc
inc rax
shl eax, 0x10
or eax, 1
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
mov r8d, eax
call fcn.1400f81b0
test eax, eax
je 0x14005dd1f
movzx eax, byte [0x14018d171]
mov ecx, 0x10
mov edx, 8
call fcn.1400053b0
test rax, rax
je 0x14005e014
mov byte [rax], 1
mov qword [rax + 8], r13
jmp 0x14005dbdc
mov eax, r8d
mov rdx, qword [rsp + 0xe0]
cmp qword [rdx + 0x160], rax
jbe 0x14005dc7e
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x14005cdc3
jmp 0x14005ded4
mov r13, r12
mov ebp, r11d
mov r12, r10
mov r8d, esi
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
call fcn.1400f81b0
test eax, eax
jne 0x14005dbb9
mov r8d, edx
mov r10, r12
mov r11d, ebp
mov r12, r13
mov eax, r8d
mov r13, rbx
test eax, 0x8000000
je 0x14005c59e
jmp 0x14005c5ed
mov ebp, r11d
mov rsi, r10
inc rax
shl eax, 0x10
or eax, 1
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
mov r8d, eax
call fcn.1400f81b0
test eax, eax
jne 0x14005ddba
mov r8d, edx
mov r10, rsi
mov r11d, ebp
test r8d, 0x8000000
jne 0x14005c5ed
jmp 0x14005c604
movzx r12d, byte [r14 + rax + 0x78]
movzx ecx, r12b
test r13d, r13d
je 0x14005d5bd
cmp r13d, 2
jne 0x14005d531
mov edx, 2
test byte [r14 + 0x71], 1
jne 0x14005d599
mov eax, r8d
jmp 0x14005d5de
add rcx, 6
jmp 0x14005d5bd
mov eax, r15d
test eax, 0x8000000
jne 0x14005ddc2
test eax, 0x40000000
jne 0x14005deb2
test eax, 0x20000000
je 0x14005e120
mov rcx, rdi
mov rdx, rsi
call fcn.14005b800
cmp rsi, r12
jae 0x14005e025
movzx ecx, byte [rbp + rsi]
mov rdx, rsi
jmp 0x14005cd71
mov rcx, rdi
mov rdx, rbx
call fcn.14005b800
xor eax, eax
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
jmp 0x14005dd7d
mov eax, r8d
mov rdx, qword [rsp + 0xe0]
cmp qword [rdx + 0x160], rax
jbe 0x14005ddf2
lea rax, [rax + rax*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14005ded4
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
mov edx, 5
test eax, eax
js 0x14005de1c
shl rax, 0x20
mov edx, edx
or rdx, rax
lea rcx, [rsp + 0xe8]
mov r8, r15
call fcn.14005b540
cmp dword [rsp + 0xe8], 0
je 0x14005d61f
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 8], rax
mov eax, 2
mov qword [rcx], rax
jmp 0x14005dd7d
mov r15d, dword [rsp + 0xec]
cmp qword [rdi], 1
jne 0x14005d64c
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], rsi
mov qword [rdi + 0x10], rsi
cmp rsi, rbx
mov r10, qword [rsp + 0x78]
mov r12, qword [rsp + 0xa0]
jae 0x14005db90
lea rax, [rbx + 1]
mov qword [rsp + 0xd8], rax
lea rax, [r14 + 0x288]
mov qword [rsp + 0x120], rax
movzx eax, byte [r14 + 0x71]
mov byte [rsp + 0x118], al
mov ecx, dword [rsp + 0x40]
lea rax, [rcx + rcx*2]
add rax, rax
add rax, 0xc
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x108], rcx
shl rcx, 0x20
or rcx, 2
mov qword [rsp + 0x110], rcx
xor eax, eax
mov qword [rsp + 0xd0], rax
mov r13, rsi
cmp r15d, 0x7ffffff
jbe 0x14005d736
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], r13
cmp r13, r12
jae 0x14005df7d
movzx r8d, byte [rbp + r13]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x14005de90
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x14005d869
mov rsi, r13
mov r15d, eax
jmp 0x14005d897
cmp r13, rbx
jae 0x14005dafa
mov r9, qword [rdi + 0x30]
movzx eax, byte [rbp + r13]
movzx eax, byte [r14 + rax + 0x188]
mov ecx, r15d
add rcx, rax
mov eax, dword [r9 + rcx*4]
cmp rax, 0x7ffffff
ja 0x14005d7ed
lea rsi, [r13 + 3]
cmp rsi, rbx
jae 0x14005d7ed
movzx ecx, byte [rbp + r13 + 1]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov r15d, dword [r9 + rcx*4]
cmp r15, 0x7ffffff
ja 0x14005d7df
movzx eax, byte [rbp + r13 + 2]
movzx eax, byte [r14 + rax + 0x188]
add rax, r15
mov eax, dword [r9 + rax*4]
cmp rax, 0x7ffffff
ja 0x14005d7e9
movzx ecx, byte [rbp + r13 + 3]
movzx ecx, byte [r14 + rcx + 0x188]
add rcx, rax
mov r15d, dword [r9 + rcx*4]
cmp r15d, 0x7ffffff
ja 0x14005d7f8
add r13, 4
cmp r13, rbx
jb 0x14005d743
jmp 0x14005dafa
inc r13
mov edx, eax
mov rsi, r13
jmp 0x14005d7fa
add r13, 2
mov edx, r15d
mov rsi, r13
mov r15d, eax
jmp 0x14005d7fa
mov edx, eax
test r15d, r15d
jns 0x14005d897
cmp qword [rdi], 0
je 0x14005dffa
mov qword [rdi + 0x10], rsi
cmp rsi, r12
jae 0x14005dfd2
movzx r8d, byte [rbp + rsi]
movzx eax, byte [r14 + r8 + 0x188]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x14005defe
mov r15d, dword [r9 + rcx*4]
test r15d, r15d
jns 0x14005d897
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.1400f81b0
test eax, eax
jne 0x14005decc
mov r15d, edx
jmp 0x14005d892
shl r8d, 8
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
call fcn.1400f81b0
test eax, eax
jne 0x14005ddba
mov r15d, edx
mov rsi, r13
mov r10, qword [rsp + 0x78]
cmp r15d, 0x7ffffff
jbe 0x14005dafd
test r15d, 0x10000000
je 0x14005db0e
mov rax, qword [r10]
mov r10, qword [r10 + 8]
mov rcx, qword [r10 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
lea rdx, [rcx + rax]
add rdx, 0x10
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0xe8]
mov r8, rbp
mov r9, r12
call qword [r10 + 0x40]
cmp qword [rsp + 0xe8], 0
je 0x14005dbf1
mov r13, qword [rsp + 0xf0]
cmp r13, rsi
jbe 0x14005db4f
cmp dword [rsp + 0xb8], 0
mov r10, qword [rsp + 0xb0]
je 0x14005da8d
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xc8], rbx
cmp r12, rbx
jb 0x14005e093
cmp qword [rsp + 0xd8], r13
jb 0x14005e093
lea rsi, [r13 - 1]
cmp r12, rsi
jbe 0x14005d9f0
movzx eax, byte [rbp + rsi]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
mov rdx, qword [r14 + 0x288]
or rdx, qword [r14 + 0x298]
or rdx, rcx
je 0x14005da05
movzx r15d, al
xor edx, edx
mov ecx, r15d
mov r8d, 1
shld rdx, r8, cl
mov r8, r15
shr r8, 3
mov r9d, 1
shl r9, cl
and r8d, 0xfffffff0
test r15b, 0x40
cmovne rdx, r9
mov ecx, 0
cmovne r9, rcx
mov rcx, qword [rsp + 0x120]
and rdx, qword [rcx + r8 + 8]
and r9, qword [rcx + r8]
or r9, rdx
je 0x14005da05
mov eax, 4
cmp eax, 5
mov r12, qword [rsp + 0xa0]
je 0x14005da8d
jmp 0x14005dd94
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rdi
mov r12b, 2
jmp 0x14005da0e
movzx eax, al
movzx r12d, byte [r14 + rax + 0x78]
movzx ecx, r12b
test r10d, r10d
je 0x14005da5d
cmp r10d, 2
jne 0x14005da59
mov rax, qword [rsp + 0x110]
mov edx, dword [rsp + 0x40]
mov r15d, edx
test byte [rsp + 0x118], 1
je 0x14005da7c
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x108]
cmp qword [rax + 0x160], rdx
jbe 0x14005daa0
add rcx, qword [rsp + 0x130]
jmp 0x14005da5d
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x14005ded4
mov rax, qword [rdi + 0x48]
mov r15d, dword [rax + rcx*4]
mov eax, 5
test r15d, r15d
js 0x14005dac2
cmp eax, 5
mov r12, qword [rsp + 0xa0]
jne 0x14005dd94
cmp r13, rbx
mov r10, qword [rsp + 0x78]
jb 0x14005d6d4
jmp 0x14005db9a
lea rcx, [rsp + 0x80]
call fcn.140014c70
mov r10, qword [rsp + 0xb0]
mov r15d, eax
mov eax, 5
test r15d, r15d
jns 0x14005da7c
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r10d
mov r8d, dword [rsp + 0x40]
mov r9d, r12d
call fcn.1400f8e60
mov r15, rax
shr r15, 0x20
cmp eax, 5
mov r12, qword [rsp + 0xa0]
je 0x14005da8d
jmp 0x14005dd94
mov rsi, r13
inc rsi
cmp rsi, rbx
jb 0x14005d6d1
jmp 0x14005db9a
test r15d, 0x8000000
je 0x14005df32
mov eax, 1
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0xac], 0
mov rax, qword [rsp + 0xe0]
cmp qword [rax + 0x160], 1
jne 0x14005db56
mov qword [rsp + 0x100], rsi
jmp 0x14005dafd
mov r10, qword [rsp + 0x78]
jmp 0x14005dafd
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r15d
call fcn.140014c20
mov rcx, rax
xor edx, edx
call fcn.14000b970
mov r10, qword [rsp + 0x78]
mov dword [rsp + 0xac], eax
mov qword [rsp + 0x100], rsi
jmp 0x14005dafd
xor eax, eax
mov qword [rsp + 0xd0], rax
cmp rbx, r12
jae 0x14005dbbe
movzx esi, byte [rbp + rbx]
mov rcx, r14
mov rdx, rdi
mov r8d, r15d
mov r9d, esi
call fcn.14005b640
test eax, eax
je 0x14005dc27
mov rcx, rbx
jmp 0x14005dbd7
mov rcx, r14
mov rdx, rdi
mov r8d, r15d
call fcn.14005b6c0
test eax, eax
je 0x14005dc5b
mov rcx, r12
call fcn.14000f560
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 8], rax
mov qword [rcx], 2
jmp 0x14005dd7d
mov rcx, rdi
mov rdx, rbx
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0xd0]
mov qword [rcx], rax
mov rax, qword [rsp + 0x100]
mov qword [rcx + 8], rax
mov eax, dword [rsp + 0xac]
mov dword [rcx + 0x10], eax
jmp 0x14005dd7d
mov r8d, edx
mov eax, edx
test eax, 0x8000000
jne 0x14005de4b
test eax, 0x20000000
mov r15, qword [rsp + 0xd0]
mov ebp, dword [rsp + 0xac]
je 0x14005de69
mov ecx, esi
mov rdx, rbx
jmp 0x14005cd71
mov r8d, edx
test edx, 0x8000000
mov r15, qword [rsp + 0xd0]
mov ebp, dword [rsp + 0xac]
jne 0x14005de4e
jmp 0x14005de69
lea rcx, [rsp + 0xc0]
mov dword [rsp + 0xd8], r8d
call fcn.140014c70
mov r8d, dword [rsp + 0xd8]
mov edx, 5
test eax, eax
jns 0x14005cdd7
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], rdi
lea rcx, [rsp + 0xe8]
mov edx, r15d
mov r9d, r12d
call fcn.1400f8e60
mov rdx, rax
shr rax, 0x20
jmp 0x14005cdd7
mov r12, rbx
mov rcx, r14
mov rdx, rdi
call fcn.14005b740
mov esi, eax
mov r14d, 1
mov rcx, rdi
mov rdx, rbx
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov qword [rcx], r14
mov qword [rcx + 8], r12
mov dword [rcx + 0x10], esi
jmp 0x14005dd7d
mov r8d, edx
mov eax, r8d
mov r13, rbx
test eax, 0x8000000
je 0x14005bfd0
jmp 0x14005dd2f
mov r8d, edx
test r8d, 0x8000000
je 0x14005c01e
mov rcx, r14
mov rdx, rdi
call fcn.14005b740
mov ecx, 1
mov rdx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x14005e053
mov r8, rbx
sub r8, rdx
neg r8
sub rbx, rdx
cmovb rbx, r8
add qword [rdi + 0x158], rbx
mov rdx, qword [rsp + 0x30]
mov qword [rdx], rcx
mov qword [rdx + 8], r13
mov dword [rdx + 0x10], eax
mov rcx, rdx
mov rax, rcx
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
test ecx, ecx
je 0x14005ddba
cmp ecx, 1
jne 0x14005debd
mov ecx, r15d
mov rdx, rsi
jmp 0x14005cd71
mov rcx, r13
jmp 0x14005dbd7
mov rcx, r14
mov rdx, rdi
mov r8d, r15d
call fcn.14005b740
mov ebx, eax
mov rcx, rdi
mov rdx, rsi
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov qword [rcx], 1
mov qword [rcx + 8], rsi
mov dword [rcx + 0x10], ebx
jmp 0x14005dd7d
lea rcx, [rsp + 0xc0]
mov dword [rsp + 0xd8], r8d
call fcn.140014c70
mov r8d, dword [rsp + 0xd8]
mov edx, 5
test eax, eax
jns 0x14005d5de
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], rdi
lea rcx, [rsp + 0xe8]
mov edx, r13d
mov r9d, r12d
call fcn.1400f8e60
mov rdx, rax
shr rax, 0x20
jmp 0x14005d5de
mov r12, rbx
mov rcx, r14
mov rdx, rdi
call fcn.14005b740
mov ebp, eax
mov r15d, 1
mov qword [rsp + 0x100], r12
mov rcx, rdi
mov rdx, rbx
call fcn.14005b800
mov rcx, qword [rsp + 0x30]
mov qword [rcx], r15
mov rax, qword [rsp + 0x100]
mov qword [rcx + 8], rax
mov dword [rcx + 0x10], ebp
jmp 0x14005dd7d
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
call fcn.1400fc7e0
ud2
lea r8, [0x1401078d8]
mov rcx, r12
mov rdx, r13
call fcn.1400fc7e0
ud2
mov rcx, rdi
mov rdx, rsi
jmp 0x14005cc37
mov ecx, eax
jmp 0x14005cd7b
mov rcx, rbp
jmp 0x14005dbd7
mov rcx, rsi
jmp 0x14005dbd7
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
call fcn.1400fc7e0
ud2
mov rcx, r13
call fcn.14000f560
jmp 0x14005d609
mov ecx, eax
mov edx, r15d
call fcn.14000f5b0
jmp 0x14005d609
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
mov rdx, rax
call fcn.1400fc7e0
ud2
lea r8, [0x1400ffcf8]
mov rcx, rax
call fcn.1400fc7e0
ud2
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1400fc7e0
ud2
mov eax, r15d
test eax, 0x40000000
jne 0x14005dfc7
test eax, 0x20000000
je 0x14005e120
mov rcx, rdi
mov rdx, rsi
call fcn.14005b800
cmp rsi, qword [rsp + 0xa0]
jb 0x14005d572
lea r8, [0x140107920]
mov rcx, rsi
mov rdx, qword [rsp + 0xa0]
call fcn.1400fc7e0
ud2
lea r8, [0x1401078d8]
mov rcx, r13
mov rdx, r12
call fcn.1400fc7e0
ud2
lea r8, [0x140107908]
mov rcx, rbp
mov rdx, r13
call fcn.1400fc7e0
ud2
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
call fcn.1400fc7e0
ud2
lea r8, [0x140107908]
mov rcx, rsi
mov rdx, r13
call fcn.1400fc7e0
ud2
mov rcx, rdi
mov rdx, rsi
jmp 0x14005dbf7
lea r8, [0x140107908]
mov rcx, rsi
mov rdx, r12
call fcn.1400fc7e0
ud2
lea r8, [0x140107920]
mov rcx, r12
mov rdx, r13
call fcn.1400fc7e0
ud2
lea rcx, str.no_in_progress_search_to_updateC:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybrid_search.rsgx
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
mov edx, 0x1f
call fcn.1400fc630
ud2
mov ecx, 8
mov edx, 0x10
call fcn.1400fc520
ud2
lea r8, [0x140107920]
mov rcx, rsi
mov rdx, r12
call fcn.1400fc7e0
ud2
lea rcx, str.no_quit_in_start_without_look_behind
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
mov edx, 0x24
call fcn.1400fc630
ud2
lea rcx, str.no_in_progress_search_to_finish
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srchybriddfa.rs
mov edx, 0x1f
call fcn.1400fc630
ud2
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srcutildeterminize_state.rs
mov ecx, 0xd
call fcn.1400fcb80
ud2
lea r8, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srcutilwire.rs
mov ecx, 4
call fcn.1400fcc00
ud2
mov qword [rsp + 0x128], r12
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x80], rax
lea rax, [0x14000f4a0]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x128]
mov qword [rsp + 0x90], rax
lea rax, [fcn.1400f56d0]
mov qword [rsp + 0x98], rax
lea rax, str.invalid_span__for_haystack_of_length
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 2
mov qword [rsp + 0x68], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 2
lea rdx, str.C:Userslightning.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.3_srcutil_search.rs
lea rcx, [rsp + 0x48]
call fcn.1400fc6a0
ud2
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 1
lea rax, [rsp + 0x38]
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea rdx, [0x140107990]
lea rcx, [rsp + 0x48]
call fcn.1400fc6a0
ud2