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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rdi, qword [r8 + 0xe8]
mov rbx, qword [r8 + 0x20]
mov esi, ecx
mov r12, r8
test ecx, ecx
jne 0x140079450
xor r14d, r14d
xor r13d, r13d
test rbx, rbx
je 0x140079582
nop word [rax + rax]
mov rcx, qword [rbx + 0x18]
xor esi, esi
test rcx, rcx
je 0x140079324
call sym.wcslen
lea rsi, [rax + 1]
mov eax, dword [rbx + 4]
cmp eax, 2
je 0x140079440
mov r15d, 0x1c
cmp eax, 0x17
jne 0x140079400
cmp qword [rbx + 0x20], 0
je 0x140079400
mov rax, qword [rbx + 0x10]
cmp rax, r15
jb 0x140079400
test rax, rax
je 0x140079400
mov rax, qword [0x140186a50]
lea rcx, [r15 + rsi + 0x30]
call qword [rax]
test rax, rax
je 0x1400795c0
movdqu xmm0, xmmword [rbx]
mov r8, qword [rbx + 0x20]
lea r11, [rax + 0x30]
mov dword [rax + 0x10], r15d
mov qword [rax + 0x18], 0
lea r10, [rax + 0x38]
mov qword [rax + 0x28], 0
and r10, 0xfffffffffffffff8
mov qword [rax + 0x20], r11
movups xmmword [rax], xmm0
mov rdx, qword [r8]
mov qword [rax + 0x30], rdx
mov rdx, qword [r8 + r15 - 8]
mov qword [r11 + r15 - 8], rdx
mov rdx, r11
sub rdx, r10
sub r8, rdx
add edx, r15d
and edx, 0xfffffff8
cmp edx, 8
jb 0x1400793e2
and edx, 0xfffffff8
xor ecx, ecx
mov r9d, ecx
add ecx, 8
mov rbp, qword [r8 + r9]
mov qword [r10 + r9], rbp
cmp ecx, edx
jb 0x1400793d0
test rsi, rsi
jne 0x140079508
test r13, r13
cmove r13, rax
test r14, r14
je 0x1400793fb
mov qword [r14 + 0x28], rax
mov r14, rax
nop
mov rbx, qword [rbx + 0x40]
test rbx, rbx
jne 0x140079310
test r13, r13
je 0x140079582
mov rcx, qword [r12 + 0x20]
mov qword [r12 + 0xb0], r13
test rcx, rcx
je 0x140079483
mov rax, qword [0x1401869c0]
call qword [rax]
mov qword [r12 + 0x20], 0
jmp 0x140079483
mov r15d, 0x10
jmp 0x14007933f
test rbx, rbx
je 0x14007946a
mov rax, qword [0x1401869c0]
mov rcx, rbx
call qword [rax]
mov qword [r12 + 0x20], 0
mov rbx, qword [sym.imp.WS2_32.dll_WSAGetLastError]
call rbx
test eax, eax
jne 0x140079600
mov dword [r12 + 0xa8], esi
mov rcx, qword [r12 + 0x78]
call sym.pthread_mutex_lock
mov eax, dword [r12 + 0x80]
test eax, eax
jne 0x140079550
mov rcx, qword [r12 + 0xa0]
cmp rcx, 0xffffffffffffffff
je 0x1400794cc
xor r9d, r9d
mov byte [rsp + 0x2f], 1
lea rdx, [rsp + 0x2f]
mov r8d, 1
call qword [sym.imp.WS2_32.dll_send]
test eax, eax
js 0x140079620
mov dword [r12 + 0x80], 1
mov rcx, qword [r12 + 0x78]
call sym.pthread_mutex_unlock
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400794f1
call qword [sym.imp.KERNEL32.dll_SetEvent]
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rbx + 0x18]
add r11, r15
mov qword [rax + 0x18], r11
movzx edx, word [rdx]
mov byte [r11], dl
cmp rsi, 1
je 0x140079542
mov edx, 1
nop dword [rax]
mov r8, qword [rbx + 0x18]
mov rcx, qword [rax + 0x18]
movzx r8d, word [r8 + rdx*2]
mov byte [rcx + rdx], r8b
add rdx, 1
cmp rsi, rdx
jne 0x140079528
mov rdx, qword [rax + 0x18]
mov byte [rdx + rsi], 0
jmp 0x1400793eb
mov rcx, qword [r12 + 0x78]
call sym.pthread_mutex_unlock
mov rcx, r12
call sym.destroy_thread_sync_data
mov rax, qword [0x140186a40]
mov rcx, rdi
mov rax, qword [rax]
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp rax
mov ecx, 0x2af9
call qword [sym.imp.WS2_32.dll_WSASetLastError]
mov rcx, qword [r12 + 0x20]
mov qword [r12 + 0xb0], 0
test rcx, rcx
je 0x1400795b5
mov rax, qword [0x1401869c0]
call qword [rax]
mov qword [r12 + 0x20], 0
mov esi, 0x2af9
jmp 0x14007946a
mov rcx, r13
call sym.Curl_freeaddrinfo
mov rcx, qword [r12 + 0x20]
mov qword [r12 + 0xb0], 0
test rcx, rcx
je 0x1400795f0
mov rax, qword [0x1401869c0]
call qword [rax]
mov qword [r12 + 0x20], 0
mov esi, 8
jmp 0x14007946a
call rbx
mov edx, 8
test eax, eax
cmove eax, edx
mov dword [r12 + 0xa8], eax
jmp 0x140079483
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [r12 + 0xa8], eax
jmp 0x1400794cc