Function at 0x14018f410
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, 0x108
mov rbx, r9
mov r12, r8
mov rsi, rdx
mov rdi, rcx
mov r14, qword [rsp + 0x170]
mov eax, 0x2600
mov qword [rsp + 0x78], r8
jmp 0x14018f478
inc r12
cmp ecx, 0xd
ja 0x14018f520
mov r15d, 0x110000
bt eax, ecx
jae 0x14018f520
cmp r15d, 0x110000
jne 0x14018f530
cmp r12, rbx
je 0x14018f6eb
movzx ecx, byte [r12]
test cl, cl
jns 0x14018f450
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r12 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x14018f4e7
movzx r8d, byte [r12 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x14018f4fe
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 0x14018f6eb
add r12, 4
cmp ecx, 0xd
jbe 0x14018f45c
jmp 0x14018f520
add r12, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x14018f45c
jmp 0x14018f520
add r12, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x14018f45c
nop word cs:[rax + rax]
mov r15d, ecx
cmp r15d, 0x110000
je 0x14018f478
cmp r15d, 0x2f
je 0x14018f540
cmp r15d, 0x5c
jne 0x14018f84c
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x14018f558
cmp r15d, 0x5c
jne 0x14018f558
mov rax, qword [rsi + 0x38]
xor edx, edx
call qword [rax + 0x28]
mov eax, 0x2600
mov r13, r12
jmp 0x14018f596
inc r13
cmp ecx, 0xd
ja 0x14018f630
mov edx, 0x110000
bt eax, ecx
jae 0x14018f630
cmp edx, 0x110000
jne 0x14018f63e
cmp r13, rbx
je 0x14018f73b
movzx ecx, byte [r13]
test cl, cl
jns 0x14018f570
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r13 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x14018f5fe
movzx r8d, byte [r13 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x14018f615
movzx ecx, byte [r13 + 3]
and edx, 7
shl edx, 0x12
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
or ecx, edx
cmp ecx, 0x110000
je 0x14018f73b
add r13, 4
cmp ecx, 0xd
jbe 0x14018f57c
jmp 0x14018f630
add r13, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x14018f57c
jmp 0x14018f630
add r13, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x14018f57c
nop dword [rax + rax]
mov edx, ecx
cmp edx, 0x110000
je 0x14018f596
cmp edx, 0x5c
je 0x14018f64c
cmp edx, 0x2f
jne 0x14018f73b
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x14018f663
cmp edx, 0x5c
jne 0x14018f663
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 0x14018f685
mov r8d, 7
mov rcx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov dword [rax + rdx + 3], 0x2f2f3a65
mov dword [rax + rdx], 0x656c6966
add qword [rsi + 0x10], 7
lea rcx, [rsp + 0x80]
mov rdx, r13
mov r8, rbx
call sym.url::parser::Parser::file_host::h02e665c1fd53bccc
movabs r12, 0x8000000000000000
mov rbx, qword [rsp + 0x80]
movzx ebp, byte [rsp + 0x88]
cmp rbx, r12
jne 0x14018f9fe
mov byte [rdi + 8], bpl
mov qword [rdi], r12
mov rdx, qword [rsi]
test rdx, rdx
jne 0x14018ff1c
jmp 0x14018ff8a
test r14, r14
je 0x14018f91b
cmp dword [r14 + 0x20], 0
je 0x14018fb8a
mov ebp, dword [r14 + 0x24]
mov rdx, qword [r14 + 8]
test rbp, rbp
je 0x14018fb9b
mov rax, r14
mov r13, qword [r14 + 0x10]
cmp r13, rbp
jbe 0x14018fba3
cmp byte [rdx + rbp], 0xbf
jg 0x14018fba9
mov qword [rsp + 0x68], rdx
lea rax, [0x140377b20]
jmp 0x14019019b
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 6
ja 0x14018f75d
mov r8d, 7
mov rcx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov rdx, qword [rsi + 0x10]
mov r13, qword [rsp + 0x170]
mov rax, qword [rsi + 8]
mov dword [rax + rdx + 3], 0x2f2f3a65
mov dword [rax + rdx], 0x656c6966
add qword [rsi + 0x10], 7
mov rcx, r12
mov rdx, rbx
call sym.url::parser::starts_with_windows_drive_letter_segment::h184c18cf131064d9
xor ebp, ebp
mov ecx, 7
mov qword [rsp + 0x68], rcx
test r13, r13
je 0x14018fe85
test al, al
jne 0x14018fe85
mov rcx, r13
call sym.url::Url::path::h6e71094a2d4c942a
mov r14, rdx
test rdx, rdx
je 0x1401904ee
cmp byte [rax], 0x2f
jne 0x1401904ee
mov qword [rsp + 0x70], rax
mov rbp, rax
inc rbp
dec r14
xor r13d, r13d
jmp 0x14018f7ef
add r13, rdx
inc r13
cmp r14, r13
jb 0x14018faab
mov r8, r14
sub r8, r13
mov rax, rbp
add rax, r13
cmp r8, 0xf
ja 0x14018f823
cmp r14, r13
je 0x14018faab
xor edx, edx
nop dword [rax]
cmp byte [rax + rdx], 0x2f
je 0x14018f837
inc rdx
cmp r8, rdx
jne 0x14018f810
jmp 0x14018faab
mov cl, 0x2f
mov rdx, rax
call sym.core::slice::memchr::memchr_aligned::h47fcfda46b79ef33
cmp rax, 1
jne 0x140190007
lea rcx, [rdx + r13]
cmp rcx, r14
jae 0x14018f7e0
cmp byte [rbp + rcx], 0x2f
jne 0x14018f7e0
jmp 0x14018faae
test r14, r14
je 0x14018f91b
cmp r15d, 0x23
je 0x14018fc44
cmp r15d, 0x3f
je 0x14018fc30
cmp r15d, 0x110000
je 0x14018f6f4
mov rcx, qword [rsp + 0x78]
mov rdx, rbx
call sym.url::parser::starts_with_windows_drive_letter_segment::h184c18cf131064d9
test al, al
je 0x14018ff9e
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 7
ja 0x14018f8ad
mov r8d, 8
mov rcx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
movabs rcx, 0x2f2f2f3a656c6966
mov qword [rax + rdx], rcx
add qword [rsi + 0x10], 8
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
mov r9d, 7
mov rcx, rsi
xor edx, edx
call sym.url::parser::Parser::parse_path::h976b36d7cb0f38bf
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call sym.url::parser::Parser::parse_query_and_fragment::h5f9f82b3bbd56032
jmp 0x14018f9a6
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 7
ja 0x14018f93d
mov r8d, 8
mov rcx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
movabs rcx, 0x2f2f2f3a656c6966
mov qword [rax + rdx], rcx
add qword [rsi + 0x10], 8
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
mov r9d, 7
mov rcx, rsi
xor edx, edx
call sym.url::parser::Parser::parse_path::h976b36d7cb0f38bf
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call sym.url::parser::Parser::parse_query_and_fragment::h5f9f82b3bbd56032
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x14018fefc
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rdx
mov dword [rdi + 0x24], ecx
mov word [rdi + 0x28], 0
movaps xmm0, xmmword [0x140377290]
movups xmmword [rdi + 0x2c], xmm0
mov dword [rdi + 0x3c], 7
mov byte [rdi + 0x40], 0
jmp 0x14018ff8a
movzx eax, bpl
movzx ecx, byte [rsp + 0x8f]
shl ecx, 0x10
movzx edx, word [rsp + 0x8d]
or edx, ecx
mov r14d, dword [rsp + 0x89]
shl rdx, 0x28
shl r14, 8
or r14, rdx
or r14, rax
mov r8, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x78], rax
mov r15b, 1
test r8, r8
je 0x1401901d4
mov r13, rbp
lea rcx, [rsp + 0x80]
mov rdx, r14
call sym.url::host::Host::parse::hddbd9b18538178ab
mov rdx, qword [rsp + 0x80]
mov r9, r12
add r12, 2
movzx ebp, byte [rsp + 0x88]
cmp rdx, r12
jne 0x14018fca1
mov r12, r9
test rbx, rbx
je 0x14018f6d3
mov r8d, 1
mov rcx, r14
mov rdx, rbx
call sym.__rust_dealloc
jmp 0x14018f6d3
mov rcx, r14
cmp rcx, 2
jne 0x14018fb21
movzx eax, byte [rbp]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x14018fb21
mov rax, qword [rsp + 0x70]
cmp byte [rax + 2], 0x3a
jne 0x14018fb21
mov r14, qword [rsi + 0x10]
cmp r14, qword [rsi]
jne 0x14018fadc
mov rcx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::hcf8513bd670488a6
mov rax, qword [rsi + 8]
mov byte [rax + r14], 0x2f
inc r14
mov qword [rsi + 0x10], r14
mov rax, qword [rsi]
sub rax, r14
cmp rax, 1
ja 0x14018fb0d
mov r8d, 2
mov rcx, rsi
mov rdx, r14
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov r14, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
movzx ecx, word [rbp]
mov word [rax + r14], cx
add qword [rsi + 0x10], 2
jmp 0x14018fb94
mov rax, qword [rsp + 0x170]
movzx ecx, byte [rax + 0x40]
test cl, cl
je 0x14018fb94
mov dword [rsp + 0xf4], ecx
mov edx, dword [rax + 0x34]
mov ebp, dword [rax + 0x38]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x68], rcx
mov r13, qword [rax + 0x10]
lea rax, [0x140376ff8]
cmp edx, ebp
mov qword [rsp + 0x70], rdx
ja 0x1401901a2
test rdx, rdx
je 0x14018fdfe
mov rdx, qword [rsp + 0x70]
cmp r13, rdx
jbe 0x14018fdf8
mov rcx, qword [rsp + 0x68]
cmp byte [rcx + rdx], 0xbf
jg 0x14018fdfe
jmp 0x1401901a2
mov rdx, qword [r14 + 8]
mov rbp, qword [r14 + 0x10]
jmp 0x14018fbac
xor ebp, ebp
jmp 0x14018fe85
mov r8, qword [rsi + 0x10]
xor ebp, ebp
jmp 0x14018fbd3
jne 0x14018f72a
mov r14, rax
mov rax, qword [rsi]
mov r8, qword [rsi + 0x10]
sub rax, r8
cmp rax, rbp
jae 0x14018fbd3
mov rbx, rdx
mov rcx, rsi
mov rdx, r8
mov r8, rbp
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov r8, qword [rsi + 0x10]
mov rdx, rbx
add r8, qword [rsi + 8]
mov rcx, r8
mov r8, rbp
call sym.memcpy
add rbp, qword [rsi + 0x10]
mov qword [rsi + 0x10], rbp
mov qword [rdi + 0x10], rbp
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
movzx eax, byte [r14 + 0x50]
mov byte [rdi + 0x50], al
movups xmm0, xmmword [r14 + 0x40]
movups xmmword [rdi + 0x40], xmm0
mov eax, dword [r14 + 0x3c]
mov rcx, qword [r14 + 0x18]
mov qword [rdi + 0x18], rcx
mov dword [rdi + 0x20], 0
mov ecx, dword [r14 + 0x28]
mov dword [rdi + 0x28], ecx
movups xmm0, xmmword [r14 + 0x2c]
movups xmmword [rdi + 0x2c], xmm0
mov dword [rdi + 0x3c], eax
jmp 0x14018ff8a
cmp dword [r14 + 0x18], 0
je 0x14018ffb2
lea rax, [r14 + 0x1c]
jmp 0x14018ffc1
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, rdi
mov r8, r14
mov r9, qword [rsp + 0x78]
call sym.url::parser::Parser::fragment_only::hdcefc538df1be887
jmp 0x14018ff8a
movzx eax, bpl
movzx ecx, byte [rsp + 0x8f]
shl ecx, 0x10
movzx r8d, word [rsp + 0x8d]
or r8d, ecx
mov ecx, dword [rsp + 0x89]
shl r8, 0x28
shl rcx, 8
or rcx, r8
or rcx, rax
mov rax, qword [rsp + 0x90]
lea r8, [r9 + 1]
cmp rdx, r8
jle 0x14018fd07
cmp rax, 9
jne 0x14018fd07
movabs r8, 0x736f686c61636f6c
xor r8, qword [rcx]
movzx r9d, byte [rcx + 8]
xor r9, 0x74
or r9, r8
je 0x1401901c1
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xe0], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0xf8], rax
lea rax, [sym.__url::host::Host_S__as_core::fmt::Display_::fmt::hd5a437fa33709b76]
mov qword [rsp + 0x100], rax
lea rax, [0x140377b78]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 1
mov qword [rsp + 0xa0], 0
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 1
lea rdx, fcn.14018d8c0
lea r8, [rsp + 0x80]
mov rcx, rsi
call sym.core::fmt::write::he8b7e02fe1cc02cc
test al, al
jne 0x1401904fc
mov rbp, r13
mov rdx, qword [rsp + 0xd0]
mov r13, qword [rsp + 0xd8]
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x70], rax
xor eax, eax
cmp rdx, r12
movabs rcx, 0x8000000000000000
lea rcx, [rcx + rdx + 1]
cmovl rax, rcx
test rax, rax
je 0x140190018
cmp rax, 1
jne 0x140190029
mov r12b, 2
mov qword [rsp + 0x68], rax
jmp 0x140190038
jne 0x1401901a2
test rbp, rbp
je 0x14018fe1e
cmp r13, rbp
jbe 0x14018fe18
mov rcx, qword [rsp + 0x68]
cmp byte [rcx + rbp], 0xbf
jg 0x14018fe1e
jmp 0x1401901a2
jne 0x1401901a2
sub rbp, qword [rsp + 0x70]
mov rax, qword [rsi]
mov r14, qword [rsi + 0x10]
sub rax, r14
cmp rax, rbp
jae 0x14018fe44
mov rcx, rsi
mov rdx, r14
mov r8, rbp
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov r14, qword [rsi + 0x10]
mov r13, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x68]
add rdx, qword [rsp + 0x70]
mov rcx, qword [rsi + 8]
add rcx, r14
mov r8, rbp
call sym.memcpy
add r14, rbp
mov qword [rsp + 0x68], r14
mov qword [rsi + 0x10], r14
movups xmm0, xmmword [r13 + 0x41]
movaps xmmword [rsp + 0xd0], xmm0
mov ebp, dword [rsp + 0xf4]
add r15d, 0xffffffdd
cmp r15d, 0x39
ja 0x14018fea4
movabs rax, 0x200000010001001
bt rax, r15
jae 0x14018fea4
mov r12, qword [rsp + 0x78]
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, qword [rsp + 0x68]
call sym.url::parser::Parser::parse_path::h976b36d7cb0f38bf
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call sym.url::parser::Parser::parse_query_and_fragment::h5f9f82b3bbd56032
mov eax, dword [rsp + 0x80]
cmp eax, 2
jne 0x14018ff2d
movzx eax, byte [rsp + 0x84]
mov byte [rdi + 8], al
movabs rax, 0x8000000000000000
mov qword [rdi], rax
mov rdx, qword [rsi]
test rdx, rdx
je 0x14018ff8a
mov rcx, qword [rsi + 8]
mov r8d, 1
call sym.__rust_dealloc
jmp 0x14018ff8a
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rdi + 0x41], xmm0
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rdx
mov dword [rdi + 0x24], ecx
mov word [rdi + 0x28], 0
movabs rax, 0x700000004
mov qword [rdi + 0x2c], rax
mov dword [rdi + 0x34], 7
mov rax, qword [rsp + 0x68]
mov dword [rdi + 0x38], eax
mov dword [rdi + 0x3c], eax
mov byte [rdi + 0x40], bpl
add rsp, 0x108
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp dword [r14 + 0x18], 0
je 0x140190069
lea rax, [r14 + 0x1c]
jmp 0x140190078
cmp dword [r14 + 0x20], 0
je 0x1401900be
lea rax, [r14 + 0x24]
mov ebp, dword [rax]
mov rax, qword [r14 + 8]
mov qword [rsp + 0x68], rax
test rbp, rbp
je 0x14018fff8
mov r15, r14
mov r13, qword [r14 + 0x10]
cmp r13, rbp
jbe 0x140190062
mov rax, qword [rsp + 0x68]
cmp byte [rax + rbp], 0xbf
jle 0x140190194
mov r13, rbp
jmp 0x1401900ce
mov r15, r14
mov rdx, qword [rsi + 0x10]
xor r13d, r13d
jmp 0x1401900ec
mov rcx, r14
test rax, rax
je 0x14018faae
jmp 0x14018fab4
cmp qword [rsp + 0x70], 0
setne r12b
mov qword [rsp + 0x68], rax
jmp 0x140190038
mov rax, r13
shr rax, 0x20
mov qword [rsp + 0x68], rax
mov r12b, 3
movabs rax, 0x8000000000000002
cmp rdx, rax
jl 0x14019005a
test rdx, rdx
je 0x14019005a
mov r8d, 1
mov rcx, r13
call sym.__rust_dealloc
xor r15d, r15d
jmp 0x1401901dc
je 0x1401900ce
jmp 0x140190194
cmp dword [r14 + 0x20], 0
je 0x140190352
lea rax, [r14 + 0x24]
mov ebp, dword [rax]
mov rax, qword [r14 + 8]
mov qword [rsp + 0x68], rax
test rbp, rbp
je 0x1401900af
mov r15, r14
mov r13, qword [r14 + 0x10]
cmp r13, rbp
jbe 0x14019018e
mov rax, qword [rsp + 0x68]
cmp byte [rax + rbp], 0xbf
jle 0x140190194
mov r13, rbp
jmp 0x140190362
mov r15, r14
mov rdx, qword [rsi + 0x10]
xor r13d, r13d
jmp 0x140190380
mov rax, qword [r14 + 8]
mov qword [rsp + 0x68], rax
mov r15, r14
mov r13, qword [r14 + 0x10]
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, r13
jae 0x1401900ec
mov rcx, rsi
mov r8, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov rdx, qword [rsi + 0x10]
add rdx, qword [rsi + 8]
mov rcx, rdx
mov rdx, qword [rsp + 0x68]
mov r8, r13
call sym.memcpy
add qword [rsi + 0x10], r13
mov ebp, dword [r15 + 0x2c]
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, ebp
call sym.url::parser::Parser::parse_query_and_fragment::h5f9f82b3bbd56032
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x14018fefc
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
movups xmm0, xmmword [r15 + 0x40]
movups xmmword [rdi + 0x40], xmm0
movzx r8d, byte [r15 + 0x50]
mov byte [rdi + 0x50], r8b
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rdx
mov dword [rdi + 0x24], ecx
mov eax, dword [r15 + 0x28]
mov dword [rdi + 0x28], eax
mov dword [rdi + 0x2c], ebp
movups xmm0, xmmword [r15 + 0x30]
movups xmmword [rdi + 0x30], xmm0
jmp 0x14018ff8a
je 0x140190362
lea rax, [0x140377fd0]
xor ecx, ecx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x68]
mov rdx, r13
mov r8, qword [rsp + 0x70]
mov r9, rbp
call sym.core::str::slice_error_fail::h472e6b8eeaf3c120
jmp 0x140190528
test rdx, rdx
mov rbp, r13
je 0x1401901d4
mov r8d, 1
call sym.__rust_dealloc
xor r12d, r12d
mov qword [rsp + 0x68], rax
test rbx, rbx
je 0x1401901f2
mov r8d, 1
mov rcx, r14
mov rdx, rbx
call sym.__rust_dealloc
mov rbx, qword [rsi + 0x10]
mov rax, rbx
shr rax, 0x20
jne 0x140190252
test r12b, r12b
setne byte [rsp + 0xd0]
test r15b, r15b
je 0x14019025b
cmp rbx, qword [rsi]
jne 0x14019021c
mov rcx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::hcf8513bd670488a6
mov rax, qword [rsi + 8]
mov byte [rax + rbx], 0x2f
lea rax, [rbx + 1]
mov qword [rsi + 0x10], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbp
lea r8, [rsp + 0xd0]
mov rcx, rsi
xor edx, edx
mov r9, rbx
call sym.url::parser::Parser::parse_path::h976b36d7cb0f38bf
jmp 0x14019027a
mov byte [rdi + 8], 9
jmp 0x14018ff07
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xd0]
mov rcx, rsi
xor edx, edx
mov r9, rbp
call sym.url::parser::Parser::parse_path_start::hfe0c14c56fac7665
mov r14, rax
mov r15, rdx
cmp byte [rsp + 0xd0], 0
jne 0x1401902b8
lea rcx, [rsp + 0x80]
mov r8d, 7
mov rdx, rsi
mov r9, rbx
call sym.alloc::string::String::drain::h15d2e92bbcb4a457
lea rcx, [rsp + 0x80]
call sym.__alloc::string::Drain_as_core::ops::drop::Drop_::drop::hd240c7e54ed9ed35
mov ebx, 7
xor r12d, r12d
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r14
lea rcx, [rsp + 0x80]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call sym.url::parser::Parser::parse_query_and_fragment::h5f9f82b3bbd56032
mov eax, dword [rsp + 0x80]
cmp eax, 2
je 0x14018fefc
mov ecx, dword [rsp + 0x8c]
mov rdx, qword [rsp + 0x84]
mov r8, qword [rsi + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
mov dword [rdi + 0x41], r13d
mov r8, qword [rsp + 0x68]
mov dword [rdi + 0x45], r8d
mov r8, qword [rsp + 0x70]
mov qword [rdi + 0x49], r8
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rdx
mov dword [rdi + 0x24], ecx
mov word [rdi + 0x28], 0
movabs rax, 0x700000004
mov qword [rdi + 0x2c], rax
mov dword [rdi + 0x34], 7
mov dword [rdi + 0x38], ebx
mov dword [rdi + 0x3c], ebx
mov byte [rdi + 0x40], r12b
jmp 0x14018ff8a
mov rax, qword [r14 + 8]
mov qword [rsp + 0x68], rax
mov r15, r14
mov r13, qword [r14 + 0x10]
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, r13
jae 0x140190380
mov rcx, rsi
mov r8, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6dce18a01912603c
mov rdx, qword [rsi + 0x10]
add rdx, qword [rsi + 8]
mov rcx, rdx
mov rdx, qword [rsp + 0x68]
mov r8, r13
call sym.memcpy
add r13, qword [rsi + 0x10]
mov qword [rsi + 0x10], r13
mov edx, dword [r15 + 0x3c]
mov rcx, r13
mov rax, rdx
mov qword [rsp + 0x70], rdx
sub rcx, rdx
je 0x14019041f
mov rax, qword [rsi + 8]
mov qword [rsp + 0x68], rax
mov r8, qword [rsp + 0x70]
test r8, r8
je 0x1401903e3
lea rax, [0x140377d00]
cmp r13, r8
jbe 0x14019052a
mov rdx, qword [rsp + 0x68]
cmp byte [rdx + r8], 0xc0
jl 0x14019052a
cmp rcx, 2
jne 0x140190410
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
movzx eax, byte [rax + rcx]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x140190410
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
cmp byte [rax + rcx + 1], 0x3a
je 0x14019041f
mov rcx, rsi
xor edx, edx
mov r8, qword [rsp + 0x70]
call sym.url::parser::Parser::pop_path::hc243f9cb6518987b
mov byte [rsp + 0x80], 1
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x80]
mov rcx, rsi
xor edx, edx
mov r9, qword [rsp + 0x70]
call sym.url::parser::Parser::parse_path::h976b36d7cb0f38bf
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 [r15 + 0x2c]
mov ecx, dword [r15 + 0x30]
mov r8d, dword [r15 + 0x34]
mov r10d, dword [r15 + 0x38]
lea r11, [r15 + 0x40]
movzx esi, word [r15 + 0x28]
movzx ebx, word [r15 + 0x2a]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x70]
mov dword [rsp + 0x50], eax
mov word [rsp + 0x48], bx
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, rdi
xor r8d, r8d
call sym.url::parser::Parser::with_query_and_fragment::h64b8bc251c1b3168
jmp 0x14018ff8a
lea rcx, [0x140377b08]
call sym.core::option::unwrap_failed::h38ae581b954ce070
jmp 0x140190528
lea rax, [0x140377c10]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__valueError_rustc_eeb90cda1969383f56a2637cbd3037bdf598841clibrary_alloc_src_vecmod.rs
lea r9, [0x1403776b0]
lea r8, [rsp + 0x80]
mov edx, 0x2b
call sym.core::result::unwrap_failed::h8f275d6668207d54
ud2
mov rbp, r13
jmp 0x1401901a2