Function at 0x14002b0e0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x348
mov rsi, rcx
mov qword [rsp + 0x278], r8
mov qword [rsp + 0x270], r9
mov qword [rsp + 0x288], rdx
mov rax, qword [rsi + 0x10]
mov r11, qword [rsi + 0x28]
mov r10, qword [rsi + 0x98]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsi + 0x30]
mov rdi, qword [rsi + 0x90]
mov r15, qword [rsi + 0x88]
mov r8, qword [rsi + 0x18]
mov r13, qword [rsi + 0x40]
mov qword [rsp + 0x2e8], r10
mov qword [rsp + 0x2d8], r11
mov qword [rsp + 0x2e0], rax
mov r14, qword [rsi + 0x20]
mov r10, qword [rsi + 0x38]
mov r12, qword [rsi + 0x48]
mov r9, qword [rsi + 0x50]
mov rax, qword [rsi + 0x58]
mov rbx, qword [rsi + 0x60]
mov rdx, qword [rsi + 0x68]
mov r11, qword [rsi + 0x70]
mov rcx, qword [rsi + 0x78]
mov rbp, qword [rsi + 0x80]
mov qword [rsp + 0x280], rdi
mov qword [rsp + 0x268], rsi
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0x2a8], r13
mov qword [rsp + 0x260], r15
mov rdi, qword [rsp + 0x2e8]
mov rsi, qword [rsp + 0x2d8]
jmp 0x14002b1c4
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0x2d8], rsi
mov qword [rsp + 0xc0], rsi
xor rsi, r14
mov r15, qword [rsp + 0x2e0]
xor rsi, r15
xor rsi, r10
mov r13, qword [rsp + 0x2a8]
xor rsi, r13
xor rsi, r12
xor rsi, r9
xor rsi, rax
xor rsi, rbx
xor rsi, rdx
mov qword [rsp + 0x2f0], r8
xor rsi, r11
mov r8, qword [rsp + 0xa0]
xor rsi, rcx
add r8, qword [rsp + 0x270]
xor rsi, rbp
mov qword [rsp + 0x2a0], r8
mov qword [rsp + 0xa0], r8
mov r8, qword [rsp + 0x260]
mov qword [rsp + 0x120], r8
mov r8, qword [rsp + 0x280]
xor rsi, qword [rsp + 0x260]
mov qword [rsp + 0x128], r8
xor rsi, r8
mov r8, qword [rsp + 0x2f0]
xor rsi, rdi
mov qword [rsp + 0xc8], r15
mov r15, r8
mov qword [rsp + 0xd8], r13
movabs r13, 0x1bd11bdaa9fc1a22
xor r15, qword [rsp + 0x2a0]
xor rsi, r13
mov qword [rsp + 0x138], rsi
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0xd0], r10
mov qword [rsp + 0xe0], r12
mov qword [rsp + 0xe8], r9
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], r11
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x130], rdi
mov qword [rsp + 0xb0], r15
mov r15d, 0x80
mov rsi, qword [rsp + 0x2d8]
mov r13, qword [rsp + 0x288]
vmovups xmm0, xmmword [r13 + r15 - 0x10]
vmovups xmmword [rsp + r15 + 0x10], xmm0
vmovups xmm1, xmmword [r13 + r15 - 0x20]
vmovups xmmword [rsp + r15], xmm1
vmovups xmm2, xmmword [r13 + r15 - 0x30]
vmovups xmmword [rsp + r15 - 0x10], xmm2
vmovups xmm3, xmmword [r13 + r15 - 0x40]
vmovups xmmword [rsp + r15 - 0x20], xmm3
sub r15, 0x40
jne 0x14002b304
mov r13, qword [rsp + 0x20]
add r14, r13
mov qword [rsp + 0x1e0], r13
mov r13, qword [rsp + 0x30]
mov r15, qword [rsp + 0x28]
add rsi, r15
add qword [rsp + 0x2e0], r13
mov qword [rsp + 0x1f0], r13
mov r13, qword [rsp + 0x40]
mov qword [rsp + 0x1e8], r15
mov r15, qword [rsp + 0x38]
add r10, r15
add qword [rsp + 0x2a8], r13
mov qword [rsp + 0x200], r13
mov r13, qword [rsp + 0x50]
add r9, r13
mov qword [rsp + 0x1f8], r15
mov r15, qword [rsp + 0x48]
add r12, r15
mov qword [rsp + 0x210], r13
mov r13, qword [rsp + 0x60]
add rbx, r13
mov qword [rsp + 0x208], r15
mov r15, qword [rsp + 0x58]
add rax, r15
mov qword [rsp + 0x220], r13
mov r13, qword [rsp + 0x70]
add r11, r13
mov qword [rsp + 0x218], r15
mov r15, qword [rsp + 0x68]
add rdx, r15
mov qword [rsp + 0x230], r13
mov r13, qword [rsp + 0x80]
add rbp, r13
mov qword [rsp + 0x228], r15
mov r15, qword [rsp + 0x78]
add rcx, r15
mov qword [rsp + 0x240], r13
mov r13, qword [rsp + 0x2a0]
mov qword [rsp + 0x238], r15
mov r15, qword [rsp + 0x88]
add r13, qword [rsp + 0x260]
mov qword [rsp + 0x250], r15
add r13, r15
mov qword [rsp + 0x2a0], r13
mov r15, qword [rsp + 0x90]
add r8, qword [rsp + 0x280]
mov r13, qword [rsp + 0x98]
add r8, r15
mov qword [rsp + 0x258], r15
lea r15, [rsp + 0xa8]
mov qword [rsp + 0x248], r13
add rdi, r13
mov qword [rsp + 0x298], 1
mov r13d, 8
mov qword [rsp + 0x290], r15
mov qword [rsp + 0x2d0], rcx
mov qword [rsp + 0x2b8], r11
mov qword [rsp + 0x2b0], rbx
mov qword [rsp + 0x2c0], r9
mov qword [rsp + 0x2c8], r14
mov rcx, qword [rsp + 0x2b0]
add r8, rdi
add rcx, rdx
shld rdx, rdx, 8
shld rdi, rdi, 0x25
mov r15, qword [rsp + 0x2c0]
xor rdx, rcx
add r15, rax
xor rdi, r8
shld rax, rax, 0x2f
mov r11, qword [rsp + 0x2b8]
xor rax, r15
mov r9, qword [rsp + 0x2d0]
add r11, r9
shld r9, r9, 0x11
mov qword [rsp + 0x2f8], r13
xor r9, r11
mov r14, qword [rsp + 0x2e0]
add r11, rax
mov r13, qword [rsp + 0x2a8]
add r14, r10
shld r10, r10, 0xd
add r13, r12
shld r12, r12, 8
shld rax, rax, 0x31
mov qword [rsp + 0x2b0], rcx
xor r10, r14
mov rcx, qword [rsp + 0x2a0]
add rbp, rcx
shld rcx, rcx, 0x16
xor r12, r13
mov rbx, qword [rsp + 0x2c8]
add r13, rdi
add rbx, rsi
xor rcx, rbp
shld rsi, rsi, 0x18
add rbp, r10
shld rdi, rdi, 0x37
shld r10, r10, 0x12
xor rsi, rbx
xor rax, r11
mov qword [rsp + 0x2b8], r11
add rbx, rdx
mov r11, qword [rsp + 0x2b0]
add r14, rcx
add r11, rsi
add r15, r9
shld rsi, rsi, 0x34
add r8, r12
shld rdx, rdx, 0x26
shld rcx, rcx, 0x13
shld r9, r9, 0xa
shld r12, r12, 0x17
xor rdi, r13
xor r10, rbp
add rbp, rdi
xor rsi, r11
shld rdi, rdi, 0x22
xor rdx, rbx
add rbx, rax
xor rcx, r14
shld rax, rax, 0x21
xor r9, r15
add r15, rsi
add r13, r10
shld rsi, rsi, 0xd
xor r12, r8
shld r10, r10, 0x33
add r8, rcx
add r14, r12
shld rcx, rcx, 0x29
xor rdi, rbp
shld r12, r12, 4
mov qword [rsp + 0x300], rbp
add r11, r9
mov rbp, qword [rsp + 0x2b8]
xor rax, rbx
add rbp, rdx
xor rsi, r15
shld rdx, rdx, 0x11
xor r10, r13
shld r9, r9, 0x3b
add qword [rsp + 0x300], rax
xor rcx, r8
mov qword [rsp + 0x2b8], rbp
add r8, rsi
shld rax, rax, 0x19
xor r12, r14
shld rsi, rsi, 0x2f
add qword [rsp + 0x2b8], r10
xor rdx, rbp
shld r10, r10, 0x10
add r13, rdx
shld rdx, rdx, 0x29
mov qword [rsp + 0x2b0], r11
add rbx, rdi
add qword [rsp + 0x2b0], r12
xor r9, r11
shld r12, r12, 0x1c
xor rsi, r8
mov qword [rsp + 0x2e8], rdi
xor rdx, r13
mov rdi, qword [rsp + 0x2f8]
mov r11, rdi
xor rax, qword [rsp + 0x300]
add r15, rcx
xor r10, qword [rsp + 0x2b8]
add r14, r9
mov qword [rsp + 0x2a0], rcx
add rax, qword [rsp + r11 + 0xf0]
add rsi, qword [rsp + r11 + 0xc0]
add r10, qword [rsp + r11 + 0xd0]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x2d8], rsi
mov rsi, rax
mov qword [rsp + 0x310], r10
mov r10, qword [rsp + 0x2b0]
xor r12, r10
add r12, qword [rsp + r11 + 0xe0]
mov qword [rsp + 0x318], r12
add rdx, qword [rsp + rax + 0x100]
mov r12, qword [rsp + rax + 0x108]
nop
mov rax, qword [rsp + rsi + 0x118]
add rax, qword [rsp + 0x300]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x2a0]
shld rax, rax, 0x30
mov qword [rsp + 0x2d0], r9
xor rax, r15
mov r9, qword [rsp + r11 + 0xe8]
add r9, r15
mov r15, qword [rsp + rsi + 0x128]
add r15, qword [rsp + rsi + 0xa8]
add r15, r8
mov r8, qword [rsp + 0x2e8]
mov rbp, qword [rsp + rdi + 0xb8]
shld r8, r8, 5
nop
mov rdi, qword [rsp + r11 + 0xd8]
lea rcx, [rbp + rbx]
add rdi, r13
xor r8, rbx
mov r13, qword [rsp + 0x2d0]
shld r13, r13, 0x14
mov qword [rsp + 0x308], rbp
xor r13, r14
mov rbp, qword [rsp + r11 + 0xc8]
mov r11, qword [rsp + r11 + 0xf8]
add rbp, r14
add r11, r10
mov r10, rsi
add r12, qword [rsp + 0x2b8]
add r11, rdx
mov qword [rsp + 0x328], r12
mov r12, rsi
mov rbx, qword [rsp + 0x290]
add r13, qword [rsp + rsi + 0x110]
mov rsi, qword [rsp + 0x2d8]
add rcx, rsi
nop
mov r14, qword [rsp + r10 + 0x120]
shld rsi, rsi, 0x29
shld rdx, rdx, 0xc
add r8, qword [rbx + 0x90]
xor rsi, rcx
mov qword [rsp + 0x300], r14
xor rdx, r11
add r14, qword [rsp + r12 + 0xa0]
add rcx, rdx
add r8, qword [rsp + 0x298]
add r14, rax
nop
mov rax, qword [rsp + r12 + 0xb0]
add r15, r8
mov r10, qword [rsp + r12 + 0x98]
shld r8, r8, 0x1e
shld rdx, rdx, 0x10
mov qword [rsp + r12 + 0x138], rax
xor r8, r15
mov qword [rsp + 0x2f0], r10
xor rdx, rcx
mov qword [rsp + r12 + 0xb0], r10
mov r10, qword [rsp + 0x310]
add rbp, r10
mov r12, qword [rsp + 0x318]
add rdi, r12
shld r10, r10, 9
shld r12, r12, 0x25
mov rbx, qword [rsp + 0x330]
xor r10, rbp
add rbx, r14
xor r12, rdi
shld r14, r14, 0x2c
add rdi, r8
shld r8, r8, 0x33
mov rax, qword [rsp + 0x320]
add r9, rax
shld rax, rax, 0x1f
xor r14, rbx
mov qword [rsp + 0x2d8], rsi
xor rax, r9
mov rsi, qword [rsp + 0x328]
xor r8, rdi
add rsi, r13
add r15, r12
shld r13, r13, 0x2f
add rbp, r14
shld r12, r12, 0x2a
shld r14, r14, 0x22
mov qword [rsp + 0x330], rbx
xor r13, rsi
mov rbx, qword [rsp + 0x330]
add rsi, rax
add rbx, r10
add r9, r13
shld r10, r10, 0x35
xor r12, r15
shld rax, rax, 4
shld r13, r13, 0x38
xor r10, rbx
add rbx, r8
shld r8, r8, 0x13
xor rax, rsi
mov qword [rsp + 0x328], rsi
xor r8, rbx
mov rsi, qword [rsp + 0x2d8]
add r11, rsi
shld rsi, rsi, 0x29
add rdi, r10
shld r10, r10, 0x2f
mov qword [rsp + 0x330], rbx
xor r13, r9
mov rbx, qword [rsp + 0x328]
xor rsi, r11
add rbx, rdx
add r11, r13
shld rdx, rdx, 0x19
xor r14, rbp
shld r13, r13, 0x2c
add rbp, r12
add rcx, rax
shld r12, r12, 0x2c
xor rdx, rbx
shld rax, rax, 0x1f
xor r10, rdi
add rdi, rdx
shld rdx, rdx, 0x34
xor r13, r11
mov qword [rsp + 0x2d0], r13
xor r12, rbp
add rbp, r13
xor rax, rcx
mov r13, qword [rsp + 0x2f8]
add rcx, r8
mov qword [rsp + 0x2e8], r8
xor rdx, rdi
add r15, r14
add r9, rsi
nop dword [rax]
mov r8, qword [rsp + r13 + 0xc0]
add r11, r12
add r8, rcx
add rbx, r10
mov qword [rsp + 0x2c8], r8
mov r8, qword [rsp + r13 + 0xd0]
add r8, rbp
mov qword [rsp + 0x2e0], r8
mov r8, qword [rsp + r13 + 0xe0]
add r8, rdi
mov rdi, qword [rsp + 0x2d0]
shld rdi, rdi, 0x30
shld r14, r14, 0x2a
shld rsi, rsi, 0x2e
shld r12, r12, 0x1f
shld r10, r10, 0x25
xor rdi, rbp
xor r14, r15
add rdi, qword [rsp + r13 + 0x118]
xor rsi, r9
add r9, r14
add r15, rsi
mov qword [rsp + 0x2d0], rdi
xor r12, r11
mov qword [rsp + 0x2a8], r8
xor r10, rbx
mov rdi, qword [rsp + 0x2e8]
mov r8, qword [rsp + r13 + 0xf0]
shld rdi, rdi, 9
add r8, r9
shld rsi, rsi, 0x17
mov qword [rsp + 0x338], r14
xor rdi, rcx
mov qword [rsp + 0x2c0], r8
xor rsi, r15
mov r8, qword [rsp + r13 + 0x100]
add r8, r11
mov qword [rsp + 0x2b0], r8
mov r8, qword [rsp + 0x338]
shld r8, r8, 0x23
mov r14, qword [rsp + 0x330]
xor r8, r9
add r14, rax
shld rax, rax, 0x14
nop dword [rax]
mov rcx, qword [rsp + 0x290]
xor rax, r14
nop
add r8, qword [rsp + r13 + 0x128]
add r8, qword [rsp + r13 + 0xa8]
mov r9, qword [rcx + 0x98]
add rcx, 0x10
add r15, qword [rsp + r13 + 0x130]
mov qword [rsp + 0x2a0], r8
mov r8, qword [rsp + 0x2f0]
lea rdi, [rdi + r9 + 1]
add r8, r15
mov r15, qword [rsp + 0x308]
mov r11, qword [rsp + r13 + 0x110]
mov qword [rsp + r13 + 0x140], r15
add r11, rbx
mov rbx, qword [rsp + 0x298]
add rdi, rbx
nop
mov r15, qword [rsp + r13 + 0xa0]
add rbx, 2
mov rbp, qword [rsp + 0x300]
add rsi, qword [rsp + r13 + 0xc8]
add rbp, r14
add r10, qword [rsp + r13 + 0xd8]
nop dword [rax]
add r12, qword [rsp + r13 + 0xe8]
add rax, qword [rsp + r13 + 0xf8]
add rdx, qword [rsp + r13 + 0x108]
nop
mov qword [rsp + r13 + 0xb8], r15
add r13, 0x10
mov qword [rsp + 0x2b8], r11
mov qword [rsp + 0x290], rcx
mov qword [rsp + 0x298], rbx
cmp rbx, 0x14
jbe 0x14002b4c9
mov r13, qword [rsp + 0x268]
mov r15, qword [rsp + 0x2e0]
xor r15, qword [rsp + 0x1f0]
mov qword [rsp + 0x2e0], r15
mov qword [r13 + 0x30], r15
mov r15, qword [rsp + 0x2a8]
xor r15, qword [rsp + 0x200]
mov qword [rsp + 0x2a8], r15
mov qword [r13 + 0x40], r15
mov rcx, qword [rsp + 0x2d0]
mov r11, qword [rsp + 0x2b8]
mov rbx, qword [rsp + 0x2b0]
mov r9, qword [rsp + 0x2c0]
mov r14, qword [rsp + 0x2c8]
mov r15, qword [rsp + 0x2a0]
xor r14, qword [rsp + 0x1e0]
xor rsi, qword [rsp + 0x1e8]
xor r10, qword [rsp + 0x1f8]
xor r12, qword [rsp + 0x208]
xor r9, qword [rsp + 0x210]
xor rax, qword [rsp + 0x218]
xor rbx, qword [rsp + 0x220]
xor rdx, qword [rsp + 0x228]
xor r11, qword [rsp + 0x230]
xor rcx, qword [rsp + 0x238]
xor rbp, qword [rsp + 0x240]
xor r15, qword [rsp + 0x250]
xor r8, qword [rsp + 0x258]
xor rdi, qword [rsp + 0x248]
mov qword [r13 + 0x20], r14
mov qword [r13 + 0x28], rsi
mov qword [r13 + 0x38], r10
mov qword [r13 + 0x48], r12
mov qword [r13 + 0x50], r9
mov qword [r13 + 0x58], rax
mov qword [r13 + 0x60], rbx
mov qword [r13 + 0x68], rdx
mov qword [r13 + 0x70], r11
mov qword [r13 + 0x78], rcx
mov qword [r13 + 0x80], rbp
mov qword [r13 + 0x88], r15
mov qword [rsp + 0x280], r8
mov qword [r13 + 0x90], r8
mov qword [r13 + 0x98], rdi
mov r8, qword [rsp + 0xa8]
mov r13, qword [rsp + 0x288]
btr r8, 0x3e
add r13, 0x80
mov qword [rsp + 0x260], r15
mov qword [rsp + 0x288], r13
dec qword [rsp + 0x278]
jne 0x14002b1bc
mov rsi, qword [rsp + 0x268]
mov rax, qword [rsp + 0xa0]
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], r8
add rsp, 0x348
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret