Function at 0x1400954f0
Capabilities:
Set socket configuration

Disassembly:
push rdi
sub rsp, 0x100
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rsp + 0x118], rbx
mov rax, qword [0x140131088]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov ebx, edx
lea rdx, str.0.0.0.0
test rcx, rcx
cmovne rdx, rcx
mov qword [rsp + 0x58], reloc.WS2_32.dll_ntohs
xor edi, edi
mov qword [rsp + 0x50], rdi
mov byte [rsp + 0x40], dil
cmp byte [rdx], dil
jne 0x14009554b
mov r8d, edi
jmp 0x140095559
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], dil
jne 0x140095550
lea rcx, [rsp + 0x40]
call fcn.140009260
nop
mov qword [rsp + 0xc8], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0xc0], rdi
mov byte [rsp + 0xb0], 0
mov dword [rsp + 0xd0], edi
xor eax, eax
mov qword [rsp + 0xd4], rax
mov qword [rsp + 0xdc], rax
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0xb0]
call fcn.140009390
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x40]
call fcn.140022450
mov byte [rsp + 0xec], al
test al, al
jne 0x1400955f8
xor eax, eax
mov qword [rsp + 0x84], rax
mov qword [rsp + 0x8c], rax
mov dword [rsp + 0xd0], edi
movups xmm0, xmmword [rsp + 0x84]
movups xmmword [rsp + 0xd4], xmm0
mov dword [rsp + 0xe8], edi
mov word [rsp + 0xe4], bx
mov rax, qword [rsp + 0x58]
cmp rax, 0x10
jb 0x14009565f
inc rax
mov rcx, qword [rsp + 0x40]
cmp rax, 0x1000
jb 0x14009565a
test cl, 0x1f
je 0x14009562d
call fcn.1400a26d8
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x14009563c
call fcn.1400a26d8
int3
sub rcx, rax
cmp rcx, 8
jae 0x14009564b
call fcn.1400a26d8
int3
cmp rcx, 0x27
jbe 0x140095657
call fcn.1400a26d8
int3
mov rcx, rax
call fcn.14009d844
mov qword [rsp + 0x58], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x50], rdi
mov byte [rsp + 0x40], 0
mov edx, 1
lea r8d, [rdx + 5]
mov ecx, dword [rsp + 0xd0]
call qword [sym.imp.WS2_32.dll_socket]
mov rbx, rax
mov qword [rsp + 0x68], rax
cmp rax, 0xffffffffffffffff
je 0x14009585a
mov dword [rsp + 0xa0], 1
lea r8, [rsp + 0xa0]
mov edx, 0x8004667e
mov rcx, rax
call qword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
jne 0x1400956d5
mov dword [rsp + 0x34], eax
lea rdx, [0x14012e320]
lea rcx, [rsp + 0x34]
call fcn.1400a0dbc
mov dword [rsp + 0x78], 1
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x78]
mov edx, 0xffff
mov r8d, 4
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_setsockopt]
mov eax, dword [rsp + 0xd0]
cmp eax, 0x17
jne 0x14009576a
xor eax, eax
mov qword [rsp + 0x82], rax
mov qword [rsp + 0x92], rax
mov word [rsp + 0x9a], ax
mov eax, reloc.WS2_32.dll_socket
mov word [rsp + 0x80], ax
movups xmm0, xmmword [rsp + 0xd4]
movups xmmword [rsp + 0x88], xmm0
movzx ecx, word [rsp + 0xe4]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x82], ax
mov r8d, 0x1c
lea rdx, [rsp + 0x80]
jmp 0x1400957ef
xor ecx, ecx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rcx
cmp eax, 2
je 0x14009578b
mov word [rsp + 0x80], di
jmp 0x1400957e1
mov eax, 2
mov word [rsp + 0x80], ax
movzx eax, word [rsp + 0xe4]
shr ax, 8
mov byte [rsp + 0x30], al
movzx eax, byte [rsp + 0xe4]
mov byte [rsp + 0x31], al
movzx eax, word [rsp + 0x30]
mov word [rsp + 0x82], ax
lea rcx, [rsp + 0xd0]
call fcn.140022520
mov ecx, dword [rsp + 0xd4]
test al, al
cmovne ecx, edi
mov dword [rsp + 0x84], ecx
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x80]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
jne 0x140095812
mov dword [rsp + 0x38], eax
lea rdx, [0x14012e320]
lea rcx, [rsp + 0x38]
call fcn.1400a0dbc
mov edx, 0x7fffffff
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_listen]
cmp eax, 0xffffffff
jne 0x14009583b
mov dword [rsp + 0x3c], eax
lea rdx, [0x14012e320]
lea rcx, [rsp + 0x3c]
call fcn.1400a0dbc
nop
jmp 0x140095846
cmp eax, 0xffffffff
jne 0x14009586d
test rbx, rbx
je 0x14009586d
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
nop
lea rcx, [rsp + 0xb0]
call fcn.140009040
or rax, 0xffffffffffffffff
jmp 0x14009587d
lea rcx, [rsp + 0xb0]
call fcn.140009040
mov rax, rbx
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.14009d860
mov rbx, qword [rsp + 0x118]
add rsp, 0x100
pop rdi
ret