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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
mov edi, dword [ebp + 0xc]
mov esi, ecx
mov ecx, 0x7fffffff
xorps xmm0, xmm0
lea ebx, [esp + 0x28]
lea eax, [esp + 0x30]
mov dword [esp + 0x28], pe_nt_image_headers32
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0x90], xmm0
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x70], xmm0
movaps xmmword [esp + 0x60], xmm0
movaps xmmword [esp + 0x50], xmm0
movaps xmmword [esp + 0x40], xmm0
movaps xmmword [esp + 0x30], xmm0
cmp edi, 0x7fffffff
cmovb ecx, edi
mov edi, dword [ebp + 0x10]
push ebx
push eax
push edi
push ecx
push dword [ebp + 8]
push edx
call sub.ws2_32.dll_recvfrom
cmp eax, 0xffffffff
je 0x45c226
movzx edx, word [esp + 0x30]
mov ecx, eax
mov eax, dword [esp + 0x28]
cmp edx, 0x17
je 0x45c299
cmp edx, 2
jne 0x45c27b
cmp eax, 0xf
jbe 0x45c39d
movzx eax, word [esp + 0x32]
mov edx, dword [esp + 0x34]
xor edi, edi
rol ax, 8
mov dword [esp + 0xc], edx
mov dword [esp + 0x14], edx
mov word [esp + 0x10], ax
mov ebx, dword [esp + 0xe]
jmp 0x45c2e3
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x45c2fd
movzx ecx, word [esp + 0x30]
mov eax, dword [esp + 0x28]
cmp ecx, 0x17
je 0x45c311
cmp ecx, 2
jne 0x45c27b
cmp eax, 0xf
jbe 0x45c39d
movzx eax, word [esp + 0x32]
mov ecx, dword [esp + 0x34]
xor ebx, ebx
rol ax, 8
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], ecx
mov word [esp + 0x10], ax
mov edi, dword [esp + 0xe]
jmp 0x45c353
mov byte [esp + 0xe], 2
mov eax, dword [esp + 0xe]
mov dword [esi + 8], eax
mov dword [esi + 0xc], 0x5932f0
mov word [esi + 4], 2
jmp 0x45c395
cmp eax, 0x1b
jbe 0x45c3ae
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
movzx edx, word [esp + 0x32]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x2c], edi
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x48]
rol dx, 8
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x44]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x40]
mov dword [esp + 0x1c], edi
mov di, 1
mov dword [esi], ecx
mov word [esi + 4], di
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov word [esi + 6], cx
mov dword [esi + 0xc], edi
mov dword [esi + 8], ebx
jmp 0x45c36f
mov byte [esi + 8], 0
mov dx, 2
mov ecx, 4
mov edi, 0xc
jmp 0x45c38e
cmp eax, 0x1b
jbe 0x45c3ae
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
movzx edx, word [esp + 0x32]
mov edi, dword [esp + 0x38]
mov bx, 1
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x48]
rol dx, 8
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], ecx
mov dword [esi], 0
mov word [esi + 4], bx
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov word [esi + 6], cx
mov dword [esi + 0xc], ebx
mov dword [esi + 8], edi
mov ecx, dword [esp + 0x1c]
mov edi, 0x1c
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x20]
mov dword [esi + 0x14], ecx
mov ecx, dword [esp + 0x24]
mov dword [esi + 0x18], ecx
mov ecx, 0x20
mov dword [esi + edi], eax
mov word [esi + ecx], dx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x593284
push 0x39
push 0x593228
call fcn.00497b20
push 0x5932d0
push 0x3a
push 0x593294
call fcn.00497b20
nop
push ebp
mov ebp, esp
push esi
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov edx, dword [eax]
mov ecx, esi
push 0
push dword [ebp + 0x14]
push dword [ebp + 0x10]
call fcn.0045c160
add esp, 0xc
mov eax, esi
pop esi
pop ebp
ret