Function at 0x140136650
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, 0xd8
mov ebx, r9d
mov r14, rdx
mov rdi, rcx
mov r9, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
mov esi, dword [rsp + 0x170]
movzx r15d, word [rsp + 0x168]
movzx eax, word [rsp + 0x160]
mov word [rsp + 0x56], ax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0xd0], rax
mov ebp, dword [rsp + 0x150]
mov r13d, dword [rsp + 0x148]
mov eax, dword [rsp + 0x140]
mov dword [rsp + 0xa4], eax
mov r10d, ebx
lea rax, [r10 + 1]
cmp rax, rsi
jne 0x140136715
mov dword [rsp + 0x3c], r13d
mov word [rsp + 0x36], r15w
mov r15d, ebp
mov r13, qword [r14 + 8]
mov r12, qword [r14 + 0x10]
mov rbp, r12
sub rbp, rsi
jbe 0x140136760
cmp byte [r13 + rsi], 0xbf
jg 0x140136762
lea rax, [0x140310330]
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, r12
mov r8, rsi
mov r9, r12
call sym.core::str::slice_error_fail::h1dccc998ff36422e
lea rax, [r10 + 3]
cmp rax, rsi
jne 0x140136956
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x58], rdx
mov dword [rsp + 0x3c], r13d
mov byte [rsp + 0x35], r8b
mov r13, qword [r14 + 8]
mov r12, qword [r14 + 0x10]
test ebx, ebx
je 0x1401367fb
cmp r12, r10
jbe 0x1401367f5
cmp byte [r13 + r10], 0xc0
jge 0x1401367fb
jmp 0x140136e6c
jne 0x1401366f8
lea rax, [rsi + r13]
cmp rbp, 2
jb 0x140136776
movzx eax, word [rax]
cmp eax, 0x2f2f
je 0x1401367c8
test ebx, ebx
mov ebp, r15d
je 0x140136920
cmp r12, r10
movzx r15d, word [rsp + 0x36]
jbe 0x1401367b1
cmp byte [r13 + r10], 0xbf
jg 0x1401367b3
lea rax, [0x140310348]
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, r12
mov r8, r10
mov r9, r12
call sym.core::str::slice_error_fail::h1dccc998ff36422e
jne 0x140136794
add r13, r10
sub r12, r10
cmp r12, 3
jae 0x140136936
jmp 0x14013692f
cmp r12, rsi
jbe 0x1401368ab
cmp byte [r13 + rsi], 0xbf
jg 0x1401368b1
lea rcx, str.assertion_failed:_self.is_char_boundary_idx_
lea r8, [0x14030fe10]
mov edx, 0x2c
call sym.core::panicking::panic::heacbd316ae05a694
jne 0x140136e6c
cmp r12, rsi
jbe 0x14013685e
cmp byte [r13 + rsi], 0xbf
jle 0x140136e6c
mov word [rsp + 0x36], r15w
mov dword [rsp + 0x38], ebp
mov r8, rsi
sub r8, r10
lea r15, [r10 + r13]
lea rdx, [0x140310268]
mov rcx, r15
mov rbp, r10
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140136a31
movzx r8d, byte [rsp + 0x35]
mov ebp, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x40]
movzx r15d, word [rsp + 0x36]
jmp 0x140136956
jne 0x140136e6c
mov r8, rsi
sub r8, r10
add r13, r10
lea rdx, [0x140310268]
mov rcx, r13
call sub.msvcrt.dll_memcmp
test eax, eax
movzx r8d, byte [rsp + 0x35]
mov r13d, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x40]
jne 0x140136956
lea r8, [0x140310270]
mov rcx, rsi
mov rdx, r12
call sym.core::panicking::panic_bounds_check::h4036fe14f6f497ef
jne 0x1401367dd
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x58], rdx
mov byte [rsp + 0x35], r8b
mov rax, qword [r14]
sub rax, r12
cmp rax, 1
jbe 0x140136ba4
lea rdx, [rsi + r13]
lea rcx, [rsi + r13]
add rcx, 2
mov r8, rbp
call sub.msvcrt.dll_memmove
mov word [r13 + rsi], 0x2e2f
add r12, 2
mov qword [r14 + 0x10], r12
add esi, 2
mov r13, qword [r14 + 8]
movzx r8d, byte [rsp + 0x35]
mov rdx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x48]
test ebx, ebx
mov ebp, r15d
jne 0x140136781
movzx r15d, word [rsp + 0x36]
sub r12, r10
cmp r12, 3
jae 0x140136936
mov r13d, dword [rsp + 0x3c]
jmp 0x140136956
movzx eax, word [r13]
xor eax, 0x2f3a
movzx ecx, byte [r13 + 2]
xor ecx, 0x2f
or cx, ax
mov r13d, dword [rsp + 0x3c]
je 0x140136e89
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rdx
lea rcx, [rsp + 0x60]
mov rdx, r14
mov r9d, ebx
call sym.url::parser::Parser::parse_query_and_fragment::h9716ce661c9a5269
mov eax, dword [rsp + 0x60]
cmp eax, 2
jne 0x1401369bd
movzx eax, byte [rsp + 0x64]
mov byte [rdi + 8], al
movabs rax, 0x8000000000000000
mov qword [rdi], rax
cmp qword [r14], 0
je 0x140136a1d
mov r8, qword [r14 + 8]
mov rcx, qword [0x1403460d0]
xor edx, edx
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14013f0f4
mov ecx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x64]
mov r8, qword [r14 + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [r14]
movups xmmword [rdi], xmm0
mov r8, qword [rsp + 0xd0]
movups xmm0, xmmword [r8]
movups xmmword [rdi + 0x40], xmm0
movzx r8d, byte [r8 + 0x10]
mov byte [rdi + 0x50], r8b
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rdx
mov dword [rdi + 0x24], ecx
movzx eax, word [rsp + 0x56]
mov word [rdi + 0x28], ax
mov word [rdi + 0x2a], r15w
mov dword [rdi + 0x2c], ebx
mov eax, dword [rsp + 0xa4]
mov dword [rdi + 0x30], eax
mov dword [rdi + 0x34], r13d
mov dword [rdi + 0x38], ebp
mov dword [rdi + 0x3c], esi
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x48], rbp
cmp byte [r13 + rsi], 0x2f
movzx r8d, byte [rsp + 0x35]
mov rdx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x40]
jne 0x140136ea1
lea rbp, [rsi + 1]
cmp rbp, r12
mov r10, qword [rsp + 0x48]
jae 0x140136a77
cmp byte [r13 + rbp], 0x2f
jne 0x140136a77
mov ebp, dword [rsp + 0x38]
movzx r15d, word [rsp + 0x36]
jmp 0x140136dbf
test ebx, ebx
mov rcx, r15
je 0x140136aa2
cmp r12, r10
jbe 0x140136aa0
cmp byte [rcx], 0xc0
jge 0x140136aa2
lea rcx, str.assertion_failed:_self.is_char_boundary_n__rustc_804421dff5542c9c7da5c60257b5dbc849719505library_alloc_src_string.rs
lea r8, [0x1403108e8]
mov edx, 0x2a
call sym.core::panicking::panic::heacbd316ae05a694
jne 0x140136a88
cmp byte [r13 + rsi], 0xbf
jle 0x140136eba
cmp ebx, esi
movzx r15d, word [rsp + 0x36]
ja 0x140136ed2
cmp r12, rsi
jb 0x140136ee4
mov qword [r14 + 0x10], r10
mov r10, r12
mov qword [rsp + 0x78], rsi
lea rdx, [rsp + 0x88]
sub r10, rsi
mov qword [rsp + 0x80], r10
mov qword [rsp + 0x70], r14
lea r9, [0x14031072a]
mov qword [rsp + 0x88], r9
lea rax, [0x14031072b]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x68], 1
jne 0x140136b32
mov rcx, r14
call sym._ZN97__LT_alloc..vec..Vec_LT_T_C_A_GT__u20_as_u20_alloc..vec..spec_extend..SpecExtend_LT_T_C_I_GT__GT_11spec_extend17h5849667a
movzx r8d, byte [rsp + 0x35]
mov ebp, dword [rsp + 0x38]
jmp 0x140136d4e
cmp ebx, esi
jne 0x140136b75
mov r13, r9
cmp qword [r14], r12
je 0x140136e30
mov rdx, qword [r14 + 8]
lea rcx, [rdx + rsi]
inc rcx
add rdx, rsi
mov r8, r10
call sub.msvcrt.dll_memmove
mov qword [rsp + 0x78], rbp
mov rax, qword [r14 + 0x10]
cmp rax, rbp
mov ebp, dword [rsp + 0x38]
jne 0x140136bbe
mov r12d, 1
jmp 0x140136c16
add r13, rsi
mov byte [rcx], 0x3a
inc rcx
inc qword [r14 + 0x10]
cmp rcx, r13
mov ebp, dword [rsp + 0x38]
jne 0x140136d4e
mov qword [rsp + 0x88], rax
mov eax, 1
xor r12d, r12d
jmp 0x140136c41
mov r8d, 2
mov rcx, r14
mov rdx, r12
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::hbf854d12ed2079af
mov r13, qword [r14 + 8]
jmp 0x1401368d5
mov rcx, rsi
sub rcx, rax
add rax, qword [r14 + 8]
inc rcx
xor r9d, r9d
movzx r8d, byte [rsp + 0x35]
cmp r9, 1
je 0x140136d4e
mov rdx, r9
movzx r9d, byte [r9 + r13]
mov byte [rax + rdx], r9b
inc qword [r14 + 0x10]
lea r9, [rdx + 1]
cmp rcx, r9
jne 0x140136bd4
lea rax, [rdx + r13]
inc rax
mov qword [rsp + 0x88], rax
lea r12, [0x14031072b]
sub r12, rax
je 0x140136e26
test r12, r12
js 0x140136ef6
movzx eax, byte [0x140346130]
xor ecx, ecx
mov rdx, r12
call sym.std::sys::pal::windows::alloc::process_heap_alloc::hcc99af14aa596ba0
test rax, rax
je 0x140136efb
lea rdx, [rsp + 0x88]
mov qword [rsp + 0xa8], r12
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 0
lea rcx, [rsp + 0xa8]
call sym._ZN97__LT_alloc..vec..Vec_LT_T_C_A_GT__u20_as_u20_alloc..vec..spec_extend..SpecExtend_LT_T_C_I_GT__GT_11spec_extend17h5849667a
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
test r13, r13
je 0x140136d28
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0xc8], r9
mov rbp, qword [rsp + 0x70]
mov r12, qword [rsp + 0x78]
mov r8, qword [rsp + 0x80]
lea rdx, [r8 + r12]
mov rax, qword [rbp]
sub rax, rdx
cmp rax, r13
jb 0x140136e4c
lea rax, [r12 + r13]
mov qword [rsp + 0x98], rax
mov rcx, qword [rbp + 8]
lea rdx, [rcx + r12]
add rcx, rax
call sub.msvcrt.dll_memmove
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x78], rcx
mov rax, qword [rbp + 0x10]
cmp rax, rcx
mov r9, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xc0]
je 0x140136d28
sub r12, rax
add rax, qword [rbp + 8]
add r12, r13
xor ecx, ecx
cmp r13, rcx
je 0x140136d28
movzx edx, byte [r9 + rcx]
mov byte [rax + rcx], dl
inc qword [rbp + 0x10]
inc rcx
cmp r12, rcx
jne 0x140136d0f
test r8, r8
movzx r8d, byte [rsp + 0x35]
mov ebp, dword [rsp + 0x38]
je 0x140136d4e
mov rcx, qword [0x1403460d0]
xor edx, edx
mov r8, r9
call fcn.14013f0f4
movzx r8d, byte [rsp + 0x35]
mov rax, qword [rsp + 0x68]
mov r13, qword [rsp + 0x70]
cmp rax, qword [rsp + 0x60]
mov r12, qword [rsp + 0x80]
test r12, r12
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x48]
je 0x140136daf
mov rbp, qword [r13 + 0x10]
mov rdx, qword [rsp + 0x78]
cmp rdx, rbp
je 0x140136da4
mov rcx, qword [r13 + 8]
add rdx, rcx
add rcx, rbp
mov r8, r12
call sub.msvcrt.dll_memmove
mov r10, qword [rsp + 0x48]
mov r9, qword [rsp + 0x40]
movzx r8d, byte [rsp + 0x35]
add rbp, r12
mov qword [r13 + 0x10], rbp
mov ebp, dword [rsp + 0x38]
add esi, 0xfffffffe
mov r13, qword [r14 + 8]
mov r12, qword [r14 + 0x10]
mov rdx, qword [rsp + 0x58]
test ebx, ebx
je 0x140136dd3
cmp r12, r10
jbe 0x140136e18
cmp byte [r13 + r10], 0xbf
jle 0x140136e1a
add r13, r10
sub r12, r10
cmp r12, 3
jb 0x14013692f
movzx eax, word [r13]
xor eax, 0x2f3a
movzx ecx, byte [r13 + 2]
xor ecx, 0x2f
or cx, ax
mov r13d, dword [rsp + 0x3c]
jne 0x140136956
lea rcx, [0x1403102a3]
lea r8, [0x1403102f8]
mov edx, 0x4f
call sym.core::panicking::panic::heacbd316ae05a694
je 0x140136dd0
lea rax, [0x140310288]
jmp 0x14013679b
mov eax, 1
jmp 0x140136c39
mov r8d, 1
mov rcx, r14
mov rdx, r12
mov r12, r10
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h010c4e3c86a70d79
mov r10, r12
jmp 0x140136b42
mov rcx, rbp
mov qword [rsp + 0x98], r8
mov r8, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h010c4e3c86a70d79
mov r8, qword [rsp + 0x98]
jmp 0x140136cc1
lea rax, [0x140310250]
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, r12
mov r8, r10
mov r9, rsi
call sym.core::str::slice_error_fail::h1dccc998ff36422e
lea rcx, [0x1403102a3]
lea r8, [0x140310360]
mov edx, 0x4f
call sym.core::panicking::panic::heacbd316ae05a694
mov qword [rsp + 0x60], 0
add r13, rsi
lea rdx, [rsp + 0x60]
mov rcx, r13
call sym.core::panicking::assert_failed::h4b138893bfca9d82
lea rcx, str.assertion_failed:_self.is_char_boundary_n__rustc_804421dff5542c9c7da5c60257b5dbc849719505library_alloc_src_string.rs
lea r8, [0x140310900]
mov edx, 0x2a
call sym.core::panicking::panic::heacbd316ae05a694
lea r8, [0x140310658]
mov rcx, r10
mov rdx, rsi
call sym.core::slice::index::slice_index_order_fail::hfca6cab286b1ac3a
lea r8, [0x140310658]
mov rcx, rsi
mov rdx, r12
call sym.core::slice::index::slice_end_index_len_fail::hda10811658e048af
call sym.alloc::raw_vec::capacity_overflow::h1e9621a84679a79e
mov ecx, 1
mov rdx, r12
call sym.alloc::raw_vec::handle_error::h4c8b686338b9335b
int3