Function at 0x140109d12
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x3468
call fcn.1403aaf10
sub rsp, rax
mov rsi, rdx
mov r14, rcx
mov rcx, rdx
call fcn.140109a76
test rax, rax
js 0x140109e42
mov r12, rax
mov rbp, rax
shr rbp, 2
mov rcx, rbp
mov dl, 1
call fcn.1402637f0
mov rbx, rax
mov r15, rdx
lea rdi, [rsp + 0x1268]
mov r8d, 0x1108
mov rcx, rdi
mov rdx, rsi
call fcn.1403abad0
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x38]
cmp rdx, 4
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x88], rbp
jb 0x140109e6d
mov rax, qword [rsp + 0x12b0]
cmp rax, rcx
jbe 0x14010a645
mov rax, qword [rsp + 0x12b8]
imul rbp, rcx, 0x590
mov rax, qword [rax + rbp + 0x4d0]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x12b0]
cmp rax, rcx
jbe 0x14010a645
mov rax, qword [rsp + 0x12b0]
cmp rax, rcx
jbe 0x14010a645
mov bl, byte [rsp + 0x2368]
mov r8b, byte [rsp + 0x2369]
mov rax, qword [rsp + 0x12b8]
lea rsi, [rax + rbp]
add rsi, 0x528
mov r9d, dword [rsi + 0x10]
mov r10d, dword [rsi + 0x14]
mov rax, qword [rsp + 0x12b8]
mov edi, dword [rax + rbp + 0x1f0]
mov r13d, dword [rax + rbp + 0x1f4]
cmp rdx, 3
jbe 0x140109ebc
mov rdx, qword [rsp + 0x12b0]
mov rax, qword [rsp + 0x12b8]
jmp 0x140109ec4
mov qword [r14], 3
mov byte [r14 + 0x38], 9
add rsi, 8
mov rcx, rsi
add rsp, 0x3468
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400b6fb4
cmp rdx, rcx
jbe 0x14010a642
lea rax, [rsp + 0x12b0]
imul rbp, rcx, 0x590
mov rbx, qword [rax + rbp + 0x4d0]
mov qword [rsp + 0x58], rbx
mov bl, byte [rax + 0x10b8]
mov r8b, byte [rax + 0x10b9]
lea rsi, [rsp + rbp + 0x17d8]
mov r9d, dword [rsi + 0x10]
mov r10d, dword [rsi + 0x14]
mov edi, dword [rsi - 0x338]
mov r13d, dword [rsi - 0x334]
lea rax, [rsp + 0x12b0]
cmp rdx, rcx
jbe 0x14010a639
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x3c], r9d
and r12, 0xfffffffffffffffc
imul rcx, rcx, 0x590
mov edx, dword [rax + rcx + 0x528]
mov eax, dword [rax + rcx + 0x530]
xor ecx, ecx
test r8b, r8b
setne cl
cmp bl, 2
movzx ebp, bl
cmovne ecx, ebp
mov ebp, ecx
and ebp, 1
lea rbp, [rbp*4 + 0xc]
imul rax, rdx
mul rbp
seto bl
seto dl
cmp rax, r12
setne al
test bl, bl
jne 0x14010a6a7
not dl
and dl, al
jne 0x14010a6a7
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r14
and cl, 1
or cl, 8
call fcn.1400fe27c
mov ebp, eax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x140], xmm0
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x150], xmm0
lea rdx, str.RGAa_channel_with_the_name____is_already_defined
lea rsi, [rsp + 0x60]
mov r8d, 1
mov rcx, rsi
call fcn.140071d28
lea rdx, [0x1404425c1]
lea rdi, [rsp + 0x168]
mov r8d, 1
mov rcx, rdi
call fcn.140071d28
mov rcx, rsi
mov rdx, rdi
call fcn.1400eec5d
test al, al
jne 0x14010a6c1
lea r15, [rsp + 0x168]
mov rax, qword [r15 + 0x20]
lea rdi, [rsp + 0x1e0]
mov qword [rdi + 0x48], rax
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rdi + 0x38], xmm1
movups xmmword [rdi + 0x28], xmm0
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rsp + 0x70]
movaps xmmword [rdi], xmm0
movaps xmmword [rdi + 0x10], xmm1
mov rax, qword [rsp + 0x80]
mov qword [rdi + 0x20], rax
lea rdx, [0x1404b3fbb]
mov r8d, 1
mov rcx, r15
call fcn.140071d28
mov rcx, rdi
mov rdx, r15
call fcn.1400eebf9
test al, al
jne 0x14010a6ff
mov rax, qword [rsp + 0x188]
lea r14, [rsp + 0x2370]
mov qword [r14 + 0x70], rax
movups xmm0, xmmword [rsp + 0x168]
movups xmm1, xmmword [rsp + 0x178]
movups xmmword [r14 + 0x60], xmm1
movups xmmword [r14 + 0x50], xmm0
lea rsi, [rsp + 0x1e0]
mov ecx, 0xa
mov rdi, r14
rep movsq qword [rdi], qword [rsi]
lea rdx, [0x1404425c2]
lea rsi, [rsp + 0x60]
mov r8d, 1
mov rcx, rsi
call fcn.140071d28
mov r8, qword [r14 + 0x70]
cmp r8, 0x18
jbe 0x14010a093
mov r8, qword [rsp + 0x23c8]
mov rcx, qword [rsp + 0x23d0]
jmp 0x14010a09b
lea rcx, [rsp + 0x23c1]
mov rax, qword [rsp + 0x80]
cmp rax, 0x18
jbe 0x14010a0b5
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
jmp 0x14010a0ba
lea rdx, [rsp + 0x61]
cmp r8, rax
jne 0x14010a0cc
call fcn.1403acae0
test eax, eax
je 0x14010a656
lea rcx, [rsp + 0x2370]
lea rdx, [rsp + 0x60]
call fcn.1400eebf9
test al, al
jne 0x14010a656
movzx r10d, bpl
lea rdx, [rsp + 0x1270]
mov r11d, dword [rsp + 0x3c]
mov ebp, dword [rsp + 0x34]
sub ebp, r11d
mov eax, dword [rsp + 0x38]
sub r13d, eax
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0xf0], rcx
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
lea r8, [rsp + 0x168]
lea r9, [rsp + 0x2370]
mov ecx, 0xf
mov rdi, r8
mov rsi, r9
rep movsq qword [rdi], qword [rsi]
movaps xmm0, xmmword [rsp + 0x140]
lea rbx, [rsp + 0x238]
movups xmmword [rbx - 0x48], xmm0
movaps xmm0, xmmword [rsp + 0x150]
movaps xmmword [r9], xmm0
mov dword [rbx - 0x38], r11d
mov dword [rbx - 0x34], eax
mov qword [rbx - 0x30], r10
mov dword [rbx - 0x28], ebp
mov dword [rbx - 0x24], r13d
movups xmmword [rbx - 0x20], xmm0
mov dword [rbx - 0x10], r11d
mov dword [rbx - 0xc], eax
mov qword [rbx - 8], r10
mov ecx, 0xf
mov rdi, rbx
mov rsi, r8
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0xf0]
mov qword [rbx + 0x98], rax
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movups xmmword [rbx + 0x88], xmm1
movups xmmword [rbx + 0x78], xmm0
mov dword [rbx + 0xa0], 0x3f800000
lea rax, [rsp + 0x28]
mov qword [rbx - 0x58], rax
lea rax, [rsp + 0x58]
mov qword [rbx - 0x50], rax
mov word [rbx + 0xa8], pe_nt_image_headers64
lea rsi, [rsp + 0x2370]
mov r8d, 0x10f8
mov rcx, rsi
call fcn.1403abad0
lea rdi, [rsp + 0xd40]
lea rdx, [rsp + 0x1e0]
mov rcx, rdi
mov r8, rsi
call fcn.1400b7029
cmp dword [rdi + 0x30], 2
jne 0x14010a26b
mov rax, qword [rsp + 0xd60]
lea rdx, [rsp + 0x2370]
mov qword [rdx + 0x20], rax
movups xmm0, xmmword [rsp + 0xd40]
movups xmm1, xmmword [rsp + 0xd50]
movaps xmmword [rdx + 0x10], xmm1
movaps xmmword [rdx], xmm0
lea rcx, [rsp + 0x850]
call fcn.1400fe0ae
mov rbp, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x50]
jmp 0x14010a2a6
lea rsi, [rsp + 0x818]
lea rdx, [rsp + 0xd40]
mov r8d, 0x528
mov rcx, rsi
call fcn.1403abad0
mov rdi, qword [rsi + 0x30]
cmp rdi, 2
mov rbp, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x50]
jne 0x14010a39c
mov rcx, qword [rsp + 0x880]
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rsp + 0x850]
movups xmm1, xmmword [rsp + 0x860]
movups xmm2, xmmword [rsp + 0x870]
movaps xmmword [rsp + 0xb0], xmm2
movaps xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
mov al, byte [rsp + 0x888]
mov edx, dword [rsp + 0x889]
mov dword [rsp + 0x20], edx
mov edx, dword [rsp + 0x88c]
mov dword [rsp + 0x23], edx
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0x110], xmm1
movaps xmmword [rsp + 0x120], xmm2
mov qword [rsp + 0x130], rcx
mov ecx, dword [rsp + 0x20]
mov edx, dword [rsp + 0x23]
mov dword [rsp + 0x2f], edx
mov dword [rsp + 0x2c], ecx
cmp al, 0xc
je 0x14010a60d
mov rcx, qword [rsp + 0x130]
mov qword [rbp + 0x30], rcx
movaps xmm0, xmmword [rsp + 0x100]
movaps xmm1, xmmword [rsp + 0x110]
movaps xmm2, xmmword [rsp + 0x120]
movups xmmword [rbp + 0x20], xmm2
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
mov ecx, dword [rsp + 0x2c]
mov edx, dword [rsp + 0x2f]
mov dword [rbp + 0x39], ecx
mov dword [rbp + 0x3c], edx
mov byte [rbp + 0x38], al
test r15, r15
je 0x14010a625
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.DLL_HeapFree]
jmp 0x14010a625
lea rdx, [rsp + 0x890]
movups xmm0, xmmword [rdx - 0x78]
movups xmm1, xmmword [rdx - 0x68]
movups xmm2, xmmword [rdx - 0x58]
movups xmm3, xmmword [rdx - 0x40]
lea rsi, [rsp + 0x368]
movaps xmmword [rsi - 0x58], xmm2
movaps xmmword [rsi - 0x68], xmm1
movaps xmmword [rsi - 0x78], xmm0
movaps xmmword [rsp + 0x90], xmm3
movups xmm0, xmmword [rdx - 0x30]
movaps xmmword [rsp + 0xa0], xmm0
movups xmm0, xmmword [rdx - 0x20]
movaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rdx - 0x10]
mov qword [rsp + 0xc0], rax
mov bl, byte [rdx - 8]
mov eax, dword [rdx - 7]
mov dword [rsp + 0x20], eax
mov eax, dword [rdx - 4]
mov dword [rsp + 0x23], eax
mov r8d, 0x4b0
mov rcx, rsi
call fcn.1403abad0
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0xb0]
movups xmmword [rsi - 0x40], xmm0
movups xmmword [rsi - 0x30], xmm1
movups xmmword [rsi - 0x20], xmm2
mov rax, qword [rsp + 0xc0]
mov qword [rsi - 0x10], rax
mov byte [rsi - 8], bl
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x23]
mov dword [rsi - 7], eax
mov dword [rsi - 4], ecx
mov qword [rsi - 0x48], rdi
mov rdx, qword [rsi + 0x3f8]
shl rdx, 2
cmp r12, rdx
jne 0x14010a74c
lea rsi, [rsp + 0x790]
mov rdx, qword [rsi - 0x38]
mov rcx, r14
mov r8, r12
call fcn.1403abad0
mov rcx, rsi
call fcn.140079160
lea rcx, [rsp + 0x650]
call fcn.1400ef68c
cmp qword [rsi - 0x40], 0
je 0x14010a4b6
mov r8, qword [rsp + 0x758]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp byte [rsp + 0x3c0], 2
je 0x14010a4cd
lea rcx, [rsp + 0x3c0]
call fcn.140078a14
cmp byte [rsp + 0x3e8], 2
je 0x14010a4e4
lea rcx, [rsp + 0x3e8]
call fcn.140078a14
cmp byte [rsp + 0x410], 2
je 0x14010a4fb
lea rcx, [rsp + 0x410]
call fcn.140078a14
cmp byte [rsp + 0x438], 2
je 0x14010a512
lea rcx, [rsp + 0x438]
call fcn.140078a14
cmp byte [rsp + 0x460], 2
je 0x14010a529
lea rcx, [rsp + 0x460]
call fcn.140078a14
cmp byte [rsp + 0x488], 2
je 0x14010a540
lea rcx, [rsp + 0x488]
call fcn.140078a14
cmp byte [rsp + 0x4b0], 2
je 0x14010a557
lea rcx, [rsp + 0x4b0]
call fcn.140078a14
mov rsi, qword [rsp + 0x388]
test rsi, rsi
je 0x14010a5ab
mov rax, qword [rsp + 0x390]
test rax, rax
je 0x14010a58e
shl rax, 3
lea rdi, [rax + rax*4]
mov rcx, rsi
lea rbx, [rcx + 0x28]
call fcn.140078a14
mov rcx, rbx
add rdi, 0xffffffffffffffd8
jne 0x14010a57c
cmp qword [rsp + 0x380], 0
je 0x14010a5ab
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov r8, qword [rsp + 0x3b0]
test r8, r8
je 0x14010a5d2
cmp qword [rsp + 0x3a8], 0
je 0x14010a5d2
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
cmp byte [rsp + 0x4d8], 2
je 0x14010a5e9
lea rcx, [rsp + 0x4d8]
call fcn.140078a14
cmp byte [rsp + 0x500], 2
je 0x14010a600
lea rcx, [rsp + 0x500]
call fcn.140078a14
lea rcx, [rsp + 0x340]
call fcn.140079160
mov qword [rbp], r15
mov qword [rbp + 8], r14
mov rax, qword [rsp + 0x88]
mov qword [rbp + 0x10], rax
mov byte [rbp + 0x38], 0xc
add rsp, 0x3468
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsopenexr.rs
jmp 0x14010a64f
mov rax, rdx
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsopenexr.rs
mov rdx, rax
call fcn.1403af8b0
ud2
mov qword [rsp + 0x168], rsi
lea rax, [0x140071533]
mov qword [rsp + 0x170], rax
lea rax, [0x1404425f0]
lea rcx, [rsp + 0x1e0]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 2
mov qword [rcx], 0
mov qword [rcx + 0x20], r15
mov qword [rcx + 0x28], 1
lea rdx, [0x140442610]
jmp 0x14010a745
lea rcx, str.byte_buffer_not_large_enough_for_the_specified_dimensions_and_f32_pixels
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsopenexr.rs
mov edx, 0x48
call fcn.1403b2d31
ud2
lea rax, [rsp + 0x1e0]
mov qword [rax], rdi
lea rcx, [0x140071533]
mov qword [rax + 8], rcx
lea rdx, [0x1404425f0]
lea rcx, [rsp + 0x2370]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], 2
mov qword [rcx], 0
mov qword [rcx + 0x20], rax
jmp 0x14010a736
mov qword [rsp + 0x60], r15
lea rax, [0x140071533]
mov qword [rsp + 0x68], rax
lea rax, [0x1404425f0]
lea rcx, [rsp + 0x2370]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 2
mov qword [rcx], 0
mov qword [rcx + 0x20], rsi
mov qword [rcx + 0x28], 1
lea rdx, [0x140442628]
call fcn.1403af870
ud2
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823image_0.24.7._srccodecsopenexr.rs
mov rcx, r12
call fcn.1403afe30
ud2