Function at 0x1402f7d80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x10], rdx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
xor edi, edi
mov rsi, r9
mov r14d, edi
mov r12, r8
mov r15, rdx
mov rbx, rcx
call fcn.1401c02e0
mov rcx, rbx
mov qword [rsp + 0x68], rax
call fcn.14018a570
mov rcx, rax
mov rbp, rax
call fcn.1401c7bf0
mov rcx, rbx
mov qword [rsp + 0xb0], rax
call fcn.1401c7770
mov rcx, r15
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x58], rdi
mov ebx, edi
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x50], rdi
call fcn.140242b10
mov dword [rsp + 0x48], eax
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xa0], rdi
cmp qword [rsp + 0x68], rbx
je 0x1402f83c3
test eax, eax
jle 0x1402f83c3
mov rcx, rbp
call fcn.1402f8b00
mov r15, rax
test rax, rax
je 0x1402f83c3
mov rcx, rbp
call fcn.14025d150
mov rcx, rbp
mov qword [rsp + 0x58], rax
call fcn.14025d150
mov qword [rsp + 0x60], rax
call fcn.14024d3f0
mov r14, rax
cmp qword [rsp + 0x58], rbx
je 0x1402f83bb
cmp qword [rsp + 0x60], rbx
je 0x1402f83bb
test rax, rax
je 0x1402f83bb
mov rcx, rax
call fcn.14024d570
mov rcx, r14
call fcn.14024d680
mov rcx, r14
mov r13, rax
call fcn.14024d680
mov rcx, r14
mov qword [rsp + 0x80], rax
call fcn.14024d680
mov rcx, r14
mov qword [rsp + 0x78], rax
call fcn.14024d680
mov rcx, r14
mov qword [rsp + 0x88], rax
call fcn.14024d680
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x1402f7eda
lea r8d, [rdi + 3]
jmp 0x1402f83c9
lea rcx, [r15 + r15]
xor r8d, r8d
lea rdx, [0x140400fb1]
call fcn.1401b7ee0
movsxd rcx, dword [rsp + 0x48]
lea rdx, [0x140400fb1]
xor r8d, r8d
mov qword [rsp + 0x50], rax
call fcn.1401b7ee0
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x50], rbx
je 0x1402f8398
test rax, rax
je 0x1402f8398
mov rax, qword [rsp + 0x118]
xor edx, edx
mov rcx, qword [rsp + 0x110]
mov r8, qword [rax]
call fcn.140374500
mov rdx, qword [rsp + 0xb0]
mov rcx, r13
call fcn.1402b0520
test eax, eax
jne 0x1402f7f73
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x23]
call fcn.1401d6370
mov rbp, qword [rsp + 0x40]
jmp 0x1402f83e4
mov rdx, qword [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x28], r14
mov r8, r13
mov rcx, rbp
mov qword [rsp + 0x20], rdi
call fcn.14025daf0
test eax, eax
je 0x1402f8375
mov r9, qword [rsp + 0x88]
mov rcx, rbp
mov r8, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x20], r14
call fcn.14025d570
test eax, eax
je 0x1402f8375
mov r9, qword [rsp + 0xb8]
xor r8d, r8d
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r13
call fcn.14025daf0
test eax, eax
je 0x1402f8375
mov r13, qword [rsp + 0x70]
mov rcx, rbp
mov r8, qword [rsp + 0x78]
mov r9, r13
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], r14
call fcn.14025d570
test eax, eax
je 0x1402f8375
mov rbp, qword [rsp + 0x50]
mov r8d, r15d
mov rcx, qword [rsp + 0x78]
mov rdx, rbp
call fcn.1401bc180
test eax, eax
js 0x1402f7f4d
lea rax, [r15 + rbp]
mov r8d, r15d
mov rdx, rax
mov qword [rsp + 0x70], rax
mov rcx, r13
call fcn.1401bc180
test eax, eax
js 0x1402f7f4d
xor r8d, r8d
lea rdx, [0x140400fb1]
mov rcx, rsi
call fcn.1401b7ee0
mov rbx, rax
test rax, rax
je 0x1402f8398
mov r13, qword [rsp + 0xf8]
lea r9, [r15 + r15]
mov qword [rsp + 0x30], r13
mov r8, rbp
mov qword [rsp + 0x28], rdi
mov rdx, rsi
mov rcx, rax
mov qword [rsp + 0x20], rdi
call fcn.1402f6ff0
test eax, eax
jne 0x1402f80be
lea r9, [0x140400fb1]
mov dword [rsp + 0x20], edi
lea edx, [rax + 0x67]
lea ecx, [rax + 0x35]
lea r8d, [rax + 6]
call fcn.1401d6370
mov rbp, qword [rsp + 0x40]
jmp 0x1402f83e4
mov rdx, rdi
test rsi, rsi
je 0x1402f81e1
cmp rsi, 8
jb 0x1402f81b4
lea rcx, [rsi - 1]
lea rax, [r12 - 1]
add rcx, rbx
add rax, rsi
cmp rbx, rax
ja 0x1402f80f1
cmp rcx, r12
jae 0x1402f81b4
cmp rsi, 0x40
jb 0x1402f8172
mov rcx, rsi
mov r8, rsi
and ecx, 0x3f
sub r8, rcx
mov r9, r12
lea rax, [rbx + 0x10]
sub r9, rbx
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x10]
add rdx, 0x40
movdqu xmm1, xmmword [rax + r9 - 0x10]
movdqu xmm2, xmmword [rax + r9]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rax + r9 - 0x30]
xorps xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rax + r9 - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp rdx, r8
jne 0x1402f8110
cmp rcx, 8
jb 0x1402f81af
mov rcx, rsi
and rcx, 0xfffffffffffffff8
mov r8, r12
lea rax, [rdx + rbx]
sub r8, rbx
nop dword [rax]
nop word [rax + rax]
movq xmm0, qword [rax]
add rdx, 8
movq xmm1, qword [r8 + rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax - 8], xmm1
cmp rdx, rcx
jne 0x1402f8190
cmp rdx, rsi
je 0x1402f81e1
mov r9, r12
lea rcx, [rdx + rbx]
sub r9, rbx
mov r8, rsi
sub r8, rdx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r9 + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x1402f81d0
mov rbp, qword [rsp + 0x68]
mov rdx, r13
mov rcx, rbp
call fcn.1401c09f0
test eax, eax
je 0x1402f8352
mov rdx, qword [rsp + 0x50]
mov r8, r15
mov rcx, rbp
call fcn.1401c0840
test eax, eax
je 0x1402f8352
mov rdx, r12
mov r8, rsi
mov rcx, rbp
mov r12, rbp
call fcn.1401c0840
test eax, eax
je 0x1402f8352
mov rdx, qword [rsp + 0x70]
mov r8, r15
mov rcx, rbp
call fcn.1401c0840
mov rbp, qword [rsp + 0x40]
test eax, eax
je 0x1402f8357
xor r8d, r8d
mov rdx, rbp
mov rcx, r12
call fcn.1401c0a20
test eax, eax
je 0x1402f8357
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x98], rax
call fcn.14023c340
mov qword [rsp + 0xa0], rax
call fcn.14023c340
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0xa8], rax
test rcx, rcx
je 0x1402f8331
test rax, rax
je 0x1402f8331
mov r8d, dword [rsp + 0x48]
mov rdx, rbp
call fcn.14025e7b0
test eax, eax
je 0x1402f8310
mov rcx, qword [rsp + 0xa8]
mov r8d, esi
mov rdx, rbx
call fcn.14025e7b0
test eax, eax
je 0x1402f8310
lea r8, [0x1403d8650]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x90]
call fcn.140241720
test eax, eax
js 0x1402f8310
mov rcx, qword [rsp + 0x118]
mov edi, 1
cdqe
mov qword [rcx], rax
jmp 0x1402f83e4
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x23]
call fcn.1401d6370
jmp 0x1402f83e4
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x26]
call fcn.1401d6370
jmp 0x1402f83e4
mov rbp, qword [rsp + 0x40]
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x61]
call fcn.1401d6370
jmp 0x1402f83e4
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x57]
call fcn.1401d6370
mov rbp, qword [rsp + 0x40]
jmp 0x1402f83e4
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x26]
call fcn.1401d6370
mov rbp, qword [rsp + 0x40]
jmp 0x1402f83e4
mov r8d, 0x41
jmp 0x1402f83c9
mov r8d, 0x44
mov edx, 0x67
mov dword [rsp + 0x20], edi
lea r9, [0x140400fb1]
lea ecx, [rdx - 0x32]
call fcn.1401d6370
mov rbp, rbx
mov rcx, qword [rsp + 0xa8]
call fcn.14023c2c0
mov rcx, qword [rsp + 0xa0]
call fcn.14023c2c0
xor r8d, r8d
lea rdx, [0x140400fb1]
mov rcx, rbx
call fcn.1401b7dd0
mov rcx, qword [rsp + 0x50]
lea rdx, [0x140400fb1]
xor r8d, r8d
call fcn.1401b7dd0
xor r8d, r8d
lea rdx, [0x140400fb1]
mov rcx, rbp
call fcn.1401b7dd0
mov rcx, qword [rsp + 0x68]
call fcn.1401c03c0
mov rcx, r14
call fcn.14024d4c0
mov rcx, qword [rsp + 0x58]
call fcn.14025d240
mov rcx, qword [rsp + 0x60]
call fcn.14025d240
lea r11, [rsp + 0xc0]
mov eax, edi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret