Function at 0x140051290
Capabilities:
Create thread

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1402120d8]
xor rax, rsp
mov qword [rsp + 0x98], rax
mov rdi, rcx
mov rsi, qword [rcx]
lea rcx, [rsi + 8]
call fcn.140136084
test eax, eax
jne 0x140051628
mov eax, 1
xchg byte [rsi + 1], al
lea rcx, [rsi + 8]
call fcn.1401360a8
test eax, eax
jne 0x140051630
xor esi, esi
movabs r13, 0x311cdad160000
movabs r12, 0x112e0be826d694b3
movsd xmm6, qword [0x1401e3728]
nop dword [rax]
call fcn.140135ac4
mov rbx, rax
call fcn.140135aa8
cqo
idiv rbx
imul rbp, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, 0x77359400
add rbp, rax
call fcn.140135ac4
mov rbx, rax
call fcn.140135aa8
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rbp
jge 0x140051418
nop
mov rbx, rbp
sub rbx, rax
call fcn.140135bb4
mov qword [rsp + 0x58], rax
imul r8, rax, 0x64
xorps xmm0, xmm0
cvtsi2sd xmm0, rbx
comisd xmm0, xmm6
seta al
test al, al
cmovne rbx, r13
add r8, rbx
mov rax, r12
imul r8
sar rdx, 0x1a
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rsp + 0x80], rdx
imul rax, rdx, 0x3b9aca00
sub r8, rax
mov dword [rsp + 0x88], r8d
lea rcx, [rsp + 0x80]
call fcn.1401361a8
call fcn.140135ac4
mov rbx, rax
call fcn.140135aa8
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rbp
jl 0x140051380
mov r14, qword [rdi]
lea rcx, [r14 + 8]
call fcn.140136084
test eax, eax
jne 0x140051620
movzx eax, byte [r14]
test al, al
setne bpl
lea rcx, [r14 + 8]
call fcn.1401360a8
test eax, eax
jne 0x140051618
test bpl, bpl
jne 0x1400515a5
mov rbx, qword [rdi]
add rbx, 8
mov rcx, rbx
call fcn.140136084
test eax, eax
jne 0x140051682
mov rax, qword [rdi]
mov rbp, qword [rax + 0xa0]
test rbp, rbp
je 0x140051595
mov r14, qword [rax + 0xb0]
mov r15, qword [rax + 0xa8]
mov rcx, rbx
call fcn.1401360a8
test eax, eax
jne 0x14005166a
xor ecx, ecx
call fcn.140179804
cmp rax, r14
jl 0x140051320
mov rcx, qword [rdi]
movsxd rax, dword [rcx + 0xb8]
add qword [rcx + 0xb0], rax
mov rax, qword [rdi]
movzx eax, byte [rax + 2]
test al, al
jne 0x140051507
mov rbx, qword [rdi]
lea rcx, [rbx + 8]
call fcn.140136084
test eax, eax
jne 0x140051640
mov rax, qword [rdi]
mov qword [rax + 0xa0], rsi
mov rax, qword [rdi]
mov qword [rax + 0xb0], rsi
mov rax, qword [rdi]
mov qword [rax + 0xa8], rsi
lea rcx, [rbx + 8]
call fcn.1401360a8
test eax, eax
jne 0x140051638
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], r15
mov ecx, reloc.WSOCK32.dll_recv
call fcn.140157540
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rax], xmm0
mov qword [rsp + 0x90], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], esi
mov r9, rax
lea r8, [0x140053d60]
xor edx, edx
xor ecx, ecx
call fcn.14017a9c4
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14005165b
cmp dword [rsp + 0x38], 0
je 0x140051650
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.140136184
test eax, eax
jne 0x140051648
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
movdqa xmmword [rsp + 0x30], xmm0
jmp 0x140051320
mov rcx, rbx
call fcn.1401360a8
test eax, eax
jne 0x140051672
mov rbp, qword [rdi]
lea rcx, [rbp + 8]
call fcn.140136084
test eax, eax
jne 0x14005167a
xchg byte [rbp + 1], sil
lea rcx, [rbp + 8]
call fcn.1401360a8
test eax, eax
jne 0x14005168a
mov rcx, qword [rdi]
add rcx, 0x58
call fcn.140135a88
test eax, eax
jne 0x140051692
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.1401571e0
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
int3
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
int3
mov ecx, 1
call fcn.140135d60
nop
mov dword [rsp + 0x38], esi
mov ecx, 6
call fcn.140135d60
nop
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
int3
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
nop
mov ecx, eax
call fcn.140135d24
int3