Function at 0x46a131
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
cmp dword [ebp + 8], 0
jne 0x46a1ab
mov dword [ebp - 8], 0x80203bfd
cmp dword [ebp + 0x10], 0
je 0x46a1a0
cmp dword [ebp + 0x10], 0xffffe7e0
je 0x46a1a0
mov dword [esp + 4], 2
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461239
test eax, eax
je 0x46a1a0
call sub.WS2_32.DLL_WSAGetLastError
mov edx, eax
mov eax, dword [ebp - 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
mov dword [esp + 4], str.RvSocketSetBlocking_sockNULL__isBlocking_d__errno_d__d
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.0046157e
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
jmp 0x46a40e
cmp dword [ebp + 0x10], 0
je 0x46a1fe
cmp dword [ebp + 0x10], 0xffffe7e0
je 0x46a1fe
mov dword [esp + 4], 0x20
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461239
test eax, eax
je 0x46a1fe
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov dword [esp + 4], str.RvSocketSetBlocking_sock_d__isBlocking_d_
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461652
cmp dword [ebp + 0xc], 1
je 0x46a281
cmp dword [ebp + 0xc], 0
je 0x46a281
mov dword [ebp - 8], 0x80203bfd
cmp dword [ebp + 0x10], 0
je 0x46a276
cmp dword [ebp + 0x10], 0xffffe7e0
je 0x46a276
mov dword [esp + 4], 2
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461239
test eax, eax
je 0x46a276
call sub.WS2_32.DLL_WSAGetLastError
mov edx, eax
mov eax, dword [ebp - 8]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov dword [esp + 4], str.RvSocketSetBlocking_sock_d__isBlocking_d__errno_d__d
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.0046157e
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
jmp 0x46a40e
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [ebp - 4], eax
mov dword [ebp - 8], 0
cmp dword [ebp - 8], 0
je 0x46a2fb
cmp dword [ebp + 0x10], 0
je 0x46a2fb
cmp dword [ebp + 0x10], 0xffffe7e0
je 0x46a2fb
mov dword [esp + 4], 2
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461239
test eax, eax
je 0x46a2fb
call sub.WS2_32.DLL_WSAGetLastError
mov edx, eax
mov eax, dword [ebp - 8]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov dword [esp + 4], str.RvSocketSetBlocking_sock_d__isBlocking_d__errno_d__d
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.0046157e
cmp dword [ebp + 0xc], 0
sete al
movzx eax, al
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x8004667e
mov eax, dword [ebp - 4]
mov dword [esp], eax
call sub.WS2_32.DLL_ioctlsocket
sub esp, 0xc
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jns 0x46a335
mov dword [ebp - 8], 0x80203bff
cmp dword [ebp - 8], 0
jne 0x46a3a3
cmp dword [ebp + 0x10], 0
je 0x46a408
cmp dword [ebp + 0x10], 0xffffe7e0
je 0x46a408
mov dword [esp + 4], 0x40
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461239
test eax, eax
je 0x46a408
mov eax, dword [ebp - 8]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov dword [esp + 4], str.RvSocketSetBlocking_sock_d__isBlocking_d__d
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461687
jmp 0x46a408
cmp dword [ebp + 0x10], 0
je 0x46a408
cmp dword [ebp + 0x10], 0xffffe7e0
je 0x46a408
mov dword [esp + 4], 2
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.00461239
test eax, eax
je 0x46a408
call sub.WS2_32.DLL_WSAGetLastError
mov edx, eax
mov eax, dword [ebp - 8]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov dword [esp + 4], str.RvSocketSetBlocking_sock_d__isBlocking_d__errno_d__d
mov eax, dword [ebp + 0x10]
add eax, 0x1820
mov dword [esp], eax
call fcn.0046157e
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
leave
ret