Function at 0x1400bf820
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rsi, rdx
mov rdi, rdx
mov edx, 4
mov r14, rcx
mov rax, rcx
nop word [rax + rax]
lea rax, [rax + 0x80]
movups xmm0, xmmword [rdi]
lea rdi, [rdi + 0x80]
movups xmmword [rax - 0x80], xmm0
movups xmm1, xmmword [rdi - 0x70]
movups xmmword [rax - 0x70], xmm1
movups xmm0, xmmword [rdi - 0x60]
movups xmmword [rax - 0x60], xmm0
movups xmm1, xmmword [rdi - 0x50]
movups xmmword [rax - 0x50], xmm1
movups xmm0, xmmword [rdi - 0x40]
movups xmmword [rax - 0x40], xmm0
movups xmm1, xmmword [rdi - 0x30]
movups xmmword [rax - 0x30], xmm1
movups xmm0, xmmword [rdi - 0x20]
movups xmmword [rax - 0x20], xmm0
movups xmm1, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm1
sub rdx, 1
jne 0x1400bf850
movups xmm0, xmmword [rdi]
mov edx, 0x108
movups xmmword [rax], xmm0
movzx eax, byte [rcx + 0x210]
nop word [rax + rax]
xor byte [rcx], al
lea rcx, [rcx + 2]
add al, 0xb
xor byte [rcx - 1], al
add al, 0xb
sub rdx, 1
jne 0x1400bf8c0
xor ebx, ebx
mov qword [rbp - 0x78], 7
mov qword [rsp + 0x70], rbx
mov r8, 0xffffffffffffffff
mov qword [rbp - 0x80], rbx
nop dword [rax]
inc r8
cmp word [rsi + r8*2], bx
jne 0x1400bf8f0
mov rdx, rsi
lea rcx, [rsp + 0x70]
call fcn.14000ea60
lea rdx, [rsp + 0x70]
lea rcx, [0x140256260]
call fcn.1400afbf0
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x1400bf959
mov rcx, qword [rsp + 0x70]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400bf954
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c0039
call fcn.1400e9d60
mov qword [rsp + 0x1e0], r15
mov r15d, 1
cmp byte [rsi + 0x20c], bl
je 0x1400bf9dd
call qword [sym.imp.KERNEL32.dll_AllocConsole]
mov ecx, r15d
call fcn.1400f7938
mov r8, rax
mov word [rbp + 0xd0], 0x77
lea rdx, [rbp + 0xd0]
mov dword [rbp + 0xd8], 0x4f4e4f43
lea rcx, [rbp + 0xd8]
mov dword [rbp + 0xdc], 0x245455
call fcn.1400f7d70
mov rdx, rax
lea rdi, [rbp + 0xd8]
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
lea rdi, [rbp + 0xd0]
mov ecx, 2
rep stosb byte [rdi], al
test rdx, rdx
jne 0x1400bf9dd
mov byte [r14 + 0x214], r15b
movaps xmmword [rsp + 0x190], xmm6
movaps xmmword [rsp + 0x180], xmm7
movaps xmmword [rsp + 0x170], xmm8
movaps xmmword [rsp + 0x160], xmm9
cmp byte [rsi + 0x20e], bl
je 0x1400bfc2f
mov rcx, r14
call fcn.1400bf100
test al, al
jne 0x1400bfc2f
cmp dword [0x1402567d0], 2
lea rcx, [0x14011f980]
movups xmm0, xmmword [rcx]
lea rdx, [rbp - 0x70]
movups xmm1, xmmword [rcx + 0x10]
lea rcx, [rcx + 0x80]
mov rax, qword [rcx + 0x40]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rcx - 0x60]
movups xmmword [rdx + 0x10], xmm1
movups xmm1, xmmword [rcx - 0x50]
movups xmmword [rdx + 0x20], xmm0
movups xmm0, xmmword [rcx - 0x40]
movups xmmword [rdx + 0x30], xmm1
movups xmm1, xmmword [rcx - 0x30]
movups xmmword [rdx + 0x40], xmm0
movups xmm0, xmmword [rcx - 0x20]
movups xmmword [rdx + 0x50], xmm1
movups xmm1, xmmword [rcx - 0x10]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm0, xmmword [rcx]
movups xmmword [rdx - 0x10], xmm1
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rdx + 0x10], xmm1
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x20], xmm0
movups xmmword [rdx + 0x30], xmm1
mov qword [rdx + 0x40], rax
movzx eax, word [rcx + 0x48]
mov word [rdx + 0x48], ax
jl 0x1400bfbde
movdqa xmm5, xmmword [0x140119390]
lea rcx, [rbp - 0x70]
movdqa xmm4, xmmword [0x14011f7d0]
mov eax, 0x1f
movdqa xmm7, xmmword [str.7777]
movdqa xmm9, xmmword [str.00000000]
movd xmm6, r15d
movd xmm8, eax
nop dword [rax]
nop word [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm5
add ebx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
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
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm5
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
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
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp ebx, 0x60
jl 0x1400bfaf0
cmp ebx, 0x65
jge 0x1400bfc1f
movsxd rax, ebx
lea rdi, [rbp - 0x70]
lea rdi, [rdi + rax*2]
nop dword [rax]
mov eax, 0x94f2095
lea rdi, [rdi + 2]
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, bx
inc ebx
sub ax, cx
add ax, 0x30
xor word [rdi - 2], ax
cmp ebx, 0x65
jl 0x1400bfbf0
lea rcx, [rbp - 0x70]
call fcn.1400ae360
xor al, al
jmp 0x1400c0001
cmp byte [rsi + 0x20d], bl
je 0x1400bfffd
lea rcx, [0x1402596c0]
call fcn.1400c2710
test al, al
jne 0x1400bfe20
cmp dword [0x1402567d0], 2
movups xmm0, xmmword [0x14011fa50]
movups xmm1, xmmword [0x14011fa60]
movzx eax, word [0x14011fa98]
movups xmmword [rsp + 0x20], xmm0
mov word [rsp + 0x68], ax
movups xmm0, xmmword [0x14011fa70]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x14011fa90]
movups xmmword [rsp + 0x30], xmm1
movups xmm1, xmmword [0x14011fa80]
movsd qword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x50], xmm1
jl 0x1400bfdce
movdqa xmm5, xmmword [0x140119390]
lea rcx, [rsp + 0x20]
movdqa xmm4, xmmword [0x14011f7d0]
mov eax, 0x1f
movdqa xmm7, xmmword [str.7777]
movdqa xmm9, xmmword [str.00000000]
movd xmm6, r15d
movd xmm8, eax
nop dword [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm5
add ebx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
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
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm5
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
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
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp ebx, 0x20
jl 0x1400bfce0
cmp ebx, 0x25
jge 0x1400bfe0f
movsxd rax, ebx
lea rdi, [rsp + 0x20]
lea rdi, [rdi + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea rdi, [rdi + 2]
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, bx
inc ebx
sub ax, cx
add ax, 0x30
xor word [rdi - 2], ax
cmp ebx, 0x25
jl 0x1400bfde0
lea rcx, [rsp + 0x20]
call fcn.1400ae360
xor al, al
jmp 0x1400c0001
xor edx, edx
lea rcx, [0x1402593f0]
call fcn.1400b31d0
test al, al
jne 0x1400bfffd
cmp dword [0x1402567d0], 2
movups xmm0, xmmword [0x14011faa0]
movups xmm1, xmmword [0x14011fab0]
movzx eax, word [0x14011fae0]
movups xmmword [rsp + 0x20], xmm0
mov word [rsp + 0x60], ax
movups xmm0, xmmword [0x14011fac0]
movups xmmword [rsp + 0x30], xmm1
movups xmm1, xmmword [0x14011fad0]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
jl 0x1400bffae
movdqa xmm5, xmmword [0x140119390]
lea rcx, [rsp + 0x20]
movdqa xmm4, xmmword [0x14011f7d0]
mov eax, 0x1f
movdqa xmm7, xmmword [str.7777]
movdqa xmm9, xmmword [str.00000000]
movd xmm6, r15d
movd xmm8, eax
nop dword [rax]
nop dword [rax + rax]
movd xmm2, ebx
lea eax, [rbx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm5
add ebx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
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
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm5
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
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
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp ebx, 0x20
jl 0x1400bfec0
cmp ebx, 0x21
jge 0x1400bffef
movsxd rax, ebx
lea rdi, [rsp + 0x20]
lea rdi, [rdi + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea rdi, [rdi + 2]
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, bx
inc ebx
sub ax, cx
add ax, 0x30
xor word [rdi - 2], ax
cmp ebx, 0x21
jl 0x1400bffc0
lea rcx, [rsp + 0x20]
call fcn.1400ae360
xor al, al
jmp 0x1400c0001
movzx eax, r15b
movaps xmm8, xmmword [rsp + 0x170]
movaps xmm7, xmmword [rsp + 0x180]
movaps xmm6, xmmword [rsp + 0x190]
movaps xmm9, xmmword [rsp + 0x160]
mov r15, qword [rsp + 0x1e0]
add rsp, 0x1a0
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400f0a1c
int3