Function at 0x1400cfbc0
Capabilities:
Create thread

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x90
cmp qword [0x14029c8b0], 0
jne 0x1400cff79
mov rax, qword [0x14029c6f8]
test byte [rax + 0x1a0], 1
jne 0x1400cff79
mov dword [0x14029c8b8], ecx
mov byte [0x14029c8bc], dl
mov rcx, qword [0x14029c738]
cmp rcx, qword [0x14029c740]
je 0x1400cfc0f
mov qword [0x14029c740], rcx
cmp dword [rax + 0x1a4], 0
mov edi, r8d
jg 0x1400cfc8b
mov dword [0x140294b70], 0x3c
mov edx, 0x3c
vxorpd xmm0, xmm0, xmm0
vucomisd xmm0, qword [0x14029c898]
jae 0x1400cfc76
cmp dword [rax + 0xf0], 0x3e8
jl 0x1400cfc76
vmovsd xmm0, qword [0x14029c8a0]
mov eax, 0x168
vmovsd xmm1, qword [0x1402247a0]
vucomisd xmm1, xmm0
jae 0x1400cfc6e
mov eax, 0x104
vucomisd xmm0, qword [0x1402247a8]
ja 0x1400cfc76
mov dword [0x140294b70], eax
mov edx, eax
cmp dword [0x140297014], 0
jle 0x1400cfc8b
lea rcx, str._avg_delay__d__n
call fcn.140007a40
call fcn.140031950
test al, al
je 0x1400cfcd8
mov rdx, qword [0x14029c6f8]
mov eax, 1
cmp byte [rdx + 0x17c], 0
jne 0x1400cff7b
mov r10, qword [rdx]
cmp qword [rdx + 8], r10
je 0x1400cff70
mov edi, 0x4c
xor eax, eax
movabs r8, 0xeeeeeeeeeeeeeeef
xor r9d, r9d
mov qword [rsp + 0x48], rdx
jmp 0x1400cfe32
mov ecx, 0xd0
call fcn.1401c3b4c
mov rsi, rax
lea rax, [0x140224fd0]
mov qword [rsi], rax
lea rax, [rsi + 8]
mov qword [rsp + 0x40], rax
mov dword [rsi + 8], 1
mov byte [rsi + 0xc], 0
lea rcx, [rsi + 0x10]
vxorpd xmm0, xmm0, xmm0
vmovupd xmmword [rsi + 0x10], xmm0
call fcn.1401cade0
mov dword [rsi + 0x20], 0
vxorpd xmm0, xmm0, xmm0
vmovupd ymmword [rsi + 0x28], ymm0
lea rcx, [rsi + 0x20]
vmovupd ymmword [rsi + 0x48], ymm0
mov qword [rsi + 0x68], 0
mov edx, 2
vzeroupper
call fcn.1401c6604
lea rcx, [rsi + 0x70]
call fcn.1401ca218
mov byte [rsi + 0xb8], 0
mov qword [rsi + 0xc8], 0
mov dword [rsi + 0xbc], 0
mov dword [rsi + 0xbf], 0
mov qword [rsp + 0x50], rsi
mov byte [rsp + 0x58], 0
mov byte [rsp + 0x60], 1
mov qword [rsp + 0x38], rsi
lock inc dword [rsi + 8]
test dil, dil
je 0x1400cfeb2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x78], rax
mov byte [rsp + 0x80], 0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x88], al
lea rcx, [rsp + 0x78]
call fcn.1400d0050
mov rax, qword [rsp + 0x40]
lock dec dword [rax]
jne 0x1400cffa6
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rdx + 0xc8]
test rcx, rcx
je 0x1400cff86
mov rax, qword [rcx]
call qword [rax]
jmp 0x1400cffa6
mov r9d, ecx
mov rax, rsi
mov rdx, qword [rsp + 0x48]
movabs r8, 0xeeeeeeeeeeeeeeef
nop word cs:[rax + rax]
inc rax
mov r10, qword [rdx]
mov rcx, qword [rdx + 8]
sub rcx, r10
sar rcx, 3
imul rcx, r8
add rdi, 0x78
cmp rcx, rax
jbe 0x1400cff6a
test r9b, 1
jne 0x1400cfe10
mov rcx, qword [r10 + rdi - 0x14]
test rcx, rcx
je 0x1400cfe10
cmp byte [r10 + rdi], 0
jne 0x1400cfe10
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x38], r9
mov r8, qword [rcx]
mov rsi, rax
mov rdx, rax
call qword [rreloc.WS2_32.dll_htonl + 8]
mov ecx, 1
test al, al
je 0x1400cfdf1
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + rdi - 0xc]
test rcx, rcx
je 0x1400cfe92
mov rax, qword [rcx]
mov edx, esi
call qword [rax + reloc.WS2_32.dll_htonl]
mov ecx, 1
test al, al
mov rax, qword [rsp + 0x40]
je 0x1400cfdf1
mov byte [rax + rdi], 1
mov rax, rsi
mov rdx, qword [rsp + 0x48]
movabs r8, 0xeeeeeeeeeeeeeeef
mov r9, qword [rsp + 0x38]
jmp 0x1400cfe10
mov ecx, select
call fcn.1401c3b4c
mov rsi, rax
mov ecx, 0x20
call fcn.1401c3b4c
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x50], 0
mov qword [rax], rcx
mov byte [rax + 8], 0
movzx ecx, byte [rsp + 0x60]
mov byte [rax + 0x10], cl
lea rcx, [fcn.1400d0050]
mov qword [rax + 0x18], rcx
lea rdi, [rsi + 8]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0
lea r8, [0x1400d0ea0]
xor ecx, ecx
xor edx, edx
mov r9, rax
call fcn.1401fc0b8
mov qword [rsi], rax
test rax, rax
je 0x1400d0017
mov qword [0x14029c8b0], rsi
mov rcx, qword [rsp + 0x38]
cmp byte [rcx + 0xb8], 0
mov rsi, qword [rsp + 0x40]
jne 0x1400d0027
mov rax, qword [rcx]
mov edx, 1
call qword [rax + select]
movzx ebx, byte [rax]
lock dec dword [rsi]
jne 0x1400cffa2
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rdx + 0xc8]
test rcx, rcx
je 0x1400cff95
mov rax, qword [rcx]
call qword [rax]
jmp 0x1400cffa2
test r9b, 1
jne 0x1400cff79
mov byte [rdx + 0x17c], 1
jmp 0x1400cffb0
xor eax, eax
add rsp, 0x90
pop rbx
pop rdi
pop rsi
ret
mov rax, qword [rdx]
mov rcx, rdx
mov edx, 1
call qword [rax]
jmp 0x1400cffa6
mov rax, qword [rdx]
mov rcx, rdx
mov edx, 1
call qword [rax]
test bl, bl
je 0x1400cffb7
lea rcx, [rsp + 0x50]
call fcn.1400d0650
mov eax, 1
jmp 0x1400cff7b
mov rsi, qword [0x14029c8b0]
mov edi, dword [rsi + 8]
test edi, edi
je 0x1400d0031
call sub.KERNEL32.dll_GetCurrentThreadId
cmp edi, eax
je 0x1400d003b
mov rax, qword [rsi]
mov qword [rsp + 0x68], rax
mov eax, dword [rsi + 8]
mov dword [rsp + 0x70], eax
lea rcx, [rsp + 0x68]
xor edx, edx
call fcn.1401ca0f8
test eax, eax
jne 0x1400d0045
mov qword [rsi], 0
mov dword [rsi + 8], 0
mov qword [0x14029c8b0], 0
lea rcx, [rsp + 0x50]
call fcn.1400d0650
xor eax, eax
jmp 0x1400cff7b
mov dword [rdi], 0
mov ecx, 6
call fcn.1401c6d4c
mov ecx, 4
call fcn.1400d0b70
mov ecx, 1
call fcn.1401c6d4c
mov ecx, 5
call fcn.1401c6d4c
mov ecx, 2
call fcn.1401c6d4c
int3