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

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov r13, rcx
lea rbx, [rcx + 0x30]
mov qword [rbp - 0x10], rbx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov byte [r13 + 0x1a8], 1
mov byte [r13 + 0x198], 1
xor edi, edi
cmp qword [r13 + 0x1a0], rdi
je 0x1400a49cf
mov byte [rbp + 0x48], dil
lea rax, [rbp + 0x48]
mov qword [rbp - 0x18], rax
mov dword [rbp - 0x20], 1
mov dword [rbp + 0x50], edi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
lea r9, [rbp + 0x50]
lea r8d, [rdi + 1]
lea rdx, [rbp - 0x20]
mov rcx, qword [r13 + 0x60]
call qword [sym.imp.WS2_32.dll_WSASend]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [rbp - 8], dil
mov rcx, qword [r13 + 0x1a0]
test rcx, rcx
je 0x1400a4a17
call fcn.140035920
mov rbx, qword [r13 + 0x1a0]
test rbx, rbx
je 0x1400a4a10
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, 0x18
mov rcx, rbx
call fcn.1402550ac
mov qword [r13 + 0x1a0], rdi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x40], xmm0
lea rdi, [r13 + 0x98]
mov r12d, 4
xor r13d, r13d
nop
mov rax, qword [rdi - 0x28]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1400a4af5
mov r11, rbx
mov r10, rbx
mov r14, rbx
mov r9, rbx
mov rax, rbx
mov rbx, qword [rbx]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400a4a7e
mov rdx, qword [rbp - 0x38]
test rdx, rdx
je 0x1400a4a6a
mov qword [rdx + 0x20], rcx
jmp 0x1400a4a6e
mov qword [rbp - 0x40], rcx
mov rcx, qword [rax + 0x20]
mov qword [rbp - 0x38], rcx
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], r13
xor edx, edx
mov rax, qword [r9 + 0x10]
div qword [rdi]
shl rdx, 4
mov rcx, qword [rdi - 8]
add rcx, rdx
mov r8, qword [rcx]
mov rax, qword [rcx + 8]
cmp r14, r8
jne 0x1400a4ac2
cmp r11, rax
jne 0x1400a4aba
mov rax, qword [rdi - 0x28]
mov qword [rcx + 8], rax
mov rcx, qword [rdi - 8]
mov rax, qword [rcx + rdx + 8]
mov qword [rcx + rdx], rax
jmp 0x1400a4acf
mov rax, qword [r8]
mov qword [rcx], rax
jmp 0x1400a4acf
cmp r10, rax
jne 0x1400a4acf
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
mov qword [r9 + 0x10], r13
mov rdx, qword [rdi - 0x18]
mov rdx, qword [rdx]
lea r8, [rdi - 0x28]
lea rcx, [rdi - 0x18]
call fcn.1400b5810
dec qword [rdi - 0x30]
cmp rbx, qword [rdi - 0x28]
jne 0x1400a4a40
add rdi, 0x38
sub r12, 1
jne 0x1400a4a30
mov r13, qword [rbp + 0x40]
mov rbx, qword [r13 + 0x190]
test rbx, rbx
je 0x1400a4b29
mov rax, qword [rbx]
lea rdx, [rbp - 0x40]
mov rcx, rbx
call qword [rax + 0x28]
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x1400a4b13
mov rbx, qword [r13 + 0x28]
mov rdx, qword [rbp - 0x40]
mov r10, rdx
lea rsi, [0x140339bc0]
xor edi, edi
test rdx, rdx
je 0x1400a4b93
mov rax, rdx
test rax, rax
je 0x1400a4b65
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x40], rax
mov rcx, qword [rbp - 0x38]
test rax, rax
cmove rcx, rdi
mov qword [rbp - 0x38], rcx
mov qword [rdx + 0x20], rdi
lock dec dword [rbx + 0x30]
mov dword [rbp - 0x30], edi
mov byte [rbp - 0x2c], dil
mov qword [rbp - 0x28], rsi
xor r9d, r9d
lea r8, [rbp - 0x30]
mov rdx, r10
xor ecx, ecx
call qword [r10 + 0x28]
mov rdx, qword [rbp - 0x40]
mov r10, rdx
mov rax, rdx
test rdx, rdx
jne 0x1400a4b45
test r10, r10
je 0x1400a4bea
mov rax, r10
nop dword [rax + rax]
test rax, rax
je 0x1400a4bc0
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x40], rax
mov rcx, qword [rbp - 0x38]
test rax, rax
cmove rcx, rdi
mov qword [rbp - 0x38], rcx
mov qword [rdx + 0x20], rdi
mov dword [rbp - 0x20], edi
mov byte [rbp - 0x1c], 0
mov qword [rbp - 0x18], rsi
xor r9d, r9d
lea r8, [rbp - 0x20]
mov rdx, r10
xor ecx, ecx
call qword [r10 + 0x28]
mov rdx, qword [rbp - 0x40]
mov r10, rdx
mov rax, rdx
test rdx, rdx
jne 0x1400a4ba0
mov rbx, qword [rsp + 0xd8]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret