Function at 0x408c70
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 0xc]
push ebp
mov esi, dword [ebp + 8]
push edi
pop ss
jge 0x408c8f
mov eax, ebx
or eax, edi
jne 0x408cae
mov ecx, dword [esi + 0x76]
mov eax, dword [esi - 0xf]
or ecx, eax
je 0x55408d9d
or al, byte [ecx]
add byte [ebp + 0x15], dl
push esi
add al, 0x52
call 0x71404720
add esp, 4
test eax, eax
je 0x69408d9d
adc eax, 0xe8520456
test byte [edx - 0x3b7c8f01], bh
add al, 0x85
ror byte [edi], 0x84
test byte [eax], 0
imul ebx, dword [edi + 0x5e], 0xcc25d5b
add byte [edx], ch
les eax, [0xa7e69b8c]
pop edi
pop esi
pop ebx
pop ebp
ret 0xc
sub al, ah
add eax, 0xa7e69b8c
add byte [edx + 8], dh
and bl, bl
pavgw mm0, qword [edi + 0x43890029]
inc esi
enter 0x4e8b, 0xffffffffffffff9e
or eax, ecx
mov word [ebx + ecx*4], ss
jno 0x408cd1
push ecx
call fcn.00408bd0
pushal
les eax, [eax*4 - 0x387af040]
add byte [eax], al
add byte [ebx - 0x2c04d4aa], cl
jne 0x408caa
invalid
mov ecx, dword [edx + 0x24]
cmp eax, edi
in al, 0x84
lodsd eax, dword [esi]
add byte [eax], al
add byte [ebx + 0xe4104d], cl
imul ebp, eax, 3
add byte [edi], cl
je 0x408d4f
lea edi, [esi + 0x18]
call 0x7ab514
mov ah, 0x8a
add al, 0x8b
sbb eax, 0xa340c1b8
push 4
xor edi, dword [ebp + 6]
add al, 0x33
jge 0x408d18
mov word [eax], es
add byte [eax - 1], ch
inc dword [eax]
add byte [edx - 0x77], dl
pop es
add byte [eax], al
push edx
mov dword [edi], eax
call ebx
sub byte [esi + 4], al
pop eax
add al, 0x57
push 0x1005
push 0xffcd
push eax
call ebx
pop ebx
cmp eax, 0xc5d8b10
mov dword [esi + 0x24], edi
mov dword [esi + 0x20], ebx
push es
add byte [eax - 0x33], ch
inc dword [eax]
add byte [eax - 1], dl
rcr dword [ebx + 0x3d], cl
adc byte [ebx + 0x7e890c5d], cl
and al, 0x89
pop esi
and byte [esi], al
pop esi
sub eax, 0xc25d5bc0
or al, 0
test edi, edi
jg 0x408d9d
jl 0x408d0e
test ebx, ebx
jae 0x408d9d
stosd dword es:[edi], eax
dec esi
add al, 0x17
cmp ecx, dword [eax]
add byte [eax], al
add cl, ah
push ecx
mov ebp, 0xffd7fe6f
add esp, 4
push 0x8b3d75c0
sti
jge 0x408d29
cmp eax, 0x40c1da
lea edx, [ebp + 8]
push 4
push edx
push 0x1006
push 0xfff5
push eax
call edi
mov edx, dword [esi + 4]
lea ecx, [ebp + 8]
push 4
push ecx
pop ss
add eax, 0x68000010
invalid
mov dword [esi + 0x20], ebx
jnp 0x408e20
and al, 0x5f
rcr byte [edi - 0x7c], 0x5b
pop ebp
fimul dword [esi + ebp*8]
nop
nop
sti
nop
push ebp
mov ebp, esp
push ecx
mov eax, dword [ebp + 0x10]
xor esp, dword [ecx + 0x24265852]
ror dword [ecx + 0x4d8bfc4d], 0xc
outsb dx, byte [esi]
stc
inc eax
push esi
jg 0xc09003
je 0x408fdb
dec ecx
add dword [eax], 0xffffffb4
ja 0x4090de
xor edx, edx
mov dl, byte [ecx - 0x4bbf6ef0]
mov dl, 0x77
fdivp st(0)
nop
inc eax
add byte [ebx - 0x2d74b28b], cl
mov ecx, dword [esi + 0x38]
and ecx, 2
xor al, 0xc
add cl, byte [edi]
leave
ret 0xc23b
add byte [eax], al
mov eax, dword [edi - 0x74257af0]
inc esi
cmp dword [esi + ecx + 0xc], esi
add cl, byte [esi - 0x19ccc7ba]
pop esi
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 8]
lea ecx, [ebp + 0x10]
push 4
push ebp
mov eax, dword [edx + 4]
push 0x1001
dec eax
salc
sbb al, 0xbc
add byte [eax - 1], dl
adc eax, 0x40c1f1
cmp eax, 0xffffffff
jne 0x96408e31
enter 0x4d62, 0xfffffffffffffff9
fadd qword [eax + 0x1e]
add byte [edi], cl
pop edi
add byte [eax], al
add byte [edi], cl
ja 0x408fe7
pop esp
add byte [eax], al
cmp ecx, 0xa9003e
je 0xd190ae
cmp ecx, 0x200
jne 0x57d7de
mov esi, dword [ebp + 8]
dec ecx
ror byte [ebx - 0x1e7ec7ad], cl
add byte [eax - 0x67f0000], bl
in al, dx
add al, byte [eax]
sbb eax, 0x3bc2b00f
rcl byte [edx - 0x80a87c]
push esi
dec esi
add al, 0x8d
inc ebp
adc al, 0x6a
add al, 0x50
push 1
push 6
push edi
call dword [sym.imp.WSOCK32.dll_setsockopt]
mov ebp, 0x2175fff8
mov esi, dword [0x40c7d8]
call esi
wait
fisttp dword [eax + 7]
pop esi
mov eax, dword [ebp + 0x5d]
sub cl, byte [eax + eax]
call esi
add eax, 0xafc80
pop esi
mov esp, ebp
pop ebp
ret 0xc
mov eax, 0x16
pop edx
mov esp, ebp
pop ebp
add al, 0xc
add byte [eax + 0x1e887], bh
pop esi
mov esp, ebp
pop ebp
ret 0x140c