Function at 0x1400827e4
Capabilities:
Read file on windows

Disassembly:
push rsi
sub rsp, 0x20
mov rsi, rcx
mov rcx, rdx
mov edx, 0xaa
call fcn.14000396b
mov rdx, qword [rax]
cmp byte [rdx], 0
je 0x14008280e
mov rcx, rsi
add rsp, 0x20
pop rsi
jmp 0x140082f4b
nop
add rsp, 0x20
pop rsi
ret
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1400d80e0]
xor rax, rsp
mov qword [rsp + 0xc0], rax
cmp byte [rcx], 0
je 0x140082f7f
xor ebx, ebx
jmp 0x140082f8a
mov rcx, qword [rdi + 0x20]
call fcn.14007b740
mov ebx, eax
lea rdx, [0x1400c3df8]
mov rcx, rsi
call fcn.1400928c4
test rax, rax
je 0x14008339f
mov rbp, rax
mov qword [rsp + 0x28], rdi
call fcn.14007cbd7
mov qword [rsp + 0x30], rax
xor esi, esi
mov ecx, 0x8000c
mov edx, 1
xor r8d, r8d
call fcn.140012298
mov rdi, rax
mov edx, 1
mov r8d, 0x8000c
mov rcx, rax
mov qword [rsp + 0x48], rbp
mov r9, rbp
call fcn.140092a48
mov rbp, rax
movsxd rax, ebp
lea rcx, [rsp + 0x90]
mov qword [rcx], rdi
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], 0
mov dword [rcx + 0x18], 0
mov qword [rcx + 0x20], rcx
mov dword [rsp + 0x44], ebx
mov eax, ebx
xor al, 1
mov byte [rsp + 0x27], al
lea rbx, [rsp + 0x80]
lea r15, [0x1400b5410]
xor eax, eax
mov qword [rsp + 0x50], rax
cmp rsi, 0x40005
jbe 0x1400830a9
sub ebp, esi
add rsi, rdi
movsxd rbp, ebp
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
call fcn.140085310
mov r8d, 0x8000c
sub r8, rbp
lea rcx, [rdi + rbp]
mov edx, 1
mov r9, qword [rsp + 0x48]
call fcn.140092a48
add ebp, eax
movsxd rax, ebp
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x98], 0
mov dword [rsp + 0xa8], 0
lea rcx, [rsp + 0x90]
mov qword [rsp + 0xb0], rcx
jmp 0x1400830b1
mov rcx, qword [rsp + 0xb0]
call fcn.140011f88
mov r12d, eax
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140011f88
mov r8d, eax
mov rdx, qword [rsi + 0x20]
mov rcx, rbx
call fcn.140011eee
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x38], rax
mov r14, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140011f88
mov r8d, eax
mov rdx, qword [rsi + 0x20]
lea rsi, [rsp + 0x60]
mov rcx, rsi
call fcn.140011eee
mov rcx, rsi
call fcn.1400654f5
mov rsi, rax
cmp byte [rax], 0
je 0x140083130
mov rcx, rsi
call fcn.1400915d0
mov r13d, eax
jmp 0x140083136
mov r13d, 0xffffffff
mov rcx, rsi
call fcn.140012312
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140011f88
mov r8d, eax
mov rdx, qword [rsi + 0x20]
mov rcx, rbx
call fcn.140011eee
movdqu xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x70], xmm0
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140011f88
mov r8d, eax
mov rdx, qword [rsi + 0x20]
mov rcx, rbx
call fcn.140011eee
mov rax, qword [rsp + 0xb0]
cmp dword [rax + 0x18], 0
jne 0x140083376
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x10]
test eax, eax
js 0x140083362
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
test r13d, r13d
js 0x1400831cd
cmp eax, r13d
jne 0x140083362
mov qword [rsp + 0x58], rdx
mov r13, rcx
mov esi, 1
mov rdx, qword [r15 + rsi*8]
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x80], xmm0
mov rcx, rbx
call fcn.140065441
test al, al
jne 0x140083207
inc rsi
cmp rsi, 3
jne 0x1400831da
jmp 0x140083362
cmp r12d, 0x100
je 0x140083276
cmp r12d, 6
je 0x1400832c5
test r12d, r12d
jne 0x140083362
mov r12, qword [rsp + 0x28]
cmp byte [r12], 0
jne 0x140083362
mov rcx, qword [r12 + 0x20]
call fcn.14007b94a
cmp eax, 1
jne 0x140083362
mov rcx, qword [r12 + 0x20]
mov rdx, rbx
call fcn.14007b981
cmp r14, 4
jne 0x140083362
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
cmp eax, dword [rsp + 0x80]
jne 0x140083362
jmp 0x140083314
mov rax, qword [rsp + 0x28]
cmp byte [rax], 0
setne al
cmp qword [rsp + 0x30], 0
je 0x140083362
or al, byte [rsp + 0x44]
je 0x140083362
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r14
mov rcx, rbx
mov rdx, qword [rsp + 0x30]
call fcn.140065441
mov r14b, 1
test al, al
jne 0x140083319
jmp 0x140083362
mov r12, qword [rsp + 0x28]
cmp byte [r12], 0
jne 0x140083362
mov rcx, qword [r12 + 0x20]
call fcn.14007b94a
cmp eax, 2
jne 0x140083362
mov rcx, qword [r12 + 0x20]
mov rdx, rbx
call fcn.14007b981
cmp r14, 0x10
jne 0x140083362
mov rax, qword [rsp + 0x38]
movdqu xmm0, xmmword [rax]
pcmpeqb xmm0, xmmword [rsp + 0x80]
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x140083362
mov r14b, byte [rsp + 0x27]
mov r12, qword [rsp + 0x28]
mov dword [r12 + 0x38], esi
mov rcx, qword [r12 + 0x40]
call fcn.140012312
mov edx, 1
mov rsi, r13
mov rcx, r13
xor r8d, r8d
call fcn.140012298
mov qword [r12 + 0x40], rax
mov rcx, rax
mov rdx, qword [rsp + 0x58]
mov r8, r13
call fcn.140085310
mov dword [r12 + 0x48], esi
mov eax, r14d
mov qword [rsp + 0x50], rax
test byte [rsp + 0x50], 1
jne 0x140083376
mov rsi, qword [rsp + 0x98]
jmp 0x140083030
mov rcx, qword [rsp + 0x48]
call fcn.140092320
mov edx, 0x8000c
mov rcx, rdi
call fcn.14007a7d4
mov rcx, rdi
call fcn.140012312
mov rcx, qword [rsp + 0x30]
call fcn.140012312
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.1400841b0
nop
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret