Function at 0x14007d600
Capabilities:
Connect socket

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x108
mov rbx, r8
mov rdi, rdx
mov rsi, rcx
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x130]
cmp eax, 1
je 0x14007d66d
test eax, eax
jne 0x14007d6d7
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov r14, qword [rcx + rax*8]
lea rcx, [r14 + 0xe0]
lea rdx, [0x140101f60]
call fcn.1400e3a60
mov byte [r14 + 0x130], 1
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp byte [rax + 0x12c], 0
setne cl
cmp byte [rax + 0x12d], 0
sete bpl
and bpl, cl
movzx eax, byte [rdi + 0xe8]
test eax, eax
je 0x14007d6e4
cmp eax, 3
jne 0x14007db6e
lea r15, [rdi + 0xe0]
movzx eax, byte [rdi + 0xe0]
test eax, eax
je 0x14007d78c
cmp eax, 3
jne 0x14007db7a
mov rax, qword [rdi + 0xd8]
jmp 0x14007d8ba
xor ebp, ebp
movzx eax, byte [rdi + 0xe8]
test eax, eax
jne 0x14007d6a3
mov rcx, qword [rdi + 0x90]
mov qword [rdi + 0x98], rcx
mov eax, dword [rdi + 0x72]
movzx edx, word [rdi + 0x76]
shl rdx, 0x20
or rdx, rax
cmp word [rdi + 0x70], 0
je 0x14007d79f
mov r10d, dword [rdi + 0x84]
mov r8d, dword [rdi + 0x88]
movzx eax, word [rdi + 0x8c]
rol ax, 8
shr rdx, 0x10
mov dword [rsp + 0x50], edx
mov rdx, qword [rdi + 0x78]
mov qword [rsp + 0x54], rdx
mov edx, dword [rdi + 0x80]
mov dword [rsp + 0x5c], edx
mov dword [rsp + 0x60], r8d
xorps xmm0, xmm0
movups xmmword [rsp + 0x64], xmm0
movups xmmword [rsp + 0x74], xmm0
movups xmmword [rsp + 0x84], xmm0
movups xmmword [rsp + 0x94], xmm0
movups xmmword [rsp + 0xa4], xmm0
movups xmmword [rsp + 0xb4], xmm0
mov dword [rsp + 0xc4], 0
mov r8d, 0x1c
mov r9w, 0x17
mov edx, r10d
jmp 0x14007d7f3
mov rdx, qword [rdi + 0xa0]
mov r8, qword [rdi + 0xa8]
jmp 0x14007d854
mov rax, rdx
shr rax, 0x20
rol ax, 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xb0], xmm0
movups xmmword [rsp + 0xa0], xmm0
movups xmmword [rsp + 0x90], xmm0
movups xmmword [rsp + 0x80], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0xc0], 0
mov r8d, 0x10
mov r9w, 2
mov word [rsp + 0x48], r9w
mov word [rsp + 0x4a], ax
mov dword [rsp + 0x4c], edx
mov dword [rsp + 0xc8], r8d
lea rdx, [rsp + 0x48]
call qword [sym.imp.ws2_32.dll_connect]
test eax, eax
je 0x14007d82a
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x2733
jne 0x14007d99d
mov rdx, qword [rdi + 0x98]
mov qword [rdi + 0xa0], rdx
mov qword [rdi + 0xa8], 0
lea r15, [rdi + 0xe0]
mov byte [rdi + 0xe0], 0
xor r8d, r8d
lea rcx, [rsp + 0x48]
call fcn.1400f8e90
mov rcx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x50]
cmp rcx, 2
je 0x14007db0f
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [rsp + 0x58]
movaps xmmword [rsp + 0x30], xmm0
lea rax, [rdi + 0xb0]
mov qword [rdi + 0xb0], rcx
mov qword [rdi + 0xb8], r14
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rdi + 0xc0], xmm0
mov rcx, qword [rsp + 0x40]
mov qword [rdi + 0xd0], rcx
mov qword [rdi + 0xd8], rax
mov rdx, qword [rax + 0x10]
lea r14, [rsp + 0x48]
mov rcx, r14
mov r8, rbx
mov r9b, 1
call fcn.140102ed0
movzx eax, byte [rsp + 0x51]
cmp al, 3
jne 0x14007d98f
mov byte [r15], 3
mov byte [rdi + 0xe8], 3
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x130]
cmp eax, 1
je 0x14007d93a
test eax, eax
jne 0x14007d970
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov r14, qword [rcx + rax*8]
lea rcx, [r14 + 0xe0]
lea rdx, [0x140101f60]
call fcn.1400e3a60
mov byte [r14 + 0x130], 1
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx r14d, byte [rax + 0x12c]
test r14b, r14b
sete cl
cmp byte [rax + 0x12d], 0
setne al
or al, cl
or bpl, al
je 0x14007da54
mov rcx, rdi
mov rdx, rbx
call fcn.140103a60
test al, al
je 0x14007dae9
mov qword [rsi], 4
jmp 0x14007db5e
cmp al, 2
jne 0x14007d9bf
mov r14, qword [rsp + 0x48]
jmp 0x14007db03
mov r14d, eax
shl r14, 0x20
or r14, 2
mov rcx, qword [rdi + 0x98]
call qword [sym.imp.ws2_32.dll_closesocket]
mov eax, 2
jmp 0x14007db38
mov rcx, qword [rdi + 0xc8]
cmp rcx, 0xffffffffffffffff
je 0x14007db86
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x48], 4
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x30]
mov edx, 0xffff
mov r8d, 0x1007
call qword [sym.imp.ws2_32.dll_getsockopt]
cmp eax, 0xffffffff
je 0x14007daf2
movsxd r14, dword [rsp + 0x30]
test r14, r14
jne 0x14007dafb
mov rax, qword [rdi + 0xb0]
mov r14, qword [rdi + 0xb8]
mov rcx, qword [rdi + 0xd0]
mov qword [rsp + 0x100], rcx
movups xmm0, xmmword [rdi + 0xc0]
movaps xmmword [rsp + 0xf0], xmm0
mov byte [rdi + 0xe0], 1
cmp rax, 3
je 0x14007d8e2
jmp 0x14007db18
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov r15, qword [rcx + rax*8]
mov byte [r15 + 0x12c], 0
mov rcx, rdi
mov rdx, rbx
call fcn.140103a60
movzx eax, al
add rax, 3
mov qword [rsi], rax
movzx eax, byte [r15 + 0x130]
cmp eax, 1
je 0x14007dac6
test eax, eax
jne 0x14007db5e
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
lea rcx, [rsi + 0xe0]
lea rdx, [0x140101f60]
call fcn.1400e3a60
mov byte [rsi + 0x130], 1
mov eax, dword [0x140194314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov byte [rax + 0x12c], r14b
mov byte [rax + 0x12d], 0
jmp 0x14007db5e
mov qword [rsi], 3
jmp 0x14007db5e
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov r14d, eax
shl r14, 0x20
or r14, 2
lea rcx, [rdi + 0xb0]
call fcn.140075620
mov byte [r15], 1
mov eax, 2
mov rcx, qword [rsp + 0x100]
mov qword [rsp + 0xe0], rcx
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0xd0], xmm0
mov byte [rdi + 0xe8], 1
mov qword [rsi], rax
mov qword [rsi + 8], r14
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rsi + 0x10], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsi + 0x20], rax
add rsp, 0x108
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
lea rcx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_net_tcp_socket.rs
call fcn.140118170
lea rcx, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_net_tcp_stream.rs
call fcn.140118170
lea rcx, [0x14015ef10]
call fcn.140117f80
int3