Function at 0x140017fb0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r14
sub rsp, 0x58
xor esi, esi
mov qword [rsp + 0x50], r13
xor ebp, ebp
mov qword [rsp + 0x48], r15
mov rbx, r9
lea r10, [0x140000000]
xor r9d, r9d
mov r14, rdx
lea r12d, [rsi + 1]
mov qword [rsp + 0x90], r9
mov rdi, rcx
movzx edx, byte [rdi]
cmp dl, 0x22
jne 0x140018036
mov rax, rdi
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rax + 1]
mov byte [rax], dl
lea rax, [rax + 1]
test dl, dl
jne 0x140018010
test ebp, ebp
je 0x14001802a
movzx edx, byte [rdi]
cmp dl, 0x22
je 0x140018036
movzx edx, byte [rdi]
xor eax, eax
test ebp, ebp
sete al
mov ebp, eax
movzx eax, dl
cmp eax, 0x24
ja case.0x140018056.3
movzx eax, byte [r10 + rax + 0x18340]
mov ecx, dword [r10 + rax*4 + 0x18330]
add rcx, r10
jmp rcx
test ebp, ebp
je 0x14001806a
test r12d, r12d
je 0x1400182f7
jmp 0x1400182e6
cmp dword [0x14020f4e0], 0
jne 0x1400182f7
mov r9, rdi
mov qword [rsp + 0x90], rdi
mov byte [rdi], 0
inc rdi
jmp 0x140017ff8
test ebp, ebp
jne case.0x140018056.3
mov byte [rdi], bpl
lea r12d, [rbp + 1]
test r9, r9
je 0x1400182f7
lea r15, [r9 + 1]
xor edx, edx
mov rcx, r15
dec esi
call fcn.1401854b4
mov r13d, eax
test eax, eax
jg 0x1400180f5
lea ecx, [rbp + 2]
call fcn.140170e78
mov rcx, rax
lea rdx, str.Failed_to_open__s_n
mov r8, r15
call fcn.14000c360
mov r8d, dword [rsp + 0xa0]
lea r10, [0x140000000]
mov r9, qword [rsp + 0x90]
inc rdi
jmp 0x140017ff8
mov rdx, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xb0]
mov ecx, dword [rdx]
mov eax, ecx
sub eax, dword [r9]
cmp eax, 0xffff
jge 0x140018177
lea eax, [rcx + 0xffff]
mov dword [rdx], eax
mov rcx, qword [rbx]
movsxd rdx, eax
call fcn.14017c340
mov qword [rbx], rax
test rax, rax
jne 0x14001816f
lea ecx, [rax + 2]
call fcn.140170e78
mov rcx, rax
lea rdx, str.Failed_to_allocate_memory_for__s_n
mov r8, r15
call fcn.14000c360
mov ecx, r13d
call fcn.140184c78
mov r8d, dword [rsp + 0xa0]
lea r10, [0x140000000]
mov r9, qword [rsp + 0x90]
inc rdi
jmp 0x140017ff8
mov r9, qword [rsp + 0xb0]
movsxd rax, esi
xor ebx, ebx
mov rdx, qword [r14 + rax*8]
lea rax, [r14 + rax*8]
mov qword [rsp + 0x30], rax
cmp rdx, r15
je 0x1400181b6
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdx + rbx], 0
jne 0x140018195
movsxd rcx, dword [r9]
mov r14, qword [rsp + 0xa8]
movsxd r8, ebx
add rcx, qword [r14]
call fcn.14016bcc0
jmp 0x1400181be
mov r14, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xb0]
mov r8d, 0xfffe
sub r8d, ebx
mov ecx, r13d
movsxd rdx, dword [rax]
movsxd rax, ebx
add rdx, rax
add rdx, qword [r14]
call fcn.140185f74
mov r14d, eax
test eax, eax
jg 0x140018229
mov rcx, r15
call fcn.14017c1d0
mov ecx, r13d
call fcn.140184c78
mov r8d, dword [rsp + 0xa0]
lea r10, [0x140000000]
mov r9, qword [rsp + 0x90]
inc rdi
mov r14, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xa8]
jmp 0x140017ff8
mov ecx, r13d
call fcn.140184c78
mov r9, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xa8]
mov eax, dword [r9]
add eax, r14d
add eax, ebx
movsxd rcx, eax
mov rax, qword [rdx]
mov byte [rcx + rax], 0
movsxd rax, dword [r9]
mov rcx, rax
add rcx, qword [rdx]
lea r8d, [r14 + rax]
mov rax, qword [rsp + 0xb8]
inc r8d
mov qword [rsp + 0x28], rax
add r8d, ebx
mov qword [rsp + 0x20], r9
mov dword [r9], r8d
mov rbx, rdx
mov r8d, dword [rsp + 0xa0]
mov r9, rdx
mov rdx, qword [rsp + 0x30]
sub r8d, esi
inc dword [0x14020f4e0]
call fcn.140017fb0
dec dword [0x14020f4e0]
lea r10, [0x140000000]
mov r14, qword [rsp + 0x98]
xor r9d, r9d
mov r8d, dword [rsp + 0xa0]
add esi, eax
mov qword [rsp + 0x90], r9
inc rdi
jmp 0x140017ff8
test r12d, r12d
je 0x1400182f7
test ebp, ebp
je 0x1400182e6
cmp dl, 0x22
jne 0x1400182e6
cmp byte [rdi + 1], dl
je 0x1400182e6
inc rdi
xor ebp, ebp
movsxd rax, esi
inc esi
mov qword [r14 + rax*8], rdi
cmp esi, r8d
jge 0x140018315
xor r12d, r12d
inc rdi
jmp 0x140017ff8
test ebp, ebp
je 0x14001830a
mov eax, 0xffffffff
jmp 0x140018317
movsxd rax, esi
mov qword [r14 + rax*8], 0
mov eax, esi
mov r15, qword [rsp + 0x48]
mov r13, qword [rsp + 0x50]
add rsp, 0x58
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret