Function at 0x180163300
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xa8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x20], 0xfffffffffffffffe
mov rbx, rcx
mov r13, qword [rcx + 8]
mov qword [r13 + 0x28], 0
mov qword [r13 + 0x40], 0
mov rcx, qword [r13 + 0x50]
mov rax, qword [r13 + 0x58]
mov qword [r13 + 0x58], 0
test rax, rax
je 0x180163394
mov edx, 1
sub rdx, rax
jmp 0x180163378
mov rax, qword [rbp + 0x10]
add rax, 0x10
mov rdx, qword [rbp + 8]
inc rdx
cmp rdx, 1
mov rcx, rax
je 0x180163394
mov qword [rbp + 0x10], rcx
mov qword [rbp + 8], rdx
mov rax, qword [rcx]
lock dec qword [rax]
jne 0x180163360
mov rcx, qword [rbp + 0x10]
call fcn.18004bef0
jmp 0x180163360
lea rsi, [r13 + 0x118]
mov rcx, rsi
call fcn.18015f570
mov qword [r13 + 0x148], 0
inc qword [r13 + 0x150]
mov qword [r13 + 0x158], 0
cmp dword [r13], 1
jne 0x1801633cf
mov rax, qword [r13 + 0x10]
mov qword [r13 + 8], rax
mov rcx, rbx
call fcn.180163bf0
mov ecx, dword [r13 + 0x100]
mov r12d, dword [r13 + 0x104]
mov r8, qword [r13 + 0x108]
mov rax, qword [r13 + 0x110]
mov dword [r13 + 0x100], 0
cmp ecx, 1
jne 0x180163877
mov qword [rbp - 0x58], r8
mov qword [rbp - 0x50], rax
mov ecx, r12d
neg ecx
jo 0x18016388b
mov rdi, qword [rbx]
mov rcx, qword [rdi + 0x2b8]
and ecx, 0x3f
mov edx, 1
shl rdx, cl
cmp rcx, 0x1b
jae 0x1801638c6
or edx, 0x40000000
cmp edx, r12d
je 0x18016388b
mov edx, 2
shl rdx, cl
cmp rdx, 0x8000000
jae 0x1801638fb
or edx, 0x20000000
cmp edx, r12d
je 0x18016388b
mov qword [rbp], rsi
mov qword [rbp - 0x10], r8
mov qword [rbp - 8], rax
mov r14, qword [r13 + 0x28]
mov rdx, qword [r13 + 0x58]
mov r10, rdx
shl r10, 4
mov r9, qword [r13 + 0x40]
add r9, r14
add r9, qword [r13 + 0x70]
add r9, qword [r13 + 0x88]
add r9, qword [r13 + 0xa8]
add r9, qword [r13 + 0xc0]
mov r11, qword [r13 + 0x130]
add r9, qword [r13 + 0xd0]
mov r15d, 4
shl r15, cl
lea rcx, [r11 + r11*4]
add r10, rax
add r10, r15
lea rax, [r10 + rcx*4]
add rax, qword [r13 + 0xe8]
add rax, qword [r13 + 0x148]
lea rax, [rax + r9*4]
add rax, 0x24
cmp rax, qword [rdi + 0x2c0]
mov qword [rbp + 0x10], r13
jbe 0x180163568
cmp dword [rdi + 0x40], 1
jne 0x180163554
mov rax, qword [r13 + 0x150]
cmp rax, qword [rdi + 0x48]
jb 0x180163554
cmp dword [rdi + 0x50], 1
jne 0x1801639f6
mov rax, qword [rdi + 0x58]
mov r9, qword [r13 + 0x158]
cmp dword [r13], 1
jne 0x180163538
mov rcx, qword [r13 + 0x10]
mov r10, qword [r13 + 8]
mov r11, rcx
sub r11, r10
neg r11
sub rcx, r10
cmovb rcx, r11
jmp 0x18016353a
xor ecx, ecx
add rcx, r9
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x1801639f6
mov byte [rbp + 0x1f], 1
mov rcx, rbx
call fcn.180163300
mov r13, qword [rbp + 0x10]
mov r14, qword [r13 + 0x28]
cmp r14, 0x8000000
jb 0x1801635fc
cmp dword [rdi + 0x40], 1
jne 0x1801635db
mov rax, qword [r13 + 0x150]
cmp rax, qword [rdi + 0x48]
jb 0x1801635db
cmp dword [rdi + 0x50], 1
jne 0x1801639f2
mov rax, qword [rdi + 0x58]
mov rdx, qword [r13 + 0x158]
cmp dword [r13], 1
jne 0x1801635be
mov rcx, qword [r13 + 0x10]
mov r8, qword [r13 + 8]
mov r9, rcx
sub r9, r8
neg r9
sub rcx, r8
cmovb rcx, r9
jmp 0x1801635c0
xor ecx, ecx
add rcx, rdx
mul qword [r13 + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x1801639f2
mov byte [rbp + 0x1f], 1
mov rcx, rbx
call fcn.180163300
mov r13, qword [rbp + 0x10]
mov r14, qword [r13 + 0x28]
cmp r14, 0x8000000
jae 0x1801639c0
cmp qword [rbp - 8], 0
je 0x180163934
mov rax, qword [rbp - 0x10]
movzx esi, byte [rax + 0x10]
mov r15, qword [rdi + 0x2b8]
and r15d, 0x3f
mov ebx, 1
mov ecx, r15d
shl rbx, cl
mov rcx, qword [r13 + 0x18]
sub rcx, r14
mov rax, r14
cmp rcx, rbx
jae 0x18016365e
lea rcx, [r13 + 0x18]
mov byte [rbp + 0x1f], 1
mov qword [rsp + 0x20], 4
mov r9d, 4
mov rdx, r14
mov r8, rbx
call fcn.180229240
mov r13, qword [rbp + 0x10]
mov rax, qword [r13 + 0x28]
and esi, 1
and r12d, 0x10000000
or r12d, r14d
shl esi, 0x1b
mov dword [rbp + 8], esi
mov rcx, qword [r13 + 0x20]
cmp r15d, 2
ja 0x180163695
nop dword [rax + rax]
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec rbx
jne 0x180163680
jmp 0x1801636c5
and rbx, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, rbx
xor edx, edx
movaps xmm0, xmmword [0x180256f50]
nop dword [rax]
movups xmmword [rcx + rdx*4 - 0x10], xmm0
movups xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp rbx, rdx
jne 0x1801636b0
mov rdx, rax
or dword [rbp + 8], r12d
mov qword [r13 + 0x28], rdx
mov rax, qword [rdi + 0x298]
or rax, qword [rdi + 0x2a8]
mov rcx, qword [rdi + 0x290]
or rcx, qword [rdi + 0x2a0]
or rcx, rax
je 0x1801637a4
mov rcx, qword [rdi + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x18016394d
mov ebx, 2
shl rbx, cl
cmp rbx, 0x8000000
jae 0x18016398a
lea r14, [rdi + 0x290]
or ebx, 0x20000000
xor r15d, r15d
mov r12d, 1
xor r13d, r13d
nop word cs:[rax + rax]
cmp r13, 0xff
ja 0x1801637a4
mov r9, r13
xor eax, eax
mov ecx, r9d
shld rax, r12, cl
mov rdx, r13
shr rdx, 3
mov r8d, 1
shl r8, cl
and rdx, 0xfffffffffffffff0
test r9b, 0x40
cmovne rax, r8
cmovne r8, r15
and rax, qword [r14 + rdx + 8]
inc r13
and r8, qword [r14 + rdx]
or r8, rax
je 0x180163740
shl r9d, 8
mov byte [rbp + 0x1f], 1
mov dword [rsp + 0x20], ebx
mov rcx, rdi
mov rdx, qword [rbp + 0x10]
mov r8d, dword [rbp + 8]
call fcn.1801651f0
jmp 0x180163740
mov rax, qword [rbp - 8]
mov r14, qword [rbp + 0x10]
add qword [r14 + 0x148], rax
mov rax, qword [rbp - 0x10]
lock inc qword [rax]
jle 0x180163a35
mov rax, qword [rbp - 0x10]
mov rdi, qword [rbp - 8]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rdi
mov rbx, qword [r14 + 0x58]
cmp rbx, qword [r14 + 0x48]
jne 0x1801637ef
lea rcx, [r14 + 0x48]
lea rdx, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
call fcn.180008850
mov rax, qword [r14 + 0x50]
mov rcx, rbx
shl rcx, 4
mov rdx, qword [rbp - 0x48]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], rdi
inc rbx
mov qword [r14 + 0x58], rbx
mov rdx, qword [rbp - 0x10]
mov r8, qword [rbp - 8]
mov byte [rbp + 0x1f], 0
mov rcx, qword [rbp]
mov r9d, dword [rbp + 8]
call fcn.18015eda0
mov rax, qword [rbp + 0x10]
lea rcx, [rax + 0x108]
mov qword [rbp], rcx
cmp dword [rax + 0x100], 1
jne 0x180163855
mov rax, qword [rbp]
mov rax, qword [rax]
lock dec qword [rax]
jne 0x180163855
mov rcx, qword [rbp]
call fcn.18004bef0
mov rax, qword [rbp + 0x10]
mov dword [rax + 0x100], 2
mov ecx, dword [rbp + 8]
mov dword [rax + 0x104], ecx
movups xmm0, xmmword [rbp - 0x40]
mov rax, qword [rbp]
movups xmmword [rax], xmm0
add rsp, 0xa8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rax, str.cannot_save_sentinel_state
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 1
mov qword [rbp - 0x30], 8
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov byte [rbp + 0x1e], 1
lea rdx, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
lea rcx, [rbp - 0x40]
call fcn.18022de80
jmp 0x180163a35
mov qword [rbp - 0x40], rdx
mov byte [rbp + 0x1e], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
mov qword [rsp + 0x20], rax
lea rcx, [0x180256f80]
lea r9, [0x180256fb0]
lea r8, [rbp - 0x40]
mov edx, 0x2b
call fcn.18022e1f0
jmp 0x180163a35
mov qword [rbp - 0x40], 0x8000000
mov byte [rbp + 0x1e], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
mov qword [rsp + 0x20], rax
lea rcx, [0x180256f80]
lea r9, [0x180256fb0]
lea r8, [rbp - 0x40]
mov edx, 0x2b
call fcn.18022e1f0
jmp 0x180163a35
mov byte [rbp + 0x1f], 1
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.18022dfa4
jmp 0x180163a35
mov eax, 1
shl rax, cl
mov qword [rbp - 0x40], rax
mov byte [rbp + 0x1f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
mov qword [rsp + 0x20], rax
lea rcx, [0x180256f80]
lea r9, [0x180256fb0]
lea r8, [rbp - 0x40]
mov edx, 0x2b
call fcn.18022e1f0
jmp 0x180163a35
mov qword [rbp - 0x40], 0x8000000
mov byte [rbp + 0x1f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
mov qword [rsp + 0x20], rax
lea rcx, [0x180256f80]
lea r9, [0x180256fb0]
lea r8, [rbp - 0x40]
mov edx, 0x2b
call fcn.18022e1f0
jmp 0x180163a35
mov qword [rbp - 0x40], r14
mov byte [rbp + 0x1f], 1
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
mov qword [rsp + 0x20], rax
lea rcx, [0x180256f80]
lea r9, [0x180256fb0]
lea r8, [rbp - 0x40]
mov edx, 0x2b
call fcn.18022e1f0
jmp 0x180163a35
mov r8, qword [rbp - 0x10]
lock dec qword [r8]
jne 0x180163a09
mov byte [rbp + 0x1e], 0
lea rcx, [rbp - 0x10]
call fcn.18004bef0
mov byte [rbp + 0x1e], 0
lea rax, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rsPp_
mov qword [rsp + 0x20], rax
lea rcx, str.adding_one_state_after_cache_clear_must_work
lea r9, [0x180256f60]
lea r8, [rbp - 0x40]
mov edx, 0x2c
call fcn.18022e1f0
ud2