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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x100
xor r12d, r12d
mov dword [rbp + 0x67], r12d
mov r15, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movabs rdx, 0x8e92aa09d348f47d
mov qword [rsp + 0x40], rdx
movabs rcx, 0x1e737c300f4f2d76
mov qword [rsp + 0x48], rcx
movabs rax, 0x8e92aa09d348f477
mov qword [rbp + 0x17], rax
mov qword [rbp + 0x1f], rcx
movdqa xmm0, xmmword [rbp + 0x17]
pxor xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rbp + 0x17], xmm0
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rcx
movabs rax, 0xaef7c766b024912a
mov qword [rsp + 0x40], rax
movabs rax, 0x1e737c300f6f4202
mov qword [rsp + 0x48], rax
movdqa xmm0, xmmword [rsp + 0x40]
pxor xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x40], xmm0
lea rax, [rsp + 0x40]
mov rbx, 0xffffffffffffffff
mov rcx, rbx
inc rcx
cmp byte [rax + rcx], r12b
jne 0x140004003
movabs rax, 0x7fffffffffffffff
mov rdx, qword [0x1401f4850]
sub rax, rdx
cmp rax, rcx
jb 0x1400044c3
lea rax, [0x1401f4840]
cmp qword [0x1401f4858], 0x10
cmovae rax, qword [0x1401f4840]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x40]
lea rcx, [rbp - 0x29]
call fcn.140009940
mov esi, 1
mov r14d, esi
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x29]
call fcn.140007950
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x59], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x69], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x59], xmm1
mov qword [rax + 0x10], r12
mov edi, 0xf
mov qword [rax + 0x18], rdi
mov byte [rax], 0
or r14d, 2
mov dword [rbp + 0x67], r14d
lea rdx, [rbp - 0x69]
cmp qword [rbp - 0x51], 0x10
cmovae rdx, qword [rbp - 0x69]
mov r8, qword [rbp - 0x59]
mov rcx, r15
call fcn.140009bb0
nop
mov rdx, qword [rbp - 0x51]
cmp rdx, 0x10
jb 0x140004101
inc rdx
mov rcx, qword [rbp - 0x69]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400040fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400040fc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000b92c
movdqa xmm0, xmmword [0x14000ece0]
movdqu xmmword [rbp - 0x59], xmm0
mov byte [rbp - 0x69], 0
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x140004151
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000414b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000414b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000b92c
nop
mov rax, qword gs:[0x58]
mov r15, qword [rax]
mov eax, 0x10
mov eax, dword [rax + r15]
cmp dword [0x1401f4900], eax
jle 0x1400042f8
lea rcx, [0x1401f4900]
call fcn.14000b588
cmp dword [0x1401f4900], 0xffffffff
jne 0x1400042f8
movabs rax, 0xbe79feaac165bb23
mov qword [rbp - 0x69], rax
movabs rax, 0x4f980db7a99d9334
mov qword [rbp - 0x61], rax
movabs rax, 0x1122cfe47a36453d
mov qword [rbp - 0x59], rax
movabs rax, 0xd8f988e9242a4e96
mov qword [rbp - 0x51], rax
movabs rax, 0x49fd57b60e679f87
mov qword [rbp - 0x49], rax
movabs rax, 0x2f4fb83f9890718
mov qword [rbp - 0x41], rax
movabs rax, 0xf658206088ccb221
mov qword [rbp - 0x39], rax
movabs rax, 0xc6747785722dafea
mov qword [rbp - 0x31], rax
movabs rax, 0x894fcb9ef2578a13
mov qword [rbp - 0x29], rax
movabs rax, 0x29fd69d4cbfcaa0c
mov qword [rbp - 0x21], rax
movabs rax, 0x7f4fa38f105f2d5a
mov qword [rbp - 0x19], rax
movabs rax, 0xae8cfc9a565b3ef9
mov qword [rbp - 0x11], rax
movabs rax, 0xdbe15f7741ee7f0
mov qword [rbp - 9], rax
movabs rax, 0x4ebfb1cab1ce415d
mov qword [rbp - 1], rax
movabs rax, 0xa20b7231d883fc6c
mov qword [rbp + 7], rax
movabs rax, 0xc6742ddc2a7af9bf
mov qword [rbp + 0xf], rax
movdqa xmm0, xmmword [rbp - 0x29]
pxor xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x29], xmm0
movdqa xmm1, xmmword [rbp - 0x19]
pxor xmm1, xmmword [rbp - 0x59]
movdqa xmmword [rbp - 0x19], xmm1
movdqa xmm0, xmmword [rbp - 9]
pxor xmm0, xmmword [rbp - 0x49]
movdqa xmmword [rbp - 9], xmm0
movdqa xmm1, xmmword [rbp + 7]
pxor xmm1, xmmword [rbp - 0x39]
movdqa xmmword [rbp + 7], xmm1
xorps xmm0, xmm0
movups xmmword [0x1401f48e0], xmm0
mov qword [0x1401f48f0], r12
mov qword [0x1401f48f8], r12
lea rax, [rbp - 0x29]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400042c3
mov r8, rbx
lea rdx, [rbp - 0x29]
lea rcx, [0x1401f48e0]
call fcn.140008dc0
lea rcx, [0x14000d0c0]
call fcn.14000b90c
nop
lea rcx, [0x1401f4900]
call fcn.14000b528
mov r12d, 0x14
mov eax, dword [r12 + r15]
mov ebx, 0x30
test al, 1
jne 0x140004359
or eax, 1
mov dword [r12 + r15], eax
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rbx + r15 + 0x1384], 0xffffffff
mov dword [rbx + r15 + 4], eax
lea rdx, [rbx + 8]
add rdx, r15
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, esi
mov dword [rdx], eax
inc rsi
lea rdx, [rdx + 4]
cmp rsi, 0x270
jb 0x140004330
mov dword [rbx + r15], 0x270
mov eax, dword [r12 + r15]
mov r13d, 0x18
test al, 2
jne 0x14000437f
or eax, 2
mov dword [r12 + r15], eax
mov qword [r15 + r13], 0
mov qword [r15 + r13 + 8], 0x1e
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rbp - 0x79], 0
mov qword [rbp - 0x71], rdi
mov byte [rsp + 0x50], 0
or r14d, 4
mov dword [rbp + 0x67], r14d
lea rsi, [rbx + r15]
lea r12, [0x1401f48e0]
nop dword [rax + rax]
dec rdi
mov rdx, qword [r15 + r13 + 8]
mov r14, qword [r15 + r13]
mov qword [rbp + 0x6f], rsi
sub rdx, r14
cmp rdx, 0xffffffffffffffff
jne 0x1400043e6
mov rcx, rsi
call fcn.14000a570
mov ebx, eax
shl rbx, 0x20
mov rcx, rsi
call fcn.14000a570
mov eax, eax
or rbx, rax
jmp 0x1400043f5
inc rdx
lea rcx, [rbp + 0x6f]
call fcn.14000a3c0
mov rbx, rax
mov rax, r12
cmp qword [0x1401f48f8], 0x10
cmovae rax, qword [0x1401f48e0]
add rax, rbx
movzx r9d, byte [rax + r14]
mov rcx, qword [rbp - 0x79]
mov rdx, qword [rbp - 0x71]
cmp rcx, rdx
jae 0x14000443f
lea rax, [rcx + 1]
mov qword [rbp - 0x79], rax
lea rax, [rsp + 0x50]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004449
lea rcx, [rsp + 0x50]
call fcn.140009200
test rdi, rdi
jne 0x1400043b0
lea rcx, [rsp + 0x50]
cmp qword [rbp - 0x71], 0x10
cmovae rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
nop
mov rdx, qword [rbp - 0x71]
cmp rdx, 0x10
jb 0x1400044a8
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400044a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400044a3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000b92c
mov rbx, qword [rsp + 0x150]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140001560
int3