Function at 0x43197c
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x431edb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp dword [eax + 0x460], 0xffffffff
je 0x4319c5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c6], 7
je 0x4319c5
mov edx, 0x431ef4
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x54]
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x484], 0
jne 0x4319e3
mov edx, 0x431f1c
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x54]
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x470], 0
jne 0x431a01
mov edx, 0x431f40
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x54]
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x478], 0
jne 0x431a1f
mov edx, 0x431f6c
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x54]
jmp 0x431ec5
xor eax, eax
push ebp
push 0x431b5b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0x479], 0
jne 0x431a91
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x47c]
call fcn.00431030
mov ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x474], ebx
sub ebx, 6
je 0x431a6b
sub ebx, 0xb
jne 0x431a7a
mov eax, dword [ebp - 4]
mov dword [eax + 0x498], 2
jmp 0x431a87
mov eax, dword [ebp - 4]
mov dword [eax + 0x498], 1
jmp 0x431a87
mov eax, dword [ebp - 4]
mov dword [eax + 0x498], 3
mov eax, dword [ebp - 4]
mov byte [eax + 0x479], 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x485], 0
jne 0x431ae6
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.00430768
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x480]
call fcn.00430e14
movzx ebx, ax
mov eax, dword [ebp - 4]
mov dword [eax + 0x488], ebx
mov eax, ebx
bound eax, qword [0x431f8c]
call fcn.0042f394
mov edx, dword [ebp - 4]
mov word [edx + 0x536], ax
mov eax, dword [ebp - 4]
mov byte [eax + 0x485], 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x47a], 0
jne 0x431b24
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.00430768
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48c]
call fcn.00430e14
movzx eax, ax
mov edx, dword [ebp - 4]
mov dword [edx + 0x490], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x47a], 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x468], 0
jne 0x431b51
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x464]
call fcn.00430bc8
mov edx, dword [ebp - 4]
mov dword [edx + 0x538], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x468], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x431b98
mov eax, dword [ebp - 4]
call fcn.00432764
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x474]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x498]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x46c]
call fcn.0042f104
mov ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x460], ebx
inc ebx
jne 0x431be0
mov edx, 0x431fb0
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0042fd90
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c6], 1
je 0x431c12
mov eax, 0x2726
call fcn.0042ee80
mov edx, 0x431fcc
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp dword [eax + 0x498], 2
jne 0x431d1e
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x48]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4b9], 0
je 0x431ccf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c0]
cmp eax, 1
je 0x431c7a
mov dword [ebp - 8], eax
push 4
lea eax, [ebp - 8]
push eax
push 0xa
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
push eax
call sub.ws2_32.dll_setsockopt
test eax, eax
je 0x431c7a
mov edx, 0x432004
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x494]
mov edx, 0x43202c
call fcn.00403aec
je 0x431ccf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x494]
call fcn.00430bc8
mov dword [ebp - 0xc], eax
push 4
lea eax, [ebp - 0xc]
push eax
push 9
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
push eax
call sub.ws2_32.dll_setsockopt
test eax, eax
je 0x431ccf
mov edx, 0x43203c
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp dword [eax + 0x538], 0xffffffff
jne 0x431e0c
mov dword [ebp - 8], 1
lea eax, [ebp - 8]
push eax
push 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
mov ecx, 0x20
mov edx, 0xffff
call fcn.0042f184
test eax, eax
je 0x431e0c
mov edx, 0x432060
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov dword [ebp - 8], 0xffffffff
lea eax, [ebp - 8]
push eax
push 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
mov ecx, 4
mov edx, 0xffff
call fcn.0042f184
test eax, eax
je 0x431d59
mov edx, 0x432084
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
test byte [eax + 0x4c5], 2
je 0x431da0
mov dword [ebp - 8], 0xffffffff
lea eax, [ebp - 8]
push eax
push 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
mov ecx, 1
mov edx, 6
call fcn.0042f184
test eax, eax
je 0x431da0
mov edx, 0x4320a8
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
call fcn.004318b0
mov dword [ebp - 8], 0xffffffff
lea eax, [ebp - 8]
push eax
push 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
mov ecx, 8
mov edx, 0xffff
call fcn.0042f184
test eax, eax
je 0x431de3
mov edx, 0x4320d8
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp dword [eax + 0x490], 0
jne 0x431e04
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x494]
mov edx, 0x43202c
call fcn.00403aec
je 0x431e0c
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x48]
mov edx, dword [ebp - 4]
mov eax, 0x3b
mov dword [edx + 0x4cc], eax
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x40]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
mov ecx, 0x401
call fcn.0042eff8
test eax, eax
je 0x431e47
mov edx, 0x4320fc
mov eax, dword [ebp - 4]
call fcn.00432c0c
jmp 0x431ec5
mov eax, dword [ebp - 4]
cmp dword [eax + 0x498], 2
jne 0x431e69
mov dl, 4
mov eax, dword [ebp - 4]
call fcn.0042fd90
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x64]
jmp 0x431ec5
mov eax, dword [ebp - 4]
lea edx, [eax + 0x534]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x460]
mov ecx, 0x10
call fcn.0042f450
test eax, eax
jne 0x431e95
mov dl, 3
mov eax, dword [ebp - 4]
call fcn.0042fd90
jmp 0x431ec5
call fcn.0042eebc
cmp eax, 0x2733
jne 0x431ead
mov dl, 3
mov eax, dword [ebp - 4]
call fcn.0042fd90
jmp 0x431ec5
call fcn.0042eebc
mov edx, dword [ebp - 4]
mov dword [edx + 0x3c], eax
mov edx, 0x432114
mov eax, dword [ebp - 4]
call fcn.00432c0c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x431ee2
lea eax, [ebp - 0x10]
call fcn.00403760
ret