Function at 0x1401220a0
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x128
mov qword [r9], 0
mov r15, qword [r8 + 0x18]
mov rbx, qword [r8 + 0x20]
cmp r15, rbx
jbe 0x1401220ce
mov rdi, r9
mov rsi, rdx
mov r14, rcx
mov r13d, dword [r8]
lea eax, [r13 - 1]
cmp eax, 2
jb 0x140122103
lea rax, [r14 + 0x60]
cmp byte [r14 + 0x78], 3
lea r12, [0x14041fe88]
cmovne r12, rax
cmp byte [r12 + 0x18], 2
jne 0x1401222b7
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0x40], rax
cmp dword [rdi + 0x28], 0
je 0x14012221b
mov edx, dword [rdi + 0x2c]
cmp qword [rdi + 0x18], 0
je 0x140122202
test edx, 0x8000000
je 0x140123191
mov r9d, edx
and r9d, 0x7ffffff
movzx ecx, byte [r14 + 0x2b8]
shr r9, cl
mov rax, qword [rsi + 0x58]
cmp r9, rax
jae 0x140123106
mov rcx, qword [rsi + 0x50]
shl r9d, 4
mov rax, qword [rcx + r9 + 8]
test rax, rax
je 0x1401230ea
mov r9, qword [rcx + r9]
movzx r10d, byte [r9 + 0x10]
test r10b, 1
je 0x140122202
mov rcx, qword [rdi + 0x20]
mov r11d, 1
test r10b, 2
je 0x14012219c
cmp rax, 0xc
jbe 0x140123245
mov r11d, dword [r9 + 0x19]
cmp rcx, r11
jae 0x140122202
lea r8, [rcx + 1]
xor edx, edx
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], r8
test r10b, 2
je 0x1401221eb
mov r8, qword [rsp + 0x40]
cmp qword [r8 + 0x168], 1
je 0x1401221eb
lea rcx, [rcx*4 + 0xd]
mov rdx, rax
sub rdx, rcx
jb 0x14012326a
cmp rdx, 3
jbe 0x140123234
mov edx, dword [r9 + rcx + 0x10]
mov rax, qword [rdi + 0x30]
mov qword [rdi], 1
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], edx
jmp 0x1401220c7
mov r15, qword [rdi + 0x30]
inc r15
mov qword [rdi + 0x30], r15
cmp r15, rbx
ja 0x1401220c7
jmp 0x140122516
mov qword [rdi + 0x30], r15
test r15, r15
je 0x1401223bc
lea rax, [r15 - 1]
cmp rax, qword [r8 + 0x10]
jae 0x1401223bc
mov rcx, qword [r8 + 8]
movzx eax, byte [rcx + rax]
movzx edx, al
mov ebp, dword [r8 + 4]
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1401224b4
lea rax, [r14 + 0x290]
mov r9d, edx
shr r9d, 3
and r9d, 0xfffffff0
mov r10d, 1
xor r11d, r11d
mov ecx, edx
shld r11, r10, cl
shl r10, cl
xor ecx, ecx
test dl, 0x40
cmovne r11, r10
cmovne r10, rcx
and r11, qword [rax + r9 + 8]
and r10, qword [rax + r9]
or r10, r11
je 0x1401224b4
mov eax, 4
jmp 0x140122839
mov rbp, qword [r14 + 0x2b0]
mov eax, dword [rbp + 0x17c]
mov dword [rsp + 0x9c], eax
cmp dword [rdi + 0x28], 0
mov qword [rsp + 0x50], r13
je 0x1401223ee
mov r13d, dword [rdi + 0x2c]
cmp qword [rdi + 0x18], 0
je 0x1401223d5
test r13d, 0x8000000
je 0x140123191
mov eax, r13d
and eax, 0x7ffffff
movzx ecx, byte [r14 + 0x2b8]
shr rax, cl
mov rdx, qword [rsi + 0x58]
cmp rax, rdx
jae 0x140123118
mov rcx, qword [rsi + 0x50]
shl eax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x1401230ea
mov r9, qword [rcx + rax]
movzx ecx, byte [r9 + 0x10]
test cl, 1
je 0x1401223d5
mov rax, qword [rdi + 0x20]
mov r10d, 1
test cl, 2
je 0x14012235a
cmp rdx, 0xc
jbe 0x1401232b1
mov r10d, dword [r9 + 0x19]
cmp rax, r10
jae 0x1401223d5
lea r10, [rax + 1]
xor r8d, r8d
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], r10
test cl, 2
je 0x1401223a4
cmp qword [rbp + 0x168], 1
je 0x1401223a4
lea rcx, [rax*4 + 0xd]
mov rax, rdx
sub rax, rcx
jb 0x1401232d1
cmp rax, 3
jbe 0x1401232dd
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 0x1401220c7
mov ebp, dword [r8 + 4]
mov r12b, 2
movzx ecx, r12b
test r13d, r13d
jne 0x1401224c6
jmp 0x1401224f8
mov r15, qword [rdi + 0x30]
inc r15
mov qword [rdi + 0x30], r15
cmp r15, rbx
ja 0x1401220c7
jmp 0x140122878
mov qword [rdi + 0x30], r15
test r15, r15
je 0x140122497
lea rax, [r15 - 1]
cmp rax, qword [r8 + 0x10]
jae 0x140122497
mov rcx, qword [r8 + 8]
movzx eax, byte [rcx + rax]
movzx edx, al
mov eax, dword [r8 + 4]
mov rcx, qword [r14 + 0x298]
or rcx, qword [r14 + 0x2a8]
mov r9, qword [r14 + 0x290]
or r9, qword [r14 + 0x2a0]
or r9, rcx
je 0x14012284d
lea r9, [r14 + 0x290]
mov r10d, edx
shr r10d, 3
and r10d, 0xfffffff0
mov r11d, 1
mov qword [rsp + 0x48], rbp
xor r13d, r13d
mov ecx, edx
shld r13, r11, cl
shl r11, cl
xor ecx, ecx
test dl, 0x40
cmovne r13, r11
cmovne r11, rcx
and r13, qword [r9 + r10 + 8]
and r11, qword [r9 + r10]
or r11, r13
mov rbp, qword [rsp + 0x48]
je 0x14012284d
shl rdx, 0x20
or rdx, 4
jmp 0x140122840
mov eax, dword [r8 + 4]
mov r9b, 2
movzx ecx, r9b
mov rdx, qword [rsi + 0x40]
cmp rdx, rcx
ja 0x140122867
jmp 0x1401230fa
movzx r12d, byte [r14 + rdx + 0x90]
movzx ecx, r12b
test r13d, r13d
je 0x1401224f8
cmp r13d, 2
jne 0x1401224f4
test byte [r14 + 0x81], 1
mov edx, ebp
jne 0x1401227b7
mov rax, rdx
shl rax, 0x20
or rax, 2
mov eax, eax
cmp rax, 5
je 0x140122516
jmp 0x140122839
add rcx, 6
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jae 0x1401230fa
mov rax, qword [rsi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x140122803
mov edx, eax
cmp qword [rsi], 1
jne 0x14012253b
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
mov r9, rax
sub r9, rcx
neg r9
sub rax, rcx
cmovb rax, r9
add qword [rsi + 0x158], rax
mov qword [rsi], 1
mov qword [rsi + 8], r15
mov rbp, qword [r8 + 8]
mov r12, qword [r8 + 0x10]
lea r13, [rsp + 0x58]
jmp 0x140122574
inc r15
mov qword [rdi + 0x30], r15
cmp qword [rsi], 0
mov edx, r9d
je 0x140123161
mov qword [rsi + 0x10], r15
cmp r15, rbx
jae 0x140122611
cmp r15, r12
jae 0x140122ed5
movzx r8d, byte [rbp + r15]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, edx
and ecx, 0x7ffffff
add rcx, rax
mov rax, qword [rsi + 0x28]
cmp rcx, rax
jae 0x140122ec6
mov rax, qword [rsi + 0x20]
mov r9d, dword [rax + rcx*4]
test r9d, r9d
js 0x1401225e1
cmp r9d, 0x7ffffff
jbe 0x140122560
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], r9d
mov eax, r9d
test eax, 0x10000000
jne 0x140122560
jmp 0x1401226c2
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rsi
mov rcx, r13
call fcn.1402cd7e0
test eax, eax
jne 0x140122d87
mov r9d, edx
cmp r9d, 0x7ffffff
jbe 0x140122560
jmp 0x1401225c7
mov eax, edx
and eax, 0x7ffffff
cmp rbx, r12
jae 0x14012266e
movzx r15d, byte [rbp + rbx]
movzx r8d, byte [r14 + r15 + 0x190]
mov ecx, eax
add rcx, r8
mov rax, qword [rsi + 0x28]
cmp rcx, rax
jae 0x140122ec6
mov rax, qword [rsi + 0x20]
mov ebp, dword [rax + rcx*4]
test ebp, ebp
js 0x140122dfa
mov eax, ebp
test eax, 0x8000000
jne 0x140122f53
test eax, 0x20000000
je 0x1401226b1
mov ecx, r15d
mov rdx, rbx
call fcn.140120ad0
jmp 0x1401226b3
movzx r8d, byte [r14 + 0x28f]
shl r8d, 0x10
add r8d, 0x10001
mov ecx, r8d
shr ecx, 0x10
add ecx, eax
mov rax, qword [rsi + 0x28]
cmp rax, rcx
jbe 0x140123127
mov rax, qword [rsi + 0x20]
mov ebp, dword [rax + rcx*4]
test ebp, ebp
js 0x140122e30
test ebp, 0x8000000
jne 0x140122f56
xor eax, eax
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], ebp
jmp 0x14012308c
test eax, 0x8000000
jne 0x1401226fd
test eax, 0x40000000
jne 0x140122dea
test eax, 0x20000000
je 0x140123279
mov rcx, rsi
mov rdx, r15
call fcn.140120bc0
movzx ecx, byte [rbp + r15]
mov qword [rdi + 0x18], 1
mov qword [rdi + 0x20], 1
xor eax, eax
mov rcx, qword [rsp + 0x40]
cmp qword [rcx + 0x168], 1
je 0x140122778
and r9d, 0x7ffffff
movzx ecx, byte [r14 + 0x2b8]
shr r9, cl
mov rdx, qword [rsi + 0x58]
cmp r9, rdx
jae 0x140123152
mov rcx, qword [rsi + 0x50]
shl r9d, 4
mov rdx, qword [rcx + r9 + 8]
test rdx, rdx
je 0x140123136
mov rcx, qword [rcx + r9]
test byte [rcx + 0x10], 2
je 0x140122778
cmp rdx, 0xc
jbe 0x140123259
add rdx, 0xfffffffffffffff3
cmp rdx, 3
jbe 0x140123234
mov eax, dword [rcx + 0x1d]
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 0x140123179
mov rcx, r15
sub rcx, rax
neg rcx
sub r15, rax
cmovb r15, rcx
add qword [rsi + 0x158], r15
jmp 0x1401220c7
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x168], rdx
jbe 0x1401227e3
lea rax, [rdx + rdx*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jb 0x140122505
jmp 0x1401230fa
mov rcx, r14
mov qword [rsp + 0x50], r13
mov r13, r8
call fcn.14011dde0
mov r8, r13
mov r13, qword [rsp + 0x50]
test eax, eax
jns 0x140122514
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x58]
mov edx, r13d
mov r13, r8
mov r8d, ebp
mov r9d, r12d
call fcn.1402cec00
mov r8, r13
mov rdx, rax
shr rdx, 0x20
mov eax, eax
cmp rax, 5
je 0x140122516
shl rdx, 0x20
or rdx, rax
mov rcx, r15
call fcn.140120800
jmp 0x1401230b8
movzx r9d, byte [r14 + rdx + 0x90]
movzx ecx, r9b
mov rdx, qword [rsi + 0x40]
cmp rdx, rcx
jbe 0x1401230fa
mov rdx, qword [rsi + 0x38]
mov r13d, dword [rdx + rcx*4]
test r13d, r13d
js 0x140122e7a
cmp qword [rsi], 1
jne 0x14012289d
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
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, rbx
jae 0x140122949
mov qword [rsp + 0x48], rbp
mov r11, qword [r8 + 8]
mov r9, qword [r8 + 0x10]
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov qword [rsp + 0xc8], rcx
add rax, 0x10
mov qword [rsp + 0xd0], rax
mov ecx, dword [r8 + 4]
lea rax, [rbx + 1]
mov qword [rsp + 0xc0], rax
lea rax, [r14 + 0x290]
mov qword [rsp + 0xb0], rax
movzx eax, byte [r14 + 0x81]
mov byte [rsp + 0x3f], al
lea rax, [rcx + rcx*2]
lea rax, [rax*2 + 0xc]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xb8], rcx
shl rcx, 0x20
add rcx, qword [rsp + 0x50]
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0x88], r9
mov qword [rsp + 0x40], r11
jmp 0x140122a0f
mov r9, qword [r8 + 0x10]
cmp rbx, r9
jae 0x140122cef
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x58]
mov r12, rdx
call fcn.1402cd7e0
test eax, eax
je 0x140122f44
mov rcx, rbx
call fcn.140120a90
mov ebp, r12d
jmp 0x1401226b3
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x58]
mov r15, rdx
call fcn.1402cd7e0
test eax, eax
je 0x140122fe0
movzx eax, byte [0x1404c8501]
mov edx, 0x10
xor ecx, ecx
call fcn.140277170
test rax, rax
je 0x1401232c2
mov byte [rax], 1
mov qword [rax + 8], r12
mov ebp, r15d
jmp 0x1401226b3
mov qword [rsp + 0x48], rbp
mov rbp, r8
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
mov r8d, eax
call fcn.1402cec00
mov r13, rax
cmp r13d, 5
jne 0x140122ff3
shr r13, 0x20
mov r8, rbp
mov rbp, qword [rsp + 0x48]
cmp qword [rsi], 1
je 0x14012287e
jmp 0x14012289d
lea r8, str.C:UsersNico.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.5_srchybriddfa.rs
mov rdx, rax
call fcn.1402c7670
lea r8, str.C:UsersNico.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.5_srchybrid_search.rs
mov rcx, r15
mov rdx, r12
call fcn.1402c7670
mov ebp, edx
mov eax, ebp
test eax, 0x8000000
je 0x14012265a
mov r12, rbx
xor r8d, r8d
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x168], 1
je 0x140122fc2
mov eax, ebp
and eax, 0x7ffffff
movzx ecx, byte [r14 + 0x2b8]
shr rax, cl
mov rdx, qword [rsi + 0x58]
cmp rax, rdx
jae 0x140123118
mov rcx, qword [rsi + 0x50]
shl eax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x140123136
mov rax, qword [rcx + rax]
test byte [rax + 0x10], 2
je 0x140122fc2
cmp rdx, 0xc
jbe 0x140123259
add rdx, 0xfffffffffffffff3
cmp rdx, 3
jbe 0x140123234
mov r8d, dword [rax + 0x1d]
mov qword [rdi], 1
mov qword [rdi + 8], r12
mov dword [rdi + 0x10], r8d
mov dword [rdi + 0x28], 1
mov dword [rdi + 0x2c], ebp
jmp 0x14012307a
mov ebp, edx
test ebp, 0x8000000
je 0x1401226b1
jmp 0x140122f56
mov rcx, r15
jmp 0x14012300c