Function at 0x513580
Capabilities:
Check http status code

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x648dc3
push eax
mov dword fs:[0], esp
sub esp, 0x8c
mov eax, str.heloCommand
push ebx
mov ebx, dword [esp + 0xa0]
push ebp
push esi
test bl, bl
push edi
mov ebp, ecx
jne 0x5135b6
mov eax, str.ehloCommand
mov esi, dword [esp + 0xbc]
push eax
push esi
lea ecx, [esp + 0x24]
call fcn.004f0370
mov edi, dword [esp + 0xb4]
lea ecx, [esp + 0x28]
mov dword [esp + 0xa4], 0
mov dword [edi], 0
call fcn.004e57f0
lea eax, [esp + 0x28]
push esi
push eax
push ebx
mov ecx, ebp
mov byte [esp + 0xb0], 1
call fcn.00512630
mov esi, dword [esp + 0xb8]
mov ebx, dword [esp + 0xbc]
push esi
push ebx
push 0
lea ecx, [esp + 0x34]
call fcn.004dda00
push eax
mov ecx, ebp
call fcn.0050d1e0
test al, al
jne 0x513634
mov edx, dword [ebx]
push str.Failed_to_send_EHLO
mov ecx, ebx
call dword [edx + 0x14]
jmp 0x51368a
push ebx
push esi
lea ecx, [esp + 0x30]
call fcn.004dda00
push eax
mov ecx, ebp
call fcn.0050e460
mov esi, eax
test esi, esi
je 0x51368a
mov ecx, dword [esp + 0xb0]
push esi
call fcn.00507640
mov eax, dword [esi + 8]
mov dword [edi], eax
mov eax, dword [esi + 8]
cmp eax, 0xc8
jl 0x513670
cmp eax, 0x12c
jl 0x5136b6
mov edx, dword [ebx]
push str.Non_success_EHLO_response.
mov ecx, ebx
call dword [edx + 0x14]
mov eax, dword [str.GreetingError]
lea ecx, [ebp + 4]
push eax
call fcn.004e8b00
lea ecx, [esp + 0x28]
mov byte [esp + 0xa4], 0
call fcn.004e58d0
lea ecx, [esp + 0x1c]
mov dword [esp + 0xa4], 0xffffffff
call fcn.004f03e0
xor al, al
jmp 0x5139a9
add esi, 0x80
mov ecx, esi
mov dword [esp + 0x18], esi
call fcn.00596fa0
xor ecx, ecx
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x10], ecx
jle 0x513982
mov ebx, dword [sym.imp.MSVCRT.dll__strnicmp]
jmp 0x5136e5
mov esi, dword [esp + 0x18]
push ecx
mov ecx, esi
call fcn.00507340
mov esi, eax
test esi, esi
je 0x51396d
mov ecx, esi
call fcn.004e2b40
mov ecx, esi
call fcn.004e2930
cmp eax, 3
jae 0x51372f
mov edi, dword [esp + 0xbc]
push str.SMTP_response_is_too_short.
mov ecx, edi
mov edx, dword [edi]
call dword [edx + 0x14]
push esi
push str.smtpResponseLine
mov ecx, edi
call fcn.004efcb0
jmp 0x51396d
mov ecx, esi
call fcn.004dda00
lea esi, [eax + 4]
push str.AUTH
push esi
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 8
test eax, eax
jne 0x513769
lea edi, [ebp + 0x708]
mov ecx, edi
call fcn.004dc460
test al, al
je 0x513769
push str.NONE
mov ecx, edi
call fcn.004d9800
push 8
push str.8BITMIME
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x513786
mov byte [ebp + 0xd12], 1
jmp 0x51396d
push 0x13
push str.ENHANCEDSTATUSCODES
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x5137a3
mov byte [ebp + 0xd1c], 1
jmp 0x51396d
push 8
push str.STARTTLS
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x5137c0
mov byte [ebp + 0xd1e], 1
jmp 0x51396d
push 0xa
push str.PIPELINING
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x5137dd
mov byte [ebp + 0xd19], 1
jmp 0x51396d
push 8
push str.CHUNKING
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x5137fa
mov byte [ebp + 0xd16], 1
jmp 0x51396d
push 8
push str.SMTPUTF8
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x513817
mov byte [ebp + 0xd1d], 1
jmp 0x51396d
push 3
push 0x6e8178
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x513834
mov byte [ebp + 0xbac], 1
jmp 0x51396d
push 5
push 0x6e8170
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x51385a
push 5
push 0x6e8168
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x51396d
push str._LOGIN
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x513873
mov byte [ebp + 0xd23], 1
push str.LOGIN
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x51388c
mov byte [ebp + 0xd23], 1
push str._NTLM
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x5138a5
mov byte [ebp + 0xd27], 1
push str._MSN
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x5138be
mov byte [ebp + 0xd28], 1
push str._GSSAPI
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x5138d7
mov byte [ebp + 0xd25], 1
push str._ANONYMOUS
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x5138f0
mov byte [ebp + 0xd21], 1
push str._PLAIN
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x513909
mov byte [ebp + 0xd22], 1
push str._CRAM_MD5
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x513922
mov byte [ebp + 0xd20], 1
push str._DIGEST_MD5
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x51393b
mov byte [ebp + 0xd24], 1
push str._XOAUTH2
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x513954
mov byte [ebp + 0xd29], 1
push str._KERBEROS_V4
push esi
call fcn.004f0610
add esp, 8
test eax, eax
je 0x51396d
mov byte [ebp + 0xd26], 1
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
inc ecx
cmp ecx, eax
mov dword [esp + 0x10], ecx
jl 0x5136e1
lea ecx, [esp + 0x28]
mov byte [esp + 0xa4], 0
call fcn.004e58d0
lea ecx, [esp + 0x1c]
mov dword [esp + 0xa4], 0xffffffff
call fcn.004f03e0
mov al, 1
mov ecx, dword [esp + 0x9c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x98
ret 0x14