Function at 0x5b3a24
Capabilities:
Get local ipv4 addresses
Get socket information
Receive data
Receive data on socket

Disassembly:
test dword [0x7eda90], 0xffffff80
jne 0x5b3a4c
test dword [0x7eda90], 0xffffffff
jne 0x5b3bf0
call fcn.006a6b5c
jmp fcn.005b3a24
push edi
push esi
push ebp
push ebx
push ecx
mov eax, 0x1c
call fcn.00696350
mov ecx, dword [esp + 0x1c]
mov ebp, ecx
mov dword [esp + 0x10], 0x10
lea edx, [esp]
lea eax, [esp + 0x10]
push eax
push edx
push dword [ebp + 8]
call sub.WSOCK32.dll_getsockname
lea eax, [esp + 4]
push 2
push 0x10
push eax
call sub.WSOCK32.dll_gethostbyaddr
test eax, eax
je 0x5b3bd5
lea ecx, [esp + 0x14]
mov edx, dword [eax]
call fcn.004f5acc
mov ecx, dword [esp + 0x14]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3ab6
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3aa1
dec eax
add eax, 0xa
mov ecx, eax
call fcn.004dbd48
mov dword [esp + 0x18], eax
push str.ESMTP
push 0x7e8d00
call fcn.00696450
add esp, 8
test eax, eax
je 0x5b3bbd
push dword [esp + 0x14]
push str.EHLO__s_r_n
mov eax, dword [esp + 0x20]
push eax
call fcn.006964d6
add esp, 0xc
mov ecx, dword [esp + 0x18]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3b0f
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3afa
dec eax
push eax
mov edx, dword [esp + 0x1c]
push edx
mov ecx, ebp
call fcn.005b5490
cmp eax, 1
je 0x5b3bb6
mov esi, dword [ebp + 8]
mov byte [0x7e8d00], 0
xor ebx, ebx
lea eax, [esp + 0x1c]
push 0
push 1
push eax
push esi
call sub.WSOCK32.dll_recv
test eax, eax
jne 0x5b3b70
mov byte [ebx + 0x7e8d00], 0
push 3
push 0x7e8d00
push 0x6d50dc
call fcn.00697890
add esp, 0xc
test eax, eax
jne 0x5b3bb6
cmp byte [0x7e8d03], 0x2d
je 0x5b3b25
xor ebp, ebp
jmp 0x5b3b9a
cmp eax, 0xffffffff
je 0x5b3b95
movzx eax, byte [esp + 0x1c]
mov byte [ebx + 0x7e8d00], al
inc ebx
cmp eax, 0xa
je 0x5b3b44
cmp ebx, 0x3e8
jb 0x5b3b31
mov byte [0x7e8d00], 0
mov ebp, 1
mov ecx, dword [esp + 0x14]
call fcn.004db418
mov ecx, dword [esp + 0x18]
call fcn.004db418
mov eax, ebp
add esp, 0x20
pop ebx
pop ebp
pop esi
pop edi
ret
mov ebp, 1
jmp 0x5b3b9a
push dword [esp + 0x14]
push str.HELO__s_r_n
mov eax, dword [esp + 0x20]
push eax
call fcn.006964d6
jmp 0x5b3af1
push dword [esp + 4]
call sub.WSOCK32.dll_inet_ntoa
lea ecx, [esp + 0x14]
mov edx, eax
call fcn.004f5acc
jmp 0x5b3a9b
push edi
push esi
push ebp
push ebx
push ecx
mov eax, 0x1c
call fcn.00696350
mov ecx, dword [esp + 0x1c]
mov ebp, ecx
mov dword [esp + 0x10], 0x10
lea edx, [esp]
lea eax, [esp + 0x10]
push eax
push edx
push dword [ebp + 8]
call sub.WSOCK32.dll_getsockname
lea eax, [esp + 4]
push 2
push 0x10
push eax
call sub.WSOCK32.dll_gethostbyaddr
test eax, eax
je 0x5b3d7b
lea ecx, [esp + 0x14]
mov edx, dword [eax]
call fcn.004f5acc
mov ecx, dword [esp + 0x14]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3c5a
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3c45
dec eax
add eax, 0xa
mov ecx, eax
call fcn.004dbd48
mov dword [esp + 0x18], eax
push str.ESMTP
push 0x7e8d00
call fcn.00696450
add esp, 8
test eax, eax
je 0x5b3d63
push dword [esp + 0x14]
push str.EHLO__s_r_n
mov eax, dword [esp + 0x20]
push eax
call fcn.006964d6
add esp, 0xc
mov ecx, dword [esp + 0x18]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x5b3cb3
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x5b3c9e
dec eax
push eax
mov edx, dword [esp + 0x1c]
push edx
mov ecx, ebp
call fcn.005b5490
cmp eax, 1
je 0x5b3d53
mov esi, dword [ebp + 8]
mov byte [0x7e8d00], 0
xor ebx, ebx
cmp ebx, 0x3e8
jae 0x5b3d5a
lea eax, [esp + 0x1c]
push 0
push 1
push eax
push esi
call sub.WSOCK32.dll_recv
test eax, eax
je 0x5b3d0d
cmp eax, 0xffffffff
jne 0x5b3cfc
mov ebp, 1
jmp 0x5b3d37
movzx eax, byte [esp + 0x1c]
mov byte [ebx + 0x7e8d00], al
inc ebx
cmp eax, 0xa
jne 0x5b3cd5
mov byte [ebx + 0x7e8d00], 0
push 3
push 0x7e8d00
push 0x6d50dc
call fcn.00697890
add esp, 0xc
test eax, eax
jne 0x5b3d53
cmp byte [0x7e8d03], 0x2d
je 0x5b3cc9
xor ebp, ebp
mov ecx, dword [esp + 0x14]
call fcn.004db418
mov ecx, dword [esp + 0x18]
call fcn.004db418
mov eax, ebp
add esp, 0x20
pop ebx
pop ebp
pop esi
pop edi
ret
mov ebp, 1
jmp 0x5b3d37
mov byte [0x7e8d00], 0
jmp 0x5b3cf5
push dword [esp + 0x14]
push str.HELO__s_r_n
mov eax, dword [esp + 0x20]
push eax
call fcn.006964d6
jmp 0x5b3c95
push dword [esp + 4]
call sub.WSOCK32.dll_inet_ntoa
lea ecx, [esp + 0x14]
mov edx, eax
call fcn.004f5acc
jmp 0x5b3c3f