Function at 0x1407893a0
Capabilities:
Access peb ldr_data
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x70
movaps xmmword [rsp + 0x60], xmm6
mov rbx, rcx
mov qword [rbp - 0x20], rcx
xor edi, edi
mov dword [rbp - 0x40], edi
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
lea rsi, [0x14084dde0]
mov eax, dword [rcx + rax]
cmp dword [0x14084f168], eax
jle 0x14078945a
lea rcx, [0x14084f168]
call fcn.14080fe80
cmp dword [0x14084f168], 0xffffffff
jne 0x14078945a
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov r8d, eax
mov dword [0x14084f164], 0xffffffff
mov dword [0x14084dde4], eax
lea edx, [rdi + 1]
nop dword [rax]
mov eax, r8d
shr eax, 0x1e
xor eax, r8d
imul r8d, eax, 0x6c078965
add r8d, edx
mov dword [rsi + rdx*4 + 4], r8d
inc rdx
cmp rdx, 0x270
jb 0x140789420
mov dword [0x14084dde0], 0x270
lea rcx, [0x14084f168]
call fcn.14080fe14
movups xmm0, xmmword [0x140826b58]
movups xmmword [rbp - 0x38], xmm0
movzx eax, byte [0x140826b68]
mov byte [rbp - 0x28], al
mov ecx, edi
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x1407895ba
movdqa xmm5, xmmword [0x14083c9b0]
movdqa xmm4, xmmword [0x14083ca40]
movdqa xmm6, xmmword [0x14083c9f0]
movdqa xmm0, xmmword [str.0000000000000000O]
movdqa xmmword [rbp - 0x50], xmm0
lea rdx, [rbp - 0x34]
mov r8d, dword [rbp - 0x50]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14083ca10]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14083ca10]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x1407894b0
cmp ecx, 0x11
jge 0x1407895fe
movsxd rax, ecx
lea r8, [rbp - 0x38]
add r8, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x8d3dcb09
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x3a
movzx eax, cl
sub al, dl
add al, 0x30
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x11
jl 0x1407895d0
mov dword [rbp - 0x50], 0
mov dword [rbp - 0x4c], 0x10001
mov qword [rbp - 0x48], 0x10001
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], 0
mov dword [rbp - 0x40], 1
cmp byte [rbp + rdi - 0x50], 0
je 0x14078964c
mov r8d, 1
lea rdx, [0x140825744]
mov rcx, rbx
call fcn.140797ab0
mov rcx, rsi
call fcn.14079afe0
mov eax, eax
shl rax, 4
shr rax, 0x20
cdqe
movzx r9d, byte [rbp + rax - 0x38]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x140789692
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x140789687
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1407896a1
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140799b80
mov rcx, rsi
call fcn.14079afe0
mov eax, eax
shl rax, 4
shr rax, 0x20
cdqe
movzx r9d, byte [rbp + rax - 0x38]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x1407896e7
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0xf
jbe 0x1407896dc
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1407896f6
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140799b80
inc rdi
cmp rdi, 0x10
jl 0x140789630
mov rax, rbx
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
movaps xmm6, xmmword [rsp + 0x60]
mov rsp, r11
pop rbp
ret