Function at 0x1400955c0
Capabilities:
Check for time delay via gettickcount
Send data
Send data on socket

Disassembly:
push rbx
sub rsp, 0x50
mov qword [rsp + 0x70], rdi
xor ebx, ebx
mov qword [rsp + 0x48], r12
mov rdi, rcx
mov rcx, qword [rcx + 0x68]
mov r12, r8
mov qword [rsp + 0x40], r13
mov r13d, r9d
mov qword [rsp + 0x38], r14
mov r14, rdx
test rcx, rcx
je 0x1400955fc
mov edx, 0xffffffff
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_WaitForSingleObject]
cmp byte [rdi + 0x78], 1
jne 0x1400957f6
cmp qword [rdi + 0x28], 0xffffffffffffffff
je 0x1400957f6
mov qword [rsp + 0x60], rbp
mov ebp, ebx
mov qword [rsp + 0x30], r15
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount]
mov r15d, eax
cmp byte [rdi + 0x7a], bl
je 0x140095654
cmp qword [rdi + 0x48], 8
lea rdx, [rdi + 0x30]
jb 0x140095639
mov rdx, qword [rdx]
movzx r9d, byte [r14 + 0xb]
lea rcx, str._AsusSync_TCPConnection__Send__to__s____func_type:__d__subfunc_type:__d__payload_length_:__d_n
movzx r8d, byte [r14 + 0xa]
mov dword [rsp + 0x20], r13d
call fcn.140095ab0
test r14, r14
je 0x140095686
nop dword [rax]
test bl, 1
je 0x14009567f
movzx r8d, byte [rbx + r14]
lea eax, [rbx - 1]
mov ecx, eax
add r8b, bl
movzx eax, byte [rax + r14]
mov byte [rbx + r14], al
mov byte [rcx + r14], r8b
inc ebx
cmp ebx, 0x20
jb 0x140095660
mov rax, qword [rdi + 0x28]
mov qword [rsp + 0x68], rsi
nop
xor r9d, r9d
mov rdx, r14
mov rcx, rax
lea r8d, [r9 + 0x20]
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x1400956ef
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebp, eax
cmp eax, 0x2733
je 0x1400956df
cmp qword [rdi + 0x48], 8
lea rsi, [rdi + 0x30]
jb 0x1400956c7
mov rsi, qword [rsi]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rdx, rsi
lea rcx, str._AsusSync_TCPConnection__Send__to__s____send_header_fail__WSAGetLastError__d__r_n
mov r8d, eax
call fcn.140095ab0
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount]
sub eax, r15d
cmp eax, 0x7530
ja 0x14009570e
cmp byte [rdi + 0x78], 1
jne 0x140095728
mov rax, qword [rdi + 0x28]
cmp rax, 0xffffffffffffffff
je 0x140095728
cmp ebx, 0xffffffff
jne 0x140095728
cmp ebp, 0x2733
je 0x140095690
jmp 0x140095728
cmp qword [rdi + 0x48], 8
lea rdx, [rdi + 0x30]
jb 0x14009571c
mov rdx, qword [rdx]
lea rcx, str._AsusSync_TCPConnection__Send__to__s____too_long_to_send_payload__skip_it._n
call fcn.140095ab0
test r12, r12
je 0x1400957e7
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount]
sub eax, r15d
cmp eax, 0x7530
jae 0x1400957e7
mov rax, qword [rdi + 0x28]
nop dword [rax]
xor r9d, r9d
mov r8d, r13d
mov rdx, r12
mov rcx, rax
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x14009579e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebp, eax
cmp eax, 0x2733
je 0x14009579e
cmp qword [rdi + 0x48], 8
lea rsi, [rdi + 0x30]
jb 0x140095786
mov rsi, qword [rsi]
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rdx, rsi
lea rcx, str._AsusSync_TCPConnection__Send__to__s____send_payload_fail__WSAGetLastError__d__r_n
mov r8d, eax
call fcn.140095ab0
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount]
sub eax, r15d
cmp eax, 0x7530
ja 0x1400957cd
cmp byte [rdi + 0x78], 1
jne 0x1400957e7
mov rax, qword [rdi + 0x28]
cmp rax, 0xffffffffffffffff
je 0x1400957e7
cmp ebx, 0xffffffff
jne 0x1400957e7
cmp ebp, 0x2733
je 0x140095750
jmp 0x1400957e7
cmp qword [rdi + 0x48], 8
lea rdx, [rdi + 0x30]
jb 0x1400957db
mov rdx, qword [rdx]
lea rcx, str._AsusSync_TCPConnection__Send__to__s____too_long_to_send_payload__skip_it._n
call fcn.140095ab0
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
mov r15, qword [rsp + 0x30]
mov rcx, qword [rdi + 0x68]
mov r14, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
test rcx, rcx
je 0x140095819
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ReleaseMutex]
cmp ebx, 0xffffffff
setne al
add rsp, 0x50
pop rbx
ret