Function at 0x1400598d0
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov r12, 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 0x140059949
lea r14, [rsi + 0x118]
mov rdi, qword [rsi + 0x130]
test rdi, rdi
je 0x140059a14
mov r13, r14
mov rbx, qword [r14]
movdqa xmm0, xmmword [rbx]
pmovmskb r15d, xmm0
not r15d
lea r14, [rbx + 0x10]
jmp 0x14005996f
add rdi, 0x10
dec rbx
je 0x14005990f
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x140059940
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
call fcn.140046c70
jmp 0x140059940
lea eax, [r15 - 1]
and eax, r15d
mov r15d, eax
dec rdi
je 0x1400599cb
test r15w, r15w
jne 0x1400599a1
nop word cs:[rax + rax]
movdqa xmm0, xmmword [r14]
pmovmskb r15d, xmm0
add rbx, 0xfffffffffffffe80
add r14, 0x10
cmp r15d, 0xffff
je 0x140059980
not r15d
tzcnt eax, r15d
neg rax
lea rax, [rax + rax*2]
mov rcx, qword [rbx + rax*8 - 0x18]
lock dec qword [rcx]
jne 0x140059960
lea rax, [rbx + rax*8]
mov rcx, qword [rax - 0x18]
mov rdx, qword [rax - 0x10]
call fcn.140046c70
jmp 0x140059960
mov rdi, qword [rsi + 0x120]
test rdi, rdi
mov r14, r13
je 0x1400599e8
mov rcx, qword [r14]
lea r8, [rdi + 0x11]
mov dl, 0xff
call sub.msvcrt.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 qword [rsi], 0
je 0x140059a3f
mov rax, qword [rsi + 0x10]
mov qword [rsi + 8], rax
mov rcx, r12
call fcn.140058730
mov eax, dword [rsi + 0x100]
mov edi, dword [rsi + 0x104]
mov r15, qword [rsi + 0x108]
mov rcx, qword [rsi + 0x110]
mov dword [rsi + 0x100], 0
cmp eax, 1
jne 0x140059e5d
mov qword [rsp + 0x90], r15
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x88], rcx
cmp edi, 0x80000000
je 0x140059e71
mov rax, qword [r12]
mov qword [rsp + 0x28], rax
mov rcx, qword [rax + 0x2b8]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x140059eed
or eax, 0x40000000
cmp eax, edi
je 0x140059e71
mov eax, 2
shl rax, cl
cmp rax, 0x8000000
jae 0x140059efb
or eax, 0x20000000
cmp eax, edi
je 0x140059e71
mov qword [rsp + 0x38], r15
mov r11, qword [rsp + 0x30]
mov qword [rsp + 0x40], r11
mov rax, qword [rsi + 0x40]
mov rdx, qword [rsi + 0x58]
mov r8, rdx
shl r8, 4
mov r9, qword [rsi + 0x130]
add rax, qword [rsi + 0x28]
add rax, qword [rsi + 0x70]
add rax, qword [rsi + 0x88]
add rax, qword [rsi + 0xa8]
lea r9, [r9 + r9*4]
add rax, qword [rsi + 0xc0]
mov r10d, 4
shl r10, cl
add rax, qword [rsi + 0xd0]
add r8, r11
lea rcx, [r8 + r9*4]
add rcx, qword [rsi + 0xe8]
add rcx, qword [rsi + 0x148]
lea rax, [rcx + rax*4]
add rax, r10
add rax, 0x24
mov rcx, qword [rsp + 0x28]
cmp rax, qword [rcx + 0x2c0]
jbe 0x140059bf0
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x40], 1
jne 0x140059be8
mov rax, qword [rsi + 0x150]
mov rcx, qword [rsp + 0x28]
cmp rax, qword [rcx + 0x48]
jb 0x140059be8
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x50], 1
jne 0x140059eaf
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 0x58]
mov r8, qword [rsi + 0x158]
cmp qword [rsi], 0
je 0x140059bcc
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 0x140059bce
xor ecx, ecx
add rcx, r8
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x140059eaf
mov rcx, r12
call fcn.1400598d0
mov rcx, r12
call fcn.140059ff0
test eax, eax
jne 0x140059eaf
cmp qword [rsp + 0x30], 0
je 0x140059f2f
mov ebp, edx
movzx ebx, byte [r15 + 0x10]
mov rax, qword [rsp + 0x28]
mov r13, qword [rax + 0x2b8]
and r13d, 0x3f
mov r12d, 1
mov ecx, r13d
shl r12, cl
mov rax, qword [rsi + 0x18]
mov rdx, qword [rsi + 0x28]
sub rax, rdx
cmp rax, r12
jae 0x140059c4f
lea rcx, [rsi + 0x18]
mov r8, r12
call fcn.140047f90
mov rdx, qword [rsi + 0x28]
and edi, 0x10000000
or ebp, edi
and ebx, 1
shl ebx, 0x1b
mov rax, qword [rsi + 0x20]
cmp r13d, 2
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], r15
ja 0x140059c95
nop word cs:[rax + rax]
lea rcx, [rdx + 1]
mov dword [rax + rdx*4], 0x80000000
mov rdx, rcx
dec r12
jne 0x140059c80
jmp 0x140059cc7
and r12, 0xfffffffffffffff8
lea rax, [rax + rdx*4]
add rax, 0x10
add rdx, r12
xor ecx, ecx
movdqa xmm0, xmmword [0x1400fdb90]
nop
movdqu xmmword [rax + rcx*4 - 0x10], xmm0
movdqu xmmword [rax + rcx*4], xmm0
add rcx, 8
cmp r12, rcx
jne 0x140059cb0
mov rcx, rdx
or ebp, ebx
mov qword [rsi + 0x28], rcx
mov rdx, qword [rsp + 0x28]
mov rax, qword [rdx + 0x298]
or rax, qword [rdx + 0x2a8]
mov rcx, qword [rdx + 0x290]
or rcx, qword [rdx + 0x2a0]
or rcx, rax
je 0x140059db3
mov rax, qword [rsp + 0x28]
mov rcx, qword [rax + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x140059f41
mov edi, 2
shl rdi, cl
cmp rdi, 0x8000000
jae 0x140059f57
mov rax, qword [rsp + 0x28]
lea rbx, [rax + 0x290]
or edi, 0x20000000
xor r14d, r14d
mov r15d, 1
xor r12d, r12d
xor r13d, r13d
jmp 0x140059d5a
add r12d, 0x100
inc r13
cmp r13, 0xff
ja 0x140059db3
xor eax, eax
mov ecx, r13d
shld rax, r15, 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 [rbx + rdx + 8]
and r8, qword [rbx + rdx]
or r8, rax
je 0x140059d50
mov dword [rsp + 0x20], edi
mov rcx, qword [rsp + 0x28]
mov rdx, rsi
mov r8d, ebp
mov r9d, r12d
call fcn.14005a0d0
jmp 0x140059d50
mov rax, qword [rsp + 0x30]
add qword [rsi + 0x148], rax
mov r15, qword [rsp + 0x80]
lock inc qword [r15]
jle 0x140059f89
mov rbx, qword [rsi + 0x58]
cmp rbx, qword [rsi + 0x48]
mov r14, qword [rsp + 0x78]
jne 0x140059de9
lea rcx, [rsi + 0x48]
call fcn.140047ee0
lea rdi, [rsi + 0x108]
mov rax, qword [rsi + 0x50]
mov rcx, rbx
shl rcx, 4
mov qword [rax + rcx], r15
mov r8, qword [rsp + 0x30]
mov qword [rax + rcx + 8], r8
inc rbx
mov qword [rsi + 0x58], rbx
mov rcx, r14
mov rdx, r15
mov r9d, ebp
call fcn.14005a230
cmp dword [rsi + 0x100], 1
jne 0x140059e43
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x140059e43
mov rcx, qword [rsi + 0x108]
mov rdx, qword [rsi + 0x110]
call fcn.140046c70
mov dword [rsi + 0x100], 2
mov dword [rsi + 0x104], ebp
movdqu xmm0, xmmword [rsp + 0x48]
movdqu xmmword [rdi], xmm0
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rax, str.cannot_save_sentinel_state
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 1
mov qword [rsp + 0x58], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
lea rdx, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
lea rcx, [rsp + 0x48]
call fcn.140038510
jmp 0x140059f89
lock dec qword [r15]
jne 0x140059ec4
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
call fcn.140046c70
lea rax, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, str.adding_one_state_after_cache_clear_must_work
lea r9, [0x140224cf0]
lea r8, [rsp + 0x48]
mov edx, 0x2c
call fcn.14003a1d0
mov qword [rsp + 0x48], rax
lea rax, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
jmp 0x140059f0b
mov qword [rsp + 0x48], 0x8000000
lea rax, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
lea r8, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140224d50]
mov edx, 0x2b
call fcn.14003a1d0
jmp 0x140059f89
lea r8, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.1400385c0
jmp 0x140059f89
mov eax, 1
shl rax, cl
mov qword [rsp + 0x48], rax
lea rax, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
jmp 0x140059f67
mov qword [rsp + 0x48], 0x8000000
lea rax, str.C:Userswin10_x64.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
lea r8, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140224d50]
mov edx, 0x2b
call fcn.14003a1d0
ud2