Function at 0x14002d181
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov dword [rsp - 0xc], 0x48f82376
add rsp, 0xfd8edf
sub rsp, 0xfd8f5f
lea rcx, [0x1404a28a0]
xchg r14, rdx
mov rbx, r14
xchg rdx, r14
call fcn.140058bd0
mov dword [rsp - 0x2c], edi
test al, al
je 0x14002d3a0
xorps xmm0, xmm0
xchg rbx, rbx
xchg rsi, r15
mov qword [rsp + 0x90], r15
xchg rsi, r15
mov rsi, qword [rbx + 0x38]
mov dword [rsp - 0x38], 0x2b8caf28
lea rax, [rsp + 0x48]
mov rbx, qword [rbx]
lea rcx, [rsp + 0x40]
xchg rdi, r11
mov qword [rsp + 0x98], r11
xchg rdi, r11
xchg rbx, rax
mov qword [rsp + 0x40], rbx
xchg rbx, rax
lea rdx, [rsi + 1]
mov dword [rsp - 0x34], 0x396ded59
movups xmmword [rsp + 0x48], xmm0
xchg r11, rsp
movups xmmword [r11 + 0x58], xmm0
xchg rsp, r11
xchg rcx, rsp
movups xmmword [rcx + 0x68], xmm0
xchg rcx, rsp
call fcn.14000ed90
mov dword [rsp - 0x38], esp
mov r8, rax
mov ecx, 0x4b461383
sub ecx, 0x4a798ace
add ecx, 0x57263722
sub ecx, 0x3bccd9dd
sub ecx, 0x962c96b
test rsi, rsi
je 0x14002d104
mov dword [rsp - 0x38], esi
xchg rbx, rax
mov rdx, rbx
xchg rbx, rax
sub rbx, rax
mov dword [rsp - 0x10], esi
xchg rsi, r15
mov rdi, r15
xchg rsi, r15
mov r9d, 0x31e613b5
xor r9d, 0x2f24c0f6
add r9d, 0x1d5ee896
xor r9d, 0x4d9d6ece
xor r9d, 0x71bcd5e8
nop dword [rax]
movzx eax, cx
lea rdx, [rdx + 2]
xchg r11, r11
and ax, r9w
ror ecx, 4
ror ecx, 4
xor ax, word [rdx + rbx - 2]
mov word [rdx - 2], ax
mov dword [rsp - 0x1c], 0x43358409
sub rdi, 1
jne 0x14002d0d5
xor edi, edi
mov dword [rsp + 0xa8], 0x3c5c90e7
xor dword [rsp + 0xa8], 0x206b72ce
add dword [rsp + 0xa8], 0xd154c3e
xor dword [rsp + 0xa8], 0x29212e87
mov word [r8 + rsi*2], di
xchg rbx, rbx
mov rsi, qword [rsp + 0x90]
mov dword [rsp + 0xac], 0x4d9acc5e
xor dword [rsp + 0xac], 0x515f7e04
xor dword [rsp + 0xac], 0x6b625ee8
sub dword [rsp + 0xac], 0x199bad4b
sub dword [rsp + 0xac], 0x5d903ec1
xchg rdi, r9
mov qword [rsp + 0xa0], r9
xchg rdi, r9
xchg rdi, rax
mov rdi, qword [rsp + 0xa0]
xchg rdi, rax
nop dword [rax]
nop word [rax + rax]
mov rdi, rdi
xchg rcx, r13
mov r13, qword [rsp + 0xa0]
xchg rcx, r13
xchg r11, rax
mov r11, qword [rsp + 0xa0]
xchg r11, rax
and cl, 3
mov r10, r10
shl cl, 2
shl cl, 1
movzx edx, word [rsp + rax*2 + 0xa8]
mov eax, 0x43d92fa6
xor eax, 0x73c2f222
xor eax, 0x2b029b3f
add eax, 0x42e54d07
xor eax, 0x4f3d8f4d
shr eax, cl
xchg r11, r11
movzx ecx, al
mov rax, qword [rsp + 0xa0]
xor cx, dx
mov word [rsp + rax*2 + 0x30], cx
mov r12, r12
xchg rdx, rax
mov rdx, qword [rsp + 0xa0]
xchg rdx, rax
inc rax
mov dword [rsp - 0x40], 0xed5551b
xchg rdi, rax
mov qword [rsp + 0xa0], rdi
xchg rdi, rax
xchg r12, rax
mov r12, qword [rsp + 0xa0]
xchg r12, rax
cmp rax, 4
jb 0x14002d1a4
mov dword [rsp - 0x1c], esp
mov rax, qword [0x1404a23d0]
lea rdx, [rsp + 0x30]
xchg r15, r8
mov r15, qword [rsp + 0x40]
xchg r15, r8
movabs rcx, 0x9c5fa8bb65158c69
xor rcx, 0xdbf9cf0
sub rcx, 0x552815c0
add rcx, 0x7fffffff
xor rcx, 0x7b5fd831
add rax, rcx
mov rbp, rbp
mov dword [rsp + 0x28], 0x611419d4
sub dword [rsp + 0x28], 0x70d909c
add dword [rsp + 0x28], 0x4ef5ed0
sub dword [rsp + 0x28], 0x5ef5e807
ror rax, 0x19
ror rax, 0xd
ror rax, 1
ror rax, 2
ror rax, 1
movabs rcx, 0x52591ef74fbdb7c7
sub rcx, 0x19209ada
sub rcx, 0x1965bed8
add rcx, 0x7fffffff
add rcx, 0x86056d5
xor rax, rcx
xchg r13, r13
mov word [rsp + 0x38], di
rol rax, 0x1c
rol rax, 0xe
rol rax, 1
rol rax, 1
rol rax, 1
xor r9d, r9d
xor ecx, ecx
mov qword [rsp + 0x20], rdi
mov rdx, rdx
call rax
xor eax, eax
lea rdi, [rsp + 0x30]
mov dword [rsp - 0x1c], edx
mov ecx, 0x2c3c906
add ecx, 0x38784e16
sub ecx, 0x34e47a98
sub ecx, 0x6579c80
rep stosb byte [rdi], al
xchg r9, rcx
mov r9, qword [rsp + 0x40]
xchg rcx, r9
lea rax, [rsp + 0x48]
mov dword [rsp - 0x38], 0x5503f6f1
cmp rcx, rax
jne 0x14002d38d
lea rdi, [rsp + 0x48]
xor eax, eax
xchg r15, r15
mov ecx, 0x2c13236f
xor ecx, 0x2225c31
add ecx, 0x24d69c61
add ecx, 0x9dcc22c
sub ecx, 0x5ce4ddbb
rep stosb byte [rdi], al
xchg rdi, r11
mov r11, qword [rsp + 0x98]
xchg rdi, r11
sub rsp, 0xffffffffffffff80
pop rbx
xchg rcx, rcx
ret
call fcn.140098620
xchg rbp, rdi
mov rbp, qword [rsp + 0x98]
xchg rbp, rdi
add rsp, 0x80
pop rbx
ret