Function at 0x14002d290
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x138
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xb0], 0xfffffffffffffffe
mov qword [r9], 0
mov r15, qword [r8 + 0x18]
mov r11, qword [r8 + 0x20]
cmp r15, r11
jbe 0x14002d2e0
xor eax, eax
add rsp, 0x138
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rdi, r9
mov rsi, rdx
mov r14, rcx
mov ebx, dword [r8]
lea eax, [rbx - 1]
cmp eax, 2
mov qword [rbp + 0xa8], r11
jb 0x14002d31b
lea rax, [r14 + 0x60]
cmp byte [r14 + 0x78], 3
lea r12, [0x14010b360]
cmovne r12, rax
cmp byte [r12 + 0x18], 2
jne 0x14002d50e
mov rax, qword [r14 + 0x2b0]
mov qword [rbp + 0x90], rax
test byte [rdi + 0x28], 1
je 0x14002d41f
mov r12d, dword [rdi + 0x2c]
test byte [rdi + 0x18], 1
je 0x14002d4d5
test r12d, 0x8000000
je 0x14002e4d5
mov eax, r12d
and eax, 0x7ffffff
movzx ecx, byte [r14 + 0x2b8]
shr rax, cl
mov rdx, qword [rsi + 0x58]
cmp rax, rdx
jae 0x14002e4ed
mov rcx, qword [rsi + 0x50]
shl eax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x14002e4fc
mov r9, qword [rcx + rax]
movzx ecx, byte [r9 + 0x10]
test cl, 1
je 0x14002d4d5
mov rax, qword [rdi + 0x20]
mov r10d, 1
test cl, 2
je 0x14002d3b2
cmp rdx, 0xc
jbe 0x14002e607
mov r10d, dword [r9 + 0x19]
cmp rax, r10
jae 0x14002d4d5
lea r10, [rax + 1]
xor r8d, r8d
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], r10
test cl, 2
je 0x14002d407
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + 0x168], 1
je 0x14002d407
lea rcx, [rax*4 + 0xd]
mov rax, rdx
sub rax, rcx
jb 0x14002e659
cmp rax, 3
jbe 0x14002e665
mov r8d, dword [r9 + rcx + 0x10]
mov rax, qword [rdi + 0x30]
mov qword [rdi], 1
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], r8d
jmp 0x14002d2ca
mov qword [rdi + 0x30], r15
test r15, r15
je 0x14002d4ee
lea rax, [r15 - 1]
cmp rax, qword [r8 + 0x10]
jae 0x14002d4ee
mov rcx, qword [r8 + 8]
movzx eax, byte [rcx + rax]
movzx r12d, al
mov r9d, dword [r8 + 4]
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], rsi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x14002d715
lea rax, [r14 + 0x290]
mov edx, r12d
shr edx, 3
and edx, 0xfffffff0
mov r13d, r9d
mov r9d, 1
xor r10d, r10d
mov ecx, r12d
shld r10, r9, cl
shl r9, cl
xor ecx, ecx
test r12b, 0x40
cmovne r10, r9
cmovne r9, rcx
and r10, qword [rax + rdx + 8]
and r9, qword [rax + rdx]
or r9, r10
mov r9d, r13d
je 0x14002d715
mov r13d, 4
cmp r13d, 5
je 0x14002d762
jmp 0x14002da09
mov r15, qword [rdi + 0x30]
inc r15
mov qword [rdi + 0x30], r15
cmp r15, r11
ja 0x14002d2ca
jmp 0x14002d762
mov r9d, dword [r8 + 4]
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], rsi
mov r13b, 2
movzx ecx, r13b
test ebx, ebx
jne 0x14002d726
jmp 0x14002d733
mov rax, qword [r14 + 0x2b0]
mov qword [rbp + 0x50], rax
mov eax, dword [rax + 0x17c]
mov dword [rbp + 0x44], eax
test byte [rdi + 0x28], 1
je 0x14002d60a
mov r10d, dword [rdi + 0x2c]
test byte [rdi + 0x18], 1
je 0x14002d6df
test r10d, 0x8000000
je 0x14002e4d5
mov eax, r10d
and eax, 0x7ffffff
movzx ecx, byte [r14 + 0x2b8]
shr rax, cl
mov rdx, qword [rsi + 0x58]
cmp rax, rdx
jae 0x14002e4ed
mov rcx, qword [rsi + 0x50]
shl eax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x14002e4fc
mov rax, qword [rcx + rax]
movzx r9d, byte [rax + 0x10]
test r9b, 1
je 0x14002d6df
mov r15, qword [rdi + 0x20]
mov ecx, 1
test r9b, 2
je 0x14002d5ab
cmp rdx, 0xc
jbe 0x14002e607
mov ecx, dword [rax + 0x19]
cmp r15, rcx
jae 0x14002d6df
lea rax, [r15 + 1]
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], rax
xor eax, eax
mov rcx, qword [rbp + 0x50]
cmp qword [rcx + 0x168], 1
je 0x14002d5f3
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r10d
call fcn.140026500
mov rcx, rax
mov rdx, r15
call fcn.14004f670
mov rcx, qword [rdi + 0x30]
mov qword [rdi], 1
mov qword [rdi + 8], rcx
mov dword [rdi + 0x10], eax
jmp 0x14002d2ca
mov qword [rdi + 0x30], r15
test r15, r15
je 0x14002d6f8
lea rax, [r15 - 1]
cmp rax, qword [r8 + 0x10]
jae 0x14002d6f8
mov rcx, qword [r8 + 8]
movzx eax, byte [rcx + rax]
movzx r10d, al
mov eax, dword [r8 + 4]
mov rcx, qword [r14 + 0x298]
or rcx, qword [r14 + 0x2a8]
mov rdx, qword [r14 + 0x290]
or rdx, qword [r14 + 0x2a0]
or rdx, rcx
je 0x14002db34
lea rdx, [r14 + 0x290]
mov r9d, r10d
shr r9d, 3
and r9d, 0xfffffff0
mov rcx, r10
mov r10d, 1
xor r11d, r11d
shld r11, r10, cl
shl r10, cl
xor r13d, r13d
test cl, 0x40
cmovne r11, r10
cmovne r10, r13
and r11, qword [rdx + r9 + 8]
and r10, qword [rdx + r9]
or r10, r11
mov r10, rcx
mov r11, qword [rbp + 0xa8]
je 0x14002db34
mov eax, 4
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
cmp ecx, 2
je 0x14002e240
cmp ecx, 1
jne 0x14002e008
test r15, r15
je 0x14002e5ef
dec r15
jmp 0x14002e230
mov r15, qword [rdi + 0x30]
inc r15
mov qword [rdi + 0x30], r15
cmp r15, r11
ja 0x14002d2ca
jmp 0x14002db5f
mov eax, dword [r8 + 4]
mov r9b, 2
movzx ecx, r9b
mov rdx, qword [rsi + 0x40]
cmp rdx, rcx
ja 0x14002db4e
jmp 0x14002e4c9
movzx r13d, byte [r14 + r12 + 0x90]
movzx ecx, r13b
test ebx, ebx
je 0x14002d733
cmp ebx, 1
jne 0x14002d9af
add rcx, 6
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jae 0x14002e4c9
mov rax, qword [rsi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x14002e0a2
mov r12d, eax
mov r13d, 5
cmp r13d, 5
jne 0x14002da09
mov rdx, qword [rsi]
mov rcx, qword [rsi + 8]
mov rax, qword [rsi + 0x10]
mov qword [rsi], 0
cmp rdx, 1
jne 0x14002d791
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rsi + 0x158], rax
mov qword [rsi], 1
mov qword [rsi + 8], r15
mov rbx, qword [r8 + 8]
mov r13, qword [r8 + 0x10]
jmp 0x14002d7c3
inc r15
mov qword [rdi + 0x30], r15
test byte [rsi], 1
mov r12d, edx
je 0x14002e48d
mov qword [rsi + 0x10], r15
cmp r15, r11
jae 0x14002d860
cmp r15, r13
jae 0x14002e4a5
movzx r8d, byte [rbx + r15]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r12d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x28]
cmp rcx, rdx
jae 0x14002e481
mov rax, qword [rsi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x14002d82b
cmp edx, 0x7ffffff
jbe 0x14002d7b0
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], edx
mov eax, edx
test eax, 0x10000000
jne 0x14002d7b0
jmp 0x14002d958
shl r8d, 8
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r12d
call fcn.1400ff210
test eax, eax
jne 0x14002e008
mov r11, qword [rbp + 0xa8]
cmp edx, 0x7ffffff
jbe 0x14002d7b0
jmp 0x14002d813
cmp r11, r13
jae 0x14002d8cd
movzx r13d, byte [rbx + r11]
movzx eax, byte [r14 + r13 + 0x190]
mov ecx, r12d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x28]
cmp rcx, rdx
jae 0x14002e481
mov rax, qword [rsi + 0x20]
mov r15d, dword [rax + rcx*4]
test r15d, r15d
js 0x14002e15e
mov eax, r15d
test eax, 0x8000000
jne 0x14002e2e7
test eax, 0x20000000
je 0x14002e32d
mov ecx, r13d
mov rdx, r11
call fcn.1400125f0
mov r11, qword [rbp + 0xa8]
jmp 0x14002e32f
movzx ecx, byte [r14 + 0x28f]
inc rcx
mov eax, r12d
and eax, 0x7ffffff
add eax, ecx
mov rdx, qword [rsi + 0x28]
cmp rdx, rax
jbe 0x14002e5e0
mov rdx, qword [rsi + 0x20]
mov r15d, dword [rdx + rax*4]
test r15d, r15d
js 0x14002e19b
xor eax, eax
test r15d, 0x8000000
je 0x14002e32f
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + 0x168], 1
je 0x14002d945
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
call fcn.140026500
mov rcx, rax
xor edx, edx
call fcn.14004f670
mov r11, qword [rbp + 0xa8]
mov qword [rdi], 1
mov qword [rdi + 8], r13
mov dword [rdi + 0x10], eax
jmp 0x14002e32d
test eax, 0x8000000
jne 0x14002dab7
test eax, 0x40000000
jne 0x14002db03
test eax, 0x20000000
je 0x14002e624
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x14002e5a7
mov rcx, rax
sub rcx, r15
neg rcx
sub rax, r15
cmovbe rax, rcx
add qword [rsi + 0x158], rax
movzx ecx, byte [rbx + r15]
jmp 0x14002e233
movzx eax, byte [r14 + 0x81]
mov r12d, r9d
cmp al, 2
je 0x14002d9f4
test al, 1
je 0x14002d9f4
mov rax, qword [rbp + 0x90]
cmp qword [rax + 0x168], r12
jbe 0x14002e076
lea rax, [r12 + r12*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jb 0x14002d740
jmp 0x14002e4c9
mov r13, r12
shl r13, 0x20
or r13, 2
cmp r13d, 5
je 0x14002d762
lea ecx, [r13 - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 2
je 0x14002da5d
cmp eax, 1
jne 0x14002da8c
test r15, r15
je 0x14002e5ef
movzx eax, byte [0x1401ab1c1]
mov ecx, 0x10
mov edx, 8
call fcn.1400082a0
test rax, rax
je 0x14002e530
dec r15
mov byte [rax], 0
mov byte [rax + 1], r12b
mov qword [rax + 8], r15
jmp 0x14002d2cc
movzx eax, byte [0x1401ab1c1]
mov ecx, 0x10
mov edx, 8
call fcn.1400082a0
test rax, rax
je 0x14002e530
mov byte [rax], 3
mov dword [rax + 4], r13d
mov dword [rax + 8], r12d
jmp 0x14002d2cc
movzx eax, byte [0x1401ab1c1]
mov ecx, 0x10
mov edx, 8
call fcn.1400082a0
test rax, rax
je 0x14002e530
mov byte [rax], 1
mov qword [rax + 8], r15
jmp 0x14002d2cc
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], 1
xor eax, eax
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + 0x168], 1
je 0x14002daf5
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
call fcn.140026500
mov rcx, rax
xor edx, edx
call fcn.14004f670
mov qword [rdi], 1
mov qword [rdi + 8], r15
mov dword [rdi + 0x10], eax
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x14002e5a7
mov rcx, rax
sub rcx, r15
neg rcx
sub rax, r15
cmovbe rax, rcx
add qword [rsi + 0x158], rax
jmp 0x14002d2ca
movzx r9d, byte [r14 + r10 + 0x90]
movzx ecx, r9b
mov rdx, qword [rsi + 0x40]
cmp rdx, rcx
jbe 0x14002e4c9
mov rdx, qword [rsi + 0x38]
movsxd r10, dword [rdx + rcx*4]
test r10, r10
js 0x14002e1d6
mov rdx, qword [rsi]
mov rcx, qword [rsi + 8]
mov rax, qword [rsi + 0x10]
mov qword [rsi], 0
cmp rdx, 1
jne 0x14002db8e
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rsi + 0x158], rax
mov qword [rsi], 1
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], r15
cmp r15, r11
jae 0x14002dc10
mov rax, qword [r8 + 8]
mov qword [rbp + 0x90], rax
mov r9, qword [r8 + 0x10]
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov qword [rbp - 0x10], rcx
add rax, 0x10
mov qword [rbp - 0x18], rax
mov ecx, dword [r8 + 4]
lea rax, [r11 + 1]
mov qword [rbp - 8], rax
lea rax, [r14 + 0x290]
mov qword [rbp], rax
lea rax, [rcx + rcx*2]
lea rax, [rax*2 + 0xc]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x48], rcx
shl rcx, 0x20
or rcx, rbx
mov qword [rbp + 8], rcx
movzx eax, byte [r14 + 0x81]
mov byte [rbp + 0x9f], al
mov qword [rbp + 0x58], r9
jmp 0x14002dc37
mov r9, qword [r8 + 0x10]
jmp 0x14002df08
mov eax, 4
cmp eax, 5
mov rcx, qword [rbp + 0x18]
jne 0x14002e214
mov r15, rcx
cmp rcx, r11
jae 0x14002df08
cmp r15, r9
jae 0x14002e4b7
mov rax, qword [rbp + 0x90]
movzx eax, byte [rax + r15]
movzx edx, byte [r14 + rax + 0x190]
mov ecx, r10d
and ecx, 0x7ffffff
add rcx, rdx
mov rdx, qword [rsi + 0x28]
cmp rcx, rdx
jae 0x14002e481
mov rdx, qword [rsi + 0x20]
mov r12d, dword [rdx + rcx*4]
test r12d, r12d
js 0x14002de3f
cmp r12d, 0x7ffffff
jbe 0x14002ddd2
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], r12d
mov eax, r12d
test eax, 0x10000000
je 0x14002e015
mov r13, r8
mov rax, qword [rbp - 0x10]
mov rdx, qword [rax + 0x10]
dec rdx
and rdx, 0xfffffffffffffff0
add rdx, qword [rbp - 0x18]
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r15
lea rcx, [rbp - 0x48]
mov r8, qword [rbp + 0x90]
call qword [rax + 0x40]
test byte [rbp - 0x48], 1
je 0x14002d2ca
mov rcx, qword [rbp - 0x40]
cmp rcx, r15
jbe 0x14002ddc4
mov qword [rdi + 0x30], rcx
mov r10d, r12d
cmp dword [rbp + 0x44], 0
mov r8, r13
mov r11, qword [rbp + 0xa8]
mov r9, qword [rbp + 0x58]
je 0x14002dc2b
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], r11
cmp r9, r11
jb 0x14002e53f
cmp qword [rbp - 8], rcx
jb 0x14002e53f
mov qword [rbp + 0x18], rcx
lea r15, [rcx - 1]
cmp r15, r9
jae 0x14002ddf7
mov rax, qword [rbp + 0x90]
movzx eax, byte [rax + r15]
movzx r10d, al
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], rsi
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x14002ddb9
xor eax, eax
mov ecx, r10d
mov edx, 1
shld rax, rdx, cl
mov edx, r10d
shr edx, 3
mov r9d, 1
shl r9, cl
and edx, 0xfffffff0
test r10b, 0x40
cmovne rax, r9
mov ecx, 0
cmovne r9, rcx
mov rcx, qword [rbp]
and rax, qword [rcx + rdx + 8]
and r9, qword [rcx + rdx]
or r9, rax
mov r9, qword [rbp + 0x58]
jne 0x14002dc19
movzx r12d, byte [r14 + r10 + 0x90]
jmp 0x14002de02
mov r8, r13
mov r11, qword [rbp + 0xa8]
mov r9, qword [rbp + 0x58]
inc r15
mov qword [rdi + 0x30], r15
test byte [rsi], 1
je 0x14002e48d
mov qword [rsi + 0x10], r15
mov r10d, r12d
cmp r15, r11
jb 0x14002dc37
jmp 0x14002df05
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], rsi
mov r12b, 2
movzx ecx, r12b
test ebx, ebx
je 0x14002de91
cmp ebx, 2
jne 0x14002de8d
mov r10, qword [rbp + 0x48]
mov rax, qword [rbp + 8]
test byte [rbp + 0x9f], 1
je 0x14002dc1e
mov rax, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x48]
cmp qword [rax + 0x168], rdx
jbe 0x14002deb6
add rcx, qword [rbp + 0x10]
jmp 0x14002de91
mov r13, rbx
mov rbx, r8
shl eax, 8
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r10d
mov r8d, eax
call fcn.1400ff210
test eax, eax
jne 0x14002e008
mov r12d, edx
mov r8, rbx
mov r11, qword [rbp + 0xa8]
mov rbx, r13
mov r9, qword [rbp + 0x58]
cmp r12d, 0x7ffffff
ja 0x14002dc8c
jmp 0x14002ddd2
add rcx, 6
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jae 0x14002e4c9
mov rax, qword [rsi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x14002ded1
mov r10d, eax
mov eax, 5
jmp 0x14002dc1e
lea rcx, [rbp + 0x20]
call fcn.140026550
mov r9, qword [rbp + 0x58]
mov r11, qword [rbp + 0xa8]
mov r8, r13
test eax, eax
jns 0x14002dea9
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, ebx
mov r8, qword [rbp + 0x48]
mov r9d, r12d
call fcn.1400fff50
mov r9, qword [rbp + 0x58]
mov r11, qword [rbp + 0xa8]
mov r8, r13
mov r10, rax
shr r10, 0x20
jmp 0x14002dc1e
mov r10d, r12d
cmp r11, r9
jae 0x14002df79
mov rax, qword [r8 + 8]
movzx r12d, byte [rax + r11]
movzx eax, byte [r14 + r12 + 0x190]
mov ecx, r10d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x28]
cmp rcx, rdx
jae 0x14002e481
mov rax, qword [rsi + 0x20]
mov r15d, dword [rax + rcx*4]
test r15d, r15d
js 0x14002e24f
mov eax, r15d
test eax, 0x8000000
jne 0x14002e3c7
test eax, 0x20000000
je 0x14002e40a
mov ecx, r12d
mov rdx, r11
call fcn.1400125f0
mov r11, qword [rbp + 0xa8]
jmp 0x14002e40c
movzx r8d, byte [r14 + 0x28f]
mov eax, r10d
and eax, 0x7ffffff
lea ecx, [r8 + rax]
inc ecx
mov rdx, qword [rsi + 0x28]
cmp rdx, rcx
jbe 0x14002e618
mov r12, r9
mov rax, qword [rsi + 0x20]
mov r15d, dword [rax + rcx*4]
test r15d, r15d
js 0x14002e28f
test r15d, 0x8000000
je 0x14002e40a
mov rax, qword [rbp + 0x50]
cmp qword [rax + 0x168], 1
mov eax, 0
je 0x14002dff5
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
call fcn.140026500
mov rcx, rax
xor edx, edx
call fcn.14004f670
mov r11, qword [rbp + 0xa8]
mov qword [rdi], 1
mov qword [rdi + 8], r12
mov dword [rdi + 0x10], eax
jmp 0x14002e40a
mov rcx, r15
call fcn.140012640
jmp 0x14002d2cc
test eax, 0x8000000
jne 0x14002e0e1
test eax, 0x40000000
jne 0x14002e12d
test eax, 0x20000000
je 0x14002e624
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x14002e5a7
mov rcx, r15
sub rcx, rax
neg rcx
mov rdx, r15
sub rdx, rax
cmovb rdx, rcx
add qword [rsi + 0x158], rdx
mov rax, qword [rbp + 0x90]
movzx ecx, byte [rax + r15]
jmp 0x14002e233
lea rcx, [rbp + 0x20]
mov r12, rbx
mov rbx, r8
mov dword [rbp + 0x58], r9d
call fcn.140026550
mov r9d, dword [rbp + 0x58]
mov r11, qword [rbp + 0xa8]
mov r8, rbx
mov rbx, r12
test eax, eax
jns 0x14002d74f
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, ebx
mov rbx, r8
mov r8d, r9d
mov r9d, r13d
call fcn.1400fff50
mov r11, qword [rbp + 0xa8]
mov r8, rbx
mov r13, rax
mov r12, rax
shr r12, 0x20
cmp r13d, 5
je 0x14002d762
jmp 0x14002da09
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], 1
xor eax, eax
mov rcx, qword [rbp + 0x50]
cmp qword [rcx + 0x168], 1
je 0x14002e11f
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r12d
call fcn.140026500
mov rcx, rax
xor edx, edx
call fcn.14004f670
mov qword [rdi], 1
mov qword [rdi + 8], r15
mov dword [rdi + 0x10], eax
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x14002e5a7
mov rcx, r15
sub rcx, rax
neg rcx
sub r15, rax
cmovb r15, rcx
add qword [rsi + 0x158], r15
jmp 0x14002d2ca
mov r8d, r13d
shl r8d, 8
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r12d
call fcn.1400ff210
test eax, eax
je 0x14002e2cf
mov rbx, qword [rbp + 0xa8]
mov rcx, rbx
call fcn.140012640
mov r11, rbx
mov r15d, r12d
jmp 0x14002e32f
call fcn.140011f00
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r12d
mov r8d, eax
call fcn.1400ff210
test eax, eax
je 0x14002e386
mov rcx, r13
call fcn.140012640
mov r15d, r12d
mov r11, qword [rbp + 0xa8]
jmp 0x14002e32f
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, ebx
mov r13, rbx
mov rbx, r8
mov r8d, eax
call fcn.1400fff50
mov r11, qword [rbp + 0xa8]
mov r8, rbx
mov rbx, r13
mov r10, rax
shr r10, 0x20
cmp eax, 5
jne 0x14002d6ae
jmp 0x14002db5f
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
cmp ecx, 2
je 0x14002e240
cmp ecx, 1
jne 0x14002e3a1
mov ecx, r10d
mov rdx, r15
call fcn.1400125f0
jmp 0x14002d2cc
mov ecx, eax
mov edx, r10d
call fcn.140012680
jmp 0x14002d2cc
mov r8d, r12d
shl r8d, 8
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r10d
mov r13, r10
call fcn.1400ff210
test eax, eax
je 0x14002e3af
mov rbx, qword [rbp + 0xa8]
mov rcx, rbx
call fcn.140012640
mov r11, rbx
mov r15d, r13d
jmp 0x14002e40c
inc r8d
shl r8d, 0x10
inc r8d
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r10d
mov rbx, r10
call fcn.1400ff210
test eax, eax
je 0x14002e468
mov rcx, r12
call fcn.140012640
mov r15d, ebx
mov r11, qword [rbp + 0xa8]
jmp 0x14002e40c
mov r15d, edx
mov r11, qword [rbp + 0xa8]
mov eax, r15d
test eax, 0x8000000
je 0x14002d8ab
xor eax, eax
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + 0x168], 1
je 0x14002e31f
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
call fcn.140026500
mov rcx, rax
xor edx, edx
call fcn.14004f670
mov r11, qword [rbp + 0xa8]
mov qword [rdi], 1
mov qword [rdi + 8], r11
mov dword [rdi + 0x10], eax
xor eax, eax
mov rdx, rax
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], r15d
test byte [rdi], 1
je 0x14002e352
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], 1
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x14002e50c
mov rcx, r11
sub rcx, rax
neg rcx
sub r11, rax
cmovb r11, rcx
add qword [rsi + 0x158], r11
mov rax, rdx
jmp 0x14002d2cc
mov r15d, edx
mov r11, qword [rbp + 0xa8]
xor eax, eax
test r15d, 0x8000000
jne 0x14002d90f
jmp 0x14002e32f
mov rcx, qword [rbp + 0x18]
call fcn.140012640
jmp 0x14002d2cc
mov r15d, edx
mov r11, qword [rbp + 0xa8]
mov eax, r15d
test eax, 0x8000000
je 0x14002df57
xor eax, eax
mov rcx, qword [rbp + 0x50]
cmp qword [rcx + 0x168], 1
je 0x14002e3fc
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
call fcn.140026500
mov rcx, rax
xor edx, edx
call fcn.14004f670
mov r11, qword [rbp + 0xa8]
mov qword [rdi], 1
mov qword [rdi + 8], r11
mov dword [rdi + 0x10], eax
xor eax, eax
lea rdx, [rsi + 8]
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], r15d
test byte [rdi], 1
je 0x14002e430
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], 1
cmp qword [rsi], 0
mov rcx, qword [rsi + 8]
mov qword [rsi], 0
movups xmm0, xmmword [rbp + 0x60]
movups xmmword [rdx], xmm0
je 0x14002e5bf
mov rdx, r11
sub rdx, rcx
neg rdx
sub r11, rcx
cmovb r11, rdx
add qword [rsi + 0x158], r11
jmp 0x14002d2cc
mov r15d, edx
mov r11, qword [rbp + 0xa8]
test r15d, 0x8000000
jne 0x14002dfbd
jmp 0x14002e40a
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
call fcn.1401047c0
lea rcx, str.no_in_progress_search_to_update
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.140104630
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, r15
mov rdx, r13
call fcn.1401047c0
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
mov rcx, r15
mov rdx, r9
call fcn.1401047c0
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
call fcn.1401047c0
lea rcx, str.assertion_failed:_id.is_match__
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.140104730
lea r8, [0x14010a960]
mov rcx, rax
call fcn.1401047c0
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs_
xor ecx, ecx
xor edx, edx
call fcn.1401047c0
mov qword [rbp + 0xa8], rdx
lea rcx, [0x14010b3f3]
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.140104630
jmp 0x14002e5de
mov ecx, 8
mov edx, 0x10
call fcn.140104440
mov qword [rbp - 0x20], r9
lea rax, [rbp - 0x30]
mov qword [rbp + 0x20], rax
lea rax, [0x140012580]
mov qword [rbp + 0x28], rax
lea rax, [rbp - 0x20]
mov qword [rbp + 0x30], rax
lea rax, [fcn.1400fd4d0]
mov qword [rbp + 0x38], rax
lea rax, [0x14010bae8]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 2
mov qword [rbp + 0x80], 0
lea rax, [rbp + 0x20]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], 2
lea rdx, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutil_search.rsinvalid_span__for_haystack_of_length
lea rcx, [rbp + 0x60]
call fcn.140104690
lea rcx, [0x14010b3f3]
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.140104630
mov qword [rbp + 0xa8], rax
lea rcx, [0x14010b3f3]
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x1f
call fcn.140104630
ud2
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov rcx, rax
call fcn.1401047c0
lea rcx, str.no_quit_in_start_without_look_behind
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov edx, 0x24
call fcn.140104630
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs_
mov ecx, 0xd
call fcn.140104b20
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
call fcn.1401047c0
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 1
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x78], xmm0
lea rdx, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybrid_search.rs
lea rcx, [rbp + 0x60]
call fcn.140104690
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs_
call fcn.140104ab0
lea r8, str.C:UsersHarrisonEdwards.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutilwire.rs
mov ecx, 4
mov rdx, rax
call fcn.140104b20
int3