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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x250]
sub rsp, 0x350
mov rax, qword [0x1405f8008]
xor rax, rsp
mov qword [rbp + 0x240], rax
mov r13, qword [rbp + 0x2b0]
lea rcx, [rsp + 0x60]
mov r12, r9
mov r15, r8
mov rdi, rdx
call fcn.1400eda94
and qword [rsp + 0x48], 0
lea r9, [rsp + 0x34]
and qword [rsp + 0x38], 0
lea rdx, [rsp + 0x60]
and dword [rsp + 0x30], 0
mov ebx, 0xfc
and qword [rsp + 0x20], 0
mov r8d, ebx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x1400f79a3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.14003de94
mov esi, eax
mov ecx, eax
call fcn.14003e510
jmp 0x1400f7cf0
cmp dword [rsp + 0x34], ebx
je 0x1400f79b2
mov ecx, 0x8007000d
mov esi, ecx
jmp 0x1400f7999
mov eax, dword [rbp + 0x58]
test eax, eax
je 0x1400f79a9
mov ecx, eax
call fcn.1400b74d4
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.14003be24
mov rbx, qword [rsp + 0x48]
test rbx, rbx
jne 0x1400f79e0
mov esi, 0x8007000e
mov ecx, esi
jmp 0x1400f7999
mov r8d, dword [rbp + 0x58]
lea r9, [rsp + 0x34]
and qword [rsp + 0x20], 0
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400f7988
mov eax, dword [rsp + 0x34]
cmp dword [rbp + 0x58], eax
jne 0x1400f79a9
mov r8d, 0x3c
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x60]
call fcn.14007ae18
mov esi, eax
test eax, eax
js 0x1400f7997
lea rdx, str.spp:migblob_aesencryptor_tokenact
lea rcx, [rsp + 0x60]
call sub.msvcrt.dll_wcscmp
test eax, eax
je 0x1400f7a61
and qword [rsp + 0x20], 0
mov ecx, 1
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc00004a5
call fcn.14006a1ec
mov esi, 0x80049e59
jmp 0x1400f79dc
lea rcx, [0x140418628]
call fcn.140014ee8
mov rdi, rax
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, 0x60
lea rcx, [rbp - 0x28]
call rdi
mov rcx, rdi
mov esi, eax
call fcn.140018b88
test esi, esi
js 0x1400f79dc
mov r14, qword [rsp + 0x38]
lea r9, [0x1400b5740]
mov esi, dword [rsp + 0x30]
lea rcx, [rsp + 0x50]
mov edi, dword [rbp + 0x58]
mov edx, reloc.OLEAUT32.dll_SafeArrayGetDim
lea r8d, [rdx - 0xf]
call fcn.14003c3cc
lea rcx, [rbp + 0xf0]
mov dword [rsp + 0x50], edi
mov qword [rsp + 0x58], rbx
call fcn.14003a734
lea rcx, [rbp + 0x60]
call fcn.14003a734
mov edi, 0x40
cmp esi, edi
jbe 0x1400f7af0
mov esi, 0x80004005
mov ecx, esi
jmp 0x1400f7c30
mov r8, rdi
lea rcx, [rbp + 0x1c0]
xor edx, edx
call fcn.14001bade
mov r8, rdi
lea rcx, [rbp + 0x180]
xor edx, edx
call fcn.14001bade
mov r8, rsi
lea rcx, [rbp + 0x1c0]
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov r8, rsi
lea rcx, [rbp + 0x180]
mov rdx, r14
call sub.msvcrt.dll_memcpy
xor eax, eax
lea ecx, [rax + 4]
movdqu xmm0, xmmword [rbp + rax + 0x1c0]
lea rax, [rax + 0x10]
pxor xmm0, xmmword [str.6666666666666666_]
movdqu xmmword [rbp + rax + 0x1b0], xmm0
movdqu xmm0, xmmword [rbp + rax + 0x170]
pxor xmm0, xmmword [0x1403a6320]
movdqu xmmword [rbp + rax + 0x170], xmm0
sub rcx, 1
jne 0x1400f7b3b
mov r8d, edi
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0xf0]
call fcn.14007a5f8
mov esi, eax
test eax, eax
js 0x1400f7c2e
xor r14d, r14d
lea rdi, [rsp + 0x58]
mov r8d, dword [rdi - 8]
lea rcx, [rbp + 0xf0]
mov rdx, qword [rdi]
call fcn.14007a5f8
mov esi, eax
test eax, eax
js 0x1400f7c2e
inc r14d
add rdi, 0x10
cmp r14d, 1
jb 0x1400f7ba1
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0xf0]
call fcn.1400629a8
mov esi, eax
test eax, eax
js 0x1400f7c2e
mov r8d, 0x40
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x60]
call fcn.14007a5f8
mov esi, eax
test eax, eax
js 0x1400f7c2e
mov r8d, 0x20
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0x60]
call fcn.14007a5f8
mov esi, eax
test eax, eax
js 0x1400f7c2e
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0x60]
call fcn.1400629a8
mov esi, eax
test eax, eax
jns 0x1400f7c35
mov ecx, eax
call fcn.14003e510
xor eax, eax
lea rdi, [rbp + 0x1c0]
lea edx, [rax + 0x40]
mov ecx, edx
rep stosb byte [rdi], al
mov ecx, edx
lea rdi, [rbp + 0x180]
rep stosb byte [rdi], al
mov ecx, esi
call fcn.14006a5bc
test esi, esi
jns 0x1400f7c62
mov ecx, esi
call fcn.14003e510
mov ecx, esi
call fcn.14006a5bc
test esi, esi
jns 0x1400f7c71
mov ecx, esi
jmp 0x1400f7c92
mov r8d, 0x20
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0x38]
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1400f7c97
mov ecx, 0x8007000d
mov esi, ecx
call fcn.14003e510
mov ecx, esi
call fcn.14006a5bc
test esi, esi
jns 0x1400f7ca9
mov ecx, esi
call fcn.14003e510
mov ecx, esi
call fcn.14006a5bc
test esi, esi
js 0x1400f79dc
mov edx, dword [rbp + 0x58]
lea r8, [rsp + 0x40]
mov rcx, rbx
call fcn.1400eee30
mov esi, eax
test eax, eax
js 0x1400f7997
mov rax, qword [rsp + 0x38]
and qword [rsp + 0x38], 0
mov qword [r12], rax
mov eax, dword [rsp + 0x30]
mov dword [r15], eax
mov eax, dword [rsp + 0x40]
mov dword [r13], eax
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x1400f7d02
mov ecx, dword [rsp + 0x30]
xor eax, eax
rep stosb byte [rdi], al
mov ecx, esi
call fcn.14006a5bc
lea rcx, [rsp + 0x38]
call fcn.14003b754
lea rcx, [rsp + 0x48]
call fcn.14003b77c
mov eax, esi
mov rcx, qword [rbp + 0x240]
xor rcx, rsp
call fcn.14001af80
mov rbx, qword [rsp + 0x390]
add rsp, 0x350
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret