Function at 0x1401b13a0
Capabilities:
Encode data using xor
Encrypt data using chaskey

Disassembly:
xchg r8, rbx
mov qword [rsp + 0x10], r8
xchg r8, rbx
xchg rcx, r13
mov qword [rsp + 8], r13
xchg r13, rcx
nop
sub rsp, 8
mov qword [rsp], rbp
nop
mov qword [rsp - 8], rsi
sub rsp, 8
push rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
push 0x313f4571
mov qword [rsp], r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
movzx r8d, byte [rdx + 1]
movzx eax, byte [rdx + 2]
shl eax, 7
shl eax, 1
movzx ecx, byte [rdx + 4]
shl ecx, 0x16
shl ecx, 1
shl ecx, 1
shl r8d, 7
shl r8d, 7
shl r8d, 1
shl r8d, 1
add r8d, eax
movzx eax, byte [rdx]
shl eax, 0xc
shl eax, 0xb
shl eax, 1
add r8d, eax
movzx eax, byte [rdx + 3]
add r8d, eax
movzx eax, byte [rdx + 5]
shl eax, 7
shl eax, 4
shl eax, 2
shl eax, 1
shl eax, 1
shl eax, 1
add ecx, eax
mov dword [rsp + 0x20], r8d
movzx eax, byte [rdx + 6]
shl eax, 1
shl eax, 5
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 7]
add ecx, eax
movzx eax, byte [rdx + 9]
mov dword [rsp + 0x24], ecx
movzx ecx, byte [rdx + 8]
shl ecx, 0x17
shl ecx, 1
shl eax, 0x10
add ecx, eax
movzx eax, byte [rdx + 0xa]
shl eax, 3
shl eax, 2
shl eax, 1
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0xb]
add ecx, eax
movzx eax, byte [rdx + 0xd]
mov dword [rsp + 0x28], ecx
movzx ecx, byte [rdx + 0xc]
shl ecx, 0x10
shl ecx, 3
shl ecx, 1
shl ecx, 2
shl ecx, 1
shl ecx, 1
shl eax, 1
shl eax, 0xc
shl eax, 1
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0xe]
shl eax, 4
shl eax, 1
shl eax, 2
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0xf]
add ecx, eax
movzx eax, byte [rdx + 0x11]
mov dword [rsp + 0x2c], ecx
movzx ecx, byte [rdx + 0x10]
shl ecx, 0x10
shl ecx, 7
shl ecx, 1
shl eax, 5
shl eax, 6
shl eax, 4
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x12]
shl eax, 3
shl eax, 5
add ecx, eax
movzx eax, byte [rdx + 0x13]
add ecx, eax
movzx eax, byte [rdx + 0x15]
mov dword [rsp + 0x30], ecx
movzx ecx, byte [rdx + 0x14]
shl ecx, 0x14
shl ecx, 3
shl ecx, 1
shl eax, 9
shl eax, 4
shl eax, 2
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x16]
shl eax, 3
shl eax, 4
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x17]
add ecx, eax
movzx eax, byte [rdx + 0x19]
mov dword [rsp + 0x34], ecx
movzx ecx, byte [rdx + 0x18]
shl ecx, 6
shl ecx, 0xf
shl ecx, 2
shl ecx, 1
shl eax, 0xf
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x1a]
shl eax, 8
add ecx, eax
movzx eax, byte [rdx + 0x1b]
add ecx, eax
movzx eax, byte [rdx + 0x1d]
mov dword [rsp + 0x38], ecx
movzx ecx, byte [rdx + 0x1c]
shl ecx, 0x14
shl ecx, 2
shl ecx, 1
shl ecx, 1
shl eax, 2
shl eax, 0xd
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x1e]
shl eax, 6
shl eax, 2
add ecx, eax
movzx eax, byte [rdx + 0x1f]
add ecx, eax
movzx eax, byte [rdx + 0x21]
mov dword [rsp + 0x3c], ecx
shl eax, 1
shl eax, 0xd
shl eax, 1
shl eax, 1
movzx ecx, byte [rdx + 0x20]
shl ecx, 8
shl ecx, 4
shl ecx, 2
shl ecx, 2
shl ecx, 7
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x22]
shl eax, 2
shl eax, 1
shl eax, 5
add ecx, eax
movzx eax, byte [rdx + 0x23]
add ecx, eax
movzx eax, byte [rdx + 0x25]
mov dword [rsp + 0x40], ecx
movzx ecx, byte [rdx + 0x24]
shl eax, 6
shl eax, 8
shl eax, 2
shl ecx, 2
shl ecx, 0xf
shl ecx, 1
shl ecx, 4
shl ecx, 1
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x26]
shl eax, 6
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x27]
add ecx, eax
movzx eax, byte [rdx + 0x29]
mov dword [rsp + 0x44], ecx
movzx ecx, byte [rdx + 0x28]
shl eax, 0xf
shl eax, 1
shl ecx, 3
shl ecx, 7
shl ecx, 0xc
shl ecx, 1
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x2a]
shl eax, 5
shl eax, 1
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x2b]
add ecx, eax
movzx eax, byte [rdx + 0x2d]
mov dword [rsp + 0x48], ecx
movzx ecx, byte [rdx + 0x2c]
shl eax, 2
shl eax, 8
shl eax, 1
shl eax, 4
shl eax, 1
shl ecx, 5
shl ecx, 7
shl ecx, 5
shl ecx, 2
shl ecx, 4
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x2e]
shl eax, 7
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x2f]
add ecx, eax
movzx eax, byte [rdx + 0x31]
mov dword [rsp + 0x4c], ecx
movzx ecx, byte [rdx + 0x30]
shl eax, 1
shl eax, 0xd
shl eax, 2
shl ecx, 0x10
shl ecx, 7
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x32]
shl eax, 6
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x33]
add ecx, eax
movzx eax, byte [rdx + 0x35]
mov dword [rsp + 0x50], ecx
movzx ecx, byte [rdx + 0x34]
shl eax, 0x10
shl ecx, 0xd
shl ecx, 0xa
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x36]
shl eax, 5
shl eax, 1
shl eax, 1
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x37]
add ecx, eax
movzx eax, byte [rdx + 0x39]
mov dword [rsp + 0x54], ecx
movzx ecx, byte [rdx + 0x38]
shl eax, 0xa
shl eax, 4
shl eax, 1
shl eax, 1
shl ecx, 7
shl ecx, 0xc
shl ecx, 4
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x3a]
shl eax, 2
shl eax, 6
add ecx, eax
movzx eax, byte [rdx + 0x3b]
mov esi, 0x6555a17e
sub esi, 0x499d93ea
add esi, 0x4075952f
sub esi, 0x52e45f1d
add esi, 0x4c7713f0
add esi, 0x1e2dcc0d
xor esi, 0x42d4a94d
sub esi, 0x1d2079d
sub esi, 0x2f68834f
add ecx, eax
mov dword [rbp + 0xb0], esi
movzx eax, byte [rdx + 0x3d]
mov dword [rsp + 0x58], ecx
movzx ecx, byte [rdx + 0x3c]
shl eax, 4
shl eax, 3
shl eax, 8
shl eax, 1
shl ecx, 0xa
shl ecx, 8
shl ecx, 5
shl ecx, 1
add ecx, eax
movzx eax, byte [rdx + 0x3e]
shl eax, 1
shl eax, 4
shl eax, 2
shl eax, 1
add ecx, eax
movzx eax, byte [rdx + 0x3f]
add ecx, eax
mov dword [rsp + 0x5c], ecx
mov eax, esi
lea ecx, [rsi + 0x10]
mov edi, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 6]
mov r13d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 0xb]
mov edx, dword [rsp + rax*4 + 0x20]
lea eax, [rsi - 2]
mov r8d, edx
mov dword [rbp + 0xb8], edx
xor r8d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 0xe]
xor r8d, r13d
xor r8d, edi
rol r8d, 1
mov dword [rsp + rax*4 + 0x20], r8d
lea eax, [rsi + 1]
mov r11d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 7]
mov r12d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 0xc]
mov edx, dword [rsp + rax*4 + 0x20]
lea eax, [rsi - 1]
mov ebx, edx
mov dword [rsp], edx
xor ebx, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 0xf]
xor ebx, r12d
mov dword [rsp + 8], r8d
xor ebx, r11d
xor r11d, r8d
rol ebx, 1
mov dword [rsp + rax*4 + 0x20], ebx
lea eax, [rsi + 2]
mov edx, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 8]
mov r10d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 0xd]
mov eax, dword [rsp + rax*4 + 0x20]
xor edi, eax
mov dword [rsp + 4], eax
xor edi, r10d
lea eax, [rsi + 3]
mov dword [rsp + 0xc], ebx
xor edi, edx
mov r9d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 9]
mov r15d, dword [rsp + rax*4 + 0x20]
xor r11d, r15d
lea eax, [rsi + 0x11]
rol edi, 1
xor r11d, r9d
mov dword [rsp + 0x10], edi
rol r11d, 1
mov dword [rsp + rax*4 + 0x20], r11d
lea eax, [rsi + 4]
mov r8d, dword [rsp + rax*4 + 0x20]
lea eax, [rsi + 0xa]
mov r14d, dword [rsp + rax*4 + 0x20]
mov esi, ebx
mov ebx, dword [rbp + 0xb8]
xor esi, r14d
xor esi, r8d
mov dword [rsp + rcx*4 + 0x20], edi
xor esi, edx
mov dword [rsp + 0x14], r11d
mov edx, dword [rbp + 0xb0]
rol esi, 1
lea eax, [rdx + 0x12]
mov dword [rsp + rax*4 + 0x20], esi
lea eax, [rdx + 5]
mov edx, dword [rsp + rax*4 + 0x20]
xor ebx, edx
xor ebx, r9d
mov r9d, dword [rbp + 0xb0]
xor ebx, edi
mov edi, dword [rsp]
rol ebx, 1
xor edi, r13d
lea eax, [r9 + 0x13]
mov dword [rsp + rax*4 + 0x20], ebx
lea eax, [r9 + 0x14]
xor edi, r8d
xor edi, r11d
mov r11d, r12d
xor r11d, edx
rol edi, 1
mov edx, dword [rsp + 8]
xor r11d, esi
xor r11d, dword [rsp + 4]
xor edx, r13d
mov r13d, dword [rsp + 0xc]
xor edx, ebx
mov dword [rsp + rax*4 + 0x20], edi
xor edx, r10d
lea eax, [r9 + 0x15]
rol edx, 1
mov r8d, r13d
rol r11d, 1
mov dword [rsp + rax*4 + 0x20], r11d
xor r8d, r12d
mov r12d, dword [rbp + 0xb8]
lea eax, [r9 + 0x16]
mov dword [rsp + rax*4 + 0x20], edx
xor r8d, edi
lea eax, [r9 + 0x17]
xor r8d, r15d
rol r8d, 1
mov r9d, r11d
mov dword [rsp + rax*4 + 0x20], r8d
xor r9d, r14d
mov eax, dword [rbp + 0xb0]
xor r9d, dword [rsp + 0x10]
neg eax
add eax, 0xffffffe8
neg eax
xor r9d, r10d
mov r10d, r12d
xor r10d, edx
rol r9d, 1
xor r10d, dword [rsp + 0x14]
xor r12d, r9d
xor r10d, r15d
mov dword [rsp + rax*4 + 0x20], r9d
mov eax, dword [rbp + 0xb0]
xor r12d, ebx
mov r15d, dword [rsp]
neg eax
add eax, 0xffffffe7
neg eax
xor r12d, dword [rsp + 4]
mov edx, r15d
xor r15d, dword [rsp + 8]
xor edx, r8d
xor edx, esi
rol r10d, 1
mov esi, dword [rbp + 0xb0]
xor r15d, r10d
mov dword [rsp + rax*4 + 0x20], r10d
xor edx, r14d
rol edx, 1
xor r15d, edi
xor r13d, edx
rol r12d, 1
lea eax, [rsi + 0x1a]
rol r15d, 1
mov dword [rsp + rax*4 + 0x20], edx
xor r13d, r11d
xor r13d, dword [rsp + 4]
lea eax, [rsi + 0x1b]
mov dword [rsp + rax*4 + 0x20], r12d
lea eax, [rsi + 0x1c]
mov dword [rsp + rax*4 + 0x20], r15d
lea eax, [rsi + 0x1d]
rol r13d, 1
mov esi, ecx
mov dword [rsp + rax*4 + 0x20], r13d
lea eax, [rcx + 0xe]
mov dword [rbp + 0xb0], ecx
cmp eax, 0x50
jb 0x1401b1791
mov rdi, qword [rbp + 0xa0]
lea rsi, [rsp + 0x20]
mov r14d, 0x366aa291
add r14d, 0x122bb0d7
sub r14d, 0xc6c2bf4
sub r14d, 0xc435935
xor r14d, 0xe0e566d
sub r14d, 0x21e8983e
mov r15d, r14d
mov r13d, dword [rdi + 0x50]
mov r9d, r13d
mov r10d, dword [rdi + 0x54]
mov r8d, dword [rdi + 0x58]
mov r11d, dword [rdi + 0x5c]
mov ebx, dword [rdi + 0x60]
mov r12d, dword [rdi + 0x64]
nop dword [rax]
nop word [rax + rax]
mov ecx, r8d
lea rsi, [rsi + 4]
and ecx, r10d
mov edx, r10d
not edx
mov eax, r9d
rol eax, 1
rol eax, 4
and edx, r11d
xor edx, ecx
add eax, edx
add eax, dword [rsi - 4]
add eax, r12d
add eax, ebx
mov ebx, r11d
mov r11d, r8d
mov r8d, r10d
ror r8d, 1
ror r8d, 1
mov r10d, r9d
mov r9d, eax
sub r15, 1
jne 0x1401b1a2b
mov r15d, dword [rdi + 0x68]
lea rdx, [rsp + 0x70]
xchg rsi, r10
mov r10, r14
xchg r10, rsi
nop dword [rax]
mov ecx, eax
lea rdx, [rdx + 4]
mov eax, r11d
rol ecx, 5
xor eax, r8d
add ecx, r15d
xor eax, r10d
add eax, ecx
add eax, dword [rdx - 4]
add eax, ebx
mov ebx, r11d
mov r11d, r8d
mov r8d, r10d
ror r8d, 1
ror r8d, 1
mov r10d, r9d
mov r9d, eax
sub rsi, 1
jne 0x1401b1a89
mov r12d, dword [rdi + 0x6c]
lea rsi, [rbp - 0x40]
xchg r14, r15
mov r14, r15
xchg r14, r15
mov edx, eax
nop dword [rax]
nop word [rax + rax]
mov ecx, r9d
lea rsi, [rsi + 4]
mov r9d, r8d
rol ecx, 2
rol ecx, 1
rol ecx, 1
rol ecx, 1
xor r9d, r10d
mov eax, r8d
and r9d, r11d
and eax, r10d
xor r9d, eax
lea eax, [r12 + rcx]
add r9d, eax
add r9d, ebx
mov ebx, r11d
add r9d, dword [rsi - 4]
mov r11d, r8d
mov r8d, r10d
mov r10d, edx
ror r8d, 2
mov edx, r9d
sub r15, 1
jne 0x1401b1ae5
mov esi, dword [rdi + 0x70]
lea rcx, [rbp + 0x10]
nop word [rax + rax]
mov eax, edx
lea rcx, [rcx + 4]
mov edx, r11d
rol eax, 2
rol eax, 1
rol eax, 1
rol eax, 1
xor edx, r8d
add eax, esi
xor edx, r10d
add edx, eax
add edx, dword [rcx - 4]
add edx, ebx
mov ebx, r11d
mov r11d, r8d
mov r8d, r10d
ror r8d, 2
mov r10d, r9d
mov r9d, edx
sub r14, 1
jne 0x1401b1b3f
add dword [rdi + 0x54], r10d
lea eax, [rdx + r13]
add dword [rdi + 0x58], r8d
add dword [rdi + 0x5c], r11d
add dword [rdi + 0x60], ebx
xchg rdi, rbx
mov rdi, qword [rsp + 0x1a8]
xchg rbx, rdi
mov dword [rdi + 0x50], eax
add rsp, 0x160
push rbx
push rax
push rcx
push rdx
push rcx
xchg qword [rsp + 0x28], r15
pop rcx
pop rdx
pop rcx
pop rax
pop rbx
add rsp, 8
nop
xchg qword [rsp], r14
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
xchg qword [rsp], r12
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
mov rsi, qword [rsp]
add rsp, 8
push rbx
push rcx
push rdx
xchg qword [rsp + 0x18], rbp
pop rdx
pop rcx
pop rbx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]