Function at 0x100db1f0
Capabilities:
Receive data
Receive data on socket
Set socket configuration

Disassembly:
sub esp, 0x220
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x21c], eax
push ebx
mov ebx, dword [esp + 0x238]
test ebx, ebx
push esi
mov esi, dword [esp + 0x230]
mov dword [esp + 0x1c], esi
mov dword [esp + 8], ebx
mov dword [esp + 0x10], 0xffffffff
je 0x100db518
push ebp
mov ebp, dword [esp + 0x230]
push edi
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
push ecx
push 0x1006
push 0xffff
push ebp
mov dword [ebx], 0
mov dword [esp + 0x3c], 4
call dword [sym.imp.WS2_32.dll_getsockopt]
cmp eax, 0xffffffff
jne 0x100db273
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebx], eax
or esi, 0xffffffff
jmp 0x100db366
mov edx, dword [esp + 0x240]
push 4
lea eax, [esp + 0x18]
push eax
push 0x1006
push 0xffff
push ebp
mov dword [esp + 0x28], edx
call dword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x100db2ab
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebx], eax
or esi, 0xffffffff
jmp 0x100db366
test esi, esi
je 0x100db415
mov eax, dword [esp + 0x23c]
test eax, eax
je 0x100db415
xor edi, edi
mov dword [esp + 0x1c], edi
lea ebx, [eax + 4]
jmp 0x100db2d0
cmp ebx, 0x200
mov esi, 0x200
jae 0x100db2df
mov esi, ebx
push 0x200
lea ecx, [esp + 0x30]
push 0
push ecx
call fcn.10100160
add esp, 0xc
push 0
push esi
lea edx, [esp + 0x34]
push edx
push ebp
call dword [sym.imp.WS2_32.dll_recv]
mov esi, eax
cmp esi, 0xffffffff
je 0x100db3c0
test esi, esi
je 0x100db40e
cmp dword [esp + 0x1c], 0
jne 0x100db33a
mov edx, dword [esp + 0x24]
lea eax, [esi - 4]
push eax
lea ecx, [esp + 0x34]
push ecx
add edx, edi
push edx
call fcn.10101480
add esp, 0xc
lea edi, [edi + esi - 4]
jmp 0x100db351
mov ecx, dword [esp + 0x24]
push esi
lea eax, [esp + 0x30]
push eax
add ecx, edi
push ecx
call fcn.10101480
add esp, 0xc
add edi, esi
add dword [esp + 0x1c], 1
sub ebx, esi
test ebx, ebx
jg 0x100db2d0
mov esi, edi
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
cmp eax, 0xffffffff
je 0x100db3a5
mov edi, dword [sym.imp.WS2_32.dll_setsockopt]
push 4
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
push 0x1006
push 0xffff
push ebp
call edi
cmp eax, 0xffffffff
jne 0x100db3a5
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [ebx], eax
mov eax, dword [esp + 0x18]
or esi, 0xffffffff
cmp eax, esi
jne 0x100db375
pop edi
pop ebp
mov eax, esi
pop esi
pop ebx
mov ecx, dword [esp + 0x21c]
xor ecx, esp
call fcn.100ff704
add esp, 0x220
ret
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2746
mov edx, dword [esp + 0x10]
mov dword [edx], eax
je 0x100db402
cmp eax, 0x2745
je 0x100db402
cmp eax, 0x274a
je 0x100db402
cmp eax, 0x2744
je 0x100db402
xor ecx, ecx
cmp eax, 0x274c
setne cl
mov ebx, edx
lea ecx, [ecx*4 - 5]
mov esi, ecx
jmp 0x100db366
mov esi, 0xfffffffa
mov ebx, edx
jmp 0x100db366
xor esi, esi
jmp 0x100db362
mov edi, dword [sym.imp.WS2_32.dll_recv]
jmp 0x100db420
xor esi, esi
push 2
push 4
lea edx, [esp + 0x28]
push edx
push ebp
mov dword [esp + 0x30], 0
call edi
cmp eax, 0xffffffff
je 0x100db484
test eax, eax
je 0x100db47d
cmp eax, 4
jae 0x100db452
cmp esi, 3
jge 0x100db2a3
add esi, 1
jmp 0x100db422
jne 0x100db2a3
mov esi, dword [esp + 0x20]
cmp esi, 0xc521974f
jne 0x100db506
push 0
push 4
lea eax, [esp + 0x28]
push eax
push ebp
call edi
cmp eax, 0xffffffff
je 0x100db4c0
test eax, eax
jne 0x100db420
xor esi, esi
jmp 0x100db366
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2746
mov dword [ebx], eax
je 0x100db4fc
cmp eax, 0x2745
je 0x100db4fc
cmp eax, 0x274a
je 0x100db4fc
cmp eax, 0x2744
je 0x100db4fc
xor ecx, ecx
cmp eax, 0x274c
setne cl
lea ecx, [ecx*4 - 5]
mov esi, ecx
jmp 0x100db366
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2746
mov dword [ebx], eax
je 0x100db4fc
cmp eax, 0x2745
je 0x100db4fc
cmp eax, 0x274a
je 0x100db4fc
cmp eax, 0x2744
je 0x100db4fc
xor edx, edx
cmp eax, 0x274c
setne dl
lea edx, [edx*4 - 5]
mov esi, edx
jmp 0x100db366
mov esi, 0xfffffffa
jmp 0x100db366
test esi, esi
jg 0x100db366
mov esi, 0xfffffff8
jmp 0x100db366
mov ecx, dword [esp + 0x224]
pop esi
pop ebx
xor ecx, esp
or eax, 0xffffffff
call fcn.100ff704
add esp, 0x220
ret