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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x40
movsxd rax, dword [rdx + 0xa4]
mov r15, r8
mov rbx, rdx
mov rdi, rcx
lea rsi, [rax + rax*8]
shl rsi, 4
add rsi, qword [rcx + 0x90]
cmp dword [rdx + 0xb0], 0
je 0x14041b563
cmp qword [rsi + 0x28], 0xffffffffffffffff
jne 0x14041b3d7
mov rdx, rsi
call fcn.14041bb90
cmp eax, 0xffffffff
je 0x14041b5cc
mov ecx, 0x28
call qword [str.PhA_]
xor ecx, ecx
mov r14, rax
test rax, rax
jne 0x14041b407
mov dword [rsp + 0x20], ecx
lea r8d, [rax + 0xf]
mov rcx, rdi
xor r9d, r9d
mov rdx, rbx
call fcn.14041b7b0
jmp 0x14041b54f
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x20], rcx
mov qword [rax + 0x18], rcx
mov rax, qword [rbx + 0x70]
mov qword [r14], rax
movsxd rax, dword [rbx + 0x78]
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x20], rcx
mov rax, qword [rsi + 0x58]
test rax, rax
je 0x14041b440
mov qword [rax + 0x20], r14
jmp 0x14041b466
mov rax, qword [rdi + 0x121d0]
test rax, rax
je 0x14041b462
mov rdx, qword [rsi + 0x28]
mov r9d, 1
mov rcx, qword [rdi + 0x121d8]
mov r8d, r9d
call rax
mov qword [rsi + 0x50], r14
mov eax, dword [rsi + 0x60]
mov qword [rsi + 0x58], r14
movsxd rdx, dword [rbx + 0xa4]
mov rcx, qword [rbx + 0xa8]
mov dword [rcx + rdx*8 + 4], eax
mov eax, dword [rbx + 0xa0]
mov r8d, dword [rdi + 4]
cdq
idiv dword [rdi + 0x98]
mov qword [rsp + 0x60], rbp
cmp eax, 0x1f
jg 0x14041b4af
mov ecx, 0x1f
mov edx, r8d
sub cl, al
sar edx, cl
test edx, edx
jne 0x14041b4af
mov ecx, eax
shl r8d, cl
mov rcx, qword [r15]
mov eax, 0x10624dd3
imul r8d
mov qword [rbx + 4], rcx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3e8
lea r9d, [rdx + rcx]
mov dword [rbx + 4], r9d
sub r8d, eax
imul eax, r8d, 0x3e8
add dword [rbx + 8], eax
mov ecx, dword [rbx + 8]
cmp ecx, 0xf4240
jl 0x14041b4fe
lea eax, [r9 + 1]
mov dword [rbx + 4], eax
lea eax, [rcx - 0xf4240]
mov dword [rbx + 8], eax
lea rcx, [rbx + 0x28]
call fcn.14041f590
mov eax, dword [rbx + 4]
and eax, 0x800003ff
jge 0x14041b51a
dec eax
or eax, 0xfffffc00
inc eax
cdqe
lea rcx, [rbx + 0x28]
lea rdx, [rax + 0xc1d]
lea rdx, [rax + rdx*2]
lea rdx, [rdi + rdx*8]
call fcn.14041f550
lea rcx, [rbx + 0x40]
call fcn.14041f590
lea rdx, [rsi + 0x68]
lea rcx, [rbx + 0x40]
call fcn.14041f550
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
cmp qword [rsi + 0x20], 0xffffffffffffffff
jne 0x14041b577
mov rdx, rsi
call fcn.14041be20
cmp eax, 0xffffffff
je 0x14041b5cc
mov r10, qword [rdi + 0x12200]
movsxd r8, dword [rbx + 0x88]
mov rdx, qword [rbx + 0x80]
mov rcx, qword [rsi + 0x20]
test r10, r10
je 0x14041b5b7
mov r9, qword [rdi + 0x12208]
mov qword [rsp + 0x30], rdx
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x38], r8
mov r8d, 1
call qword [r10 + 0x20]
jmp 0x14041b5c2
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_send]
cdqe
cmp rax, 0xffffffffffffffff
jne 0x14041b47f
cmp dword [rdi + 0x98], 1
jle 0x14041b5ea
movsxd rcx, dword [rbx + 0xa4]
mov rax, qword [rbx + 0xa8]
mov dword [rax + rcx*8], 1
mov r8, r15
mov rdx, rbx
mov rcx, rdi
call fcn.14041bab0
jmp 0x14041b54f