Function at 0x180058520
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
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 0x180058599
lea rbp, [rsi + 0x118]
mov rdi, qword [rsi + 0x130]
test rdi, rdi
je 0x18005865e
mov rbx, qword [rbp]
movdqa xmm0, xmmword [rbx]
pmovmskb r15d, xmm0
not r15d
lea r14, [rbx + 0x10]
jmp 0x1800585bf
add rdi, 0x10
dec rbx
je 0x18005855f
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x180058590
mov rcx, rdi
call fcn.1800091d0
jmp 0x180058590
lea eax, [r15 - 1]
and eax, r15d
mov r15d, eax
dec rdi
je 0x180058617
test r15w, r15w
jne 0x1800585f1
nop word cs:[rax + rax]
movdqa xmm0, xmmword [r14]
pmovmskb r15d, xmm0
add rbx, 0xfffffffffffffe80
add r14, 0x10
cmp r15d, 0xffff
je 0x1800585d0
not r15d
tzcnt eax, r15d
neg rax
lea rax, [rax + rax*2]
mov rcx, qword [rbx + rax*8 - 0x18]
lock dec qword [rcx]
jne 0x1800585b0
lea rcx, [rbx + rax*8]
add rcx, 0xffffffffffffffe8
call fcn.1800091d0
jmp 0x1800585b0
mov rdi, qword [rsi + 0x120]
test rdi, rdi
je 0x180058632
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 0x180058688
mov rax, qword [rsi + 0x10]
mov qword [rsi + 8], rax
mov rcx, r12
call fcn.180058c10
mov eax, dword [rsi + 0x100]
mov ebx, dword [rsi + 0x104]
mov r14, qword [rsi + 0x108]
mov r15, qword [rsi + 0x110]
mov dword [rsi + 0x100], 0
cmp eax, 1
jne 0x180058ac0
mov eax, ebx
neg eax
jo 0x180058af1
mov r11, qword [r12]
mov rcx, qword [r11 + 0x2b8]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x180058b2a
or eax, 0x40000000
cmp eax, ebx
je 0x180058af1
mov eax, 2
shl rax, cl
cmp rax, 0x8000000
jae 0x180058b38
or eax, 0x20000000
cmp eax, ebx
je 0x180058af1
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], r15
mov r13, qword [rsi + 0x28]
mov rdx, qword [rsi + 0x58]
mov rax, rdx
shl rax, 4
mov r8, qword [rsi + 0x40]
add r8, r13
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, r15
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 + 0x38], r11
jbe 0x18005880d
cmp dword [r11 + 0x40], 1
jne 0x1800587fc
mov rax, qword [rsi + 0x150]
cmp rax, qword [r11 + 0x48]
jb 0x1800587fc
cmp dword [r11 + 0x50], 1
jne 0x180058ba4
mov rax, qword [r11 + 0x58]
mov r8, qword [rsi + 0x158]
cmp dword [rsi], 1
jne 0x1800587e0
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 0x1800587e2
xor ecx, ecx
add rcx, r8
mul rdx
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x180058ba4
mov rcx, r12
call fcn.180058520
mov r11, qword [rsp + 0x38]
mov r13, qword [rsi + 0x28]
cmp r13, 0x8000000
jb 0x18005889e
cmp dword [r11 + 0x40], 1
jne 0x180058880
mov rax, qword [rsi + 0x150]
cmp rax, qword [r11 + 0x48]
jb 0x180058880
cmp dword [r11 + 0x50], 1
jne 0x180058ba4
mov rax, qword [r11 + 0x58]
mov rdx, qword [rsi + 0x158]
cmp dword [rsi], 1
jne 0x180058863
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 0x180058865
xor ecx, ecx
add rcx, rdx
mul qword [rsi + 0x58]
mov rdx, 0xffffffffffffffff
cmovno rdx, rax
cmp rcx, rdx
jb 0x180058ba4
mov rcx, r12
call fcn.180058520
mov r13, qword [rsi + 0x28]
cmp r13, 0x8000000
jae 0x180058bdd
mov r11, qword [rsp + 0x38]
mov qword [rsp + 0x80], rbp
test r15, r15
je 0x180058b6a
and ebx, 0x10000000
movzx ebp, byte [r14 + 0x10]
mov rdi, qword [r11 + 0x2b8]
and edi, 0x3f
mov r12d, 1
mov ecx, edi
shl r12, cl
and ebp, 1
mov rax, qword [rsi + 0x18]
sub rax, r13
cmp rax, r12
jb 0x180058ad4
mov rax, r13
or ebx, r13d
shl ebp, 0x1b
mov rcx, qword [rsi + 0x20]
cmp edi, 2
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x70], r15
ja 0x180058915
nop
lea rdx, [rax + 1]
mov dword [rcx + rax*4], 0x80000000
mov rax, rdx
dec r12
jne 0x180058900
jmp 0x180058947
and r12, 0xfffffffffffffff8
lea rcx, [rcx + rax*4]
add rcx, 0x10
add rax, r12
xor edx, edx
movdqa xmm0, xmmword [0x180131920]
nop
movdqu xmmword [rcx + rdx*4 - 0x10], xmm0
movdqu xmmword [rcx + rdx*4], xmm0
add rdx, 8
cmp r12, rdx
jne 0x180058930
mov rdx, rax
or ebp, ebx
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 0x180058a26
mov rcx, qword [r11 + 0x2b8]
and ecx, 0x3f
cmp rcx, 0x1b
jae 0x180058b7c
mov edi, 2
shl rdi, cl
cmp rdi, 0x8000000
jae 0x180058b92
lea rbx, [r11 + 0x290]
or edi, 0x20000000
xor r14d, r14d
mov r15d, 1
xor r12d, r12d
xor r13d, r13d
jmp 0x1800589ca
add r12d, 0x100
inc r13
cmp r13, 0xff
ja 0x180058a26
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 0x1800589c0
mov dword [rsp + 0x20], edi
mov rcx, r11
mov rdx, rsi
mov r8d, ebp
mov r9d, r12d
call fcn.180059ca0
mov r11, qword [rsp + 0x38]
jmp 0x1800589c0
mov r15, qword [rsp + 0x70]
add qword [rsi + 0x148], r15
mov r14, qword [rsp + 0x78]
lock inc qword [r14]
jle 0x180058b7a
mov rbx, qword [rsi + 0x58]
cmp rbx, qword [rsi + 0x48]
jne 0x180058a54
lea rcx, [rsi + 0x48]
call fcn.180069500
lea rdi, [rsi + 0x108]
mov rax, qword [rsi + 0x50]
mov rcx, rbx
shl rcx, 4
mov qword [rax + rcx], r14
mov qword [rax + rcx + 8], r15
inc rbx
mov qword [rsi + 0x58], rbx
mov rcx, qword [rsp + 0x80]
mov rdx, r14
mov r8, r15
mov r9d, ebp
call fcn.180020680
cmp dword [rsi + 0x100], 1
jne 0x180058aa6
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x180058aa6
mov rcx, rdi
call fcn.1800091d0
mov dword [rsi + 0x100], 2
mov dword [rsi + 0x104], ebp
movdqu xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rdi], xmm0
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsi + 0x18]
mov rdx, r13
mov r8, r12
call fcn.18010c300
mov r11, qword [rsp + 0x38]
mov rax, qword [rsi + 0x28]
jmp 0x1800588e5
lea rax, str.cannot_save_sentinel_state
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
mov qword [rsp + 0x50], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
lea rdx, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
lea rcx, [rsp + 0x40]
call fcn.18010e8f0
mov qword [rsp + 0x40], rax
lea rax, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
jmp 0x180058b48
mov qword [rsp + 0x40], 0x8000000
lea rax, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x180131968]
lea r9, [0x180131998]
lea r8, [rsp + 0x40]
mov edx, 0x2b
call fcn.18010ec80
lea r8, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.18010ea20
ud2
mov eax, 1
shl rax, cl
mov qword [rsp + 0x30], rax
lea rax, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
jmp 0x180058be9
mov qword [rsp + 0x30], 0x8000000
lea rax, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
jmp 0x180058be9
lock dec qword [r14]
jne 0x180058bb4
lea rcx, [rsp + 0x40]
call fcn.1800091d0
lea rax, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, str.adding_one_state_after_cache_clear_must_work
lea r9, [0x180131948]
lea r8, [rsp + 0x40]
mov edx, 0x2c
call fcn.18010ec80
mov qword [rsp + 0x30], r13
lea rax, str.C:UsersHarrison.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.7_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x180131968]
lea r9, [0x180131998]
lea r8, [rsp + 0x30]
mov edx, 0x2b
call fcn.18010ec80
int3