Function at 0x140095590
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov r13, rcx
mov rsi, qword [rcx + 8]
mov qword [rsi + 0x28], 0
mov qword [rsi + 0x40], 0
mov rdi, qword [rsi + 0x50]
mov rbx, qword [rsi + 0x58]
mov qword [rsi + 0x58], 0
test rbx, rbx
jne 0x140095609
lea rbp, [rsi + 0x118]
mov rdi, qword [rsi + 0x130]
test rdi, rdi
je 0x1400956d2
mov rbx, qword [rbp]
movdqa xmm0, xmmword [rbx]
pmovmskb r15d, xmm0
not r15d
lea r14, [rbx + 0x10]
jmp 0x14009562f
add rdi, 0x10
dec rbx
je 0x1400955cc
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x140095600
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
call fcn.140040cf0
jmp 0x140095600
lea eax, [r15 - 1]
and eax, r15d
mov r15d, eax
dec rdi
je 0x14009568b
test r15w, r15w
jne 0x140095661
nop word cs:[rax + rax]
movdqa xmm0, xmmword [r14]
pmovmskb r15d, xmm0
add rbx, 0xfffffffffffffe80
add r14, 0x10
cmp r15d, 0xffff
je 0x140095640
not r15d
tzcnt eax, r15d
neg rax
lea rax, [rax + rax*2]
mov rcx, qword [rbx + rax*8 - 0x18]
lock dec qword [rcx]
jne 0x140095620
lea rax, [rbx + rax*8]
mov rcx, qword [rax - 0x18]
mov rdx, qword [rax - 0x10]
call fcn.140040cf0
jmp 0x140095620
mov rdi, qword [rsi + 0x120]
test rdi, rdi
je 0x1400956a6
mov rcx, qword [rbp]
lea r8, [rdi + 0x11]
mov dl, 0xff
call sub.VCRUNTIME140.dll_memset
mov qword [rsi + 0x130], 0
lea rax, [rdi + 1]
mov rcx, rax
shr rcx, 3
and rax, 0xfffffffffffffff8
sub rax, rcx
cmp rdi, 8
cmovb rax, rdi
mov qword [rsi + 0x128], rax
mov qword [rsi + 0x148], 0
inc qword [rsi + 0x150]
mov qword [rsi + 0x158], 0
cmp dword [rsi], 1
jne 0x1400956fc
mov rax, qword [rsi + 0x10]
mov qword [rsi + 8], rax
mov rcx, r13
call fcn.140094510
mov eax, dword [rsi + 0x100]
mov r12d, dword [rsi + 0x104]
mov r14, qword [rsi + 0x108]
mov rdi, qword [rsi + 0x110]
mov dword [rsi + 0x100], 0
cmp eax, 1
jne 0x140095b3d
mov eax, r12d
neg eax
jo 0x140095b7a
mov r11, qword [r13]
mov rcx, qword [r11 + 0x2b8]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x140095bdf
or eax, 0x40000000
cmp eax, r12d
je 0x140095b7a
mov eax, 2
shl rax, cl
cmp rax, 0x8000000
jae 0x140095bb3
or eax, 0x20000000
cmp eax, r12d
je 0x140095b7a
mov qword [rsp + 0x70], rbp
mov rbp, qword [rsi + 0x28]
mov rdx, qword [rsi + 0x58]
mov rax, rdx
shl rax, 4
mov r8, qword [rsi + 0x40]
add r8, rbp
add r8, qword [rsi + 0x70]
add r8, qword [rsi + 0x88]
add r8, qword [rsi + 0xa8]
add r8, qword [rsi + 0xc0]
mov r9, qword [rsi + 0x130]
add r8, qword [rsi + 0xd0]
mov r10d, 4
shl r10, cl
lea rcx, [r9 + r9*4]
add rax, rdi
add rax, r10
lea rax, [rax + rcx*4]
add rax, qword [rsi + 0xe8]
add rax, qword [rsi + 0x148]
lea rax, [rax + r8*4]
add rax, 0x24
cmp rax, qword [r11 + 0x2c0]
mov qword [rsp + 0x28], r11
jbe 0x140095880
cmp dword [r11 + 0x40], 1
jne 0x14009586f
mov rax, qword [rsi + 0x150]
cmp rax, qword [r11 + 0x48]
jb 0x14009586f
cmp dword [r11 + 0x50], 1
jne 0x140095bed
mov rax, qword [r11 + 0x58]
mov r8, qword [rsi + 0x158]
cmp dword [rsi], 1
jne 0x140095853
mov rcx, qword [rsi + 0x10]
mov r9, qword [rsi + 8]
mov r10, rcx
sub r10, r9
neg r10
sub rcx, r9
cmovb rcx, r10
jmp 0x140095855
xor ecx, ecx
add rcx, r8
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x140095bed
mov rcx, r13
call fcn.140095590
mov r11, qword [rsp + 0x28]
mov rbp, qword [rsi + 0x28]
cmp rbp, 0x8000000
jb 0x140095911
cmp dword [r11 + 0x40], 1
jne 0x1400958f3
mov rax, qword [rsi + 0x150]
cmp rax, qword [r11 + 0x48]
jb 0x1400958f3
cmp dword [r11 + 0x50], 1
jne 0x140095bed
mov rax, qword [r11 + 0x58]
mov rdx, qword [rsi + 0x158]
cmp dword [rsi], 1
jne 0x1400958d6
mov rcx, qword [rsi + 0x10]
mov r8, qword [rsi + 8]
mov r9, rcx
sub r9, r8
neg r9
sub rcx, r8
cmovb rcx, r9
jmp 0x1400958d8
xor ecx, ecx
add rcx, rdx
mul qword [rsi + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x140095bed
mov rcx, r13
call fcn.140095590
mov rbp, qword [rsi + 0x28]
cmp rbp, 0x8000000
jae 0x140095c27
mov r11, qword [rsp + 0x28]
mov qword [rsp + 0x68], rdi
test rdi, rdi
je 0x140095bc5
and r12d, 0x10000000
movzx r15d, byte [r14 + 0x10]
mov rdi, qword [r11 + 0x2b8]
and edi, 0x3f
mov r13d, 1
mov ecx, edi
shl r13, cl
and r15d, 1
mov rax, qword [rsi + 0x18]
sub rax, rbp
cmp rax, r13
jb 0x140095b4e
mov rax, rbp
or r12d, ebp
shl r15d, 0x1b
mov rcx, qword [rsi + 0x20]
cmp edi, 2
mov qword [rsp + 0x30], r14
ja 0x140095985
nop dword [rax]
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec r13
jne 0x140095970
jmp 0x1400959b7
and r13, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, r13
xor edx, edx
movdqa xmm0, xmmword [0x1400e55c0]
nop
movdqu xmmword [rcx + rdx*4 - 0x10], xmm0
movdqu xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp r13, rdx
jne 0x1400959a0
mov rdx, rax
or r12d, r15d
mov qword [rsi + 0x28], rdx
mov rax, qword [r11 + 0x298]
or rax, qword [r11 + 0x2a8]
mov rcx, qword [r11 + 0x290]
or rcx, qword [r11 + 0x2a0]
or rcx, rax
je 0x140095a95
mov rcx, qword [r11 + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x140095bd7
mov edi, 2
shl rdi, cl
cmp rdi, 0x8000000
jae 0x140095bb3
lea r15, [r11 + 0x290]
or edi, 0x20000000
xor r14d, r14d
mov ebx, 1
xor ebp, ebp
xor r13d, r13d
jmp 0x140095a39
add ebp, 0x100
inc r13
cmp r13, 0xff
ja 0x140095a95
xor eax, eax
mov ecx, r13d
shld rax, rbx, cl
mov rdx, r13
shr rdx, 3
mov r8d, 1
shl r8, cl
and rdx, 0xfffffffffffffff0
test r13b, 0x40
cmovne rax, r8
cmovne r8, r14
and rax, qword [r15 + rdx + 8]
and r8, qword [r15 + rdx]
or r8, rax
je 0x140095a30
mov dword [rsp + 0x20], edi
mov rcx, r11
mov rdx, rsi
mov r8d, r12d
mov r9d, ebp
call fcn.140095c60
mov r11, qword [rsp + 0x28]
jmp 0x140095a30
mov r15, qword [rsp + 0x68]
add qword [rsi + 0x148], r15
mov rax, qword [rsp + 0x30]
lock inc qword [rax]
jle 0x140095bd5
mov rbx, qword [rsi + 0x58]
cmp rbx, qword [rsi + 0x48]
mov r14, qword [rsp + 0x70]
jne 0x140095ac8
lea rcx, [rsi + 0x48]
call fcn.140087430
lea rdi, [rsi + 0x108]
mov rax, qword [rsi + 0x50]
mov rcx, rbx
shl rcx, 4
mov rdx, qword [rsp + 0x30]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r15
inc rbx
mov qword [rsi + 0x58], rbx
mov rcx, r14
mov r8, r15
mov r9d, r12d
call fcn.140087a60
cmp dword [rsi + 0x100], 1
jne 0x140095b22
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x140095b22
mov rcx, qword [rsi + 0x108]
mov rdx, qword [rsi + 0x110]
call fcn.140040cf0
mov dword [rsi + 0x100], 2
mov dword [rsi + 0x104], r12d
movdqu xmm0, xmmword [rsp + 0x38]
movdqu xmmword [rdi], xmm0
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsi + 0x18]
mov qword [rsp + 0x20], 4
mov r9d, 4
mov rdx, rbp
mov r8, r13
call fcn.1400dfd40
mov r11, qword [rsp + 0x28]
mov rax, qword [rsi + 0x28]
jmp 0x140095957
lea rax, str.cannot_save_sentinel_state
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x48], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
lea rdx, str.C:UsersAarne.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.9_srchybriddfa.rs
lea rcx, [rsp + 0x38]
call fcn.1400dec20
mov qword [rsp + 0x38], 0x8000000
lea rax, str.C:UsersAarne.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.9_srchybriddfa.rs
jmp 0x140095c33
lea r8, str.C:UsersAarne.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.9_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1400debb0
ud2
mov eax, 1
shl rax, cl
mov qword [rsp + 0x38], rax
lea rax, str.C:UsersAarne.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.9_srchybriddfa.rs
jmp 0x140095c33
lock dec qword [r14]
jne 0x140095bfe
mov rdx, rdi
mov rcx, r14
call fcn.140040cf0
lea rax, str.C:UsersAarne.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.9_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, str.adding_one_state_after_cache_clear_must_work
lea r9, [0x1400eebc0]
lea r8, [rsp + 0x38]
mov edx, 0x2c
call fcn.1400def70
mov qword [rsp + 0x38], rbp
lea rax, str.C:UsersAarne.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.9_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1400eebe0]
lea r8, [rsp + 0x38]
mov edx, 0x2b
call fcn.1400def70
int3