Function at 0x180079f40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rcx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
mov qword [r11 - 0x50], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov r14, r9
mov r13d, r8d
mov rbx, rcx
mov eax, dword [str.EHLO]
mov dword [rsp + 0x50], eax
mov al, byte [0x1802821d4]
mov byte [rsp + 0x54], al
mov eax, dword [str.HELO]
mov dword [rsp + 0x48], eax
mov al, byte [0x1802821dc]
mov byte [rsp + 0x4c], al
mov eax, dword [str.DATA]
mov dword [rsp + 0x40], eax
mov al, byte [0x1802821e4]
mov byte [rsp + 0x44], al
mov eax, dword [str.STLS]
mov dword [rsp + 0x38], eax
mov al, byte [0x180281fd4]
mov byte [rsp + 0x3c], al
movsd xmm0, qword [str.STARTTLS]
movsd qword [rsp + 0xc0], xmm0
mov al, byte [0x180281fe0]
mov byte [rsp + 0xc8], al
movups xmm0, xmmword [str.354_Start_mail_input__end_with__CRLF_._CRLF__r_n]
movups xmmword [r11 - 0x80], xmm0
movups xmm1, xmmword [0x1802821f8]
movups xmmword [r11 - 0x70], xmm1
movsd xmm0, qword [0x180282208]
movsd qword [r11 - 0x60], xmm0
mov eax, dword [0x180282210]
mov dword [r11 - 0x58], eax
movzx eax, word [0x180282214]
mov word [r11 - 0x54], ax
mov al, byte [0x180282216]
mov byte [r11 - 0x52], al
mov eax, dword [str.NOOP_r_n]
mov dword [rsp + 0x78], eax
movzx eax, word [0x18028221c]
mov word [rsp + 0x7c], ax
mov al, byte [0x18028221e]
mov byte [rsp + 0x7e], al
xor esi, esi
lea r15d, [rsi + 2]
cmp byte [rcx + 0x70], r15b
je 0x18007a057
xor eax, eax
jmp 0x18007aa9b
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx + 0x160]
call fcn.180076058
mov rcx, rax
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x18007a050
movsxd r12, dword [rsp + 0x180]
test r12d, r12d
jle 0x18007aa3f
mov ecx, dword [rbx + 0x1c]
test ecx, ecx
je 0x18007a982
sub ecx, 1
je 0x18007a9b8
sub ecx, 1
je 0x18007a56a
sub ecx, 1
je 0x18007a452
sub ecx, 1
je 0x18007a3cc
sub ecx, 1
je 0x18007a1c2
sub ecx, 1
je 0x18007a11d
cmp ecx, 1
jne 0x18007aa3b
test r12d, r12d
jle 0x18007a0e8
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a0d5
mov esi, r15d
test r13d, r13d
jne 0x18007aa3b
cmp r12d, 1
jle 0x18007aa3b
mov rcx, r14
call fcn.1801d16f0
cmp eax, 0x162
jne 0x18007aa3b
mov dword [rbx + 0x1c], 5
jmp 0x18007aa3b
test r12d, r12d
jle 0x18007a137
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a124
mov esi, 3
test r13d, r13d
jne 0x18007aa3b
cmp r12d, 1
jle 0x18007aa3b
mov rcx, r14
call fcn.1801d16f0
cmp eax, 0x162
jne 0x18007aa3b
mov dword [rbx + 0x1c], esi
mov eax, dword [str._r_n._r_n]
mov dword [rsp + 0x160], eax
movzx eax, word [0x180281e28]
mov word [rsp + 0x164], ax
lea r9, [rbx + 0x48]
lea r8d, [rsi - 2]
mov rdx, rbx
mov rcx, qword [rbx + 0x10]
call fcn.1800798c0
mov dword [rsp + 0x28], 5
lea rax, [rsp + 0x160]
mov qword [rsp + 0x20], rax
lea r9d, [rsi - 2]
mov r8d, r9d
mov rdx, rbx
mov rcx, qword [rbx + 0x10]
call fcn.180078c88
jmp 0x18007aa3b
cmp r13d, 1
jne 0x18007a3c2
lea rdi, [rbx + 0x48]
mov rax, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [rax + 0x30]
mov rsi, rax
mov qword [rsp + 0x30], rax
lea r13, [rbx + 0x20]
mov r9b, 1
mov r8d, r12d
mov rdx, r14
mov rcx, r13
call fcn.18006d160
mov ecx, dword [rbx + 0x30]
mov r12, qword [rbx + 0x28]
mov eax, dword [str._r_n._r_n]
mov dword [rsp + 0x80], eax
movzx eax, word [0x180281e28]
mov word [rsp + 0x84], ax
cmp ecx, 5
jl 0x18007a2dd
lea esi, [rcx - 5]
test esi, esi
js 0x18007a26b
movsxd r14, esi
add r14, r12
movsx edx, byte [r14]
lea rcx, str._r_n_t.
call fcn.1801c2cf8
test rax, rax
je 0x18007a26b
movsxd rdx, esi
add rdx, r12
mov r8d, 5
lea rcx, [rsp + 0x80]
call fcn.1801c2c00
test eax, eax
je 0x18007a26f
dec r14
sub esi, 1
jns 0x18007a231
or rsi, 0xffffffffffffffff
test esi, esi
jle 0x18007a2d8
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov r8d, esi
mov rdx, qword [rbx + 0x28]
call qword [rax + 0x20]
mov rcx, r13
call fcn.18006d240
test byte [rbx + 0x18], 8
je 0x18007a29e
mov rax, qword [rdi]
mov dl, 1
mov rcx, rdi
call qword [rax + 0x20]
mov dword [rbx + 0x1c], 3
mov rax, qword [rbx + 0x10]
mov rcx, qword [rsp + 0xd0]
mov r9, qword [rcx]
mov r8, rdi
mov rdx, qword [rax + 8]
call qword [r9 + 0x40]
nop
jmp 0x18007a3af
mov rsi, qword [rsp + 0x30]
mov r8d, dword [rbx + 0x30]
mov edi, 0xa
cmp r8d, edi
jle 0x18007a33a
mov rax, qword [rsi]
add r8d, 0xfffffff6
mov rdx, qword [rbx + 0x28]
mov rcx, rsi
call qword [rax + 0x20]
mov rcx, qword [rbx + 0x28]
mov edx, dword [rbx + 0x30]
add rdx, 0xfffffffffffffff6
add rdx, rcx
mov r8d, edi
call fcn.1801c2370
cmp dword [r13 + 0x14], edi
jbe 0x18007a326
mov dword [r13 + 0x10], edi
mov rax, qword [r13 + 8]
mov byte [rax + 0xa], 0
jmp 0x18007a33a
sub edi, dword [r13 + 0x14]
xor r9d, r9d
mov r8d, edi
xor edx, edx
mov rcx, r13
call fcn.18006d160
test byte [rbx + 0x18], 8
jne 0x18007a3af
and qword [rsp + 0x30], 0
and qword [rsp + 0x160], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
lea rcx, [rsp + 0x160]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x160]
cqo
idiv qword [rsp + 0x30]
mov rcx, rax
sub rax, qword [rbx + 0x40]
cmp rax, 0xf
jbe 0x18007a3af
mov qword [rbx + 0x40], rcx
mov dword [rsp + 0x28], 6
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8d, r9d
mov rdx, rbx
mov rcx, qword [rbx + 0x10]
call fcn.180078c88
mov eax, dword [rbx + 0x18]
shr eax, 3
not eax
and eax, 1
or eax, r15d
jmp 0x18007aa9b
mov esi, 3
jmp 0x18007aa3b
test r12d, r12d
jle 0x18007a3e6
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a3d3
test r13d, r13d
jne 0x18007aa3b
cmp r12d, 1
jle 0x18007aa3b
mov rcx, r14
call fcn.1801d16f0
cmp eax, 0xdc
jne 0x18007aa3b
and dword [rbx + 0x1c], esi
lea esi, [r13 + 3]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r14
xor r9d, r9d
lea r8d, [r13 + 1]
mov rdx, rbx
mov rcx, qword [rbx + 0x10]
call fcn.180078c88
mov r8d, dword [rbx + 0x18]
test r8b, 0x10
je 0x18007aa3b
xor r9d, r9d
lea edx, [rsi + 0x61]
mov rcx, qword [rbx + 0x10]
call fcn.1800791c8
jmp 0x18007aa3b
test r12d, r12d
jle 0x18007a46c
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a459
mov byte [rbx + 9], 1
cmp r13d, 1
jne 0x18007aa38
mov r8d, r12d
mov rdx, r14
mov rcx, rbx
call fcn.180060600
cmp eax, 3
jne 0x18007aa9b
mov r12, qword [rbx + 0x28]
mov r14d, dword [rbx + 0x30]
mov esi, r15d
lea edi, [rax + 1]
cmp r14d, 5
jl 0x18007a4bc
mov r8d, edi
lea rdx, [rsp + 0x38]
mov rcx, r12
call fcn.1801d7a8c
test eax, eax
jne 0x18007a4bc
mov dword [rbx + 0x1c], edi
cmp dword [rbx + 0x1c], 3
jne 0x18007aa2d
cmp r14d, 9
jl 0x18007a4e9
mov r8d, 8
lea rdx, [rsp + 0xc0]
mov rcx, r12
call fcn.1801d7a8c
test eax, eax
jne 0x18007a4e9
mov dword [rbx + 0x1c], edi
cmp dword [rbx + 0x1c], 3
jne 0x18007aa2d
cmp r14d, 5
jl 0x18007aa2d
mov r8, rdi
lea rdx, [rsp + 0x40]
mov rcx, r12
call fcn.1801d7a8c
test eax, eax
jne 0x18007aa2d
lea rcx, [rbx + 0x48]
mov rax, qword [rcx]
call qword [rax + gethostname]
test byte [rbx + 0x18], 8
jne 0x18007a55e
mov esi, 3
mov dword [rbx + 0x1c], 5
mov dword [rsp + 0x28], gethostbyname
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8d, [rsi - 2]
mov rdx, rbx
mov rcx, qword [rbx + 0x10]
call fcn.180078c88
jmp 0x18007aa2d
mov dword [rbx + 0x1c], 7
jmp 0x18007aa2d
test r12d, r12d
jle 0x18007a584
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a571
test r13d, r13d
jne 0x18007aa3b
cmp r12d, 1
jle 0x18007aa3b
mov rcx, r14
call fcn.1801d16f0
cmp eax, 0xfa
jne 0x18007aa3b
movdqa xmm0, xmmword [0x180283730]
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x58], sil
lea rcx, [rsp + 0x58]
cmp r12, 0xf
ja 0x18007a5df
mov qword [rsp + 0x68], r12
mov r8, r12
mov rdx, r14
call fcn.1801c2370
mov byte [rsp + r12 + 0x58], sil
jmp 0x18007a5eb
mov r9, r14
mov rdx, r12
call fcn.18005a6b8
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x88], xmm0
and qword [rsp + 0x98], 0
xor r13b, r13b
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x58]
call fcn.1800607dc
and qword [rsp + 0x160], 0
mov r14, qword [rsp + 0x90]
mov r12, qword [rsp + 0x88]
sub r14, r12
sar r14, 5
test r14, r14
je 0x18007a8d8
mov rdi, r12
or rsi, 0xffffffffffffffff
mov r12, qword [rsp + 0x160]
lea rcx, str.MAILCOMPRESS
call fcn.1801c86a0
mov rcx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x18007a666
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rax
lea r9, str.MAILCOMPRESS
mov rdx, qword [rdi + 0x10]
call fcn.18005d944
cmp rax, rsi
jne 0x18007a6b3
lea rcx, str.PIPELINING
call fcn.1801c86a0
mov rcx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x18007a699
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rax
lea r9, str.PIPELINING
mov rdx, qword [rdi + 0x10]
call fcn.18005d944
cmp rax, rsi
je 0x18007a6c7
cmp qword [rdi + 0x18], 0x10
mov rax, rdi
jb 0x18007a6c0
mov rax, qword [rdi]
mov r13b, 1
mov byte [rax + 4], 0x5f
inc r12
add rdi, 0x20
cmp r12, r14
jb 0x18007a64d
test r13b, r13b
mov r12, qword [rsp + 0x88]
je 0x18007a8d8
and qword [rsp + 0xb0], 0
mov eax, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0xb8], rax
mov byte [rsp + 0xa0], 0
xor esi, esi
mov edi, 0x1000
test r14, r14
je 0x18007a7a7
mov r15, r12
lea r8, [0x180281514]
mov rdx, r15
lea rcx, [rsp + 0x110]
call fcn.180062c08
nop
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x18007a73e
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rsp + 0xa0]
call fcn.18005dedc
nop
mov rdx, qword [rsp + 0x128]
cmp rdx, 0x10
jb 0x18007a78f
inc rdx
mov rcx, qword [rsp + 0x110]
mov rax, rcx
cmp rdx, rdi
jb 0x18007a78a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007aabe
call fcn.18009e42c
inc rsi
add r15, 0x20
cmp rsi, r14
jb 0x18007a719
mov rax, qword [rsp + 0xb8]
mov dword [rbx + 0x1c], 3
lea rcx, [rsp + 0xa0]
cmp rax, 0x10
cmovae rcx, qword [rsp + 0xa0]
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
xor r9d, r9d
lea r8d, [r9 + 1]
mov rdx, rbx
mov rcx, qword [rbx + 0x10]
call fcn.180078c88
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0x10
jb 0x18007a826
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, rdi
jb 0x18007a821
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007aab8
call fcn.18009e42c
and qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0xa0], 0
test r12, r12
je 0x18007a896
mov r8, qword [rsp + 0x90]
mov rdx, r12
call fcn.180062b90
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x88]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, rdi
jb 0x18007a890
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007aac4
call fcn.18009e42c
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x18007aa96
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rdi
jb 0x18007a8ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007aaca
call fcn.18009e42c
jmp 0x18007aa96
mov dword [rbx + 0x1c], 3
mov esi, r15d
test r12, r12
je 0x18007a93b
mov r8, qword [rsp + 0x90]
mov rdx, r12
call fcn.180062b90
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x88]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
mov edi, 0x1000
cmp rdx, rdi
jb 0x18007a934
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007aad0
call fcn.18009e42c
jmp 0x18007a940
mov edi, 0x1000
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x18007aa3b
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rdi
jb 0x18007a978
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007aad6
call fcn.18009e42c
jmp 0x18007aa3b
test r12d, r12d
jle 0x18007a99c
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a989
mov dword [rbx + 0x1c], 1
mov esi, r15d
lea rcx, [rbx + 0x20]
call fcn.18006d240
test r13d, r13d
je 0x18007aa3b
test r12d, r12d
jle 0x18007a9d2
xor eax, eax
cmp byte [rax + r14], 9
jb 0x18007a050
inc rax
cmp rax, r12
jl 0x18007a9bf
cmp r13d, 1
jne 0x18007aa38
mov r8d, r12d
mov rdx, r14
mov rcx, rbx
call fcn.180060600
cmp eax, 3
jne 0x18007aa9b
mov r14, qword [rbx + 0x28]
xor esi, esi
cmp dword [rbx + 0x30], 5
jl 0x18007aa2d
lea edi, [rax + 1]
mov r8d, edi
lea rdx, [rsp + 0x48]
mov rcx, r14
call fcn.1801d7a8c
test eax, eax
je 0x18007aa26
mov r8d, edi
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.1801d7a8c
test eax, eax
jne 0x18007aa2d
mov esi, r15d
mov dword [rbx + 0x1c], r15d
lea rcx, [rbx + 0x20]
call fcn.18006d240
jmp 0x18007aa3b
mov esi, r15d
mov eax, esi
jmp 0x18007aa9b
jne 0x18007aa96
cmp dword [rbx + 0x1c], 3
je 0x18007aa4c
mov eax, r15d
jmp 0x18007aa9b
lea rax, vtable.ProtocolFilters::PFObjectImpl.0
mov qword [rsp + 0x58], rax
xor eax, eax
cmp r13d, 1
setne al
inc eax
mov dword [rsp + 0x60], eax
and dword [rsp + 0x70], esi
mov word [rsp + 0x74], 0x100
and qword [rsp + 0x68], rsi
mov rax, qword [rbx + 0x10]
mov r9, qword [rcx]
lea r8, [rsp + 0x58]
mov rdx, qword [rax + 8]
call qword [r9 + 0x40]
nop
lea rcx, [rsp + 0x58]
call fcn.180074820
mov eax, 3
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.1801c897c
nop
call fcn.1801c897c
nop
call fcn.1801c897c
nop
call fcn.1801c897c
nop
call fcn.1801c897c
nop
call fcn.1801c897c
int3