Function at 0x140078e10
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rbp, rdx
mov rsi, rcx
mov edx, 0x90
mov ecx, 1
mov rbx, r9
mov r15d, r8d
call qword [case.0x140071f61.1]
mov qword [rsi + 0xc88], rax
mov r14, rax
mov r12d, recv
test rax, rax
je 0x140078fb1
movups xmm1, xmmword [rbx + 0x10]
mov dword [rsi + 0xc98], r15d
xor r13d, r13d
mov dword [rsi + 0xc9c], r13d
xorps xmm0, xmm0
mov qword [rsi + 0xc80], r13
mov ecx, 0x28
mov byte [rsi + 0xca0], 0
mov qword [rax], r13
movups xmmword [rax + 0x18], xmm0
movups xmmword [rax + 0x28], xmm0
movups xmmword [rax + 0x38], xmm0
movups xmmword [rax + 0x48], xmm0
mov qword [rax + 0x88], rax
movups xmm0, xmmword [rbx]
mov dword [rax + 0x24], r15d
mov dword [rax + 0x20], 1
movups xmmword [rax + 0x58], xmm0
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rax + 0x68], xmm1
movups xmmword [rax + 0x78], xmm0
call qword [0x140163098]
mov qword [r14 + 0x18], rax
test rax, rax
je 0x140078f05
xor edx, edx
mov r8d, 1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionEx]
lea r9, [r14 + 0x38]
call fcn.1400a2390
test eax, eax
jns 0x140078fd9
mov qword [r14 + 0x38], 0xffffffffffffffff
mov qword [r14 + 0x40], 0xffffffffffffffff
mov rcx, qword [r14 + 0x38]
cmp rcx, 0xffffffffffffffff
je 0x140078f1d
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [r14 + 0x38], 0xffffffffffffffff
mov rcx, qword [r14 + 0x18]
test rcx, rcx
je 0x140078f36
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov rcx, qword [r14 + 0x18]
call qword [0x1401630a8]
mov rcx, qword [r14 + 0x28]
call qword [0x1401630a8]
mov rcx, qword [r14 + 0x50]
test rcx, rcx
je 0x140078f62
nop dword [rax]
mov rbx, qword [rcx + 0x28]
call qword [0x1401630a8]
mov rcx, rbx
test rbx, rbx
jne 0x140078f50
mov rcx, qword [r14 + 0x40]
cmp rcx, 0xffffffffffffffff
je 0x140078f72
call qword [sym.imp.WS2_32.dll_closesocket]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r14 + 0x18], xmm0
mov rcx, r14
movups xmmword [r14 + 0x28], xmm0
movups xmmword [r14 + 0x38], xmm0
movups xmmword [r14 + 0x48], xmm0
movups xmmword [r14 + 0x58], xmm0
movups xmmword [r14 + 0x68], xmm0
movups xmmword [r14 + 0x78], xmm0
mov qword [r14 + 0x88], rax
mov qword [rsi + 0xc88], r13
call qword [0x1401630a8]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], r12d
xor al, al
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rcx, rbp
mov dword [r14 + 0x48], r13d
call qword [case.0x140071f61.0]
mov qword [r14 + 0x28], rax
test rax, rax
je 0x140078f05
mov rcx, qword [rsi + 0xc78]
call qword [0x1401630a8]
mov rcx, rbp
call qword [case.0x140071f61.0]
mov qword [rsi + 0xc78], rax
test rax, rax
je 0x140079060
mov qword [rsp + 0x28], r13
lea r9, [r14 + 0x18]
lea r8, [0x140078c50]
mov dword [rsp + 0x20], r13d
xor edx, edx
mov dword [r14 + 0x20], r13d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x14007904c
mov qword [r14], rax
mov al, 1
jmp 0x140078fbc
mov qword [r14], r13
mov dword [r14 + 0x20], 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov r12d, dword [rax]
mov rdi, qword [rsi + 0xc88]
test rdi, rdi
je 0x1400790dd
mov rcx, qword [rdi + 0x18]
mov rbp, qword [rdi + 0x38]
mov r15, qword [rdi + 0x30]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ebx, dword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov dword [rdi + 0x20], 1
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test ebx, ebx
jne 0x1400790a6
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400790c9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400790c9
cmp qword [rdi], r13
je 0x1400790b3
mov rcx, rdi
call fcn.1400a2340
lea rcx, [rdi + 0x18]
call fcn.140078a90
mov rcx, qword [rsi + 0xc88]
call qword [0x1401630a8]
mov rdx, rbp
mov rcx, r15
call fcn.140064a70
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rsi + 0xc78]
mov qword [rsi + 0xc88], r13
call qword [0x1401630a8]
mov qword [rsi + 0xc78], r13
jmp 0x140078fb1