Function at 0x48b1cc
Capabilities:
Get socket status
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe10
push ebx
push esi
xor edx, edx
mov dword [ebp - 0x1b8], edx
mov dword [ebp - 0x12c], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x48b523
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [ebx + 0x624], 0
je 0x48b4ff
xor eax, eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], 1
lea eax, [ebp - 0x118]
call fcn.00466de0
lea edx, [ebp - 0x118]
mov eax, dword [ebx + 0x624]
call fcn.00466dd0
lea eax, [ebp - 0xc]
push eax
push 0
push 0
lea eax, [ebp - 0x118]
push eax
mov eax, dword [ebx + 0x624]
inc eax
push eax
call sub.ws2_32.dll_select
test eax, eax
jle 0x48b4ff
lea edx, [ebp - 0x118]
mov eax, dword [ebx + 0x624]
call fcn.00466db8
test al, al
je 0x48b4ff
mov dword [ebp - 0x10], 0x10
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x128]
push eax
push 0
push 0x5b0
lea eax, [ebx + 0x5c]
push eax
mov eax, dword [ebx + 0x624]
push eax
call sub.ws2_32.dll_recvfrom
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jle 0x48b4ff
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x14]
sub eax, 4
sar eax, 1
jns 0x48b2b5
adc eax, 0
mov dl, byte [ebx + eax + 0x5c]
cmp dl, 8
jae 0x48b2c1
add dl, 0xa8
cmp dl, 0xf7
jbe 0x48b2c9
sub dl, 0x6c
mov esi, eax
dec esi
test esi, esi
jl 0x48b2e0
inc esi
xor eax, eax
cmp eax, 8
je 0x48b2e0
xor byte [ebx + eax + 0x5c], dl
inc eax
dec esi
jne 0x48b2d3
cmp dword [ebx + 0x620], 1
jne 0x48b4ff
cmp dword [ebp - 0x14], 5
jl 0x48b45f
lea eax, [ebp - 0x12c]
push eax
call fcn.00484e58
sub eax, dword [ebx + 0x50]
mov dword [ebp - 0x1b4], eax
mov byte [ebp - 0x1b0], 0
movzx esi, byte [ebx + 0x5e]
mov dword [ebp - 0x1ac], esi
mov byte [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1a4], eax
mov byte [ebp - 0x1a0], 0
xor eax, eax
mov al, byte [ebx + 0x5c]
mov dword [ebp - 0x19c], eax
mov byte [ebp - 0x198], 0
xor eax, eax
mov al, byte [ebx + 0x5d]
mov dword [ebp - 0x194], eax
mov byte [ebp - 0x190], 0
mov dword [ebp - 0x18c], esi
mov byte [ebp - 0x188], 0
xor eax, eax
mov al, byte [ebx + 0x5f]
mov dword [ebp - 0x184], eax
mov byte [ebp - 0x180], 0
xor eax, eax
mov al, byte [ebx + 0x60]
mov dword [ebp - 0x17c], eax
mov byte [ebp - 0x178], 0
xor eax, eax
mov al, byte [ebx + 0x61]
mov dword [ebp - 0x174], eax
mov byte [ebp - 0x170], 0
xor eax, eax
mov al, byte [ebx + 0x62]
mov dword [ebp - 0x16c], eax
mov byte [ebp - 0x168], 0
xor eax, eax
mov al, byte [ebx + 0x63]
mov dword [ebp - 0x164], eax
mov byte [ebp - 0x160], 0
xor eax, eax
mov al, byte [ebx + 0x64]
mov dword [ebp - 0x15c], eax
mov byte [ebp - 0x158], 0
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebx + eax + 0x57]
mov dword [ebp - 0x154], eax
mov byte [ebp - 0x150], 0
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebx + eax + 0x58]
mov dword [ebp - 0x14c], eax
mov byte [ebp - 0x148], 0
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebx + eax + 0x59]
mov dword [ebp - 0x144], eax
mov byte [ebp - 0x140], 0
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebx + eax + 0x5a]
mov dword [ebp - 0x13c], eax
mov byte [ebp - 0x138], 0
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebx + eax + 0x5b]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0
lea edx, [ebp - 0x1b4]
mov ecx, 0x10
mov eax, 0x48b53c
call fcn.004098c8
mov eax, dword [ebp - 0x12c]
call fcn.00484e90
jmp 0x48b4ff
lea eax, [ebp - 0x1b8]
push eax
call fcn.00484e58
sub eax, dword [ebx + 0x50]
mov dword [ebp - 0x1f0], eax
mov byte [ebp - 0x1ec], 0
movzx esi, byte [ebx + 0x5e]
mov dword [ebp - 0x1e8], esi
mov byte [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1e0], eax
mov byte [ebp - 0x1dc], 0
xor eax, eax
mov al, byte [ebx + 0x5c]
mov dword [ebp - 0x1d8], eax
mov byte [ebp - 0x1d4], 0
xor eax, eax
mov al, byte [ebx + 0x5d]
mov dword [ebp - 0x1d0], eax
mov byte [ebp - 0x1cc], 0
mov dword [ebp - 0x1c8], esi
mov byte [ebp - 0x1c4], 0
xor eax, eax
mov al, byte [ebx + 0x5f]
mov dword [ebp - 0x1c0], eax
mov byte [ebp - 0x1bc], 0
lea edx, [ebp - 0x1f0]
mov ecx, 6
mov eax, 0x48b5b0
call fcn.004098c8
mov eax, dword [ebp - 0x1b8]
call fcn.00484e90
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48b52a
lea eax, [ebp - 0x1b8]
call fcn.004047d0
lea eax, [ebp - 0x12c]
call fcn.004047d0
ret