Function at 0x14003a0bc
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x140116080]
xor rax, rsp
mov qword [rbp + 0x170], rax
mov r8d, 0x104
lea rdx, [rbp + 0x60]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x60]
or rbx, 0xffffffffffffffff
mov rax, rbx
inc rax
cmp byte [rcx + rax], 0
jne 0x14003a108
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rdx, [rsp + 0x20]
lea rcx, [rbp + 0x38]
call fcn.14003f708
nop
movsd xmm0, qword [0x140106b38]
movsd qword [rsp + 0x20], xmm0
mov eax, dword [0x140106b40]
mov dword [rsp + 0x28], eax
movzx eax, word [0x140106b44]
mov word [rsp + 0x2c], ax
cmp byte [0x140106b45], 0
je 0x14003a184
xor r8d, r8d
lea r9, [rsp + 0x20]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0xe
jl 0x14003a15d
lea rax, [rsp + 0x20]
mov qword [rsp + 0x40], rax
lea rcx, [rsp + 0x20]
mov rax, rbx
inc rax
cmp byte [rcx + rax], 0
jne 0x14003a196
mov qword [rsp + 0x48], rax
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x68]
call fcn.14003f708
nop
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x38]
call fcn.140038980
nop
lea r8, [rbp - 0x68]
mov rdx, rax
lea rcx, [rbp + 0x18]
call fcn.140038a2c
nop
lea rcx, [rsp + 0x60]
call fcn.14003d458
nop
lea rcx, [rbp - 0x68]
call fcn.14003d458
movsd xmm0, qword [str._RPPD]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x140106d48]
mov word [rsp + 0x48], ax
mov al, byte [0x140106d4a]
mov byte [rsp + 0x4a], al
xor r8d, r8d
lea r9, [rsp + 0x40]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
mov al, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
inc r9
cmp r8d, 0xb
jl 0x14003a216
lea rax, [rsp + 0x40]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14003a24c
mov qword [rsp + 0x58], rbx
xor r8d, r8d
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x48]
call fcn.14003f708
nop
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x38]
call fcn.140038980
nop
lea r8, [rbp - 0x48]
mov rdx, rax
lea rcx, [rbp - 8]
call fcn.140038a2c
nop
lea rcx, [rbp - 0x28]
call fcn.14003d458
nop
lea rcx, [rbp - 0x48]
call fcn.14003d458
lea rcx, [rbp + 0x18]
call fcn.1400390e8
test al, al
je 0x14003a3d6
lea rcx, [rbp - 8]
cmp qword [rbp + 0x10], 7
cmova rcx, qword [rbp - 8]
call fcn.1400aa454
mov rdx, rax
shr rdx, 0x20
test edx, edx
jne 0x14003a423
test al, al
jne 0x14003a3b1
movups xmm0, xmmword [0x140106d18]
movups xmmword [rsp + 0x20], xmm0
mov eax, dword [0x140106d28]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140106d2c]
mov word [rsp + 0x34], ax
xor r8d, r8d
lea r9, [rsp + 0x20]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movzx eax, dx
imul ecx, eax, 0x32
movzx eax, r8w
sub ax, cx
add ax, 0x31
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0xb
jl 0x14003a303
movups xmm0, xmmword [0x140106c10]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [0x140106c20]
movups xmmword [rsp + 0x70], xmm1
movups xmm0, xmmword [0x140106c30]
movups xmmword [rbp - 0x80], xmm0
mov eax, dword [0x140106c40]
mov dword [rbp - 0x70], eax
movzx eax, word [0x140106c44]
mov word [rbp - 0x6c], ax
xor r8d, r8d
lea r9, [rsp + 0x60]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movzx eax, dx
imul ecx, eax, 0x32
movzx eax, r8w
sub ax, cx
add ax, 0x31
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x1b
jl 0x14003a36f
xor r9d, r9d
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x60]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
lea rdx, [rbp - 8]
cmp qword [rbp + 0x10], 7
cmova rdx, qword [rbp - 8]
lea rcx, [rbp + 0x18]
cmp qword [rbp + 0x30], 7
cmova rcx, qword [rbp + 0x18]
call fcn.1400aa678
test eax, eax
jne 0x14003a413
lea rcx, [rbp - 8]
call fcn.14003d458
nop
lea rcx, [rbp + 0x18]
call fcn.14003d458
nop
lea rcx, [rbp + 0x38]
call fcn.14003d458
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.1400a8aa0
mov rbx, qword [rsp + 0x290]
add rsp, 0x280
pop rbp
ret
lea r9, [rbp - 8]
lea r8, [rbp + 0x18]
mov edx, eax
call fcn.140039024
int3
lea r8, [rbp - 8]
lea rcx, str.remove
call fcn.140038fc0
int3