Function at 0x180047140
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 r14, r9
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
mov rax, qword [r9 + 0x48]
mov r15, qword [r9 + 0x70]
cmp rax, r15
jbe 0x18004718d
nop dword [rax]
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047197
mov rcx, qword [r14 + 0x38]
mov rax, qword [r14 + 0x48]
mov qword [r14 + 0x60], rcx
cmp rax, r15
ja 0x180047170
mov rcx, r15
cmp rax, r15
jne 0x1800471ae
jmp 0x1800471e5
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
xor eax, eax
mov rcx, r15
cmp rax, r15
je 0x1800471e5
mov r12, qword [r14 + 0x38]
lea rdx, [r12 + rax]
mov rcx, rax
cmp rdx, r15
ja 0x1800471e5
nop
mov rcx, r14
call fcn.1800dcba0
test al, al
je 0x180047202
mov qword [r14 + 0x60], 0
mov r12, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
lea rax, [r12 + rcx]
cmp rax, r15
jbe 0x1800471c0
sub r15, rcx
mov qword [r14 + 0x60], r15
mov rax, qword [r14 + 0x70]
cmp qword [r14 + 0x68], rax
jbe 0x180047231
mov qword [rsi], 0
jmp 0x1800484b5
mov rcx, qword [r14 + 0x48]
mov rax, qword [r14 + 0x70]
add r12, rcx
cmp rax, r12
jbe 0x180047219
mov qword [r14 + 0x70], r12
mov rax, r12
sub r15, rcx
mov rcx, qword [r14 + 0x38]
cmp r15, rcx
cmovae r15, rcx
mov qword [r14 + 0x60], r15
cmp qword [r14 + 0x68], rax
ja 0x1800471f6
cmp byte [r14 + 0x88], 0
je 0x180047264
mov r12, qword [r14 + 0x38]
cmp r15, r12
jae 0x18004728d
mov rax, qword [r14 + 0x30]
movzx r15d, byte [rax + r15]
mov ebp, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdi
jmp 0x18004739f
mov r12, qword [r14 + 0x38]
cmp r15, r12
jae 0x1800472d7
mov rax, qword [r14 + 0x30]
movzx r13d, byte [rax + r15]
mov ebp, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdi
jmp 0x180047921
mov rcx, r14
call fcn.1800dcba0
test al, al
je 0x18004731d
mov qword [r14 + 0x60], 0
mov r13, qword [r14 + 0x38]
test r13, r13
je 0x180047367
mov rax, qword [r14 + 0x30]
movzx r15d, byte [rax]
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047377
mov rax, qword [r14 + 0x38]
mov qword [r14 + 0x60], rax
jmp 0x180047384
mov rcx, r14
call fcn.1800dcba0
test al, al
je 0x180047342
mov qword [r14 + 0x60], 0
mov r15, qword [r14 + 0x38]
test r15, r15
je 0x1800478ed
mov rax, qword [r14 + 0x30]
movzx r13d, byte [rax]
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x1800478fd
mov rax, qword [r14 + 0x38]
mov qword [r14 + 0x60], rax
jmp 0x18004790a
add r12, qword [r14 + 0x48]
cmp qword [r14 + 0x70], r12
jbe 0x18004732b
mov qword [r14 + 0x70], r12
mov ebp, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdi
jmp 0x180047439
add r12, qword [r14 + 0x48]
cmp qword [r14 + 0x70], r12
jbe 0x180047350
mov qword [r14 + 0x70], r12
mov ebp, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdi
jmp 0x180047973
mov rcx, r14
call fcn.1800dcc20
test al, al
jne 0x1800472ca
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
mov ebp, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdi
test r13, r13
je 0x180047439
mov rax, qword [rbx + 0x298]
or rax, qword [rbx + 0x2a8]
mov rcx, qword [rbx + 0x290]
or rcx, qword [rbx + 0x2a0]
or rcx, rax
je 0x180047422
lea rcx, [rbx + 0x290]
mov edx, r15d
call fcn.1800fbc50
test al, al
je 0x180047422
movzx r15d, r15b
mov ecx, 4
cmp ecx, 5
je 0x18004749f
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
cmp eax, 2
je 0x180047a40
cmp eax, 1
jne 0x180047a32
mov rdx, qword [r14 + 0x68]
test rdx, rdx
je 0x18004877e
dec rdx
mov ecx, r15d
call fcn.1800faad0
jmp 0x1800484aa
movzx eax, r15b
movzx r13d, byte [rbx + rax + 0x90]
movzx ecx, r13b
test ebp, ebp
jne 0x180047444
jmp 0x180047472
mov r13b, 2
movzx ecx, r13b
test ebp, ebp
je 0x180047472
cmp ebp, 2
jne 0x18004746e
test byte [rbx + 0x81], 1
mov r15d, r12d
jne 0x180047847
mov rcx, r15
shl rcx, 0x20
or rcx, 2
cmp ecx, 5
je 0x18004749f
jmp 0x1800473e5
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x180047e59
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x180047887
mov r15d, eax
mov ecx, 5
cmp ecx, 5
jne 0x1800473e5
mov r12, qword [r14 + 0x68]
cmp r12, qword [r14 + 0x70]
jne 0x1800474f6
test r12, r12
je 0x180047f50
lea r13, [r12 - 1]
mov rcx, qword [r14 + 0x48]
cmp rcx, r13
jbe 0x1800474e1
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047e65
mov rax, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
mov qword [r14 + 0x60], rax
cmp rcx, r13
ja 0x1800474c0
mov rbp, qword [r14 + 0x38]
cmp rcx, r13
jne 0x180047e81
mov rcx, r13
jmp 0x180047eb3
mov rcx, qword [r14 + 0x60]
test rcx, rcx
jne 0x180047513
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047f36
mov rcx, qword [r14 + 0x38]
dec rcx
mov qword [r14 + 0x60], rcx
mov rax, qword [r14 + 0x48]
add rax, rcx
cmp qword [rdi], 1
jne 0x180047546
mov rdx, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov r9, rdx
sub r9, r8
neg r9
sub rdx, r8
cmovb rdx, r9
add qword [rdi + 0x158], rdx
mov qword [rdi], 1
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
lea r12, [rsp + 0x30]
mov rbp, 0xffffffffffffffff
jmp 0x18004757a
dec rcx
mov qword [r14 + 0x60], rcx
mov r15d, r13d
cmp r15d, 0x8000000
jb 0x180047610
cmp qword [rdi], 0
je 0x1800486d3
mov rax, qword [r14 + 0x48]
add rax, rcx
mov qword [rdi + 0x10], rax
mov rdx, qword [r14 + 0x38]
cmp rcx, rdx
jae 0x1800486eb
mov rax, qword [r14 + 0x30]
movzx r8d, byte [rax + rcx]
movzx eax, byte [rbx + r8 + 0x190]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1800486c7
mov rax, qword [rdi + 0x20]
mov r13d, dword [rax + rcx*4]
test r13d, r13d
js 0x18004780a
cmp r13d, 0x8000000
jb 0x1800475ff
mov eax, r13d
mov ecx, eax
and ecx, 0x10000000
je 0x1800478bb
mov rax, qword [r14 + 0x48]
jmp 0x180047624
mov rax, qword [r14 + 0x48]
mov r10, qword [r14 + 0x68]
lea r11, [rax + rcx]
cmp r11, r10
jae 0x180047660
mov r13d, r15d
mov rcx, qword [r14 + 0x60]
mov r15, qword [r14 + 0x68]
add rax, rcx
cmp rax, r15
jbe 0x180047ffb
test rcx, rcx
jne 0x180047570
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047fea
mov rcx, qword [r14 + 0x38]
jmp 0x180047570
mov rdx, qword [r14 + 0x38]
jmp 0x180047686
mov rcx, r11
mov rax, qword [r14 + 0x48]
mov r10, qword [r14 + 0x68]
add r11, rax
mov r15d, r13d
cmp r11, r10
jb 0x180047624
mov r8, qword [r14 + 0x30]
movzx r9d, byte [r8 + rcx]
movzx r9d, byte [rbx + r9 + 0x190]
mov r13d, r15d
add r13, r9
mov r9, qword [rdi + 0x20]
mov r13d, dword [r9 + r13*4]
cmp r13, 0x8000000
jae 0x180047791
add r10, 3
cmovb r10, rbp
cmp r11, r10
jbe 0x180047624
test rcx, rcx
je 0x1800476e0
lea r11, [rcx - 1]
mov qword [r14 + 0x60], r11
cmp r11, 3
jb 0x180047670
jmp 0x180047709
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047833
mov rdx, qword [r14 + 0x38]
mov rcx, rdx
lea r11, [rcx - 1]
mov qword [r14 + 0x60], r11
cmp r11, 3
jb 0x180047670
mov r8, qword [r14 + 0x30]
movzx eax, byte [r8 + r11]
movzx r10d, byte [rbx + rax + 0x190]
add r10, r13
mov r9, qword [rdi + 0x20]
mov rax, qword [rdi + 0x28]
mov r15d, dword [r9 + r10*4]
cmp r15, 0x7ffffff
ja 0x18004779a
lea r11, [rcx - 2]
mov qword [r14 + 0x60], r11
movzx r10d, byte [r8 + rcx - 2]
movzx r10d, byte [rbx + r10 + 0x190]
add r10, r15
mov r10d, dword [r9 + r10*4]
cmp r10, 0x7ffffff
ja 0x1800477a5
lea r11, [rcx - 3]
mov qword [r14 + 0x60], r11
movzx r15d, byte [r8 + rcx - 3]
movzx r15d, byte [rbx + r15 + 0x190]
add r15, r10
mov r13d, dword [r9 + r15*4]
cmp r13d, 0x7ffffff
ja 0x1800477ad
add rcx, 0xfffffffffffffffc
mov qword [r14 + 0x60], rcx
mov r11, rcx
jmp 0x180047673
mov rax, qword [rdi + 0x28]
mov r11d, r13d
jmp 0x1800477b6
mov rcx, r11
mov r11d, r15d
mov r15d, r13d
jmp 0x1800477b6
mov rcx, r11
mov r11d, r10d
jmp 0x1800477b6
mov rcx, r11
mov r11d, r13d
mov r15d, r10d
mov r13d, r11d
test r11d, r11d
jns 0x1800475e5
cmp qword [rdi], 0
je 0x1800486d3
mov r10, qword [r14 + 0x48]
add r10, rcx
mov qword [rdi + 0x10], r10
cmp rcx, rdx
jae 0x180048763
movzx r8d, byte [r8 + rcx]
movzx edx, byte [rbx + r8 + 0x190]
mov ecx, r15d
add rcx, rdx
cmp rcx, rax
jae 0x18004876f
mov r13d, dword [r9 + rcx*4]
test r13d, r13d
jns 0x1800475e5
shl r8d, 8
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
mov rcx, r12
mov edx, r15d
call fcn.1801fd1b0
test eax, eax
jne 0x18004860d
mov r13d, edx
jmp 0x1800475e5
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
xor eax, eax
jmp 0x180047621
mov rax, qword [rbx + 0x2b0]
cmp qword [rax + 0x168], r15
jbe 0x180047875
lea rax, [r15 + r15*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x18004747f
jmp 0x180047e59
lea rcx, [rsp + 0x20]
call fcn.18010e2f0
test eax, eax
jns 0x18004748e
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, ebp
mov r8d, r12d
mov r9d, r13d
call fcn.1801fde70
mov rcx, rax
mov r15, rax
shr r15, 0x20
cmp ecx, 5
je 0x18004749f
jmp 0x1800473e5
test eax, 0x8000000
jne 0x18004813e
test eax, 0x40000000
je 0x180048439
mov rdx, qword [r14 + 0x60]
add rdx, qword [r14 + 0x48]
mov rcx, rdi
call fcn.180049b40
mov qword [rsi], 0
jmp 0x1800484b5
mov rcx, r14
call fcn.1800dcc20
test al, al
jne 0x180047310
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
mov ebp, dword [r14 + 0x58]
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdi
test r15, r15
je 0x180047973
mov rax, qword [rbx + 0x290]
mov rcx, qword [rbx + 0x298]
or rcx, qword [rbx + 0x2a8]
or rax, qword [rbx + 0x2a0]
or rax, rcx
movzx r15d, r13b
je 0x180047960
lea rcx, [rbx + 0x290]
mov edx, r13d
call fcn.1800fbc50
test al, al
je 0x180047960
mov ecx, 4
jmp 0x1800479af
movzx r13d, byte [rbx + r15 + 0x90]
movzx ecx, r13b
test ebp, ebp
jne 0x18004797e
jmp 0x18004798b
mov r13b, 2
movzx ecx, r13b
test ebp, ebp
je 0x18004798b
cmp ebp, 1
jne 0x180047a4d
add rcx, 6
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jae 0x180047e59
mov rax, qword [rdi + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x180047fbf
mov r15d, eax
mov ecx, 5
cmp ecx, 5
jne 0x180047a16
mov r12, qword [r14 + 0x68]
cmp r12, qword [r14 + 0x70]
jne 0x180047a6d
test r12, r12
je 0x1800482b7
lea r13, [r12 - 1]
mov rcx, qword [r14 + 0x48]
cmp rcx, r13
jbe 0x180047a01
nop dword [rax]
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x1800481a2
mov rax, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
mov qword [r14 + 0x60], rax
cmp rcx, r13
ja 0x1800479e0
mov rbp, qword [r14 + 0x38]
cmp rcx, r13
jne 0x1800481be
mov rcx, r13
jmp 0x1800481f0
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
cmp eax, 2
je 0x180047a40
cmp eax, 1
je 0x180047405
mov rcx, qword [r14 + 0x70]
call fcn.1800fab20
jmp 0x1800484aa
mov edx, r15d
call fcn.1800fab60
jmp 0x1800484aa
test byte [rbx + 0x81], 1
mov r15d, r12d
jne 0x180047e2c
mov rcx, r15
shl rcx, 0x20
or rcx, 2
jmp 0x1800479af
mov rcx, qword [r14 + 0x60]
test rcx, rcx
jne 0x180047a8a
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x18004829d
mov rcx, qword [r14 + 0x38]
dec rcx
mov qword [r14 + 0x60], rcx
mov rax, qword [r14 + 0x48]
add rax, rcx
cmp qword [rdi], 1
jne 0x180047abd
mov rdx, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
mov r9, rdx
sub r9, r8
neg r9
sub rdx, r8
cmovb rdx, r9
add qword [rdi + 0x158], rdx
mov qword [rdi], 1
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov rax, qword [rbx + 0x2b0]
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov r12, 0xffffffffffffffff
jmp 0x180047afe
mov rcx, qword [r14 + 0x38]
dec rcx
mov qword [r14 + 0x60], rcx
mov r15d, r13d
cmp r15d, 0x8000000
jb 0x180047bf0
cmp qword [rdi], 0
je 0x1800486d3
mov rax, qword [r14 + 0x48]
add rax, rcx
mov qword [rdi + 0x10], rax
mov rdx, qword [r14 + 0x38]
cmp rcx, rdx
jae 0x1800486eb
mov rax, qword [r14 + 0x30]
movzx r8d, byte [rax + rcx]
movzx eax, byte [rbx + r8 + 0x190]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1800486c7
mov rax, qword [rdi + 0x20]
mov r13d, dword [rax + rcx*4]
test r13d, r13d
js 0x180047dea
cmp r13d, 0x8000000
jb 0x180047c10
mov eax, r13d
mov ecx, eax
and ecx, 0x10000000
jne 0x180047c10
test eax, 0x8000000
je 0x18004842e
xor ebp, ebp
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0x168], 1
je 0x180047bc9
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r13d
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov ebp, eax
mov rax, qword [r14 + 0x48]
mov rcx, qword [r14 + 0x60]
lea rdx, [rax + rcx]
inc rdx
mov qword [rsp + 0x78], rdx
mov edx, 1
mov qword [rsp + 0x70], rdx
jmp 0x180047c18
mov rax, qword [r14 + 0x48]
mov r10, qword [r14 + 0x68]
lea r11, [rax + rcx]
cmp r11, r10
jae 0x180047c46
mov r13d, r15d
jmp 0x180047c14
mov rax, qword [r14 + 0x48]
mov rcx, qword [r14 + 0x60]
add rax, rcx
mov r15, qword [r14 + 0x68]
cmp rax, r15
jbe 0x18004836a
test rcx, rcx
jne 0x180047af4
mov rcx, r14
call fcn.1800dcc20
test al, al
jne 0x180047af0
jmp 0x180048359
mov rdx, qword [r14 + 0x38]
jmp 0x180047c66
mov rcx, r11
mov rax, qword [r14 + 0x48]
mov r10, qword [r14 + 0x68]
add r11, rax
mov r15d, r13d
cmp r11, r10
jb 0x180047c14
mov r8, qword [r14 + 0x30]
movzx r9d, byte [r8 + rcx]
movzx r9d, byte [rbx + r9 + 0x190]
mov r13d, r15d
add r13, r9
mov r9, qword [rdi + 0x20]
mov r13d, dword [r9 + r13*4]
cmp r13, 0x8000000
jae 0x180047d71
add r10, 3
cmovb r10, r12
cmp r11, r10
jbe 0x180047c14
test rcx, rcx
je 0x180047cc0
lea r11, [rcx - 1]
mov qword [r14 + 0x60], r11
cmp r11, 3
jb 0x180047c50
jmp 0x180047ce9
mov rcx, r14
call fcn.1800dcc20
test al, al
je 0x180047e15
mov rdx, qword [r14 + 0x38]
mov rcx, rdx
lea r11, [rcx - 1]
mov qword [r14 + 0x60], r11
cmp r11, 3
jb 0x180047c50
mov r8, qword [r14 + 0x30]
movzx eax, byte [r8 + r11]
movzx r10d, byte [rbx + rax + 0x190]
add r10, r13
mov r9, qword [rdi + 0x20]
mov rax, qword [rdi + 0x28]
mov r15d, dword [r9 + r10*4]
cmp r15, 0x7ffffff
ja 0x180047d7a
lea r11, [rcx - 2]
mov qword [r14 + 0x60], r11
movzx r10d, byte [r8 + rcx - 2]
movzx r10d, byte [rbx + r10 + 0x190]
add r10, r15
mov r10d, dword [r9 + r10*4]
cmp r10, 0x7ffffff
ja 0x180047d85
lea r11, [rcx - 3]
mov qword [r14 + 0x60], r11
movzx r15d, byte [r8 + rcx - 3]
movzx r15d, byte [rbx + r15 + 0x190]
add r15, r10
mov r13d, dword [r9 + r15*4]
cmp r13d, 0x7ffffff
ja 0x180047d8d
add rcx, 0xfffffffffffffffc
mov qword [r14 + 0x60], rcx
mov r11, rcx
jmp 0x180047c53
mov rax, qword [rdi + 0x28]
mov r11d, r13d
jmp 0x180047d96
mov rcx, r11
mov r11d, r15d
mov r15d, r13d
jmp 0x180047d96
mov rcx, r11
mov r11d, r10d
jmp 0x180047d96
mov rcx, r11
mov r11d, r13d
mov r15d, r10d
mov r13d, r11d
test r11d, r11d
jns 0x180047b69
cmp qword [rdi], 0
je 0x1800486d3
mov r10, qword [r14 + 0x48]
add r10, rcx
mov qword [rdi + 0x10], r10
cmp rcx, rdx
jae 0x180048763
movzx r8d, byte [r8 + rcx]
movzx edx, byte [rbx + r8 + 0x190]
mov ecx, r15d
add rcx, rdx
cmp rcx, rax
jae 0x18004876f
mov r13d, dword [r9 + rcx*4]
test r13d, r13d
jns 0x180047b69
shl r8d, 8
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r15d
call fcn.1801fd1b0
test eax, eax
jne 0x18004860d
mov r13d, edx
jmp 0x180047b69
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
xor eax, eax
mov r13d, r15d
jmp 0x180047c14
mov rax, qword [rbx + 0x2b0]
cmp qword [rax + 0x168], r15
jbe 0x180047fad
lea rax, [r15 + r15*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rdi + 0x40]
cmp rcx, rdx
jb 0x180047998
lea r8, [0x180214228]
call fcn.180201960
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
xor ecx, ecx
mov rbp, qword [r14 + 0x38]
cmp rcx, r13
je 0x1800474ee
lea rax, [rcx + rbp]
cmp rax, r13
ja 0x180047eb3
mov rcx, r14
call fcn.1800dcba0
test al, al
je 0x180048117
mov qword [r14 + 0x60], 0
mov rbp, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
lea rax, [rcx + rbp]
cmp rax, r13
jbe 0x180047e8a
mov rax, r13
sub rax, rcx
mov qword [r14 + 0x60], rax
not rcx
add rcx, r12
cmp rcx, rbp
jae 0x180048754
mov rax, qword [r14 + 0x30]
movzx r14d, byte [rax + rcx]
movzx eax, byte [rbx + r14 + 0x190]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1800486c7
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x180048566
mov eax, edx
test eax, 0x8000000
jne 0x180047f22
test eax, 0x20000000
jne 0x180048257
xor r14d, r14d
jmp 0x18004834a
mov rcx, qword [rbx + 0x2b0]
mov r14d, 1
xor eax, eax
jmp 0x180048276
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
mov r12, qword [r14 + 0x68]
test r12, r12
jne 0x1800474b2
movzx r14d, byte [rbx + 0x28f]
inc r14
mov rcx, r14
call fcn.1800fbbd0
mov ecx, eax
shr ecx, 0x10
test al, 1
movzx eax, ah
cmovne eax, ecx
mov ecx, r15d
and ecx, 0x7ffffff
add ecx, eax
mov rdx, qword [rdi + 0x28]
cmp rdx, rcx
jbe 0x1800487ae
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1800485b0
xor eax, eax
test edx, 0x8000000
jne 0x18004830d
xor r14d, r14d
jmp 0x18004834a
lea rcx, [rsp + 0x20]
call fcn.18010e2f0
test eax, eax
jns 0x1800479a7
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, ebp
mov r8d, r12d
mov r9d, r13d
call fcn.1801fde70
mov rcx, rax
mov r15, rax
shr r15, 0x20
jmp 0x1800479af
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
mov r15, qword [r14 + 0x68]
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x180048796
mov rcx, r15
sub rcx, rax
neg rcx
mov rdx, r15
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
test r15, r15
je 0x1800480a8
lea r12, [r15 - 1]
mov rcx, r14
mov rdx, r12
call fcn.1800440c0
mov rdx, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
not rcx
add rcx, r15
cmp rcx, rdx
jae 0x1800487ba
mov rax, qword [r14 + 0x30]
movzx r14d, byte [rax + rcx]
movzx eax, byte [rbx + r14 + 0x190]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1800486c7
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x18004861a
mov eax, edx
test eax, 0x8000000
jne 0x1800480d1
test eax, 0x20000000
jne 0x18004849f
xor r14d, r14d
jmp 0x180048108
mov rcx, rbx
mov rdx, rdi
mov r8d, r13d
call fcn.180049ab0
test eax, eax
jne 0x180048400
xor eax, eax
test edx, 0x8000000
jne 0x18004858d
xor r14d, r14d
jmp 0x180048108
mov rcx, qword [rbx + 0x2b0]
mov r14d, 1
xor eax, eax
cmp qword [rcx + 0x168], 1
je 0x180048108
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov qword [rsi], r14
mov qword [rsi + 8], r15
mov dword [rsi + 0x10], eax
jmp 0x1800484b5
mov rcx, qword [r14 + 0x48]
add rbp, rcx
cmp qword [r14 + 0x70], rbp
jbe 0x180048128
mov qword [r14 + 0x70], rbp
mov rax, r13
sub rax, rcx
mov rbp, qword [r14 + 0x38]
cmp rax, rbp
cmovae rax, rbp
jmp 0x180047eb9
mov rax, qword [rbx + 0x2b0]
xor ebp, ebp
cmp qword [rax + 0x168], 1
je 0x180048174
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r13d
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov ebp, eax
mov rax, qword [r14 + 0x48]
mov rcx, qword [r14 + 0x60]
lea rdx, [rcx + rax]
lea rbx, [rcx + rax]
inc rbx
mov rcx, rdi
call fcn.180049b40
mov qword [rsi], 1
mov qword [rsi + 8], rbx
mov dword [rsi + 0x10], ebp
jmp 0x1800484b5
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
xor ecx, ecx
mov rbp, qword [r14 + 0x38]
cmp rcx, r13
je 0x180047a0e
lea rax, [rcx + rbp]
cmp rax, r13
ja 0x1800481f0
mov rcx, r14
call fcn.1800dcba0
test al, al
je 0x180048478
mov qword [r14 + 0x60], 0
mov rbp, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
lea rax, [rcx + rbp]
cmp rax, r13
jbe 0x1800481c7
mov rax, r13
sub rax, rcx
mov qword [r14 + 0x60], rax
not rcx
add rcx, r12
cmp rcx, rbp
jae 0x180048754
mov rax, qword [r14 + 0x30]
movzx r14d, byte [rax + rcx]
movzx eax, byte [rbx + r14 + 0x190]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rdi + 0x28]
cmp rcx, rdx
jae 0x1800486c7
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1800485df
mov eax, edx
test eax, 0x8000000
jne 0x180048267
test eax, 0x20000000
je 0x180048308
mov ecx, r14d
mov rdx, r13
call fcn.1800faad0
jmp 0x1800484aa
mov rcx, qword [rbx + 0x2b0]
xor eax, eax
mov r14d, 1
cmp qword [rcx + 0x168], 1
je 0x18004834a
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
call fcn.18010e2a0
jmp 0x180048340
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
mov r12, qword [r14 + 0x68]
test r12, r12
jne 0x1800479cb
movzx r14d, byte [rbx + 0x28f]
inc r14
mov rcx, r14
call fcn.1800fbbd0
mov ecx, eax
shr ecx, 0x10
test al, 1
movzx eax, ah
cmovne eax, ecx
mov ecx, r15d
and ecx, 0x7ffffff
add ecx, eax
mov rdx, qword [rdi + 0x28]
cmp rdx, rcx
jbe 0x1800487ae
mov rax, qword [rdi + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x180048661
xor eax, eax
test edx, 0x8000000
jne 0x18004830d
xor r14d, r14d
jmp 0x18004834a
mov rcx, qword [rbx + 0x2b0]
mov r14d, 1
cmp qword [rcx + 0x168], 1
jne 0x180048329
xor r12d, r12d
jmp 0x18004834a
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
call fcn.18010e2a0
xor r12d, r12d
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov qword [rsi], r14
mov qword [rsi + 8], r12
mov dword [rsi + 0x10], eax
jmp 0x1800484b5
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x1800486f7
mov r15, qword [r14 + 0x68]
mov rax, qword [rdi + 8]
cmp qword [rdi], 0
mov qword [rdi], 0
je 0x180048796
mov rcx, r15
sub rcx, rax
neg rcx
mov rdx, r15
sub rdx, rax
cmovb rdx, rcx
add qword [rdi + 0x158], rdx
test r15, r15
je 0x1800483ea
lea r12, [r15 - 1]
mov rcx, r14
mov rdx, r12
call fcn.1800440c0
mov rdx, qword [r14 + 0x38]
mov rcx, qword [r14 + 0x48]
not rcx
add rcx, r15
cmp rcx, rdx
jae 0x1800487ba
mov rax, qword [r14 + 0x30]
movzx r14d, byte [rax + rcx]
mov rcx, rbx
mov rdx, rdi
mov r8d, r13d
mov r9d, r14d
call fcn.180049a30
test eax, eax
je 0x180048407
mov rcx, r15
jmp 0x180047a36
mov rcx, rbx
mov rdx, rdi
mov r8d, r13d
call fcn.180049ab0
test eax, eax
je 0x1800484cc
xor ecx, ecx
jmp 0x180047a36
mov eax, edx
test eax, 0x8000000
jne 0x180048507
test eax, 0x20000000
mov rcx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
je 0x1800486b8
mov ecx, r14d
jmp 0x1800484a2
test eax, 0x40000000
jne 0x18004853d
test eax, 0x20000000
je 0x1800487c6
mov rdx, qword [r14 + 0x60]
add rdx, qword [r14 + 0x48]
mov rcx, rdi
call fcn.180049b40
mov rax, qword [r14 + 0x38]
mov rdx, qword [r14 + 0x60]
cmp rdx, rax
jae 0x1800487fe
mov rax, qword [r14 + 0x30]
movzx ecx, byte [rax + rdx]
add rdx, qword [r14 + 0x48]
call fcn.1800faad0
jmp 0x1800484aa
mov rcx, qword [r14 + 0x48]
add rbp, rcx
cmp qword [r14 + 0x70], rbp
jbe 0x180048489
mov qword [r14 + 0x70], rbp
mov rax, r13
sub rax, rcx
mov rbp, qword [r14 + 0x38]
cmp rax, rbp
cmovae rax, rbp
jmp 0x1800481f6
mov ecx, r14d
mov rdx, r12
call fcn.1800faad0
mov qword [rsi + 8], rax
mov qword [rsi], 2
mov rax, rsi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test edx, 0x8000000
mov rcx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
je 0x1800486b8
mov ecx, 1
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0x168], 1
jne 0x180048690
xor r15d, r15d
xor ebp, ebp
jmp 0x1800486b8
xor ebp, ebp
mov ecx, 1
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0x168], 1
je 0x1800486b8
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
call fcn.18010e2a0
jmp 0x1800486a7
mov rdx, qword [r14 + 0x60]
add rdx, qword [r14 + 0x48]
mov rcx, rdi
call fcn.180049b40
mov rax, qword [rsp + 0x70]
mov qword [rsi], rax
mov rax, qword [rsp + 0x78]
mov qword [rsi + 8], rax
mov dword [rsi + 0x10], ebp
jmp 0x1800484b5
mov r8d, r14d
shl r8d, 8
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r15d
call fcn.1801fd1b0
test eax, eax
jne 0x180048605
jmp 0x180047f06
mov rcx, qword [rbx + 0x2b0]
mov r14d, 1
cmp qword [rcx + 0x168], 1
jne 0x180048645
xor r15d, r15d
jmp 0x180048108
mov rcx, r14
call fcn.1800fbbd0
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r15d
mov r8d, eax
call fcn.1801fd1b0
test eax, eax
jne 0x180048400
jmp 0x180047f97
mov r8d, r14d
shl r8d, 8
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r15d
call fcn.1801fd1b0
test eax, eax
je 0x180048243
mov rcx, r12
jmp 0x180047a36
mov rcx, qword [r14 + 0x60]
add rcx, qword [r14 + 0x48]
jmp 0x180047a36
mov r8d, r14d
shl r8d, 8
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r13d
call fcn.1801fd1b0
test eax, eax
jne 0x1800483e2
jmp 0x18004808f
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
call fcn.18010e2a0
xor r15d, r15d
jmp 0x1800480fe
mov rcx, r14
call fcn.1800fbbd0
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
mov edx, r15d
mov r8d, eax
call fcn.1801fd1b0
test eax, eax
jne 0x180048400
jmp 0x1800482fe
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rdi
lea rcx, [rsp + 0x30]
call fcn.18010e2a0
xor r15d, r15d
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov ecx, 1
mov ebp, eax
mov qword [rsi], rcx
mov qword [rsi + 8], r15
mov dword [rsi + 0x10], ebp
jmp 0x1800484b5
lea r8, [0x1802141c0]
call fcn.180201960
lea rcx, str.no_in_progress_search_to_updateC:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_automata_0.4.6_srchybriddfa.rs
lea r8, [0x180213e20]
mov edx, 0x1f
call fcn.1802017f0
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
call fcn.180201960
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea rax, [fcn.1801f5d30]
mov qword [rsp + 0x28], rax
lea rax, [0x180213d68]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x50], 0
lea rax, [rsp + 0x20]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
lea rdx, [0x180213d78]
lea rcx, [rsp + 0x30]
call fcn.180201810
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
mov rdx, rbp
call fcn.180201960
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
call fcn.180201960
lea r8, [0x1802141c0]
mov rdx, rax
call fcn.180201960
lea rcx, [0x180213ff0]
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
mov edx, 0x24
call fcn.1802017f0
lea rcx, str.no_in_progress_search_to_finish
lea r8, [0x180214210]
mov edx, 0x1f
call fcn.1802017f0
lea r8, [0x1802141d8]
call fcn.180201960
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
call fcn.180201960
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 1
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
lea rdx, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
lea rcx, [rsp + 0x30]
call fcn.180201810
lea r8, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
mov rcx, rdx
mov rdx, rax
call fcn.180201960
int3