Function at 0x140096ab0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], r8d
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r12, qword [rcx + 0x18]
mov rsi, rcx
sub r12, qword [rcx + 0x10]
mov r14, rdx
mov rcx, rdx
sar r12, 3
movsxd rbx, r8d
call fcn.140161ef0
lea r13d, [rbx + 1]
mov rcx, rsi
mov dword [rsp + 0x70], r13d
sub r12d, ebx
jne 0x140096b0c
mov r8d, 1
mov rdx, r14
call fcn.140096e00
mov ebp, eax
jmp 0x140096d84
lea edx, [r12 + 0x14]
lea r8, str.too_many_arguments
call fcn.14008ec50
mov r9d, dword [rsp + 0x70]
lea rdx, [rbx*8]
mov qword [rsp + 0x88], rdx
mov ebp, 1
mov r13d, ebx
nop word [rax + rax]
dec r12d
test ebp, ebp
je 0x140096d7d
mov rcx, qword [rsi + 0x10]
mov eax, dword [rdx + rcx + 4]
cmp eax, 0xfffffffb
jne 0x140096c94
mov eax, dword [rdx + rcx]
cmp byte [rax + 0x10], 0x2a
jne 0x140096dd9
movzx ecx, byte [rax + 0x11]
cmp cl, 0x6e
jne 0x140096bb8
lea r8, [rsp + 0x20]
mov rcx, r14
lea rdx, [0x1401c11b4]
call fcn.140096800
mov rcx, qword [rsi + 0x18]
cmp eax, 1
jne 0x140096ba5
movsd xmm0, qword [rsp + 0x20]
mov ebp, eax
movsd qword [rcx], xmm0
add qword [rsi + 0x18], 8
jmp 0x140096d50
mov dword [rcx + 4], 0xffffffff
add qword [rsi + 0x18], 8
xor ebp, ebp
jmp 0x140096d50
movzx eax, cl
and al, 0xdf
cmp al, 0x4c
jne 0x140096bdd
xor r8d, r8d
mov rdx, r14
cmp cl, 0x6c
mov rcx, rsi
sete r8b
call fcn.140096e00
mov ebp, eax
jmp 0x140096d50
cmp cl, 0x61
mov rcx, rsi
jne 0x140096dc9
mov edx, dword [rsi + 8]
mov ebx, 0x200
add rdx, 0x58
mov r8d, ebx
call fcn.1400a04e0
mov r9, r14
mov edx, 1
mov r8d, ebx
mov rcx, rax
mov r15, rax
call fcn.140162370
mov rdi, rax
cmp eax, ebx
jne 0x140096c55
nop word [rax + rax]
mov edx, dword [rsi + 8]
add ebx, ebx
add rdx, 0x58
mov r8d, ebx
mov rcx, rsi
call fcn.1400a04e0
mov r8d, ebx
mov ecx, edi
sub r8d, edi
add rcx, rax
mov r9, r14
mov edx, 1
mov r15, rax
call fcn.140162370
add edi, eax
cmp edi, ebx
je 0x140096c20
mov rbx, qword [rsi + 0x18]
mov rdx, r15
mov r8d, edi
mov rcx, rsi
lea rax, [rbx + 8]
mov qword [rsi + 0x18], rax
call fcn.1400a0530
mov dword [rbx], eax
mov dword [rbx + 4], 0xfffffffb
mov ecx, dword [rsi + 8]
mov eax, dword [rcx + 0x24]
cmp dword [rcx + 0x20], eax
jb 0x140096d50
mov rcx, rsi
call fcn.14009eab0
jmp 0x140096d50
mov edx, r9d
mov rcx, rsi
cmp eax, 0xfffeffff
ja 0x140096dec
call fcn.1400af320
mov ebx, eax
test eax, eax
je 0x140096d18
mov edx, dword [rsi + 8]
mov r8d, ebx
add rdx, 0x58
mov rcx, rsi
call fcn.1400a04e0
mov r8d, ebx
mov r9, r14
mov edx, 1
mov rcx, rax
mov rdi, rax
call fcn.140162370
mov rbx, qword [rsi + 0x18]
mov rdx, rdi
mov r8d, eax
mov r15, rax
lea rcx, [rbx + 8]
mov qword [rsi + 0x18], rcx
mov rcx, rsi
call fcn.1400a0530
mov dword [rbx], eax
mov dword [rbx + 4], 0xfffffffb
mov ecx, dword [rsi + 8]
mov eax, dword [rcx + 0x24]
cmp dword [rcx + 0x20], eax
jb 0x140096d11
mov rcx, rsi
call fcn.14009eab0
xor ebp, ebp
test r15d, r15d
jmp 0x140096d4c
mov rcx, r14
call fcn.14015fe40
mov rdx, r14
mov ecx, eax
mov ebx, eax
call fcn.140160350
mov rdx, qword [rsi + 0x18]
xor ebp, ebp
lea rcx, [rdx + 8]
mov qword [rsi + 0x18], rcx
mov ecx, dword [rsi + 8]
sub ecx, 0xffffff80
mov dword [rdx + 4], 0xfffffffb
mov dword [rdx], ecx
cmp ebx, 0xffffffff
setne bpl
mov r9d, dword [rsp + 0x70]
inc r13d
mov rdx, qword [rsp + 0x88]
inc r9d
add rdx, 8
mov dword [rsp + 0x70], r9d
mov qword [rsp + 0x88], rdx
test r12d, r12d
jne 0x140096b40
mov ebx, dword [rsp + 0x80]
mov rcx, r14
call fcn.140161fd0
test eax, eax
je 0x140096d9f
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call fcn.14008e130
jmp 0x140096db4
test ebp, ebp
jne 0x140096dae
mov rcx, qword [rsi + 0x18]
mov dword [rcx - 4], 0xffffffff
sub r13d, ebx
mov eax, r13d
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea edx, [r13 + 1]
mov r8d, 0x4eb
call fcn.14009f790
int3
lea edx, [r13 + 1]
mov r8d, 0x4c8
mov rcx, rsi
call fcn.14009f790
int3
mov r8d, 0x4c8
call fcn.14009f790
int3