Function at 0x100409b0
Capabilities:
Get socket status

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x220
mov eax, dword [0x101cd100]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x14]
push edi
push dword [ebp + 0x10]
push eax
push dword [ebp + 8]
call fcn.10027be0
mov ebx, dword [0x101ad290]
add esp, 0x10
mov esi, dword [0x101ad294]
cmp ebx, 0x257edfd1
jne 0x100409f8
cmp esi, 0xb2ab117a
je 0x10040a08
cmp ebx, 0x257edfd0
jne 0x10040a0c
cmp esi, 0xb2ab117a
jne 0x10040a0c
mov al, 1
jmp 0x10040a34
mov eax, dword [0x101ad288]
push 0x2734
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x101653ec]
mov ecx, 0x101ad288
call esi
mov esi, dword [0x101ad294]
mov ebx, dword [0x101ad290]
movzx eax, al
add eax, 2
mov dword [ebp - 0x218], 0x2734
mov dword [ebp - 0x210], eax
lea eax, [ebp - 0x218]
mov dword [ebp - 0x214], 0x101ad288
movq xmm0, qword [ebp - 0x218]
push eax
push edi
movq qword [ebp - 0x218], xmm0
call fcn.10020280
add esp, 8
test al, al
jne 0x10040b10
cmp ebx, 0x257edfd1
jne 0x10040a8c
cmp esi, 0xb2ab117a
je 0x10040a9c
cmp ebx, 0x257edfd0
jne 0x10040aa0
cmp esi, 0xb2ab117a
jne 0x10040aa0
mov al, 1
jmp 0x10040ac8
mov eax, dword [0x101ad288]
push 0x2733
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x101653ec]
mov ecx, 0x101ad288
call esi
mov esi, dword [0x101ad294]
mov ebx, dword [0x101ad290]
movzx eax, al
add eax, 2
mov dword [ebp - 0x218], 0x2733
mov dword [ebp - 0x210], eax
lea eax, [ebp - 0x218]
mov dword [ebp - 0x214], 0x101ad288
movq xmm0, qword [ebp - 0x218]
push eax
push edi
movq qword [ebp - 0x218], xmm0
call fcn.10020280
add esp, 8
test al, al
je 0x10040cbb
mov eax, dword [ebp + 8]
cmp eax, 0xffffffff
jne 0x10040b92
cmp ebx, 0x257edfd1
jne 0x10040b28
cmp esi, 0xb2ab117a
je 0x10040b38
cmp ebx, 0x257edfd0
jne 0x10040b3c
cmp esi, 0xb2ab117a
jne 0x10040b3c
mov al, 1
jmp 0x10040b58
mov eax, dword [0x101ad288]
push 0x2719
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x101653ec]
mov ecx, 0x101ad288
call esi
mov dword [ebp - 0x218], 0x2719
movzx eax, al
mov dword [ebp - 0x214], 0x101ad288
add eax, 2
movq xmm0, qword [ebp - 0x218]
movq qword [edi], xmm0
mov dword [edi + 8], eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10132a90
mov esp, ebp
pop ebp
ret
push 0
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x208], eax
push ecx
lea ecx, [ebp - 0x20c]
mov dword [ebp - 0x104], eax
push ecx
push 0
inc eax
mov dword [ebp - 0x20c], 1
push eax
mov dword [ebp - 0x108], 1
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
js 0x10040c96
lea eax, [ebp - 0x220]
mov dword [ebp - 0x21c], 0
push eax
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x220], 4
push eax
push 0x1007
push 0xffff
push dword [ebp + 8]
xorps xmm0, xmm0
movq qword [edi], xmm0
mov dword [edi + 8], 0
call dword [sym.imp.WS2_32.dll_getsockopt]
mov esi, eax
test esi, esi
setne cl
movzx ecx, cl
push ecx
push edi
call fcn.10030000
add esp, 8
cmp esi, 0xffffffff
je 0x10040cbb
mov ecx, dword [0x101ad290]
mov ebx, dword [ebp - 0x21c]
mov eax, dword [0x101ad294]
cmp ecx, 0x257edfd1
jne 0x10040c54
cmp eax, 0xb2ab117a
je 0x10040c63
cmp ecx, 0x257edfd0
jne 0x10040c73
cmp eax, 0xb2ab117a
jne 0x10040c73
test ebx, ebx
mov dword [ebp - 0x218], ebx
setne al
jmp 0x10040b62
mov eax, dword [0x101ad288]
push ebx
mov esi, dword [eax + 0x18]
mov ecx, esi
call dword [0x101653ec]
mov ecx, 0x101ad288
call esi
mov dword [ebp - 0x218], ebx
jmp 0x10040b62
push 0x101ad288
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
lea ecx, [ebp - 0x218]
call fcn.1001be50
movq xmm0, qword [eax]
movq qword [edi], xmm0
mov eax, dword [eax + 8]
mov dword [edi + 8], eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10132a90
mov esp, ebp
pop ebp
ret