Function at 0x140045a80
Capabilities:
Encode data using xor

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 - 0x1e0]
sub rsp, 0x2e0
mov rax, qword [0x140193440]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov rax, qword [rcx + 0x80]
mov rsi, rdx
mov qword [rsp + 8], rax
movabs r15, 0x3ffffffffff
mov rax, qword [rcx + 0x88]
movabs r11, 0xfffffc0000000000
mov qword [rsp + 0x10], rax
mov rax, qword [rcx + 0x90]
mov qword [rsp + 0x18], rax
mov rax, qword [rcx + 0x98]
mov qword [rsp + 0x20], rax
mov rax, qword [rcx + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [rcx + 0xa8]
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0xb0]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + 0xb8]
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp], rcx
nop word [rax + rax]
lea rdi, [rsp + 0x50]
lea rdi, [rdi + rax*8]
lea r14d, [rax - 0xf]
lea ebx, [rax*8]
cmp eax, 0x10
jae 0x140045b65
mov r11, qword [rbx + rsi]
bswap r11
jmp 0x140045bfb
mov r8, qword [rsp + r14*8 + 0x50]
lea ecx, [rax - 2]
mov r9, qword [rsp + rcx*8 + 0x50]
mov r10, r8
mov rcx, r8
and r11, r9
shr rcx, 8
mov rdx, r8
and r10d, 0x7f
and rdx, 0xffffffffffffff80
shl r10, 0x38
or r10, rcx
mov rcx, r8
shr rcx, 1
xor r10, rcx
mov rcx, r8
shl rcx, 7
xor rdx, rcx
shr r8, 7
shl rdx, 0x38
mov rcx, r9
shr rcx, 0x3d
or r10, rdx
xor r10, r8
mov r8, r9
and r8, r15
shl r8, 3
or r8, rcx
mov rcx, r9
shr rcx, 0x13
xor r8, rcx
mov rcx, r9
shl rcx, 0x2a
xor r11, rcx
shr r9, 6
shl r11, 3
lea ecx, [rax - 0x10]
or r11, r8
xor r11, r9
add r11, r10
add r11, qword [rsp + rcx*8 + 0x50]
lea ecx, [rax - 7]
add r11, qword [rsp + rcx*8 + 0x50]
mov qword [rdi], r11
lea r13, [rsp + 0x50]
lea edi, [rax + 2]
lea edx, [rdi - 1]
lea r13, [r13 + rdx*8]
lea r12d, [rax - 0xe]
cmp edx, 0x10
jae 0x140045c26
lea ecx, [rbx + 8]
mov rbx, qword [rcx + rsi]
bswap rbx
jmp 0x140045cc5
mov r8, qword [rsp + r12*8 + 0x50]
lea ecx, [rax - 1]
mov r9, qword [rsp + rcx*8 + 0x50]
mov rbx, r8
mov rcx, r8
mov rdx, r8
shr rcx, 8
and ebx, 0x7f
shl rbx, 0x38
and rdx, 0xffffffffffffff80
or rbx, rcx
mov rcx, r8
shr rcx, 1
xor rbx, rcx
mov rcx, r8
shl rcx, 7
xor rdx, rcx
shr r8, 7
shl rdx, 0x38
mov rcx, r9
or rbx, rdx
shr rcx, 0x3d
xor rbx, r8
mov rdx, r9
mov r8, r9
and r8, r15
shl r8, 3
or r8, rcx
mov rcx, r9
shr rcx, 0x13
xor r8, rcx
movabs rcx, 0xfffffc0000000000
and rdx, rcx
mov rcx, r9
shl rcx, 0x2a
xor rdx, rcx
shr r9, 6
shl rdx, 3
lea ecx, [rax - 6]
or r8, rdx
xor r8, r9
add rbx, r8
add rbx, qword [rsp + rcx*8 + 0x50]
add rbx, qword [rsp + r14*8 + 0x50]
mov qword [r13], rbx
lea r13d, [rax - 0xd]
cmp edi, 0x10
jae 0x140045ce5
lea ecx, [rdi*8]
mov r11, qword [rcx + rsi]
bswap r11
jmp 0x140045d7d
mov r9, qword [rsp + r13*8 + 0x50]
mov r10, r11
mov rcx, r11
mov rdx, r11
shr rcx, 0x3d
and r10, r15
shl r10, 3
mov r8, r9
or r10, rcx
and r8d, 0x7f
mov rcx, r11
shl r8, 0x38
shr rcx, 0x13
xor r10, rcx
movabs rcx, 0xfffffc0000000000
and rdx, rcx
mov rcx, r11
shl rcx, 0x2a
xor rdx, rcx
shr r11, 6
shl rdx, 3
mov rcx, r9
shr rcx, 8
or r10, rdx
or r8, rcx
xor r11, r10
mov rcx, r9
mov rdx, r9
shr rcx, 1
and rdx, 0xffffffffffffff80
xor r8, rcx
mov rcx, r9
shl rcx, 7
xor rdx, rcx
shr r9, 7
shl rdx, 0x38
lea ecx, [rax - 5]
or r8, rdx
xor r8, r9
add r11, r8
add r11, qword [rsp + rcx*8 + 0x50]
add r11, qword [rsp + r12*8 + 0x50]
lea ecx, [rdi + 1]
mov qword [rsp + rdi*8 + 0x50], r11
mov r14d, ecx
lea r12d, [rax - 0xc]
cmp ecx, 0x10
jae 0x140045da9
lea ecx, [rcx*8]
mov rcx, qword [rcx + rsi]
bswap rcx
mov qword [rsp + r14*8 + 0x50], rcx
jmp 0x140045e46
mov r9, qword [rsp + r12*8 + 0x50]
mov r10, rbx
and r10, r15
mov r8, r9
shl r10, 3
and r8d, 0x7f
shl r8, 0x38
mov rcx, rbx
shr rcx, 0x3d
mov rdx, rbx
or r10, rcx
mov rcx, rbx
shr rcx, 0x13
xor r10, rcx
movabs rcx, 0xfffffc0000000000
and rdx, rcx
mov rcx, rbx
shl rcx, 0x2a
xor rdx, rcx
shr rbx, 6
shl rdx, 3
mov rcx, r9
or r10, rdx
shr rcx, 8
or r8, rcx
xor r10, rbx
mov rcx, r9
mov rdx, r9
shr rcx, 1
and rdx, 0xffffffffffffff80
xor r8, rcx
mov rcx, r9
shl rcx, 7
xor rdx, rcx
shr r9, 7
shl rdx, 0x38
lea ecx, [rax - 4]
or r8, rdx
xor r8, r9
add r10, r8
add r10, qword [rsp + rcx*8 + 0x50]
add r10, qword [rsp + r13*8 + 0x50]
mov qword [rsp + r14*8 + 0x50], r10
lea ecx, [rdi + 2]
mov r10d, ecx
cmp ecx, 0x10
jae 0x140045e69
lea ecx, [rcx*8]
mov rcx, qword [rcx + rsi]
bswap rcx
mov qword [rsp + r10*8 + 0x50], rcx
jmp 0x140045f09
lea ecx, [rax - 0xb]
mov r8, qword [rsp + rcx*8 + 0x50]
mov r9, r8
mov rcx, r8
shr rcx, 8
mov rdx, r8
and r9d, 0x7f
and rdx, 0xffffffffffffff80
shl r9, 0x38
or r9, rcx
mov rcx, r8
shr rcx, 1
xor r9, rcx
mov rcx, r8
shl rcx, 7
xor rdx, rcx
shr r8, 7
shl rdx, 0x38
mov rcx, r11
or r9, rdx
shr rcx, 0x3d
xor r9, r8
mov rdx, r11
mov r8, r11
and r8, r15
shl r8, 3
or r8, rcx
mov rcx, r11
shr rcx, 0x13
xor r8, rcx
movabs rcx, 0xfffffc0000000000
and rdx, rcx
mov rcx, r11
shl rcx, 0x2a
xor rdx, rcx
shr r11, 6
shl rdx, 3
lea ecx, [rax - 3]
or r8, rdx
xor r8, r11
add r9, r8
add r9, qword [rsp + rcx*8 + 0x50]
add r9, qword [rsp + r12*8 + 0x50]
mov qword [rsp + r10*8 + 0x50], r9
add eax, 5
movabs r11, 0xfffffc0000000000
cmp eax, 0x50
jb 0x140045b40
mov r15, qword [rsp]
mov r13d, 0xa
mov r9, qword [rsp + 8]
xor r8d, r8d
mov r10, qword [rsp + 0x10]
mov r11, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
nop dword [rax]
nop dword [rax + rax]
mov rdx, rdi
mov rax, rdi
shr rax, 0x29
and edx, 0x7fffff
shl rdx, 0x17
mov rcx, rdi
or rdx, rax
shl rcx, 0x17
xor rcx, rdi
mov rax, rdi
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, rdi
shr rax, 0xe
xor rdx, rax
mov rax, rdi
shl rax, 0x1b
xor rcx, rax
mov rax, r14
xor rax, rsi
shl rcx, 0x17
or rdx, rcx
and rax, rdi
xor rax, r14
mov rcx, r9
add rdx, rax
shl rcx, 5
xor rcx, r9
lea rax, [0x140152970]
add rdx, qword [r8 + rax]
mov rax, r9
add rdx, qword [rsp + r8 + 0x50]
shr rax, 0x27
add r12, rdx
add rbx, r12
mov rdx, r9
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, r9
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, r9
shr rax, 0x1c
xor rdx, rax
mov rax, r9
shl rax, 0xb
xor rcx, rax
mov rax, r10
shl rcx, 0x19
and rax, r9
or rdx, rcx
mov rcx, r10
or rcx, r9
and rcx, r11
or rcx, rax
mov rax, rbx
add r12, rcx
shr rax, 0x29
add r12, rdx
mov rcx, rbx
mov rdx, rbx
shl rcx, 0x17
and edx, 0x7fffff
xor rcx, rbx
shl rdx, 0x17
or rdx, rax
mov rax, rbx
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, rbx
shr rax, 0xe
xor rdx, rax
mov rax, rbx
shl rax, 0x1b
xor rcx, rax
mov rax, rsi
xor rax, rdi
shl rcx, 0x17
or rdx, rcx
and rax, rbx
xor rax, rsi
mov rcx, r12
add rdx, rax
shl rcx, 5
xor rcx, r12
lea rax, [0x140152970]
add rdx, qword [r8 + rax + 8]
mov rax, r12
add rdx, qword [rsp + r8 + 0x58]
shr rax, 0x27
add r14, rdx
add r11, r14
mov rdx, r12
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, r12
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, r12
shr rax, 0x1c
xor rdx, rax
mov rax, r12
shl rax, 0xb
xor rcx, rax
mov rax, r12
and rax, r9
shl rcx, 0x19
or rdx, rcx
mov rcx, r12
or rcx, r9
and rcx, r10
or rcx, rax
mov rax, r11
shr rax, 0x29
add r14, rcx
add r14, rdx
mov rcx, r11
shl rcx, 0x17
mov rdx, r11
and edx, 0x7fffff
xor rcx, r11
shl rdx, 0x17
or rdx, rax
mov rax, r11
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, r11
shr rax, 0xe
xor rdx, rax
mov rax, r11
shl rax, 0x1b
xor rax, rcx
shl rax, 0x17
or rdx, rax
mov rax, rdi
xor rax, rbx
mov rcx, r14
and rax, r11
shl rcx, 5
xor rax, rdi
xor rcx, r14
add rdx, rax
lea rax, [0x140152970]
add rdx, qword [r8 + rax + 0x10]
mov rax, r14
add rdx, qword [rsp + r8 + 0x60]
shr rax, 0x27
add rsi, rdx
add r10, rsi
mov rdx, r14
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, r14
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, r14
shr rax, 0x1c
xor rdx, rax
mov rax, r14
shl rax, 0xb
xor rcx, rax
mov rax, r12
and rax, r14
shl rcx, 0x19
or rdx, rcx
mov rcx, r12
or rcx, r14
and rcx, r9
or rcx, rax
mov rax, r10
shr rax, 0x29
add rsi, rcx
add rsi, rdx
mov rcx, r10
shl rcx, 0x17
mov rdx, r10
and edx, 0x7fffff
xor rcx, r10
shl rdx, 0x17
or rdx, rax
mov rax, r10
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, r10
shr rax, 0xe
xor rdx, rax
mov rax, r10
shl rax, 0x1b
xor rcx, rax
mov rax, rbx
xor rax, r11
shl rcx, 0x17
or rdx, rcx
and rax, r10
xor rax, rbx
mov rcx, rsi
add rdx, rax
shl rcx, 5
lea rax, [0x140152970]
add rdx, qword [r8 + rax + 0x18]
add rdx, qword [rsp + r8 + 0x68]
add rdi, rdx
mov rdx, rsi
add r9, rdi
xor rcx, rsi
and edx, 0x1f
mov rax, rsi
shr rax, 0x27
shl rdx, 0x19
or rdx, rax
mov rax, rsi
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, rsi
shr rax, 0x1c
xor rdx, rax
mov rax, rsi
shl rax, 0xb
xor rcx, rax
mov rax, r14
and rax, rsi
shl rcx, 0x19
or rdx, rcx
mov rcx, r14
or rcx, rsi
and rcx, r12
or rcx, rax
mov rax, r9
shr rax, 0x29
add rdi, rcx
add rdi, rdx
mov rcx, r9
shl rcx, 0x17
mov rdx, r9
and edx, 0x7fffff
xor rcx, r9
shl rdx, 0x17
or rdx, rax
mov rax, r9
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, r9
shr rax, 0xe
xor rdx, rax
mov rax, r9
shl rax, 0x1b
xor rcx, rax
mov rax, r11
xor rax, r10
shl rcx, 0x17
or rdx, rcx
and rax, r9
xor rax, r11
mov rcx, rdi
add rdx, rax
shl rcx, 5
lea rax, [0x140152970]
xor rcx, rdi
add rdx, qword [r8 + rax + 0x20]
mov rax, rdi
add rdx, qword [rsp + r8 + 0x70]
shr rax, 0x27
add rbx, rdx
mov rdx, rdi
add r12, rbx
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, rdi
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
shl rax, 0x19
or rdx, rax
mov rax, rdi
shr rax, 0x1c
and rcx, 0xfffffffffffff800
xor rdx, rax
mov rax, rdi
shl rax, 0xb
xor rcx, rax
mov rax, rsi
and rax, rdi
shl rcx, 0x19
or rdx, rcx
mov rcx, rsi
or rcx, rdi
and rcx, r14
or rcx, rax
mov rax, r12
shr rax, 0x29
add rbx, rcx
add rbx, rdx
mov rcx, r12
shl rcx, 0x17
mov rdx, r12
and edx, 0x7fffff
xor rcx, r12
shl rdx, 0x17
or rdx, rax
mov rax, r12
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, r12
shr rax, 0xe
xor rdx, rax
mov rax, r12
shl rax, 0x1b
xor rcx, rax
mov rax, r10
xor rax, r9
shl rcx, 0x17
or rdx, rcx
and rax, r12
xor rax, r10
mov rcx, rbx
add rdx, rax
shl rcx, 5
xor rcx, rbx
lea rax, [0x140152970]
add rdx, qword [r8 + rax + 0x28]
mov rax, rbx
add rdx, qword [rsp + r8 + 0x78]
shr rax, 0x27
add r11, rdx
mov rdx, rbx
add r14, r11
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, rbx
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, rbx
shr rax, 0x1c
xor rdx, rax
mov rax, rbx
shl rax, 0xb
xor rcx, rax
mov rax, rdi
shl rcx, 0x19
or rdx, rcx
mov rcx, rdi
or rcx, rbx
and rcx, rsi
and rax, rbx
or rcx, rax
mov rax, r14
shr rax, 0x29
add r11, rcx
add r11, rdx
mov rcx, r14
shl rcx, 0x17
mov rdx, r14
and edx, 0x7fffff
xor rcx, r14
shl rdx, 0x17
or rdx, rax
mov rax, r14
shr rax, 0x12
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, r14
shr rax, 0xe
xor rdx, rax
mov rax, r14
shl rax, 0x1b
xor rcx, rax
mov rax, r12
xor rax, r9
shl rcx, 0x17
or rdx, rcx
and rax, r14
xor rax, r9
mov rcx, r11
add rdx, rax
shl rcx, 5
xor rcx, r11
lea rax, [0x140152970]
add rdx, qword [r8 + rax + 0x30]
mov rax, r11
add rdx, qword [rbp + r8 - 0x80]
shr rax, 0x27
add r10, rdx
add rsi, r10
mov rdx, r11
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, r11
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, r11
shr rax, 0x1c
xor rdx, rax
mov rax, r11
shl rax, 0xb
xor rcx, rax
mov rax, rbx
shl rcx, 0x19
and rax, r11
or rdx, rcx
mov rcx, rbx
or rcx, r11
and rcx, rdi
or rcx, rax
mov rax, rsi
add r10, rcx
shr rax, 0x29
add r10, rdx
mov rcx, rsi
mov rdx, rsi
shl rcx, 0x17
and edx, 0x7fffff
xor rcx, rsi
shl rdx, 0x17
or rdx, rax
mov rax, rsi
shr rax, 0x12
lea r8, [r8 + 0x40]
xor rdx, rax
mov rax, rcx
and eax, 0x7800000
and rcx, 0xfffffffff8000000
shl rax, 0x17
or rdx, rax
mov rax, rsi
shr rax, 0xe
xor rdx, rax
mov rax, rsi
shl rax, 0x1b
xor rcx, rax
mov rax, r12
xor rax, r14
shl rcx, 0x17
or rdx, rcx
and rax, rsi
xor rax, r12
mov rcx, r10
add rdx, rax
shl rcx, 5
xor rcx, r10
lea rax, [0x140152970]
add rdx, qword [r8 + rax - 8]
mov rax, r10
add rdx, qword [rsp + r8 + 0x48]
shr rax, 0x27
add r9, rdx
mov rdx, r10
add rdi, r9
and edx, 0x1f
shl rdx, 0x19
or rdx, rax
mov rax, r10
shr rax, 0x22
xor rdx, rax
mov rax, rcx
and eax, 0x7e0
and rcx, 0xfffffffffffff800
shl rax, 0x19
or rdx, rax
mov rax, r10
shr rax, 0x1c
xor rdx, rax
mov rax, r10
shl rax, 0xb
xor rcx, rax
mov rax, r11
shl rcx, 0x19
and rax, r10
or rdx, rcx
mov rcx, r11
or rcx, r10
and rcx, rbx
or rcx, rax
add r9, rcx
add r9, rdx
sub r13, 1
jne 0x140045f60
add qword [r15 + 0x80], r9
add qword [r15 + 0x88], r10
add qword [r15 + 0x90], r11
add qword [r15 + 0x98], rbx
add qword [r15 + 0xa0], rdi
add qword [r15 + 0xa8], rsi
add qword [r15 + 0xb0], r14
add qword [r15 + 0xb8], r12
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.1400b1f80
lea r11, [rsp + 0x2e0]
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