Function at 0x5f3e70
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x238
vmovups xmm0, xmmword [0x006d7a20]
vmovups xmm4, xmmword [rdx]
mov r13d, 0x10
mov eax, dword [rcx]
vmovups xmm5, xmmword [rdx + 0x10]
mov dword [rsp], eax
mov eax, dword [rcx + 4]
mov qword [rsp + 0x280], rcx
lea r8, [rsp + 0x12c]
vpshufb xmm1, xmm4, xmm0
vmovups xmm4, xmmword [rdx + 0x20]
mov dword [rsp + 4], eax
mov eax, dword [rcx + 8]
vmovups xmmword [rsp + 0x120], xmm1
vmovd r12d, xmm1
vpshufb xmm1, xmm5, xmm0
vmovups xmmword [rsp + 0x130], xmm1
mov r9d, dword [rsp + 0x13c]
mov dword [rsp + 8], eax
mov eax, dword [rcx + 0xc]
vpshufb xmm1, xmm4, xmm0
mov dword [rsp + 0xc], eax
mov eax, dword [rcx + 0x10]
vmovups xmmword [rsp + 0x140], xmm1
vmovd esi, xmm1
mov ebp, esi
vmovups xmm1, xmmword [rdx + 0x30]
mov ebx, dword [rsp + 0x144]
mov esi, dword [rsp + 0x124]
mov dword [rsp + 0x10], eax
mov eax, dword [rcx + 0x14]
mov dword [rsp + 0x14], eax
mov eax, dword [rcx + 0x18]
vpshufb xmm0, xmm1, xmm0
vmovups xmmword [rsp + 0x150], xmm0
mov edx, dword [rsp + 0x158]
mov dword [rsp + 0x18], eax
mov eax, dword [rcx + 0x1c]
mov ecx, dword [rsp + 0x154]
mov dword [rsp + 0x1c], eax
mov eax, dword [rsp + 0x15c]
mov edi, dword [rsp + 0x128]
xor r12d, r9d
rorx r10d, ecx, 0x11
mov r9d, dword [r8 + 0x1c]
xor ebp, esi
xor r10d, r12d
mov r12d, dword [r8]
mov esi, dword [r8 + 4]
xor ebx, edi
rorx r11d, r10d, 9
rorx ecx, r10d, 0x11
mov edi, dword [r8 + 8]
add r13d, 3
xor ecx, r11d
rorx r11d, edx, 0x11
add r8, 0xc
xor r10d, r9d
xor r11d, ebp
mov ebp, dword [r8 + 0x14]
xor r10d, ecx
rorx ecx, r12d, 0x19
rorx edx, r11d, 9
xor ecx, r10d
rorx r10d, r11d, 0x11
xor edx, r10d
rorx r10d, eax, 0x11
mov dword [r8 + 0x28], ecx
xor r10d, ebx
mov ebx, dword [r8 + 0x18]
xor r11d, ebp
xor r11d, edx
rorx edx, esi, 0x19
rorx eax, r10d, 9
xor edx, r11d
rorx r11d, r10d, 0x11
xor eax, r11d
mov dword [r8 + 0x2c], edx
xor r10d, ebx
xor r10d, eax
rorx eax, edi, 0x19
xor eax, r10d
mov dword [r8 + 0x30], eax
cmp r13d, 0x43
jne 0x5f3f5f
vmovups xmm3, xmmword [rsp + 0x130]
vmovups xmm5, xmmword [rsp + 0x150]
rorx ecx, dword [rsp + 0x220], 0x11
lea r15, [rsp + 0x20]
vxorps xmm0, xmm3, xmmword [rsp + 0x120]
vmovups xmm2, xmmword [rsp + 0x160]
lea r12, [rsp + 0x120]
vmovups xmm1, xmmword [rsp + 0x170]
vmovups xmm4, xmmword [rsp + 0x190]
mov eax, dword [rsp + 0x1ec]
xor eax, dword [rsp + 0x208]
xor eax, ecx
vmovups xmmword [rsp + 0x20], xmm0
vxorps xmm0, xmm3, xmmword [rsp + 0x140]
vmovups xmm3, xmmword [rsp + 0x180]
mov edx, eax
rorx eax, dword [rsp + 0x1f8], 0x19
xor eax, dword [rsp + 0x214]
rorx ecx, edx, 0x11
rorx r8d, edx, 9
xor ecx, r8d
xor eax, ecx
xor ecx, ecx
xor eax, edx
vmovups xmmword [rsp + 0x30], xmm0
vxorps xmm0, xmm5, xmmword [rsp + 0x140]
mov dword [rsp + 0x22c], eax
vmovups xmmword [rsp + 0x40], xmm0
vxorps xmm0, xmm2, xmm5
vmovups xmm5, xmmword [rsp + 0x1a0]
vmovups xmmword [rsp + 0x50], xmm0
vxorps xmm0, xmm1, xmm2
vmovups xmmword [rsp + 0x60], xmm0
vxorps xmm0, xmm3, xmm1
vmovups xmm1, xmmword [rsp + 0x1c0]
vmovups xmmword [rsp + 0x70], xmm0
vxorps xmm0, xmm4, xmm3
vmovups xmmword [rsp + 0x80], xmm0
vxorps xmm0, xmm5, xmm4
vmovups xmm4, xmmword [rsp + 0x1d0]
vmovups xmmword [rsp + 0x90], xmm0
vxorps xmm0, xmm5, xmmword [rsp + 0x1b0]
vmovups xmmword [rsp + 0xa0], xmm0
vxorps xmm0, xmm1, xmmword [rsp + 0x1b0]
vmovups xmmword [rsp + 0xb0], xmm0
vxorps xmm0, xmm1, xmmword [rsp + 0x1d0]
vmovups xmmword [rsp + 0xc0], xmm0
vxorps xmm0, xmm4, xmmword [rsp + 0x1e0]
vmovups xmm5, xmmword [rsp + 0x1e0]
vmovups xmm2, xmmword [rsp + 0x1f0]
vmovups xmm1, xmmword [rsp + 0x200]
vmovups xmm3, xmmword [rsp + 0x210]
mov esi, dword [rsp + 0x1c]
mov edx, dword [rsp + 0x18]
mov r14d, dword [rsp + 0x14]
mov ebx, dword [rsp + 0x10]
mov r9d, dword [rsp + 0xc]
mov eax, dword [rsp + 8]
mov r13d, dword [rsp + 4]
mov r10d, dword [rsp]
vmovups xmmword [rsp + 0xd0], xmm0
vxorps xmm0, xmm5, xmmword [rsp + 0x1f0]
vmovups xmmword [rsp + 0xe0], xmm0
vxorps xmm0, xmm2, xmmword [rsp + 0x200]
vmovups xmmword [rsp + 0xf0], xmm0
vxorps xmm0, xmm1, xmmword [rsp + 0x210]
vmovups xmmword [rsp + 0x100], xmm0
vxorps xmm0, xmm3, xmmword [rsp + 0x220]
vmovups xmmword [rsp + 0x110], xmm0
jmp 0x5f420a
mov edx, edi
mov ebx, r11d
mov eax, ebp
mov r10d, r8d
rorx r8d, r10d, 0x14
mov r11d, 0x79cc4519
rorx ebp, r13d, 0x17
rol r11d, cl
lea edi, [r8 + rbx]
add edi, r11d
mov r11d, r10d
xor r11d, r13d
rorx edi, edi, 0x19
mov r13d, r10d
xor r11d, eax
add r11d, dword [r15 + rcx*4]
xor r8d, edi
add esi, edi
add r9d, r8d
rorx edi, r14d, 0xd
lea r8d, [r9 + r11]
mov r11d, ebx
xor r11d, r14d
mov r14d, ebx
xor r11d, edx
add r11d, dword [r12 + rcx*4]
inc rcx
add esi, r11d
rorx r9d, esi, 0xf
rorx r11d, esi, 0x17
xor r11d, r9d
mov r9d, eax
xor r11d, esi
mov esi, edx
cmp rcx, 0x10
jne 0x5f4200
mov r14d, eax
jmp 0x5f429b
mov edi, r9d
mov r11d, eax
mov ebp, esi
mov r8d, r13d
rorx eax, r8d, 0x14
mov r9d, 0x7a879d8a
mov r13d, r10d
lea esi, [rax + r11]
rol r9d, cl
or r13d, ebp
add r9d, esi
mov esi, r10d
and r13d, r8d
and esi, ebp
rorx r9d, r9d, 0x19
or r13d, esi
mov esi, dword [r15 + rcx*4]
xor eax, r9d
add edx, r9d
rorx r9d, ebx, 0xd
add esi, r13d
lea r13d, [rax + r14]
mov eax, ebx
mov r14d, ebp
xor eax, edi
add r13d, esi
rorx esi, r10d, 0x17
mov ebx, r11d
and eax, r11d
xor eax, edi
add eax, dword [r12 + rcx*4]
inc rcx
add eax, edx
rorx r10d, eax, 0xf
rorx edx, eax, 0x17
xor edx, r10d
mov r10d, r8d
xor eax, edx
mov edx, edi
cmp rcx, 0x40
jne 0x5f4290
vmovd xmm5, dword [rsp + 8]
vmovd xmm4, dword [rsp]
vpinsrd xmm2, xmm5, dword [rsp + 0xc], 1
vpinsrd xmm0, xmm4, dword [rsp + 4], 1
mov r14d, esi
mov esi, r9d
mov r9d, eax
mov rax, qword [rsp + 0x280]
vmovd xmm5, r14d
vmovd xmm4, r13d
vpinsrd xmm1, xmm5, ebp, 1
vmovd xmm5, dword [rsp + 0x18]
vpunpcklqdq xmm2, xmm0, xmm2
vpinsrd xmm0, xmm4, r8d, 1
vmovd xmm4, dword [rsp + 0x10]
vpunpcklqdq xmm0, xmm0, xmm1
vxorps xmm0, xmm2, xmm0
vpinsrd xmm2, xmm5, dword [rsp + 0x1c], 1
vmovd xmm5, esi
vpinsrd xmm1, xmm5, edi, 1
vmovups xmmword [rax], xmm0
vpinsrd xmm0, xmm4, dword [rsp + 0x14], 1
vmovd xmm4, r9d
vpunpcklqdq xmm2, xmm0, xmm2
vpinsrd xmm0, xmm4, r11d, 1
vpunpcklqdq xmm0, xmm0, xmm1
vxorps xmm0, xmm2, xmm0
vmovups xmmword [rax + 0x10], xmm0
add rsp, 0x238
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret