Function at 0x140144ec0
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push r15
sub rsp, 0x50
mov rbp, r8
mov r15, rdx
mov rsi, rcx
test r8, r8
jne 0x140144ef2
xor eax, eax
mov dword [rcx], 1
mov dword [rcx + 0x10], eax
mov qword [rcx + 8], rax
mov rax, rcx
add rsp, 0x50
pop r15
pop rsi
pop rbp
ret
xor edx, edx
mov qword [rsp + 0x70], rbx
mov rcx, rbp
lea r8d, [rdx + 2]
call fcn.1401b56c4
mov rcx, rbp
call fcn.1401be0d8
xor r8d, r8d
xor edx, edx
mov rcx, rbp
mov rbx, rax
call fcn.1401b56c4
test rbx, rbx
jns 0x140144f42
mov rbx, qword [rsp + 0x70]
xor eax, eax
mov dword [rsi + 0x10], eax
mov qword [rsi + 8], rax
mov rax, rsi
mov dword [rsi], 2
add rsp, 0x50
pop r15
pop rsi
pop rbp
ret
mov qword [rsp + 0x78], rdi
lea rcx, [rbx + 1]
mov qword [rsp + 0x80], r14
call fcn.1401b57f8
mov rdi, rax
test rax, rax
jne 0x140144f72
mov dword [rsi + 0x10], eax
mov dword [rsi], 3
mov qword [rsi + 8], rax
jmp 0x1401450ed
mov r9, rbp
mov r8, rbx
mov edx, 1
mov rcx, rdi
call fcn.1401b538c
cmp rax, rbx
je 0x140144fa6
mov rcx, rdi
call fcn.1401b3750
xor eax, eax
mov dword [rsi], 2
mov dword [rsi + 0x10], eax
mov qword [rsi + 8], rax
jmp 0x1401450ed
cmp rbx, 4
jb 0x1401450b0
movzx r8d, byte [rdi]
movzx edx, byte [rdi + 1]
movzx ecx, byte [rdi + 2]
movzx eax, byte [rdi + 3]
test r8b, r8b
jne 0x140144ff1
test dl, dl
jne 0x140144fec
cmp cl, 0xfe
jne 0x140144fe0
cmp al, 0xff
jne 0x1401450b0
mov ecx, 6
jmp 0x1401450bc
test cl, cl
jne 0x1401450b0
cmp al, 0x3c
jmp 0x140144fd0
cmp dl, 0x3c
jmp 0x14014501b
cmp r8b, 0xff
jne 0x140145012
cmp dl, 0xfe
jne 0x1401450b0
test cl, cl
jne 0x140145008
test al, al
je 0x14014503d
mov ecx, 2
jmp 0x1401450bc
cmp r8b, 0xfe
jne 0x14014502b
cmp dl, 0xff
jne 0x1401450b0
mov ecx, 3
jmp 0x1401450bc
cmp r8b, 0x3c
jne 0x1401450b0
test dl, dl
jne 0x140145044
test cl, cl
jne 0x140145008
test al, al
jne 0x140145008
mov ecx, 5
jmp 0x1401450bc
cmp dl, 0x3f
jne 0x1401450b0
cmp cl, 0x78
jne 0x1401450b0
cmp al, 0x6d
jne 0x1401450b0
cmp rbx, 6
jb 0x1401450b0
cmp byte [rdi + 4], 0x6c
jne 0x1401450b0
lfence
movzx eax, byte [rdi + 5]
lea r10, [0x14024f2a0]
test byte [rax + r10], 8
je 0x1401450b0
mov ecx, 6
cmp rbx, 7
jbe 0x1401450b0
mov r8d, 1
lea rdx, [rdi + 6]
sub r8, rdi
nop dword [rax + rax]
movzx eax, byte [rdx]
cmp al, 0x3f
je 0x1401450b0
cmp al, 0x65
jne 0x1401450a1
cmp byte [rdx + 1], 0x6e
je 0x14014510b
inc rdx
inc rcx
lea rax, [r8 + rdx]
cmp rax, rbx
jb 0x140145090
mov byte [rbx + rdi], 0
mov ecx, 1
inc rbx
mov rax, qword [rsp + 0x98]
mov r9, rdi
mov qword [rsp + 0x48], rax
mov r8, r15
mov byte [rsp + 0x40], 1
mov rdx, r15
mov byte [rsp + 0x38], 1
mov dword [rsp + 0x30], ecx
mov rcx, rsi
mov qword [rsp + 0x20], rbx
call fcn.140144c70
mov rdi, qword [rsp + 0x78]
mov rax, rsi
mov r14, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
add rsp, 0x50
pop r15
pop rsi
pop rbp
ret
cmp rcx, rbx
jae 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x6e
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x63
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x6f
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x64
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x69
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x6e
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], 0x67
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401450b0
lfence
nop dword [rax]
movzx eax, byte [rcx + rdi]
test byte [rax + r10], 8
je 0x1401451c8
inc rcx
cmp rcx, rbx
jb 0x1401451b0
jmp 0x1401450b0
cmp al, 0x3d
jne 0x1401450b0
inc rcx
cmp rcx, rbx
jae 0x1401451f7
lfence
nop dword [rax + rax]
movzx eax, byte [rcx + rdi]
test byte [rax + r10], 8
je 0x1401452cf
inc rcx
cmp rcx, rbx
jb 0x1401451e0
mov r8b, 0x27
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], r8b
jne 0x1401450b0
inc rcx
mov r9, rcx
lea rdx, [rcx + rdi]
cmp rcx, rbx
jae 0x140145233
lfence
nop
movzx eax, byte [rcx + rdi]
test byte [rax + r10], 0x40
je 0x140145233
inc rcx
cmp rcx, rbx
jb 0x140145220
mov rax, rcx
sub rax, r9
cmp rcx, rbx
jae 0x1401450b0
cmp byte [rcx + rdi], r8b
jne 0x1401450b0
cmp rax, 0xa
jne 0x1401452e0
movzx eax, byte [rdx]
or al, 0x20
cmp al, 0x69
jne 0x1401450b0
movzx eax, byte [rdx + 1]
or al, 0x20
cmp al, 0x73
jne 0x1401450b0
movzx eax, byte [rdx + 2]
or al, 0x20
cmp al, 0x6f
jne 0x1401450b0
cmp byte [rdx + 3], 0x2d
jne 0x1401450b0
cmp byte [rdx + 4], 0x38
jne 0x1401450b0
cmp byte [rdx + 5], 0x38
jne 0x1401450b0
cmp byte [rdx + 6], 0x35
jne 0x1401450b0
cmp byte [rdx + 7], 0x39
jne 0x1401450b0
cmp byte [rdx + 8], 0x2d
jne 0x1401450b0
cmp byte [rdx + 9], 0x31
jne 0x1401450b0
mov ecx, 9
jmp 0x1401450bc
cmp al, 0x22
jne 0x1401451f7
movzx r8d, al
jmp 0x140145203
cmp rax, 6
jne 0x1401450b0
movzx eax, byte [rdx]
or al, 0x20
cmp al, 0x6c
jne 0x1401450b0
movzx eax, byte [rdx + 1]
or al, 0x20
cmp al, 0x61
jne 0x1401450b0
movzx eax, byte [rdx + 2]
or al, 0x20
cmp al, 0x74
jne 0x1401450b0
movzx eax, byte [rdx + 3]
or al, 0x20
cmp al, 0x69
jne 0x1401450b0
movzx eax, byte [rdx + 4]
or al, 0x20
cmp al, 0x6e
jne 0x1401450b0
cmp byte [rdx + 5], 0x31
jne 0x1401450b0
mov ecx, 9
jmp 0x1401450bc