Function at 0x140011304
Capabilities:
Connect socket
Resolve dns
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x548
lea rbp, [rsp + 0x80]
movapd xmmword [rbp + 0x4b0], xmm6
mov qword [rbp + 0x4a8], 0xfffffffffffffffe
mov rax, qword [rdx]
mov rdi, qword [rdx + 0x10]
mov ebx, dword [rdx + 0x118]
test ebx, ebx
mov qword [rbp + 0x498], rcx
mov qword [rbp + 0x480], rdx
je 0x14001135d
cmp ebx, 1
jne 0x140011362
mov edx, 0x1bb
jmp 0x140011368
push 0x50
pop rdx
jmp 0x140011368
mov edx, dword [rdx + 0x11c]
lea rbx, [rbp - 0x50]
mov qword [rbx], rax
mov qword [rbx + 8], rdi
lea rax, [rbp + 0x414]
mov dword [rax], edx
lea rdi, [rbp + 0x1d0]
mov qword [rdi], rbx
lea rcx, [0x140005b30]
mov qword [rdi + 8], rcx
mov qword [rdi + 0x10], rax
lea rax, [0x14004e788]
lea rdx, [rbp - 0x40]
mov qword [rdx], rax
push 2
pop rax
mov qword [rdx + 8], rax
and qword [rdx + 0x10], 0
lea rcx, [0x140006d90]
mov qword [rdi + 0x18], rcx
mov qword [rdx + 0x20], rdi
mov qword [rdx + 0x28], rax
lea rsi, [rbp + 0x3d8]
mov rcx, rsi
call fcn.1400039c0
mov r15, qword [rsi]
mov r12, qword [rsi + 0x10]
mov qword [rdi], r15
mov qword [rdi + 8], r12
lea rcx, [rbp + 0x1d0]
call fcn.14002c800
mov r14, rax
test r14d, r14d
je 0x14001148a
mov r9, qword [rbp + 0x1d8]
test r9, r9
je 0x14001147c
mov r11, qword [rbp + 0x1d0]
cmp byte [r11], 0x3a
jne 0x14001147c
lea r8, [r9 - 1]
inc r11
xor edi, edi
mov r10w, 0xa
mov rsi, r8
xor ebx, ebx
mov eax, 0
test rsi, rsi
je 0x140011444
movzx ecx, byte [r11]
add ecx, 0xffffffd0
xor eax, eax
cmp ecx, 0xa
setb al
jae 0x140011444
inc r11
dec rsi
cmp eax, 1
jne 0x140011645
mov eax, ebx
mul r10w
jo 0x140011653
mov ebx, eax
add bx, cx
setb dl
xor eax, eax
cmp ecx, 0xffff
ja 0x140011655
test dl, dl
jne 0x140011655
dec rdi
jmp 0x140011423
xor eax, eax
mov r8, r9
test ax, ax
jne 0x14001165f
test r12, r12
je 0x140011668
lea rsi, [r15 + 1]
lea rdi, [r12 - 1]
mov al, byte [r15]
mov qword [rbp + 0x1d0], rsi
mov qword [rbp + 0x1d8], rdi
cmp al, 0x5b
jne 0x140011668
pxor xmm0, xmm0
lea rdx, [rbp - 0x40]
movdqa xmmword [rdx], xmm0
lea rcx, [rbp + 0x1d0]
push 8
pop rbx
mov r8, rbx
call fcn.14002cff0
cmp rax, 8
jne 0x14001157d
movdqa xmm0, xmmword [rbp - 0x40]
movdqa xmm1, xmm0
psrlw xmm1, 8
psllw xmm0, 8
por xmm0, xmm1
mov r8, qword [rbp + 0x1d0]
mov r11, qword [rbp + 0x1d8]
xor edi, edi
test r11, r11
je 0x140011886
cmp byte [r8], 0x25
jne 0x140011c16
lea rsi, [r11 - 1]
lea r10, [r8 + 1]
xor ecx, ecx
push 0xa
pop r14
mov rbx, r10
mov qword [rbp + 0x488], rsi
xor r13d, r13d
xor edi, edi
mov eax, 0
test rsi, rsi
je 0x140011557
movzx r9d, byte [rbx]
add r9d, 0xffffffd0
xor eax, eax
cmp r9d, 0xa
setb al
jae 0x140011557
inc rbx
dec rsi
cmp eax, 1
jne 0x140011ab1
mov eax, r13d
mul r14d
jo 0x140011c02
mov r13d, eax
add r13d, r9d
jb 0x140011c02
dec rcx
jmp 0x140011534
test dl, 1
jne 0x140011635
mov rcx, qword [rbp + 0x1d8]
test rcx, rcx
je 0x140011635
mov rdx, qword [rbp + 0x1d0]
cmp byte [rdx], 0x3a
jne 0x140011635
cmp rcx, 1
je 0x140011635
add rcx, 0xfffffffffffffffe
mov r8b, byte [rdx + 1]
add rdx, 2
mov qword [rbp + 0x1d0], rdx
mov qword [rbp + 0x1d8], rcx
cmp r8b, 0x3a
jne 0x140011635
and qword [rbp + 0x456], 0
and qword [rbp + 0x450], 0
push 7
pop r8
sub r8, rax
jb 0x140012403
lea rcx, [rbp + 0x1d0]
lea rdx, [rbp + 0x450]
call fcn.14002cff0
sub rbx, rax
jb 0x14001240b
cmp rax, 8
je 0x140012418
lea rcx, [rbx*2 - 0x40]
add rcx, rbp
add rax, rax
lea rdx, [rbp + 0x450]
mov r8, rax
call fcn.140032d00
jmp 0x1400114dd
mov qword [rbp + 0x1d0], rsi
mov qword [rbp + 0x1d8], rdi
jmp 0x140011668
xor eax, eax
test rdi, rdi
setne al
cmovne r8, rsi
jmp 0x140011655
xor eax, eax
cmp ax, 1
jne 0x14001147e
test r8, r8
je 0x14001170f
push 4
pop r14
lea rdi, str.invalid_socket_address
mov rbx, r12
mov cl, 0x3a
mov rdx, r15
mov r8, rbx
call fcn.140009080
cmp rax, 1
jne 0x1400116a5
mov rbx, rdx
mov rcx, rdx
inc rcx
je 0x1400116a0
cmp r12, rcx
jb 0x1400116a0
cmp byte [r15 + rbx], 0x3a
je 0x1400116e1
cmp rbx, r12
jbe 0x140011676
mov rbx, qword [rbp + 0x498]
push 1
pop rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rdi
mov qword [rbx], rax
lea rcx, [rbp + 0x3d8]
call fcn.14001ff70
movaps xmm6, xmmword [rbp + 0x4b0]
add rsp, 0x548
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rdi, str.invalid_port_value
sub r12, rcx
je 0x1400116a5
add rcx, r15
mov al, byte [rcx]
cmp al, 0x2d
je 0x14001188b
cmp al, 0x2b
jne 0x140011895
dec r12
je 0x1400116a5
inc rcx
jmp 0x140011895
rol bx, 8
shr r14, 0x20
xor r12d, r12d
mov di, 2
xor esi, esi
push 0x20
pop rcx
push 4
pop rdx
call fcn.140031ff0
test rax, rax
je 0x1400123d6
push 1
pop rcx
mov dword [rax], esi
mov word [rax + 4], di
mov word [rax + 6], bx
mov dword [rax + 8], r14d
mov qword [rax + 0xc], r12
mov rsi, rcx
mov qword [rax + 0x14], r15
mov dword [rax + 0x1c], r13d
mov rdi, rax
add rdi, 0x20
mov rcx, rax
mov qword [rbp + 0x3f0], rcx
mov qword [rbp + 0x3f8], rsi
mov qword [rbp + 0x400], rcx
mov qword [rbp + 0x408], rdi
cmp rcx, rdi
je 0x140011835
lea rax, [rcx + 0x20]
mov qword [rbp + 0x400], rax
mov ebx, dword [rcx]
mov qword [rbp + 0x430], 7
cmp ebx, 2
je 0x140011840
movups xmm0, xmmword [rcx + 4]
movdqu xmm1, xmmword [rcx + 0x10]
lea rdi, [rbp - 0x40]
movdqu xmmword [rdi + 0xc], xmm1
movaps xmmword [rdi], xmm0
lea r13, [rbp + 0x430]
mov rcx, r13
call fcn.140001321
movaps xmm0, xmmword [rdi]
movaps xmmword [rbp + 0x1d0], xmm0
movups xmm0, xmmword [rdi + 0xc]
movups xmmword [rbp + 0x1dc], xmm0
movaps xmm0, xmmword [rbp + 0x1d0]
movups xmmword [rbp + 0x454], xmm0
movdqu xmm0, xmmword [rbp + 0x1dc]
movdqu xmmword [rbp + 0x460], xmm0
mov dword [rbp + 0x450], ebx
mov rcx, rdi
mov rdx, qword [rbp + 0x480]
call fcn.1400126f3
cmp qword [rdi], 0
je 0x1400118db
mov rax, qword [rbp - 0x38]
push 1
pop rcx
mov rdx, qword [rbp + 0x498]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
mov qword [rdx], rcx
jmp 0x140011875
mov qword [rbp + 0x430], 7
mov rax, qword [rbp + 0x440]
movdqu xmm0, xmmword [rbp + 0x430]
movdqa xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], rax
mov rcx, qword [rbp + 0x498]
mov qword [rcx + 0x18], rax
movdqu xmmword [rcx + 8], xmm0
mov qword [rcx], 1
lea rcx, [rbp + 0x3f0]
call fcn.14001752e
jmp 0x1400116ba
jmp 0x140011c16
cmp r12, 1
je 0x1400116a5
mov r9, rdi
xor edi, edi
mov r8w, 0xa
xor r13d, r13d
cmp r12, rdi
je 0x14001192f
movzx esi, byte [rcx + rdi]
add esi, 0xffffffd0
cmp esi, 9
ja 0x1400118cc
mov eax, r13d
mul r8w
jo 0x1400118cc
mov r13d, eax
inc rdi
add r13w, si
jae 0x1400118a2
mov rbx, qword [rbp + 0x498]
mov rdi, r9
jmp 0x1400116ac
lea rdi, [rbp + 0x454]
cmp qword [rbp - 0x38], 1
push 0x1c
pop r14
jne 0x1400119c6
mov r15, qword [rbp - 0x30]
mov r12d, dword [rbp - 0x28]
mov rax, qword [0x14005dc98]
cmp rax, 3
jne 0x140012113
mov edx, dword [rbp + 0x450]
lea rbx, [rbp - 0x40]
mov rcx, rbx
call fcn.14002d410
cmp qword [rbx], 0
je 0x140011bad
mov rdi, qword [rbp - 0x38]
jmp 0x140011b0d
mov qword [rbp + 0x488], r14
mov rax, qword [0x14005dc98]
cmp rax, 3
jne 0x140011dd3
mov r14, rbx
inc r14
sete dil
je 0x1400123e3
push 1
pop r12
mov rcx, r14
mov rdx, r12
call fcn.140031ff0
test rax, rax
je 0x1400123fb
mov rsi, rax
mov qword [rbp + 0x1d0], rax
mov qword [rbp + 0x1d8], r14
mov rcx, rax
mov rdx, r15
mov r8, rbx
call fcn.140032d00
mov qword [rbp + 0x1e0], rbx
cmp rbx, 0x10
jae 0x140011ac9
test rbx, rbx
je 0x1400119b8
push 1
pop rax
xor ecx, ecx
cmp byte [r15 + rcx], 0
je 0x1400119ba
inc rcx
cmp rbx, rcx
jne 0x1400119a9
xor eax, eax
mov rbx, qword [rbp + 0x498]
jmp 0x140011ae4
mov eax, dword [rbp + 0x450]
movdqu xmm0, xmmword [rdi]
movdqu xmm1, xmmword [rdi + 0xc]
movdqa xmmword [rbp + 0x1d0], xmm0
lea r12, [rbp + 0x478]
and qword [r12], 0
movdqu xmmword [rbp + 0x1dc], xmm1
lea rbx, [rbp - 0x3c]
xor esi, esi
lea rdi, [rbp + 0x430]
push 2
pop r13
cmp eax, 2
je 0x140011aff
mov dword [rbp - 0x40], eax
movups xmm0, xmmword [rbp + 0x1dc]
movups xmmword [rbx + 0xc], xmm0
movdqa xmm0, xmmword [rbp + 0x1d0]
movdqu xmmword [rbx], xmm0
mov rax, qword [0x14005dc98]
cmp rax, 3
jne 0x140011aaa
mov edx, dword [rbp - 0x40]
mov rcx, rdi
call fcn.14002d410
cmp qword [rbp + 0x430], 0
je 0x140011a50
mov rsi, qword [rbp + 0x438]
jmp 0x140011a93
mov r15, qword [rbp + 0x438]
cmp dword [rbp - 0x40], 0
mov r8d, r14d
push 0x10
pop rax
cmove r8d, eax
mov rcx, r15
mov rdx, rbx
call qword [sym.imp.ws2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x140011d9a
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rcx, r15
call qword [sym.imp.ws2_32.dll_closesocket]
mov rcx, r12
call fcn.14000d2fb
mov qword [rbp + 0x478], rsi
mov eax, r13d
jmp 0x140011a02
call fcn.1400411a0
jmp 0x140011a32
test rcx, rcx
je 0x140011c00
push 1
pop rdi
mov qword [rbp + 0x488], rsi
jmp 0x140011c05
mov byte [rbp + 0x497], 1
xor ecx, ecx
mov rdx, r15
mov r8, rbx
call fcn.140008f70
mov rbx, qword [rbp + 0x498]
test rax, rax
je 0x140011b2a
mov eax, edi
lea rdi, str.data_provided_contains_a_nul_byte
test al, al
jne 0x1400116ac
jmp 0x140011d1b
test rsi, rsi
lea rdi, str.could_not_resolve_to_any_addresses
cmovne rdi, rsi
mov rbx, qword [rbp + 0x498]
mov qword [rbx + 0x10], rdi
push 1
pop rsi
mov rax, rsi
mov qword [rbx + 8], rsi
mov qword [rbx], rax
jmp 0x140011875
mov rax, qword [rbp + 0x1e0]
lea rcx, [rbp - 0x40]
mov qword [rcx + 0x10], rax
movdqu xmm0, xmmword [rbp + 0x1d0]
movdqa xmmword [rcx], xmm0
mov byte [rbp + 0x497], 0
call fcn.140020ef0
mov rsi, rax
mov rdi, rdx
pxor xmm0, xmm0
lea r8, [rbp - 0x40]
movdqa xmmword [r8], xmm0
movdqa xmmword [r8 + 0x20], xmm0
movdqa xmmword [r8 + 0x10], xmm0
mov dword [r8 + 8], 1
lea r9, [rbp + 0x1d0]
and qword [r9], 0
mov rcx, rax
xor edx, edx
call qword [sym.imp.ws2_32.dll_getaddrinfo]
test eax, eax
je 0x140011d03
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
shl rax, 0x20
or rax, 2
push 1
pop r12
jmp 0x140011d10
lea r8, [rbp - 0x40]
mov rsi, qword [r8 + 8]
mov dword [r8], 1
mov rcx, rsi
mov edx, 0x8004667e
call qword [sym.imp.ws2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x140011db7
cmp dword [rbp + 0x450], 0
push 0x10
pop rax
cmove r14d, eax
mov rcx, rsi
mov rdx, rdi
mov r8d, r14d
call qword [sym.imp.ws2_32.dll_connect]
cmp eax, 0xffffffff
je 0x140012092
xor edi, edi
jmp 0x1400120a2
xor edi, edi
mov rbx, r10
cmp edi, 1
jne 0x140011c16
mov r8, rbx
mov r11, qword [rbp + 0x488]
jmp 0x140011c1c
test edi, edi
cmove r13d, edi
test r11, r11
je 0x140011668
cmp byte [r8], 0x5d
jne 0x140011668
mov r9, r11
dec r9
je 0x140011cac
cmp byte [r8 + 1], 0x3a
jne 0x140011cac
add r8, 2
add r11, 0xfffffffffffffffe
xor r10d, r10d
mov r14w, 0xa
mov rsi, r8
mov rcx, r11
xor ebx, ebx
mov eax, 0
test rcx, rcx
je 0x140011c78
movzx edi, byte [rsi]
add edi, 0xffffffd0
xor eax, eax
cmp edi, 0xa
setb al
jae 0x140011c78
inc rsi
dec rcx
jmp 0x140011c86
mov qword [rbp + 0x1d0], rsi
mov qword [rbp + 0x1d8], rcx
cmp eax, 1
jne 0x140011cbb
mov eax, ebx
mul r14w
jo 0x140011cc9
mov ebx, eax
add bx, di
setb al
cmp edi, 0xffff
ja 0x140011cc9
test al, al
jne 0x140011cc9
dec r10
jmp 0x140011c56
xor eax, eax
mov r11, r9
test ax, ax
jne 0x140011cd8
jmp 0x140011668
test r10, r10
je 0x140011cc9
mov ax, 1
mov r11, rcx
jmp 0x140011cd2
mov qword [rbp + 0x1d0], r8
xor eax, eax
cmp ax, 1
jne 0x140011cae
test r11, r11
jne 0x140011668
pshufd xmm1, xmm0, 0xee
movq r12, xmm0
rol bx, 8
movq r15, xmm1
push 1
pop rsi
mov di, 0x17
xor r14d, r14d
jmp 0x140011720
mov r14, qword [rbp + 0x1d0]
xor r12d, r12d
mov rax, r14
mov byte [rsi], 0
test rdi, rdi
mov rdi, rax
je 0x140011d26
push 1
pop rdx
mov rcx, rsi
call fcn.140032080
test r12, r12
jne 0x1400116ac
mov qword [rbp + 0x470], rdi
test r14, r14
je 0x140011d84
lea rdi, [rbp - 0x38]
lea rsi, [0x14004fe00]
mov rcx, qword [r14 + 0x10]
mov rax, qword [r14 + 0x20]
mov r14, qword [r14 + 0x28]
movzx edx, word [rax]
cmp dx, 0x17
je 0x140011df5
cmp dx, 2
je 0x140011ddd
mov qword [rbp - 0x38], rsi
mov dword [rbp - 0x40], 1
mov byte [rbp + 0x4a7], 1
mov rcx, rdi
call fcn.1400221b0
test r14, r14
jne 0x140011d46
mov rcx, qword [rbp + 0x470]
call qword [sym.imp.ws2_32.dll_freeaddrinfo]
xor edi, edi
xor esi, esi
jmp 0x14001207f
lea rcx, [rbp + 0x478]
call fcn.14000d2fb
xor eax, eax
mov rbx, qword [rbp + 0x498]
mov rsi, r15
jmp 0x140011b1e
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
mov rbx, qword [rbp + 0x498]
jmp 0x14001222c
call fcn.1400411a0
jmp 0x140011947
cmp rcx, 0x10
jb 0x140012496
and dword [rbp - 0x3c], 0
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
xor esi, esi
jmp 0x140011e19
cmp rcx, 0x1c
jb 0x1400124b5
mov dword [rbp - 0x3c], 1
movups xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0xc]
movdqu xmmword [rdi + 0xc], xmm1
movups xmmword [rdi], xmm0
push 1
pop rsi
movzx edi, word [rbp - 0x38]
movups xmm0, xmmword [rbp - 0x36]
movaps xmmword [rbp + 0x1d0], xmm0
movups xmm0, xmmword [rbp - 0x2c]
movups xmmword [rbp + 0x1da], xmm0
movups xmm0, xmmword [rbp + 0x1da]
movups xmmword [rbp - 0x36], xmm0
movdqa xmm0, xmmword [rbp + 0x1d0]
movdqa xmmword [rbp - 0x40], xmm0
movzx eax, word [rbp - 0x3e]
mov word [rbp + 0x450], ax
mov eax, dword [rbp - 0x3c]
mov dword [rbp + 0x452], eax
mov rax, qword [rbp - 0x38]
mov qword [rbp + 0x456], rax
movzx eax, word [rbp - 0x30]
mov word [rbp + 0x45e], ax
mov rax, qword [rbp - 0x2e]
mov qword [rbp + 0x460], rax
push 4
pop rdx
mov ecx, 0x80
call fcn.140031ff0
test rax, rax
je 0x140012425
rol r13w, 8
mov rcx, qword [rbp + 0x460]
mov qword [rax + 0x18], rcx
movapd xmm0, xmmword [rbp + 0x450]
movupd xmmword [rax + 8], xmm0
mov dword [rax], esi
mov word [rax + 4], di
mov qword [rbp + 0x488], rax
mov word [rax + 6], r13w
push 1
pop rdi
movdqa xmm6, xmmword [0x1400425f0]
lea r11, [rbp - 0x40]
movq rsi, xmm6
test r14, r14
je 0x140012072
mov rcx, qword [r14 + 0x10]
mov rax, qword [r14 + 0x20]
mov r14, qword [r14 + 0x28]
movzx edx, word [rax]
cmp dx, 0x17
je 0x140011f13
cmp dx, 2
jne 0x140011ed9
cmp rcx, 0x10
jb 0x14001243e
mov r15, qword [rax]
mov r9, qword [rax + 8]
xor r8d, r8d
jmp 0x140011f36
cmp rcx, 0x1c
jb 0x140012477
mov r15, qword [rax]
mov r9, qword [rax + 8]
mov ecx, dword [rax + 0x18]
mov dword [rbp - 0x38], ecx
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x40], rax
push 1
pop r8
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x1d8], eax
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0x1d0], rax
cmp rsi, rdi
jne 0x140011fb4
mov dword [rbp + 0x44c], r8d
mov r12, rbx
mov rbx, rdi
inc rbx
je 0x140012469
lea rax, [rdi + rdi]
cmp rax, rbx
cmova rbx, rax
cmp rbx, 5
push 4
pop rax
cmovb rbx, rax
xor r8d, r8d
mov rax, rbx
push 0x20
pop rcx
mul rcx
mov r10, rax
setno r8b
shl r8, 2
test rdi, rdi
mov qword [rbp + 0x418], r9
mov qword [rbp + 0x420], r15
je 0x140011fbd
mov rax, rdi
mul rcx
mov r9, qword [rbp + 0x488]
jmp 0x140011fc7
mov rdx, qword [rbp + 0x488]
jmp 0x14001201d
xor r9d, r9d
mov rax, qword [rbp + 0x428]
mov qword [rbp + 0x428], rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 4
mov r15, r11
mov rcx, r11
mov rdx, r10
call fcn.140021a90
cmp qword [rbp - 0x40], 0
jne 0x140012460
mov rdx, qword [rbp - 0x38]
movq xmm0, rbx
movsd xmm6, xmm0
mov rbx, r12
mov r11, r15
mov r9, qword [rbp + 0x418]
mov r15, qword [rbp + 0x420]
mov r8d, dword [rbp + 0x44c]
mov rax, r15
shr rax, 0x20
mov rcx, rdi
shl rcx, 5
mov dword [rdx + rcx], r8d
mov word [rdx + rcx + 4], r15w
mov word [rdx + rcx + 6], r13w
mov dword [rdx + rcx + 8], eax
mov qword [rdx + rcx + 0xc], r9
mov rax, qword [rbp + 0x1d0]
mov qword [rdx + rcx + 0x14], rax
mov eax, dword [rbp + 0x1d8]
mov qword [rbp + 0x488], rdx
mov dword [rdx + rcx + 0x1c], eax
inc rdi
movq xmm0, rdi
unpcklpd xmm6, xmm0
jmp 0x140011ed4
mov rcx, qword [rbp + 0x470]
call qword [sym.imp.ws2_32.dll_freeaddrinfo]
shl rdi, 5
mov rcx, qword [rbp + 0x488]
add rdi, rcx
jmp 0x14001175e
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
mov rbx, qword [rbp + 0x498]
mov qword [rbp + 0x478], rdi
lea r8, [rbp - 0x40]
and dword [r8], 0
mov rcx, rsi
mov edx, 0x8004667e
call qword [sym.imp.ws2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x1400120ee
test rdi, rdi
je 0x140012269
mov eax, edi
and eax, 3
lea rcx, [0x140012624]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov al, byte [rdi + 0x10]
jmp case.0x14001214b.0
mov qword [rbp + 0x480], rsi
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov esi, eax
shl rsi, 0x20
or rsi, 2
test rdi, rdi
jne 0x140012216
jmp 0x140012222
call fcn.1400411a0
jmp 0x14001190a
mov rcx, rdi
shr rcx, 0x20
call fcn.140022640
jmp case.0x14001214b.0
mov rcx, rdi
shr rcx, 0x20
cmp ecx, 0x28
ja case.default.0x14001214b
xor eax, eax
lea rdx, [0x140012634]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov al, 1
jmp case.0x14001214b.0
mov al, byte [rdi + 0xf]
cmp al, 0xd
jne 0x14001222c
test r15, r15
mov qword [rbp + 0x480], rsi
jne 0x140012179
test r12d, r12d
jne 0x140012179
lea rsi, str.cannot_set_a_0_duration_timeout
jmp 0x140012216
xor r14d, r14d
mov ecx, 0x3e8
mov eax, r12d
xor edx, edx
div ecx
mov dword [rbp + 0x430], r15d
cmp r12d, ecx
mov ecx, eax
mov rdx, r15
push 1
pop r15
cmovb ecx, r15d
test edx, edx
cmovne ecx, eax
mov dword [rbp + 0x434], ecx
push 1
pop rdi
lea rcx, [rbp + 0x1e0]
mov qword [rcx - 0x10], rdi
mov qword [rcx - 8], rsi
mov r8d, 0x1f8
xor edx, edx
call fcn.140033a40
lea rcx, [rbp - 0x30]
mov qword [rcx - 0x10], rdi
mov qword [rcx - 8], rsi
mov r8d, 0x1f8
xor edx, edx
call fcn.140033a40
mov qword [rsp + 0x20], r13
lea r8, [rbp + 0x1d0]
lea r9, [rbp - 0x40]
mov ecx, r15d
xor edx, edx
call qword [sym.imp.ws2_32.dll_select]
test eax, eax
je 0x14001223a
cmp eax, 0xffffffff
jne 0x140012243
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov esi, eax
shl rsi, 0x20
or rsi, 2
lea rcx, [rbp + 0x478]
call fcn.1400221b0
mov rdi, rsi
mov rsi, qword [rbp + 0x480]
mov rcx, rsi
call qword [sym.imp.ws2_32.dll_closesocket]
jmp 0x140011b14
lea rdi, str.connection_timed_out
jmp 0x140012251
mov r14b, 1
cmp dword [rbp + 0x1d0], 1
jne 0x140012270
xor edi, edi
lea rcx, [rbp + 0x478]
call fcn.1400221b0
test r14b, r14b
mov rsi, qword [rbp + 0x480]
je 0x14001222c
xor eax, eax
jmp 0x140011b1e
lea r9, [rbp + 0x448]
and dword [r9], 0
lea rax, [rbp + 0x410]
mov dword [rax], 4
mov qword [rsp + 0x20], rax
mov rcx, qword [rbp + 0x480]
mov edx, 0xffff
mov r8d, 0x1007
call qword [sym.imp.ws2_32.dll_getsockopt]
cmp eax, 0xffffffff
je 0x140012206
mov esi, dword [rbp + 0x448]
test esi, esi
test byte [rdi], 0x85
push rdx
invalid
invalid
invalid
test byte [rdi], 0x85
push rdx
invalid
jmp 0x14001224f
mov al, 0x25
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x23
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x24
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x1b
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x22
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x10
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0xe
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x21
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0xb
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 4
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x28
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0xc
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 9
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x19
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x18
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 2
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0xf
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 3
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 7
jmp case.0x14001214b.0
mov al, 0x1f
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x11
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x29
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x14
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 5
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x15
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0xd
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 6
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x12
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0xa
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 8
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x1e
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x20
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x16
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x27
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x13
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x17
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x1c
jmp case.0x14001214b.0
invalid
invalid
invalid
mov al, 0x1d
jmp case.0x14001214b.0
mov al, 0x26
jmp case.0x14001214b.0
mov al, 0x1a
jmp case.0x14001214b.0
push 0x20
pop rcx
push 4
pop rdx
call fcn.14003fda0
ud2
lea rcx, [0x14004dc23]
lea r8, str.library_std_src_ffic_str.rs
push 0x2b
pop rdx
call fcn.14003ff20
ud2
push 1
pop rdx
mov rcx, r14
jmp 0x1400123dc
push 7
pop rdx
mov rcx, r8
jmp 0x14001241e
push 8
pop rdx
mov rcx, rbx
call fcn.14003ffd0
ud2
push 8
pop rcx
push 7
pop rdx
call fcn.14003ff10
ud2
mov byte [rbp + 0x4a7], 1
push 4
pop rdx
mov ecx, 0x80
call fcn.14003fda0
jmp 0x1400124e4
mov qword [rbp + 0x498], rsi
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___
lea r8, str.library_std_src_sys_common_net.rsinvalid_argument
push 0x42
pop rdx
call fcn.14003ff20
jmp 0x1400124e4
mov rdx, qword [rbp - 0x30]
test rdx, rdx
jne 0x1400124d4
mov qword [rbp + 0x498], rsi
call fcn.1400038a0
jmp 0x1400124e4
mov qword [rbp + 0x498], rsi
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in6___
lea r8, str.library_std_src_sys_common_net.rsinvalid_argument
push 0x43
pop rdx
call fcn.14003ff20
jmp 0x1400124e4
mov byte [rbp + 0x4a7], 1
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___
lea r8, str.library_std_src_sys_common_net.rsinvalid_argument
push 0x42
pop rdx
call fcn.14003ff20
jmp 0x1400124e4
mov byte [rbp + 0x4a7], 1
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in6___
lea r8, str.library_std_src_sys_common_net.rsinvalid_argument
push 0x43
pop rdx
call fcn.14003ff20
jmp 0x1400124e4
mov qword [rbp + 0x498], rsi
mov rcx, qword [rbp - 0x38]
call fcn.14003fda0
ud2