Function at 0x1800441f0
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
mov rdi, r9
mov rbx, r8
mov r14, rdx
mov r12, rcx
mov rax, qword [r9 + 0x48]
mov r15, qword [r9 + 0x68]
cmp rax, r15
jbe 0x18004423d
nop dword [rax]
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x180044247
mov rcx, qword [rdi + 0x38]
mov rax, qword [rdi + 0x48]
mov qword [rdi + 0x60], rcx
cmp rax, r15
ja 0x180044220
mov rcx, r15
cmp rax, r15
jne 0x18004425e
jmp 0x180044295
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
xor eax, eax
mov rcx, r15
cmp rax, r15
je 0x180044295
mov rsi, qword [rdi + 0x38]
lea rdx, [rsi + rax]
mov rcx, rax
cmp rdx, r15
ja 0x180044295
nop
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x1800442b3
mov qword [rdi + 0x60], 0
mov rsi, qword [rdi + 0x38]
mov rcx, qword [rdi + 0x48]
lea rax, [rsi + rcx]
cmp rax, r15
jbe 0x180044270
sub r15, rcx
mov qword [rdi + 0x60], r15
mov rax, qword [rdi + 0x70]
cmp qword [rdi + 0x68], rax
jbe 0x1800442e2
mov qword [r12], 0
jmp 0x180045a74
mov rcx, qword [rdi + 0x48]
mov rax, qword [rdi + 0x70]
add rsi, rcx
cmp rax, rsi
jbe 0x1800442ca
mov qword [rdi + 0x70], rsi
mov rax, rsi
sub r15, rcx
mov rcx, qword [rdi + 0x38]
cmp r15, rcx
cmovae r15, rcx
mov qword [rdi + 0x60], r15
cmp qword [rdi + 0x68], rax
ja 0x1800442a6
mov r13d, dword [rdi + 0x58]
lea eax, [r13 - 1]
cmp eax, 2
mov qword [rsp + 0x28], r12
jb 0x180044316
lea rax, [r14 + 0x60]
cmp byte [r14 + 0x78], 3
lea rcx, [0x180213fd0]
cmovne rcx, rax
mov qword [rsp + 0x98], rcx
cmp byte [rcx + 0x18], 2
jne 0x18004437b
cmp byte [rdi + 0x88], 0
je 0x18004434d
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0x98], rax
test r15, r15
je 0x1800443c1
dec r15
cmp r15, qword [rdi + 0x38]
jae 0x1800444c3
add r15, qword [rdi + 0x30]
jmp 0x180044691
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0x98], rax
test r15, r15
je 0x180044416
dec r15
cmp r15, qword [rdi + 0x38]
jae 0x180044556
add r15, qword [rdi + 0x30]
jmp 0x180044e75
cmp byte [rdi + 0x88], 0
je 0x18004446b
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0xa8], rax
mov r13d, dword [rax + 0x17c]
test r15, r15
je 0x1800444e8
dec r15
xor esi, esi
cmp r15, qword [rdi + 0x38]
jae 0x1800445e8
add r15, qword [rdi + 0x30]
xor esi, esi
jmp 0x180045726
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x1800444aa
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x18004463c
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180044663
mov qword [rdi + 0x60], 0
jmp 0x180044671
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x18004453d
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x180044e20
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180044e47
mov qword [rdi + 0x60], 0
jmp 0x180044e55
mov rax, qword [r14 + 0x2b0]
mov qword [rsp + 0xa0], rax
mov eax, dword [rax + 0x17c]
mov dword [rsp + 0xa8], eax
test r15, r15
je 0x18004457b
dec r15
xor esi, esi
cmp r15, qword [rdi + 0x38]
jae 0x180044624
add r15, qword [rdi + 0x30]
xor esi, esi
jmp 0x1800459c1
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
mov qword [rdi + 0x78], 0
mov r13d, dword [rdi + 0x58]
mov esi, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov bpl, 2
movzx ecx, bpl
test r13d, r13d
jne 0x1800446fb
jmp 0x18004472b
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x1800445d0
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x1800456d2
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x1800456f9
mov qword [rdi + 0x60], 0
jmp 0x180045707
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
mov qword [rdi + 0x78], 0
mov r13d, dword [rdi + 0x58]
mov esi, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov bpl, 2
movzx ecx, bpl
test r13d, r13d
jne 0x180044ed7
jmp 0x180044ee5
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x18004460c
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x18004596d
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180045994
mov qword [rdi + 0x60], 0
jmp 0x1800459a2
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
mov qword [rdi + 0x78], 0
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov r15b, 2
movzx ecx, r15b
test esi, esi
jne 0x1800457d4
jmp 0x18004581f
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
mov qword [rdi + 0x78], 0
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov r15b, 2
jmp 0x180045a94
lea rcx, [rdi + 0x80]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x180044409
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180044671
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
lea r15, [rdi + rcx]
add r15, 0x80
mov r13d, dword [rdi + 0x58]
movzx edx, byte [r15]
movzx r12d, dl
mov esi, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1800446e9
lea rcx, [r14 + 0x290]
call fcn.1800fbc50
test al, al
je 0x1800446e9
mov ecx, 4
cmp ecx, 5
je 0x180044758
jmp 0x180045a1c
movzx ebp, byte [r14 + r12 + 0x90]
movzx ecx, bpl
test r13d, r13d
je 0x18004472b
cmp r13d, 2
jne 0x180044727
test byte [r14 + 0x81], 1
mov r12d, esi
jne 0x180044a81
mov rcx, r12
shl rcx, 0x20
or rcx, 2
cmp ecx, 5
je 0x180044758
jmp 0x180045a1c
add rcx, 6
mov rdx, qword [rbx + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rbx + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x180044ac2
mov r12d, eax
mov ecx, 5
cmp ecx, 5
jne 0x180045a1c
mov rax, qword [rdi + 0x48]
mov rcx, qword [rdi + 0x60]
lea rdx, [rcx + rax]
cmp qword [rbx], 1
jne 0x180044789
mov r8, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov r10, r8
sub r10, r9
neg r10
sub r8, r9
cmovb r8, r10
add qword [rbx + 0x158], r8
mov qword [rbx], 1
mov qword [rbx + 8], rdx
mov qword [rbx + 0x10], rdx
mov r15, qword [rdi + 0x70]
cmp rdx, r15
jae 0x180044bc0
lea r13, [rsp + 0x38]
jmp 0x1800447d9
mov ebp, r12d
mov rax, qword [rdi + 0x48]
mov rdx, qword [rdi + 0x60]
lea rcx, [rdx + 1]
mov qword [rdi + 0x60], rcx
add rdx, rax
inc rdx
mov r15, qword [rdi + 0x70]
mov r12d, ebp
cmp rdx, r15
jae 0x180044bc3
cmp r12d, 0x7ffffff
jbe 0x180044890
mov r15, qword [rdi + 0x38]
cmp rcx, r15
jb 0x180044809
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180044b42
mov qword [rdi + 0x60], 0
xor ecx, ecx
cmp qword [rbx], 0
je 0x180046fed
mov rax, qword [rdi + 0x48]
add rax, rcx
mov qword [rbx + 0x10], rax
mov rdx, qword [rdi + 0x38]
cmp rcx, rdx
jae 0x180047005
mov rax, qword [rdi + 0x30]
movzx r8d, byte [rax + rcx]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r12d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rbx + 0x28]
cmp rcx, rdx
jae 0x180046fe1
mov rax, qword [rbx + 0x20]
mov ebp, dword [rax + rcx*4]
test ebp, ebp
js 0x180044a4b
mov eax, ebp
cmp ebp, 0x7ffffff
jbe 0x1800447b3
mov ecx, eax
test ecx, 0x10000000
je 0x180044af7
mov ebp, eax
jmp 0x1800447b3
add rax, rcx
cmp rax, r15
jae 0x1800447b0
mov rsi, qword [rdi + 0x38]
jmp 0x1800448c5
mov r11, r15
add rax, r11
mov rcx, r11
mov r12d, ebp
cmp rax, r10
jae 0x1800447b3
cmp rcx, rsi
jb 0x1800448e8
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x1800449c6
mov qword [rdi + 0x60], 0
mov rsi, qword [rdi + 0x38]
xor ecx, ecx
mov r8, qword [rdi + 0x30]
movzx eax, byte [r8 + rcx]
movzx eax, byte [r14 + rax + 0x190]
mov r10d, r12d
add r10, rax
mov r9, qword [rbx + 0x20]
mov rdx, qword [rbx + 0x28]
mov ebp, dword [r9 + r10*4]
cmp rbp, 0x7ffffff
ja 0x1800449ba
mov rax, qword [rdi + 0x48]
mov r10, qword [rdi + 0x70]
lea r11, [rax + rcx]
add r11, 3
cmp r11, r10
jae 0x1800447b3
lea r15, [rcx + 1]
mov qword [rdi + 0x60], r15
lea r11, [rcx + 4]
cmp r11, rsi
jae 0x1800448b0
movzx r12d, byte [r8 + r15]
movzx r12d, byte [r14 + r12 + 0x190]
add r12, rbp
mov r12d, dword [r9 + r12*4]
cmp r12, 0x7ffffff
ja 0x1800449dd
lea rbp, [rcx + 2]
mov qword [rdi + 0x60], rbp
movzx r15d, byte [r8 + rcx + 2]
movzx r15d, byte [r14 + r15 + 0x190]
add r15, r12
mov r15d, dword [r9 + r15*4]
cmp r15, 0x7ffffff
ja 0x1800449f0
add rcx, 3
mov qword [rdi + 0x60], rcx
movzx r12d, byte [r8 + rcx]
movzx r12d, byte [r14 + r12 + 0x190]
add r12, r15
mov ebp, dword [r9 + r12*4]
cmp ebp, 0x7ffffff
ja 0x180044a00
mov qword [rdi + 0x60], r11
jmp 0x1800448b3
mov eax, ebp
test eax, eax
jns 0x180044873
jmp 0x180044a0d
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x1800447b0
mov qword [rdi + 0x70], rsi
jmp 0x1800447b0
mov rcx, r15
mov eax, r12d
mov r12d, ebp
test eax, eax
jns 0x180044873
jmp 0x180044a0d
mov rcx, rbp
mov eax, r15d
test eax, eax
jns 0x180044873
jmp 0x180044a0d
mov eax, ebp
mov r12d, r15d
test eax, eax
jns 0x180044873
cmp qword [rbx], 0
je 0x180046fed
mov rax, qword [rdi + 0x48]
add rax, rcx
mov qword [rbx + 0x10], rax
movzx r8d, byte [r8 + rcx]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r12d
add rcx, rax
cmp rcx, rdx
jae 0x180046fe1
mov ebp, dword [r9 + rcx*4]
test ebp, ebp
jns 0x180044865
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
mov rcx, r13
mov edx, r12d
call fcn.1801fd1b0
test eax, eax
jne 0x1800452d6
mov ebp, edx
mov eax, ebp
cmp ebp, 0x7ffffff
jbe 0x1800447b3
jmp 0x180044873
mov rax, qword [rsp + 0x98]
cmp qword [rax + 0x168], r12
jbe 0x180044ab0
lea rax, [r12 + r12*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rbx + 0x40]
cmp rcx, rdx
jb 0x180044738
jmp 0x180047071
lea rcx, [rsp + 0x78]
call fcn.18010e2f0
test eax, eax
jns 0x180044747
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r13d
mov r8d, esi
mov r9d, ebp
call fcn.1801fde70
mov rcx, rax
mov r12, rax
shr r12, 0x20
cmp ecx, 5
je 0x180044758
jmp 0x180045a1c
test ecx, 0x8000000
jne 0x180044b58
test ecx, 0x40000000
mov r12, qword [rsp + 0x28]
jne 0x180046482
test ecx, 0x20000000
je 0x18004644a
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
mov rax, qword [rdi + 0x38]
mov rdx, qword [rdi + 0x60]
cmp rdx, rax
jb 0x18004541f
jmp 0x180047119
mov rax, qword [rdi + 0x48]
mov rcx, qword [rdi + 0x70]
add r15, rax
cmp rcx, r15
jbe 0x180044bbd
mov qword [rdi + 0x70], r15
jmp 0x180044bc0
xor esi, esi
mov rcx, qword [rsp + 0x98]
cmp qword [rcx + 0x168], 1
mov r12, qword [rsp + 0x28]
je 0x180044b93
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, eax
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov esi, eax
mov r14, qword [rdi + 0x60]
add r14, qword [rdi + 0x48]
mov rcx, rbx
mov rdx, r14
call fcn.180049b40
mov qword [r12], 1
mov qword [r12 + 8], r14
mov dword [r12 + 0x10], esi
jmp 0x180045a74
mov r15, rcx
mov ebp, r12d
cmp rax, r15
mov r12, qword [rsp + 0x28]
jbe 0x180044bed
nop dword [rax]
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x180044bfb
mov rcx, qword [rdi + 0x38]
mov rax, qword [rdi + 0x48]
mov qword [rdi + 0x60], rcx
cmp rax, r15
ja 0x180044bd0
mov rsi, qword [rdi + 0x38]
cmp rax, r15
jne 0x180044c20
mov rax, r15
jmp 0x180044c52
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
xor eax, eax
mov rsi, qword [rdi + 0x38]
cmp rax, r15
je 0x180044bf6
nop word cs:[rax + rax]
lea rcx, [rsi + rax]
cmp rcx, r15
ja 0x180044c52
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180044cca
mov qword [rdi + 0x60], 0
mov rsi, qword [rdi + 0x38]
mov rax, qword [rdi + 0x48]
lea rcx, [rsi + rax]
cmp rcx, r15
jbe 0x180044c29
mov rcx, r15
sub rcx, rax
mov rax, rcx
mov qword [rdi + 0x60], rax
cmp rcx, rsi
jae 0x180044cfc
mov rax, qword [rdi + 0x30]
movzx esi, byte [rax + rcx]
movzx eax, byte [r14 + rsi + 0x190]
mov ecx, ebp
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rbx + 0x28]
cmp rcx, rdx
jae 0x180046fe1
mov rax, qword [rbx + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x180044dc8
mov eax, edx
test eax, 0x8000000
jne 0x180044cc3
test eax, 0x20000000
je 0x180044d4c
mov ecx, esi
mov rdx, r15
call fcn.1800faad0
jmp 0x180045a67
xor eax, eax
jmp 0x180044d50
mov rax, qword [rdi + 0x48]
add rsi, rax
cmp qword [rdi + 0x70], rsi
jbe 0x180044cdb
mov qword [rdi + 0x70], rsi
mov rcx, r15
sub rcx, rax
mov rsi, qword [rdi + 0x38]
cmp rcx, rsi
mov rax, rsi
cmovb rax, rcx
mov qword [rdi + 0x60], rax
cmp rcx, rsi
jb 0x180044c68
movzx esi, byte [r14 + 0x28f]
inc rsi
mov rcx, rsi
call fcn.1800fbbd0
mov ecx, eax
shr ecx, 0x10
test al, 1
movzx eax, ah
cmovne eax, ecx
mov ecx, ebp
and ecx, 0x7ffffff
add ecx, eax
mov rdx, qword [rbx + 0x28]
cmp rdx, rcx
jbe 0x1800470a6
mov rax, qword [rbx + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x180044df2
xor eax, eax
test edx, 0x8000000
jne 0x180044d50
xor esi, esi
jmp 0x180044d85
mov esi, 1
mov rcx, qword [rsp + 0x98]
cmp qword [rcx + 0x168], 1
je 0x180044d85
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov rcx, qword [rdi + 0x70]
mov rdx, qword [rbx + 8]
cmp qword [rbx], 0
mov qword [rbx], 0
je 0x18004707d
mov r8, rcx
sub r8, rdx
neg r8
sub rcx, rdx
cmovb rcx, r8
add qword [rbx + 0x158], rcx
mov qword [r12], rsi
mov qword [r12 + 8], r15
mov dword [r12 + 0x10], eax
jmp 0x180045a74
mov r8d, esi
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, ebp
call fcn.1801fd1b0
test eax, eax
jne 0x1800465df
jmp 0x180044ca0
mov rcx, rsi
call fcn.1800fbbd0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, ebp
mov r8d, eax
call fcn.1801fd1b0
test eax, eax
jne 0x1800465df
jmp 0x180044d42
lea rcx, [rdi + 0x80]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x18004445e
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180044e55
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
lea r15, [rdi + rcx]
add r15, 0x80
mov r13d, dword [rdi + 0x58]
movzx edx, byte [r15]
movzx r15d, dl
mov esi, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x180044ec5
lea rcx, [r14 + 0x290]
call fcn.1800fbc50
test al, al
je 0x180044ec5
mov ecx, 4
jmp 0x180044f09
movzx ebp, byte [r14 + r15 + 0x90]
movzx ecx, bpl
test r13d, r13d
je 0x180044ee5
cmp r13d, 1
jne 0x180045319
add rcx, 6
mov rdx, qword [rbx + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rbx + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1800453a1
mov r15d, eax
mov ecx, 5
cmp ecx, 5
jne 0x1800452e3
mov rax, qword [rdi + 0x48]
mov rcx, qword [rdi + 0x60]
lea rdx, [rcx + rax]
cmp qword [rbx], 1
jne 0x180044f43
mov r8, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov r10, r8
sub r10, r9
neg r10
sub r8, r9
cmovb r8, r10
add qword [rbx + 0x158], r8
mov qword [rbx], 1
mov qword [rbx + 8], rdx
mov qword [rbx + 0x10], rdx
mov r13, qword [rdi + 0x70]
cmp rdx, r13
jae 0x180045336
xor edx, edx
mov qword [rsp + 0xa8], rdx
jmp 0x180044fb3
mov dword [rsp + 0xa0], ecx
mov r12, qword [rdi + 0x60]
add r12, qword [rdi + 0x48]
mov eax, 1
mov qword [rsp + 0xa8], rax
nop word [rax + rax]
mov rax, qword [rdi + 0x48]
mov rdx, qword [rdi + 0x60]
lea rcx, [rdx + 1]
mov qword [rdi + 0x60], rcx
add rdx, rax
inc rdx
mov r13, qword [rdi + 0x70]
cmp rdx, r13
jae 0x180045458
cmp r15d, 0x7ffffff
jbe 0x1800450b0
mov r13, qword [rdi + 0x38]
cmp rcx, r13
jb 0x180044fe3
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x1800453cd
mov qword [rdi + 0x60], 0
xor ecx, ecx
cmp qword [rbx], 0
je 0x180046fed
mov rax, qword [rdi + 0x48]
add rax, rcx
mov qword [rbx + 0x10], rax
mov rdx, qword [rdi + 0x38]
cmp rcx, rdx
jae 0x180047005
mov rax, qword [rdi + 0x30]
movzx r8d, byte [rax + rcx]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rbx + 0x28]
cmp rcx, rdx
jae 0x180046fe1
mov rax, qword [rbx + 0x20]
mov ecx, dword [rax + rcx*4]
test ecx, ecx
js 0x1800451fe
mov r15d, ecx
cmp ecx, 0x7ffffff
jbe 0x180044f90
mov eax, r15d
test eax, 0x10000000
jne 0x180044f90
test eax, 0x8000000
je 0x1800453e3
xor ecx, ecx
mov rax, qword [rsp + 0x98]
cmp qword [rax + 0x168], 1
je 0x180044f6b
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r15d
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov ecx, eax
jmp 0x180044f6b
add rax, rcx
cmp rax, r13
jae 0x180044f90
mov r13, qword [rdi + 0x38]
jmp 0x1800450e5
mov rbp, rsi
mov r15d, edx
add r10, rbp
mov rcx, rbp
cmp r10, r11
jae 0x180044f90
cmp rcx, r13
jb 0x180045108
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180045228
mov qword [rdi + 0x60], 0
mov r13, qword [rdi + 0x38]
xor ecx, ecx
mov r8, qword [rdi + 0x30]
movzx eax, byte [r8 + rcx]
movzx eax, byte [r14 + rax + 0x190]
mov edx, r15d
add rdx, rax
mov r9, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
mov edx, dword [r9 + rdx*4]
cmp rdx, 0x7ffffff
ja 0x180045256
mov r10, qword [rdi + 0x48]
mov r11, qword [rdi + 0x70]
lea rsi, [r10 + rcx]
add rsi, 3
cmp rsi, r11
jae 0x1800451f6
lea rsi, [rcx + 1]
mov qword [rdi + 0x60], rsi
lea rbp, [rcx + 4]
cmp rbp, r13
jae 0x1800450d0
movzx r15d, byte [r8 + rsi]
movzx r15d, byte [r14 + r15 + 0x190]
add r15, rdx
mov r15d, dword [r9 + r15*4]
cmp r15, 0x7ffffff
ja 0x18004523f
lea rsi, [rcx + 2]
mov qword [rdi + 0x60], rsi
movzx edx, byte [r8 + rcx + 2]
movzx edx, byte [r14 + rdx + 0x190]
add rdx, r15
mov edx, dword [r9 + rdx*4]
cmp rdx, 0x7ffffff
ja 0x180045253
add rcx, 3
mov qword [rdi + 0x60], rcx
movzx esi, byte [r8 + rcx]
movzx esi, byte [r14 + rsi + 0x190]
add rsi, rdx
mov r15d, dword [r9 + rsi*4]
cmp r15d, 0x7ffffff
ja 0x18004526a
mov qword [rdi + 0x60], rbp
add r10, rbp
mov rcx, rbp
cmp r10, r11
jb 0x1800450e5
jmp 0x180044f90
mov r15d, edx
jmp 0x180044f90
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r15d
call fcn.1801fd1b0
test eax, eax
jne 0x1800452d6
mov ecx, edx
jmp 0x18004503f
add r13, qword [rdi + 0x48]
cmp qword [rdi + 0x70], r13
jbe 0x180044f90
mov qword [rdi + 0x70], r13
jmp 0x180044f90
mov rcx, rsi
mov r10d, r15d
mov r15d, r10d
test r10d, r10d
jns 0x18004504e
jmp 0x180045279
mov rcx, rsi
mov r10d, edx
mov edx, r15d
mov r15d, r10d
test r10d, r10d
jns 0x18004504e
jmp 0x180045279
mov r10d, r15d
mov r15d, r10d
test r10d, r10d
jns 0x18004504e
cmp qword [rbx], 0
je 0x180046fed
mov r10, qword [rdi + 0x48]
add r10, rcx
mov qword [rbx + 0x10], r10
movzx r8d, byte [r8 + rcx]
movzx r10d, byte [r14 + r8 + 0x190]
mov ecx, edx
add rcx, r10
cmp rcx, rax
jae 0x1800470c1
mov ecx, dword [r9 + rcx*4]
test ecx, ecx
jns 0x18004503f
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
call fcn.1801fd1b0
test eax, eax
je 0x180045221
mov rcx, qword [rdi + 0x60]
add rcx, qword [rdi + 0x48]
jmp 0x180045a5d
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
cmp eax, 2
je 0x180045345
cmp eax, 1
jne 0x180045352
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
je 0x1800457ab
dec rdx
mov ecx, r15d
call fcn.1800faad0
jmp 0x180045a67
test byte [r14 + 0x81], 1
mov r15d, esi
jne 0x180045360
mov rcx, r15
shl rcx, 0x20
or rcx, 2
jmp 0x180044f09
xor ecx, ecx
mov qword [rsp + 0xa8], rcx
jmp 0x180045458
mov edx, r15d
call fcn.1800fab60
jmp 0x180045a67
mov rcx, qword [rdi + 0x70]
call fcn.1800fab20
jmp 0x180045a67
mov rax, qword [rsp + 0x98]
cmp qword [rax + 0x168], r15
jbe 0x18004538f
lea rax, [r15 + r15*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rbx + 0x40]
cmp rcx, rdx
jb 0x180044ef2
jmp 0x180047071
lea rcx, [rsp + 0x78]
call fcn.18010e2f0
test eax, eax
jns 0x180044f01
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r13d
mov r8d, esi
mov r9d, ebp
call fcn.1801fde70
mov rcx, rax
mov r15, rax
shr r15, 0x20
jmp 0x180044f09
mov rax, qword [rdi + 0x48]
mov rcx, qword [rdi + 0x70]
add r13, rax
cmp rcx, r13
jbe 0x180045435
mov qword [rdi + 0x70], r13
jmp 0x180045458
test eax, 0x40000000
jne 0x180045657
test eax, 0x20000000
je 0x18004644a
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
mov rax, qword [rdi + 0x38]
mov rdx, qword [rdi + 0x60]
cmp rdx, rax
mov r12, qword [rsp + 0x28]
jae 0x180047119
mov rax, qword [rdi + 0x30]
movzx ecx, byte [rax + rdx]
add rdx, qword [rdi + 0x48]
call fcn.1800faad0
jmp 0x180045a67
mov r13, rcx
jmp 0x180045458
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x18004546b
mov rcx, qword [rdi + 0x38]
mov rax, qword [rdi + 0x48]
mov qword [rdi + 0x60], rcx
cmp rax, r13
ja 0x180045440
mov rsi, qword [rdi + 0x38]
cmp rax, r13
jne 0x180045483
mov rax, r13
jmp 0x1800454b5
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x180047011
xor eax, eax
mov rsi, qword [rdi + 0x38]
cmp rax, r13
je 0x180045466
lea rcx, [rsi + rax]
cmp rcx, r13
ja 0x1800454b5
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180045533
mov qword [rdi + 0x60], 0
mov rsi, qword [rdi + 0x38]
mov rax, qword [rdi + 0x48]
lea rcx, [rsi + rax]
cmp rcx, r13
jbe 0x18004548c
mov rcx, r13
sub rcx, rax
mov rax, rcx
mov qword [rdi + 0x60], rax
cmp rcx, rsi
jae 0x180045565
mov rax, qword [rdi + 0x30]
movzx esi, byte [rax + rcx]
movzx eax, byte [r14 + rsi + 0x190]
mov ecx, r15d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rbx + 0x28]
cmp rcx, rdx
jae 0x180046fe1
mov rax, qword [rbx + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x180045679
mov eax, edx
test eax, 0x8000000
jne 0x1800455bc
test eax, 0x20000000
mov r15, qword [rsp + 0xa8]
je 0x180045607
mov ecx, esi
mov rdx, r13
call fcn.1800faad0
jmp 0x180045a62
mov rax, qword [rdi + 0x48]
add rsi, rax
cmp qword [rdi + 0x70], rsi
jbe 0x180045544
mov qword [rdi + 0x70], rsi
mov rcx, r13
sub rcx, rax
mov rsi, qword [rdi + 0x38]
cmp rcx, rsi
mov rax, rsi
cmovb rax, rcx
mov qword [rdi + 0x60], rax
cmp rcx, rsi
jb 0x1800454cb
movzx esi, byte [r14 + 0x28f]
inc rsi
mov rcx, rsi
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 [rbx + 0x28]
cmp rdx, rcx
jbe 0x1800470a6
mov rax, qword [rbx + 0x20]
mov edx, dword [rax + rcx*4]
test edx, edx
js 0x1800456a0
test edx, 0x8000000
mov r15, qword [rsp + 0xa8]
je 0x180045607
mov dword [rsp + 0xa0], 0
mov r15d, 1
mov rax, qword [rsp + 0x98]
cmp qword [rax + 0x168], 1
je 0x180045604
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov dword [rsp + 0xa0], eax
mov r12, r13
mov rax, qword [rdi + 0x70]
mov rcx, qword [rbx + 8]
cmp qword [rbx], 0
mov qword [rbx], 0
je 0x18004707d
mov rdx, rax
sub rdx, rcx
neg rdx
sub rax, rcx
cmovb rax, rdx
add qword [rbx + 0x158], rax
mov rax, qword [rsp + 0x28]
mov qword [rax], r15
mov qword [rax + 8], r12
mov r12, rax
mov eax, dword [rsp + 0xa0]
mov dword [r12 + 0x10], eax
jmp 0x180045a74
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xa8]
mov qword [rax], rcx
jmp 0x18004563f
mov r8d, esi
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r15d
call fcn.1801fd1b0
test eax, eax
jne 0x1800456ca
jmp 0x180045504
mov rcx, rsi
call fcn.1800fbbd0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r15d
mov r8d, eax
call fcn.1801fd1b0
test eax, eax
je 0x1800455ac
mov rcx, r13
jmp 0x180045a5d
lea rcx, [rdi + 0x80]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x180044530
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180045707
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
lea r15, [rdi + rcx]
add r15, 0x80
mov esi, dword [rdi + 0x58]
movzx edx, byte [r15]
movzx r12d, dl
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x1800457c3
lea rcx, [r14 + 0x290]
call fcn.1800fbc50
test al, al
je 0x1800457c3
mov ecx, 4
cmp ecx, 5
je 0x18004584c
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
cmp eax, 2
je 0x180045a4f
cmp eax, 1
jne 0x180045a59
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
jne 0x180045a42
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
movzx r15d, byte [r14 + r12 + 0x90]
movzx ecx, r15b
test esi, esi
je 0x18004581f
cmp esi, 2
jne 0x1800457f8
test byte [r14 + 0x81], 1
mov r12d, ebp
jne 0x1800457fe
mov rcx, r12
shl rcx, 0x20
or rcx, 2
cmp ecx, 5
je 0x18004584c
jmp 0x18004577d
add rcx, 6
jmp 0x18004581f
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], r12
jbe 0x1800458fa
lea rax, [r12 + r12*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rbx + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rbx + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x18004590c
mov r12d, eax
mov ecx, 5
cmp ecx, 5
jne 0x18004577d
lea rcx, [rsp + 0x78]
mov rdx, qword [rsp + 0x98]
mov r8, rdi
call fcn.180048ab0
cmp qword [rsp + 0x78], 0
je 0x180045b71
mov rdx, qword [rsp + 0x80]
mov rcx, rdi
call fcn.1800440c0
mov rbp, qword [rdi + 0x60]
test r13d, r13d
je 0x180045d93
test rbp, rbp
je 0x1800458a5
dec rbp
cmp rbp, qword [rdi + 0x38]
jae 0x180045955
add rbp, qword [rdi + 0x30]
jmp 0x180045c96
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x180045940
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x180045c45
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180045c6c
mov qword [rdi + 0x60], 0
jmp 0x180045c7a
lea rcx, [rsp + 0x78]
call fcn.18010e2f0
test eax, eax
jns 0x18004583b
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, esi
mov r8d, ebp
mov r9d, r15d
call fcn.1801fde70
mov rcx, rax
mov r12, rax
shr r12, 0x20
cmp ecx, 5
je 0x18004584c
jmp 0x18004577d
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x1800470d0
mov qword [rdi + 0x78], 0
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov r15b, 2
jmp 0x180045cfe
lea rcx, [rdi + 0x80]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x1800445c3
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x1800459a2
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
lea r15, [rdi + rcx]
add r15, 0x80
mov esi, dword [rdi + 0x58]
movzx edx, byte [r15]
movzx r12d, dl
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x80], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x180045a8b
lea rcx, [r14 + 0x290]
call fcn.1800fbc50
test al, al
je 0x180045a8b
mov ecx, 4
cmp ecx, 5
je 0x180045b17
lea edx, [rcx - 3]
cmp edx, 2
mov eax, 2
cmovb eax, edx
cmp eax, 2
je 0x180045a4f
cmp eax, 1
jne 0x180045a59
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
je 0x1800457ab
dec rdx
mov ecx, r12d
call fcn.1800faad0
jmp 0x180045a62
mov edx, r12d
call fcn.1800fab60
jmp 0x180045a62
mov rcx, qword [rdi + 0x70]
call fcn.1800fab20
mov r12, qword [rsp + 0x28]
mov qword [r12 + 8], rax
mov qword [r12], 2
mov rax, r12
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movzx r15d, byte [r14 + r12 + 0x90]
movzx ecx, r15b
test esi, esi
je 0x180045aea
cmp esi, 2
jne 0x180045ac3
test byte [r14 + 0x81], 1
mov r12d, ebp
jne 0x180045ac9
mov rcx, r12
shl rcx, 0x20
or rcx, 2
cmp ecx, 5
je 0x180045b17
jmp 0x180045a1c
add rcx, 6
jmp 0x180045aea
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], r12
jbe 0x180045bd2
lea rax, [r12 + r12*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rdx, qword [rbx + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rbx + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x180045be4
mov r12d, eax
mov ecx, 5
cmp ecx, 5
jne 0x180045a1c
lea rcx, [rsp + 0x78]
mov rdx, qword [rsp + 0x98]
mov r8, rdi
call fcn.180048ab0
cmp qword [rsp + 0x78], 0
je 0x180045b71
mov rdx, qword [rsp + 0x80]
mov rcx, rdi
call fcn.1800440c0
mov rcx, qword [rdi + 0x60]
cmp dword [rsp + 0xa8], 0
je 0x1800467d2
test rcx, rcx
je 0x180045b7d
dec rcx
cmp rcx, qword [rdi + 0x38]
jae 0x180045c2d
add rcx, qword [rdi + 0x30]
jmp 0x1800466b7
xor eax, eax
mov r12, qword [rsp + 0x28]
jmp 0x18004672e
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x180045c18
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x180046667
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x18004668e
mov qword [rdi + 0x60], 0
jmp 0x18004669c
lea rcx, [rsp + 0x78]
call fcn.18010e2f0
test eax, eax
jns 0x180045b06
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, esi
mov r8d, ebp
mov r9d, r15d
call fcn.1801fde70
mov rcx, rax
mov r12, rax
shr r12, 0x20
cmp ecx, 5
je 0x180045b17
jmp 0x180045a1c
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x1800470d0
mov qword [rdi + 0x78], 0
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov r15b, 2
jmp 0x180046740
lea rcx, [rdi + 0x80]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x1800458ed
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180045c7a
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
lea rbp, [rdi + rcx]
add rbp, 0x80
movzx edx, byte [rbp]
movzx r12d, dl
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x180045cf5
lea rcx, [r14 + 0x290]
call fcn.1800fbc50
test al, al
je 0x180045cf5
mov eax, 4
mov edx, eax
cmp rdx, 5
je 0x180045d8f
jmp 0x180046710
movzx r15d, byte [r14 + r12 + 0x90]
movzx ecx, r15b
test esi, esi
je 0x180045d5a
cmp esi, 2
jne 0x180045d34
mov rax, qword [rsp + 0x68]
test byte [rax + 0x81], 1
mov r12d, ebp
jne 0x180045d3a
mov rax, r12
shl rax, 0x20
or rax, 2
mov edx, eax
cmp rdx, 5
je 0x180045d8f
jmp 0x180046710
add rcx, 6
jmp 0x180045d5a
mov rax, qword [rax + 0x2b0]
cmp qword [rax + 0x168], r12
jbe 0x1800464b6
lea rax, [r12 + r12*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rax + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1800464c8
mov r12d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
jne 0x180046710
mov rbp, qword [rdi + 0x60]
mov rax, qword [rdi + 0x48]
lea rcx, [rax + rbp]
cmp qword [rbx], 1
jne 0x180045dc0
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 8]
mov r9, rdx
sub r9, r8
neg r9
sub rdx, r8
cmovb rdx, r9
add qword [rbx + 0x158], rdx
mov qword [rbx], 1
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], rcx
mov r15, qword [rdi + 0x70]
cmp rcx, r15
jae 0x180046572
mov dword [rsp + 0xa0], r13d
lea rcx, [rdi + 0x80]
mov qword [rsp + 0xc8], rcx
lea rcx, [r14 + 0x290]
mov qword [rsp + 0xb0], rcx
jmp 0x180045e2d
mov r13d, r12d
mov rax, qword [rdi + 0x48]
mov rcx, qword [rdi + 0x60]
lea rbp, [rcx + 1]
mov qword [rdi + 0x60], rbp
add rcx, rax
inc rcx
mov r15, qword [rdi + 0x70]
mov r12d, r13d
cmp rcx, r15
jae 0x180046575
cmp r12d, 0x7ffffff
jbe 0x180045ed0
mov r15, qword [rdi + 0x38]
cmp rbp, r15
jb 0x180045e5d
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x1800464fc
mov qword [rdi + 0x60], 0
xor ebp, ebp
cmp qword [rbx], 0
je 0x180046fed
mov rax, qword [rdi + 0x48]
add rax, rbp
mov qword [rbx + 0x10], rax
mov rdx, qword [rdi + 0x38]
cmp rbp, rdx
jae 0x1800470b2
mov rax, qword [rdi + 0x30]
movzx r8d, byte [rax + rbp]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r12d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rbx + 0x28]
cmp rcx, rdx
jae 0x180046fe1
mov rax, qword [rbx + 0x20]
mov r13d, dword [rax + rcx*4]
test r13d, r13d
js 0x180045ff9
mov esi, r13d
cmp r13d, 0x7ffffff
jbe 0x180045e07
jmp 0x180046069
add rax, rbp
cmp rax, r15
jae 0x180045e04
mov rsi, qword [rdi + 0x38]
jmp 0x180045ef7
mov r10, r11
add r8, r10
mov rbp, r10
mov r12d, r13d
cmp r8, r9
jae 0x180045e07
cmp rbp, rsi
jb 0x180045f1a
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180046031
mov qword [rdi + 0x60], 0
mov rsi, qword [rdi + 0x38]
xor ebp, ebp
mov rcx, qword [rdi + 0x30]
movzx eax, byte [rcx + rbp]
movzx eax, byte [r14 + rax + 0x190]
mov r8d, r12d
add r8, rax
mov rax, qword [rbx + 0x20]
mov rdx, qword [rbx + 0x28]
mov r13d, dword [rax + r8*4]
cmp r13, 0x7ffffff
ja 0x180045ff4
mov r8, qword [rdi + 0x48]
mov r9, qword [rdi + 0x70]
lea r10, [r8 + rbp]
add r10, 3
cmp r10, r9
jae 0x180045e07
lea r11, [rbp + 1]
mov qword [rdi + 0x60], r11
lea r10, [rbp + 4]
cmp r10, rsi
jae 0x180045ee2
movzx r15d, byte [rcx + r11]
movzx r15d, byte [r14 + r15 + 0x190]
add r15, r13
mov r12d, dword [rax + r15*4]
cmp r12, 0x7ffffff
ja 0x180046048
lea r15, [rbp + 2]
mov qword [rdi + 0x60], r15
movzx r11d, byte [rcx + rbp + 2]
movzx r11d, byte [r14 + r11 + 0x190]
add r11, r12
mov r11d, dword [rax + r11*4]
cmp r11, 0x7ffffff
ja 0x180046053
add rbp, 3
mov qword [rdi + 0x60], rbp
movzx r15d, byte [rcx + rbp]
movzx r15d, byte [r14 + r15 + 0x190]
add r15, r11
mov r13d, dword [rax + r15*4]
cmp r13d, 0x7ffffff
ja 0x18004605b
mov qword [rdi + 0x60], r10
jmp 0x180045ee5
mov esi, r13d
jmp 0x180046061
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r12d
call fcn.1801fd1b0
test eax, eax
jne 0x1800452d6
mov r13d, edx
mov esi, r13d
cmp r13d, 0x7ffffff
jbe 0x180045e07
jmp 0x180046069
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180045e04
mov qword [rdi + 0x70], rsi
jmp 0x180045e04
mov rbp, r11
mov esi, r12d
mov r12d, r13d
jmp 0x180046061
mov rbp, r15
mov esi, r11d
jmp 0x180046061
mov esi, r13d
mov r12d, r11d
test esi, esi
js 0x180046105
mov eax, esi
test eax, 0x10000000
je 0x180046428
mov r15, qword [rdi + 0x60]
add r15, qword [rdi + 0x48]
lea rcx, [rsp + 0x78]
mov rdx, qword [rsp + 0x98]
mov r8, rdi
call fcn.180048ab0
cmp qword [rsp + 0x78], 0
mov r12, qword [rsp + 0x28]
je 0x18004649f
mov rbp, qword [rsp + 0x80]
cmp rbp, r15
jbe 0x1800460e5
mov rcx, qword [rdi + 0x48]
cmp rcx, rbp
mov r12d, dword [rsp + 0xa0]
jbe 0x18004614b
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x18004613c
mov rax, qword [rdi + 0x38]
mov rcx, qword [rdi + 0x48]
mov qword [rdi + 0x60], rax
cmp rcx, rbp
ja 0x1800460c6
jmp 0x18004614b
mov rax, qword [rdi + 0x60]
add rax, qword [rdi + 0x48]
cmp rax, r15
je 0x1800460fd
mov rcx, rdi
mov rdx, r15
call fcn.1800440c0
mov r13d, esi
jmp 0x180045e07
cmp qword [rbx], 0
je 0x180046fed
mov r8, qword [rdi + 0x48]
add r8, rbp
mov qword [rbx + 0x10], r8
movzx r8d, byte [rcx + rbp]
movzx r9d, byte [r14 + r8 + 0x190]
mov ecx, r12d
add rcx, r9
cmp rcx, rdx
jb 0x180045eae
jmp 0x180046fe1
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x1800470d0
xor ecx, ecx
mov rax, rbp
cmp rcx, rbp
je 0x18004618c
mov r15, qword [rdi + 0x38]
lea rdx, [r15 + rcx]
mov rax, rcx
cmp rdx, rbp
ja 0x18004618c
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180046208
mov qword [rdi + 0x60], 0
mov r15, qword [rdi + 0x38]
mov rax, qword [rdi + 0x48]
lea rcx, [r15 + rax]
cmp rcx, rbp
jbe 0x180046163
sub rbp, rax
mov qword [rdi + 0x60], rbp
test r12d, r12d
je 0x1800463ba
test rbp, rbp
je 0x1800461b7
dec rbp
cmp rbp, qword [rdi + 0x38]
jae 0x18004624e
add rbp, qword [rdi + 0x30]
jmp 0x1800462b6
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x180046239
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x180046267
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x18004628f
mov qword [rdi + 0x60], 0
jmp 0x18004629d
mov rax, qword [rdi + 0x48]
add r15, rax
cmp qword [rdi + 0x70], r15
jbe 0x180046219
mov qword [rdi + 0x70], r15
sub rbp, rax
mov rcx, qword [rdi + 0x38]
cmp rbp, rcx
cmovae rbp, rcx
mov qword [rdi + 0x60], rbp
test r12d, r12d
jne 0x18004619c
jmp 0x1800463ba
mov rax, qword [rdi + 0x48]
test rax, rax
jne 0x1800470d0
mov qword [rdi + 0x78], 0
mov ebp, dword [rdi + 0x58]
mov r15d, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov r12b, 2
jmp 0x180046324
mov rcx, qword [rsp + 0xc8]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x1800461fb
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x18004629d
mov qword [rdi + 0x70], rsi
mov rbp, qword [rdi + 0x78]
dec rbp
cmp rbp, 7
ja 0x18004712b
add rbp, qword [rsp + 0xc8]
movzx edx, byte [rbp]
movzx esi, dl
mov ebp, dword [rdi + 0x58]
mov r15d, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x18004631b
mov rcx, qword [rsp + 0xb0]
call fcn.1800fbc50
test al, al
je 0x18004631b
mov eax, 4
mov r12, qword [rsp + 0x28]
mov edx, eax
cmp rdx, 5
je 0x1800463b2
jmp 0x180046414
movzx r12d, byte [r14 + rsi + 0x90]
movzx ecx, r12b
test ebp, ebp
je 0x180046381
cmp ebp, 2
jne 0x18004635f
mov rax, qword [rsp + 0x68]
test byte [rax + 0x81], 1
mov esi, r15d
jne 0x180046365
mov rax, rsi
shl rax, 0x20
or rax, 2
mov r12, qword [rsp + 0x28]
mov edx, eax
cmp rdx, 5
je 0x1800463b2
jmp 0x180046414
add rcx, 6
jmp 0x180046381
mov rax, qword [rax + 0x2b0]
cmp qword [rax + 0x168], rsi
jbe 0x1800463d6
lea rax, [rsi + rsi*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rax + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x1800463e4
mov esi, eax
mov eax, 5
mov r12, qword [rsp + 0x28]
mov edx, eax
cmp rdx, 5
jne 0x180046414
mov rax, qword [rdi + 0x48]
mov rbp, qword [rdi + 0x60]
lea rcx, [rax + rbp]
mov r15, qword [rdi + 0x70]
mov r12d, esi
mov r13d, esi
cmp rcx, r15
jb 0x180045e2d
jmp 0x180046575
lea rcx, [rsp + 0x68]
call fcn.18010e2f0
test eax, eax
jns 0x18004639e
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, ebp
mov r8d, r15d
mov r9d, r12d
call fcn.1801fde70
mov rsi, rax
shr rsi, 0x20
mov r12, qword [rsp + 0x28]
mov edx, eax
cmp rdx, 5
je 0x1800463b2
shl rsi, 0x20
or rdx, rsi
mov rcx, rdi
call fcn.180048820
jmp 0x180046724
test eax, 0x8000000
mov r12, qword [rsp + 0x28]
jne 0x18004650f
test eax, 0x40000000
jne 0x180046482
test eax, 0x20000000
jne 0x180044b1c
lea rax, str.internal_error:_entered_unreachable_code:_sid_being_unknown_is_a_bug
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x30]
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
lea rdx, str.C:Users_runneradmin_.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_cursor_0.1.4_srcengineshybrid_search.rs
lea rcx, [rsp + 0x38]
call fcn.180201810
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
mov qword [r12], 0
jmp 0x180045a74
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
xor eax, eax
jmp 0x18004672e
lea rcx, [rsp + 0x68]
call fcn.18010e2f0
test eax, eax
jns 0x180045d7b
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, esi
mov r8d, ebp
mov r9d, r15d
call fcn.1801fde70
mov r12, rax
shr r12, 0x20
mov edx, eax
cmp rdx, 5
je 0x180045d8f
jmp 0x180046710
mov rax, qword [rdi + 0x70]
add r15, qword [rdi + 0x48]
cmp rax, r15
jbe 0x18004656f
mov qword [rdi + 0x70], r15
jmp 0x180046572
xor ebp, ebp
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], 1
je 0x180046545
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, esi
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov ebp, eax
mov rsi, qword [rdi + 0x60]
add rsi, qword [rdi + 0x48]
mov rcx, rbx
mov rdx, rsi
call fcn.180049b40
mov qword [r12], 1
mov qword [r12 + 8], rsi
mov dword [r12 + 0x10], ebp
jmp 0x180045a74
mov r15, rax
mov r13d, r12d
mov rcx, rdi
mov rdx, r15
call fcn.1800440c0
mov rax, r15
sub rax, qword [rdi + 0x48]
cmp rax, qword [rdi + 0x38]
jae 0x1800465c8
mov rcx, qword [rdi + 0x30]
movzx esi, byte [rcx + rax]
mov rcx, r14
mov rdx, rbx
mov r8d, r13d
mov r9d, esi
call fcn.180049a30
test eax, eax
mov r12, qword [rsp + 0x28]
jne 0x1800465df
mov eax, edx
test eax, 0x8000000
jne 0x1800465fb
test eax, 0x20000000
jne 0x180046660
xor r12d, r12d
jmp 0x18004663d
mov rcx, r14
mov rdx, rbx
mov r8d, r13d
call fcn.180049ab0
test eax, eax
mov r12, qword [rsp + 0x28]
je 0x1800465ec
mov rcx, r15
call fcn.1800fab20
jmp 0x180045a67
xor esi, esi
test edx, 0x8000000
jne 0x180046605
xor r12d, r12d
jmp 0x18004663d
mov r12d, 1
xor esi, esi
jmp 0x18004660b
mov r12d, 1
mov rax, qword [rsp + 0xa8]
cmp qword [rax + 0x168], 1
je 0x18004663d
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov esi, eax
mov rdx, qword [rdi + 0x70]
mov rcx, rbx
call fcn.180049b40
mov rax, qword [rsp + 0x28]
mov qword [rax], r12
mov r12, rax
mov qword [rax + 8], r15
mov dword [rax + 0x10], esi
jmp 0x180045a74
mov ecx, esi
jmp 0x180044cb6
lea rcx, [rdi + 0x80]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
mov rcx, rdi
call fcn.1800dcba0
test al, al
jne 0x180045bc5
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x18004669c
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
add rcx, rdi
add rcx, 0x80
movzx edx, byte [rcx]
movzx r12d, dl
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x180046737
lea rcx, [r14 + 0x290]
call fcn.1800fbc50
test al, al
je 0x180046737
mov eax, 4
mov edx, eax
cmp rdx, 5
je 0x1800467ce
shl r12, 0x20
or rdx, r12
mov rcx, rdi
call fcn.180048820
mov r12, qword [rsp + 0x28]
mov qword [r12 + 8], rax
mov eax, 2
mov qword [r12], rax
jmp 0x180045a74
movzx r15d, byte [r14 + r12 + 0x90]
movzx ecx, r15b
test esi, esi
je 0x180046799
cmp esi, 2
jne 0x180046773
mov rax, qword [rsp + 0x68]
test byte [rax + 0x81], 1
mov r12d, ebp
jne 0x180046779
mov rax, r12
shl rax, 0x20
or rax, 2
mov edx, eax
cmp rdx, 5
je 0x1800467ce
jmp 0x180046710
add rcx, 6
jmp 0x180046799
mov rax, qword [rax + 0x2b0]
cmp qword [rax + 0x168], r12
jbe 0x180046e11
lea rax, [r12 + r12*2]
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rax + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x180046e23
mov r12d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
jne 0x180046710
mov rcx, qword [rdi + 0x60]
mov rax, qword [rdi + 0x48]
lea rdx, [rax + rcx]
cmp qword [rbx], 1
jne 0x1800467ff
mov r8, qword [rbx + 0x10]
mov r9, qword [rbx + 8]
mov r10, r8
sub r10, r9
neg r10
sub r8, r9
cmovb r8, r10
add qword [rbx + 0x158], r8
mov qword [rbx], 1
mov qword [rbx + 8], rdx
mov qword [rbx + 0x10], rdx
mov rbp, qword [rdi + 0x70]
cmp rdx, rbp
jae 0x180046df1
lea rdx, [rdi + 0x80]
mov qword [rsp + 0xd0], rdx
lea rdx, [r14 + 0x290]
mov qword [rsp + 0xc8], rdx
xor edx, edx
mov qword [rsp + 0xb0], rdx
jmp 0x18004686b
mov r12d, r13d
mov rax, qword [rdi + 0x48]
mov rdx, qword [rdi + 0x60]
lea rcx, [rdx + 1]
mov qword [rdi + 0x60], rcx
add rdx, rax
inc rdx
mov rbp, qword [rdi + 0x70]
cmp rdx, rbp
jae 0x180046e70
mov r13d, r12d
cmp r13d, 0x7ffffff
jbe 0x18004690e
mov rbp, qword [rdi + 0x38]
cmp rcx, rbp
jb 0x18004689e
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180046e57
mov qword [rdi + 0x60], 0
xor ecx, ecx
cmp qword [rbx], 0
je 0x180046fed
mov rax, qword [rdi + 0x48]
add rax, rcx
mov qword [rbx + 0x10], rax
mov rdx, qword [rdi + 0x38]
cmp rcx, rdx
jae 0x180047005
mov rax, qword [rdi + 0x30]
movzx r8d, byte [rax + rcx]
movzx eax, byte [r14 + r8 + 0x190]
mov ecx, r13d
and ecx, 0x7ffffff
add rcx, rax
mov rdx, qword [rbx + 0x28]
cmp rcx, rdx
jae 0x180046fe1
mov rax, qword [rbx + 0x20]
mov r12d, dword [rax + rcx*4]
test r12d, r12d
js 0x180046a75
cmp r12d, 0x7ffffff
ja 0x180046aa8
jmp 0x180046848
add rax, rcx
cmp rax, rbp
jae 0x180046845
mov rsi, qword [rdi + 0x38]
jmp 0x180046935
mov r9, r15
mov r13d, r11d
add rdx, r9
mov rcx, r9
cmp rdx, r8
jae 0x180046845
cmp rcx, rsi
jb 0x180046958
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180046d4e
mov qword [rdi + 0x60], 0
mov rsi, qword [rdi + 0x38]
xor ecx, ecx
mov rax, qword [rdi + 0x30]
movzx edx, byte [rax + rcx]
movzx edx, byte [r14 + rdx + 0x190]
mov r8d, r13d
add r8, rdx
mov r10, qword [rbx + 0x20]
mov r11d, dword [r10 + r8*4]
cmp r11, 0x7ffffff
ja 0x180046a43
mov rdx, qword [rdi + 0x48]
mov r8, qword [rdi + 0x70]
lea r9, [rdx + rcx]
add r9, 3
cmp r9, r8
jae 0x180046d46
lea r15, [rcx + 1]
mov qword [rdi + 0x60], r15
lea r9, [rcx + 4]
cmp r9, rsi
jae 0x180046920
movzx r12d, byte [rax + r15]
movzx r12d, byte [r14 + r12 + 0x190]
add r12, r11
mov r13d, dword [r10 + r12*4]
cmp r13, 0x7ffffff
ja 0x180046a35
lea r15, [rcx + 2]
mov qword [rdi + 0x60], r15
movzx r11d, byte [rax + rcx + 2]
movzx r11d, byte [r14 + r11 + 0x190]
add r11, r13
mov r11d, dword [r10 + r11*4]
cmp r11, 0x7ffffff
ja 0x180046a40
add rcx, 3
mov qword [rdi + 0x60], rcx
movzx r15d, byte [rax + rcx]
movzx r15d, byte [r14 + r15 + 0x190]
add r15, r11
mov r13d, dword [r10 + r15*4]
cmp r13d, 0x7ffffff
ja 0x180046a38
mov qword [rdi + 0x60], r9
add rdx, r9
mov rcx, r9
cmp rdx, r8
jb 0x180046935
jmp 0x180046845
mov rcx, r15
mov r12d, r13d
mov r13d, r11d
jmp 0x180046a46
mov rcx, r15
mov r12d, r11d
test r12d, r12d
jns 0x180046aa8
cmp qword [rbx], 0
je 0x180046fed
mov rdx, qword [rdi + 0x48]
add rdx, rcx
mov qword [rbx + 0x10], rdx
movzx r9d, byte [rax + rcx]
mov rcx, r14
mov rdx, rbx
mov r8d, r13d
call fcn.180049a30
jmp 0x180046a90
shl r8d, 8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r13d
call fcn.1801fd1b0
test eax, eax
jne 0x1800452d6
mov r12d, edx
cmp r12d, 0x7ffffff
jbe 0x180046848
mov eax, r12d
test eax, 0x10000000
je 0x180046d65
mov r15, qword [rdi + 0x48]
mov rsi, qword [rdi + 0x60]
lea rcx, [rsp + 0x78]
mov rdx, qword [rsp + 0x98]
mov r8, rdi
call fcn.180048ab0
cmp qword [rsp + 0x78], 0
je 0x180046fa2
add rsi, r15
mov rdx, qword [rsp + 0x80]
cmp rdx, rsi
jbe 0x180046dd0
mov rcx, rdi
call fcn.1800440c0
mov rcx, qword [rdi + 0x60]
cmp dword [rsp + 0xa8], 0
je 0x180046b25
test rcx, rcx
je 0x180046b2d
dec rcx
cmp rcx, qword [rdi + 0x38]
mov r12, qword [rsp + 0x28]
jae 0x180046b96
add rcx, qword [rdi + 0x30]
jmp 0x180046bd5
mov r13d, r12d
jmp 0x180046cd1
mov rcx, rdi
call fcn.1800dcc20
test al, al
je 0x180046b7c
mov rdx, qword [rdi + 0x30]
mov rsi, qword [rdi + 0x38]
mov qword [rdi + 0x60], rsi
cmp rsi, 4
jb 0x180046d29
mov qword [rdi + 0x78], 4
mov eax, dword [rdx + rsi - 4]
mov dword [rdi + 0x80], eax
mov r12, qword [rsp + 0x28]
mov rcx, rdi
call fcn.1800dcba0
test al, al
je 0x180046bae
mov qword [rdi + 0x60], 0
jmp 0x180046bbc
mov rax, qword [rdi + 0x48]
test rax, rax
mov r12, qword [rsp + 0x28]
jne 0x1800470d0
mov qword [rdi + 0x78], 0
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov r15b, 2
jmp 0x180046c3d
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180046bbc
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x78]
dec rcx
cmp rcx, 7
ja 0x180047095
add rcx, qword [rsp + 0xd0]
movzx edx, byte [rcx]
movzx r13d, dl
mov esi, dword [rdi + 0x58]
mov ebp, dword [rdi + 0x5c]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rbx
mov rax, qword [r14 + 0x298]
or rax, qword [r14 + 0x2a8]
mov rcx, qword [r14 + 0x290]
or rcx, qword [r14 + 0x2a0]
or rcx, rax
je 0x180046c34
mov rcx, qword [rsp + 0xc8]
call fcn.1800fbc50
test al, al
je 0x180046c34
mov eax, 4
mov edx, eax
cmp rdx, 5
je 0x180046ccd
jmp 0x180046dfd
movzx r15d, byte [r14 + r13 + 0x90]
movzx ecx, r15b
test esi, esi
je 0x180046c9c
cmp esi, 2
jne 0x180046c73
mov rax, qword [rsp + 0x68]
test byte [rax + 0x81], 1
mov r13d, ebp
jne 0x180046c79
mov rax, r13
shl rax, 0x20
or rax, 2
mov edx, eax
cmp rdx, 5
je 0x180046ccd
jmp 0x180046dfd
add rcx, 6
jmp 0x180046c9c
mov rax, qword [rax + 0x2b0]
cmp qword [rax + 0x168], r13
jbe 0x180046ceb
lea rax, [r13*2]
add rax, r13
lea rcx, [rcx + rax*2]
add rcx, 0xc
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x40]
cmp rcx, rdx
jae 0x180047071
mov rax, qword [rax + 0x38]
mov eax, dword [rax + rcx*4]
test eax, eax
js 0x180046cf9
mov r13d, eax
mov eax, 5
mov edx, eax
cmp rdx, 5
jne 0x180046dfd
mov rcx, qword [rdi + 0x60]
mov rax, qword [rdi + 0x48]
mov rbp, qword [rdi + 0x70]
lea rdx, [rax + rcx]
cmp rdx, rbp
jb 0x18004686e
jmp 0x180046e6d
lea rcx, [rsp + 0x68]
call fcn.18010e2f0
test eax, eax
jns 0x180046cb9
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, esi
mov r8d, ebp
mov r9d, r15d
call fcn.1801fde70
mov r13, rax
shr r13, 0x20
mov edx, eax
cmp rdx, 5
je 0x180046ccd
jmp 0x180046dfd
mov rcx, qword [rsp + 0xd0]
mov r8, rsi
call fcn.1801fbfc0
mov qword [rdi + 0x78], rsi
mov rsi, qword [rdi + 0x38]
jmp 0x180046b61
mov r12d, r11d
jmp 0x180046848
add rsi, qword [rdi + 0x48]
cmp qword [rdi + 0x70], rsi
jbe 0x180046845
mov qword [rdi + 0x70], rsi
jmp 0x180046845
test eax, 0x8000000
je 0x180046f59
xor ecx, ecx
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], 1
je 0x180046da7
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, r12d
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov ecx, eax
mov dword [rsp + 0x94], ecx
mov rax, qword [rdi + 0x60]
add rax, qword [rdi + 0x48]
mov qword [rsp + 0xc0], rax
mov eax, 1
mov qword [rsp + 0xb0], rax
jmp 0x180046848
mov rax, qword [rdi + 0x60]
add rax, qword [rdi + 0x48]
cmp rax, rsi
je 0x180046848
mov rcx, rdi
mov rdx, rsi
call fcn.1800440c0
jmp 0x180046848
xor eax, eax
mov qword [rsp + 0xb0], rax
jmp 0x180046e70
shl r13, 0x20
or rdx, r13
mov rcx, rdi
call fcn.180048820
jmp 0x180045a67
lea rcx, [rsp + 0x68]
call fcn.18010e2f0
test eax, eax
jns 0x1800467ba
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
mov edx, esi
mov r8d, ebp
mov r9d, r15d
call fcn.1801fde70
mov r12, rax
shr r12, 0x20
mov edx, eax
cmp rdx, 5
je 0x1800467ce
jmp 0x180046710
mov rax, qword [rdi + 0x70]
add rbp, qword [rdi + 0x48]
cmp rax, rbp
jbe 0x180046e6a
mov qword [rdi + 0x70], rbp
jmp 0x180046e6d
mov rbp, rax
mov r12d, r13d
mov rcx, rdi
mov rdx, rbp
call fcn.1800440c0
mov rax, rbp
sub rax, qword [rdi + 0x48]
cmp rax, qword [rdi + 0x38]
jae 0x180046ecd
mov rcx, qword [rdi + 0x30]
movzx esi, byte [rcx + rax]
mov rcx, r14
mov rdx, rbx
mov r8d, r12d
mov r9d, esi
call fcn.180049a30
test eax, eax
jne 0x180046edf
mov eax, edx
test eax, 0x8000000
mov r12, qword [rsp + 0x28]
jne 0x180046ef4
test eax, 0x20000000
je 0x180046f4b
mov ecx, esi
mov rdx, rbp
call fcn.1800faad0
jmp 0x180045a67
mov rcx, r14
mov rdx, rbx
mov r8d, r12d
call fcn.180049ab0
test eax, eax
je 0x180046ee7
mov rcx, rbp
jmp 0x180045a5d
test edx, 0x8000000
mov r12, qword [rsp + 0x28]
je 0x180046f4b
mov dword [rsp + 0x94], 0
mov eax, 1
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xa0]
cmp qword [rax + 0x168], 1
je 0x180046f43
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x38]
call fcn.18010e2a0
mov rcx, rax
xor edx, edx
call fcn.1800f7530
mov dword [rsp + 0x94], eax
mov qword [rsp + 0xc0], rbp
mov rdx, qword [rdi + 0x70]
mov rcx, rbx
call fcn.180049b40
jmp 0x180046fb7
test eax, 0x40000000
jne 0x180046fa2
test eax, 0x20000000
je 0x18004644a
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
mov rax, qword [rdi + 0x38]
mov rdx, qword [rdi + 0x60]
cmp rdx, rax
jae 0x180047119
mov rax, qword [rdi + 0x30]
movzx ecx, byte [rax + rdx]
add rdx, qword [rdi + 0x48]
call fcn.1800faad0
jmp 0x180045a62
mov rdx, qword [rdi + 0x60]
add rdx, qword [rdi + 0x48]
mov rcx, rbx
call fcn.180049b40
mov r12, qword [rsp + 0x28]
mov rax, qword [rsp + 0xb0]
mov qword [r12], rax
mov rax, qword [rsp + 0xc0]
mov qword [r12 + 8], rax
mov eax, dword [rsp + 0x94]
mov dword [r12 + 0x10], eax
jmp 0x180045a74
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 + 0x68], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x78], rax
lea rax, [fcn.1801f5d30]
mov qword [rsp + 0x80], rax
lea rax, [0x180213d68]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x58], 0
lea rax, [rsp + 0x78]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 1
lea rdx, [0x180213d78]
lea rcx, [rsp + 0x38]
call fcn.180201810
lea r8, [0x180214228]
call fcn.180201960
lea rcx, str.no_in_progress_search_to_finish
lea r8, [0x180214210]
mov edx, 0x1f
call fcn.1802017f0
lea r8, [0x180213d00]
mov edx, 8
call fcn.180201960
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
mov rcx, rbp
call fcn.180201960
lea r8, [0x1802141c0]
mov rdx, rax
call fcn.180201960
mov qword [rsp + 0xb8], rax
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x68], rax
lea rax, [fcn.1801f5d30]
mov qword [rsp + 0x70], rax
lea rax, [0x180213d68]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x58], 0
lea rax, [rsp + 0x68]
jmp 0x180047052
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
lea r8, [0x180213d00]
mov edx, 8
mov rcx, rbp
call fcn.180201960
int3