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

Disassembly:
push rdi
mov eax, 0x1430
call fcn.1401500f0
sub rsp, rax
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x1440], rbx
mov qword [rsp + 0x1448], rsi
movaps xmmword [rsp + 0x1420], xmm6
movaps xmmword [rsp + 0x1410], xmm7
movaps xmmword [rsp + 0x1400], xmm8
movaps xmmword [rsp + 0x13f0], xmm9
mov rax, qword [0x14020f278]
xor rax, rsp
mov qword [rsp + 0x13e0], rax
mov rsi, rdx
mov rdi, rcx
mov bl, 0x40
cmp rcx, rdx
je 0x14000b839
nop dword [rax]
movzx r11d, byte [rdi]
movzx r8d, bl
and r8b, 0xf0
movzx edx, bl
and dl, 0xf
movzx ecx, r11b
and cl, 0xf0
movzx r10d, r11b
and r10b, 0xf
movzx r9d, r10b
and r9b, 0xf
movzx eax, r8b
shr al, 1
or r9b, al
add dl, dl
and dl, cl
xor r9b, dl
or r10b, r8b
movzx eax, r9b
add al, al
lea ecx, [rax + r9]
xor r10b, cl
and r10b, 0xaa
shr r9b, 2
xor r10b, r9b
mov ecx, r11d
imul ecx, ecx, 0x1f40
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
xor r11b, bl
lea ebx, [r11 + rdx]
add bl, r10b
xor bl, 0x32
inc rdi
cmp rdi, rsi
jne 0x14000b7b0
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], 0
mov byte [rsp + 0x20], 0
xor r8d, r8d
lea rdx, [0x140182c18]
lea rcx, [rsp + 0x20]
call fcn.140006d10
nop
call fcn.14016b528
nop
cmp qword [rsp + 0x38], 0x10
jb 0x14000b87d
mov rcx, qword [rsp + 0x20]
call fcn.14000ce24
call fcn.14016b528
mov dword [rsp + 0x13d4], 0xffffffff
mov dword [rsp + 0x54], eax
mov r8d, 1
mov edx, r8d
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor eax, ecx
imul eax, eax, 0x6c078965
add eax, r8d
mov dword [rsp + rdx*4 + 0x54], eax
inc r8d
inc rdx
cmp rdx, 0x270
jl 0x14000b8a0
mov r9d, 0x270
mov dword [rsp + 0x50], r9d
movsd xmm6, qword [0x140182d78]
subsd xmm6, qword [0x140183540]
addsd xmm6, qword [0x140182f58]
mov edi, 6
movsd xmm7, qword [0x140183538]
movsd xmm8, qword [0x140183530]
movsd xmm9, qword [0x140183528]
cmp r9d, 0x270
jne 0x14000b91a
lea rcx, [rsp + 0x50]
call fcn.1400010f0
jmp 0x14000b92d
cmp r9d, 0x4e0
jb 0x14000b932
lea rcx, [rsp + 0x50]
call fcn.140001010
mov r9d, dword [rsp + 0x50]
mov eax, r9d
mov ecx, dword [rsp + rax*4 + 0x54]
inc r9d
mov dword [rsp + 0x50], r9d
mov eax, ecx
shr eax, 0xb
and eax, dword [rsp + 0x13d4]
xor ecx, eax
mov eax, ecx
and eax, 0xff3a58ad
shl eax, 7
xor ecx, eax
mov eax, ecx
and eax, 0xffffdf8c
shl eax, 0xf
xor ecx, eax
mov eax, ecx
shr eax, 0x12
xor eax, ecx
pxor xmm0, xmm0
cvtsi2sd xmm0, rax
divsd xmm0, xmm6
mulsd xmm0, xmm7
movapd xmm1, xmm8
subsd xmm1, xmm0
comisd xmm1, xmm9
jb 0x14000b994
mov r10b, 0x56
jmp 0x14000b999
cvttsd2si r10, xmm1
movzx ecx, bl
and cl, 0xf0
movzx r8d, r10b
and r8b, 0xf
movzx edx, r8b
and dl, 0xf
movzx eax, cl
shr al, 1
or dl, al
movzx eax, bl
and al, 8
add al, al
and al, r10b
xor dl, al
or r8b, cl
movzx eax, dl
add al, al
lea ecx, [rax + rdx]
xor r8b, cl
and r8b, 0xaa
shr dl, 2
xor r8b, dl
xor r10b, bl
lea ebx, [r10 + r8]
dec rdi
jne 0x14000b905
movzx eax, bl
mov rcx, qword [rsp + 0x13e0]
xor rcx, rsp
call fcn.14014ff80
lea r11, [rsp + 0x1430]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop rdi
ret