Function at 0x140059e30
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
mov r15, r9
mov rbp, rcx
lea rbx, [0x14042bffb]
mov qword [rsp + 0x20], rbx
lea rcx, [rsp + 0x50]
lea r9, [rsp + 0x98]
call fcn.14006e750
movzx r14d, byte [rsp + 0x60]
cmp r14d, 3
jne 0x140059e80
mov qword [rbp], 2
jmp case.0x140040a5d.471
mov r11, qword [r15 + 0x38]
test r11, r11
je 0x140059f5a
mov rdx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
cmp dword [r15], 2
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x40], rdx
jne 0x140059f61
mov rbp, rbx
mov rbx, rdx
mov qword [rsp + 0x48], r11
movdqu xmm0, xmmword [r15 + 8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmmword [rsp + 0x50], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmmword [0x140397830]
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x70], xmm0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
xor eax, eax
cmp r14b, 2
setne al
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x38]
mov r8d, 8
call fcn.14005f6c0
cmp r14b, 2
jne 0x140059fbb
movzx eax, bl
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x38]
mov r8d, 8
call fcn.14005f6c0
mov rdi, qword [rsp + 0x30]
jmp 0x14005a075
xor edi, edi
jmp 0x14005a4dd
xor eax, eax
cmp r14b, 2
setne al
movabs rcx, 0xcbf29ce484222325
xor rcx, rax
movabs r12, 0x1efac7090aef4a21
imul r12, rcx
cmp r14b, 2
jne 0x140059fda
movzx eax, dl
xor r12d, eax
imul r12d, r12d, 0x4a21
and r12d, 0x7fff
movzx r13d, word [r15 + 0x58]
mov eax, r12d
and eax, r13d
mov rsi, qword [r15 + 0x18]
mov rbx, qword [r15 + 0x20]
mov r10, qword [r15 + 0x28]
jmp 0x14005a1af
test r14b, r14b
je 0x14005a02b
lea rcx, [rsp + 0x50]
mov rdx, rbx
mov rdi, qword [rsp + 0x30]
mov r8, rdi
call fcn.14005f6c0
jmp 0x14005a075
lea rax, [rdx + rdi]
test r14b, r14b
je 0x14005a22b
test rdi, rdi
je 0x14005a280
mov r8, rdi
movabs rcx, 0x100000001b3
and r8, 7
je 0x14005a34b
mov r9, r12
mov r10, rdx
nop dword [rax]
movzx r12d, byte [r10]
inc r10
xor r12, r9
imul r12, rcx
mov r9, r12
dec r8
jne 0x14005a010
jmp 0x14005a34e
mov rdi, qword [rsp + 0x30]
test rdi, rdi
je 0x14005a075
xor esi, esi
lea r12, [rsp + 0x50]
lea r13, [rsp + 0x38]
nop word cs:[rax + rax]
movzx eax, byte [rbx + rsi]
movzx eax, byte [rax + rbp]
mov byte [rsp + 0x38], al
mov r8d, 1
mov rcx, r12
mov rdx, r13
call fcn.14005f6c0
inc rsi
cmp rdi, rsi
jne 0x14005a050
mov rax, qword [rsp + 0x60]
mov r9, qword [rsp + 0x80]
shl r9, 0x38
or r9, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x50]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x58]
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
add rdx, rcx
shl rcx, 0x10
xor rcx, rdx
shr rcx, 0x2b
add rdx, rax
shr rax, 0x2f
xor rax, rcx
mov r12, rdx
shr r12, 0x20
xor r12, rdx
xor r12, rax
mov r11, qword [rsp + 0x48]
mov rbx, rbp
and r12d, 0x7fff
movzx r13d, word [r15 + 0x58]
mov eax, r12d
and eax, r13d
mov rsi, qword [r15 + 0x18]
mov esi, dword [rdi + 0x18]
mov r10, rdx
cmp rdi, 8
jb 0x14005a171
nop dword [rax + rax]