Function at 0x14007f230
Capabilities:
Read file on windows

Disassembly:
push rdi
push r13
push r14
push r15
sub rsp, 0x58
mov rax, qword [0x1402a83b0]
xor rax, rsp
mov qword [rsp + 0x30], rax
cmp word [r8 + 0x22], 0x18
mov rdi, r8
mov r15, rdx
mov r13, rcx
mov qword [rsp + 0x20], rcx
jne 0x14007f28f
movups xmm0, xmmword [str.Image_Magick__DirectClass___RLE_]
movups xmmword [r8 + 0xee], xmm0
movups xmm1, xmmword [0x140213008]
movups xmmword [r8 + 0xfe], xmm1
movzx eax, byte [0x140213018]
mov byte [r8 + 0x10e], al
jmp 0x14007f2d7
movups xmm0, xmmword [str.Image_Magick__DirectClassAlpha___RLE_]
movups xmmword [r8 + 0xee], xmm0
movups xmm1, xmmword [0x140213030]
movups xmmword [r8 + 0xfe], xmm1
mov eax, dword [0x140213040]
mov dword [r8 + 0x10e], eax
movzx eax, word [0x140213044]
mov word [r8 + 0x112], ax
movzx eax, byte [0x140213046]
mov byte [r8 + 0x114], al
mov rdx, r8
mov rcx, r15
call fcn.14005ee10
movzx r14d, ax
test ax, ax
jne 0x14007f4fb
movsx ecx, word [rdi + 0x22]
mov eax, dword [rdi + 0x18]
mov qword [rsp + 0x98], rbx
imul eax, ecx
cdq
mov qword [rsp + 0x50], rbp
xor ebp, ebp
and edx, 7
mov qword [rsp + 0x48], rsi
add eax, edx
mov qword [rsp + 0x40], r12
movzx ebx, bp
sar eax, 3
movzx esi, bp
mov r12d, eax
cmp dword [rdi + 0x1c], ebp
jle 0x14007f4d4
nop dword [rax]
test r14w, r14w
jne 0x14007f4d4
cmp word [rdi + 0x22], 0x18
mov r9, qword [r13]
mov r8d, 1
lea edx, [r8 + 3]
lea rcx, [rsp + 0x28]
je 0x14007f358
lea edx, [r8 + 4]
call fcn.1401c1e14
test ax, ax
je 0x14007f4ce
cmp word [rdi + 0x22], 0x18
jne 0x14007f40e
movzx eax, byte [rsp + 0x2b]
inc eax
test eax, eax
jle 0x14007f4bb
movzx eax, byte [rsp + 0x28]
mov rcx, qword [rdi + 0x10]
movsx rdx, bx
mov byte [rdx + rcx], al
movzx eax, byte [rsp + 0x29]
mov rcx, qword [rdi + 0x10]
inc bx
movsx rdx, bx
inc bx
mov byte [rdx + rcx], al
movzx eax, byte [rsp + 0x2a]
mov rcx, qword [rdi + 0x10]
movsx rdx, bx
inc bx
mov byte [rdx + rcx], al
movsx eax, bx
cmp eax, r12d
jl 0x14007f3f4
or r8d, 0xffffffff
mov r9d, 1
mov rcx, r15
or edx, r8d
call fcn.1400615b0
movzx r14d, ax
test ax, ax
jne 0x14007f4bb
inc si
xor ebx, ebx
movsx eax, si
cmp eax, dword [rdi + 0x1c]
jge 0x14007f4bb
movzx ecx, byte [rsp + 0x2b]
inc bp
inc ecx
movsx eax, bp
cmp eax, ecx
jl 0x14007f380
jmp 0x14007f4bb
movzx eax, byte [rsp + 0x2c]
inc eax
test eax, eax
jle 0x14007f4bb
xor r13d, r13d
movzx eax, byte [rsp + 0x28]
mov rcx, qword [rdi + 0x10]
movsx rdx, bx
mov byte [rdx + rcx], al
movzx eax, byte [rsp + 0x29]
mov rcx, qword [rdi + 0x10]
inc bx
movsx rdx, bx
inc bx
mov byte [rdx + rcx], al
movzx eax, byte [rsp + 0x2a]
mov rcx, qword [rdi + 0x10]
movsx rdx, bx
inc bx
mov byte [rdx + rcx], al
movzx eax, byte [rsp + 0x2b]
mov rcx, qword [rdi + 0x10]
movsx rdx, bx
inc bx
mov byte [rdx + rcx], al
movsx eax, bx
cmp eax, r12d
jl 0x14007f4a1
or r8d, 0xffffffff
mov r9d, 1
mov rcx, r15
or edx, r8d
call fcn.1400615b0
movzx r14d, ax
test ax, ax
jne 0x14007f4b6
inc si
movzx ebx, r13w
movsx eax, si
cmp eax, dword [rdi + 0x1c]
jge 0x14007f4b6
movzx ecx, byte [rsp + 0x2c]
inc bp
inc ecx
movsx eax, bp
cmp eax, ecx
jl 0x14007f420
mov r13, qword [rsp + 0x20]
movsx eax, si
mov ebp, 0
cmp eax, dword [rdi + 0x1c]
jl 0x14007f330
jmp 0x14007f4d4
mov r14d, 4
xor r8d, r8d
xor edx, edx
xor r9d, r9d
mov rcx, r15
call fcn.14005cb20
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x98]
movzx eax, r14w
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1401bd600
add rsp, 0x58
pop r15
pop r14
pop r13
pop rdi
ret