Function at 0x14006ac00
Capabilities:
Read file on windows

Disassembly:
push rsi
sub rsp, 0x20
mov rsi, rcx
mov rcx, rdx
mov edx, 0xac
call fcn.140014f00
mov rdx, qword [rax]
cmp byte [rdx], 0
je 0x1400607ca
mov rcx, rsi
add rsp, 0x20
pop rsi
jmp 0x14006ac00
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 rdi, rdx
mov rsi, rcx
mov rax, qword [0x1400c5038]
xor rax, rsp
mov qword [rsp + 0xc0], rax
cmp byte [rcx], 0
je 0x14006ac35
xor r14d, r14d
jmp 0x14006ac41
mov rcx, qword [rsi + 0x20]
call fcn.1400127a0
mov r14d, eax
lea rdx, [0x1400b1228]
mov rcx, rdi
call fcn.14007d374
test rax, rax
je 0x14006b097
mov rbp, rax
mov qword [rsp + 0x30], rsi
call fcn.140014050
mov rsi, rax
xor ebx, ebx
mov ecx, 0x8000c
mov edx, 1
xor r8d, r8d
call fcn.140016170
mov rdi, rax
mov edx, 1
mov r8d, 0x8000c
mov rcx, rax
mov qword [rsp + 0x48], rbp
mov r9, rbp
call fcn.14007d7d4
mov rbp, rax
movsxd rax, ebp
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x98], 0
mov dword [rsp + 0xa8], 0
lea rax, [rsp + 0x90]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x40], rsi
test rsi, rsi
setne al
and al, r14b
mov byte [rsp + 0x2f], al
xor r14b, 1
mov dword [rsp + 0x3c], r14d
lea r13, [rsp + 0x80]
xor eax, eax
mov qword [rsp + 0x50], rax
cmp rbx, 0x40005
jbe 0x14006ad80
nop dword [rax + rax]
sub ebp, ebx
add rbx, rdi
movsxd rbp, ebp
mov rcx, rdi
mov rdx, rbx
mov r8, rbp
call fcn.14006e1a0
mov r8d, 0x8000c
sub r8, rbp
lea rcx, [rdi + rbp]
mov edx, 1
mov r9, qword [rsp + 0x48]
call fcn.14007d7d4
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 0x14006ad88
mov rcx, qword [rsp + 0xb0]
call fcn.140015db0
mov ebx, eax
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140015db0
mov r8d, eax
mov rdx, qword [rsi + 0x20]
mov rcx, r13
call fcn.140015cf0
mov r15, qword [rsp + 0x80]
mov r14, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140015db0
mov r8d, eax
mov rdx, qword [rsi + 0x20]
lea rsi, [rsp + 0x60]
mov rcx, rsi
call fcn.140015cf0
mov rcx, rsi
call fcn.14001b570
mov rsi, rax
cmp byte [rax], 0
je 0x14006ae10
mov rcx, rsi
call fcn.14007c01c
mov r12d, eax
jmp 0x14006ae16
mov r12d, 0xffffffff
mov rcx, rsi
call fcn.140016210
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140015db0
mov r8d, eax
mov rdx, qword [rsi + 0x20]
mov rcx, r13
call fcn.140015cf0
movdqu xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x70], xmm0
mov rsi, qword [rsp + 0xb0]
mov rcx, qword [rsi + 0x20]
call fcn.140015db0
mov r8d, eax
mov rdx, qword [rsi + 0x20]
mov rcx, r13
call fcn.140015cf0
mov rax, qword [rsp + 0xb0]
cmp dword [rax + 0x18], 0
jne 0x14006b06e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x10]
test eax, eax
js 0x14006aea5
mov rcx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
test r12d, r12d
js 0x14006aed0
cmp eax, r12d
je 0x14006aed0
test byte [rsp + 0x50], 1
jne 0x14006b06e
mov rbx, qword [rsp + 0x98]
cmp rbx, 0x40005
jbe 0x14006ad80
jmp 0x14006ad10
mov qword [rsp + 0x58], rcx
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x80], xmm0
mov rcx, r13
mov rdx, qword [str.MIT_MAGIC_COOKIE_1]
call fcn.14001b4a0
mov r12d, 1
test al, al
jne 0x14006af25
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x80], xmm0
mov rcx, r13
mov rdx, qword [str.XDM_AUTHORIZATION_1]
call fcn.14001b4a0
mov r12d, 2
test al, al
je 0x14006aea5
cmp ebx, 0x100
je 0x14006af82
cmp ebx, 6
je 0x14006af99
test ebx, ebx
jne 0x14006aea5
mov rbx, qword [rsp + 0x30]
cmp byte [rbx], 0
jne 0x14006aea5
mov rcx, qword [rbx + 0x20]
call fcn.140012bd0
cmp eax, 1
jne 0x14006aea5
mov rcx, qword [rbx + 0x20]
mov rdx, r13
call fcn.140012c10
cmp r14, 4
jne 0x14006aea5
mov eax, dword [r15]
cmp eax, dword [rsp + 0x80]
jne 0x14006aea5
jmp 0x14006afec
mov rax, qword [rsp + 0x30]
cmp byte [rax], 0
je 0x14006aff5
cmp qword [rsp + 0x40], 0
jne 0x14006b000
jmp 0x14006aea5
mov rbx, qword [rsp + 0x30]
cmp byte [rbx], 0
jne 0x14006aea5
mov rcx, qword [rbx + 0x20]
call fcn.140012bd0
cmp eax, 2
jne 0x14006aea5
mov rcx, qword [rbx + 0x20]
mov rdx, r13
call fcn.140012c10
cmp r14, 0x10
jne 0x14006aea5
movdqu xmm0, xmmword [r15]
pcmpeqb xmm0, xmmword [rsp + 0x80]
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x14006aea5
mov eax, dword [rsp + 0x3c]
mov r14d, eax
jmp 0x14006b028
cmp byte [rsp + 0x2f], 0
je 0x14006aea5
mov qword [rsp + 0x80], r15
mov qword [rsp + 0x88], r14
mov rcx, r13
mov rdx, qword [rsp + 0x40]
call fcn.14001b4a0
mov r14b, 1
test al, al
je 0x14006aea5
mov rbx, qword [rsp + 0x30]
mov dword [rbx + 0x38], r12d
mov rcx, qword [rbx + 0x40]
call fcn.140016210
mov edx, 1
mov rcx, rsi
xor r8d, r8d
call fcn.140016170
mov qword [rbx + 0x40], rax
mov rcx, rax
mov rdx, qword [rsp + 0x58]
mov r8, rsi
call fcn.14006e1a0
mov dword [rbx + 0x48], esi
mov eax, r14d
mov qword [rsp + 0x50], rax
jmp 0x14006aea5
mov rcx, qword [rsp + 0x48]
call fcn.14007cce4
mov edx, 0x8000c
mov rcx, rdi
call fcn.1400349b0
mov rcx, rdi
call fcn.140016210
mov rcx, qword [rsp + 0x40]
call fcn.140016210
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.14006cf60
nop
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret