Function at 0x7ffbf1cd55e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1d0
mov rax, qword [0x7ffbf1d68270]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
xor eax, eax
mov r10, rcx
mov qword [rsp + 0x10], rcx
lea ecx, [rax + 0x4c]
lea rdi, [rsp + 0x170]
mov r15d, 0x40
rep stosb byte [rdi], al
mov eax, dword [r10 + 4]
mov r9d, r15d
and eax, 0x3f
mov r8, rdx
mov qword [rsp + 8], rdx
sub r9d, eax
cmp r9d, 8
ja 0x7ffbf1cd5644
add r9d, r15d
mov edi, dword [r10 + 4]
mov ebx, dword [r10]
mov esi, 2
mov eax, edi
mov ecx, ebx
mov byte [rsp + 0x170], 0x80
shl eax, 3
shl ecx, 3
lea r12d, [rsi - 1]
mov dword [rsp + 4], eax
mov eax, edi
shr eax, 0x1d
or ecx, eax
lea eax, [r9 - 8]
mov dword [rsp], ecx
lea rdx, [rsp + rax + 0x170]
lea rcx, [rsp + 2]
mov al, byte [rcx + 1]
mov byte [rdx], al
mov al, byte [rcx]
add rdx, r12
mov byte [rdx], al
mov al, byte [rcx - 1]
add rdx, r12
mov byte [rdx], al
mov al, byte [rcx - 2]
add rdx, r12
mov byte [rdx], al
add rdx, r12
add rcx, 4
sub rsi, r12
jne 0x7ffbf1cd5685
xor r13d, r13d
lea eax, [rdi + r9]
mov r11d, edi
and r11d, 0x3f
mov ebp, r13d
mov dword [rsp], r13d
mov dword [r10 + 4], eax
cmp eax, r9d
jae 0x7ffbf1cd56d1
lea eax, [rbx + 1]
mov dword [r10], eax
mov eax, r15d
mov r14d, 5
sub eax, r11d
cmp r9d, eax
jb 0x7ffbf1cd58e2
lea r8, [r10 + 8]
lea rbx, [r10 + 0x48]
cmp r11d, r13d
jbe 0x7ffbf1cd570d
mov eax, ebp
mov ecx, r15d
lea rsi, [rsp + rax + 0x170]
mov eax, r11d
sub ecx, r11d
lea rdi, [rax + r10 + 8]
rep movsb byte [rdi], byte [rsi]
cmp r11d, r13d
mov eax, ebp
lea rdi, [rsp + 0x30]
lea rdx, [rsp + rax + 0x170]
mov esi, 0x10
cmova rdx, r8
inc rdx
movzx eax, byte [rdx]
movzx ecx, byte [rdx - 1]
add rdx, 4
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx - 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx - 2]
shl ecx, 8
or ecx, eax
mov dword [rdi], ecx
add rdi, 4
sub rsi, r12
jne 0x7ffbf1cd572b
lea rdi, [rsp + 0x18]
mov rsi, rbx
mov ecx, 0x14
rep movsb byte [rdi], byte [rsi]
mov rcx, r15
lea rdx, [rsp + 0x38]
mov eax, dword [rdx + 0x2c]
xor eax, dword [rdx + 0x18]
xor eax, dword [rdx - 8]
xor eax, dword [rdx]
add rdx, 4
rol eax, 1
sub rcx, r12
mov dword [rdx + 0x34], eax
jne 0x7ffbf1cd576f
movzx edx, r13w
lea r15, [rsp + 0x30]
xor r8d, r8d
lea ebp, [rcx + 0x3c]
lea r14d, [rcx + 0x14]
lea r10d, [rcx + 0x28]
mov r13d, dword [rbx]
mov esi, dword [rbx + 0xc]
mov r12d, dword [rbx + 8]
mov edi, dword [rbx + 4]
movsx eax, dx
rol r13d, 5
cmp eax, ebp
jl 0x7ffbf1cd57c0
mov ecx, edi
xor ecx, r12d
xor ecx, esi
jmp 0x7ffbf1cd57ef
cmp eax, r10d
jl 0x7ffbf1cd57d5
mov ecx, r12d
mov eax, r12d
or ecx, esi
and ecx, edi
and eax, esi
or ecx, eax
jmp 0x7ffbf1cd57ef
cmp eax, r14d
jge 0x7ffbf1cd57b7
cmp eax, r8d
jl 0x7ffbf1cd57ec
mov ecx, edi
mov eax, edi
not ecx
and ecx, esi
and eax, r12d
jmp 0x7ffbf1cd57d1
mov ecx, r8d
mov eax, dword [r15]
add eax, dword [rbx + 0x10]
add eax, ecx
add r13d, eax
cmp dx, bp
jl 0x7ffbf1cd580c
mov eax, dword [0x7ffbf1d64c80]
xor eax, 0x2932fcbe
jmp 0x7ffbf1cd5848
cmp dx, r10w
jl 0x7ffbf1cd581f
mov eax, dword [0x7ffbf1d64c84]
xor eax, 0x2dfea903
jmp 0x7ffbf1cd5848
cmp dx, r14w
jl 0x7ffbf1cd5832
mov eax, dword [0x7ffbf1d64c88]
xor eax, 0x1f09debd
jmp 0x7ffbf1cd5848
cmp dx, r8w
jl 0x7ffbf1cd5845
mov eax, dword [0x7ffbf1d64c8c]
xor eax, 0x97f53ba
jmp 0x7ffbf1cd5848
mov eax, r8d
mov ecx, dword [rbx]
ror edi, 2
add eax, r13d
mov dword [rbx + 0xc], r12d
mov r12d, 1
add r15, 4
add dx, r12w
mov dword [rbx + 0x10], esi
mov dword [rbx + 8], edi
cmp dx, 0x50
mov dword [rbx + 4], ecx
mov dword [rbx], eax
jl 0x7ffbf1cd579f
mov r10, qword [rsp + 0x10]
mov ebp, dword [rsp]
lea rax, [rsp + 0x18]
lea r14d, [r12 + 4]
mov rdx, rbx
lea rcx, [rsp + 0x18]
lea r8, [r10 + 8]
sub rdx, rax
mov rdi, r14
mov eax, dword [rdx + rcx]
add dword [rcx], eax
add rcx, 4
sub rdi, r12
jne 0x7ffbf1cd589b
mov r15d, 0x40
lea r9d, [r9 + r11 - 0x40]
xor r13d, r13d
mov eax, r15d
lea rsi, [rsp + 0x18]
mov rdi, rbx
sub eax, r11d
mov ecx, 0x14
mov r11d, r13d
add ebp, eax
rep movsb byte [rdi], byte [rsi]
mov dword [rsp], ebp
cmp r9d, r15d
jae 0x7ffbf1cd56ee
mov r8, qword [rsp + 8]
cmp r9d, r13d
je 0x7ffbf1cd58fe
mov eax, ebp
mov ecx, r9d
lea rsi, [rsp + rax + 0x170]
mov eax, r11d
lea rdi, [rax + r10 + 8]
rep movsb byte [rdi], byte [rsi]
lea rcx, [r10 + 0x4a]
mov al, byte [rcx + 1]
mov byte [r8], al
mov al, byte [rcx]
add r8, r12
mov byte [r8], al
mov al, byte [rcx - 1]
add r8, r12
mov byte [r8], al
mov al, byte [rcx - 2]
add r8, r12
mov byte [r8], al
add r8, r12
add rcx, 4
sub r14, r12
jne 0x7ffbf1cd5902
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.7ffbf1d2cc34
mov rbx, qword [rsp + 0x220]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret