Function at 0x1800aa070
Capabilities:
Send data
Send data on socket

Disassembly:
mov qword [rsp + 0x20], rbp
push rdi
push r12
push r13
sub rsp, 0x960
mov rax, qword [0x180109f10]
xor rax, rsp
mov qword [rsp + 0x950], rax
xor edx, edx
mov r13, rcx
lea rcx, [rsp + 0x51]
lea r8d, [rdx + 0x7f]
mov byte [rsp + 0x50], 0
call fcn.18005dcd0
xor edx, edx
lea rcx, [rsp + 0xd1]
lea r8d, [rdx + 0x7f]
mov byte [rsp + 0xd0], 0
call fcn.18005dcd0
mov rbp, qword [r13]
mov edx, reloc.WLDAP32.dll_Ordinal_60
mov rdi, qword [rbp + 0x1a8]
mov rcx, rbp
mov r9, qword [rdi + 0x1ec0]
lea r8, [rdi + 0x1cb8]
sub r9, qword [rdi + 0x1eb8]
add r9, 2
call fcn.1800a99f0
mov rax, qword [rdi + 0x1eb8]
movzx ecx, byte [rax]
inc rax
mov qword [rdi + 0x1eb8], rax
cmp ecx, 0x18
je 0x1800aa32c
cmp ecx, 0x23
je 0x1800aa2a7
cmp ecx, 0x27
jne 0x1800aa3df
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], ecx
mov r12d, 0x800
lea rcx, [rsp + 0x150]
lea r8, [0x1800e12c8]
mov r9d, 0xff
mov rdx, r12
mov qword [rsp + 0x988], rbx
mov dword [rsp + 0x20], 0xfa
mov qword [rsp + 0x990], rsi
call fcn.18009ca10
mov rbx, qword [rdi + 0x1cb0]
mov esi, 4
test rbx, rbx
je 0x1800aa21a
nop word [rax + rax]
mov r10, qword [rbx]
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r10
repne scasb al, byte [rdi]
not rcx
lea rdi, [rsi + rcx]
cmp rdi, 0x7fa
jae 0x1800aa20d
lea r9, [rsp + 0xd0]
lea r8, [rsp + 0x50]
lea rdx, str._127_____127s
mov rcx, r10
call fcn.18005aad4
test eax, eax
je 0x1800aa20d
lea rax, [rsp + 0xd0]
mov rdx, r12
lea rcx, [rsp + rsi + 0x150]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
lea r8, str._c_s_c_s
sub rdx, rsi
xor r9d, r9d
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
call fcn.18009ca10
mov rsi, rdi
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x1800aa190
sub r12, rsi
lea rcx, [rsp + rsi + 0x150]
lea r8, [0x1800e12a0]
mov r9d, 0xff
mov rdx, r12
mov dword [rsp + 0x20], 0xf0
call fcn.18009ca10
mov rcx, qword [r13 + 0x1a8]
lea r8d, [rsi + 2]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
mov rbx, qword [rsp + 0x988]
test eax, eax
jns 0x1800aa282
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, rbp
mov r8d, eax
call fcn.180098510
lea r8, [rsp + 0x152]
mov r9, rsi
mov edx, 0x3e
mov rcx, rbp
call fcn.1800a99f0
mov rsi, qword [rsp + 0x990]
jmp 0x1800aa3df
lea rdx, [rdi + 0x1c28]
mov dword [rsp + 0x48], 0xf0
or rcx, 0xffffffffffffffff
mov dword [rsp + 0x40], 0xff
mov qword [rsp + 0x38], rdx
xor eax, eax
mov rdi, rdx
mov qword [rsp + 0x30], rax
lea r8, str._c_c_c_c_s_c_c
repne scasb al, byte [rdi]
mov r9d, 0xff
mov edx, 0x800
not rcx
mov dword [rsp + 0x28], reloc.WLDAP32.dll_Ordinal_35
mov dword [rsp + 0x20], 0xfa
lea rdi, [rcx - 1]
lea rcx, [rsp + 0x150]
call fcn.18009ca10
mov rcx, qword [r13 + 0x1a8]
lea r8d, [rdi + 6]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jmp 0x1800aa3ac
lea rdx, [rdi + 0x1c08]
mov dword [rsp + 0x48], 0xf0
or rcx, 0xffffffffffffffff
mov dword [rsp + 0x40], 0xff
mov qword [rsp + 0x38], rdx
xor eax, eax
mov rdi, rdx
mov qword [rsp + 0x30], rax
lea r8, str._c_c_c_c_s_c_c
repne scasb al, byte [rdi]
mov r9d, 0xff
mov edx, 0x800
not rcx
mov dword [rsp + 0x28], Ordinal_27
mov dword [rsp + 0x20], 0xfa
lea rdi, [rcx - 1]
lea rcx, [rsp + 0x150]
call fcn.18009ca10
mov rcx, qword [r13 + 0x1a8]
lea r8d, [rdi + 6]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jns 0x1800aa3c6
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, rbp
mov r8d, eax
call fcn.180098510
lea r9, [rdi + 4]
lea r8, [rsp + 0x152]
mov edx, 0x3e
mov rcx, rbp
call fcn.1800a99f0
mov rcx, qword [rsp + 0x950]
xor rcx, rsp
call fcn.1800576a0
mov rbp, qword [rsp + 0x998]
add rsp, 0x960
pop r13
pop r12
pop rdi
ret