Function at 0x140077540
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister
Set console window title

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1340]
mov eax, 0x1440
call fcn.1400e0ef0
sub rsp, rax
mov rax, qword [0x1402ab7e8]
xor rax, rsp
mov qword [rbp + 0x1330], rax
xor ebx, ebx
call fcn.1400dee54
mov dword [rbp + 0x1324], 0xffffffff
mov dword [rbp - 0x5c], eax
lea edx, [rbx + 1]
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rbp + rdx*4 - 0x5c], eax
inc rdx
cmp rdx, 0x270
jb 0x1400775a0
mov dword [rbp - 0x60], 0x270
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], rbx
xor r8d, r8d
lea rdx, [0x140283505]
lea rcx, [rbp - 0x80]
call fcn.140078f10
nop
movdqa xmm0, xmmword [0x14028dcb0]
movdqu xmmword [rsp + 0x48], xmm0
movdqa xmm1, xmmword [str.qrstuvwxyzABCDEFGHIJKLMNOPQRSTUVabcdefghijklmnop]
movdqu xmmword [rsp + 0x58], xmm1
movdqa xmm0, xmmword [0x14028dca0]
movdqu xmmword [rsp + 0x68], xmm0
mov dword [rsp + 0x78], 0x5a595857
mov r13d, ebx
nop
lea rcx, [rbp - 0x60]
call fcn.1400791f0
mov ecx, eax
imul rax, rcx, 0x34
cmp eax, 0x2f
ja 0x140077648
lea rcx, [rbp - 0x60]
call fcn.1400791f0
mov ecx, eax
imul rax, rcx, 0x34
cmp eax, 0x30
jb 0x140077634
shr rax, 0x20
movsxd rcx, eax
movzx r12d, byte [rsp + rcx + 0x48]
mov r14, qword [rbp - 0x70]
movabs rax, 0x7fffffffffffffff
cmp r14, rax
je 0x140077818
lea r15, [rbp - 0x80]
cmp qword [rbp - 0x68], 0x10
cmovae r15, qword [rbp - 0x80]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
lea rsi, [r14 + 1]
mov ebx, recv
lea rdi, [rsp + 0x28]
cmp rsi, rbx
jbe 0x140077710
mov rbx, rsi
or rbx, 0xf
cmp rbx, rax
jbe 0x1400776b4
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x1400776db
cmp rbx, 0x16
mov eax, reloc.WS2_32.dll_shutdown
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1400776fa
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140077824
mov rcx, rax
call fcn.1400e0328
test rax, rax
je 0x140077812
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14007770b
test rcx, rcx
je 0x140077709
call fcn.1400e0328
mov rdi, rax
jmp 0x14007770b
xor edi, edi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rbx
mov r8, r14
mov rdx, r15
mov rcx, rdi
call fcn.1400e3440
mov byte [rdi + r14], r12b
mov byte [rdi + rsi], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14007776b
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140077766
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140077812
call fcn.1400e0320
movups xmm0, xmmword [rsp + 0x28]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rsp + 0x38]
movups xmmword [rbp - 0x70], xmm1
lea rcx, [rbp - 0x80]
movq rdx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 0x10
cmovae rcx, rdx
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
inc r13d
cmp r13d, 0xf
jl 0x140077620
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x1400777e2
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400777dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007781e
call fcn.1400e0320
mov rcx, qword [rbp + 0x1330]
xor rcx, rsp
call fcn.1400e0300
lea r11, [rsp + 0x1440]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400e80c8
nop
call fcn.140076200
nop
call fcn.1400e80c8
nop
call fcn.140076160
int3