Function at 0x140047500
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
movaps xmmword [rsp + 0x100], xmm14
movaps xmmword [rsp + 0xf0], xmm13
movaps xmmword [rsp + 0xe0], xmm12
movaps xmmword [rsp + 0xd0], xmm11
movaps xmmword [rsp + 0xc0], xmm10
movaps xmmword [rsp + 0xb0], xmm9
movaps xmmword [rsp + 0xa0], xmm8
movaps xmmword [rsp + 0x90], xmm7
movaps xmmword [rsp + 0x80], xmm6
mov rsi, r8
test sil, 0xf
je 0x140047572
xor eax, eax
jmp 0x140047887
mov rdi, rdx
mov rbx, rcx
mov r12d, esi
shr r12d, 4
mov r13, rsi
and r13, 0xffffffffffffff80
add r13, rdx
and r12d, 7
movups xmm9, xmmword [rcx + 0x3c0]
cmp rsi, 0x80
jae 0x1400475a7
movaps xmm6, xmm9
jmp 0x14004767b
mov r14, rdi
nop word [rax + rax]
movups xmm12, xmmword [r14]
movups xmm13, xmmword [r14 + 0x10]
movups xmm14, xmmword [r14 + 0x20]
movups xmm11, xmmword [r14 + 0x30]
lea r15, [r14 + 0x40]
movups xmm10, xmmword [r14 + 0x40]
movups xmm8, xmmword [r14 + 0x50]
movups xmm7, xmmword [r14 + 0x60]
movups xmm6, xmmword [r14 + 0x70]
mov r8d, 4
mov rcx, rbx
mov rdx, r14
call fcn.1400b1ce0
mov r8d, 4
mov rcx, rbx
mov rdx, r15
call fcn.1400b1ce0
movups xmm0, xmmword [r14]
xorps xmm0, xmm9
movups xmm1, xmmword [r14 + 0x10]
xorps xmm1, xmm12
movups xmm2, xmmword [r14 + 0x20]
xorps xmm2, xmm13
movups xmm3, xmmword [r14 + 0x30]
xorps xmm3, xmm14
movups xmmword [r14], xmm0
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14 + 0x20], xmm2
movups xmmword [r14 + 0x30], xmm3
movups xmm0, xmmword [r14 + 0x40]
xorps xmm0, xmm11
movups xmmword [r14 + 0x40], xmm0
movups xmm0, xmmword [r14 + 0x50]
xorps xmm0, xmm10
movups xmmword [r14 + 0x50], xmm0
movups xmm0, xmmword [r14 + 0x60]
xorps xmm0, xmm8
movups xmmword [r14 + 0x60], xmm0
movups xmm0, xmmword [r14 + 0x70]
xorps xmm0, xmm7
movups xmmword [r14 + 0x70], xmm0
sub r14, 0xffffffffffffff80
movaps xmm9, xmm6
cmp r14, r13
jne 0x1400475b0
movups xmmword [rbx + 0x3c0], xmm6
test r12, r12
je 0x140047764
lea r15, [rsp + 0x50]
shl r12, 4
xor ebp, ebp
xorps xmm7, xmm7
lea r14, [rsp + 0x40]
nop
movaps xmm8, xmm6
movups xmmword [r15 + 0x20], xmm7
movups xmmword [r15 + 0x10], xmm7
movups xmmword [r15], xmm7
movups xmm6, xmmword [r13 + rbp]
movaps xmmword [rsp + 0x40], xmm6
mov r8d, 4
mov rcx, rbx
mov rdx, r14
call fcn.1400b1ce0
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [r13 + rbp], xmm0
movups xmm0, xmmword [r13 + rbp]
xorps xmm0, xmm8
movups xmmword [r13 + rbp], xmm0
add rbp, 0x10
cmp r12, rbp
jne 0x1400476a0
movaps xmmword [rsp + 0x30], xmm6
movzx eax, byte [rsp + 0x3f]
mov byte [rsp + 0x2e], al
movzx r9d, byte [rsp + 0x3e]
movzx eax, byte [rsp + 0x3d]
mov byte [rsp + 0x2d], al
movzx eax, byte [rsp + 0x3c]
mov byte [rsp + 0x2c], al
movzx eax, byte [rsp + 0x3b]
mov byte [rsp + 0x2b], al
movzx r10d, byte [rsp + 0x3a]
movzx r11d, byte [rsp + 0x39]
movzx ebp, byte [rsp + 0x38]
movzx r14d, byte [rsp + 0x37]
movzx r15d, byte [rsp + 0x36]
movzx r12d, byte [rsp + 0x35]
movzx r13d, byte [rsp + 0x34]
movzx eax, byte [rsp + 0x33]
movzx ecx, byte [rsp + 0x32]
movzx edx, byte [rsp + 0x30]
movzx r8d, byte [rsp + 0x31]
jmp 0x1400477ff
movzx edx, byte [rbx + 0x3c0]
movzx r8d, byte [rbx + 0x3c1]
movzx ecx, byte [rbx + 0x3c2]
movzx eax, byte [rbx + 0x3c3]
movzx r13d, byte [rbx + 0x3c4]
movzx r12d, byte [rbx + 0x3c5]
movzx r15d, byte [rbx + 0x3c6]
movzx r14d, byte [rbx + 0x3c7]
movzx ebp, byte [rbx + 0x3c8]
movzx r11d, byte [rbx + 0x3c9]
movzx r10d, byte [rbx + 0x3ca]
movzx r9d, byte [rbx + 0x3cb]
mov byte [rsp + 0x2b], r9b
movzx r9d, byte [rbx + 0x3cc]
mov byte [rsp + 0x2c], r9b
movzx r9d, byte [rbx + 0x3cd]
mov byte [rsp + 0x2d], r9b
movzx r9d, byte [rbx + 0x3ce]
mov byte [rsp + 0x2f], r9b
movzx r9d, byte [rbx + 0x3cf]
mov byte [rsp + 0x2e], r9b
movzx r9d, byte [rsp + 0x2f]
mov byte [rbx + 0x3c0], dl
mov byte [rbx + 0x3c1], r8b
mov byte [rbx + 0x3c2], cl
mov byte [rbx + 0x3c3], al
mov byte [rbx + 0x3c4], r13b
mov byte [rbx + 0x3c5], r12b
mov byte [rbx + 0x3c6], r15b
mov byte [rbx + 0x3c7], r14b
mov byte [rbx + 0x3c8], bpl
mov byte [rbx + 0x3c9], r11b
mov byte [rbx + 0x3ca], r10b
movzx eax, byte [rsp + 0x2b]
mov byte [rbx + 0x3cb], al
movzx eax, byte [rsp + 0x2c]
mov byte [rbx + 0x3cc], al
movzx eax, byte [rsp + 0x2d]
mov byte [rbx + 0x3cd], al
mov byte [rbx + 0x3ce], r9b
movzx eax, byte [rsp + 0x2e]
mov byte [rbx + 0x3cf], al
mov rcx, rdi
mov rdx, rsi
call fcn.1400b1310
movaps xmm6, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0xa0]
movaps xmm9, xmmword [rsp + 0xb0]
movaps xmm10, xmmword [rsp + 0xc0]
movaps xmm11, xmmword [rsp + 0xd0]
movaps xmm12, xmmword [rsp + 0xe0]
movaps xmm13, xmmword [rsp + 0xf0]
movaps xmm14, xmmword [rsp + 0x100]
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret