Function at 0x140117070
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 r13, r8
mov rsi, rdx
mov r12, rcx
mov rbp, qword [rsp + 0x168]
mov r15b, byte [rsp + 0x160]
lea rdi, [rsp + 0xa0]
mov qword [rdi], r8
mov qword [rsp + 0x70], r9
mov qword [rdi + 8], r9
mov rcx, rdi
call fcn.140114e78
mov rbx, qword [rdi]
mov r14, qword [rdi + 8]
cmp eax, 0x3e
jle 0x140117115
cmp eax, 0x3f
je 0x140117272
cmp eax, 0x5c
je 0x140117127
cmp eax, 0x110000
jne 0x1401172b5
cmp dword [rbp + 0x20], 0
je 0x14011731e
mov r9d, dword [rbp + 0x24]
mov rdx, qword [rbp + 8]
test r9, r9
je 0x1401175ec
mov rax, qword [rbp + 0x10]
cmp rax, r9
jbe 0x1401175f1
cmp byte [rdx + r9], 0xbf
jg 0x1401175f7
jmp 0x1401178e5
cmp eax, 0x23
je 0x140117285
cmp eax, 0x2f
jne 0x1401172b5
xor ebp, ebp
lea rdi, [rsp + 0xa0]
mov r15, r13
mov r13, qword [rsp + 0x70]
mov qword [rsp + 0x78], r15
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xa8], r13
mov rcx, rdi
call fcn.140114e78
cmp eax, 0x5c
je 0x140117160
cmp eax, 0x2f
jne 0x140117174
mov r15, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xa8]
inc ebp
jmp 0x14011713e
cmp ebp, 1
jbe 0x1401172d0
mov rax, qword [rsi + 0x10]
test rax, rax
mov r14, qword [rsp + 0x168]
je 0x1401173fd
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x98], r12
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0xe8], rax
xor edi, edi
lea rbx, [rsp + 0x80]
mov qword [rbx], rdi
mov qword [rbx + 8], 1
mov qword [rbx + 0x10], rdi
lea r14, [rsp + 0xa0]
mov rax, qword [rsp + 0x78]
mov qword [r14], rax
mov rax, qword [rsp + 0x70]
mov qword [r14 + 8], rax
mov byte [r14 + 0x10], 0
mov r12d, 1
mov rcx, r14
call fcn.140114e78
mov ebp, eax
cmp eax, 0x2f
je 0x140117211
cmp ebp, 0x5c
je 0x140117211
cmp ebp, 0x110000
je 0x14011724f
mov byte [rsp + 0xb0], 1
jmp 0x140117245
cmp rdi, qword [rsp + 0x80]
jne 0x140117236
mov rcx, rbx
mov rdx, rdi
call fcn.140113d70
mov r12, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x90]
mov byte [r12 + rdi], bpl
inc rdi
mov qword [rsp + 0x90], rdi
cmp ebp, 0x2f
je 0x1401171eb
cmp ebp, 0x5c
je 0x1401171eb
cmp rdi, 2
jne 0x1401173af
mov rax, qword [rsp + 0x88]
movzx eax, word [rax]
cmp eax, 0x2f2f
sete dil
jmp 0x1401173b1
cmp dword [rbp + 0x18], 0
je 0x14011732b
lea rax, [rbp + 0x1c]
jmp 0x140117339
lea rdx, [rsp + 0xa0]
mov ecx, 9
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov r8, rbp
mov r9, r13
call fcn.14011a4d7
jmp 0x1401178d0
cmp dword [rbp + 0x18], 0
mov qword [rsp + 0x78], r13
je 0x140117365
mov r14d, r15d
lea rax, [rbp + 0x1c]
jmp 0x140117376
mov r13, qword [rsp + 0x168]
mov r15d, dword [r13 + 0x38]
mov rdx, qword [r13 + 8]
test r15, r15
je 0x14011743b
mov rax, qword [r13 + 0x10]
cmp rax, r15
jbe 0x140117435
cmp byte [rdx + r15], 0xbf
jg 0x14011743b
lea rcx, str.C:Userskylef.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.3.1_srclib.rs
mov qword [rsp + 0x20], rcx
mov rcx, rdx
mov rdx, rax
xor r8d, r8d
mov r9, r15
jmp 0x1401178fa
mov rdx, qword [rbp + 8]
mov r9, qword [rbp + 0x10]
jmp 0x1401175f7
cmp dword [rbp + 0x20], 0
je 0x140117651
lea rax, [rbp + 0x24]
mov r9d, dword [rax]
mov rdx, qword [rbp + 8]
test r9, r9
je 0x14011739f
mov r8, qword [rbp + 0x10]
cmp r8, r9
jbe 0x140117518
cmp byte [rdx + r9], 0xbf
jle 0x14011751e
mov r8, r9
jmp 0x140117659
cmp dword [rbp + 0x20], 0
je 0x140117735
mov r14d, r15d
lea rax, [rbp + 0x24]
mov r9d, dword [rax]
mov rdi, qword [rbp + 8]
mov r13, qword [rbp + 0x10]
test r9, r9
je 0x1401173a7
cmp r13, r9
jbe 0x140117535
cmp byte [rdi + r9], 0xbf
jg 0x140117743
jmp 0x140117786
xor r8d, r8d
jmp 0x140117659
xor r9d, r9d
jmp 0x140117743
xor edi, edi
mov r12, qword [rsp + 0x98]
cmp qword [rsp + 0x80], 0
mov r14, qword [rsp + 0x168]
je 0x1401173e3
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
test dil, dil
mov rcx, qword [rsp + 0xf0]
jne 0x1401173fd
mov dl, 3
mov rax, qword [rsp + 0xe8]
call qword [rax + 0x28]
mov ebx, dword [r14 + 0x28]
mov r9d, ebx
mov rdx, qword [r14 + 8]
inc r9d
je 0x140117546
mov rax, qword [r14 + 0x10]
cmp rax, r9
jbe 0x140117540
cmp byte [rdx + r9], 0xbf
jg 0x140117546
lea rcx, str.C:Userskylef.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.3.1_srclib.rs
jmp 0x1401178ec
jne 0x140117301
lea rdi, [rsi + 0x28]
mov rcx, rdi
mov r8, r15
call fcn.140086f75
mov rdx, qword [rsi + 0x38]
cmp rdx, qword [rsi + 0x28]
jne 0x140117460
mov rcx, rdi
call fcn.140113d70
mov rdx, qword [rsi + 0x38]
mov rax, qword [rsi + 0x30]
mov byte [rax + rdx], 0x2f
inc rdx
mov qword [rsi + 0x38], rdx
lea r8, [rsp + 0xa0]
mov byte [r8], 1
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rbx
mov rcx, rsi
mov bpl, byte [rsp + 0x160]
mov edx, ebp
mov r9, r15
call fcn.1401199bc
lea r8, [rsp + 0xa0]
mov ecx, 9
mov rdi, r8
rep movsq qword [rdi], qword [rsi]
mov r9d, dword [r13 + 0x28]
mov ecx, dword [r13 + 0x2c]
mov r10d, dword [r13 + 0x30]
mov r11d, dword [r13 + 0x34]
mov bl, byte [r13 + 0x50]
lea rsi, [rsp + 0x80]
mov byte [rsi + 0x10], bl
movups xmm0, xmmword [r13 + 0x40]
movaps xmmword [rsi], xmm0
movzx edi, word [r13 + 0x3c]
movzx ebx, word [r13 + 0x3e]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x50], r15d
mov word [rsp + 0x48], bx
mov word [rsp + 0x40], di
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], ecx
mov rcx, r12
mov rdx, r8
mov r8d, ebp
jmp 0x1401178cb
je 0x140117659
lea rax, str.C:Userskylef.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.3.1_srclib.rs
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov rdx, r8
jmp 0x1401178f7
je 0x140117740
jmp 0x140117786
jne 0x140117429
lea rcx, [rsi + 0x28]
mov r8, r9
call fcn.140086f75
lea r8, [rsp + 0xa0]
mov rax, qword [rsp + 0x78]
mov qword [r8], rax
mov rax, qword [rsp + 0x70]
mov qword [r8 + 8], rax
lea rcx, str.__file:__
mov edx, 2
call fcn.140117901
test al, al
je 0x1401175b7
mov r9, qword [rsp + 0xa8]
test r9, r9
je 0x1401175b7
lea rdx, [rsp + 0xa0]
mov r8, qword [rdx]
mov ecx, 9
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
mov dword [rsp + 0x28], ebx
mov al, byte [rsp + 0x160]
mov byte [rsp + 0x20], al
mov rcx, r12
jmp 0x1401175e2
lea rdx, [rsp + 0xa0]
mov ecx, 9
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
mov dword [rsp + 0x28], ebx
mov al, byte [rsp + 0x160]
mov byte [rsp + 0x20], al
mov rcx, r12
mov r8, r15
mov r9, r13
call fcn.14011870a
jmp 0x1401178d0
xor r9d, r9d
jmp 0x1401175f7
jne 0x1401178e5
lea rcx, [rsi + 0x28]
mov r8, r9
call fcn.140086f75
mov rax, qword [rsi + 0x38]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [rsi + 0x28]
movups xmmword [r12], xmm0
movups xmm0, xmmword [rbp + 0x28]
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [r12 + 0x40], xmm1
mov al, byte [rbp + 0x50]
mov byte [r12 + 0x50], al
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x38]
mov qword [r12 + 0x18], rax
mov dword [r12 + 0x20], 0
movups xmmword [r12 + 0x28], xmm0
mov qword [r12 + 0x38], rcx
jmp 0x1401178d0
mov rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x10]
lea rbx, [rsi + 0x28]
mov rcx, rbx
call fcn.140086f75
mov edi, dword [rbp + 0x28]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
lea r14, [rsp + 0xa0]
mov rcx, r14
mov rdx, rsi
mov r8d, r15d
mov r9d, edi
call fcn.14011a9b7
mov eax, dword [r14]
cmp eax, 2
jne 0x1401176ce
mov al, byte [rsp + 0xa4]
mov byte [r12], al
mov dword [r12 + 0x18], 2
cmp qword [rbx], 0
je 0x1401178d0
mov r8, qword [rsi + 0x30]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1401178d0
mov ecx, dword [rsp + 0xa4]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rbx + 0x10]
mov qword [r12 + 0x10], r8
movups xmm0, xmmword [rbx]
movups xmmword [r12], xmm0
mov r8d, dword [rbp + 0x2c]
mov r9, qword [rbp + 0x30]
movups xmm0, xmmword [rbp + 0x40]
movups xmmword [r12 + 0x40], xmm0
mov r10b, byte [rbp + 0x50]
mov byte [r12 + 0x50], r10b
mov r10, qword [rbp + 0x38]
mov dword [r12 + 0x18], eax
mov dword [r12 + 0x1c], ecx
mov qword [r12 + 0x20], rdx
mov dword [r12 + 0x28], edi
mov dword [r12 + 0x2c], r8d
mov qword [r12 + 0x30], r9
mov qword [r12 + 0x38], r10
jmp 0x1401178d0
mov r14d, r15d
mov rdi, qword [rbp + 8]
mov r13, qword [rbp + 0x10]
mov r9, r13
lea rbx, [rsi + 0x28]
mov rcx, rbx
mov rdx, rdi
mov r8, r9
call fcn.140086f75
mov r15d, dword [rbp + 0x38]
mov rcx, rsi
mov edx, r14d
mov r8, r15
call fcn.14011b0db
cmp qword [rsi + 0x38], r15
jne 0x1401177f9
mov r9d, dword [rbp + 0x28]
test r9, r9
je 0x14011779f
cmp r13, r9
jbe 0x14011779d
cmp byte [rdi + r9], 0xbf
jg 0x14011779f
lea rax, str.C:Userskylef.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.3.1_srclib.rs
mov qword [rsp + 0x20], rax
mov rcx, rdi
mov rdx, r13
jmp 0x1401178f7
jne 0x140117786
mov rcx, rdi
mov rdx, r9
call fcn.140116fd4
cmp al, 2
jne 0x1401177d3
lea rcx, [rsp + 0xa0]
mov rax, qword [rsp + 0x78]
mov qword [rcx], rax
mov rax, qword [rsp + 0x70]
mov qword [rcx + 8], rax
call fcn.140114e78
cmp eax, 0x110000
je 0x1401177f9
mov rax, r15
cmp qword [rbx], r15
jne 0x1401177ea
mov rcx, rbx
mov rdx, r15
call fcn.140113d70
mov rax, qword [rsi + 0x38]
mov rcx, qword [rsi + 0x30]
mov byte [rcx + rax], 0x2f
inc rax
mov qword [rsi + 0x38], rax
lea rcx, [rsp + 0xa0]
mov rdi, qword [rsp + 0x78]
mov qword [rcx], rdi
mov rbx, qword [rsp + 0x70]
mov qword [rcx + 8], rbx
call fcn.140114e78
lea r8, [rsp + 0xa0]
cmp eax, 0x2f
jne 0x14011783b
mov rax, qword [r8]
mov rcx, qword [r8 + 8]
mov byte [r8], 1
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
jmp 0x140117849
mov byte [r8], 1
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
mov rcx, rsi
mov edx, r14d
mov r9, r15
call fcn.1401199bc
lea r8, [rsp + 0xa0]
mov ecx, 9
mov rdi, r8
rep movsq qword [rdi], qword [rsi]
mov r9d, dword [rbp + 0x28]
mov ecx, dword [rbp + 0x2c]
mov r10d, dword [rbp + 0x30]
mov r11d, dword [rbp + 0x34]
mov bl, byte [rbp + 0x50]
lea rsi, [rsp + 0x80]
mov byte [rsi + 0x10], bl
movups xmm0, xmmword [rbp + 0x40]
movaps xmmword [rsi], xmm0
movzx edi, word [rbp + 0x3c]
movzx ebx, word [rbp + 0x3e]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x50], r15d
mov word [rsp + 0x48], bx
mov word [rsp + 0x40], di
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], ecx
mov rcx, r12
mov rdx, r8
mov r8d, r14d
call fcn.14011a3b4
nop
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x1402cffa0]
mov qword [rsp + 0x20], rcx
mov rcx, rdx
mov rdx, rax
xor r8d, r8d
call fcn.140237f00
ud2