Function at 0x10034ee0
Capabilities:
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1114
call fcn.1006f8b0
mov eax, dword [0x10138e70]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov esi, dword [eax]
mov ebx, dword [eax + 4]
lea eax, [ebp - 0x1003]
push 0xfff
push 0
push eax
mov dword [ebp - 0x1110], esi
mov byte [ebp - 0x1004], 0
call fcn.1006ff30
mov edi, dword [sym.imp.WS2_32.dll_recv]
add esp, 0xc
jmp 0x10034f36
mov esi, dword [ebp - 0x1110]
mov dword [ebp - 0x1104], esi
xor eax, eax
mov dword [ebp - 0x1108], 1
jmp 0x10034f50
cmp dword [ebp + eax*4 - 0x1104], ebx
je 0x10034f5f
inc eax
cmp eax, 1
jb 0x10034f50
cmp eax, 1
jne 0x10034f74
mov dword [ebp - 0x1100], ebx
mov dword [ebp - 0x1108], 2
push 0
push 0
push 0
lea eax, [ebp - 0x1108]
push eax
push 0
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x100350ae
lea eax, [ebp - 0x1108]
push eax
push esi
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x10035023
push 0x1000
lea eax, [ebp - 0x1004]
push 0
push eax
call fcn.1006ff30
add esp, 0xc
lea eax, [ebp - 0x1004]
push 0
push 0x1000
push eax
push esi
call edi
mov dword [ebp - 0x1114], eax
test eax, eax
jle 0x100350ae
mov esi, eax
xor edi, edi
nop
push 0
push esi
lea eax, [ebp - 0x1004]
add eax, edi
push eax
push ebx
call dword [sym.imp.WS2_32.dll_send]
test eax, eax
jle 0x10035001
sub esi, eax
add edi, eax
test esi, esi
jg 0x10034fe0
jmp 0x10035003
mov edi, eax
test edi, edi
jle 0x100350ae
cmp edi, dword [ebp - 0x1114]
jne 0x100350ae
mov esi, dword [ebp - 0x1110]
mov edi, dword [sym.imp.WS2_32.dll_recv]
lea eax, [ebp - 0x1108]
push eax
push ebx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x10034f36
push 0x1000
lea eax, [ebp - 0x1004]
push 0
push eax
call fcn.1006ff30
add esp, 0xc
lea eax, [ebp - 0x1004]
push 0
push 0x1000
push eax
push ebx
call edi
mov dword [ebp - 0x1114], eax
test eax, eax
jle 0x100350ae
mov esi, eax
xor edi, edi
lea ecx, [ecx]
push 0
push esi
lea eax, [ebp - 0x1004]
add eax, edi
push eax
push dword [ebp - 0x1110]
call dword [sym.imp.WS2_32.dll_send]
test eax, eax
jle 0x10035096
sub esi, eax
add edi, eax
test esi, esi
jg 0x10035070
jmp 0x10035098
mov edi, eax
test edi, edi
jle 0x100350ae
cmp edi, dword [ebp - 0x1114]
mov edi, dword [sym.imp.WS2_32.dll_recv]
je 0x10034f30
mov esi, dword [ebp - 0x1110]
mov eax, dword [sym.imp.WS2_32.dll_shutdown]
mov edi, dword [sym.imp.WS2_32.dll_setsockopt]
cmp esi, 0xffffffff
je 0x10035133
push 2
push esi
call eax
lea eax, [ebp - 0x1114]
mov dword [ebp - 0x1114], 0
push eax
push 0x8004667e
push esi
call dword [sym.imp.WS2_32.dll_ioctlsocket]
push 1
lea eax, [ebp - 0x1109]
mov byte [ebp - 0x1109], 0
push eax
push 0xffffff7f
push 0xffff
push esi
call edi
push 4
lea eax, [ebp - 0x1110]
mov dword [ebp - 0x1110], 1
push eax
push 0x80
push 0xffff
push esi
call edi
push esi
mov esi, dword [sym.imp.WS2_32.dll_closesocket]
call esi
mov eax, dword [sym.imp.WS2_32.dll_shutdown]
jmp 0x10035139
mov esi, dword [sym.imp.WS2_32.dll_closesocket]
cmp ebx, 0xffffffff
je 0x100351a0
push 2
push ebx
call eax
lea eax, [ebp - 0x1114]
mov dword [ebp - 0x1114], 0
push eax
push 0x8004667e
push ebx
call dword [sym.imp.WS2_32.dll_ioctlsocket]
push 1
lea eax, [ebp - 0x1109]
mov byte [ebp - 0x1109], 0
push eax
push 0xffffff7f
push 0xffff
push ebx
call edi
push 4
lea eax, [ebp - 0x1110]
mov dword [ebp - 0x1110], 1
push eax
push 0x80
push 0xffff
push ebx
call edi
push ebx
call esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1006f41a
mov esp, ebp
pop ebp
ret