Function at 0x5b91c0
Capabilities:
Receive data
Receive data on socket
Set socket configuration

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x608
movdqa xmmword [rsp + 0x5f0], xmm8
movdqa xmmword [rsp + 0x5e0], xmm7
movdqa xmmword [rsp + 0x5d0], xmm6
mov r12, rcx
mov edi, dword [rdx + 0x2c]
mov rbx, qword [rdx + 0x10]
test rdi, rdi
je 0x5b926d
mov r13, r9
mov r15, r8
mov r14, rdx
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x40], rax
cmp rax, rdi
jbe 0x5b9220
cmp byte [rbx + rdi], 0xbf
jg 0x5b9226
jmp 0x5bab2b
jne 0x5bab2b
cmp edi, 4
jne 0x5b924e
lea rdx, str.httphttpswswssftpfile_root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_parser.rs
mov rcx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5b9341
lea rdx, str.testunknown_scheme
jmp 0x5b925a
cmp edi, 5
jne 0x5b926d
lea rdx, [0x0094d06c]
mov rcx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5b9341
mov qword [rsp + 0x290], rbx
mov qword [rsp + 0x298], rdi
lea rax, [rsp + 0x290]
mov qword [rsp + 0x388], rax
lea rax, [0x0044ed80]
mov qword [rsp + 0x390], rax
lea rax, [0x00936fa0]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], 2
mov qword [rsp + 0x1a0], 0
lea rax, [rsp + 0x388]
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], 1
lea rcx, [r12 + 0x60]
lea rdx, [rsp + 0x180]
call fcn.0044e7f0
mov dword [r12], 2
mov dword [r12 + 8], 2
mov qword [r12 + 0x78], 0
mov byte [r12 + 0x88], 1
movaps xmm6, xmmword [rsp + 0x5d0]
movaps xmm7, xmmword [rsp + 0x5e0]
movaps xmm8, xmmword [rsp + 0x5f0]
add rsp, 0x608
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rsp + 0x40], rdi
jbe 0x5b9353
cmp byte [rbx + rdi], 0xbf
jg 0x5b9359
jmp 0x5bab2b
jne 0x5bab2b
cmp edi, 5
jne 0x5b9378
lea rdx, [0x0094d06c]
mov rcx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5b9432
mov rax, qword [r14 + 0x68]
cmp byte [rax + 0xcc], 0
je 0x5b9432
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5b93b4
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb67e
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 0x33
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb67e
movups xmm0, xmmword [0x00937148]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x00937138]
movups xmmword [rax + 0x10], xmm0
movdqu xmm0, xmmword [str.cant_perform_non_https_request_with_https_only_set]
movdqu xmmword [rax], xmm0
mov dword [rax + 0x2f], 0x74657320
mov dword [r12], 2
mov dword [r12 + 8], 2
mov qword [r12 + 0x60], rax
mov qword [r12 + 0x68], 0x33
mov qword [r12 + 0x70], 0x33
mov qword [r12 + 0x78], 0
mov byte [r12 + 0x88], 3
jmp 0x5b9314
cmp byte [rsp + 0x670], 0
mov qword [rsp + 0xb0], r14
je 0x5baad0
mov rcx, qword [r14 + 0x70]
mov r8, qword [r14 + 0x68]
lea rax, [rcx + 0x38]
mov qword [rsp + 0x148], rax
movzx eax, word [r14 + 0x28]
mov word [rsp + 0x96], ax
movzx eax, word [r14 + 0x2a]
mov word [rsp + 0x94], ax
movzx eax, byte [r14 + 0x40]
mov byte [rsp + 0x3f], al
mov eax, dword [r14 + 0x34]
mov edx, dword [r14 + 0x38]
lea r9, [rbx + rax]
mov qword [rsp + 0x130], r9
mov qword [rsp + 0x4b0], rdx
mov qword [rsp + 0xc0], rax
sub rdx, rax
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0x70], rcx
lea rax, [rcx + 0x48]
mov qword [rsp + 0x160], rax
pcmpeqd xmm6, xmm6
mov qword [rsp + 0x4c0], r15
mov r15, r8
mov qword [rsp + 0xe0], rdi
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x4b8], r8
mov qword [rsp + 0x170], r12
mov qword [rsp + 0x168], r13
jmp 0x5b951e
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
lea rcx, [rsp + 0x2b0]
call fcn.005b7880
mov bpl, 4
cmp byte [r15 + 0x9c], 4
je 0x5b96fe
mov rsi, qword [r15 + 0x50]
mov rax, qword [r15 + 0x60]
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x5b9591
js 0x5bb603
movzx eax, byte [0x009bf181]
mov rax, qword [0x009bf100]
test rax, rax
jne 0x5b9572
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb66a
mov qword [0x009bf100], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0xd8]
call sub.KERNEL32.dll_HeapAlloc
mov r14, rax
test rax, rax
jne 0x5b9597
jmp 0x5bb66a
mov r14d, 1
mov rcx, r14
mov rdx, rsi
mov r8, qword [rsp + 0xd8]
call sub.msvcrt.dll_memcpy
mov eax, dword [r15 + 0x98]
mov dword [rsp + 0x15c], eax
mov rsi, qword [r15 + 0x68]
test rsi, rsi
je 0x5b961f
mov rax, qword [r15 + 0x78]
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x5b9644
js 0x5bb603
movzx eax, byte [0x009bf181]
mov rax, qword [0x009bf100]
test rax, rax
jne 0x5b9600
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb6a9
mov qword [0x009bf100], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0xd0]
call sub.KERNEL32.dll_HeapAlloc
mov rbp, rax
test rax, rax
jne 0x5b9649
jmp 0x5bb6a9
xor ebp, ebp
mov rsi, qword [r15 + 0x80]
test rsi, rsi
mov qword [rsp + 0x4d8], rbp
jne 0x5b9670
xor eax, eax
mov qword [rsp + 0x178], rax
jmp 0x5b96ee
mov ebp, 1
mov rcx, rbp
mov rdx, rsi
mov r8, qword [rsp + 0xd0]
call sub.msvcrt.dll_memcpy
mov rsi, qword [r15 + 0x80]
test rsi, rsi
mov qword [rsp + 0x4d8], rbp
je 0x5b9635
mov rax, qword [r15 + 0x90]
mov qword [rsp + 0xc8], rax
test rax, rax
je 0x5b96ce
js 0x5bb603
movzx eax, byte [0x009bf181]
mov rax, qword [0x009bf100]
test rax, rax
jne 0x5b96b2
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb6bd
mov qword [0x009bf100], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0xc8]
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
jne 0x5b96d3
jmp 0x5bb6bd
mov eax, 1
mov rcx, rax
mov qword [rsp + 0x178], rax
mov rdx, rsi
mov r8, qword [rsp + 0xc8]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x4d0], r14
movzx ebp, byte [r15 + 0x9c]
mov r14w, 1
cmp word [rsp + 0x96], 0
je 0x5b9727
movzx r15d, word [rsp + 0x94]
cmp qword [rsp + 0x40], rdi
jbe 0x5b9810
jmp 0x5b97f0
cmp qword [rsp + 0x40], rdi
jbe 0x5b9739
cmp byte [rbx + rdi], 0xbf
jg 0x5b973f
jmp 0x5bab2b
jne 0x5bab2b
cmp edi, 4
jne 0x5b9760
mov rcx, rbx
lea rdx, str.httphttpswswssftpfile_root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_parser.rs
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b97de
jmp 0x5b977b
cmp edi, 2
jne 0x5b978d
mov rcx, rbx
lea rdx, [0x0094d071]
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b97de
mov r15w, 0x50
cmp qword [rsp + 0x40], rdi
jbe 0x5b9810
jmp 0x5b97f0
cmp edi, 5
jne 0x5b97aa
mov rcx, rbx
lea rdx, [0x0094d06c]
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b97de
jmp 0x5b97fb
cmp edi, 3
jne 0x5b97de
mov rcx, rbx
lea rdx, [0x0094d073]
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5b97fb
mov rcx, rbx
lea rdx, [0x0094d076]
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
sete al
jmp 0x5b97e0
xor eax, eax
movzx r14d, al
mov r15w, 0x15
cmp qword [rsp + 0x40], rdi
jbe 0x5b9810
cmp byte [rbx + rdi], 0xbf
jg 0x5b9816
jmp 0x5bab2b
mov r15w, 0x1bb
cmp qword [rsp + 0x40], rdi
ja 0x5b97f0
nop word [rax + rax]
jne 0x5bab2b
movzx eax, byte [0x009bf181]
mov rax, qword [0x009bf100]
test rax, rax
jne 0x5b983e
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb5f4
mov qword [0x009bf100], rax
mov rcx, rax
xor edx, edx
mov r8, rdi
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb5f4
mov rsi, rax
mov rcx, rax
mov rdx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov edi, 1
cmp byte [rsp + 0x3f], 0
je 0x5b98b3
mov r9, qword [rsp + 0x4b0]
cmp dword [rsp + 0xc0], r9d
ja 0x5bb5d1
cmp qword [rsp + 0xc0], 0
je 0x5b98c7
mov rax, qword [rsp + 0xc0]
cmp qword [rsp + 0x40], rax
jbe 0x5b98c1
mov rax, qword [rsp + 0x130]
cmp byte [rax], 0xc0
jge 0x5b98c7
jmp 0x5bb5d1
xor ebx, ebx
lea rdx, str.called__Result::unwrap____on_an__Err__value
jmp 0x5b9952
jne 0x5bb5d1
test r9, r9
je 0x5b98e5
cmp qword [rsp + 0x40], r9
jbe 0x5b98df
cmp byte [rbx + r9], 0xbf
jg 0x5b98e5
jmp 0x5bb5d1
jne 0x5bb5d1
cmp qword [rsp + 0x138], 0
je 0x5b9948
js 0x5bb603
movzx eax, byte [0x009bf181]
mov rax, qword [0x009bf100]
test rax, rax
jne 0x5b991e
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb656
mov qword [0x009bf100], rax
mov rcx, rax
xor edx, edx
mov rbx, qword [rsp + 0x138]
mov r8, rbx
call sub.KERNEL32.dll_HeapAlloc
mov rdi, rax
mov rdx, qword [rsp + 0x130]
test rax, rax
jne 0x5b9952
jmp 0x5bb656
xor ebx, ebx
mov rdx, qword [rsp + 0x130]
mov rcx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x2e0], rsi
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2f0], rax
mov qword [rsp + 0x2f8], rdi
mov qword [rsp + 0x300], rbx
mov qword [rsp + 0x308], rbx
mov word [rsp + 0x310], r14w
mov word [rsp + 0x312], r15w
mov rax, qword [rsp + 0x4d0]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x4d8]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x2c8], rax
mov qword [rsp + 0x2d0], rax
mov eax, dword [rsp + 0x15c]
mov dword [rsp + 0x2d8], eax
mov byte [rsp + 0x2dc], bpl
mov rcx, qword [rsp + 0x148]
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x009bf178]
movabs rcx, 0x8000000000000001
lea rsi, [rcx - 2]
test rax, rsi
jne 0x5ba433
xor ecx, ecx
mov rdi, qword [rsp + 0x70]
movzx eax, byte [rdi + 0x40]
test al, al
jne 0x5bb611
mov dword [rsp + 0xac], ecx
mov qword [rsp + 0x4c8], rsi
lea rsi, [rsp + 0x180]
mov rcx, rsi
lea rdx, [rsp + 0x290]
call fcn.005b7490
mov rcx, qword [rdi + 0x68]
mov rdx, qword [rdi + 0x70]
mov r8, rsi
call fcn.005d07b0
mov rsi, rax
mov rcx, qword [rdi + 0x48]
mov rbx, qword [rdi + 0x50]
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm7, xmm0, 0
lea r12, [rcx - 0xa8]
mov rbp, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0xf8], rax
movzx eax, word [rsp + 0x200]
mov word [rsp + 0x3a], ax
movzx eax, word [rsp + 0x202]
mov word [rsp + 0xa0], ax
movzx eax, byte [rsp + 0x1cc]
mov byte [rsp + 0x39], al
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0xb8], rax
xor eax, eax
mov qword [rsp + 0x80], rax
mov qword [rsp + 0xf0], rcx
nop word cs:[rax + rax]
and rsi, rbx
movdqu xmm8, xmmword [rcx + rsi]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm7
pmovmskb r14d, xmm0
nop word [rax + rax]
mov r15d, r14d
test r14w, r14w
je 0x5b9da0
lea r14d, [r15 - 1]
and r14d, r15d
tzcnt eax, r15d
add rax, rsi
and rax, rbx
neg rax
imul rdi, rax, 0xa8
cmp qword [r12 + rdi + 0x60], rbp
jne 0x5b9bd0
lea r13, [r12 + rdi]
mov rcx, qword [r13 + 0x50]
mov rdx, qword [rsp + 0x100]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b9bd0
mov rax, qword [rsp + 0x48]
cmp qword [r13 + 0x78], rax
jne 0x5b9bd0
mov rcx, qword [r13 + 0x68]
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x48]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b9bd0
cmp word [r13 + 0x80], 0
je 0x5b9c70
cmp word [rsp + 0x3a], 0
je 0x5b9bd0
movzx eax, word [rsp + 0xa0]
cmp word [r13 + 0x82], ax
jne 0x5b9bd0
jmp 0x5b9c7c
cmp word [rsp + 0x3a], 0
jne 0x5b9bd0
movzx eax, byte [r13 + 0x4c]
cmp al, 4
je 0x5b9d0f
cmp byte [rsp + 0x39], 4
je 0x5b9d0f
mov byte [rsp + 0x78], al
mov rax, qword [rsp + 0x58]
cmp qword [r13 + 0x10], rax
jne 0x5b9bd0
mov rcx, qword [r13]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0x58]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b9bd0
mov eax, dword [rsp + 0x98]
cmp dword [r13 + 0x48], eax
jne 0x5b9bd0
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x5b9d27
cmp qword [rsp + 0x68], 0
je 0x5b9bd0
mov rax, qword [rsp + 0x50]
cmp qword [r13 + 0x28], rax
jne 0x5b9bd0
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x50]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5b9bd0
jmp 0x5b9d33
cmp al, 4
jne 0x5b9bd0
cmp byte [rsp + 0x39], 4
jne 0x5b9bd0
jmp 0x5ba195
cmp qword [rsp + 0x68], 0
jne 0x5b9bd0
mov rcx, qword [r13 + 0x30]
test rcx, rcx
je 0x5b9d75
cmp qword [rsp + 0x60], 0
je 0x5b9bd0
mov rax, qword [rsp + 0xb8]
cmp qword [r13 + 0x40], rax
jne 0x5b9bd0
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0xb8]
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5b9d81
jmp 0x5b9bd0
cmp qword [rsp + 0x60], 0
jne 0x5b9bd0
movzx eax, byte [rsp + 0x78]
cmp al, byte [rsp + 0x39]
jne 0x5b9bd0
jmp 0x5ba195
pcmpeqb xmm8, xmm6
pmovmskb eax, xmm8
test eax, eax
jne 0x5b9de0
mov rax, qword [rsp + 0x80]
add rsi, rax
add rsi, 0x10
add rax, 0x10
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0xf0]
jmp 0x5b9bb0
mov rax, qword [rsp + 0x70]
cmp qword [rax + 0x58], 0
mov r13, qword [rsp + 0x168]
je 0x5ba453
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x98], rax
mov r14, qword [rsp + 0x1b8]
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x202]
mov eax, dword [rcx - 0x3a]
mov dword [rsp + 0x158], eax
mov rax, qword [rcx - 0x42]
mov qword [rsp + 0x150], rax
movzx eax, word [rcx - 0x35]
mov word [rsp + 0x3c], ax
movzx eax, byte [rcx - 0x33]
mov byte [rsp + 0x3e], al
mov eax, dword [rcx]
mov dword [rsp + 0x8c], eax
movzx eax, word [rcx + 4]
mov word [rsp + 0x90], ax
mov bp, 2
mov r12, qword [rsp + 0x170]
mov rdi, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x140]
mov esi, dword [rsp + 0xac]
test sil, sil
jne 0x5b9ebe
mov rax, qword [0x009bf178]
test qword [rsp + 0x4c8], rax
jne 0x5ba469
mov rcx, qword [rsp + 0x148]
call fcn.0060b50c
test r15w, r15w
mov r15, qword [rsp + 0x4c0]
jne 0x5b9f90
cmp qword [rsp + 0xa0], 0
je 0x5b9efe
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x100]
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x80], 0
je 0x5b9f1f
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0xf8]
call sub.KERNEL32.dll_HeapFree
cmp byte [rsp + 0x39], 4
je 0x5b9f90
cmp qword [rsp + 0x78], 0
je 0x5b9f44
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0xe8]
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x68], 0
je 0x5b9f6a
cmp qword [rsp + 0x98], 0
je 0x5b9f6a
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x68]
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x60], 0
je 0x5b9f90
test r14, r14
je 0x5b9f90
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x60]
call sub.KERNEL32.dll_HeapFree
nop word [rax + rax]
cmp qword [rsp + 0x2e8], 0
je 0x5b9fb1
mov r8, qword [rsp + 0x2e0]
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x300], 0
je 0x5b9fd2
mov r8, qword [rsp + 0x2f8]
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
cmp byte [rsp + 0x2dc], 4
je 0x5ba049
cmp qword [rsp + 0x298], 0
je 0x5b9ffd
mov r8, qword [rsp + 0x290]
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov r8, qword [rsp + 0x2a8]
test r8, r8
je 0x5ba023
cmp qword [rsp + 0x2b0], 0
je 0x5ba023
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov r8, qword [rsp + 0x2c0]
test r8, r8
je 0x5ba049
cmp qword [rsp + 0x2c8], 0
je 0x5ba049
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
cmp bp, 2
je 0x5baac8
mov word [rsp + 0x290], bp
mov r8d, 0xe6
lea rcx, [rsp + 0x292]
lea rdx, [rsp + 0x4e0]
call sub.msvcrt.dll_memcpy
mov rsi, qword [rsp + 0x368]
mov r14, qword [rsp + 0x370]
mov rcx, rsi
call qword [r14 + 0xb8]
test rax, rax
je 0x5bb027
mov rdi, rax
mov byte [rsp + 0x388], 0
mov rcx, qword [rax]
mov dword [rsp + 0x180], 1
mov edx, 0x8004667e
lea r8, [rsp + 0x180]
call sub.WS2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x5bb1b1
mov rcx, qword [rdi]
lea rdx, [rsp + 0x388]
mov r8d, 1
mov r9d, 2
call sub.WS2_32.dll_recv
cmp eax, 0xffffffff
jne 0x5ba0fe
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x5bafe4
mov rcx, qword [rdi]
mov dword [rsp + 0x180], 0
mov edx, 0x8004667e
lea r8, [rsp + 0x180]
call sub.WS2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x5bb1b1
cmp qword [rsp + 0x348], 0
je 0x5ba158
mov r8, qword [rsp + 0x340]
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rsp + 0x368]
mov r14, qword [rsp + 0x370]
mov rcx, rsi
call qword [r14]
cmp qword [r14 + 8], 0
mov rdi, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x140]
mov r15, qword [rsp + 0x4b8]
je 0x5b9511
cmp qword [r14 + 0x10], 0x11
jb 0x5b9500
mov rsi, qword [rsi - 8]
jmp 0x5b9500
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x98], rax
mov rsi, qword [rsp + 0x1b8]
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x202]
mov eax, dword [rcx - 0x3a]
mov dword [rsp + 0x158], eax
mov rax, qword [rcx - 0x42]
mov qword [rsp + 0x150], rax
movzx eax, byte [rcx - 0x33]
mov byte [rsp + 0x3e], al
movzx eax, word [rcx - 0x35]
mov word [rsp + 0x3c], ax
movzx eax, word [rcx + 4]
mov word [rsp + 0x90], ax
mov eax, dword [rcx]
mov dword [rsp + 0x8c], eax
mov r14, qword [rsp + 0xf0]
mov rbx, qword [r14 + rdi - 8]
test rbx, rbx
je 0x5bb68f
add r14, rdi
dec rbx
mov qword [r14 - 8], rbx
mov rdx, qword [r14 - 0x20]
mov rax, qword [r14 - 0x18]
mov rcx, qword [r14 - 0x10]
add rcx, rbx
cmp rcx, rax
mov r8d, 0
cmovae r8, rax
sub rcx, r8
imul rax, rcx, 0xe8
movzx ecx, word [rdx + rax]
mov word [rsp + 0xf0], cx
cmp cx, 2
je 0x5bb68f
add rdx, rax
add rdx, 2
mov r8d, 0xe6
lea rcx, [rsp + 0x180]
call sub.msvcrt.dll_memcpy
test rbx, rbx
mov rdi, qword [rsp + 0x70]
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0x4a8], rbx
jne 0x5ba69f
mov qword [rsp + 0x388], r14
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x390], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x3b0], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x3b8], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x3c8], rax
mov qword [rsp + 0x3d0], rsi
mov eax, dword [rsp + 0x158]
lea rcx, [rsp + 0x398]
mov dword [rcx + 0x48], eax
mov rax, qword [rsp + 0x150]
mov qword [rcx + 0x40], rax
movzx eax, byte [rsp + 0x39]
mov byte [rsp + 0x3e4], al
movzx eax, byte [rsp + 0x3e]
mov byte [rcx + 0x4f], al
movzx eax, word [rsp + 0x3c]
mov word [rcx + 0x4d], ax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x3f0], rax
mov qword [rsp + 0x3f8], rbp
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x400], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x408], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x410], rax
movzx eax, word [rsp + 0x3a]
mov word [rsp + 0x418], ax
movzx eax, word [rsp + 0x90]
mov word [rcx + 0x86], ax
mov eax, dword [rsp + 0x8c]
mov dword [rcx + 0x82], eax
mov rax, qword [rdi + 0x48]
mov rcx, rax
sub rcx, r14
sar rcx, 3
movabs rdx, 0xcf3cf3cf3cf3cf3d
imul rcx, rdx
lea rdx, [rcx - 0x10]
and rdx, qword [rdi + 0x50]
movdqu xmm0, xmmword [rax + rdx]
pcmpeqb xmm0, xmm6
psllw xmm0, 7
pmovmskb r8d, xmm0
test r8d, r8d
je 0x5ba484
bsr r8w, r8w
xor r8d, 0xf
jmp 0x5ba489
call fcn.0058b670
mov ecx, eax
xor cl, 1
mov rdi, qword [rsp + 0x70]
movzx eax, byte [rdi + 0x40]
test al, al
je 0x5b9a73
jmp 0x5bb611
lea rdx, [rax + 0x68]
mov rcx, qword [rsp + 0x160]
call fcn.005c21f0
jmp 0x5b9df8
call fcn.0058b670
test al, al
jne 0x5b9ebe
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x40], 1
jmp 0x5b9ebe
mov r8w, 0x10
movdqu xmm0, xmmword [rax + rcx]
pcmpeqb xmm0, xmm6
pmovmskb r9d, xmm0
or r9d, 0x10000
tzcnt r9d, r9d
add r8d, r9d
mov r9b, pe_nt_image_headers64
cmp r8w, 0xf
ja 0x5ba4b7
inc qword [rdi + 0x58]
mov r9b, 0xff
mov byte [rax + rcx], r9b
mov byte [rdx + rax + 0x10], r9b
dec qword [rdi + 0x60]
mov rax, qword [r14 - 0xa8]
mov qword [rsp + 0x108], rax
mov rax, qword [r14 - 0xa0]
mov qword [rsp + 0x120], rax
mov rax, qword [r14 - 0x90]
mov qword [rsp + 0x128], rax
mov rax, qword [r14 - 0x88]
mov qword [rsp + 0x110], rax
mov rax, qword [r14 - 0x78]
mov qword [rsp + 0x50], rax
mov rax, qword [r14 - 0x70]
mov qword [rsp + 0x118], rax
movzx r13d, byte [r14 - 0x5c]
mov rsi, qword [r14 - 0x58]
mov rdi, qword [r14 - 0x50]
mov rbp, qword [r14 - 0x40]
mov r12, qword [r14 - 0x38]
mov rax, qword [r14 - 0x20]
mov qword [rsp + 0x58], rax
mov rax, qword [r14 - 0x18]
mov qword [rsp + 0x48], rax
mov rax, r14
mov r14, qword [r14 - 0x10]
mov rbx, qword [rax - 8]
cmp word [rsp + 0x3a], 2
je 0x5ba55c
lea rcx, [rsp + 0x398]
call fcn.005d1f80
test rdi, rdi
je 0x5ba572
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
test r12, r12
mov rdi, qword [rsp + 0x70]
je 0x5ba58d
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rbp
call sub.KERNEL32.dll_HeapFree
cmp r13b, 4
je 0x5ba600
cmp qword [rsp + 0x120], 0
je 0x5ba5b4
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x108]
call sub.KERNEL32.dll_HeapFree
mov r8, qword [rsp + 0x128]
test r8, r8
je 0x5ba5da
cmp qword [rsp + 0x110], 0
je 0x5ba5da
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x50], 0
je 0x5ba600
cmp qword [rsp + 0x118], 0
je 0x5ba600
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x50]
call sub.KERNEL32.dll_HeapFree
test rbx, rbx
je 0x5ba684
mov rdx, qword [rsp + 0x48]
cmp r14, rdx
mov rax, rdx
mov ecx, 0
cmovb rax, rcx
sub r14, rax
mov r13, rdx
sub r13, r14
lea rbp, [r14 + rbx]
cmp r13, rbx
cmovb rbp, rdx
mov r12, rbx
sub r12, r13
cmovb r12, rcx
sub rbp, r14
je 0x5ba664
imul rsi, r14, 0xe8
add rsi, qword [rsp + 0x58]
nop dword [rax + rax]
mov rcx, rsi
call fcn.005d32a0
add rsi, 0xe8
dec rbp
jne 0x5ba650
cmp r13, rbx
jae 0x5ba684
mov rsi, qword [rsp + 0x58]
nop
mov rcx, rsi
call fcn.005d32a0
add rsi, 0xe8
dec r12
jne 0x5ba670
cmp qword [rsp + 0x48], 0
je 0x5ba69f
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x58]
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rdi + 0x80]
mov r8, qword [rdi + 0x90]
test r8, r8
mov qword [rsp + 0x48], r8
je 0x5ba6e0
mov rax, qword [rdi + 0x88]
cmp rax, rsi
mov ecx, 0
cmovae rcx, rsi
sub rax, rcx
mov rdx, rsi
sub rdx, rax
mov rcx, r8
sub rcx, rdx
jbe 0x5ba6e6
mov rdx, rsi
jmp 0x5ba6ec
xor eax, eax
xor edx, edx
jmp 0x5ba6ea
lea rdx, [rax + r8]
xor ecx, ecx
mov rbp, qword [rdi + 0x78]
mov r8, rax
shl r8, 7
lea rbx, [r8 + rax*8]
mov rax, rdx
shl rax, 7
lea r14, [rax + rdx*8]
lea rax, [rbp + r14]
sub rax, rbp
sub rax, rbx
movabs rdx, 0xf0f0f0f0f0f0f0f1
mul rdx
mov r13, rdx
shr r13, 7
add r13, rcx
mov rax, rcx
shl rax, 7
lea rax, [rax + rcx*8]
lea r12, [rax + rbp]
add r12, 0xffffffffffffff78
imul rdi, rcx, 0xffffffffffffff78
nop word cs:[rax + rax]
test rdi, rdi
je 0x5ba77c
mov rcx, r12
lea rdx, [rsp + 0x290]
call fcn.005c78a0
dec r13
add r12, 0xffffffffffffff78
add rdi, 0x88
test al, al
je 0x5ba750
jmp 0x5ba7c1
lea r12, [r14 + rbp]
add r12, 0xffffffffffffff78
sub rbx, r14
xor r14d, r14d
nop dword [rax]
test rbx, rbx
je 0x5bb5b7
mov rcx, r12
lea rdx, [rsp + 0x290]
call fcn.005c78a0
add r12, 0xffffffffffffff78
add rbx, 0x88
inc r14
test al, al
je 0x5ba790
sub r13, r14
cmp qword [rsp + 0x48], r13
mov rdi, qword [rsp + 0x70]
jbe 0x5bb5b7
mov r8, qword [rdi + 0x88]
lea r9, [r8 + r13]
cmp r9, rsi
mov eax, 0
cmovae rax, rsi
sub r9, rax
mov rax, r9
shl rax, 7
lea rax, [rax + r9*8]
mov rcx, qword [rbp + rax]
mov qword [rsp + 0x498], rcx
mov rcx, qword [rbp + rax + 8]
mov qword [rsp + 0x110], rcx
mov rcx, qword [rbp + rax + 0x18]
mov qword [rsp + 0x118], rcx
mov rcx, qword [rbp + rax + 0x20]
mov qword [rsp + 0x4a0], rcx
mov rcx, qword [rbp + rax + 0x30]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rbp + rax + 0x38]
mov qword [rsp + 0x108], rcx
movzx ecx, byte [rbp + rax + 0x4c]
mov byte [rsp + 0x58], cl
mov rcx, qword [rbp + rax + 0x50]
mov qword [rsp + 0x120], rcx
mov r12, qword [rbp + rax + 0x58]
mov rcx, qword [rbp + rax + 0x68]
mov qword [rsp + 0x128], rcx
mov rbx, qword [rbp + rax + 0x70]
movzx r14d, word [rbp + rax + 0x80]
mov rax, r13
not rax
add rax, qword [rsp + 0x48]
cmp rax, r13
jae 0x5ba8a8
lea rcx, [r9 + 1]
cmp rcx, rsi
mov ecx, 0
cmovae rcx, rsi
neg rcx
lea r8, [r9 + rcx]
inc r8
mov qword [rsp + 0x20], rax
jmp 0x5ba8ce
lea rax, [r8 + 1]
cmp rax, rsi
mov eax, 0
cmovae rax, rsi
neg rax
lea r9, [r8 + rax]
inc r9
mov qword [rdi + 0x88], r9
mov qword [rsp + 0x20], r13
mov rcx, rbp
mov rdx, rsi
call fcn.005d0e80
mov rax, qword [rsp + 0x48]
dec rax
mov qword [rdi + 0x90], rax
cmp r14w, 2
je 0x5bb5b7
test r12, r12
je 0x5ba90e
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x120]
call sub.KERNEL32.dll_HeapFree
test rbx, rbx
mov r12, qword [rsp + 0x170]
mov r13, qword [rsp + 0x168]
mov esi, dword [rsp + 0xac]
movzx ebp, word [rsp + 0xf0]
mov r14, qword [rsp + 0xb8]
je 0x5ba950
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x128]
call sub.KERNEL32.dll_HeapFree
cmp byte [rsp + 0x58], 4
mov rdi, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x140]
je 0x5ba9d4
cmp qword [rsp + 0x110], 0
je 0x5ba988
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x498]
call sub.KERNEL32.dll_HeapFree
mov r8, qword [rsp + 0x118]
test r8, r8
je 0x5ba9ae
cmp qword [rsp + 0x4a0], 0
je 0x5ba9ae
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x50], 0
je 0x5ba9d4
cmp qword [rsp + 0x108], 0
je 0x5ba9d4
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x50]
call sub.KERNEL32.dll_HeapFree
mov r8d, 0xe6
lea rcx, [rsp + 0x4e0]
lea rdx, [rsp + 0x180]
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0x4a8], 0
je 0x5b9ea4
cmp word [rsp + 0x3a], 2
je 0x5b9ea4
cmp qword [rsp + 0xa0], 0
je 0x5baa2b
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x100]
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x80], 0
je 0x5baa4c
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0xf8]
call sub.KERNEL32.dll_HeapFree
cmp byte [rsp + 0x39], 4
je 0x5b9ea4
cmp qword [rsp + 0x78], 0
je 0x5baa75
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0xe8]
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x68], 0
je 0x5baa9b
cmp qword [rsp + 0x98], 0
je 0x5baa9b
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x68]
call sub.KERNEL32.dll_HeapFree
cmp qword [rsp + 0x60], 0
je 0x5b9ea4
test r14, r14
je 0x5b9ea4
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, qword [rsp + 0x60]
call sub.KERNEL32.dll_HeapFree
jmp 0x5b9ea4
mov r14, qword [rsp + 0xb0]
cmp qword [rsp + 0x40], rdi
jbe 0x5baadf
cmp byte [rbx + rdi], 0xbf
jg 0x5baae1
jmp 0x5bab2b
jne 0x5bab2b
cmp edi, 4
jne 0x5bab4c
lea rdx, str.httphttpswswssftpfile_root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_parser.rs
mov rcx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5bacad
lea rdx, str.testunknown_scheme
mov rcx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x5bab6b
cmp qword [rsp + 0x40], rdi
jbe 0x5bb055
cmp byte [rbx + rdi], 0xbf
jg 0x5bb05b
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, qword [rsp + 0x40]
xor r8d, r8d
mov r9, rdi
call fcn.00454cc0
ud2
cmp edi, 5
jne 0x5bab6b
lea rdx, [0x0094d06c]
mov rcx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x5bad63
mov qword [rsp + 0x4e0], rbx
mov qword [rsp + 0x4e8], rdi
lea rax, [rsp + 0x4e0]
mov qword [rsp + 0x290], rax
lea rax, [0x0044ed80]
mov qword [rsp + 0x298], rax
lea rax, [0x00937118]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], 1
mov qword [rsp + 0x1a0], 0
lea rax, [rsp + 0x290]
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], 1
lea rcx, [rsp + 0x3e8]
lea rdx, [rsp + 0x180]
call fcn.0044e7f0
mov dword [rsp + 0x390], 2
mov qword [rsp + 0x400], 0
mov byte [rsp + 0x410], 1
lea rdx, [rsp + 0x38c]
lea rcx, [rsp + 0x180]
mov r8d, 0xec
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x478]
movups xmm1, xmmword [rsp + 0x488]
movaps xmmword [rsp + 0x4e0], xmm0
movaps xmmword [rsp + 0x4f0], xmm1
mov edi, 2
lea rsi, [rsp + 0x290]
lea rdx, [rsp + 0x180]
mov r8d, 0xec
mov rcx, rsi
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x4e0]
movaps xmm1, xmmword [rsp + 0x4f0]
movups xmmword [r12 + 0xf0], xmm0
movups xmmword [r12 + 0x100], xmm1
lea rcx, [r12 + 4]
mov r8d, 0xec
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov dword [r12], edi
jmp 0x5b9314
cmp word [r14 + 0x28], 0
mov bx, 0x50
je 0x5bacbe
movzx ebx, word [r14 + 0x2a]
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5bace9
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb6d1
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 4
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb6d1
mov rsi, rax
mov dword [rax], 0x70747468
test r13, r13
je 0x5bae91
js 0x5bb603
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5bad3e
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bad54
mov rcx, rax
mov qword [0x009bf100], rax
xor edx, edx
mov r8, r13
call sub.KERNEL32.dll_HeapAlloc
mov rdi, rax
test rax, rax
jne 0x5bae96
mov ecx, 1
mov rdx, r13
call fcn.0044dfd0
ud2
cmp word [r14 + 0x28], 0
mov bp, 0x1bb
je 0x5bad74
movzx ebp, word [r14 + 0x2a]
mov word [rsp + 0x20], bp
lea rcx, [rsp + 0x180]
mov rdx, r14
mov r8, r15
mov r9, r13
call fcn.005bcd40
mov edi, dword [rsp + 0x180]
cmp edi, 3
jne 0x5bb0be
mov rdi, qword [rsp + 0x188]
movdqu xmm0, xmmword [rsp + 0x1a0]
movups xmm1, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x290], xmm1
movdqa xmmword [rsp + 0x2a0], xmm0
mov rax, qword [r14 + 0x68]
mov rbx, qword [rax + 0xb8]
mov rsi, qword [rax + 0xc0]
mov r14, qword [rsi + 0x10]
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5bae0a
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb6e2
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 8
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb6e2
dec r14
and r14, 0xfffffffffffffff0
lea rdx, [r14 + rbx]
add rdx, 0x10
mov qword [rax], rdi
lea rcx, [0x00936c10]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x180]
mov r8, r15
mov r9, r13
call qword [rsi + 0x18]
mov edi, dword [rsp + 0x180]
cmp edi, 3
jne 0x5bb28b
movdqu xmm6, xmmword [rsp + 0x188]
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
je 0x5bb351
mov rbx, qword [rsp + 0xb0]
jmp 0x5bb371
mov edi, 1
mov rcx, rdi
mov rdx, r15
mov r8, r13
call sub.msvcrt.dll_memcpy
mov r14, qword [r14 + 0x70]
jmp 0x5baeac
pause
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x5baeaa
test rax, rax
js 0x5bb60a
lea rcx, [rax + 1]
lock cmpxchg qword [r14 + 8], rcx
jne 0x5baeb0
mov word [rsp + 0x20], bx
lea rcx, [rsp + 0x180]
mov rdx, qword [rsp + 0xb0]
mov r8, r15
mov r9, r13
call fcn.005bcd40
mov qword [rsp + 0x290], r14
mov byte [rsp + 0x2e4], 4
mov qword [rsp + 0x2e8], rsi
mov qword [rsp + 0x2f0], 4
mov qword [rsp + 0x2f8], 4
mov qword [rsp + 0x300], rdi
mov qword [rsp + 0x308], r13
mov qword [rsp + 0x310], r13
mov word [rsp + 0x318], 1
mov word [rsp + 0x31a], bx
cmp dword [rsp + 0x180], 3
jne 0x5bafb0
movdqu xmm0, xmmword [rsp + 0x188]
movups xmm1, xmmword [rsp + 0x198]
movdqa xmmword [rsp + 0x4e0], xmm0
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x500], rax
movaps xmmword [rsp + 0x4f0], xmm1
mov rdx, qword [rsp + 0x4e0]
lea r8, [rsp + 0x4e8]
lea rcx, [rsp + 0x390]
lea r9, [rsp + 0x290]
call fcn.005be780
mov edi, 3
jmp 0x5bb2c6
lea rcx, [rsp + 0x388]
lea rdx, [rsp + 0x180]
mov r8d, 0x110
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x290]
call fcn.005b7880
mov edi, dword [rsp + 0x388]
jmp 0x5bb2c6
mov ebx, eax
shl rbx, 0x20
or rbx, 2
mov rcx, rbx
call fcn.005b4c70
cmp al, 0xd
jne 0x5bb13e
mov rcx, qword [rdi]
mov dword [rsp + 0x180], 0
lea r8, [rsp + 0x180]
mov edx, 0x8004667e
call sub.WS2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x5bb1b1
lea rcx, [r12 + 8]
lea rdx, [rsp + 0x290]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
mov byte [r12 + 0xf0], 1
mov dword [r12], 3
jmp 0x5b9314
jne 0x5bab2b
mov qword [rsp + 0x290], rbx
mov qword [rsp + 0x298], rdi
lea rax, [rsp + 0x290]
mov qword [rsp + 0x4e0], rax
lea rax, [0x0044ed80]
mov qword [rsp + 0x4e8], rax
lea rax, [0x00936fa0]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], 2
mov qword [rsp + 0x1a0], 0
lea rax, [rsp + 0x4e0]
jmp 0x5babc9
mov esi, dword [rsp + 0x184]
mov rbx, qword [rsp + 0x188]
movups xmm0, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x4e0], xmm0
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x4f0], xmm0
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0x3b8]
mov r8d, 0xe0
call sub.msvcrt.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x4e0]
movaps xmm1, xmmword [rsp + 0x4f0]
movdqu xmmword [rsp + 0x398], xmm0
movups xmmword [rsp + 0x3a8], xmm1
mov dword [rsp + 0x38c], esi
mov qword [rsp + 0x390], rbx
jmp 0x5bb2c6
mov rcx, qword [rdi]
mov dword [rsp + 0x180], 0
lea r8, [rsp + 0x180]
mov edx, 0x8004667e
call sub.WS2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x5bb1b1
mov dword [rsp + 0x188], 2
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1f8], 0
mov byte [rsp + 0x208], 8
mov dword [rsp + 0x180], 2
lea rsi, [rsp + 0x388]
lea rdx, [rsp + 0x180]
mov rcx, rsi
mov r8, rbx
jmp 0x5bb20a
call sub.WS2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov dword [rsp + 0x188], 2
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1f8], 0
mov byte [rsp + 0x208], 8
mov dword [rsp + 0x180], 2
lea rsi, [rsp + 0x388]
lea rdx, [rsp + 0x180]
mov rcx, rsi
mov r8, rax
call fcn.005cee20
mov r8d, 0x110
mov rcx, r12
mov rdx, rsi
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0x348], 0
je 0x5bb241
mov r8, qword [rsp + 0x340]
mov rcx, qword [0x009bf100]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rsp + 0x368]
mov rdi, qword [rsp + 0x370]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x5bb279
cmp qword [rdi + 0x10], 0x11
jb 0x5bb268
mov rsi, qword [rsi - 8]
mov rcx, qword [0x009bf100]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
lea rcx, [rsp + 0x2b0]
call fcn.005b7880
jmp 0x5b9314
mov esi, dword [rsp + 0x184]
lea rdx, [rsp + 0x198]
lea rcx, [rsp + 0x3a0]
mov r8d, 0xf8
call sub.msvcrt.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x188]
mov dword [rsp + 0x38c], esi
movdqu xmmword [rsp + 0x390], xmm0
lea rdx, [rsp + 0x38c]
lea rcx, [rsp + 0x180]
mov r8d, 0xec
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x478]
movups xmm1, xmmword [rsp + 0x488]
movaps xmmword [rsp + 0x4e0], xmm0
movaps xmmword [rsp + 0x4f0], xmm1
cmp edi, 3
jne 0x5bac51
lea rdx, [rsp + 0x184]
lea rsi, [rsp + 0x294]
mov r8d, 0xe8
mov rcx, rsi
call sub.msvcrt.dll_memcpy
lea rcx, [r12 + 8]
mov r8d, 0xe8
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov byte [r12 + 0xf0], 0
mov dword [r12], 3
jmp 0x5b9314
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
mov rbx, qword [rsp + 0xb0]
je 0x5bb6f3
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 5
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb6f3
mov rsi, rax
mov byte [rax + 4], 0x73
mov dword [rax], 0x70747468
test r13, r13
je 0x5bb3c0
js 0x5bb603
movzx eax, byte [0x009bf181]
mov edx, 1
mov rcx, r13
call fcn.0041ba60
mov rdi, rax
test rax, rax
jne 0x5bb3c5
jmp 0x5bad54
mov edi, 1
mov rcx, rdi
mov rdx, r15
mov r8, r13
call sub.msvcrt.dll_memcpy
mov r14, qword [rbx + 0x70]
jmp 0x5bb3db
pause
mov rax, qword [r14 + 8]
cmp rax, 0xffffffffffffffff
je 0x5bb3d9
test rax, rax
js 0x5bb60a
lea rcx, [rax + 1]
lock cmpxchg qword [r14 + 8], rcx
jne 0x5bb3df
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5bb425
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb704
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 0x10
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb704
mov rbx, rax
movdqu xmmword [rax], xmm6
movzx eax, byte [0x009bf181]
mov rcx, qword [0x009bf100]
test rcx, rcx
jne 0x5bb46d
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x5bb715
mov rcx, rax
mov qword [0x009bf100], rax
mov r8d, 0x2000
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x5bb715
movaps xmm0, xmmword [rsp + 0x290]
movaps xmm1, xmmword [rsp + 0x2a0]
movups xmmword [rsp + 0x3a0], xmm1
movups xmmword [rsp + 0x390], xmm0
mov qword [rsp + 0x3b0], r14
movups xmm0, xmmword [rsp + 0x180]
movups xmm1, xmmword [rsp + 0x190]
movups xmm2, xmmword [rsp + 0x1a0]
movups xmm3, xmmword [rsp + 0x1b0]
movups xmmword [rsp + 0x3b8], xmm0
movups xmmword [rsp + 0x3c8], xmm1
movups xmmword [rsp + 0x3d8], xmm2
movups xmmword [rsp + 0x3e8], xmm3
movdqu xmm0, xmmword [rsp + 0x1bc]
movdqu xmmword [rsp + 0x3f4], xmm0
mov byte [rsp + 0x404], 4
movzx ecx, word [rsp + 0x4e0]
mov word [rsp + 0x405], cx
movzx ecx, byte [rsp + 0x4e2]
mov byte [rsp + 0x407], cl
mov qword [rsp + 0x408], rsi
mov qword [rsp + 0x410], 5
mov qword [rsp + 0x418], 5
mov qword [rsp + 0x420], rdi
mov qword [rsp + 0x428], r13
mov qword [rsp + 0x430], r13
mov word [rsp + 0x438], 1
mov word [rsp + 0x43a], bp
mov qword [rsp + 0x440], rax
mov qword [rsp + 0x448], 0x2000
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x450], xmm0
mov qword [rsp + 0x460], 0
mov qword [rsp + 0x468], rbx
lea rax, [0x00936d58]
mov qword [rsp + 0x470], rax
jmp 0x5bafa6
lea rcx, str.invariant_failed:_key_in_recycle_but_not_in_lru
lea r8, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ureq_2.9.1_src_pool.rscannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadlocal.rs
mov edx, 0x2f
call fcn.004537f0
ud2
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0xc0]
call fcn.00454cc0
ud2
mov ecx, 1
mov rdx, rdi
call fcn.0044dfd0
ud2
call fcn.0044df90
ud2
call fcn.005d1260
ud2
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x180], rax
mov byte [rsp + 0x188], cl
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ureq_2.9.1_src_pool.rscannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadlocal.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x00936658]
lea r8, [rsp + 0x180]
mov edx, 0x2b
call fcn.00451990
ud2
mov ecx, 1
mov rdx, qword [rsp + 0x138]
call fcn.0044dfd0
ud2
mov ecx, 1
mov rdx, qword [rsp + 0xd8]
call fcn.0044dfd0
ud2
mov ecx, 1
mov edx, 0x33
call fcn.0044dfd0
ud2
lea rcx, str.invariant_failed:_empty_VecDeque_in__recycle_
lea r8, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ureq_2.9.1_src_pool.rscannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadlocal.rs
mov edx, 0x2d
call fcn.004537f0
ud2
mov ecx, 1
mov rdx, qword [rsp + 0xd0]
call fcn.0044dfd0
ud2
mov ecx, 1
mov rdx, qword [rsp + 0xc8]
call fcn.0044dfd0
ud2
mov ecx, 1
mov edx, 4
call fcn.0044dfd0
ud2
mov ecx, 8
mov edx, 8
call fcn.0044dfd0
ud2
mov ecx, 1
mov edx, 5
call fcn.0044dfd0
ud2
mov ecx, 8
mov edx, 0x10
call fcn.0044dfd0
ud2
mov ecx, 1
mov edx, 0x2000
call fcn.0044dfd0
ud2