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

Disassembly:
mov eax, 0x13d8
call fcn.1800505b0
sub rsp, rax
mov rax, qword [0x180063040]
xor rax, rsp
mov qword [rsp + 0x13c0], rax
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x13b4], 0xffffffff
mov edx, 1
mov dword [rsp + 0x34], eax
nop dword [rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x34], eax
inc rdx
cmp rdx, 0x270
jb 0x18000aa60
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x30], 0x270
call fcn.18000dbb0
mov ecx, eax
lea rax, [rcx + rcx*8]
shl rax, 2
cmp eax, 3
ja 0x18000aab9
lea rcx, [rsp + 0x30]
call fcn.18000dbb0
mov ecx, eax
lea rax, [rcx + rcx*8]
shl rax, 2
cmp eax, 4
jb 0x18000aaa0
shr rax, 0x20
test eax, eax
jne 0x18000aace
lea ecx, [rax + 0x30]
cmp eax, 0x1f
jne 0x18000aad6
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 1
jne 0x18000aae0
lea ecx, [rax + 0x30]
cmp eax, 0x20
jne 0x18000aae8
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 2
jne 0x18000aaf2
lea ecx, [rax + 0x30]
cmp eax, 0x21
jne 0x18000aafa
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 3
jne 0x18000ab04
lea ecx, [rax + 0x30]
cmp eax, 0x22
jne 0x18000ab0c
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 4
jne 0x18000ab31
lea ecx, [rax + 0x30]
cmp eax, 0x23
jne 0x18000ab16
mov ecx, 0x7a
movzx eax, cx
mov rcx, qword [rsp + 0x13c0]
xor rcx, rsp
call fcn.18004f530
add rsp, 0x13d8
ret
cmp eax, 5
jne 0x18000ab3b
lea ecx, [rax + 0x30]
jmp 0x18000ab16
cmp eax, 6
jne 0x18000ab45
lea ecx, [rax + 0x30]
jmp 0x18000ab16
cmp eax, 7
jne 0x18000ab4f
lea ecx, [rax + 0x30]
jmp 0x18000ab16
cmp eax, 8
jne 0x18000ab59
lea ecx, [rax + 0x30]
jmp 0x18000ab16
cmp eax, 9
jne 0x18000ab63
lea ecx, [rax + 0x30]
jmp 0x18000ab16
movzx ecx, word [rsp + 0x20]
cmp eax, 0xa
jne 0x18000ab72
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0xb
jne 0x18000ab7c
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0xc
jne 0x18000ab86
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0xd
jne 0x18000ab90
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0xe
jne 0x18000ab9d
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0xf
jne 0x18000abaa
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x10
jne 0x18000abb7
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x11
jne 0x18000abc4
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x12
jne 0x18000abd1
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x13
jne 0x18000abde
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x14
jne 0x18000abeb
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x15
jne 0x18000abf8
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x16
jne 0x18000ac05
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x17
jne 0x18000ac12
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x18
jne 0x18000ac1f
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x19
jne 0x18000ac2c
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x1a
jne 0x18000ac39
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x1b
jne 0x18000ac46
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x1c
jne 0x18000ac53
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x1d
jne 0x18000ac60
lea ecx, [rax + 0x57]
jmp 0x18000ab16
cmp eax, 0x1e
jne 0x18000aac4
lea ecx, [rax + 0x57]
jmp 0x18000ab16