Function at 0x140049bb0
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, 0x118
mov rbx, r9
mov r12, r8
mov rsi, rdx
mov r15, rcx
mov r13, qword [rsp + 0x180]
mov eax, 0x2600
mov qword [rsp + 0x78], r8
jmp 0x140049c16
inc r12
cmp ecx, 0xd
ja 0x140049cc0
mov edi, 0x110000
bt eax, ecx
jae 0x140049cc0
cmp edi, 0x110000
jne 0x140049cce
mov edi, 0x110000
cmp r12, rbx
je 0x140049f99
movzx ecx, byte [r12]
test cl, cl
jns 0x140049bf0
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r12 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140049c8a
movzx r8d, byte [r12 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x140049ca1
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 0x140049f99
add r12, 4
cmp ecx, 0xd
jbe 0x140049bfc
jmp 0x140049cc0
add r12, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x140049bfc
jmp 0x140049cc0
add r12, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x140049bfc
nop word [rax + rax]
mov edi, ecx
cmp edi, 0x110000
je 0x140049c16
cmp edi, 0x2f
je 0x140049cdc
cmp edi, 0x5c
jne 0x140049f99
mov qword [rsp + 0xf0], r15
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x140049cfb
cmp edi, 0x5c
jne 0x140049cfb
mov rax, qword [rsi + 0x38]
xor edx, edx
call qword [rax + 0x28]
mov eax, 0x2600
mov r14, r12
jmp 0x140049d36
inc r14
cmp ecx, 0xd
ja 0x140049dd0
mov edx, 0x110000
bt eax, ecx
jae 0x140049dd0
cmp edx, 0x110000
jne 0x140049dde
cmp r14, rbx
je 0x140049ff9
movzx ecx, byte [r14]
test cl, cl
jns 0x140049d10
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r14 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140049d9d
movzx r8d, byte [r14 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x140049db4
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 0x140049ff9
add r14, 4
cmp ecx, 0xd
jbe 0x140049d1c
jmp 0x140049dd0
add r14, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x140049d1c
jmp 0x140049dd0
add r14, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x140049d1c
nop word [rax + rax]
mov edx, ecx
cmp edx, 0x110000
je 0x140049d36
cmp edx, 0x2f
je 0x140049dec
cmp edx, 0x5c
jne 0x140049ff9
mov rcx, qword [rsi + 0x30]
test rcx, rcx
je 0x140049e03
cmp edx, 0x5c
jne 0x140049e03
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 0x140049e25
mov r8d, 7
mov rcx, rsi
call fcn.140051580
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 rax, rbx
sub rax, r14
je 0x14004a28c
mov qword [rsp + 0x70], rax
xor r13d, r13d
mov eax, 0x2600
movabs rcx, 0x8000800800000000
xor r8d, r8d
xor ebp, ebp
mov rdx, r14
jmp 0x140049ea2
inc rdx
mov r9d, r10d
mov r10d, 1
cmp r9d, 0x3f
ja 0x140049f2c
mov r11d, r9d
bt rax, r11
jae 0x140049f22
mov r13b, 1
add rbp, r10
cmp rdx, rbx
je 0x14004a13e
movzx r10d, byte [rdx]
test r10b, r10b
jns 0x140049e70
mov r9d, r10d
and r9d, 0x1f
movzx edi, byte [rdx + 1]
and edi, 0x3f
cmp r10b, 0xdf
jbe 0x140049f05
movzx r11d, byte [rdx + 2]
shl edi, 6
and r11d, 0x3f
or r11d, edi
cmp r10b, 0xf0
jb 0x140049f7c
movzx r10d, byte [rdx + 3]
add rdx, 4
and r9d, 7
shl r9d, 0x12
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
or r9d, r10d
mov r10d, 1
cmp r9d, 0x3f
jbe 0x140049e86
jmp 0x140049f2c
add rdx, 2
shl r9d, 6
or r9d, edi
mov r10d, 1
cmp r9d, 0x3f
jbe 0x140049e86
jmp 0x140049f2c
bt rcx, r11
jb 0x14004a13e
cmp r9d, 0x110000
je 0x14004a13e
cmp r9d, 0x5c
je 0x14004a13e
inc r8
cmp r9d, 0x80
jb 0x140049e96
mov r10d, 2
cmp r9d, 0x800
jb 0x140049e96
cmp r9d, 0x10000
mov r10d, 4
sbb r10, 0
jmp 0x140049e96
add rdx, 3
shl r9d, 0xc
or r9d, r11d
mov r10d, 1
cmp r9d, 0x3f
jbe 0x140049e86
jmp 0x140049f2c
test r13, r13
je 0x14004a082
cmp edi, 0x23
je 0x14004a2df
cmp edi, 0x3f
je 0x14004a2a1
cmp edi, 0x110000
jne 0x14004a344
cmp dword [r13 + 0x20], 0
je 0x14004a5a1
mov ebp, dword [r13 + 0x24]
mov r14, qword [r13 + 8]
test rbp, rbp
je 0x14004a893
mov rax, qword [r13 + 0x10]
cmp rax, rbp
jbe 0x14004a8db
cmp byte [r14 + rbp], 0xc0
jge 0x14004a8e1
jmp 0x14004b233
mov rax, qword [rsi]
mov r15, qword [rsi + 0x10]
sub rax, r15
cmp rax, 6
ja 0x14004a01e
mov r8d, 7
mov rcx, rsi
mov rdx, r15
call fcn.140051580
mov r15, qword [rsi + 0x10]
mov r14, qword [rsp + 0x180]
mov rax, qword [rsi + 8]
mov dword [rax + r15 + 3], 0x2f2f3a65
mov dword [rax + r15], 0x656c6966
lea rax, [r15 + 7]
mov qword [rsp + 0x100], rax
mov qword [rsi + 0x10], rax
mov rcx, r12
mov rdx, rbx
call fcn.14004d650
xor ecx, ecx
mov ebp, 7
test r14, r14
je 0x14004b0c9
test al, al
jne 0x14004b0c9
cmp dword [r14 + 0x18], 0
je 0x14004a416
lea rax, [r14 + 0x1c]
jmp 0x14004a425
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 7
ja 0x14004a0a4
mov r8d, 8
mov rcx, rsi
call fcn.140051580
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 + 0xa0], 0
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xa0]
mov r9d, 7
mov rcx, rsi
xor edx, edx
call fcn.140048bc0
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.14004cab0
mov eax, dword [rsp + 0xa0]
cmp eax, 2
jne 0x14004a23b
movzx eax, byte [rsp + 0xa4]
mov byte [r15 + 8], al
movabs rax, 0x8000000000000000
mov qword [r15], rax
jmp 0x14004b15f
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rbx
test r13b, 1
jne 0x14004a3ec
mov rax, r14
test r8, r8
je 0x14004a48e
mov ecx, 0x2600
mov rax, r14
cmp rax, rbx
je 0x14004a48b
dec r8
jmp 0x14004a1a3
add rax, 2
shl r9d, 6
or r9d, r11d
mov edx, r9d
nop dword [rax + rax]
cmp edx, 0xd
ja 0x14004a1b2
bt ecx, edx
jae 0x14004a1b2
cmp rax, rbx
je 0x14004a48b
movzx edx, byte [rax]
test dl, dl
js 0x14004a1c0
inc rax
cmp edx, 0xd
jbe 0x14004a195
cmp edx, 0x110000
je 0x14004a19a
jmp 0x14004a22d
mov r9d, edx
and r9d, 0x1f
movzx r11d, byte [rax + 1]
and r11d, 0x3f
cmp dl, 0xdf
jbe 0x14004a17a
movzx r10d, byte [rax + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp dl, 0xf0
jb 0x14004a214
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 0x14004a190
jmp 0x14004a48e
add rax, 3
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
cmp edx, 0xd
jbe 0x14004a195
jmp 0x14004a1b2
test r8, r8
jne 0x14004a16c
jmp 0x14004a48e
mov ecx, dword [rsp + 0xac]
mov rdx, qword [rsp + 0xa4]
mov r8, qword [rsi + 0x10]
mov qword [r15 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r15], xmm0
mov dword [r15 + 0x18], eax
mov qword [r15 + 0x1c], rdx
mov dword [r15 + 0x24], ecx
mov word [r15 + 0x28], 0
movdqa xmm0, xmmword [0x14005bbd0]
movdqu xmmword [r15 + 0x2c], xmm0
mov dword [r15 + 0x3c], 7
mov byte [r15 + 0x40], 0
jmp 0x14004b1e3
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x80], rbx
jmp 0x14004a4c6
cmp dword [r13 + 0x18], 0
je 0x14004a574
lea rax, [r13 + 0x1c]
mov ebp, dword [rax]
mov r14, qword [r13 + 8]
test rbp, rbp
je 0x14004a592
mov r8, qword [r13 + 0x10]
cmp r8, rbp
jbe 0x14004a879
cmp byte [r14 + rbp], 0xbf
jle 0x14004a87f
mov r8, rbp
jmp 0x14004a9ad
mov rax, qword [rsi + 0x40]
mov qword [rsp + 0xe0], rax
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqu xmm2, xmmword [rsi + 0x20]
movdqu xmm3, xmmword [rsi + 0x30]
movdqa xmmword [rsp + 0xd0], xmm3
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rsp + 0xb0], xmm1
movdqa xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0xa0]
mov rcx, r15
mov r8, r13
mov r9, qword [rsp + 0x78]
call fcn.14004c1e0
jmp 0x14004b1e3
mov rcx, qword [rsp + 0x78]
mov rdx, rbx
call fcn.14004d650
test al, al
je 0x14004a468
mov rax, qword [rsi]
mov rdx, qword [rsi + 0x10]
sub rax, rdx
cmp rax, 7
ja 0x14004a37b
mov r8d, 8
mov rcx, rsi
call fcn.140051580
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 + 0xa0], 0
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xa0]
mov r9d, 7
mov rcx, rsi
xor edx, edx
call fcn.140048bc0
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.14004cab0
jmp 0x14004a110
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x80]
call fcn.1400512a0
mov r12, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
jmp 0x14004a5b7
cmp dword [r14 + 0x20], 0
je 0x14004a89b
lea rax, [r14 + 0x24]
mov ebp, dword [rax]
mov rax, r14
mov r13d, dword [r14 + 0x3c]
mov r14, qword [r14 + 8]
mov rcx, qword [rax + 0x10]
lea rax, str._home_xory_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
cmp r13d, ebp
ja 0x14004a56a
test r13, r13
je 0x14004a549
cmp rcx, r13
jbe 0x14004a547
cmp byte [r14 + r13], 0xc0
jge 0x14004a549
jmp 0x14004a56a
cmp dword [r13 + 0x18], 0
je 0x14004a96a
lea rax, [r13 + 0x1c]
mov ebp, dword [rax]
mov r14, qword [r13 + 8]
test rbp, rbp
jne 0x14004a988
jmp 0x14004ac61
mov rax, rbx
mov qword [rsp + 0x80], rax
test rbp, rbp
je 0x14004a4c6
lea rax, [0x140092b70]
mov r8, qword [rsp + 0x70]
cmp rbp, r8
jae 0x14004a5ae
cmp byte [r14 + rbp], 0xbf
jle 0x14004b285
mov r12, r14
mov r8, rbp
jmp 0x14004a5b7
mov r14, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
mov r13b, 1
xor edi, edi
mov qword [rsp + 0x78], rax
mov r15, qword [rsi + 0x10]
mov rax, r15
shr rax, 0x20
jne 0x14004ac27
test dil, dil
setne byte [rsp + 0x80]
test r13b, r13b
je 0x14004ab0a
cmp r15, qword [rsi]
jne 0x14004a512
mov rcx, rsi
call fcn.14001f9c0
mov rax, qword [rsi + 8]
mov byte [rax + r15], 0x2f
lea rax, [r15 + 1]
mov qword [rsi + 0x10], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r14
lea r8, [rsp + 0x80]
mov rcx, rsi
xor edx, edx
mov r9, r15
call fcn.140048bc0
jmp 0x14004ab24
jne 0x14004a56a
test rbp, rbp
je 0x14004add3
cmp rcx, rbp
jbe 0x14004a564
cmp byte [r14 + rbp], 0xc0
jge 0x14004add3
jmp 0x14004a56a
je 0x14004add3
mov qword [rsp + 0x70], rcx
jmp 0x14004b288
cmp dword [r13 + 0x20], 0
je 0x14004a9a5
lea rax, [r13 + 0x24]
mov ebp, dword [rax]
mov r14, qword [r13 + 8]
test rbp, rbp
jne 0x14004a2bf
mov rdi, r15
mov r15, qword [rsi + 0x10]
xor r8d, r8d
jmp 0x14004a9d4
mov r14, qword [r13 + 8]
mov rbp, qword [r13 + 0x10]
jmp 0x14004a8e1
jne 0x14004b285
mov r12, r14
test r8, r8
je 0x14004a618
cmp r8, 2
jne 0x14004a64a
movzx eax, byte [r12]
and al, 0xdf
add al, 0xbf
mov r8d, 2
cmp al, 0x19
ja 0x14004a653
movzx eax, byte [r12 + 1]
cmp eax, 0x3a
je 0x14004a5e9
cmp eax, 0x7c
jne 0x14004a653
test r13b, 1
je 0x14004a4d6
cmp qword [rsp + 0xa0], 0
je 0x14004a4d6
mov rcx, qword [0x14009b118]
xor edx, edx
mov r8, r12
call fcn.140055f4c
jmp 0x14004a4d6
mov r15d, 1
mov ecx, 1
mov rdx, r12
mov rdi, r8
call sub.msvcrt.dll_memcpy
mov r14, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
test r13b, 1
je 0x14004a4d6
jmp 0x14004a6a6
test r8, r8
js 0x14004b22a
movzx eax, byte [0x14009b150]
mov rcx, r8
mov rdi, r8
call fcn.140042430
test rax, rax
je 0x14004b220
mov r15, rax
mov rcx, rax
mov rdx, r12
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov r14, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
test r13b, 1
jne 0x14004a6a6
test rdi, rdi
sete bpl
mov r13, qword [rsp + 0xf0]
jmp 0x14004a6d7
cmp qword [rsp + 0xa0], 0
mov r13, qword [rsp + 0xf0]
je 0x14004a6ca
mov rcx, qword [0x14009b118]
xor edx, edx
mov r8, r12
call fcn.140055f4c
test rdi, rdi
sete bpl
je 0x14004a889
lea rcx, [rsp + 0xa0]
mov rdx, r15
mov r8, rdi
call fcn.14004e5d0
movabs rdi, 0x8000000000000000
mov rax, qword [rsp + 0xa0]
lea rcx, [rdi + 2]
movzx r12d, byte [rsp + 0xa8]
cmp rax, rcx
jne 0x14004a72c
mov rcx, qword [0x14009b118]
xor edx, edx
mov r8, r15
call fcn.140055f4c
mov byte [r13 + 8], r12b
mov qword [r13], rdi
jmp 0x14004b15f
movzx ecx, r12b
movzx edx, byte [rsp + 0xaf]
shl edx, 0x10
movzx r9d, word [rsp + 0xad]
or r9d, edx
mov r8d, dword [rsp + 0xa9]
shl r9, 0x28
shl r8, 8
or r8, r9
or r8, rcx
mov rcx, qword [rsp + 0xb0]
lea r12, [rdi + 1]
cmp rax, r12
jle 0x14004a793
cmp rcx, 9
jne 0x14004a793
movabs rdx, 0x736f686c61636f6c
xor rdx, qword [r8]
movzx r9d, byte [r8 + 8]
xor r9, 0x74
or r9, rdx
je 0x14004ac38
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x90], rcx
lea rax, [rsp + 0x80]
mov qword [rsp + 0x108], rax
lea rax, [0x14004dba0]
mov qword [rsp + 0x110], rax
lea rax, [0x140093050]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 1
mov qword [rsp + 0xc0], 0
lea rax, [rsp + 0x108]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 1
lea rdx, [0x1400929a0]
lea r8, [rsp + 0xa0]
mov rcx, rsi
call fcn.1400097c0
test al, al
jne 0x14004b241
mov r13d, ebp
mov rax, qword [rsp + 0x80]
mov r12, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x90]
lea rdx, [rdi + 2]
xor ecx, ecx
cmp rax, rdx
lea rdx, [rdi + rax + 1]
cmovl rcx, rdx
test rcx, rcx
je 0x14004aaa3
cmp rcx, 1
jne 0x14004aab1
mov dil, 2
mov qword [rsp + 0x78], rcx
jmp 0x14004aac0
je 0x14004a9ad
mov qword [rsp + 0x70], r8
jmp 0x14004b27e
xor edi, edi
mov r13b, 1
jmp 0x14004a4db
mov rbx, qword [rsi + 0x10]
xor ebp, ebp
jmp 0x14004a902
mov rax, r14
mov r13d, dword [r14 + 0x3c]
mov r14, qword [r14 + 8]
mov rcx, qword [rax + 0x10]
test r13, r13
je 0x14004add0
lea rax, str._home_xory_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
cmp rcx, r13
jbe 0x14004adca
cmp byte [r14 + r13], 0xc0
jge 0x14004add0
mov qword [rsp + 0x70], rcx
mov rbp, rcx
jmp 0x14004b288
jne 0x14004b233
mov rax, qword [rsi]
mov rbx, qword [rsi + 0x10]
sub rax, rbx
cmp rax, rbp
jae 0x14004a902
mov rcx, rsi
mov rdx, rbx
mov r8, rbp
call fcn.140051580
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 qword [r15 + 0x10], rbx
movups xmm0, xmmword [rsi]
movups xmmword [r15], xmm0
movzx eax, byte [r13 + 0x50]
mov byte [r15 + 0x50], al
movups xmm0, xmmword [r13 + 0x40]
movups xmmword [r15 + 0x40], xmm0
mov eax, dword [r13 + 0x3c]
mov rcx, qword [r13 + 0x18]
mov qword [r15 + 0x18], rcx
mov dword [r15 + 0x20], 0
mov ecx, dword [r13 + 0x28]
mov dword [r15 + 0x28], ecx
movdqu xmm0, xmmword [r13 + 0x2c]
movdqu xmmword [r15 + 0x2c], xmm0
mov dword [r15 + 0x3c], eax
jmp 0x14004b1e3
cmp dword [r13 + 0x20], 0
je 0x14004ac59
lea rax, [r13 + 0x24]
mov ebp, dword [rax]
mov r14, qword [r13 + 8]
test rbp, rbp
je 0x14004ac61
mov rax, qword [r13 + 0x10]
cmp rax, rbp
jbe 0x14004aa95
cmp byte [r14 + rbp], 0xbf
jg 0x14004ac61
jmp 0x14004b279
mov r14, qword [r13 + 8]
mov r8, qword [r13 + 0x10]
mov rdi, r15
mov rax, qword [rsi]
mov r15, qword [rsi + 0x10]
sub rax, r15
cmp rax, r8
jae 0x14004a9d4
mov rcx, rsi
mov rdx, r15
mov r15, r8
call fcn.140051580
mov r8, r15
mov r15, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, r15
mov rdx, r14
mov r14, r8
call sub.msvcrt.dll_memcpy
add r15, r14
mov qword [rsi + 0x10], r15
mov r14, r13
mov ebp, dword [r13 + 0x2c]
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
mov rdx, rsi
xor r8d, r8d
mov r9d, ebp
call fcn.14004cab0
mov eax, dword [rsp + 0xa0]
cmp eax, 2
jne 0x14004aa42
movzx eax, byte [rsp + 0xa4]
mov byte [rdi + 8], al
movabs rax, 0x8000000000000000
mov qword [rdi], rax
jmp 0x14004b15f
mov ecx, dword [rsp + 0xac]
mov rdx, qword [rsp + 0xa4]
mov r8, qword [rsi + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
movups xmm0, xmmword [r14 + 0x40]
movups xmmword [rdi + 0x40], xmm0
movzx r8d, byte [r14 + 0x50]
mov byte [rdi + 0x50], r8b
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rdx
mov dword [rdi + 0x24], ecx
mov eax, dword [r14 + 0x28]
mov dword [rdi + 0x28], eax
mov dword [rdi + 0x2c], ebp
movdqu xmm0, xmmword [r14 + 0x30]
movdqu xmmword [rdi + 0x30], xmm0
jmp 0x14004b1e3
jne 0x14004b279
mov rbp, rax
jmp 0x14004ac61
test rbp, rbp
setne dil
mov qword [rsp + 0x78], rcx
jmp 0x14004aac0
mov rcx, r12
shr rcx, 0x20
mov qword [rsp + 0x78], rcx
mov dil, 3
movabs rcx, 0x8000000000000002
cmp rax, rcx
jl 0x14004aae5
test rax, rax
je 0x14004aae5
mov rcx, qword [0x14009b118]
xor edx, edx
mov r8, r12
call fcn.140055f4c
test r13b, r13b
je 0x14004ac02
mov r15, qword [rsi + 0x10]
mov rax, r15
shr rax, 0x20
jne 0x14004ac27
test dil, dil
setne byte [rsp + 0x80]
mov qword [rsp + 0x20], rbx
lea r8, [rsp + 0x80]
mov rcx, rsi
xor edx, edx
mov r9, r14
call fcn.14004d410
mov rbx, rax
mov r14, rdx
cmp byte [rsp + 0x80], 0
jne 0x14004ab5c
lea rcx, [rsp + 0xa0]
mov rdx, rsi
mov r8, r15
call fcn.1400511f0
lea rcx, [rsp + 0xa0]
call fcn.140008790
mov r15d, 7
xor edi, edi
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rbx
lea rcx, [rsp + 0xa0]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.14004cab0
mov eax, dword [rsp + 0xa0]
cmp eax, 2
je 0x14004b13f
mov ecx, dword [rsp + 0xac]
mov rdx, qword [rsp + 0xa4]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0xf0]
mov qword [r9 + 0x10], r8
movdqu xmm0, xmmword [rsi]
movdqu xmmword [r9], xmm0
mov dword [r9 + 0x41], r12d
mov r8, qword [rsp + 0x78]
mov dword [r9 + 0x45], r8d
mov qword [r9 + 0x49], rbp
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], dil
jmp 0x14004b1e3
xor r13d, r13d
mov rcx, qword [0x14009b118]
xor edx, edx
mov r8, r15
call fcn.140055f4c
mov r15, qword [rsi + 0x10]
mov rax, r15
shr rax, 0x20
je 0x14004a4f1
mov rcx, qword [rsp + 0xf0]
mov byte [rcx + 8], 9
jmp 0x14004b152
test rax, rax
je 0x14004b1f7
mov rcx, qword [0x14009b118]
xor edi, edi
xor edx, edx
call fcn.140055f4c
mov r13b, 1
jmp 0x14004b1fc
mov r14, qword [r13 + 8]
mov rbp, qword [r13 + 0x10]
mov rax, qword [rsi]
mov r8, qword [rsi + 0x10]
sub rax, r8
cmp rax, rbp
jae 0x14004ac82
mov rcx, rsi
mov rdx, r8
mov r8, rbp
call fcn.140051580
mov r8, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
add rcx, r8
mov rdx, r14
mov rdi, r8
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov rdx, rdi
add rdx, rbp
mov qword [rsi + 0x10], rdx
mov rdi, r13
mov r13d, dword [r13 + 0x3c]
mov rcx, rdx
sub rcx, r13
je 0x14004acfc
mov r14, qword [rsi + 8]
test r13, r13
je 0x14004acd4
lea rax, [0x140092c50]
cmp rdx, r13
jbe 0x14004b26f
cmp byte [r14 + r13], 0xc0
jl 0x14004b26f
cmp rcx, 2
jne 0x14004acef
movzx eax, byte [r14 + r13]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x14004acef
cmp byte [r14 + r13 + 1], 0x3a
je 0x14004acfc
mov rcx, rsi
xor edx, edx
mov r8, r13
call fcn.14004d2c0
mov byte [rsp + 0xa0], 1
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xa0]
mov rcx, rsi
xor edx, edx
mov r9, r13
call fcn.140048bc0
mov rcx, qword [rsi + 0x40]
mov qword [rsp + 0xe0], rcx
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqu xmm2, xmmword [rsi + 0x20]
movdqu xmm3, xmmword [rsi + 0x30]
movdqa xmmword [rsp + 0xd0], xmm3
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rsp + 0xb0], xmm1
movdqa xmmword [rsp + 0xa0], 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], r13d
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 + 0xa0]
mov rcx, r15
xor r8d, r8d
call fcn.140048320
jmp 0x14004b1e3
jne 0x14004a8ce
mov rbp, rcx
sub rbp, r13
add r13, r14
mov qword [rsp + 0x70], rcx
test rbp, rbp
je 0x14004b20f
cmp byte [r13], 0x2f
jne 0x14004b20f
inc r13
dec rbp
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], rbp
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], rbp
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], rbp
movabs rax, 0x2f0000002f
mov qword [rsp + 0xd0], rax
mov byte [rsp + 0xd8], 1
mov word [rsp + 0xe0], 1
mov al, 0x2f
xor ecx, ecx
movdqa xmm0, xmmword [str.________________]
movdqa xmm1, xmmword [0x14005bbc0]
movabs rdx, 0x8080808080808080
mov r8, r13
mov r9, rbp
cmp r9, 0x10
jae 0x14004aea8
cmp rbp, rcx
je 0x14004af85
xor r11d, r11d
nop word [rax + rax]
cmp byte [r8 + r11], 0x2f
je 0x14004af54
inc r11
cmp r9, r11
jne 0x14004ae90
jmp 0x14004af85
lea r10, [r8 + 7]
and r10, 0xfffffffffffffff8
sub r10, r8
jne 0x14004aebe
lea r11, [r9 - 0x10]
xor r10d, r10d
jmp 0x14004aef5
cmp r10, r9
cmovae r10, r9
xor r11d, r11d
nop dword [rax + rax]
cmp byte [r8 + r11], 0x2f
je 0x14004af54
inc r11
cmp r10, r11
jne 0x14004aed0
lea r11, [r9 - 0x10]
nop word cs:[rax + rax]
cmp r10, r11
ja 0x14004af24
movdqu xmm2, xmmword [r8 + r10]
movdqa xmm3, xmm2
pxor xmm3, xmm0
paddq xmm3, xmm1
pandn xmm2, xmm3
pshufd xmm3, xmm2, 0xee
por xmm3, xmm2
movq rax, xmm3
test rax, rdx
jne 0x14004af24
add r10, 0x10
jmp 0x14004aef0
sub r9, r10
mov al, 0x2f
je 0x14004af85
add r8, r10
xor r11d, r11d
nop word cs:[rax + rax]
cmp byte [r8 + r11], 0x2f
je 0x14004af51
inc r11
cmp r9, r11
jne 0x14004af40
jmp 0x14004af85
add r11, r10
add r11, rcx
mov rcx, r11
inc rcx
mov qword [rsp + 0xc0], rcx
je 0x14004af73
cmp rbp, rcx
jb 0x14004af73
cmp byte [r13 + r11], al
je 0x14004af98
lea r8, [rcx + r13]
mov r9, rbp
sub r9, rcx
jae 0x14004ae78
jmp 0x14004af8d
mov qword [rsp + 0xc0], rbp
mov byte [rsp + 0xe1], 1
mov r11, rbp
cmp r11, 2
jne 0x14004aff1
movzx eax, byte [r13]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x14004aff1
cmp byte [r13 + 1], 0x3a
jne 0x14004aff1
mov rax, qword [rsp + 0x100]
cmp rax, qword [rsi]
mov ebp, 7
jne 0x14004afcc
mov rcx, rsi
call fcn.14001f9c0
mov rax, qword [rsi + 8]
mov byte [rax + r15 + 7], 0x2f
add r15, 8
mov qword [rsi + 0x10], r15
mov r8d, 2
mov rcx, rsi
mov rdx, r13
call fcn.140050b30
jmp 0x14004b047
mov rax, qword [rsp + 0x180]
movzx ecx, byte [rax + 0x40]
test cl, cl
mov ebp, 7
je 0x14004b047
mov dword [rsp + 0xfc], ecx
mov r13d, dword [rax + 0x34]
mov ebp, dword [rax + 0x38]
lea rax, str._home_xory_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
cmp r13d, ebp
ja 0x14004b288
test r13, r13
mov rcx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x100]
je 0x14004b051
cmp rcx, r13
jbe 0x14004b04b
cmp byte [r14 + r13], 0xc0
jge 0x14004b051
jmp 0x14004b288
xor ecx, ecx
jmp 0x14004b0c9
jne 0x14004b288
test rbp, rbp
je 0x14004b06d
cmp rcx, rbp
jbe 0x14004b067
cmp byte [r14 + rbp], 0xbf
jg 0x14004b06d
jmp 0x14004b288
jne 0x14004b288
sub rbp, r13
mov rax, qword [rsi]
sub rax, r15
cmp rax, rbp
jae 0x14004b08d
mov rcx, rsi
mov rdx, r15
mov r8, rbp
call fcn.140051580
mov r15, qword [rsi + 0x10]
add r14, r13
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 + 0x180]
movdqu xmm0, xmmword [rax + 0x41]
movdqa xmmword [rsp + 0x80], xmm0
mov rbp, r15
mov ecx, dword [rsp + 0xfc]
add edi, 0xffffffdd
mov r14d, ecx
cmp edi, 0x39
ja 0x14004b0e9
movabs rax, 0x200000010001001
bt rax, rdi
jae 0x14004b0e9
mov r12, qword [rsp + 0x78]
mov byte [rsp + 0xa0], 0
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
lea r8, [rsp + 0xa0]
mov rcx, rsi
xor edx, edx
mov r9, rbp
call fcn.140048bc0
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.14004cab0
mov eax, dword [rsp + 0xa0]
cmp eax, 2
jne 0x14004b179
movzx eax, byte [rsp + 0xa4]
mov rcx, qword [rsp + 0xf0]
mov byte [rcx + 8], al
movabs rax, 0x8000000000000000
mov qword [rcx], rax
cmp qword [rsi], 0
je 0x14004b1e3
mov r8, qword [rsi + 8]
mov rcx, qword [0x14009b118]
xor edx, edx
call fcn.140055f4c
jmp 0x14004b1e3
mov ecx, dword [rsp + 0xac]
mov rdx, qword [rsp + 0xa4]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0xf0]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r9], xmm0
movdqa xmm0, xmmword [rsp + 0x80]
movdqu 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], ebp
mov dword [r9 + 0x3c], ebp
mov byte [r9 + 0x40], r14b
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r13b, 1
xor edi, edi
mov qword [rsp + 0x78], rax
test bpl, bpl
jne 0x14004a4db
jmp 0x14004ac05
lea rcx, [0x140092a68]
call fcn.14000a9c0
jmp 0x14004b2a0
mov rdx, rdi
mov ecx, 1
jmp 0x14004b22c
xor ecx, ecx
call fcn.140007fa0
jmp 0x14004b2a0
mov qword [rsp + 0x70], rax
lea rax, [0x140092a80]
jmp 0x14004b285
lea rax, [0x140092b58]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140092890]
lea r8, [rsp + 0xa0]
mov edx, 0x2b
call fcn.14000a5f0
jmp 0x14004b2a0
mov qword [rsp + 0x70], rdx
mov rbp, rdx
jmp 0x14004b288
mov qword [rsp + 0x70], rax
lea rax, str._home_xory_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
xor r13d, r13d
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, qword [rsp + 0x70]
mov r8, r13
mov r9, rbp
call fcn.14000b4c0
ud2