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

Disassembly:
sub esp, 0x20
push ebx
mov ebx, dword [sym.imp.WS2_32.dll_recv]
push ebp
push esi
push edi
xor esi, esi
nop
mov ebp, dword [esp + 0x34]
push 0
mov eax, 8
sub eax, esi
push eax
lea ecx, [esp + esi + 0x24]
push ecx
push ebp
call ebx
cmp eax, 0xffffffff
je 0x4022d4
test eax, eax
je 0x4022f2
add esi, eax
cmp esi, 8
jne 0x402260
mov edx, dword [esp + 0x20]
mov esi, dword [sym.imp.WS2_32.dll_ntohl]
push edx
call esi
mov edi, dword [esp + 0x3c]
push 0
push 6
mov dword [esp + 0x20], eax
push 8
lea eax, [esp + 0x28]
push eax
push ebp
mov ecx, edi
call fcn.004056b0
add esp, 0x14
cmp eax, 8
je 0x402362
add eax, 3
cmp eax, 9
ja case.0x4022cd.0
movzx ecx, byte [eax + 0x4025c8]
jmp dword [ecx*4 + 0x4025b4]
mov esi, dword [esp + 0x3c]
mov ebx, 0x100
mov edi, str.recv__:
call fcn.00406290
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x402314
push str.The_other_host_terminated_the_connection.
push 0x100
push esi
call fcn.0040722a
add esp, 0xc
mov byte [esi + 0xff], 0
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov eax, 0xfffffffe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov edx, dword [esp + 0x20]
push edx
call esi
test eax, eax
je case.0x4022cd.1
mov eax, dword [esp + 0x20]
push 0
push 0
push eax
call esi
push ebp
mov ecx, eax
call fcn.004067a0
add esp, 0xc
test eax, eax
jne 0x40257f
mov eax, 0xfffffffd
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
xor esi, esi
push 0
mov ecx, 8
sub ecx, esi
push ecx
lea edx, [esp + esi + 0x2c]
push edx
push ebp
call ebx
cmp eax, 0xffffffff
je 0x4023c3
test eax, eax
je 0x4023e0
add esi, eax
cmp esi, 8
jne 0x402364
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x40257f
mov eax, dword [esp + 0x24]
mov ebx, dword [sym.imp.WS2_32.dll_ntohs]
push eax
call ebx
movzx eax, ax
sub eax, 0
je 0x40250f
sub eax, 1
je 0x402408
push str.Authentication_type_not_recognized.
jmp 0x40251b
mov esi, edi
mov ebx, 0x100
mov edi, str.recv__:
call fcn.00406290
mov dword [esp + 0x14], 0xffffffff
mov edi, esi
jmp 0x40238a
test edi, edi
je 0x4023fe
push str.The_other_host_terminated_the_connection.
push 0x100
push edi
call fcn.0040722a
add esp, 0xc
mov byte [edi + 0xff], 0
mov dword [esp + 0x14], 0xffffffff
jmp 0x40238a
mov ecx, dword [esp + 0x28]
push ecx
call ebx
mov edx, dword [esp + 0x2a]
push edx
movzx esi, ax
call ebx
movzx ebx, ax
lea eax, [esi + 1]
push eax
call fcn.004079c3
lea ecx, [ebx + 1]
push ecx
mov edi, eax
call fcn.004079c3
add esp, 8
test edi, edi
mov ebp, eax
je 0x4024e4
test ebp, ebp
je 0x4024e4
test esi, esi
jne 0x40244d
xor eax, eax
jmp 0x402469
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
push 0x100
push edx
push 1
push esi
push eax
mov eax, edi
call fcn.00406710
add esp, 0x14
mov ecx, dword [esp + 0x14]
add ecx, eax
cmp ecx, 0xffffffff
mov dword [esp + 0x10], ecx
jne 0x402481
mov ebp, dword [esp + 0x34]
jmp 0x40257f
test ebx, ebx
jne 0x402489
xor eax, eax
jmp 0x4024a9
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
push 0x100
push edx
push 1
push ebx
push eax
mov eax, ebp
call fcn.00406710
mov ecx, dword [esp + 0x24]
add esp, 0x14
add ecx, eax
cmp ecx, 0xffffffff
mov dword [esp + 0x10], ecx
jne 0x4024bd
mov ebp, dword [esp + 0x34]
jmp 0x40257f
mov byte [edi + esi], 0
mov esi, dword [esp + 0x3c]
mov ecx, ebp
mov edx, edi
mov byte [ebx + ebp], 0
call fcn.004025e0
test eax, eax
mov ebp, dword [esp + 0x34]
je 0x402530
mov esi, 0xfffffffe
jmp 0x402582
call fcn.00407692
mov ecx, dword [eax]
push ecx
call sub.wpcap.dll_pcap_strerror
mov edx, dword [esp + 0x40]
push eax
push str.malloc___failed:__s
push 0x100
push edx
call fcn.0040722a
mov ebp, dword [esp + 0x48]
add esp, 0x14
jmp 0x40257f
cmp dword [esp + 0x38], 0
jne 0x402532
push str.Authentication_failed__NULL_autentication_not_permitted.
push 0x100
push edi
call fcn.0040722a
add esp, 0xc
mov esi, 0xfffffffe
jmp 0x402582
mov edi, esi
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
cmp eax, ecx
je 0x402551
push 0
push 0
sub ecx, eax
push ebp
call fcn.004067a0
add esp, 0xc
test eax, eax
jne 0x40257f
push 0
push 0x88
xor ecx, ecx
lea esi, [esp + 0x24]
call fcn.00405680
push 0x100
push edi
mov eax, 8
mov ecx, esi
mov edx, ebp
call fcn.004066b0
add esp, 0x10
cmp eax, 0xffffffff
jne 0x4025a7
or esi, 0xffffffff
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
cmp eax, ecx
je 0x40259d
push 0
push 0
sub ecx, eax
push ebp
call fcn.004067a0
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x20
ret