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

Disassembly:
push rbx
push r12
push r14
push r15
sub rsp, 0x968
mov rax, qword [0x1400a91a0]
xor rax, rsp
mov qword [rsp + 0x950], rax
movzx eax, byte [0x1400aaf43]
xor edx, edx
mov r12, rcx
lea r8d, [rdx + 0x7f]
lea rcx, [rsp + 0x51]
mov byte [rsp + 0x50], al
call fcn.14005a570
movzx eax, byte [0x1400aaf44]
xor edx, edx
lea r8d, [rdx + 0x7f]
lea rcx, [rsp + 0xd1]
mov byte [rsp + 0xd0], al
call fcn.14005a570
mov r15, qword [r12]
mov edx, reloc.WLDAP32.dll_Ordinal_60
mov rbx, qword [r15 + 0x208]
mov rcx, r15
mov r9, qword [rbx + 0x1ec0]
lea r8, [rbx + 0x1cb8]
sub r9, qword [rbx + 0x1eb8]
add r9, 2
call fcn.1400428e0
mov rax, qword [rbx + 0x1eb8]
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x1eb8], rax
cmp ecx, 0x18
je 0x140042f3f
cmp ecx, 0x23
je 0x140042ea0
cmp ecx, 0x27
jne 0x140042ffa
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], ecx
mov r14d, 0x800
lea rcx, [rsp + 0x150]
lea r8, str._c_c_c_c
mov r9d, 0xff
mov edx, r14d
mov qword [rsp + 0x9a0], rsi
mov dword [rsp + 0x20], 0xfa
mov qword [rsp + 0x960], rdi
call fcn.1400311d0
mov rdi, qword [rbx + 0x1cb0]
mov esi, 4
test rdi, rdi
je 0x140042e0f
mov qword [rsp + 0x998], rbp
or rbx, 0xffffffffffffffff
nop dword [rax]
mov rcx, qword [rdi]
mov rax, rbx
nop word [rax + rax]
cmp byte [rcx + rax + 1], 0
lea rax, [rax + 1]
jne 0x140042d80
lea rbp, [rax + 1]
add rbp, rsi
cmp rbp, 0x7fa
jae 0x140042dfa
lea r9, [rsp + 0xd0]
lea r8, [rsp + 0x50]
lea rdx, str._127_____127s
call fcn.14005a9ec
test eax, eax
je 0x140042dfa
lea rax, [rsp + 0xd0]
lea rcx, [rsp + 0x150]
mov rdx, r14
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
lea r8, str._c_s_c_s
sub rdx, rsi
add rcx, rsi
xor r9d, r9d
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
call fcn.1400311d0
mov rsi, rbp
mov rdi, qword [rdi + 8]
test rdi, rdi
jne 0x140042d70
mov rbp, qword [rsp + 0x998]
lea rcx, [rsp + 0x150]
sub r14, rsi
lea r8, str._c_c
mov r9d, 0xff
add rcx, rsi
mov rdx, r14
mov dword [rsp + 0x20], 0xf0
call fcn.1400311d0
mov rcx, qword [r12 + 0x238]
lea r8d, [rsi + 2]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
mov rdi, qword [rsp + 0x960]
test eax, eax
jns 0x140042e7b
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, [0x1400a5548]
mov rcx, r15
mov r8d, eax
call fcn.140023ea0
lea r8, [rsp + 0x152]
mov r9, rsi
mov edx, 0x3e
mov rcx, r15
call fcn.1400428e0
mov rsi, qword [rsp + 0x9a0]
jmp 0x140042ffa
lea rax, [rbx + 0x1c28]
or rbx, 0xffffffffffffffff
nop dword [rax + rax]
cmp byte [rax + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x140042eb0
mov dword [rsp + 0x48], 0xf0
mov dword [rsp + 0x40], 0xff
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 0
lea r8, str._c_c_c_c_s_c_c
lea rcx, [rsp + 0x150]
mov r9d, 0xff
mov edx, 0x800
mov dword [rsp + 0x28], reloc.WLDAP32.dll_Ordinal_35
mov dword [rsp + 0x20], 0xfa
call fcn.1400311d0
mov rcx, qword [r12 + 0x238]
lea r8d, [rbx + 6]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jns 0x140042fe1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, [0x1400a54d8]
jmp 0x140042fd6
lea rax, [rbx + 0x1c08]
or rbx, 0xffffffffffffffff
nop word [rax + rax]
cmp byte [rax + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x140042f50
mov dword [rsp + 0x48], 0xf0
mov dword [rsp + 0x40], 0xff
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 0
lea r8, [0x1400a5490]
lea rcx, [rsp + 0x150]
mov r9d, 0xff
mov edx, 0x800
mov dword [rsp + 0x28], Ordinal_30
mov dword [rsp + 0x20], 0xfa
call fcn.1400311d0
mov rcx, qword [r12 + 0x238]
lea r8d, [rbx + 6]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jns 0x140042fe1
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, [0x1400a54a0]
mov r8d, eax
mov rcx, r15
call fcn.140023ea0
lea r9, [rbx + 4]
lea r8, [rsp + 0x152]
mov edx, 0x3e
mov rcx, r15
call fcn.1400428e0
mov rcx, qword [rsp + 0x950]
xor rcx, rsp
call fcn.140056190
add rsp, 0x968
pop r15
pop r14
pop r12
pop rbx
ret