Function at 0x49f9a0
Capabilities:
Get socket status

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x10
mov eax, 0x7fce8853
xor esi, esi
mov edi, 0x575c8218
mov ebp, 0x8699d6ea
jmp 0x49fa06
cmp eax, 0x7e294cfb
je 0x49fc5a
cmp eax, 0x7fce8853
jne 0x49fa06
mov eax, dword [0x5c4d90]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x80a758ec
mov ebx, 0xc186a28b
cmove eax, ebx
cmp dword [0x5c4d94], 0xa
mov edx, 0x80a758ec
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
cmp eax, 0xd200c636
jg 0x49fa60
cmp eax, 0xb5503e73
jle 0x49fba0
cmp eax, 0xc8f8d63b
jg 0x49fbfb
cmp eax, 0xb5503e74
je 0x49fc64
cmp eax, 0xc186a28b
jne 0x49fa06
mov eax, dword [0x5c4d90]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x80a758ec
mov ebx, 0x8b3d6b12
jmp 0x49f9ec
cmp eax, 0x201f1256
jle 0x49fbd0
cmp eax, 0x7e294cfa
jg 0x49f9ba
cmp eax, 0x201f1257
je 0x49fc6e
cmp eax, 0x4d35d60d
jne 0x49fa06
mov eax, dword [0x5c4d98]
mov ecx, dword [0x5c4d9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esp + 6]
cmp ecx, 0xa
setl byte [esp + 7]
mov ecx, 0xff74aeff
nop word [eax + eax]
cmp ecx, 0xff74aefe
jg 0x49fb00
cmp ecx, 0x8699d6ea
je 0x49fb38
cmp ecx, 0x99936572
jne 0x49fac0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
inc eax
push dword [esp + 0x2c]
push 0
push dword [esp + 0x30]
push 0
push eax
call dword [sym.imp.WS2_32.dll_select]
mov ecx, 0x8699d6ea
jmp 0x49fac0
cmp ecx, 0x575c8218
je 0x49fca1
cmp ecx, 0xff74aeff
jne 0x49fac0
movzx eax, byte [esp + 6]
movzx ecx, byte [esp + 7]
mov edx, eax
xor dl, cl
mov edx, 0x99936572
cmovne edx, ebp
test cl, cl
mov ecx, edx
cmovne ecx, ebp
test al, al
cmove ecx, edx
jmp 0x49fac0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
inc eax
push dword [esp + 0x2c]
push 0
push dword [esp + 0x30]
push 0
push eax
call dword [sym.imp.WS2_32.dll_select]
mov ecx, dword [0x5c4d98]
mov edx, dword [0x5c4d9c]
lea esi, [ecx + 1]
imul esi, ecx
mov ecx, esi
xor ecx, 0xfffffffe
test ecx, esi
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x99936572
cmovne ebx, edi
test ecx, esi
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
mov dword [esp + 0xc], eax
cmovge ecx, ebx
jmp 0x49fac0
cmp eax, 0x9ede3ffc
jg 0x49fc2b
cmp eax, 0x80a758ec
je 0x49fcaf
cmp eax, 0x8b3d6b12
jne 0x49fa06
mov eax, 0x201f1257
jmp 0x49fa06
cmp eax, 0xd200c637
je 0x49fcb9
cmp eax, 0xf0f9dcfb
je 0x49fdc4
cmp eax, 0xf59293db
jne 0x49fa06
mov eax, 0xad5de53e
jmp 0x49fa06
cmp eax, 0xc8f8d63c
je 0x49fddb
cmp eax, 0xd0aca8fb
jne 0x49fa06
call fcn.005923b7
cmp dword [eax], 4
mov eax, 0xf59293db
mov ecx, 0xc8f8d63c
cmove eax, ecx
jmp 0x49fa06
cmp eax, 0x9ede3ffd
jne 0x49fe5b
mov eax, dword [0x5c4d90]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x7e294cfb
mov ebx, 0xb5503e74
jmp 0x49fdfa
mov eax, 0x9ede3ffd
jmp 0x49fa06
mov eax, 0x7fce8853
jmp 0x49fa06
mov eax, dword [0x5c4d90]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x4d35d60d
mov ebx, 0xd200c637
cmove eax, ebx
cmp dword [0x5c4d94], 0xa
mov edx, 0x4d35d60d
jmp 0x49f9fb
mov esi, dword [esp + 0xc]
mov eax, 0xd200c637
jmp 0x49fa06
mov eax, 0xc186a28b
jmp 0x49fa06
mov eax, dword [0x5c4d98]
mov ecx, dword [0x5c4d9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esp + 4]
cmp ecx, 0xa
setl byte [esp + 5]
mov ecx, 0xff74aeff
nop word cs:[eax + eax]
cmp ecx, 0xff74aefe
jg 0x49fd30
cmp ecx, 0x8699d6ea
je 0x49fd68
cmp ecx, 0x99936572
jne 0x49fcf0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
inc eax
push dword [esp + 0x2c]
push 0
push dword [esp + 0x30]
push 0
push eax
call dword [sym.imp.WS2_32.dll_select]
mov ecx, 0x8699d6ea
jmp 0x49fcf0
cmp ecx, 0x575c8218
je 0x49fe0e
cmp ecx, 0xff74aeff
jne 0x49fcf0
movzx eax, byte [esp + 4]
movzx ecx, byte [esp + 5]
mov edx, eax
xor dl, cl
mov edx, 0x99936572
cmovne edx, ebp
test cl, cl
mov ecx, edx
cmovne ecx, ebp
test al, al
cmove ecx, edx
jmp 0x49fcf0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
inc eax
push dword [esp + 0x2c]
push 0
push dword [esp + 0x30]
push 0
push eax
call dword [sym.imp.WS2_32.dll_select]
mov ecx, dword [0x5c4d98]
mov edx, dword [0x5c4d9c]
lea esi, [ecx + 1]
imul esi, ecx
mov ecx, esi
xor ecx, 0xfffffffe
test ecx, esi
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0x99936572
cmovne ebx, edi
test ecx, esi
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
mov dword [esp + 8], eax
cmovge ecx, ebx
jmp 0x49fcf0
cmp byte [esp + 3], 0
mov eax, 0xf59293db
mov ecx, 0xd0aca8fb
cmovne eax, ecx
jmp 0x49fa06
mov eax, dword [0x5c4d90]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x7e294cfb
mov ebx, 0x9ede3ffd
cmove eax, ebx
cmp dword [0x5c4d94], 0xa
mov edx, 0x7e294cfb
jmp 0x49f9fb
mov eax, dword [0x5c4d90]
mov ecx, dword [0x5c4d94]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x4d35d60d
mov esi, 0xf0f9dcfb
cmovne ebx, esi
test eax, edx
mov eax, ebx
cmove eax, esi
cmp ecx, 0xa
mov esi, dword [esp + 8]
cmovge eax, ebx
test esi, esi
sets byte [esp + 3]
jmp 0x49fa06
cmp eax, 0xad5de53e
jne 0x49fa06
mov eax, esi
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret