Function at 0x4f45f0
Capabilities:
Set socket configuration

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov ebx, ecx
mov rbp, rdx
mov edi, r8d
mov dword [rsp + 0x34], 1
mov dword [rsp + 0x3c], 4
cmp ecx, 0xffffffff
je 0x4f4740
movsxd rsi, ecx
lea rax, [rsp + 0x3c]
lea r9, [rsp + 0x38]
mov r8d, 0x1008
mov qword [rsp + 0x20], rax
mov edx, 0xffff
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_getsockopt]
test eax, eax
jne 0x4f464a
cmp dword [rsp + 0x3c], 4
je 0x4f46a2
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x20], 0xdc
mov edx, 0xf
xor ebx, ebx
mov r8d, eax
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 2
call fcn.005292e0
mov r8d, 0x86
mov edx, 0x8b
mov dword [rsp + 0x20], 0xdd
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 0x20
call fcn.005292e0
mov eax, ebx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov edx, edi
mov ecx, ebx
shr edx, 3
and edx, 1
call fcn.004f40f0
mov ebx, eax
test eax, eax
je 0x4f4697
test dil, 4
jne 0x4f47d4
test dil, 0x10
je 0x4f46f0
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 6
mov rcx, rsi
mov r8d, 1
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
jne 0x4f4930
mov rcx, rbp
call fcn.004f09a0
cmp eax, 0x17
je 0x4f4850
mov rcx, rbp
call fcn.004f0b70
mov rcx, rbp
mov ebx, eax
call fcn.004f0b50
mov r8d, ebx
mov rcx, rsi
mov rdx, rax
call qword [sym.imp.WS2_32.dll_bind]
mov ebx, eax
test eax, eax
jne 0x4f48d4
cmp dword [rsp + 0x38], 2
jne 0x4f4771
mov ebx, 1
jmp 0x4f4697
mov dword [rsp + 0x20], 0xd5
lea r9, str.crypto_bio_b_sock2.c
mov r8d, 0x87
xor ebx, ebx
mov edx, 0x8b
mov ecx, 0x20
call fcn.005292e0
mov eax, ebx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov edx, 0x7fffffff
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_listen]
cmp eax, 0xffffffff
jne 0x4f4733
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, 7
mov ecx, 2
mov dword [rsp + 0x20], 0x10a
mov r8d, eax
lea r9, str.crypto_bio_b_sock2.c
call fcn.005292e0
mov r8d, 0x77
mov edx, 0x8b
mov dword [rsp + 0x20], 0x10b
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 0x20
call fcn.005292e0
jmp 0x4f4697
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov rcx, rsi
mov r8d, 8
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x4f46c1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x20], 0xe7
mov edx, 0xe
xor ebx, ebx
mov r8d, eax
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 2
call fcn.005292e0
mov r8d, 0x89
mov edx, 0x8b
mov dword [rsp + 0x20], 0xe8
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 0x20
call fcn.005292e0
jmp 0x4f4697
sar edi, 1
lea r9, [rsp + 0x34]
mov r8d, 0x1b
mov rcx, rsi
and edi, 1
mov dword [rsp + 0x20], 4
mov edx, 0x29
mov dword [rsp + 0x34], edi
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x4f4701
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x20], 0xff
mov edx, 0xe
xor ebx, ebx
mov r8d, eax
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 2
call fcn.005292e0
mov r8d, 0x88
mov edx, 0x8b
mov dword [rsp + 0x20], 0x100
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 0x20
call fcn.005292e0
jmp 0x4f4697
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x20], 0xa1
mov edx, 6
xor ebx, ebx
mov r8d, eax
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 2
call fcn.005292e0
mov r8d, 0x75
mov edx, 0x93
mov dword [rsp + 0x20], 0xa2
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 0x20
call fcn.005292e0
jmp 0x4f4697
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x20], 0xf0
mov edx, 0xe
xor ebx, ebx
mov r8d, eax
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 2
call fcn.005292e0
mov r8d, 0x8a
mov edx, 0x8b
mov dword [rsp + 0x20], 0xf1
lea r9, str.crypto_bio_b_sock2.c
mov ecx, 0x20
call fcn.005292e0
jmp 0x4f4697