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

Disassembly:
push rbx
push r12
push r14
push r15
sub rsp, 0x968
mov rax, qword [0x140072100]
xor rax, rsp
mov qword [rsp + 0x950], rax
xor edx, edx
mov r12, rcx
lea rcx, [rsp + 0x51]
lea r8d, [rdx + 0x7f]
mov byte [rsp + 0x50], 0
call sub.MSVCR120.dll_memset
xor edx, edx
lea rcx, [rsp + 0xd1]
lea r8d, [rdx + 0x7f]
mov byte [rsp + 0xd0], 0
call sub.MSVCR120.dll_memset
mov r15, qword [r12]
mov edx, reloc.WLDAP32.dll_Ordinal_60
mov rbx, qword [r15 + 0x198]
mov rcx, r15
mov r9, qword [rbx + 0x1ec0]
lea r8, [rbx + 0x1cb8]
sub r9, qword [rbx + 0x1eb8]
add r9, 2
call fcn.140046450
mov rax, qword [rbx + 0x1eb8]
movzx ecx, byte [rax]
inc rax
mov qword [rbx + 0x1eb8], rax
cmp ecx, 0x18
je 0x140047273
cmp ecx, 0x23
je 0x140047231
cmp ecx, 0x27
jne 0x14004732a
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.14002d720
mov rdi, qword [rbx + 0x1cb0]
mov esi, 4
test rdi, rdi
je 0x1400471a0
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 0x140047110
lea rbp, [rax + 1]
add rbp, rsi
cmp rbp, 0x7fa
jae 0x14004718b
lea r9, [rsp + 0xd0]
lea r8, [rsp + 0x50]
lea rdx, str._127_____127s
call qword [sym.imp.MSVCR120.dll_sscanf]
test eax, eax
je 0x14004718b
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.14002d720
mov rsi, rbp
mov rdi, qword [rdi + 8]
test rdi, rdi
jne 0x140047100
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.14002d720
mov rcx, qword [r12 + 0x1d0]
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 0x14004720c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, r15
mov r8d, eax
call fcn.14002b5e0
lea r8, [rsp + 0x152]
mov r9, rsi
mov edx, 0x3e
mov rcx, r15
call fcn.140046450
mov rsi, qword [rsp + 0x9a0]
jmp 0x14004732a
lea rax, [rbx + 0x1c28]
or rbx, 0xffffffffffffffff
nop dword [rax]
cmp byte [rax + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x140047240
mov dword [rsp + 0x48], 0xf0
mov dword [rsp + 0x40], 0xff
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], reloc.WLDAP32.dll_Ordinal_35
jmp 0x1400472b1
lea rax, [rbx + 0x1c08]
or rbx, 0xffffffffffffffff
nop
cmp byte [rax + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x140047280
mov dword [rsp + 0x48], 0xf0
mov dword [rsp + 0x40], 0xff
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], Ordinal_30
lea r8, str._c_c_c_c_s_c_c
lea rcx, [rsp + 0x150]
mov r9d, 0xff
mov edx, 0x800
mov dword [rsp + 0x20], 0xfa
call fcn.14002d720
mov rcx, qword [r12 + 0x1d0]
lea r8d, [rbx + 6]
lea rdx, [rsp + 0x150]
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
jns 0x140047311
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.Sending_data_failed___d_
mov rcx, r15
mov r8d, eax
call fcn.14002b5e0
lea r9, [rbx + 4]
lea r8, [rsp + 0x152]
mov edx, 0x3e
mov rcx, r15
call fcn.140046450
mov rcx, qword [rsp + 0x950]
xor rcx, rsp
call fcn.140058040
add rsp, 0x968
pop r15
pop r14
pop r12
pop rbx
ret