Function at 0x4a2ba4
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff10
xor eax, eax
mov dword [ebp - 4], eax
xor edx, edx
mov dword [ebp - 8], edx
mov ecx, dword [ebp + 8]
test ecx, ecx
je 0x4a2bc7
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x20]
mov dword [ebp - 4], edx
mov ecx, dword [ebp + 8]
test ecx, ecx
je 0x4a2bd7
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x24]
mov dword [ebp - 8], edx
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call sub.WSOCK32.DLL_setsockopt
mov dword [ebp - 0xc], eax
call sub.WSOCK32.DLL_WSAGetLastError
mov dword [0x5cf78c], eax
lea ecx, [ebp - 0xf0]
push ecx
push dword [0x5cf78c]
call fcn.004a3440
add esp, 8
mov eax, dword [ebp + 0x10]
cmp eax, 0xffff
jne 0x4a2e29
push str.SOL_SOCKET
lea edx, [ebp - 0xc0]
push edx
call fcn.0056805c
add esp, 8
mov ecx, dword [ebp + 0x14]
cmp ecx, 0x20
jg 0x4a2c7f
je 0x4a2ce7
cmp ecx, 4
jg 0x4a2c68
je 0x4a2dc8
sub ecx, 0xffffff7f
je 0x4a2d19
sub ecx, 0x82
je 0x4a2d00
dec ecx
je 0x4a2cce
jmp 0x4a2e13
sub ecx, 8
je 0x4a2d64
sub ecx, 8
je 0x4a2d32
jmp 0x4a2e13
cmp ecx, 0x1002
jg 0x4a2cb6
je 0x4a2daf
sub ecx, 0x80
je 0x4a2d7d
sub ecx, 0x80
je 0x4a2d96
sub ecx, 0xf01
je 0x4a2de1
jmp 0x4a2e13
sub ecx, 0x1007
je 0x4a2d4b
dec ecx
je 0x4a2dfa
jmp 0x4a2e13
push str.SO_ACCEPTCONN
lea eax, [ebp - 0xd4]
push eax
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_BROADCAST
lea edx, [ebp - 0xd4]
push edx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_DEBUG
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_DONTLINGER
lea eax, [ebp - 0xd4]
push eax
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_DONTROUTE
lea edx, [ebp - 0xd4]
push edx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_ERROR
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_KEEPALIVE
lea eax, [ebp - 0xd4]
push eax
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_LINGER
lea edx, [ebp - 0xd4]
push edx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_OOBINLINE
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_RCVBUF
lea eax, [ebp - 0xd4]
push eax
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_REUSEADDR
lea edx, [ebp - 0xd4]
push edx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_SNDBUF
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.SO_TYPE
lea eax, [ebp - 0xd4]
push eax
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.__INVALID__
lea edx, [ebp - 0xd4]
push edx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
mov ecx, dword [ebp + 0x10]
cmp ecx, 6
jne 0x4a2e77
push str.IPPROTO_TCP
lea eax, [ebp - 0xc0]
push eax
call fcn.0056805c
add esp, 8
mov edx, dword [ebp + 0x14]
dec edx
jne 0x4a2e61
push str.TCP_NODELAY
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.__INVALID__
lea eax, [ebp - 0xd4]
push eax
call fcn.0056805c
add esp, 8
jmp 0x4a2e9f
push str.__INVALID__
lea edx, [ebp - 0xc0]
push edx
call fcn.0056805c
add esp, 8
push str.__INVALID__
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0056805c
add esp, 8
lea eax, [ebp - 0xf0]
push eax
push dword [ebp - 0xc]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
lea edx, [ebp - 0xd4]
push edx
lea ecx, [ebp - 0xc0]
push ecx
push dword [ebp + 0xc]
push dword [ebp - 4]
push str.Sock_ID_lu_setsockopt__u__s__s_0x_p__d_______d___s_
lea eax, [ebp - 0xac]
push eax
call fcn.0056b4b8
add esp, 0x28
lea edx, [ebp - 0xac]
push edx
push dword [ebp - 8]
push dword [0x5c1d50]
push dword [0x5c1d4c]
call sub.USER32.DLL_SendMessageA
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret 0x18