Function at 0x1401a7680
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov rbx, r9
mov r12, r8
mov rsi, rdx
mov qword [rsp + 0x70], rcx
mov r14, qword [rsp + 0x160]
mov eax, 0x2600
mov qword [rsp + 0x68], r8
jmp 0x1401a76e6
inc r12
cmp ecx, 0xd
ja 0x1401a7790
mov edi, 0x110000
bt eax, ecx
jae 0x1401a7790
cmp edi, 0x110000
jne 0x1401a779e
mov edi, 0x110000
cmp r12, rbx
je 0x1401a7a58
movzx ecx, byte [r12]
test cl, cl
jns 0x1401a76c0
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r12 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1401a775a
movzx r8d, byte [r12 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x1401a7771
movzx ecx, byte [r12 + 3]
and edx, 7
shl edx, 0x12
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
or ecx, edx
cmp ecx, 0x110000
je 0x1401a7a58
add r12, 4
cmp ecx, 0xd
jbe 0x1401a76cc
jmp 0x1401a7790
add r12, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x1401a76cc
jmp 0x1401a7790
add r12, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x1401a76cc
nop word [rax + rax]
mov edi, ecx
cmp edi, 0x110000
je 0x1401a76e6
cmp edi, 0x2f
je 0x1401a77ac
cmp edi, 0x5c
jne 0x1401a7a58
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x1401a77c3
cmp edi, 0x5c
jne 0x1401a77c3
mov rax, qword [rsi + 0x38]
xor edx, edx
call qword [rax + 0x28]
mov eax, 0x2600
mov r14, r12
jmp 0x1401a77f6
inc r14
cmp ecx, 0xd
ja 0x1401a7890
mov edx, 0x110000
bt eax, ecx
jae 0x1401a7890
cmp edx, 0x110000
jne 0x1401a789e
cmp r14, rbx
je 0x1401a7abe
movzx ecx, byte [r14]
test cl, cl
jns 0x1401a77d0
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r14 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1401a785d
movzx r8d, byte [r14 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x1401a7874
movzx ecx, byte [r14 + 3]
and edx, 7
shl edx, 0x12
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
or ecx, edx
cmp ecx, 0x110000
je 0x1401a7abe
add r14, 4
cmp ecx, 0xd
jbe 0x1401a77dc
jmp 0x1401a7890
add r14, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x1401a77dc
jmp 0x1401a7890
add r14, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x1401a77dc
nop word [rax + rax]
mov edx, ecx
cmp edx, 0x110000
je 0x1401a77f6
cmp edx, 0x2f
je 0x1401a78ac
cmp edx, 0x5c
jne 0x1401a7abe
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x1401a78c3
cmp edx, 0x5c
jne 0x1401a78c3
mov rax, qword [rsi + 0x38]
xor edx, edx
call qword [rax + 0x28]
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 6
ja 0x1401a78e5
mov r8d, 7
mov rcx, rsi
call fcn.1400670d0
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov dword [rax + rdx + 3], 0x2f2f3a65
mov dword [rax + rdx], 0x656c6966
add rdx, 7
mov qword [rsi + 0x10], rdx
mov r15, rbx
sub r15, r14
je 0x1401a7deb
xor edi, edi
lea rcx, [0x140299890]
mov edx, 0x2600
movabs r9, 0x8000800800000000
xor r8d, r8d
xor ebp, ebp
mov r10, r14
nop dword [rax]
movzx r12d, byte [r10]
test r12b, r12b
js 0x1401a7960
inc r10
mov r11d, r12d
mov r12d, 1
cmp r11d, 0x3f
jbe 0x1401a79e0
jmp 0x1401a7a0d
mov r11d, r12d
and r11d, 0x1f
movzx eax, byte [r10 + 1]
and eax, 0x3f
cmp r12b, 0xdf
jbe 0x1401a79a7
movzx r13d, byte [r10 + 2]
shl eax, 6
and r13d, 0x3f
or r13d, eax
cmp r12b, 0xf0
jb 0x1401a79c0
movzx eax, byte [r10 + 3]
add r10, 4
and r11d, 7
shl r11d, 0x12
shl r13d, 6
and eax, 0x3f
or eax, r13d
jmp 0x1401a79af
add r10, 2
shl r11d, 6
or r11d, eax
mov r12d, 1
cmp r11d, 0x3f
jbe 0x1401a79e0
jmp 0x1401a7a0d
add r10, 3
shl r11d, 0xc
or r11d, r13d
mov r12d, 1
cmp r11d, 0x3f
ja 0x1401a7a0d
nop word [rax + rax]
mov eax, r11d
bt rdx, rax
jae 0x1401a7a03
mov dil, 1
add rbp, r12
jb 0x1401a8ab2
cmp r10, rbx
jne 0x1401a7930
jmp 0x1401a7cec
bt r9, rax
jb 0x1401a7cec
cmp r11d, 0x110000
je 0x1401a7cec
cmp r11d, 0x5c
je 0x1401a7cec
inc r8
je 0x1401a8ab9
cmp r11d, 0x80
jb 0x1401a79ec
mov r12d, 2
cmp r11d, 0x800
jb 0x1401a79ec
cmp r11d, 0x10000
mov r12d, 4
sbb r12, 0
jmp 0x1401a79ec
test r14, r14
je 0x1401a7bfa
cmp edi, 0x23
je 0x1401a7e14
cmp edi, 0x3f
je 0x1401a7e00
cmp edi, 0x110000
jne 0x1401a7e73
cmp dword [r14 + 0x20], 0
je 0x1401a80f0
mov ebp, dword [r14 + 0x24]
mov rax, r14
mov r14, qword [r14 + 8]
test rbp, rbp
je 0x1401a86aa
mov rdi, rax
mov r15, qword [rax + 0x10]
cmp r15, rbp
jbe 0x1401a86b5
cmp byte [r14 + rbp], 0xc0
jge 0x1401a86bb
jmp 0x1401a8b2c
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 6
ja 0x1401a7ae0
mov r8d, 7
mov rcx, rsi
call fcn.1400670d0
mov rdx, qword [rsi + 0x10]
mov r14, qword [rsp + 0x160]
mov rax, qword [rsi + 8]
mov dword [rax + rdx + 3], 0x2f2f3a65
mov dword [rax + rdx], 0x656c6966
add rdx, 7
mov qword [rsi + 0x10], rdx
mov rcx, r12
mov rdx, rbx
call fcn.1401ab730
xor r13d, r13d
mov r15d, 7
test r14, r14
je 0x1401a85c9
test al, al
jne 0x1401a85c9
mov rcx, r14
call fcn.1401a2ce0
lea rcx, [0x1402996c8]
test rdx, rdx
je 0x1401a8aca
mov r14, rax
cmp byte [rax], 0x2f
jne 0x1401a8aca
dec rdx
inc r14
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rdx
lea rax, [rsp + 0x90]
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], rdx
movabs rcx, 0x2f0000002f
mov qword [rsp + 0xb0], rcx
mov byte [rsp + 0xb8], 1
mov word [rsp + 0xc0], 1
lea rcx, [rsp + 0xc8]
mov rdx, rax
call fcn.1400573a0
cmp qword [rsp + 0xc8], 0
je 0x1401a7f4d
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x80]
sub rax, rcx
add r14, rcx
cmp rax, 2
je 0x1401a7f8f
jmp 0x1401a7ff9
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 7
ja 0x1401a7c1c
mov r8d, 8
mov rcx, rsi
call fcn.1400670d0
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
movabs rcx, 0x2f2f2f3a656c6966
mov qword [rax + rdx], rcx
add rdx, 8
mov qword [rsi + 0x10], rdx
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
mov r9d, 7
mov rcx, rsi
xor edx, edx
call fcn.1401a6420
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.1401aa450
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x1401a87fc
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r9], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rdx
mov dword [r9 + 0x24], ecx
mov word [r9 + 0x28], 0
movaps xmm0, xmmword [0x1401fe750]
movups xmmword [r9 + 0x2c], xmm0
mov dword [r9 + 0x3c], 7
mov byte [r9 + 0x40], 0
jmp 0x1401a890d
mov qword [rsp + 0xc8], r14
mov qword [rsp + 0xd0], rbx
test dil, 1
jne 0x1401a7f1b
mov rax, r14
test r8, r8
je 0x1401a8073
mov ecx, 0x2600
mov rax, r14
cmp rax, rbx
je 0x1401a8070
dec r8
jmp 0x1401a7d53
add rax, 2
shl r9d, 6
or r9d, r11d
mov edx, r9d
nop word cs:[rax + rax]
cmp edx, 0xd
ja 0x1401a7d62
bt ecx, edx
jae 0x1401a7d62
cmp rax, rbx
je 0x1401a8070
movzx edx, byte [rax]
test dl, dl
js 0x1401a7d70
inc rax
cmp edx, 0xd
jbe 0x1401a7d45
cmp edx, 0x110000
je 0x1401a7d4a
jmp 0x1401a7ddd
mov r9d, edx
and r9d, 0x1f
movzx r11d, byte [rax + 1]
and r11d, 0x3f
cmp dl, 0xdf
jbe 0x1401a7d28
movzx r10d, byte [rax + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp dl, 0xf0
jb 0x1401a7dc4
movzx edx, byte [rax + 3]
add rax, 4
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
cmp edx, 0x110000
jne 0x1401a7d40
jmp 0x1401a8073
add rax, 3
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
cmp edx, 0xd
jbe 0x1401a7d45
jmp 0x1401a7d62
test r8, r8
jne 0x1401a7d1a
jmp 0x1401a8073
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xc8], rbx
jmp 0x1401a809f
cmp dword [r14 + 0x18], 0
je 0x1401a80b4
lea rax, [r14 + 0x1c]
jmp 0x1401a80c3
mov rax, qword [rsi + 0x40]
mov qword [rsp + 0xc0], rax
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmm2, xmmword [rsi + 0x20]
movups xmm3, xmmword [rsi + 0x30]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0x80]
mov rcx, qword [rsp + 0x70]
mov r8, r14
mov r9, qword [rsp + 0x68]
call fcn.1401a9ae0
jmp 0x1401a890d
mov rcx, qword [rsp + 0x68]
mov rdx, rbx
call fcn.1401ab730
test al, al
je 0x1401a805c
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 7
ja 0x1401a7eaa
mov r8d, 8
mov rcx, rsi
call fcn.1400670d0
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
movabs rcx, 0x2f2f2f3a656c6966
mov qword [rax + rdx], rcx
add rdx, 8
mov qword [rsi + 0x10], rdx
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
mov r9d, 7
mov rcx, rsi
xor edx, edx
call fcn.1401a6420
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.1401aa450
jmp 0x1401a7c88
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0xc8]
call fcn.1401aba70
mov rbp, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov r15, qword [rsp + 0x90]
jmp 0x1401a8126
cmp byte [rsp + 0xc1], 0
jne 0x1401a8ac3
cmp byte [rsp + 0xc0], 0
mov r14, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
jne 0x1401a7f7e
cmp rax, r14
je 0x1401a8ac3
sub rax, r14
add r14, qword [rsp + 0x90]
cmp rax, 2
jne 0x1401a7ff9
movzx eax, byte [r14]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x1401a7ff9
cmp byte [r14 + 1], 0x3a
jne 0x1401a7ff9
mov rbp, qword [rsi + 0x10]
cmp rbp, qword [rsi]
jne 0x1401a7fb3
mov rcx, rsi
call fcn.140039bb0
mov rax, qword [rsi + 8]
mov byte [rax + rbp], 0x2f
inc rbp
mov qword [rsi + 0x10], rbp
mov rax, qword [rsi]
sub rax, rbp
cmp rax, 1
ja 0x1401a7fe3
mov r8d, 2
mov rcx, rsi
mov rdx, rbp
call fcn.1400670d0
mov rbp, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
movzx ecx, word [r14]
mov word [rax + rbp], cx
add rbp, 2
mov qword [rsi + 0x10], rbp
jmp 0x1401a8054
mov rax, qword [rsp + 0x160]
movzx r13d, byte [rax + 0x40]
test r13b, r13b
je 0x1401a8054
mov ecx, dword [rax + 0x34]
mov ebp, dword [rax + 0x38]
mov r14, qword [rax + 8]
mov r15, qword [rax + 0x10]
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.0_srclib.rs
cmp ecx, ebp
mov qword [rsp + 0x78], rcx
ja 0x1401a8b3a
test rcx, rcx
je 0x1401a8555
mov rcx, qword [rsp + 0x78]
cmp r15, rcx
jbe 0x1401a854f
cmp byte [r14 + rcx], 0xc0
jge 0x1401a8555
jmp 0x1401a8b3a
xor r13d, r13d
jmp 0x1401a85c9
cmp dword [r14 + 0x18], 0
je 0x1401a873b
lea rax, [r14 + 0x1c]
jmp 0x1401a874a
mov rax, rbx
mov qword [rsp + 0xc8], rax
test rbp, rbp
je 0x1401a809f
cmp rbp, r15
jae 0x1401a811d
cmp byte [r14 + rbp], 0xbf
jle 0x1401a8ae4
mov r13, r14
mov r15, rbp
jmp 0x1401a8126
mov r14, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
jmp 0x1401a8240
cmp dword [r14 + 0x20], 0
je 0x1401a8780
lea rax, [r14 + 0x24]
mov ebp, dword [rax]
mov rax, r14
mov r14, qword [r14 + 8]
test rbp, rbp
je 0x1401a8103
mov rdi, rax
mov r15, qword [rax + 0x10]
cmp r15, rbp
jbe 0x1401a8112
cmp byte [r14 + rbp], 0xbf
jle 0x1401a8ad4
mov r15, rbp
jmp 0x1401a878e
mov rax, r14
mov r14, qword [r14 + 8]
mov rdi, rax
mov rbp, qword [rax + 0x10]
jmp 0x1401a86bb
mov rdi, rax
mov r12, qword [rsi + 0x10]
xor r15d, r15d
jmp 0x1401a87af
je 0x1401a878e
jmp 0x1401a8ad4
jne 0x1401a8ae4
mov r13, r14
test r15, r15
je 0x1401a8177
cmp r15, 2
jne 0x1401a817f
movzx eax, byte [r13]
and al, 0xdf
add al, 0xbf
mov r15d, 2
cmp al, 0x19
ja 0x1401a8188
movzx eax, byte [r13 + 1]
cmp eax, 0x3a
je 0x1401a8153
cmp eax, 0x7c
jne 0x1401a8188
mov rax, rbp
xor r15d, r15d
mov bpl, 1
test dil, 1
je 0x1401a8246
test rax, rax
je 0x1401a8246
mov r12d, 1
jmp 0x1401a81ce
mov r12d, 1
jmp 0x1401a81a5
test r15, r15
js 0x1401a8aed
movzx eax, byte [0x1402f9139]
xor ecx, ecx
mov rdx, r15
call fcn.1401860d0
test rax, rax
je 0x1401a8add
mov r12, rax
mov rcx, r12
mov rdx, r13
mov r8, r15
call sub.msvcrt.dll_memcpy
mov r14, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
test dil, 1
je 0x1401a81df
test rbp, rbp
je 0x1401a81df
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r13
call fcn.1401d02bc
test r15, r15
je 0x1401a8240
lea rcx, [rsp + 0x80]
mov rdx, r12
mov r8, r15
call fcn.1401a1600
movabs r15, 0x8000000000000000
mov rax, qword [rsp + 0x80]
lea rcx, [r15 + 2]
movzx edi, byte [rsp + 0x88]
cmp rax, rcx
jne 0x1401a8405
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r12
call fcn.1401d02bc
mov rax, qword [rsp + 0x70]
mov byte [rax + 8], dil
mov qword [rax], r15
jmp 0x1401a88f5
mov bpl, 1
xor r15d, r15d
mov qword [rsp + 0x68], rax
mov r12, qword [rsi + 0x10]
mov rax, r12
shr rax, 0x20
jne 0x1401a88df
test r15b, r15b
setne byte [rsp + 0xc8]
test bpl, bpl
je 0x1401a82ac
cmp r12, qword [rsi]
jne 0x1401a8279
mov rcx, rsi
call fcn.140039bb0
mov rax, qword [rsi + 8]
mov byte [rax + r12], 0x2f
lea rax, [r12 + 1]
mov qword [rsi + 0x10], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r14
lea r8, [rsp + 0xc8]
mov rcx, rsi
xor edx, edx
mov r9, r12
call fcn.1401a6420
jmp 0x1401a82c6
mov qword [rsp + 0x20], rbx
lea r8, [rsp + 0xc8]
mov rcx, rsi
xor edx, edx
mov r9, r14
call fcn.1401ab4f0
cmp byte [rsp + 0xc8], 0
jne 0x1401a8364
cmp r12, 7
jb 0x1401a8afc
mov r9, qword [rsi + 0x10]
cmp r9, r12
jb 0x1401a8b15
mov rcx, qword [rsi + 8]
cmp r9, 8
jb 0x1401a82ff
cmp byte [rcx + 7], 0xbf
jle 0x1401a8b8c
mov rbx, rdx
mov r14, rax
cmp r9, r12
jbe 0x1401a8315
cmp byte [rcx + r12], 0xbf
jle 0x1401a8ba1
lea rax, [rcx + 7]
add rcx, r12
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], 7
mov qword [rsp + 0xa0], r12
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rcx
lea rcx, [rsp + 0x80]
call fcn.1400262a0
mov r12d, 7
xor r15d, r15d
mov rax, r14
mov rdx, rbx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.1401aa450
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x1401a87fc
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r9], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rdx
mov dword [r9 + 0x24], ecx
mov word [r9 + 0x28], 0
movabs rax, 0x700000004
mov qword [r9 + 0x2c], rax
mov dword [r9 + 0x34], 7
mov dword [r9 + 0x38], r12d
mov dword [r9 + 0x3c], r12d
mov byte [r9 + 0x40], r15b
mov dword [r9 + 0x41], r13d
mov rax, qword [rsp + 0x68]
mov dword [r9 + 0x45], eax
mov qword [r9 + 0x49], rdi
jmp 0x1401a890d
movzx edx, dil
movzx ecx, byte [rsp + 0x8f]
shl ecx, 0x10
movzx r9d, word [rsp + 0x8d]
or r9d, ecx
mov r8d, dword [rsp + 0x89]
mov rcx, qword [rsp + 0x90]
shl r9, 0x28
shl r8, 8
or r8, r9
or r8, rdx
lea rdx, [r15 + 1]
cmp rax, rdx
jle 0x1401a846c
cmp rcx, 9
jne 0x1401a846c
movabs rdx, 0x736f686c61636f6c
xor rdx, qword [r8]
movzx r9d, byte [r8 + 8]
xor r9, 0x74
or r9, rdx
je 0x1401a8a8a
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xd8], rcx
lea rax, [rsp + 0xc8]
mov qword [rsp + 0xe0], rax
lea rax, [0x1401aacf0]
mov qword [rsp + 0xe8], rax
lea rax, [0x14029a6c0]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 1
mov qword [rsp + 0xa0], 0
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 1
lea rdx, [0x140299038]
lea r8, [rsp + 0x80]
mov rcx, rsi
call fcn.1400295d0
test al, al
jne 0x1401a8b54
mov rax, qword [rsp + 0xc8]
mov r13, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
lea rdx, [r15 + 2]
xor ecx, ecx
cmp rax, rdx
lea rdx, [r15 + rax + 1]
cmovl rcx, rdx
test rcx, rcx
je 0x1401a8879
cmp rcx, 1
jne 0x1401a8887
mov r15b, 2
mov qword [rsp + 0x68], rcx
jmp 0x1401a8896
jne 0x1401a8b3a
test rbp, rbp
je 0x1401a8571
cmp r15, rbp
jbe 0x1401a856b
cmp byte [r14 + rbp], 0xbf
jg 0x1401a8571
jmp 0x1401a8b3a
jne 0x1401a8b3a
sub rbp, qword [rsp + 0x78]
mov rax, qword [rsi]
mov r15, qword [rsi + 0x10]
sub rax, r15
cmp rax, rbp
jae 0x1401a8597
mov rcx, rsi
mov rdx, r15
mov r8, rbp
call fcn.1400670d0
mov r15, qword [rsi + 0x10]
add r14, qword [rsp + 0x78]
mov rcx, qword [rsi + 8]
add rcx, r15
mov rdx, r14
mov r8, rbp
call sub.msvcrt.dll_memcpy
add r15, rbp
mov qword [rsi + 0x10], r15
mov rax, qword [rsp + 0x160]
movups xmm0, xmmword [rax + 0x41]
movaps xmmword [rsp + 0xe0], xmm0
add edi, 0xffffffdd
cmp edi, 0x39
ja 0x1401a85e6
movabs rax, 0x200000010001001
bt rax, rdi
jae 0x1401a85e6
mov r12, qword [rsp + 0x68]
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea r8, [rsp + 0x80]
mov rcx, rsi
xor edx, edx
mov r9, r15
call fcn.1401a6420
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.1401aa450
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x1401a87fc
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r9], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [r9 + 0x41], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rdx
mov dword [r9 + 0x24], ecx
mov word [r9 + 0x28], 0
movabs rax, 0x700000004
mov qword [r9 + 0x2c], rax
mov dword [r9 + 0x34], 7
mov dword [r9 + 0x38], r15d
mov dword [r9 + 0x3c], r15d
mov byte [r9 + 0x40], r13b
jmp 0x1401a890d
mov rdi, rax
mov rbx, qword [rsi + 0x10]
xor ebp, ebp
jmp 0x1401a86dc
jne 0x1401a8b2c
mov rax, qword [rsi]
mov rbx, qword [rsi + 0x10]
sub rax, rbx
cmp rax, rbp
jae 0x1401a86dc
mov rcx, rsi
mov rdx, rbx
mov r8, rbp
call fcn.1400670d0
mov rbx, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, rbx
mov rdx, r14
mov r8, rbp
call sub.msvcrt.dll_memcpy
add rbx, rbp
mov qword [rsi + 0x10], rbx
mov rdx, qword [rsp + 0x70]
mov qword [rdx + 0x10], rbx
movups xmm0, xmmword [rsi]
movups xmmword [rdx], xmm0
movzx eax, byte [rdi + 0x50]
mov byte [rdx + 0x50], al
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [rdx + 0x40], xmm0
mov eax, dword [rdi + 0x3c]
mov rcx, qword [rdi + 0x18]
mov qword [rdx + 0x18], rcx
mov dword [rdx + 0x20], 0
mov ecx, dword [rdi + 0x28]
mov dword [rdx + 0x28], ecx
movups xmm0, xmmword [rdi + 0x2c]
movups xmmword [rdx + 0x2c], xmm0
mov dword [rdx + 0x3c], eax
jmp 0x1401a890d
cmp dword [r14 + 0x20], 0
je 0x1401a8922
lea rax, [r14 + 0x24]
mov ebp, dword [rax]
mov rax, r14
mov r14, qword [r14 + 8]
test rbp, rbp
je 0x1401a8778
mov rdi, rax
mov r15, qword [rax + 0x10]
cmp r15, rbp
jbe 0x1401a886b
cmp byte [r14 + rbp], 0xbf
jg 0x1401a8930
jmp 0x1401a8ad4
mov rdi, rax
jmp 0x1401a8930
mov rax, r14
mov r14, qword [r14 + 8]
mov rdi, rax
mov r15, qword [rax + 0x10]
mov rax, qword [rsi]
mov r12, qword [rsi + 0x10]
sub rax, r12
cmp rax, r15
jae 0x1401a87af
mov rcx, rsi
mov rdx, r12
mov r8, r15
call fcn.1400670d0
mov r12, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, r12
mov rdx, r14
mov r8, r15
call sub.msvcrt.dll_memcpy
add r12, r15
mov qword [rsi + 0x10], r12
mov ebp, dword [rdi + 0x2c]
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, ebp
call fcn.1401aa450
mov eax, dword [rsp + 0x80]
cmp eax, 2
jne 0x1401a8811
movzx eax, byte [rsp + 0x84]
mov rcx, qword [rsp + 0x70]
mov byte [rcx + 8], al
jmp 0x1401a88e8
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r9], xmm0
movups xmm0, xmmword [rdi + 0x40]
movups xmmword [r9 + 0x40], xmm0
movzx r8d, byte [rdi + 0x50]
mov byte [r9 + 0x50], r8b
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rdx
mov dword [r9 + 0x24], ecx
mov eax, dword [rdi + 0x28]
mov dword [r9 + 0x28], eax
mov dword [r9 + 0x2c], ebp
movups xmm0, xmmword [rdi + 0x30]
movups xmmword [r9 + 0x30], xmm0
jmp 0x1401a890d
jne 0x1401a8ad4
mov rbp, r15
jmp 0x1401a8930
test rdi, rdi
setne r15b
mov qword [rsp + 0x68], rcx
jmp 0x1401a8896
mov rcx, r13
shr rcx, 0x20
mov qword [rsp + 0x68], rcx
mov r15b, 3
movabs rcx, 0x8000000000000002
cmp rax, rcx
jl 0x1401a88bb
test rax, rax
je 0x1401a88bb
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r13
call fcn.1401d02bc
xor ebp, ebp
mov rcx, qword [0x1402f90f8]
xor edx, edx
mov r8, r12
call fcn.1401d02bc
mov r12, qword [rsi + 0x10]
mov rax, r12
shr rax, 0x20
je 0x1401a825c
mov rcx, qword [rsp + 0x70]
mov byte [rcx + 8], 9
movabs rax, 0x8000000000000000
mov qword [rcx], rax
cmp qword [rsi], 0
je 0x1401a890d
mov r8, qword [rsi + 8]
mov rcx, qword [0x1402f90f8]
xor edx, edx
call fcn.1401d02bc
nop
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, r14
mov r14, qword [r14 + 8]
mov rdi, rax
mov rbp, qword [rax + 0x10]
mov rax, qword [rsi]
mov r15, qword [rsi + 0x10]
sub rax, r15
cmp rax, rbp
jae 0x1401a8951
mov rcx, rsi
mov rdx, r15
mov r8, rbp
call fcn.1400670d0
mov r15, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, r15
mov rdx, r14
mov r8, rbp
call sub.msvcrt.dll_memcpy
add r15, rbp
mov qword [rsi + 0x10], r15
mov r12d, dword [rdi + 0x3c]
mov rcx, r15
sub rcx, r12
je 0x1401a89c2
mov r14, qword [rsi + 8]
test r12, r12
je 0x1401a899a
lea rax, [0x1402999c8]
cmp r15, r12
jbe 0x1401a8b82
cmp byte [r14 + r12], 0xc0
jl 0x1401a8b82
cmp rcx, 2
jne 0x1401a89b5
movzx eax, byte [r14 + r12]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x1401a89b5
cmp byte [r14 + r12 + 1], 0x3a
je 0x1401a89c2
mov rcx, rsi
xor edx, edx
mov r8, r12
call fcn.1401aaac0
mov byte [rsp + 0x80], 1
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
mov rcx, rsi
xor edx, edx
mov r9, r12
call fcn.1401a6420
mov rcx, qword [rsi + 0x40]
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmm2, xmmword [rsi + 0x20]
movups xmm3, xmmword [rsi + 0x30]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
mov r9d, dword [rdi + 0x2c]
mov ecx, dword [rdi + 0x30]
mov r8d, dword [rdi + 0x34]
mov r10d, dword [rdi + 0x38]
lea r11, [rdi + 0x40]
movzx esi, word [rdi + 0x28]
movzx edi, word [rdi + 0x2a]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x50], r12d
mov word [rsp + 0x48], di
mov word [rsp + 0x40], si
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x20], ecx
lea rdx, [rsp + 0x80]
mov rcx, qword [rsp + 0x70]
xor r8d, r8d
call fcn.1401a5f20
jmp 0x1401a890d
mov bpl, 1
test rax, rax
je 0x1401a8aa5
mov rcx, qword [0x1402f90f8]
xor r15d, r15d
xor edx, edx
call fcn.1401d02bc
jmp 0x1401a8aa8
xor r15d, r15d
mov qword [rsp + 0x68], rax
jmp 0x1401a88bd
lea rcx, [0x1402998a8]
call fcn.14002f520
jmp 0x1401a8bb9
lea rcx, [0x1402996e0]
call fcn.14002c4a0
jmp 0x1401a8bb9
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.0_srclib.rs
jmp 0x1401a8b33
mov ecx, 1
jmp 0x1401a8aef
lea rax, [0x140299878]
jmp 0x1401a8b33
xor ecx, ecx
mov rdx, r15
call fcn.1400257c0
jmp 0x1401a8bb9
lea r8, [0x140299210]
mov ecx, 7
mov rdx, r12
call fcn.140029e30
jmp 0x1401a8bb9
lea r8, [0x140299210]
mov rcx, r12
mov rdx, r9
call fcn.140029060
jmp 0x1401a8bb9
lea rax, [0x1402996f8]
xor ecx, ecx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, r15
mov r8, qword [rsp + 0x78]
mov r9, rbp
call fcn.14002d420
jmp 0x1401a8bb9
lea rax, [0x140299860]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1402990d8]
lea r8, [rsp + 0x80]
mov edx, 0x2b
call fcn.14002b190
jmp 0x1401a8bb9
mov qword [rsp + 0x78], r12
mov rbp, r15
jmp 0x1401a8b3a
lea r8, [0x140299258]
mov edx, 0x2e
lea rcx, str.assertion_failed:_self.is_char_boundary_start_
jmp 0x1401a8bb4
lea r8, [0x1402992a0]
mov edx, 0x2c
lea rcx, str.assertion_failed:_self.is_char_boundary_end_
call fcn.1400293d0
ud2