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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x1370]
mov eax, 0x1470
call fcn.140036bc0
sub rsp, rax
mov rax, qword [0x140083028]
xor rax, rsp
mov qword [rbp + 0x1360], rax
mov rbx, rcx
mov qword [rsp + 0x70], rcx
and dword [rsp + 0x28], 0
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
mov eax, dword [rcx + rax]
cmp dword [0x140083bc8], eax
jle 0x140033559
lea rcx, [0x140083bc8]
call fcn.140035cb0
cmp dword [0x140083bc8], 0xffffffff
jne 0x140033559
movabs rax, 0x82dcfe72c592185c
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x30], rax
movabs rax, 0xf989f703b54ce75f
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x38], rax
movabs rax, 0xb6a2abb8b757480e
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x40], rax
movabs rax, 0x816b4c47e8445a01
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x48], rax
movabs rax, 0x640668f51003c6
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x50], rax
movabs rax, 0xaab40c09cfaaa545
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x58], rax
movabs rax, 0x9516c3f9c688a174
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x60], rax
movabs rax, 0x72941b184770ce88
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x68], rax
movabs rax, 0xeabb9817a1f17a3d
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1320], rax
movabs rax, 0x89e6996ed9278d36
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1328], rax
movabs rax, 0xced5ddcdc3243a7f
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1330], rax
movabs rax, 0xc72e0804aa052078
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1338], rax
movabs rax, 0x4e294a23bf594b81
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1340], rax
movabs rax, 0xfce1585a9dfbf50a
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1348], rax
movabs rax, 0xa624f2c99cd1f923
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1350], rax
movabs rax, 0x729422207046fbbc
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x1358], rax
movdqa xmm0, xmmword [rsp + 0x30]
xorps xmm0, xmmword [rbp + 0x1320]
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmm1, xmmword [rsp + 0x40]
xorps xmm1, xmmword [rbp + 0x1330]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rbp + 0x1340]
movdqa xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [rsp + 0x60]
xorps xmm1, xmmword [rbp + 0x1350]
movdqa xmmword [rsp + 0x60], xmm1
lea rdx, [rsp + 0x30]
lea rcx, [0x140083c20]
call fcn.140034a34
lea rcx, [0x14003741c]
call fcn.1400360dc
nop
lea rcx, [0x140083bc8]
call fcn.140035c44
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov ecx, eax
or dword [rbp + 0x1314], 0xffffffff
mov dword [rbp - 0x6c], eax
mov edx, 1
mov r8d, 0x270
mov eax, ecx
shr eax, 0x1e
xor eax, ecx
imul ecx, eax, 0x6c078965
add ecx, edx
mov dword [rbp + rdx*4 - 0x6c], ecx
inc rdx
cmp rdx, r8
jb 0x140033576
mov dword [rbp - 0x70], r8d
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
and qword [rbx + 0x10], 0
and qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov dword [rsp + 0x28], 1
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov edi, 0x10
lea rcx, [rsp + 0x20]
call fcn.14003576c
mov rcx, rax
mov eax, 0x1f
mul rcx
mov r8, rax
mov eax, eax
cmp rax, 0x1f
jae 0x140033609
cmp rax, 4
jae 0x140033609
lea rcx, [rsp + 0x20]
call fcn.14003576c
mov rcx, rax
mov eax, 0x1f
mul rcx
mov r8, rax
cmp eax, 4
jb 0x1400335ec
mov ecx, 0x20
shrd r8, rdx, cl
lea rdx, [0x140083c20]
cmp qword [0x140083c38], 0x10
cmovae rdx, qword [0x140083c20]
mov dl, byte [r8 + rdx]
mov rcx, rbx
call fcn.140034fe8
sub rdi, 1
jne 0x1400335c6
mov rax, rbx
mov rcx, qword [rbp + 0x1360]
xor rcx, rsp
call fcn.140035aa0
lea r11, [rsp + 0x1470]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret