Function at 0x18001c520
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov r14, qword [r9 + 0x18]
mov r15, qword [r9 + 0x20]
cmp r14, r15
jbe 0x18001c54c
mov qword [rcx], 0
jmp 0x18001d720
mov rbp, r9
mov rdi, r8
mov rbx, rdx
cmp byte [r9 + 0x28], 0
mov qword [rsp + 0x30], rcx
je 0x18001c5ff
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x38], rax
cmp r15, rax
jae 0x18001c6a3
mov rax, qword [rbp + 8]
movzx eax, byte [rax + r15]
movzx r13d, al
mov edx, dword [rbp]
mov r8d, dword [rbp + 4]
mov rax, qword [rbx + 0x290]
or rax, qword [rbx + 0x2a0]
mov rcx, qword [rbx + 0x288]
or rcx, qword [rbx + 0x298]
or rcx, rax
je 0x18001c6b7
lea rax, [rbx + 0x288]
mov r9d, r13d
shr r9d, 7
shl r9, 4
mov r10d, 1
xor r11d, r11d
mov ecx, r13d
shld r11, r10, cl
shl r10, cl
xor ecx, ecx
test r13b, 0x40
cmovne r11, r10
cmovne r10, rcx
and r11, qword [rax + r9 + 8]
and r10, qword [rax + r9]
or r10, r11
je 0x18001c6b7
mov esi, 4
jmp 0x18001c9e5
mov r10, qword [rbp + 0x10]
cmp r15, r10
jae 0x18001c9a6
mov rax, qword [rbp + 8]
movzx eax, byte [rax + r15]
movzx r13d, al
mov r11d, dword [rbp]
mov r8d, dword [rbp + 4]
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], rdi
mov rax, qword [rbx + 0x290]
or rax, qword [rbx + 0x2a0]
mov rcx, qword [rbx + 0x288]
or rcx, qword [rbx + 0x298]
or rcx, rax
je 0x18001cad8
lea rax, [rbx + 0x288]
mov edx, r13d
shr edx, 7
shl rdx, 4
mov esi, 1
xor r9d, r9d
mov ecx, r13d
shld r9, rsi, cl
shl rsi, cl
xor ecx, ecx
test r13b, 0x40
cmovne r9, rsi
cmovne rsi, rcx
and r9, qword [rax + rdx + 8]
and rsi, qword [rax + rdx]
or rsi, r9
je 0x18001cad8
mov esi, 4
jmp 0x18001cb19
mov edx, dword [rbp]
mov r8d, dword [rbp + 4]
mov r9b, 2
movzx ecx, r9b
test edx, edx
jne 0x18001c6c5
jmp 0x18001c6d2
movzx r9d, byte [rbx + r13 + 0x78]
movzx ecx, r9b
test edx, edx
je 0x18001c6d2
cmp edx, 1
jne 0x18001c9d3
add rcx, 6
mov rax, qword [rdi + 0x58]
cmp rcx, rax
jae 0x18001d08b
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x18001d2cc
mov r13d, eax
cmp r14, r15
jne 0x18001c713
test r14, r14
je 0x18001d10a
lea rsi, [r14 - 1]
cmp rsi, qword [rsp + 0x38]
jb 0x18001cb3d
jmp 0x18001d812
dec r15
cmp qword [rdi], 1
jne 0x18001c73b
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r15
mov rbp, qword [rbp + 8]
mov rax, r14
add rax, 3
mov rsi, 0xffffffffffffffff
cmovae rsi, rax
mov r10, qword [rbx + 0x178]
lea r11, [rsp + 0x48]
jmp 0x18001c783
mov r13d, edx
lea rax, [r15 - 1]
cmp r15, r14
mov r15, rax
je 0x18001ca33
cmp r13d, 0x7ffffff
jbe 0x18001c800
cmp qword [rdi], 0
je 0x18001d8ad
mov qword [rdi + 0x10], r15
cmp r15, qword [rsp + 0x38]
jae 0x18001d737
movzx r8d, byte [rbp + r15]
movzx eax, byte [rbx + r8 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x18001d6d9
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001c970
cmp edx, 0x8000000
jb 0x18001c770
mov eax, edx
mov ecx, eax
and ecx, 0x10000000
jne 0x18001c770
jmp 0x18001d09c
cmp r15, r14
jb 0x18001c773
mov r9, qword [rdi + 0x30]
dec r15
mov rax, r15
nop word cs:[rax + rax]
lea r15, [rax + 1]
movzx ecx, byte [rbp + rax + 1]
movzx ecx, byte [rbx + rcx + 0x188]
mov edx, r13d
add rdx, rcx
mov edx, dword [r9 + rdx*4]
cmp r15, rsi
jbe 0x18001c8bb
cmp edx, 0x8000000
jae 0x18001c8bb
movzx ecx, byte [rbp + rax]
movzx ecx, byte [rbx + rcx + 0x188]
add rcx, rdx
mov ecx, dword [r9 + rcx*4]
cmp rcx, 0x7ffffff
ja 0x18001c8c8
movzx edx, byte [rbp + rax - 1]
movzx edx, byte [rbx + rdx + 0x188]
add rdx, rcx
mov edx, dword [r9 + rdx*4]
cmp rdx, 0x7ffffff
ja 0x18001c8d9
movzx ecx, byte [rbp + rax - 2]
movzx ecx, byte [rbx + rcx + 0x188]
add rcx, rdx
mov r13d, dword [r9 + rcx*4]
cmp r13d, 0x7ffffff
ja 0x18001c8eb
lea r15, [rax - 4]
add rax, 0xfffffffffffffffd
cmp rax, r14
mov rax, r15
jae 0x18001c820
inc r15
jmp 0x18001c773
mov eax, r13d
test edx, edx
jns 0x18001c7dc
jmp 0x18001c8ff
mov r15, rax
mov eax, edx
mov edx, ecx
test edx, edx
jns 0x18001c7dc
jmp 0x18001c8ff
dec rax
mov r15, rax
mov eax, ecx
test edx, edx
jns 0x18001c7dc
jmp 0x18001c8ff
add rax, 0xfffffffffffffffe
mov r15, rax
mov eax, edx
mov edx, r13d
test edx, edx
jns 0x18001c7dc
cmp qword [rdi], 0
je 0x18001d8ad
mov qword [rdi + 0x10], r15
cmp r15, qword [rsp + 0x38]
jae 0x18001d7fc
movzx r8d, byte [rbp + r15]
movzx edx, byte [rbx + r8 + 0x188]
mov ecx, eax
add rcx, rdx
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x18001d6d9
mov edx, dword [r9 + rcx*4]
test edx, edx
jns 0x18001c7dc
mov r13, r10
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
mov r12, r11
mov rcx, r11
mov edx, eax
call fcn.180127330
test eax, eax
jne 0x18001d5bf
mov r10, r13
jmp 0x18001c99e
mov qword [rsp + 0x78], r10
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
mov r12, r11
mov rcx, r11
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d5bf
mov r10, qword [rsp + 0x78]
mov r11, r12
jmp 0x18001c7dc
mov r11d, dword [rbp]
mov r8d, dword [rbp + 4]
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], rdi
mov r12b, 2
movzx ecx, r12b
test r11d, r11d
jne 0x18001cae7
jmp 0x18001caf5
test byte [rbx + 0x71], 1
mov r13d, r8d
mov esi, 2
jne 0x18001d057
lea ecx, [rsi - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
test eax, eax
je 0x18001cbdf
cmp eax, 1
jne 0x18001cbb1
movzx eax, byte [0x1801e4bc1]
mov ecx, 0x10
mov edx, 8
call fcn.18000b020
test rax, rax
je 0x18001d8c7
mov byte [rax], 0
mov byte [rax + 1], r13b
mov qword [rax + 8], r15
jmp 0x18001d710
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rcx, r14
sub rcx, rax
neg rcx
mov rdx, r14
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
test r14, r14
je 0x18001d21b
lea rsi, [r14 - 1]
cmp rsi, qword [rsp + 0x38]
jae 0x18001d812
movzx r15d, byte [rbp + rsi]
movzx eax, byte [rbx + r15 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x18001d6d9
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d619
mov eax, edx
test eax, 0x8000000
je 0x18001cb84
mov esi, 1
xor eax, eax
cmp qword [r10 + 0x160], 1
jne 0x18001d03e
jmp 0x18001d3d8
movzx r12d, byte [rbx + r13 + 0x78]
movzx ecx, r12b
test r11d, r11d
je 0x18001caf5
cmp r11d, 1
jne 0x18001cc0a
add rcx, 6
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jae 0x18001cc5a
mov rax, qword [rdi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x18001d412
mov r13d, eax
mov esi, 5
cmp esi, 5
jne 0x18001cb96
cmp r14, r15
jne 0x18001cc68
test r14, r14
je 0x18001d36c
lea rsi, [r14 - 1]
cmp rsi, r10
jae 0x18001d85b
mov rax, qword [rbp + 8]
movzx r15d, byte [rax + rsi]
movzx eax, byte [rbx + r15 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x18001d6d9
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d594
mov eax, edx
test eax, 0x8000000
jne 0x18001d022
test eax, 0x20000000
jne 0x18001d20b
xor esi, esi
jmp 0x18001d3d8
lea ecx, [rsi - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
test eax, eax
je 0x18001cbdf
cmp eax, 1
je 0x18001ca04
movzx eax, byte [0x1801e4bc1]
mov ecx, 0x10
mov edx, 8
call fcn.18000b020
test rax, rax
je 0x18001d8c7
mov byte [rax], 3
mov dword [rax + 4], esi
mov dword [rax + 8], r13d
jmp 0x18001d710
movzx eax, byte [0x1801e4bc1]
mov ecx, 0x10
mov edx, 8
call fcn.18000b020
test rax, rax
je 0x18001d8c7
mov byte [rax], 1
mov qword [rax + 8], r15
jmp 0x18001d710
test byte [rbx + 0x71], 1
mov dword [rsp + 0x38], r8d
mov r13d, r8d
mov esi, 2
je 0x18001cb19
mov rax, qword [rbx + 0x178]
cmp qword [rax + 0x160], r13
jbe 0x18001d3ec
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov r8d, dword [rsp + 0x38]
mov rdx, qword [rdi + 0x58]
cmp rcx, rdx
jb 0x18001cb02
lea r8, [0x180131258]
call fcn.18012a210
ud2
dec r15
cmp qword [rdi], 1
jne 0x18001cc90
mov rax, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rdi + 0x158], rax
mov qword [rdi], 1
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r15
mov rsi, qword [rbp + 8]
mov rax, r14
add rax, 3
mov r12, 0xffffffffffffffff
cmovae r12, rax
mov rax, qword [rbx + 0x178]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x180]
and eax, 0x3f
mov qword [rsp + 0xa0], rax
xor ebp, ebp
jmp 0x18001ccf9
mov r11d, dword [rax + 0x1d]
lea rax, [r15 + 1]
mov qword [rsp + 0x78], rax
mov ebp, 1
lea rax, [r15 - 1]
cmp r15, r14
mov r15, rax
je 0x18001d15e
cmp r13d, 0x7ffffff
jbe 0x18001cd70
cmp qword [rdi], 0
je 0x18001d8ad
mov qword [rdi + 0x10], r15
cmp r15, r10
jae 0x18001d7c5
movzx r8d, byte [rsi + r15]
movzx eax, byte [rbx + r8 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x18001d6d9
mov rax, qword [rdi + 0x30]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x18001cf6f
mov r13d, eax
cmp r13d, 0x8000000
jae 0x18001cead
jmp 0x18001cce9
cmp r15, r14
jb 0x18001cce9
mov r9, qword [rdi + 0x30]
dec r15
mov rax, r15
nop word cs:[rax + rax]
lea r15, [rax + 1]
movzx ecx, byte [rsi + rax + 1]
movzx ecx, byte [rbx + rcx + 0x188]
mov edx, r13d
add rdx, rcx
mov ecx, dword [r9 + rdx*4]
cmp r15, r12
jbe 0x18001ce36
cmp ecx, 0x8000000
jae 0x18001ce36
movzx edx, byte [rsi + rax]
movzx edx, byte [rbx + rdx + 0x188]
add rdx, rcx
mov r8d, dword [r9 + rdx*4]
cmp r8, 0x7ffffff
ja 0x18001ce4e
movzx ecx, byte [rsi + rax - 1]
movzx ecx, byte [rbx + rcx + 0x188]
add rcx, r8
mov ecx, dword [r9 + rcx*4]
cmp rcx, 0x7ffffff
ja 0x18001cf40
movzx edx, byte [rsi + rax - 2]
movzx edx, byte [rbx + rdx + 0x188]
add rdx, rcx
mov r13d, dword [r9 + rdx*4]
cmp r13d, 0x7ffffff
ja 0x18001cf56
lea r15, [rax - 4]
add rax, 0xfffffffffffffffd
cmp rax, r14
mov rax, r15
jae 0x18001cd90
inc r15
jmp 0x18001cce9
mov edx, r13d
test ecx, ecx
js 0x18001ce5a
mov r13d, ecx
cmp r13d, 0x8000000
jae 0x18001cead
jmp 0x18001cce9
mov r15, rax
mov edx, ecx
mov ecx, r8d
test ecx, ecx
jns 0x18001ce3d
cmp qword [rdi], 0
je 0x18001d8ad
mov qword [rdi + 0x10], r15
cmp r15, r10
jae 0x18001d836
movzx r8d, byte [rsi + r15]
movzx eax, byte [rbx + r8 + 0x188]
mov ecx, edx
add rcx, rax
mov rax, qword [rdi + 0x40]
cmp rcx, rax
jae 0x18001d84a
mov r13d, dword [r9 + rcx*4]
test r13d, r13d
js 0x18001cfcd
nop
cmp r13d, 0x8000000
jb 0x18001cce9
mov eax, r13d
mov ecx, eax
and ecx, 0x10000000
jne 0x18001cce9
test eax, 0x8000000
je 0x18001d4b8
xor r11d, r11d
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x160], 1
je 0x18001ccdb
mov eax, r13d
and eax, 0x7ffffff
mov rcx, qword [rsp + 0xa0]
shr rax, cl
mov rdx, qword [rdi + 0x70]
cmp rax, rdx
jae 0x18001d7d9
mov rcx, qword [rdi + 0x60]
shl rax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x18001d7ea
mov rax, qword [rcx + rax]
test byte [rax + 0x10], 2
je 0x18001ccdb
cmp rdx, 0xd
jb 0x18001d8f2
add rdx, 0xfffffffffffffff3
cmp rdx, 3
ja 0x18001ccd7
jmp 0x18001d905
dec rax
mov r15, rax
mov edx, r8d
test ecx, ecx
jns 0x18001ce3d
jmp 0x18001ce5a
add rax, 0xfffffffffffffffe
mov r15, rax
mov edx, ecx
mov ecx, r13d
test ecx, ecx
jns 0x18001ce3d
jmp 0x18001ce5a
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x80], rbp
mov rbp, r10
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d5bf
mov r13d, edx
mov r10, rbp
mov rbp, qword [rsp + 0x80]
mov r11, qword [rsp + 0x88]
cmp r13d, 0x8000000
jae 0x18001cead
jmp 0x18001cce9
mov qword [rsp + 0x88], r11
mov qword [rsp + 0x80], r10
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.180127330
test eax, eax
jne 0x18001d5bf
mov r13d, edx
mov r10, qword [rsp + 0x80]
mov r11, qword [rsp + 0x88]
cmp r13d, 0x8000000
jae 0x18001cead
jmp 0x18001cce9
mov rcx, qword [rbx + 0x178]
mov esi, 1
xor eax, eax
cmp qword [rcx + 0x160], 1
je 0x18001d3d8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.18006ce00
jmp 0x18001d294
mov rax, qword [rbx + 0x178]
cmp qword [rax + 0x160], r13
jbe 0x18001d2a3
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rax, qword [rdi + 0x58]
cmp rcx, rax
jb 0x18001c6df
lea r8, [0x180131258]
mov rdx, rax
call fcn.18012a210
ud2
test eax, 0x8000000
jne 0x18001d2f8
test eax, 0x40000000
jne 0x18001d518
test eax, 0x20000000
je 0x18001d948
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rcx, r15
sub rcx, rax
neg rcx
mov rdx, r15
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
cmp r15, qword [rsp + 0x38]
jae 0x18001d883
movzx ecx, byte [rbp + r15]
mov rdx, r15
call fcn.180025000
jmp 0x18001d710
movzx r8d, byte [rbx + 0x287]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x18001d828
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d5f5
xor eax, eax
test edx, 0x8000000
je 0x18001d3b7
jmp 0x18001d3bb
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rcx, r14
sub rcx, rax
neg rcx
mov rdx, r14
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
test r14, r14
je 0x18001d441
lea r15, [r14 - 1]
cmp r15, r10
jae 0x18001d86f
movzx r12d, byte [rsi + r15]
movzx eax, byte [rbx + r12 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x18001d6d9
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d68b
mov eax, edx
test eax, 0x8000000
jne 0x18001d75d
test eax, 0x20000000
mov rcx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x78]
je 0x18001d79a
mov ecx, r12d
mov rdx, r15
call fcn.180025000
jmp 0x18001d710
mov ecx, r15d
mov rdx, rsi
call fcn.180025000
jmp 0x18001d710
movzx r8d, byte [rbx + 0x287]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x18001d828
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d653
xor eax, eax
test edx, 0x8000000
je 0x18001d3b7
mov esi, 1
cmp qword [r10 + 0x160], 1
je 0x18001d3d5
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.18006ce00
xor r14d, r14d
mov rcx, rax
xor edx, edx
call fcn.1800508b0
jmp 0x18001d3d8
mov rcx, qword [rbx + 0x180]
and ecx, 0x3f
mov eax, 1
shl rax, cl
cmp rcx, 0x1b
jae 0x18001d918
or eax, 0x40000000
test eax, eax
jns 0x18001c6ee
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.180128010
mov rsi, rax
mov r13, rax
shr r13, 0x20
cmp esi, 5
je 0x18001c6f1
jmp 0x18001c9e5
xor eax, eax
cmp qword [r10 + 0x160], 1
je 0x18001d322
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov rcx, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rdx, r15
sub rdx, rcx
neg rdx
mov r8, r15
sub r8, rcx
cmovb r8, rdx
add qword [rdi + 0x158], r8
inc r15
mov rcx, qword [rsp + 0x30]
mov qword [rcx], 1
mov qword [rcx + 8], r15
mov dword [rcx + 0x10], eax
jmp 0x18001d720
movzx r8d, byte [rbx + 0x287]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x18001d828
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d6b9
xor eax, eax
test edx, 0x8000000
jne 0x18001d3bb
xor esi, esi
jmp 0x18001d3d8
mov rcx, qword [rbx + 0x178]
mov esi, 1
cmp qword [rcx + 0x160], 1
jne 0x18001d27d
xor r14d, r14d
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rsi
mov qword [rcx + 8], r14
mov dword [rcx + 0x10], eax
jmp 0x18001d720
lea rcx, [rsp + 0x90]
mov rsi, r10
mov r13d, r11d
call fcn.18006ce50
mov r11d, r13d
mov r10, rsi
mov r8d, dword [rsp + 0x38]
test eax, eax
jns 0x18001cb11
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r11d
mov r9d, r12d
mov rsi, r10
call fcn.180128010
mov r10, rsi
mov rsi, rax
mov r13, rax
shr r13, 0x20
jmp 0x18001cb19
movzx r8d, byte [rbx + 0x287]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x40]
cmp rdx, rcx
jbe 0x18001d828
mov rax, qword [rdi + 0x30]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18001d6e7
test edx, 0x8000000
mov rcx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x78]
je 0x18001d79a
mov ebp, 1
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x160], 1
jne 0x18001d5c7
xor r11d, r11d
jmp 0x18001d5ed
test eax, 0x40000000
jne 0x18001d54e
test eax, 0x20000000
je 0x18001d948
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rcx, r15
sub rcx, rax
neg rcx
mov rdx, r15
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
cmp r15, r10
jae 0x18001d899
movzx ecx, byte [rsi + r15]
mov rdx, r15
call fcn.180025000
jmp 0x18001d710
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rcx, r15
sub rcx, rax
neg rcx
sub r15, rax
cmovb r15, rcx
add qword [rdi + 0x158], r15
mov rcx, qword [rsp + 0x30]
jmp 0x18001c540
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x18001d8d8
mov rcx, r15
sub rcx, rax
neg rcx
sub r15, rax
cmovb r15, rcx
add qword [rdi + 0x158], r15
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rbp
mov rax, qword [rsp + 0x78]
mov qword [rcx + 8], rax
mov dword [rcx + 0x10], r11d
jmp 0x18001d720
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d6b4
jmp 0x18001cb77
mov rcx, r15
jmp 0x18001d70b
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov rcx, qword [rsp + 0x30]
mov r11d, eax
xor r14d, r14d
jmp 0x18001d79a
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d709
jmp 0x18001d14b
mov r12, r10
mov r8d, r15d
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d6b4
mov r10, r12
mov eax, edx
test eax, 0x8000000
jne 0x18001cabe
jmp 0x18001cb84
mov rsi, r10
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d709
mov r10, rsi
xor eax, eax
test edx, 0x8000000
jne 0x18001d26a
jmp 0x18001d3b7
mov rsi, r11
mov r8d, r12d
shl r8d, 8
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
je 0x18001d74d
mov rcx, r14
jmp 0x18001d70b
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001d709
jmp 0x18001d3ad
lea r8, [0x180131140]
call fcn.18012a210
ud2
mov rsi, r11
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
mov edx, r13d
call fcn.180127330
test eax, eax
je 0x18001d7aa
xor ecx, ecx
call fcn.180025050
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 8], rax
mov qword [rcx], 2
mov rax, rcx
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.18012a210
ud2
mov r11, rsi
mov eax, edx
test eax, 0x8000000
je 0x18001d1e6
mov ebp, 1
xor r11d, r11d
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x160], 1
je 0x18001d795
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea rcx, [rsp + 0x48]
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov r11d, eax
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rbp
mov qword [rcx + 8], r14
mov dword [rcx + 0x10], r11d
jmp 0x18001d720
mov r11, rsi
test edx, 0x8000000
mov rcx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x78]
jne 0x18001d498
jmp 0x18001d79a
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, r10
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybriddfa.rs
mov rcx, rax
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srcutildeterminize_state.rs
xor ecx, ecx
xor edx, edx
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, rsi
mov rdx, qword [rsp + 0x38]
call fcn.18012a210
ud2
lea r8, [0x180131158]
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, r10
call fcn.18012a210
ud2
lea r8, [0x180131140]
mov rdx, rax
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, rsi
mov rdx, r10
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, r10
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.18012a210
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r15
mov rdx, r10
call fcn.18012a210
ud2
lea rcx, str.no_in_progress_search_to_update
lea r8, [0x180131208]
mov edx, 0x1f
call fcn.18012a050
ud2
mov ecx, 8
mov edx, 0x10
call fcn.180129e70
ud2
lea rcx, str.no_in_progress_search_to_finish
lea r8, [0x180131240]
mov edx, 0x1f
call fcn.18012a050
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srcutildeterminize_state.rs
mov ecx, 0xd
call fcn.18012a580
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srcutilwire.rs
mov ecx, 4
call fcn.18012a600
ud2
mov qword [rsp + 0x48], rax
lea rax, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybriddfa.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x180139340]
lea r9, [0x180139370]
lea r8, [rsp + 0x48]
mov edx, 0x2b
call fcn.18012a4e0
ud2
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 1
lea rax, [rsp + 0x40]
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea rdx, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
lea rcx, [rsp + 0x48]
call fcn.18012a0c0
ud2