Function at 0x1401990d0
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
lea rbp, [rsp - 0x27]
sub rsp, 0xb0
mov rax, qword [0x140451b38]
xor rax, rsp
mov qword [rbp + 0x17], rax
xor ebx, ebx
mov esi, r8d
mov dword [rbp - 0x39], ebx
mov r15, rdx
mov rdi, rcx
test r8d, r8d
je 0x14019931a
cmp byte [rcx + 0x98], bl
je 0x14019912a
mov ebx, 0xc004d209
mov ecx, ebx
call fcn.14007ac40
jmp 0x14019931a
add qword [rcx + 8], rsi
mov eax, dword [rcx + 0x50]
test eax, eax
je 0x1401991b4
movaps xmm0, xmmword [rdx]
mov r14d, 0x40
sub r14d, eax
movq qword [rbp - 0x49], xmm0
cmp esi, r14d
psrldq xmm0, 8
movd r13d, xmm0
cmovb r14d, esi
add rcx, 0x10
add rcx, rax
mov dword [rbp - 0x41], r13d
test r14d, r14d
je 0x1401991a6
mov r12d, r14d
mov rbx, rcx
movaps xmm1, xmmword [rbp - 0x49]
lea r8, [rbp - 0x59]
movdqa xmm0, xmm1
inc r13d
psrldq xmm0, 8
movq rcx, xmm1
movd edx, xmm0
mov dword [rbp - 0x41], r13d
call fcn.14018da04
mov cl, byte [rbp - 0x59]
xor cl, byte [rax]
mov byte [rbx], cl
inc rbx
sub r12, 1
jne 0x14019916d
mov ebx, dword [rbp - 0x39]
add dword [rdi + 0x50], r14d
add dword [r15 + 8], r14d
mov eax, dword [rdi + 0x50]
sub esi, r14d
cmp eax, 0x40
jne 0x140199203
mov ecx, dword [rdi]
lea r9, [rdi + 0x54]
mov edx, dword [rdi + 0x94]
sub ecx, 1
je 0x1401991e8
cmp ecx, 1
je 0x1401991d9
mov ebx, 0xc004d104
jmp 0x14019911e
mov dword [rsp + 0x20], edx
lea rdx, [rdi + 0x10]
call fcn.140198b10
jmp 0x1401991f5
mov dword [rsp + 0x20], edx
lea rdx, [rdi + 0x10]
call fcn.140198918
mov ebx, eax
test eax, eax
js 0x14019911e
and dword [rdi + 0x50], 0
mov r14d, esi
shr r14d, 6
test r14d, r14d
je 0x1401992bd
movaps xmm0, xmmword [r15]
lea r13, [rbp - 0x29]
movq qword [rbp - 0x49], xmm0
mov r12d, 0x40
psrldq xmm0, 8
movd ebx, xmm0
mov dword [rbp - 0x41], ebx
movaps xmm1, xmmword [rbp - 0x49]
lea r8, [rbp - 0x59]
movdqa xmm0, xmm1
inc ebx
psrldq xmm0, 8
movq rcx, xmm1
movd edx, xmm0
mov dword [rbp - 0x41], ebx
call fcn.14018da04
mov cl, byte [rbp - 0x59]
xor cl, byte [rax]
mov byte [r13], cl
inc r13
sub r12, 1
jne 0x140199232
mov ecx, dword [rdi]
mov edx, dword [rdi + 0x94]
sub ecx, 1
je 0x140199291
cmp ecx, 1
jne 0x1401991cf
mov dword [rsp + 0x20], edx
lea r9, [rdi + 0x54]
lea rdx, [rbp - 0x29]
call fcn.140198b10
jmp 0x1401992a2
mov dword [rsp + 0x20], edx
lea r9, [rdi + 0x54]
lea rdx, [rbp - 0x29]
call fcn.140198918
mov ebx, eax
test eax, eax
js 0x14019911e
add dword [r15 + 8], 0x40
add esi, 0xffffffc0
add r14d, 0xffffffff
jmp 0x14019920d
test esi, esi
je 0x14019931a
movaps xmm0, xmmword [r15]
lea r12, [rdi + 0x10]
movq qword [rbp - 0x49], xmm0
psrldq xmm0, 8
movd r14d, xmm0
mov r15d, esi
mov dword [rbp - 0x41], r14d
movaps xmm1, xmmword [rbp - 0x49]
lea r8, [rbp - 0x59]
movdqa xmm0, xmm1
inc r14d
psrldq xmm0, 8
movq rcx, xmm1
movd edx, xmm0
mov dword [rbp - 0x41], r14d
call fcn.14018da04
mov cl, byte [rbp - 0x59]
xor cl, byte [rax]
mov byte [r12], cl
inc r12
sub r15, 1
jne 0x1401992df
mov dword [rdi + 0x50], esi
mov ecx, ebx
call fcn.14007ace8
mov eax, ebx
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140388a50
mov rbx, qword [rsp + 0x100]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret