Function at 0x14002a360
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x168]
sub rsp, 0x268
mov rax, qword [0x1400d6a80]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov r15, r9
mov r14, r8
mov rsi, rdx
mov r12, rcx
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], r8
mov qword [rbp], r9
xor r13d, r13d
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x50]
call fcn.1400a80d0
lea edx, [r13 + 1]
lea rcx, [rbp + 0x50]
call fcn.140028a20
nop
mov rcx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x14002a3d8
mov rcx, qword [r14]
lea rdx, [0x1400d8708]
call fcn.14003b930
mov ebx, 0xf
test eax, eax
jne 0x14002a97b
movdqa xmm1, xmmword [0x1400b6240]
movdqu xmmword [rbp + 8], xmm1
mov dl, 0x51
mov r8b, 0x50
mov r9b, 0x4b
mov r10b, 0x42
mov r11b, 0x4d
mov bl, 0x48
movzx edi, bl
movdqa xmm0, xmm1
psrldq xmm0, 1
movd eax, xmm0
movd ecx, xmm1
xor al, cl
mov byte [rbp + 9], al
xor byte [rbp + 0xa], cl
xor byte [rbp + 0xb], cl
xor byte [rbp + 0xc], cl
xor byte [rbp + 0xd], cl
xor byte [rbp + 0xe], cl
xor byte [rbp + 0xf], cl
xor byte [rbp + 0x10], cl
xor byte [rbp + 0x11], cl
xor byte [rbp + 0x12], cl
xor byte [rbp + 0x13], cl
xor byte [rbp + 0x14], cl
xor byte [rbp + 0x15], cl
xor byte [rbp + 0x16], cl
xor byte [rbp + 0x17], cl
xor dl, cl
mov byte [rbp + 0x18], dl
xor r8b, cl
mov byte [rbp + 0x19], r8b
xor r9b, cl
mov byte [rbp + 0x1a], r9b
xor r10b, cl
mov byte [rbp + 0x1b], r10b
xor r11b, cl
mov byte [rbp + 0x1c], r11b
xor bl, cl
mov byte [rbp + 0x1d], bl
xor dil, cl
mov byte [rbp + 0x1e], dil
mov byte [rbp + 0x1f], 0
mov qword [rsp + 0x20], r13
lea r9, [0x1400d8710]
mov r8d, 0xffffffff
lea rdx, [rbp + 9]
mov rcx, qword [0x1400d8708]
call fcn.14003ba20
test eax, eax
jne 0x14002a95e
mov rcx, qword [0x1400d8710]
call fcn.14003bb00
mov ebx, 0xf
cmp eax, 0x64
jne 0x14002a963
movabs rdi, 0x2020202020202020
xor edx, edx
mov rcx, qword [0x1400d8710]
call fcn.14003b7d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x40], r13
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14002a4f4
mov rdx, rax
lea rcx, [rbp + 0x28]
call fcn.140001740
nop
mov edx, 1
mov rcx, qword [0x1400d8710]
call fcn.14003b7d0
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], r13
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14002a532
mov rdx, rax
lea rcx, [rbp + 8]
call fcn.140001740
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], 2
mov qword [rbp - 0x20], rbx
mov word [rbp - 0x38], di
mov byte [rbp - 0x36], 0
lea rdx, [rbp - 0x38]
mov r8d, 2
lea rcx, [rbp + 0x60]
call fcn.140001840
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x14002a584
mov rdx, qword [rsi]
mov rcx, rax
call fcn.140001320
mov byte [rsp + 0x30], 0x31
mov cl, 0x1d
mov dl, 0x11
xor r8d, r8d
xor cl, 0x31
mov byte [rsp + 0x31], cl
xor dl, 0x31
mov byte [rsp + 0x32], dl
mov byte [rsp + 0x33], r8b
lea rdx, [rsp + 0x31]
mov rcx, rax
call fcn.140001320
lea rdx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0xf
cmova rdx, qword [rbp + 0x28]
mov rcx, rax
call fcn.140001320
mov byte [rsp + 0x34], 0x5c
mov cl, 0x70
mov dl, 0x7c
xor r8d, r8d
xor cl, 0x5c
mov byte [rsp + 0x35], cl
xor dl, 0x5c
mov byte [rsp + 0x36], dl
mov byte [rsp + 0x37], r8b
lea rdx, [rsp + 0x35]
mov rcx, rax
call fcn.140001320
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0xf
cmova rdx, qword [rbp + 8]
mov rcx, rax
call fcn.140001320
mov byte [rsp + 0x38], 0x1c
mov cl, 0x11
mov dl, 0x16
xor r8d, r8d
xor cl, 0x1c
mov byte [rsp + 0x39], cl
xor dl, 0x1c
mov byte [rsp + 0x3a], dl
mov byte [rsp + 0x3b], r8b
lea rdx, [rsp + 0x39]
mov rcx, rax
call fcn.140001320
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x14002a678
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a673
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002aa8d
call fcn.14007858c
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], 2
mov qword [rbp - 0x20], rbx
mov word [rbp - 0x38], di
mov byte [rbp - 0x36], 0
lea rdx, [rbp - 0x38]
mov r8d, 2
lea rcx, [rbp + 0x60]
call fcn.140001840
mov r8, rax
movdqa xmm0, xmmword [0x1400b61b0]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [0x1400b61c0]
movdqa xmmword [rsp + 0x50], xmm1
movdqa xmm0, xmm1
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmmword [rbp - 0x80], xmm1
movdqa xmmword [rbp - 0x70], xmm1
movdqa xmmword [rbp - 0x60], xmm1
xor eax, eax
mov byte [rbp - 0x50], al
mov rcx, r13
nop dword [rax]
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x41], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x42], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x43], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x44], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x45], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x46], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x47], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x48], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x49], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x4a], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x4b], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x4c], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x4d], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x4e], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x4f], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x50], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x51], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x52], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x53], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x54], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x55], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x56], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x57], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x58], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x59], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x5a], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x5b], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x5c], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x5d], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x5e], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x5f], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x60], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x61], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x62], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x63], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x64], al
movzx eax, byte [rsp + 0x40]
xor byte [rsp + rcx + 0x65], al
add rcx, 0x25
cmp rcx, 0x6f
jb 0x14002a6f0
mov byte [rbp - 0x50], 0
lea rdx, [rsp + 0x41]
mov rcx, r8
call fcn.140001320
mov byte [rbp - 0x40], 0x59
mov cl, 0x54
mov dl, 0x53
xor r8d, r8d
xor cl, 0x59
mov byte [rbp - 0x3f], cl
xor dl, 0x59
mov byte [rbp - 0x3e], dl
mov byte [rbp - 0x3d], r8b
lea rdx, [rbp - 0x3f]
mov rcx, rax
call fcn.140001320
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x14002a8bf
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a8ba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002aa93
call fcn.14007858c
inc dword [0x1400d6734]
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x14002a900
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a8fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002aa99
call fcn.14007858c
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], rbx
mov byte [rbp + 8], 0
mov rdx, qword [rbp + 0x40]
cmp rdx, 0xf
jbe 0x14002a947
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a942
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002aa9f
call fcn.14007858c
mov rcx, qword [0x1400d8710]
call fcn.14003bb00
cmp eax, 0x64
je 0x14002a4d0
jmp 0x14002a963
mov ebx, 0xf
mov rcx, qword [0x1400d8710]
call fcn.14003b890
mov rcx, qword [0x1400d8708]
call fcn.14003b6d0
mov rdx, r12
lea rcx, [rbp + 0x50]
call fcn.14003b1a0
nop
lea rcx, [rbp + 0x50]
call fcn.140003420
nop
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x14002a9cc
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x14002a9c7
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002aaa5
mov rcx, r8
call fcn.14007858c
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], rbx
mov byte [rsi], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0xf
jbe 0x14002aa0d
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x14002aa08
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002aa81
mov rcx, r8
call fcn.14007858c
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], rbx
mov byte [r14], 0
mov rdx, qword [r15 + 0x18]
cmp rdx, 0xf
jbe 0x14002aa4f
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x14002aa4a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14002aa87
mov rcx, r8
call fcn.14007858c
mov qword [r15 + 0x10], r13
mov qword [r15 + 0x18], rbx
mov byte [r15], 0
mov rax, r12
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.1400786a0
add rsp, 0x268
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14007f7cc
nop
call fcn.14007f7cc
nop
call fcn.14007f7cc
int3
call fcn.14007f7cc
nop
call fcn.14007f7cc
nop
call fcn.14007f7cc
nop
call fcn.14007f7cc
int3