Function at 0x140052d50
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov rbp, rbp
nop
sub rsp, 8
mov qword [rsp], rbp
push rsi
mov r10, r10
nop
push 0x2df2c24d
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
neg rsp
sub rsp, 0xffffffffffffffc0
neg rsp
lea rdi, [rcx + 8]
xorps xmm0, xmm0
mov dword [rsp - 0x30], 0x4affdaa
mov qword [rcx], rdi
lea rsi, [r8 + r8]
xchg rdi, rsp
movups xmmword [rsp], xmm0
xchg rdi, rsp
mov rbx, rcx
mov dword [rsp - 0x34], ecx
mov r12, r8
xchg rdx, rdi
movups xmmword [rdx + 0x10], xmm0
xchg rdx, rdi
mov r14, rdx
movups xmmword [rdi + 0x20], xmm0
mov dword [rsp - 0x3c], edx
mov qword [rcx + 0x38], rsi
mov rcx, qword [rcx]
cmp rcx, rdi
mov dword [rsp - 0x14], esi
je 0x140052de3
call fcn.140095ef0
xor r13d, r13d
mov qword [rsp + 0x88], r15
xchg rsi, rsi
cmp rsi, 0x18
jbe 0x140052e2c
lea rcx, [rsi + rsi]
call fcn.140096260
mov dword [rsp - 0x1c], edi
xchg r13, rax
mov qword [rbx], r13
xchg r13, rax
test rax, rax
xchg rdx, rdx
jne 0x140052e3c
xchg rdi, r14
mov qword [rbx], r14
xchg rdi, r14
mov r15d, r13d
jmp 0x140052e60
xchg rdi, r8
mov qword [rbx], r8
xchg r8, rdi
xchg r9, rax
mov r9, rdi
xchg r9, rax
xorps xmm0, xmm0
mov dword [rsp - 0x20], ebp
xchg r11, rax
movups xmmword [r11], xmm0
xchg r11, rax
xchg r13, rax
movups xmmword [r13 + 0x10], xmm0
xchg r13, rax
xchg r15, rax
movups xmmword [r15 + 0x20], xmm0
xchg r15, rax
mov r15, qword [rbx]
mov ebp, 0x22aafbdd
xor ebp, 0x2360e78e
xor ebp, 0x7617cb10
add ebp, 0x7304edd
sub ebp, 0x6892acb6
xchg r13, r14
mov rsi, r14
xchg r13, r14
test r12, r12
je 0x140053077
mov dword [rsp - 0x40], 0x7d2228e6
mov eax, 0x75e7c231
xor eax, 0x5e81e553
xor eax, 0x3987cc0d
xor eax, 0x4e596c60
sub eax, 0x5cb886dd
mov dword [rsp + 0x20], 0x75725c09
sub dword [rsp + 0x20], 0x58e0bb2f
sub dword [rsp + 0x20], 0x1226da05
sub dword [rsp + 0x20], 0xa21c686
mov word [rsp + 0x28], ax
mov dword [rsp - 0x44], ebp
mov dword [rsp + 0x24], 0x46975522
xor dword [rsp + 0x24], 0x3783903
sub dword [rsp + 0x24], 0x212047e1
xor dword [rsp + 0x24], 0x66a11e6f
sub dword [rsp + 0x24], 0x424a39da
nop
mov dword [rsp - 0x14], ecx
movzx r8d, byte [rsi + r14]
xchg r13, rcx
mov qword [rsp + 0x80], rcx
xchg r13, rcx
xchg rsi, rax
mov rsi, qword [rsp + 0x80]
xchg rsi, rax
nop word [rax + rax]
xchg rcx, rsi
mov rsi, qword [rsp + 0x80]
xchg rsi, rcx
xchg r10, rax
mov r10, qword [rsp + 0x80]
xchg r10, rax
and cl, 3
shl cl, 1
shl cl, 1
shl cl, 1
movzx edx, word [rsp + rax*2 + 0x20]
mov eax, 0x5976043b
sub eax, 0x2c86ee60
sub eax, 0x9577b25
xor eax, 0x64fbb3bb
sub eax, 0x30f0afa3
shr eax, cl
movzx ecx, al
mov dword [rsp - 0x20], 0x6ae8b808
mov rax, qword [rsp + 0x80]
xor cx, dx
mov word [rsp + rax*2 + 0x2a], cx
mov dword [rsp - 0x38], edi
xchg r15, rax
mov r15, qword [rsp + 0x80]
xchg r15, rax
inc rax
mov dword [rsp - 0x18], 0x52d8ad13
xchg r12, rax
mov qword [rsp + 0x80], r12
xchg r12, rax
mov rax, qword [rsp + 0x80]
cmp rax, 5
jb 0x140052f31
mov dword [rsp - 0xc], 0x492ee09a
lea rdx, [rsp + 0x2a]
mov word [rsp + 0x34], r13w
lea rcx, [rsp + 0x90]
mov dword [rsp - 0x3c], ebx
call fcn.140051a30
xor eax, eax
lea rdi, [rsp + 0x2a]
mov ecx, 0x5d3e1c87
sub ecx, 0x19f4b230
xor ecx, 0x7e83458c
sub ecx, 0x3dca2fd6
rep stosb byte [rdi], al
movzx eax, bp
mov ecx, 0x38f78bed
add ecx, 0x1c578a45
sub ecx, 0xe97232b
add ecx, 0x29f0e5bd
xor ecx, 0x70a8d83b
and ax, cx
ror ebp, 2
ror ebp, 1
ror ebp, 4
ror ebp, 1
xor ax, word [rsp + 0x90]
mov word [r15 + rsi*4], ax
mov r9, r9
movzx eax, bp
and ax, cx
ror ebp, 6
ror ebp, 1
ror ebp, 1
xor ax, word [rsp + 0x92]
mov r10, r10
mov word [r15 + rsi*4 + 2], ax
inc rsi
cmp rsi, r12
mov dword [rsp - 0x44], ecx
jb 0x140052f07
xchg rcx, r15
mov rcx, qword [rsp + 0x88]
xchg r15, rcx
mov rax, rbx
sub rsp, 0xffffffffffffffc0
xchg r8, r8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rdi, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
nop
mov rbx, qword [rsp]
add rsp, 8
ret