Function at 0x14000b020
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x1401d00c0]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov rsi, rcx
mov qword [rsp + 0x28], rcx
mov r15d, 4
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov eax, dword [r15 + rdi]
cmp dword [0x1401d2c64], eax
jle 0x14000b0d8
lea rcx, [0x1401d2c64]
call fcn.140124c90
cmp dword [0x1401d2c64], 0xffffffff
jne 0x14000b0d8
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
or dword [0x1401d2c54], 0xffffffff
mov dword [0x1401d18d4], eax
mov ecx, 0x270
mov r8d, 1
mov eax, edx
shr eax, 0x1e
xor eax, edx
imul edx, eax, 0x6c078965
add edx, r8d
lea rax, [0x1401d18d4]
mov dword [rax + r8*4], edx
inc r8
cmp r8, rcx
jb 0x14000b0a3
mov dword [0x1401d18d0], ecx
lea rcx, [0x1401d2c64]
call fcn.140124c24
mov eax, dword [r15 + rdi]
cmp dword [0x1401d2c70], eax
jle 0x14000b116
lea rcx, [0x1401d2c70]
call fcn.140124c90
cmp dword [0x1401d2c70], 0xffffffff
jne 0x14000b116
and dword [0x1401d2c68], 0
mov dword [0x1401d2c6c], 0xf
lea rcx, [0x1401d2c70]
call fcn.140124c24
mov ebx, 8
mov eax, dword [r15 + rdi]
cmp dword [0x1401d2c60], eax
jle 0x14000b158
lea rcx, [0x1401d2c60]
call fcn.140124c90
cmp dword [0x1401d2c60], 0xffffffff
jne 0x14000b158
mov dword [0x1401d2c58], ebx
mov dword [0x1401d2c5c], 0xb
lea rcx, [0x1401d2c60]
call fcn.140124c24
xor edx, edx
mov r8d, 0xf8
lea rcx, [rsp + 0x30]
call sub.VCRUNTIME140.dll_memset
mov edx, 1
lea rcx, [rsp + 0x30]
call fcn.14000f384
nop
lea rdx, [0x140003394]
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
lea r15, [0x1401d2c68]
mov rcx, r15
call fcn.140010c74
mov edx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
sub rbx, 1
jne 0x14000b193
lea rdx, [0x1401546e8]
lea rcx, [rsp + 0x40]
call fcn.1400108f8
mov ebx, 4
mov rcx, r15
call fcn.140010c74
mov edx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
sub rbx, 1
jne 0x14000b1c4
lea rdx, [0x1401547a0]
lea rcx, [rsp + 0x40]
call fcn.1400108f8
mov ebx, 3
mov edi, ebx
mov rcx, r15
call fcn.140010c74
mov edx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
sub rdi, 1
jne 0x14000b1f7
lea rdx, [0x1401546e8]
lea rcx, [rsp + 0x40]
call fcn.1400108f8
lea rcx, [0x1401d2c58]
call fcn.140010c74
mov edx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, r15
call fcn.140010c74
mov edx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
sub rbx, 1
jne 0x14000b23c
lea rdx, [0x1401546e8]
lea rcx, [rsp + 0x40]
call fcn.1400108f8
mov ebx, recv
mov rcx, r15
call fcn.140010c74
mov edx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
sub rbx, 1
jne 0x14000b26d
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.1400100c0
nop
lea rcx, [rbp - 0x38]
call fcn.14000f30c
lea rcx, [rbp - 0x38]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov rax, rsi
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.140124910
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop rdi
pop rbp
ret