Function at 0x1d4074e
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x202c
call fcn.01d558b0
push esi
push edi
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x18]
push eax
push 0
push 0x2000
lea eax, [ebp - 0x202c]
mov esi, ecx
push eax
push dword [esi + 0x207c]
mov dword [ebp - 8], 0x10
call dword [sym.imp.WS2_32.dll_recvfrom]
push dword [ebp - 0x16]
mov edi, eax
call dword [sym.imp.WS2_32.dll_ntohs]
cmp edi, 0xffffffff
je 0x1d409b9
push ebx
lea ebx, [edi - 4]
cmp ebx, 0x1ffb
ja 0x1d409b8
cmp dword [ebp - 0x202c], 0xfffffffe
jne 0x1d4093f
xor ecx, ecx
mov dword [ebp - 4], ecx
cmp dword [esi + 0x209c], ecx
jne 0x1d407f4
movsx eax, byte [ebp - 0x2024]
and eax, 0xf
mov dword [esi + 0x209c], eax
mov eax, dword [ebp - 0x2028]
mov dword [esi + 0x20a4], eax
mov dword [esi + 0x20a8], ecx
mov dword [esi + 0x20a0], 1
jmp 0x1d4080c
mov eax, dword [esi + 0x20a4]
cmp eax, dword [ebp - 0x2028]
jne 0x1d40924
inc dword [esi + 0x20a0]
movzx eax, byte [ebp - 0x2024]
shr eax, 4
cmp eax, ecx
jne 0x1d40821
mov dword [ebp - 4], 4
cmp eax, 0x10
jge 0x1d40852
imul eax, eax, 0x203c
lea ebx, [eax + esi + 0x20ac]
mov ecx, ebx
call fcn.01d3e371
mov eax, dword [ebp - 4]
lea ecx, [ebp + eax - 0x2023]
sub edi, eax
push ecx
sub edi, 9
push edi
mov ecx, ebx
call fcn.01d3e4ed
mov eax, dword [esi + 0x20a0]
cmp eax, dword [esi + 0x209c]
jne 0x1d409b8
push dword [esi + 0x2074]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [0x1d874b8]
mov eax, dword [ecx]
lea edx, [ebp - 0x2c]
push edx
lea edx, [ebp - 0x18]
push edx
call dword [eax + 4]
push dword [esi + 0x30]
lea ecx, [esi + 0x24]
call fcn.01d40ba9
imul eax, eax, 0x203c
add eax, dword [esi + 0x24]
mov ebx, eax
mov ecx, ebx
call fcn.01d3e371
and dword [ebp - 4], 0
cmp dword [esi + 0x209c], 0
jle 0x1d408f3
lea edi, [esi + 0x20ac]
lea eax, [ebp - 0x202c]
push eax
mov ecx, edi
call fcn.01d3e208
push eax
mov ecx, edi
call fcn.01d3e307
lea eax, [ebp - 0x202c]
push eax
mov ecx, edi
call fcn.01d3e208
push eax
mov ecx, ebx
call fcn.01d3e4ed
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add edi, 0x203c
cmp eax, dword [esi + 0x209c]
jl 0x1d408b3
fld dword [ebp + 8]
push ecx
mov ecx, ebx
fstp dword [esp]
call fcn.01d3e210
lea eax, [ebp - 0x2c]
push eax
mov ecx, ebx
call fcn.01d3e224
push dword [esi + 0x2074]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
and dword [esi + 0x209c], 0
jmp 0x1d409b8
inc dword [esi + 0x20a8]
cmp dword [esi + 0x20a8], 2
jle 0x1d409b8
mov dword [esi + 0x209c], ecx
jmp 0x1d409b8
cmp dword [ebp - 0x202c], 0xffffffff
jne 0x1d409b8
push dword [esi + 0x2074]
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [0x1d874b8]
mov eax, dword [ecx]
lea edx, [ebp - 0x2c]
push edx
lea edx, [ebp - 0x18]
push edx
call dword [eax + 4]
push dword [esi + 0x30]
lea ecx, [esi + 0x24]
call fcn.01d40ba9
imul eax, eax, 0x203c
add eax, dword [esi + 0x24]
mov edi, eax
mov ecx, edi
call fcn.01d3e371
lea eax, [ebp - 0x2028]
push eax
push ebx
mov ecx, edi
call fcn.01d3e4ed
fld dword [ebp + 8]
push ecx
mov ecx, edi
fstp dword [esp]
call fcn.01d3e210
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
call fcn.01d3e224
push dword [esi + 0x2074]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
pop ebx
pop edi
pop esi
leave
ret 4