Function at 0x1400a3bb0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xe0
mov qword [rax - 0x20], rbx
lea r14, [rbp + 0x87]
mov qword [rax - 0x28], rsi
mov rbx, r9
mov qword [rax - 0x30], rdi
mov esi, edx
mov qword [rax - 0x38], r12
mov r12, r8
mov qword [rax - 0x40], r13
mov r13d, ecx
call fcn.14000e3e0
mov qword [rsp + 0x28], r14
mov r9, rbx
xor r14d, r14d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], r14
mov rcx, qword [rax]
mov rdi, rax
or rcx, 2
call fcn.1400e79bc
test eax, eax
mov rcx, 0xffffffffffffffff
cmovs eax, ecx
movsxd rbx, eax
lea rcx, [rbx + 1]
call fcn.1400dd150
mov rcx, qword [rbp + 0x7f]
lea r9, [r14 - 1]
mov r15, rax
lea r8, [rbx + 1]
lea rax, [rbp + 0x87]
mov rdx, r15
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rcx
mov rcx, qword [rdi]
call fcn.1400e7714
mov rdi, qword [rsp + 0xc8]
mov ebx, esi
bts ebx, 0x11
mov ecx, esi
and ecx, 0x20000
cmovne ebx, esi
mov rsi, qword [rsp + 0xd0]
test r13d, r13d
je 0x1400a3f27
mov rax, qword [0x14024ae18]
test rax, rax
jne 0x1400a3f0d
movzx eax, word [0x140110d60]
lea rcx, [rbp - 0x59]
movsd xmm0, qword [str.DAVF]
movsd qword [rbp - 0x59], xmm0
xor byte [rbp - 0x58], 0x32
xor byte [rbp - 0x57], 0x33
xor byte [rbp - 0x56], 0x34
xor byte [rbp - 0x55], 0x35
xor byte [rbp - 0x54], 0x36
xor byte [rbp - 0x53], 0x37
xor byte [rbp - 0x52], 0x38
mov word [rbp - 0x51], ax
movzx eax, byte [0x140110d62]
xor byte [rbp - 0x51], 0x39
xor al, 0x3b
xor byte [rbp - 0x50], 0x3a
mov byte [rbp - 0x4f], al
mov byte [rbp - 0x59], 0x75
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r9, rax
test rax, rax
je 0x1400a3f01
cmp dword [0x140248200], 2
movzx ecx, word [0x140110d78]
movups xmm0, xmmword [str.W_GTQRzVBoUP_P55]
mov word [rbp - 0x29], cx
movzx ecx, byte [0x140110d7a]
mov byte [rbp - 0x27], cl
mov ecx, r14d
movups xmmword [rbp - 0x39], xmm0
jl 0x1400a3eaf
movdqa xmm0, xmmword [0x140110dd0]
lea rdx, [rbp - 0x35]
movdqa xmm5, xmmword [0x14010c2c0]
mov eax, 4
movdqa xmm4, xmmword [0x140110de0]
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm7
movdqa xmm7, xmmword [str.4444]
movd xmm6, eax
mov eax, 0x1f
movdqa xmmword [rbp - 0x49], xmm0
mov r8d, dword [rbp - 0x49]
movaps xmmword [rsp + 0x80], xmm8
movd xmm8, eax
nop dword [rax]
nop word [rax + rax]
movd xmm2, ecx
lea eax, [rcx + 4]
pshufd xmm2, xmm2, 0
lea rdx, [rdx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add ecx, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
pand xmm2, xmmword [0x14010c300]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 0xc]
pxor xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rdx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, r8d
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010c300]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rdx - 8]
pxor xmm2, xmm0
movd dword [rdx - 8], xmm2
cmp ecx, 0x10
jl 0x1400a3d90
movaps xmm8, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0xa0]
cmp ecx, 0x13
jge 0x1400a3eed
movsxd rax, ecx
lea r8, [rbp - 0x39]
add r8, rax
nop dword [rax]
mov eax, 0x4ec4ec4f
lea r8, [r8 + 1]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x34
movzx eax, cl
inc ecx
sub al, dl
add al, 0x31
xor byte [r8 - 1], al
cmp ecx, 0x13
jl 0x1400a3ec0
lea rdx, [rbp - 0x39]
mov rcx, r9
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14024ae18], rax
mov rax, qword [0x14024ae18]
test rax, rax
je 0x1400a3f3b
mov dword [rsp + 0x28], r13d
mov r9d, ebx
mov r8, r12
mov word [rsp + 0x20], r14w
mov rdx, r15
xor ecx, ecx
call rax
jmp 0x1400a3f38
mov r9d, ebx
mov r8, r12
mov rdx, r15
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov r14d, eax
mov r13, qword [rsp + 0xb8]
mov r12, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0xd8]
test r15, r15
je 0x1400a3f60
mov rcx, r15
call fcn.1400dcd18
mov eax, r14d
add rsp, 0xe0
pop r15
pop r14
pop rbp
ret