Function at 0x1400033e0
Capabilities:
Encode data using xor
Read file on windows

Disassembly:
push rdi
push r12
push r14
sub rsp, 0x320
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x300], rax
mov r12, rdx
mov r14, rcx
lea rdx, [0x1400254d0]
call fcn.1400086a8
mov rdi, rax
test rax, rax
jne 0x14000343a
lea ecx, [rax + 2]
call fcn.1400087d4
mov rcx, rax
lea rdx, str.Cannot_open_file:__s_n
mov r8, r14
call fcn.140003330
xor eax, eax
jmp 0x1400036f5
mov qword [rsp + 0x350], rbx
xor edx, edx
mov qword [rsp + 0x358], rbp
mov rcx, rdi
mov qword [rsp + 0x318], rsi
mov qword [rsp + 0x310], r15
lea r8d, [rdx + 2]
call fcn.140008c64
mov rcx, rdi
call fcn.1400081b0
mov rcx, rdi
mov ebp, eax
call fcn.14000b9a4
add ebp, 0xffffffe0
mov ecx, ebp
mov r15d, ebp
call fcn.14000c16c
mov ecx, ebp
mov rsi, rax
call fcn.14000c16c
mov rbx, rax
test rsi, rsi
je 0x1400036af
test rax, rax
je 0x1400036af
mov r8d, r15d
xor edx, edx
mov rcx, rsi
call fcn.14001c070
mov r8d, r15d
xor edx, edx
mov rcx, rbx
call fcn.14001c070
mov edx, 1
lea rcx, [rsp + 0x60]
mov r9, rdi
lea r8d, [rdx + 0x1f]
call fcn.14000c0a4
mov ecx, dword [rsp + 0x7c]
mov r8d, ebp
sub r8d, ecx
mov r9, rdi
add rcx, rsi
mov edx, 1
call fcn.14000c0a4
mov r8d, dword [rsp + 0x7c]
mov r9, rdi
mov edx, 1
mov rcx, rsi
call fcn.14000c0a4
mov rcx, rdi
call fcn.14000897c
cmp dword [rsp + 0x60], 0x4955485a
jne 0x140003699
cmp word [rsp + 0x64], 0x554c
jne 0x140003699
cmp byte [rsp + 0x66], 0x4f
jne 0x140003699
lea rcx, [rsp + 0x80]
call fcn.140002b70
lea rax, [rsp + 0x2f0]
xorps xmm0, xmm0
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x80]
mov dword [rsp + 0x40], ebp
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rsi
movups xmmword [rsp + 0x2f0], xmm0
call fcn.140003160
xor eax, eax
xorps xmm4, xmm4
xorps xmm3, xmm3
lea ecx, [rax + 2]
nop
movd xmm2, dword [rsp + rax + 0x2f0]
xorps xmm0, xmm0
movd xmm1, dword [rsp + rax + 0x6c]
lea rax, [rax + 8]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
movd xmm1, dword [rsp + rax + 0x68]
punpcklbw xmm1, xmm0
orps xmm4, xmm2
movd xmm2, dword [rsp + rax + 0x2ec]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
orps xmm3, xmm2
sub rcx, 1
jne 0x140003580
orps xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
orps xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
orps xmm3, xmm0
movd eax, xmm3
test eax, eax
je 0x140003638
mov r8, r15
xor edx, edx
mov rcx, rbx
call fcn.14001c070
mov ecx, 2
call fcn.1400087d4
lea rdx, str.Failed_to_decrypt_file:__s_n
mov r8, r14
mov rcx, rax
call fcn.140003330
mov rcx, rsi
call fcn.14000be30
mov rcx, rbx
call fcn.14000be30
jmp 0x1400036d3
lea rdx, [0x1400254f0]
mov rcx, r12
call fcn.1400086a8
mov rdi, rax
test rax, rax
jne 0x140003663
lea ecx, [rax + 2]
call fcn.1400087d4
mov r8, r12
lea rdx, str.Failed_to_create_file:__s_n
jmp 0x14000361b
sub ebp, dword [rsp + 0x68]
mov r9, rdi
mov r8d, ebp
mov edx, 1
mov rcx, rbx
call fcn.14000bd8c
mov rcx, rdi
call fcn.14000897c
mov rcx, rsi
call fcn.14000be30
mov rcx, rbx
call fcn.14000be30
mov eax, 1
jmp 0x1400036d5
mov ecx, 2
call fcn.1400087d4
lea rdx, str.File_maybe_not_encrypted:__s_n
jmp 0x140003618
mov ecx, 2
call fcn.1400087d4
mov rcx, rax
lea rdx, str.Cannot_alloc_read_memory:__u_n
mov r8d, ebp
call fcn.140003330
mov rcx, rdi
call fcn.14000897c
xor eax, eax
mov rsi, qword [rsp + 0x318]
mov rbp, qword [rsp + 0x358]
mov rbx, qword [rsp + 0x350]
mov r15, qword [rsp + 0x310]
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.1400037f0
add rsp, 0x320
pop r14
pop r12
pop rdi
ret