Function at 0x14000ba00
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rdi, rcx
mov r14, rdx
mov rcx, rdx
xor r13d, r13d
call fcn.1401ae63c
cmp eax, 0xff
jne 0x14000bcb9
mov rcx, r14
call fcn.1401ae63c
cmp eax, 0xd8
jne 0x14000bcb9
cmp dword [rdi + 0x250], 0x14
jge 0x14000bca2
xor ebx, ebx
mov rcx, r14
call fcn.1401ae63c
mov esi, eax
cmp eax, 0xff
jne 0x14000ba97
cmp ebx, 6
jge 0x14000bc3c
inc ebx
cmp ebx, 7
jl 0x14000ba5a
lea rcx, str.too_many_padding_unsigned_chars_
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000ba85
jmp 0x14000bcb9
movsxd rax, dword [rdi + 0x250]
mov rcx, r14
add rax, rax
mov dword [rdi + rax*8 + 0x118], esi
call fcn.1401ae63c
mov rcx, r14
mov ebx, eax
call fcn.1401ae63c
mov ebp, ebx
mov r12d, eax
shl ebp, 8
or ebp, eax
cmp ebp, 2
jl 0x14000bc89
movsxd rcx, dword [rdi + 0x250]
add rcx, rcx
mov dword [rdi + rcx*8 + 0x11c], ebp
movsxd rcx, ebp
call fcn.1401b2f8c
mov r15, rax
test rax, rax
je 0x14000bc70
movsxd rcx, dword [rdi + 0x250]
mov r9, r14
add rcx, 0x11
mov edx, 1
add rcx, rcx
mov qword [rdi + rcx*8], rax
mov byte [rax], bl
lea ebx, [rbp - 2]
mov byte [rax + 1], r12b
lea r12, [rax + 2]
movsxd r8, ebx
mov rcx, r12
call fcn.1401b2ec4
cmp eax, ebx
jne 0x14000bc57
inc dword [rdi + 0x250]
mov ecx, dword [rdi + 0x250]
cmp esi, 0xd9
jg 0x14000bba4
je 0x14000bc4a
cmp esi, 0xc0
jl 0x14000ba4b
cmp esi, 0xc3
jle 0x14000bb91
cmp esi, 0xc4
jle 0x14000ba4b
cmp esi, 0xc7
jle 0x14000bb91
cmp esi, 0xc8
jle 0x14000ba4b
cmp esi, 0xcb
jle 0x14000bb91
lea eax, [rsi - 0xcd]
cmp eax, 2
ja 0x14000ba4b
mov r8d, esi
mov rdx, r15
mov rcx, rdi
call fcn.14000c8fc
jmp 0x14000ba4b
sub esi, 0xda
je 0x14000bc53
sub esi, 6
je 0x14000bc07
sub esi, 1
je 0x14000bbdf
cmp esi, 0x1d
jne 0x14000ba4b
test r13d, r13d
jne 0x14000bc07
mov r8d, ebp
mov rdx, r15
mov rcx, rdi
call fcn.14000c69c
lea r13d, [rsi - 0x1c]
jmp 0x14000ba4b
mov eax, dword [r12]
cmp eax, dword [0x1401e5f8c]
jne 0x14000bc07
mov r8d, ebp
mov rdx, r12
mov rcx, rdi
call fcn.14000c760
mov rcx, qword [rdi]
mov byte [rcx + 0x4bc], al
jmp 0x14000ba4b
lea eax, [rcx - 1]
movsxd rcx, eax
add rcx, 0x11
mov dword [rdi + 0x250], eax
add rcx, rcx
mov rcx, qword [rdi + rcx*8]
call fcn.1401af184
movsxd rax, dword [rdi + 0x250]
add rax, 0x11
shl rax, 4
and qword [rax + rdi], 0
jmp 0x14000ba4b
lea rcx, str.too_many_padding_unsigned_chars_n
call fcn.14000b7e4
jmp 0x14000bcb9
lea rcx, str.No_image_in_jpeg__n
jmp 0x14000bc43
mov al, 1
jmp 0x14000bcbb
lea rcx, str.Premature_end_of_file_
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000bc61
jmp 0x14000bcb9
lea rcx, str.Could_not_allocate_memory
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000bc7a
jmp 0x14000bcb9
lea rcx, str.invalid_marker
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000bc93
jmp 0x14000bcb9
lea rcx, [0x1401e5ec0]
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000bcac
xor al, al
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret