Function at 0x5f3720
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1b8
vmovdqu ymm0, ymmword [0x006d1b00]
mov rax, qword [rcx + 0x28]
mov r10, qword [rcx]
mov rdi, qword [rcx + 0x58]
mov r12, qword [rcx + 0x50]
mov r11, rdi
vextracti128 xmmword [rsp + 0x100], ymm0, 1
mov qword [rsp + 0x40], rax
mov rax, qword [rcx + 0x78]
vmovups xmmword [rsp + 0xf0], xmm0
vmovdqu ymm0, ymmword [0x006d1b20]
mov qword [rsp + 0x80], rax
mov rax, qword [rcx + 0xa0]
vmovups xmmword [rsp + 0x110], xmm0
vextracti128 xmmword [rsp + 0x120], ymm0, 1
vmovdqu ymm0, ymmword [0x006d1b40]
mov qword [rsp + 0x98], rax
mov rax, qword [rcx + 8]
vmovups xmmword [rsp + 0x130], xmm0
vextracti128 xmmword [rsp + 0x140], ymm0, 1
vmovdqu ymm0, ymmword [0x006d1b60]
mov qword [rsp + 0x20], rax
mov rax, qword [rcx + 0x30]
vmovups xmmword [rsp + 0x150], xmm0
vextracti128 xmmword [rsp + 0x160], ymm0, 1
vmovdqu ymm0, ymmword [0x006d1b80]
mov qword [rsp + 0x48], rax
vmovups xmmword [rsp + 0x170], xmm0
vextracti128 xmmword [rsp + 0x180], ymm0, 1
vmovdqu ymm0, ymmword [0x006d1ba0]
mov qword [rsp + 0x200], rcx
vmovups xmmword [rsp + 0x190], xmm0
vextracti128 xmmword [rsp + 0x1a0], ymm0, 1
mov rbp, qword [rcx + 0x80]
mov rsi, qword [rcx + 0x10]
mov rbx, qword [rcx + 0x20]
mov r15, qword [rcx + 0xc0]
mov qword [rsp + 0x28], rsi
mov rsi, qword [rcx + 0x38]
mov qword [rsp + 0x38], rbx
mov rbx, qword [rcx + 0x48]
mov r14, r15
mov r15, r10
mov qword [rsp + 0x50], rsi
mov rsi, qword [rcx + 0x60]
mov qword [rsp + 0x60], rbx
mov rbx, qword [rcx + 0x70]
mov qword [rsp + 0x68], rsi
mov rsi, qword [rcx + 0x88]
mov qword [rsp + 0x78], rbx
mov rbx, qword [rcx + 0x98]
mov qword [rsp + 0x88], rsi
mov rsi, qword [rcx + 0xb0]
mov qword [rsp + 0x90], rbx
lea rbx, [rsp + 0xf0]
mov rax, qword [rcx + 0xa8]
mov qword [rsp + 0xa0], rsi
mov rsi, qword [rcx + 0x18]
mov qword [rsp + 0xa8], rbx
lea rbx, [rsp + 0x1b0]
mov r13, qword [rcx + 0x90]
mov r10, rax
mov qword [rsp + 0x30], rsi
mov rsi, qword [rcx + 0x40]
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0x58], rsi
mov rsi, qword [rcx + 0x68]
mov qword [rsp + 0x70], rsi
mov rsi, qword [rcx + 0xb8]
nop dword [rax]
mov r9, qword [rsp + 0x20]
xor r9, qword [rsp + 0x48]
xor r9, r11
mov rax, qword [rsp + 0x28]
xor rax, qword [rsp + 0x50]
xor r9, rbp
xor rax, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x40]
xor r9, r10
xor rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x30]
xor rax, qword [rsp + 0xa0]
mov r8, r9
xor rdx, qword [rsp + 0x58]
xor rbx, r15
mov rcx, rax
mov rax, qword [rsp + 0x38]
xor rax, qword [rsp + 0x60]
rol r8, 1
xor rax, qword [rsp + 0x78]
xor rax, qword [rsp + 0x90]
xor rbx, r12
xor rax, r14
xor rdx, qword [rsp + 0x70]
xor rbx, qword [rsp + 0x80]
xor r8, rax
xor rdx, r13
xor rbx, qword [rsp + 0x98]
rol rax, 1
xor r15, r8
mov rdi, rdx
xor rax, rcx
xor rdi, rsi
mov qword [rsp + 0x18], r15
mov r15, rcx
mov rcx, qword [rsp + 0x88]
rol r15, 1
mov rdx, rdi
xor r15, rbx
rol rdx, 1
rol rbx, 1
xor r9, rdx
mov rdx, rbx
xor rdx, rdi
mov rdi, qword [rsp + 0x20]
xor rdi, r15
mov rbx, rdi
mov rdi, qword [rsp + 0x50]
rol rbx, 1
xor rcx, r9
xor r10, r15
xor r11, r15
rol rcx, 0xf
xor rdi, r9
rol r11, 0xa
xor r12, r8
rol rdi, 6
xor r13, rax
xor rbp, r15
xor r14, rdx
mov qword [rsp + 0x88], rcx
mov rcx, qword [rsp + 0x58]
xor rsi, rax
rol r12, 3
mov qword [rsp + 0xb0], rbx
mov rbx, qword [rsp + 0x40]
rol r13, 0x15
ror rbp, 0x13
xor rcx, rax
mov qword [rsp + 0xb8], rdi
rol r14, 0xe
ror rcx, 9
xor rbx, r8
mov qword [rsp + 0xc0], r11
ror rsi, 8
mov qword [rsp + 0xd0], rcx
mov rcx, r10
ror rbx, 0x1c
mov r11, qword [rsp + 0x30]
rol rcx, 2
mov qword [rsp + 0xc8], rbx
mov r10, qword [rsp + 0x38]
mov qword [rsp + 0xd8], rcx
mov rcx, qword [rsp + 0x80]
xor r11, rax
mov rdi, qword [rsp + 0x90]
xor r10, rdx
xor rax, qword [rsp + 0x70]
rol r11, 0x1c
xor rcx, r8
rol r10, 0x1b
mov rbx, rcx
mov rcx, qword [rsp + 0x68]
xor rdi, rdx
rol rdi, 8
ror rbx, 0x17
rol rax, 0x19
xor r15, qword [rsp + 0x48]
xor rcx, r9
xor r8, qword [rsp + 0x98]
ror rcx, 0x15
ror r15, 0x14
mov qword [rsp + 0xe0], rbx
mov rbx, qword [rsp + 0x28]
mov qword [rsp + 8], rcx
rol r8, 0x12
mov qword [rsp + 0x10], r15
mov r15, qword [rsp + 8]
xor rbx, r9
mov qword [rsp + 0x68], r8
mov r8, qword [rsp + 0x10]
mov rcx, rbx
not r15
mov rbx, qword [rsp + 0x78]
xor r9, qword [rsp + 0xa0]
ror rcx, 2
and r15, r13
ror r9, 3
xor r8, r15
xor rbx, rdx
xor rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], r8
rol rdx, 0x14
mov r8, r13
ror rbx, 0x19
not r8
mov r15, r8
mov r8, qword [rsp + 8]
and r15, r14
xor r8, r15
mov r15, qword [rsp + 0x18]
mov qword [rsp + 0x28], r8
mov r8, r14
not r8
and r15, r8
mov r8, r15
xor r8, r13
mov r13, qword [rsp + 0x18]
mov qword [rsp + 0x30], r8
not r13
and r13, qword [rsp + 0x10]
mov r8, r13
xor r8, r14
mov r14, qword [rsp + 0xb0]
mov qword [rsp + 0x38], r8
mov r8, rdx
not r8
mov r13, r8
and r13, r12
mov r8, r13
xor r8, r11
mov qword [rsp + 0x40], r8
mov r8, r12
not r8
mov r15, r8
and r15, rbp
mov r8, r15
mov r15, qword [rsp + 0x68]
xor r8, rdx
mov qword [rsp + 0x48], r8
mov r8, rbp
not r8
mov r13, r8
and r13, r9
mov r8, r13
xor r8, r12
mov r12, r9
mov qword [rsp + 0x50], r8
not r12
mov r8, rax
and r12, r11
not r8
not r11
and r11, rdx
mov rdx, r8
mov r8, rdi
xor r12, rbp
not r8
xor r11, r9
and rdx, rdi
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r11
mov r11, rdx
mov rdx, r8
mov r9, qword [rsp + 0xb8]
and rdx, r15
mov r8, rdx
mov r12, r9
mov rdx, r15
xor r11, r9
xor r8, rax
not r12
mov qword [rsp + 0x68], r8
mov r8, r15
and r12, rax
not r8
xor r12, r14
mov rax, r8
and rax, r14
not r14
mov r15, r14
mov r8, rax
mov r14, qword [rsp + 0xc8]
and r15, r9
xor r8, rdi
mov rdi, qword [rsp + 0xc0]
mov r9, r15
mov qword [rsp + 0x70], r8
mov r8, r14
mov r15, qword [rsp + 0x18]
xor r9, rdx
mov rdx, qword [rsp + 0x88]
not r8
mov rbp, rdi
mov rax, r8
mov qword [rsp + 0x78], r9
not rbp
mov r8, rdx
and rax, rdi
and rbp, rdx
not r8
mov r9, rax
xor rbp, r14
mov rax, r8
xor r9, r10
and rax, rsi
mov qword [rsp + 0x80], r9
mov r9, rax
mov rax, qword [rsp + 0xd8]
xor r9, rdi
mov rdi, qword [rsp + 0xd0]
mov qword [rsp + 0x88], r9
mov r9, rsi
not r9
mov r8, rdi
mov r13, r9
not r8
and r13, r10
not r10
and r8, rbx
and r10, r14
xor r13, rdx
mov rdx, qword [rsp + 0xe0]
xor r8, rcx
xor r10, rsi
mov rsi, rax
mov qword [rsp + 0x98], r8
not rsi
mov r9, rdx
mov qword [rsp + 0x90], r10
mov r10, rbx
and rsi, rcx
not rcx
not r9
not r10
and rcx, rdi
and r9, rax
and r10, rdx
xor rsi, rdx
xor rax, rcx
mov rcx, qword [rsp + 0x10]
xor r9, rbx
xor r10, rdi
mov r14, rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa0], r9
not rcx
and rcx, qword [rsp + 8]
xor r15, qword [rax]
add rax, 8
mov qword [rsp + 0xa8], rax
xor r15, rcx
cmp rax, qword [rsp + 0xe8]
jne 0x5f38f8
vmovq xmm2, qword [rsp + 0x28]
vmovq xmm3, r15
mov rbx, r10
vpinsrq xmm1, xmm2, qword [rsp + 0x30], 1
vpinsrq xmm0, xmm3, qword [rsp + 0x20], 1
mov rax, qword [rsp + 0x200]
vmovq xmm2, r12
vmovq xmm4, qword [rsp + 0x48]
vmovq xmm5, qword [rsp + 0x38]
vinserti128 ymm0, ymm0, xmm1, 1
vpinsrq xmm1, xmm4, qword [rsp + 0x50], 1
vmovq xmm3, qword [rsp + 0x58]
mov qword [rax + 0xc0], r14
vmovups xmmword [rax], xmm0
vextracti128 xmmword [rax + 0x10], ymm0, 1
vpinsrq xmm0, xmm5, qword [rsp + 0x40], 1
vmovq xmm4, qword [rsp + 0x78]
vmovq xmm5, qword [rsp + 0x68]
vinserti128 ymm0, ymm0, xmm1, 1
vpinsrq xmm1, xmm2, r11, 1
vmovq xmm2, r13
vmovups xmmword [rax + 0x20], xmm0
vextracti128 xmmword [rax + 0x30], ymm0, 1
vpinsrq xmm0, xmm3, qword [rsp + 0x60], 1
vmovq xmm3, rbp
vinserti128 ymm0, ymm0, xmm1, 1
vpinsrq xmm1, xmm4, qword [rsp + 0x80], 1
vmovq xmm4, r9
vmovups xmmword [rax + 0x40], xmm0
vextracti128 xmmword [rax + 0x50], ymm0, 1
vpinsrq xmm0, xmm5, qword [rsp + 0x70], 1
vmovq xmm5, r8
vinserti128 ymm0, ymm0, xmm1, 1
vpinsrq xmm1, xmm2, qword [rsp + 0x90], 1
vmovups xmmword [rax + 0x60], xmm0
vextracti128 xmmword [rax + 0x70], ymm0, 1
vpinsrq xmm0, xmm3, qword [rsp + 0x88], 1
vinserti128 ymm0, ymm0, xmm1, 1
vpinsrq xmm1, xmm4, rsi, 1
vmovups xmmword [rax + 0x80], xmm0
vextracti128 xmmword [rax + 0x90], ymm0, 1
vpinsrq xmm0, xmm5, rbx, 1
vinserti128 ymm0, ymm0, xmm1, 1
vmovups xmmword [rax + 0xa0], xmm0
vextracti128 xmmword [rax + 0xb0], ymm0, 1
vzeroupper
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret