Function at 0x14000b8e4
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.1401adb48
cmp eax, 0xff
jne 0x14000bb9d
mov rcx, r14
call fcn.1401adb48
cmp eax, 0xd8
jne 0x14000bb9d
cmp dword [rdi + 0x250], 0x14
jge 0x14000bb86
xor ebx, ebx
mov rcx, r14
call fcn.1401adb48
mov esi, eax
cmp eax, 0xff
jne 0x14000b97b
cmp ebx, 6
jge 0x14000bb20
inc ebx
cmp ebx, 7
jl 0x14000b93e
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 0x14000b969
jmp 0x14000bb9d
movsxd rax, dword [rdi + 0x250]
mov rcx, r14
add rax, rax
mov dword [rdi + rax*8 + 0x118], esi
call fcn.1401adb48
mov rcx, r14
mov ebx, eax
call fcn.1401adb48
mov ebp, ebx
mov r12d, eax
shl ebp, 8
or ebp, eax
cmp ebp, 2
jl 0x14000bb6d
movsxd rcx, dword [rdi + 0x250]
add rcx, rcx
mov dword [rdi + rcx*8 + 0x11c], ebp
movsxd rcx, ebp
call fcn.1401b2714
mov r15, rax
test rax, rax
je 0x14000bb54
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.1401b299c
cmp eax, ebx
jne 0x14000bb3b
inc dword [rdi + 0x250]
mov ecx, dword [rdi + 0x250]
cmp esi, 0xd9
jg 0x14000ba88
je 0x14000bb2e
cmp esi, 0xc0
jl 0x14000b92f
cmp esi, 0xc3
jle 0x14000ba75
cmp esi, 0xc4
jle 0x14000b92f
cmp esi, 0xc7
jle 0x14000ba75
cmp esi, 0xc8
jle 0x14000b92f
cmp esi, 0xcb
jle 0x14000ba75
lea eax, [rsi - 0xcd]
cmp eax, 2
ja 0x14000b92f
mov r8d, esi
mov rdx, r15
mov rcx, rdi
call fcn.14000c858
jmp 0x14000b92f
sub esi, 0xda
je 0x14000bb37
sub esi, 6
je 0x14000baeb
sub esi, 1
je 0x14000bac3
cmp esi, 0x1d
jne 0x14000b92f
test r13d, r13d
jne 0x14000baeb
mov r8d, ebp
mov rdx, r15
mov rcx, rdi
call fcn.14000c794
lea r13d, [rsi - 0x1c]
jmp 0x14000b92f
mov eax, dword [r12]
cmp eax, dword [0x14024e6d4]
jne 0x14000baeb
mov r8d, ebp
mov rdx, r12
mov rcx, rdi
call fcn.14000bbbc
mov rcx, qword [rdi]
mov byte [rcx + 0x4bc], al
jmp 0x14000b92f
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.1401adaf4
movsxd rax, dword [rdi + 0x250]
add rax, 0x11
shl rax, 4
and qword [rax + rdi], 0
jmp 0x14000b92f
lea rcx, str.too_many_padding_unsigned_chars_n
call fcn.14000b7c0
jmp 0x14000bb9d
lea rcx, str.No_image_in_jpeg__n
jmp 0x14000bb27
mov al, 1
jmp 0x14000bb9f
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 0x14000bb45
jmp 0x14000bb9d
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 0x14000bb5e
jmp 0x14000bb9d
lea rcx, str.invalid_marker
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000bb77
jmp 0x14000bb9d
lea rcx, str.Too_many_sections_in_jpg_file
sub rdi, rcx
mov al, byte [rcx]
mov byte [rdi + rcx + 8], al
inc rcx
test al, al
jne 0x14000bb90
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