Function at 0x18001d990
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x138
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xb0], 0xfffffffffffffffe
mov qword [rbp + 0xa8], r9
mov qword [r9], 0
mov r12, qword [r8 + 0x18]
mov r11, qword [r8 + 0x20]
cmp r12, r11
jbe 0x18001d9d8
xor edx, edx
jmp 0x18001ed27
mov rdi, r8
mov rsi, rdx
mov r10, rcx
mov ebx, dword [r8]
mov rax, rbx
dec rax
cmp rax, 2
jb 0x18001da0f
lea rax, [r10 + 0x58]
cmp byte [r10 + 0x68], 3
lea r13, [0x180131270]
cmovne r13, rax
cmp byte [r13 + 0x10], 2
jne 0x18001dd33
mov rax, qword [r10 + 0x178]
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0xa8]
cmp dword [rax + 0x28], 0
je 0x18001dc73
mov rax, qword [rbp + 0xa8]
mov r13d, dword [rax + 0x2c]
cmp qword [rax + 0x18], 0
je 0x18001db36
test r13d, 0x8000000
je 0x18001ede0
mov eax, r13d
and eax, 0x7ffffff
movzx ecx, byte [r10 + 0x180]
shr rax, cl
mov rdx, qword [rsi + 0x70]
cmp rax, rdx
jae 0x18001ed93
mov rcx, qword [rsi + 0x60]
shl rax, 4
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x18001ed81
mov r8, qword [rcx + rax]
movzx ecx, byte [r8 + 0x10]
test cl, 1
je 0x18001db36
mov rax, qword [rbp + 0xa8]
mov rax, qword [rax + 0x20]
mov r9d, 1
test cl, 2
je 0x18001dabd
cmp rdx, 0xc
jbe 0x18001ee96
mov r9d, dword [r8 + 0x19]
cmp rax, r9
jae 0x18001db36
lea r10, [rax + 1]
xor r9d, r9d
mov r11, qword [rbp + 0xa8]
mov qword [r11 + 0x18], 1
mov qword [r11 + 0x20], r10
test cl, 2
je 0x18001db15
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + 0x160], 1
je 0x18001db15
lea rcx, [rax*4 + 0xd]
mov rax, rdx
sub rax, rcx
jb 0x18001eec3
cmp rax, 3
jbe 0x18001eed1
mov r9d, dword [r8 + rcx + 0x10]
mov rcx, qword [rbp + 0xa8]
mov rax, qword [rcx + 0x30]
mov qword [rcx], 1
mov qword [rcx + 8], rax
mov dword [rcx + 0x10], r9d
xor edx, edx
jmp 0x18001ed27
mov rax, qword [rbp + 0xa8]
mov r12, qword [rax + 0x30]
inc r12
mov qword [rax + 0x30], r12
cmp r12, r11
ja 0x18001d9d1
cmp qword [rsi], 1
jne 0x18001db76
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rsi + 0x158], rax
mov qword [rsi], 1
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], r12
mov rbx, qword [rdi + 0x10]
cmp r12, r11
jae 0x18001de79
mov r14, qword [rdi + 8]
mov qword [rbp - 0x18], r11
mov qword [rbp - 0x10], rdi
nop
cmp r12, rbx
jae 0x18001ec52
movzx r8d, byte [r14 + r12]
movzx eax, byte [r10 + r8 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jae 0x18001ec44
mov rax, qword [rsi + 0x30]
mov r15d, dword [rax + rcx*4]
test r15d, r15d
js 0x18001dc33
cmp r15d, 0x8000000
jb 0x18001dc06
mov rax, qword [rbp + 0xa8]
mov dword [rax + 0x28], 1
mov dword [rax + 0x2c], r15d
mov eax, r15d
test eax, 0x10000000
je 0x18001e162
inc r12
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x30], r12
cmp qword [rsi], 0
je 0x18001edc6
mov qword [rsi + 0x10], r12
mov r13d, r15d
cmp r11, r12
jne 0x18001dba0
jmp 0x18001de7c
shl r8d, 8
mov rdi, r10
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r13d
call fcn.180127330
test eax, eax
jne 0x18001e88f
mov r15d, edx
mov r11, qword [rbp - 0x18]
mov r10, rdi
mov rdi, qword [rbp - 0x10]
cmp r15d, 0x8000000
jae 0x18001dbe6
jmp 0x18001dc06
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x30], r12
test r12, r12
je 0x18001de59
lea rax, [r12 - 1]
cmp qword [rdi + 0x10], rax
jbe 0x18001de59
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x18001de59
movzx eax, byte [rcx + rax]
movzx r13d, al
mov r8d, dword [rdi + 4]
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x38], rsi
mov rax, qword [r10 + 0x290]
or rax, qword [r10 + 0x2a0]
mov rcx, qword [r10 + 0x288]
or rcx, qword [r10 + 0x298]
or rcx, rax
je 0x18001e198
lea rax, [r10 + 0x288]
mov edx, r13d
shr edx, 7
shl rdx, 4
mov r14d, r8d
mov r8d, 1
xor r9d, r9d
mov ecx, r13d
shld r9, r8, cl
shl r8, cl
xor ecx, ecx
test r13b, 0x40
cmovne r9, r8
cmovne r8, rcx
and r9, qword [rax + rdx + 8]
and r8, qword [rax + rdx]
or r8, r9
mov r8d, r14d
je 0x18001e198
mov r14, rsi
mov ebx, 4
jmp 0x18001e1da
mov rax, qword [r10 + 0x178]
mov qword [rbp + 0x58], rax
mov eax, dword [rax + 0x17c]
mov dword [rbp + 0x1c], eax
mov rax, qword [rbp + 0xa8]
cmp dword [rax + 0x28], 0
mov qword [rbp + 0x28], rbx
je 0x18001e01d
mov rax, qword [rbp + 0xa8]
mov edx, dword [rax + 0x2c]
cmp qword [rax + 0x18], 0
je 0x18001df6f
test edx, 0x8000000
je 0x18001ede0
mov r9d, edx
and r9d, 0x7ffffff
movzx ecx, byte [r10 + 0x180]
shr r9, cl
mov rax, qword [rsi + 0x70]
cmp r9, rax
jae 0x18001edb2
mov rcx, qword [rsi + 0x60]
shl r9, 4
mov rax, qword [rcx + r9 + 8]
test rax, rax
je 0x18001ed81
mov rcx, qword [rcx + r9]
movzx r9d, byte [rcx + 0x10]
test r9b, 1
je 0x18001df6f
mov r8, qword [rbp + 0xa8]
mov rbx, qword [r8 + 0x20]
mov r8d, 1
test r9b, 2
je 0x18001dded
cmp rax, 0xc
jbe 0x18001ef01
mov r8d, dword [rcx + 0x19]
cmp rbx, r8
jae 0x18001df6f
lea rax, [rbx + 1]
mov rcx, qword [rbp + 0xa8]
mov qword [rcx + 0x18], 1
mov qword [rcx + 0x20], rax
xor eax, eax
mov rcx, qword [rbp + 0x58]
cmp qword [rcx + 0x160], 1
je 0x18001de39
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
call fcn.18006ce00
mov rcx, rax
mov rdx, rbx
call fcn.1800508b0
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rdx + 0x30]
mov qword [rdx], 1
mov qword [rdx + 8], rcx
mov dword [rdx + 0x10], eax
xor edx, edx
jmp 0x18001ed27
mov r8d, dword [rdi + 4]
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x38], rsi
mov r15b, 2
movzx ecx, r15b
test ebx, ebx
jne 0x18001e1a6
jmp 0x18001e1b3
mov r15d, r13d
cmp r11, rbx
jae 0x18001dedd
mov rax, qword [rdi + 8]
movzx ebx, byte [rax + r11]
movzx eax, byte [r10 + rbx + 0x188]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jae 0x18001ec44
mov rax, qword [rsi + 0x30]
mov r12d, dword [rax + rcx*4]
test r12d, r12d
js 0x18001e957
mov eax, r12d
test eax, 0x8000000
jne 0x18001eb04
test eax, 0x20000000
jne 0x18001e39f
xor edx, edx
jmp 0x18001e3b2
movzx r8d, byte [r10 + 0x287]
shl r8d, 0x10
add r8d, 0x10001
mov eax, r8d
shr eax, 0x10
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x40]
cmp rdx, rcx
jbe 0x18001eda4
mov rax, qword [rsi + 0x30]
mov r12d, dword [rax + rcx*4]
test r12d, r12d
js 0x18001e996
xor edx, edx
test r12d, 0x8000000
je 0x18001e3b2
mov rax, qword [rbp + 0x90]
cmp qword [rax + 0x160], 1
je 0x18001eb45
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r12d
mov rdi, r11
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov r11, rdi
mov edx, eax
jmp 0x18001eb45
mov rax, qword [rbp + 0xa8]
mov r12, qword [rax + 0x30]
inc r12
mov qword [rax + 0x30], r12
cmp r12, r11
ja 0x18001d9d1
cmp qword [rsi], 1
jne 0x18001dfaf
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
mov r8, rax
sub r8, rcx
neg r8
sub rax, rcx
cmovb rax, r8
add qword [rsi + 0x158], rax
mov qword [rsi], 1
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], r12
mov r9, qword [rdi + 0x10]
cmp r12, r11
jae 0x18001e0fd
mov rbx, qword [rdi + 8]
mov eax, dword [rdi + 4]
lea rcx, [r11 + 1]
mov qword [rbp - 8], rcx
lea rcx, [r10 + 0x288]
mov qword [rbp + 8], rcx
movzx ecx, byte [r10 + 0x71]
mov byte [rbp + 0x9f], cl
mov qword [rbp + 0x20], rax
lea rax, [rax + rax*2]
lea rax, [rax + rax + 0xc]
mov qword [rbp + 0x10], rax
mov rax, qword [r13]
mov qword [rbp + 0x50], rax
mov rax, qword [r13 + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp + 0x90], rbx
jmp 0x18001e480
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x30], r12
test r12, r12
je 0x18001e0da
lea rax, [r12 - 1]
cmp qword [rdi + 0x10], rax
jbe 0x18001e0da
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x18001e0da
movzx eax, byte [rcx + rax]
movzx edx, al
mov ebx, dword [rdi + 4]
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x38], rsi
mov rax, qword [r10 + 0x290]
or rax, qword [r10 + 0x2a0]
mov rcx, qword [r10 + 0x288]
or rcx, qword [r10 + 0x298]
or rcx, rax
je 0x18001e7ec
lea rax, [r10 + 0x288]
mov r8d, edx
shr r8d, 7
shl r8, 4
mov r9d, 1
mov r14, r10
xor r10d, r10d
mov ecx, edx
shld r10, r9, cl
shl r9, cl
xor ecx, ecx
test dl, 0x40
cmovne r10, r9
cmovne r9, rcx
and r10, qword [rax + r8 + 8]
and r9, qword [rax + r8]
or r9, r10
mov r10, r14
je 0x18001e7ec
mov r14, rsi
mov ecx, 4
jmp 0x18001e82d
mov ebx, dword [rdi + 4]
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x38], rsi
mov r15b, 2
movzx eax, r15b
mov rcx, qword [rbp + 0x28]
test ecx, ecx
jne 0x18001e7fe
jmp 0x18001e807
mov r13d, edx
cmp r11, r9
jae 0x18001e308
mov rax, qword [rdi + 8]
movzx r15d, byte [rax + r11]
movzx eax, byte [r10 + r15 + 0x188]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rsi + 0x40]
cmp rcx, rdx
jae 0x18001ec44
mov rax, qword [rsi + 0x30]
mov ebx, dword [rax + rcx*4]
test ebx, ebx
js 0x18001ebcd
mov eax, ebx
test eax, 0x8000000
jne 0x18001ec8d
test eax, 0x20000000
jne 0x18001e929
xor edx, edx
jmp 0x18001e93d
test eax, 0x8000000
jne 0x18001e3cc
test eax, 0x40000000
jne 0x18001e919
test eax, 0x20000000
je 0x18001ef17
mov rcx, rsi
mov rdx, r12
call fcn.180019a00
movzx ecx, byte [r14 + r12]
jmp 0x18001e86c
movzx r15d, byte [r10 + r13 + 0x78]
movzx ecx, r15b
test ebx, ebx
je 0x18001e1b3
cmp ebx, 1
jne 0x18001e24a
add rcx, 6
mov rdx, qword [rsi + 0x58]
cmp rcx, rdx
jae 0x18001e2fa
mov rax, qword [rsi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x18001e7b2
mov r14, rsi
mov r13d, eax
mov ebx, 5
cmp ebx, 5
jne 0x18001e1f1
mov rsi, r14
cmp qword [rsi], 1
jne 0x18001db76
jmp 0x18001db57
lea ecx, [rbx - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
test eax, eax
je 0x18001e264
cmp eax, 1
jne 0x18001e292
test r12, r12
je 0x18001eea9
movzx eax, byte [0x1801e4bc1]
mov ecx, 0x10
mov edx, 8
call fcn.18000b020
test rax, rax
je 0x18001edfa
mov rdx, rax
dec r12
mov byte [rax], 0
mov byte [rax + 1], r13b
mov qword [rax + 8], r12
jmp 0x18001ed27
mov r14, rbx
test byte [r10 + 0x71], 1
mov r13d, r8d
mov ebx, 2
jne 0x18001e2c3
mov r14, rsi
jmp 0x18001e1da
movzx eax, byte [0x1801e4bc1]
mov ecx, 0x10
mov edx, 8
call fcn.18000b020
test rax, rax
je 0x18001edfa
mov rdx, rax
mov byte [rax], 1
mov qword [rax + 8], r12
jmp 0x18001ed27
movzx eax, byte [0x1801e4bc1]
mov ecx, 0x10
mov edx, 8
call fcn.18000b020
test rax, rax
je 0x18001edfa
mov rdx, rax
mov byte [rax], 3
mov dword [rax + 4], ebx
mov dword [rax + 8], r13d
jmp 0x18001ed27
mov rax, qword [rbp + 0x90]
cmp qword [rax + 0x160], r13
jbe 0x18001e77e
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rbx, r14
mov rdx, qword [rsi + 0x58]
cmp rcx, rdx
jb 0x18001e1c0
lea r8, [0x180131258]
call fcn.18012a210
ud2
movzx r8d, byte [r10 + 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 [rsi + 0x40]
cmp rdx, rcx
jbe 0x18001eda4
mov rax, qword [rsi + 0x30]
mov ebx, dword [rax + rcx*4]
test ebx, ebx
js 0x18001ec0c
xor edx, edx
test ebx, 0x8000000
je 0x18001e93d
mov rax, qword [rbp + 0x58]
cmp qword [rax + 0x160], 1
je 0x18001ecca
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, ebx
mov r14, rsi
mov rdi, r11
mov rsi, r9
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov r9, rsi
mov r11, rdi
mov rsi, r14
mov edx, eax
jmp 0x18001ecca
mov ecx, ebx
mov rdx, r11
mov rdi, r11
call fcn.180025000
mov r11, rdi
mov rdx, rax
mov r15d, r12d
mov rax, qword [rbp + 0xa8]
mov dword [rax + 0x28], 1
mov dword [rax + 0x2c], r15d
jmp 0x18001eb77
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], 1
xor eax, eax
mov rcx, qword [rbp + 0x90]
cmp qword [rcx + 0x160], 1
je 0x18001e414
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov rcx, qword [rbp + 0xa8]
mov qword [rcx], 1
mov qword [rcx + 8], r12
mov dword [rcx + 0x10], eax
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x18001eee7
mov rcx, rax
sub rcx, r12
neg rcx
sub rax, r12
cmovbe rax, rcx
add qword [rsi + 0x158], rax
xor edx, edx
jmp 0x18001ed27
mov eax, 4
cmp eax, 5
jne 0x18001eac2
mov edx, r13d
mov r12, r8
cmp r8, r11
mov rbx, qword [rbp + 0x90]
jae 0x18001e100
cmp r12, r9
jae 0x18001ed5c
movzx r8d, byte [rbx + r12]
movzx eax, byte [r10 + r8 + 0x188]
mov ecx, edx
and ecx, 0x7ffffff
add rcx, rax
mov rax, qword [rsi + 0x40]
cmp rcx, rax
jae 0x18001ed70
mov rax, qword [rsi + 0x30]
mov r13d, dword [rax + rcx*4]
test r13d, r13d
js 0x18001e699
cmp r13d, 0x8000000
jb 0x18001e623
mov rax, qword [rbp + 0xa8]
mov dword [rax + 0x28], 1
mov dword [rax + 0x2c], r13d
mov eax, r13d
test eax, 0x10000000
je 0x18001e8e7
mov r15, r10
mov r10, qword [rbp - 0x20]
mov rax, qword [r10 + 0x10]
dec rax
and rax, 0xfffffffffffffff0
mov rcx, qword [rbp + 0x50]
lea rdx, [rax + rcx]
add rdx, 0x10
mov r14, r11
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r12
lea rcx, [rbp - 0x50]
mov r8, rbx
mov rbx, r9
call qword [r10 + 0x40]
cmp qword [rbp - 0x50], 0
je 0x18001d9d1
mov r8, qword [rbp - 0x48]
cmp r8, r12
mov r10, r15
jbe 0x18001e616
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x30], r8
cmp dword [rbp + 0x1c], 0
mov r11, r14
mov r9, rbx
je 0x18001e46a
mov qword [rbp - 0x38], r8
mov qword [rbp - 0x30], r11
cmp r9, r11
jb 0x18001ee0b
cmp qword [rbp - 8], r8
jb 0x18001ee0b
lea rcx, [r8 - 1]
cmp r9, rcx
mov qword [rbp], rcx
jbe 0x18001e650
mov rax, qword [rbp + 0x90]
movzx eax, byte [rax + rcx]
movzx r13d, al
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x38], rsi
mov rax, qword [r10 + 0x290]
or rax, qword [r10 + 0x2a0]
mov rcx, qword [r10 + 0x288]
or rcx, qword [r10 + 0x298]
or rcx, rax
je 0x18001e60e
xor eax, eax
mov ecx, r13d
mov edx, 1
shld rax, rdx, cl
mov edx, r13d
shr edx, 7
mov r12, r8
mov r8d, 1
shl r8, cl
shl rdx, 4
test r13b, 0x40
cmovne rax, r8
mov ecx, 0
cmovne r8, rcx
mov rcx, qword [rbp + 8]
and rax, qword [rcx + rdx + 8]
and r8, qword [rcx + rdx]
or r8, rax
mov r8, r12
jne 0x18001e45c
movzx r12d, byte [r10 + r13 + 0x78]
jmp 0x18001e65b
mov r11, r14
mov r9, rbx
mov rbx, qword [rbp + 0x90]
inc r12
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x30], r12
cmp qword [rsi], 0
je 0x18001edc6
mov qword [rsi + 0x10], r12
mov edx, r13d
cmp r12, r11
jb 0x18001e480
jmp 0x18001e100
mov qword [rbp + 0x30], r10
mov qword [rbp + 0x38], rsi
mov r12b, 2
movzx ecx, r12b
mov rax, qword [rbp + 0x28]
test eax, eax
je 0x18001e670
cmp eax, 1
jne 0x18001e6ea
add rcx, 6
mov rdx, qword [rsi + 0x58]
cmp rcx, rdx
jae 0x18001e2fa
mov rax, qword [rsi + 0x48]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x18001e747
mov r13d, eax
mov eax, 5
jmp 0x18001e461
mov rbx, r9
mov r15, rdi
mov r14, r11
shl r8d, 8
mov rdi, r10
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
call fcn.180127330
test eax, eax
jne 0x18001e88f
mov r13d, edx
mov r11, r14
mov r10, rdi
mov rdi, r15
mov r9, rbx
mov rbx, qword [rbp + 0x90]
cmp r13d, 0x8000000
jae 0x18001e4cd
jmp 0x18001e623
mov eax, 2
mov r13, qword [rbp + 0x20]
test byte [rbp + 0x9f], 1
je 0x18001e461
mov rax, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x20]
cmp qword [rax + 0x160], rdx
jbe 0x18001e727
add rcx, qword [rbp + 0x10]
mov rdx, qword [rsi + 0x58]
cmp rcx, rdx
jb 0x18001e67d
jmp 0x18001e2fa
lea rcx, [rbp + 0x30]
mov r13, r8
call fcn.18006ce50
mov r8, r13
mov r9, rbx
mov r10, r15
mov r11, r14
test eax, eax
jns 0x18001e68c
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov rdx, qword [rbp + 0x28]
mov r13, r8
mov r8, qword [rbp + 0x20]
mov r9d, r12d
call fcn.180128010
mov r8, r13
mov r9, rbx
mov r10, r15
mov r11, r14
mov r13, rax
shr r13, 0x20
jmp 0x18001e461
lea rcx, [rbp + 0x30]
mov qword [rbp + 0x50], rsi
mov r13, rdi
mov rdi, r11
mov rsi, r10
mov ebx, r8d
call fcn.18006ce50
mov r8d, ebx
mov r10, rsi
mov r11, rdi
mov rdi, r13
mov rsi, qword [rbp + 0x50]
mov rbx, r14
test eax, eax
jns 0x18001e1cf
mov qword [rbp + 0x60], r10
mov r14, rsi
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, ebx
mov r9d, r15d
mov rbx, rdi
mov rdi, r11
mov rsi, r10
call fcn.180128010
mov r10, rsi
mov r11, rdi
mov rdi, rbx
mov rbx, rax
mov r13, rax
shr r13, 0x20
jmp 0x18001e1da
movzx r15d, byte [r10 + rdx + 0x78]
movzx eax, r15b
mov rcx, qword [rbp + 0x28]
test ecx, ecx
je 0x18001e807
cmp ecx, 1
jne 0x18001e87c
add rax, 6
mov rdx, qword [rsi + 0x58]
cmp rax, rdx
jae 0x18001e8d6
mov rcx, qword [rsi + 0x48]
mov eax, dword [rcx + rax*4]
test eax, eax
js 0x18001e9f6
mov r14, rsi
mov edx, eax
mov ecx, 5
cmp ecx, 5
jne 0x18001e844
mov rsi, r14
cmp qword [rsi], 1
jne 0x18001dfaf
jmp 0x18001df90
lea r8d, [rcx - 3]
cmp r8d, 2
mov eax, 2
cmovb eax, r8d
test eax, eax
je 0x18001e88f
cmp eax, 1
jne 0x18001e89f
test r12, r12
je 0x18001eea9
dec r12
mov ecx, edx
mov rdx, r12
call fcn.180025000
mov rdx, rax
jmp 0x18001ed27
test byte [r10 + 0x71], 1
mov edx, ebx
mov ecx, 2
jne 0x18001e8ac
mov r14, rsi
jmp 0x18001e82d
mov rcx, r12
call fcn.180025050
mov rdx, rax
jmp 0x18001ed27
call fcn.1800250a0
mov rdx, rax
jmp 0x18001ed27
mov rcx, qword [rbp + 0x58]
cmp qword [rcx + 0x160], rdx
jbe 0x18001e9cb
lea rcx, [rdx + rdx*2]
lea rax, [rax + rcx*2]
add rax, 0xc
mov rdx, qword [rsi + 0x58]
cmp rax, rdx
jb 0x18001e814
lea r8, [0x180131258]
mov rcx, rax
call fcn.18012a210
ud2
test eax, 0x8000000
jne 0x18001ea35
test eax, 0x40000000
jne 0x18001e919
test eax, 0x20000000
je 0x18001ef17
mov rcx, rsi
mov rdx, r12
call fcn.180019a00
movzx ecx, byte [rbx + r12]
jmp 0x18001e86c
mov rcx, rsi
mov rdx, r12
call fcn.180019a00
jmp 0x18001d9d1
mov ecx, r15d
mov rdx, r11
mov rdi, r11
call fcn.180025000
mov r11, rdi
mov rdx, rax
mov r13d, ebx
mov rax, qword [rbp + 0xa8]
mov dword [rax + 0x28], 1
mov dword [rax + 0x2c], r13d
jmp 0x18001ecfb
mov r14, r11
mov r8d, ebx
shl r8d, 8
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
mov rdi, r10
call fcn.180127330
test eax, eax
je 0x18001eaed
mov rbx, r14
mov rcx, r14
call fcn.180025050
mov r11, r14
mov rdx, rax
jmp 0x18001e3b5
mov r14, r11
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r15d
mov rdi, r10
call fcn.180127330
test eax, eax
je 0x18001ebb0
mov rcx, rbx
call fcn.180025050
mov rdx, rax
mov r11, r14
jmp 0x18001e3b5
lea rcx, [rbp + 0x30]
mov qword [rbp + 0x50], rsi
mov r14, rdi
mov rdi, r11
mov rsi, r10
call fcn.18006ce50
mov r10, rsi
mov r11, rdi
mov rdi, r14
mov rsi, qword [rbp + 0x50]
test eax, eax
jns 0x18001e823
mov qword [rbp + 0x60], r10
mov r14, rsi
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov rdx, qword [rbp + 0x28]
mov r8d, ebx
mov r9d, r15d
mov rbx, rdi
mov rdi, r11
mov rsi, r10
call fcn.180128010
mov r10, rsi
mov r11, rdi
mov rdi, rbx
mov rcx, rax
mov rdx, rax
shr rdx, 0x20
jmp 0x18001e82d
mov rax, qword [rbp + 0xa8]
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], 1
xor eax, eax
mov rcx, qword [rbp + 0x58]
cmp qword [rcx + 0x160], 1
je 0x18001ea7a
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r13d
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov rcx, qword [rbp + 0xa8]
mov qword [rcx], 1
mov qword [rcx + 8], r12
mov dword [rcx + 0x10], eax
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x18001eee7
mov rcx, r12
sub rcx, rax
neg rcx
sub r12, rax
cmovb r12, rcx
add qword [rsi + 0x158], r12
xor edx, edx
jmp 0x18001ed27
lea edx, [rax - 3]
cmp edx, 2
mov ecx, 2
cmovb ecx, edx
test ecx, ecx
je 0x18001ec66
cmp ecx, 1
jne 0x18001ec6e
mov ecx, r13d
mov rdx, qword [rbp]
jmp 0x18001e86f
mov r12d, edx
mov r11, r14
mov r10, rdi
mov eax, r12d
test eax, 0x8000000
je 0x18001decb
xor edx, edx
mov rax, qword [rbp + 0x90]
cmp qword [rax + 0x160], 1
jne 0x18001eb1c
mov rbx, r11
jmp 0x18001eb45
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r12d
mov rdi, r11
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov r11, rdi
mov edx, eax
mov rbx, rdi
mov rax, qword [rbp + 0xa8]
mov qword [rax], 1
mov qword [rax + 8], rbx
mov dword [rax + 0x10], edx
mov dword [rax + 0x28], 1
mov dword [rax + 0x2c], r12d
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], 1
xor edx, edx
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
jne 0x18001ed10
mov qword [rbp + 0xa8], rdx
lea rcx, str.no_in_progress_search_to_finish
lea r8, [0x180131240]
mov edx, 0x1f
call fcn.18012a050
jmp 0x18001ee94
mov r12d, edx
mov r11, r14
mov r10, rdi
xor edx, edx
test r12d, 0x8000000
jne 0x18001df2f
jmp 0x18001e3b2
mov r14, r11
mov r8d, r15d
shl r8d, 8
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r13d
mov rdi, r10
call fcn.180127330
test eax, eax
je 0x18001ec78
mov rbx, r14
mov rcx, r14
call fcn.180025050
mov r11, r14
mov rdx, rax
jmp 0x18001e940
mov r15, r9
mov r14, r11
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, r13d
mov rdi, r10
call fcn.180127330
test eax, eax
je 0x18001ed3e
mov rcx, r15
call fcn.180025050
mov rdx, rax
mov r11, r14
jmp 0x18001e940
lea r8, [0x180131140]
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, r12
mov rdx, rbx
call fcn.18012a210
ud2
mov rcx, r8
jmp 0x18001e892
mov ecx, eax
mov edx, r13d
jmp 0x18001e89f
mov ebx, edx
mov r11, r14
mov r10, rdi
mov eax, ebx
test eax, 0x8000000
je 0x18001e150
xor edx, edx
mov rax, qword [rbp + 0x58]
cmp qword [rax + 0x160], 1
jne 0x18001eca2
mov r9, r11
jmp 0x18001ecca
mov qword [rbp + 0x60], r10
mov qword [rbp + 0x68], rsi
lea rcx, [rbp + 0x60]
mov edx, ebx
mov rdi, r11
call fcn.18006ce00
mov rcx, rax
xor edx, edx
call fcn.1800508b0
mov r11, rdi
mov edx, eax
mov r9, rdi
mov rax, qword [rbp + 0xa8]
mov qword [rax], 1
mov qword [rax + 8], r9
mov dword [rax + 0x10], edx
mov dword [rax + 0x28], 1
mov dword [rax + 0x2c], ebx
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], 1
xor edx, edx
mov rax, qword [rsi + 8]
cmp qword [rsi], 0
mov qword [rsi], 0
je 0x18001ee75
mov rcx, r11
sub rcx, rax
neg rcx
sub r11, rax
cmovb r11, rcx
add qword [rsi + 0x158], r11
mov rax, rdx
add rsp, 0x138
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov ebx, edx
mov r11, r14
mov r10, rdi
mov r9, r15
xor edx, edx
test ebx, 0x8000000
jne 0x18001e357
jmp 0x18001e93d
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
mov rcx, r12
mov rdx, r9
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_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_srchybriddfa.rs
mov rcx, rax
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_srchybriddfa.rs
mov rcx, r9
mov rdx, rax
call fcn.18012a210
ud2
lea rcx, str.no_in_progress_search_to_update
lea r8, [0x180131208]
mov edx, 0x1f
call fcn.18012a050
ud2
lea rcx, str.assertion_failed:_id.is_match__
lea r8, [0x1801311d0]
mov edx, 0x1f
call fcn.18012a170
ud2
mov ecx, 8
mov edx, 0x10
call fcn.180129e70
ud2
mov qword [rbp - 0x28], r9
lea rax, [rbp - 0x38]
mov qword [rbp + 0x30], rax
lea rax, [0x180024f90]
mov qword [rbp + 0x38], rax
lea rax, [rbp - 0x28]
mov qword [rbp + 0x40], rax
lea rax, [fcn.1801160c0]
mov qword [rbp + 0x48], rax
lea rax, [0x180131aa8]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 2
mov qword [rbp + 0x80], 0
lea rax, [rbp + 0x30]
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], 2
lea rdx, [0x180131b38]
lea rcx, [rbp + 0x60]
call fcn.18012a0c0
ud2
mov qword [rbp + 0xa8], rdx
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.18012a600
ud2
lea rcx, str.no_quit_in_start_without_look_behind
lea r8, [0x180131198]
mov edx, 0x24
call fcn.18012a050
ud2
lea r8, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srcutildeterminize_state.rs
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
mov rdx, rax
call fcn.18012a600
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
mov rdx, rax
call fcn.18012a600
ud2
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], 1
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x78], xmm0
lea rdx, str.C:Userscokiss.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.4_srchybrid_search.rs
lea rcx, [rbp + 0x60]
call fcn.18012a0c0
ud2