Function at 0x140013920
Capabilities:
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
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x13d0]
mov eax, 0x14d0
call fcn.1400e7700
sub rsp, rax
mov rax, qword [0x14011d080]
xor rax, rsp
mov qword [rbp + 0x13c0], rax
mov r14, rcx
mov qword [rbp - 0x38], rcx
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov rdx, qword [str.FF:FF:FF:FF:FF:FF]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], r15
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], r15b
jne 0x140013990
lea rcx, [rbp - 0x30]
call fcn.14000ec80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
xor r8d, r8d
lea rdx, [0x1400fd888]
lea rcx, [rsp + 0x68]
call fcn.14000ec80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
mov r8d, 1
lea rdx, [0x1400fda54]
lea rcx, [rsp + 0x48]
call fcn.14000ec80
nop
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x78]
call fcn.140041300
mov dword [rsp + 0x40], 4
mov rbx, r15
nop dword [rax + rax]
lea rsi, [rsp + 0x48]
mov rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
cmp r9, 0x10
cmovae rsi, rcx
lea r13, [rbp - 0x78]
cmp qword [rbp - 0x60], 0x10
cmovae r13, qword [rbp - 0x78]
mov rdi, qword [rsp + 0x58]
mov rax, qword [rbp - 0x68]
cmp rdi, rax
ja 0x140013b11
sub rax, rdi
cmp rbx, rax
ja 0x140013b11
test rdi, rdi
je 0x140013aad
lea r15, [rax + r13]
lea rcx, [rbx + r13]
movsx r12d, byte [rsi]
lea r8, [r15 + 1]
sub r8, rcx
mov edx, r12d
call sub.VCRUNTIME140.dll_memchr
test rax, rax
mov rbx, rax
je 0x140013b11
mov r8, rdi
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140013aa0
inc rbx
lea r8, [r15 + 1]
sub r8, rbx
mov rcx, rbx
jmp 0x140013a6b
sub rbx, r13
mov rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
cmp rbx, 0xffffffffffffffff
je 0x140013b11
lea r8, [rsp + 0x68]
cmp qword [rbp - 0x80], 0x10
cmovae r8, qword [rsp + 0x68]
lea rdx, [rsp + 0x48]
cmp r9, 0x10
cmovae rdx, rcx
lea rcx, str.FOUD:___s___s__n
call fcn.140001d60
lea r9, [rsp + 0x68]
cmp qword [rbp - 0x80], 0x10
cmovae r9, qword [rsp + 0x68]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r8, qword [rsp + 0x58]
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.140042e80
add rbx, qword [rsp + 0x78]
jmp 0x140013a10
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x140013b4f
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013b4a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013b4a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e69f4
mov rcx, qword [rsp + 0x48]
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rbp - 0x68]
movups xmmword [rbp - 0x20], xmm1
xor r15d, r15d
mov dword [rsp + 0x40], r15d
mov qword [rbp - 0x68], r15
mov r13d, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x60], r13
mov byte [rbp - 0x78], r15b
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140013bb9
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013bb4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013bb4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e69f4
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r13
mov byte [rsp + 0x48], 0
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x140013c07
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013c02
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013c02
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e69f4
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r15
cmp qword [rbp - 0x20], 4
mov r8d, 4
cmovb r8, qword [rbp - 0x20]
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rdx, qword [rbp - 0x30]
lea rcx, [rbp + 0x10]
call fcn.14000ec80
mov r12d, 8
mov dword [rsp + 0x40], r12d
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xor ebx, ebx
mov qword [rbp], rbx
mov qword [rbp + 8], rbx
lea r8d, [r12 + 8]
lea rdx, str.ABCDEF1234567890
lea rcx, [rbp - 0x10]
call fcn.14000ec80
nop
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rbp + 0x13b4], 0xffffffff
mov dword [rbp + 0x34], 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 + 0x34], eax
inc rdx
cmp rdx, 0x270
jb 0x140013c90
mov dword [rbp + 0x30], 0x270
mov r15d, dword [rbp]
dec r15d
xorps xmm0, xmm0
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], r13
mov byte [r14], 0
mov dword [rsp + 0x40], 9
mov rdi, qword [rbp - 0x10]
movzx ebx, byte [rsp + 0x44]
mov rsi, qword [rbp + 8]
lea rcx, [rbp + 0x30]
cmp r15d, 0xffffffff
jne 0x140013cf9
call fcn.14004dd90
mov r8d, eax
jmp 0x140013d41
lea edi, [r15 + 1]
call fcn.14004dd90
mov esi, edi
mov r8d, eax
imul r8, rsi
cmp r8d, edi
jae 0x140013d35
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp r8d, edx
jae 0x140013d35
nop
lea rcx, [rbp + 0x30]
call fcn.14004dd90
mov r8d, eax
imul r8, rsi
cmp r8d, edi
jb 0x140013d20
shr r8, 0x20
mov rdi, qword [rbp - 0x10]
mov rsi, qword [rbp + 8]
lea rcx, [rbp - 0x10]
cmp rsi, 0x10
cmovae rcx, rdi
movsxd rax, r8d
movzx r9d, byte [rax + rcx]
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
cmp rcx, rdx
jae 0x140013d81
lea rax, [rcx + 1]
mov qword [r14 + 0x10], rax
mov rax, r14
cmp rdx, 0x10
jb 0x140013d76
mov rax, qword [r14]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140013d92
movzx r8d, bl
mov edx, 1
mov rcx, r14
call fcn.140045a50
sub r12, 1
jne 0x140013ce5
mov rcx, qword [r14 + 0x10]
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x20]
sub rax, rdx
cmp rax, rcx
jb 0x140013f7a
lea r9, [rbp + 0x10]
cmp qword [rbp + 0x28], 0x10
cmovae r9, qword [rbp + 0x10]
mov rax, r14
cmp qword [r14 + 0x18], 0x10
jb 0x140013dd5
mov rax, qword [r14]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp - 0x58]
call fcn.140047af0
lea rax, [rbp - 0x58]
cmp r14, rax
je 0x140013e4f
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x140013e2c
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x140013e27
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140013e82
mov rcx, r8
call fcn.1400e69f4
mov qword [r14 + 0x10], 0
mov byte [r14], 0
movups xmm0, xmmword [rbp - 0x58]
movups xmmword [r14], xmm0
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [r14 + 0x10], xmm1
mov byte [rbp - 0x58], 0
jmp 0x140013e53
mov r13, qword [rbp - 0x40]
cmp r13, 0x10
jb 0x140013e8f
lea rdx, [r13 + 1]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013e89
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013e89
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e69f4
nop
cmp rsi, 0x10
jb 0x140013eca
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140013ec1
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013ec1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.1400e69f4
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x140013f09
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013f03
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013f03
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e69f4
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x140013f47
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013f42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013f42
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e69f4
mov rax, r14
mov rcx, qword [rbp + 0x13c0]
xor rcx, rsp
call fcn.1400e6990
lea r11, [rsp + 0x14d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140001fe0
int3