Function at 0x140042dd4
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0x6b8]
sub rsp, 0x7b0
mov rax, qword [0x14019be90]
xor rax, rsp
mov qword [rbp + 0x6a0], rax
mov r8d, dword [0x1401a3d80]
xor esi, esi
lea eax, [r8 + 1]
lea ecx, [r8 + 2]
lea r14d, [rsi + 1]
imul ecx, eax
mov eax, 0x2aaaaaab
imul ecx, r8d
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub ecx, eax
cmp ecx, 0x10
jne 0x140042e8c
mov eax, r8d
lea r10d, [rsi + 0x7d]
mov ecx, esi
cdq
sub eax, edx
sar eax, 1
mov edi, eax
test edi, edi
jle 0x140042e84
mov eax, r8d
mov r9d, esi
mov rbx, rdi
cdq
and edx, 3
add eax, edx
sar eax, 2
test eax, eax
jle 0x140042e7c
mov edx, r9d
mov r11d, eax
add r10d, edx
sub edx, r14d
sub r11, r14
jne 0x140042e71
add r9d, ecx
sub rbx, r14
jne 0x140042e67
add ecx, r14d
cmp ecx, r10d
jl 0x140042e51
mov ecx, r8d
mov eax, 0x66666667
imul ecx, r8d
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
shl eax, 2
sub ecx, eax
cmp ecx, 0x11
jne 0x140042edc
mov ecx, esi
lea rdx, [rbp + 0x690]
mov eax, dword [rdx]
add ecx, r14d
lea rdx, [rdx + 4]
imul eax, eax, 0xbc
add r8d, eax
movsxd rax, ecx
cmp rax, 8
jb 0x140042eba
mov dword [0x1401a3d80], r8d
call fcn.140040ee8
test al, al
jne 0x140042eec
sub dword [0x1401a54d4], r14d
cmp byte [0x1401a588f], sil
je 0x140042f01
lea rax, [0x14019f5b0]
jmp 0x140043034
mov r8d, dword [0x1401a3d80]
mov eax, 0x88888889
lea ecx, [r8 + 1]
imul ecx, r8d
imul ecx
add edx, ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xf
sub ecx, edx
cmp ecx, 8
jne 0x140042f8f
mov rbx, rsi
mov edi, 0xea
call fcn.1400bba88
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [rsp + rbx*8 + 0x40], xmm0
add rbx, r14
cmp rbx, rdi
jb 0x140042f35
mov rcx, rsi
mov eax, 0xe9
jmp 0x140042f7b
movsd xmm1, qword [rsp + rax*8 + 0x40]
movsd xmm0, qword [rsp + rax*8 + 0x38]
comisd xmm1, xmm0
jbe 0x140042f78
movsd qword [rsp + rax*8 + 0x40], xmm0
movsd qword [rsp + rax*8 + 0x38], xmm1
sub rax, r14
cmp rax, rcx
jg 0x140042f5a
add rcx, r14
sub rdi, r14
jne 0x140042f53
mov r8d, dword [0x1401a3d80]
mov dword [rbp + 0x690], 0xe004e
mov dword [rbp + 0x694], 0xb001c
mov dword [rbp + 0x698], 0x1f0001
mov dword [rbp + 0x69c], 0x2c
mov rcx, rsi
lea rbx, [0x14019f5b0]
lea rax, [0x14019ed90]
movzx eax, byte [rcx + rax]
xor ax, word [rbp + rcx*2 + 0x690]
mov word [rbx + rcx*2], ax
add rcx, r14
cmp rcx, 7
jl 0x140042fc1
lea ecx, [r8 + 1]
mov eax, 0x2e8ba2e9
imul ecx, r8d
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0xb
sub ecx, edx
cmp ecx, 3
jne 0x14004302a
mov qword [rsp + 0x30], rsi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
mov byte [0x1401a588f], r14b
mov rax, rbx
mov rcx, qword [rbp + 0x6a0]
xor rcx, rsp
call fcn.1400bb0d0
lea r11, [rsp + 0x7b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret