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

Disassembly:
sub esp, 0x88
push ebx
mov ebx, dword [esp + 0x90]
test ebx, ebx
jne 0x1000f34c
xor eax, eax
pop ebx
add esp, 0x88
ret
push edi
mov edi, dword [esp + 0x98]
test edi, edi
je 0x1000f84f
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x78]
push edx
push ebx
call sym.leptonlib.dll_pixGetDimensions
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x70]
push edx
push edi
call sym.leptonlib.dll_pixGetDimensions
add esp, 0x20
cmp dword [esp + 0x18], 1
je 0x1000f84f
mov eax, dword [esp + 0x30]
cmp eax, 1
je 0x1000f84f
push esi
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x1000f40d
push esi
call sym.leptonlib.dll_numaGetRefcount
add esp, 4
cmp eax, 8
jne 0x1000f57a
push 0
lea eax, [esp + 0x70]
push eax
lea ecx, [esp + 0x94]
push ecx
push esi
call sym.leptonlib.dll_pixGetDimensions
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x9c]
add esp, 0x10
cmp eax, ecx
mov dword [esp + 0x20], eax
jl 0x1000f3ee
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
mov dword [esp + 0x30], eax
jl 0x1000f402
mov dword [esp + 0x30], ecx
push esi
call sym.leptonlib.dll_boxClone
add esp, 4
jmp 0x1000f431
cmp eax, 0x20
jne 0x1000f57a
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x54]
push 3
push edi
mov dword [esp + 0x28], edx
mov dword [esp + 0x38], eax
call sym.leptonlib.dll_pixGetRGBComponent
add esp, 8
push ebx
mov dword [esp + 0x28], eax
call sym.leptonlib.dll_pixGetColormap
add esp, 4
test eax, eax
je 0x1000f44f
push 3
push ebx
call sym.leptonlib.dll_pixRemoveColormap
add esp, 8
jmp 0x1000f458
push ebx
call sym.leptonlib.dll_boxClone
add esp, 4
push edi
mov dword [esp + 0x18], eax
call sym.leptonlib.dll_pixGetColormap
add esp, 4
test eax, eax
je 0x1000f476
push 3
push edi
call sym.leptonlib.dll_pixRemoveColormap
add esp, 8
jmp 0x1000f47f
push edi
call sym.leptonlib.dll_boxClone
add esp, 4
mov ecx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x14], eax
call sym.leptonlib.dll_numaGetRefcount
mov edx, dword [esp + 0x14]
push edx
mov dword [esp + 0x24], eax
call sym.leptonlib.dll_numaGetRefcount
mov esi, 0x20
add esp, 8
mov dword [esp + 0x34], eax
cmp dword [esp + 0x1c], esi
jne 0x1000f4e2
mov eax, dword [esp + 0x14]
push eax
call sym.leptonlib.dll_boxClone
add esp, 4
mov dword [esp + 0x18], eax
cmp dword [esp + 0x34], esi
je 0x1000f4d3
mov ecx, dword [esp + 0x10]
push ecx
call sym.leptonlib.dll_pixConvertTo32
add esp, 4
jmp 0x1000f526
mov edx, dword [esp + 0x10]
push edx
call sym.leptonlib.dll_boxClone
add esp, 4
jmp 0x1000f526
cmp eax, esi
jne 0x1000f507
mov eax, dword [esp + 0x10]
push eax
call sym.leptonlib.dll_boxClone
mov ecx, dword [esp + 0x18]
push ecx
mov dword [esp + 0x14], eax
call sym.leptonlib.dll_pixConvertTo32
add esp, 8
mov dword [esp + 0x18], eax
jmp 0x1000f52a
mov edx, dword [esp + 0x14]
push 0
push edx
call sym.leptonlib.dll_pixConvertTo8
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
push 0
push eax
call sym.leptonlib.dll_pixConvertTo8
add esp, 0x10
mov dword [esp + 0xc], eax
lea ecx, [esp + 0x14]
push ecx
call sym.leptonlib.dll_pixDestroy
lea edx, [esp + 0x14]
push edx
call sym.leptonlib.dll_pixDestroy
mov eax, dword [esp + 0x20]
push eax
call sym.leptonlib.dll_numaGetRefcount
mov ecx, dword [esp + 0x18]
push ecx
mov dword [esp + 0x2c], eax
call sym.leptonlib.dll_numaGetRefcount
add esp, 0x10
mov dword [esp + 0x34], eax
cmp dword [esp + 0x1c], eax
je 0x1000f586
lea edx, [esp + 0x18]
push edx
call sym.leptonlib.dll_pixDestroy
lea eax, [esp + 0x10]
push eax
call sym.leptonlib.dll_pixDestroy
add esp, 8
pop esi
pop edi
xor eax, eax
pop ebx
add esp, 0x88
ret
mov ecx, dword [esp + 0x18]
push ebp
push ecx
push 0
call sym.leptonlib.dll_pixCopy
lea edx, [esp + 0x24]
mov esi, eax
push edx
mov dword [esp + 0xa0], esi
call sym.leptonlib.dll_pixDestroy
push esi
call sym.leptonlib.dll_pixGetData
mov ebx, eax
mov eax, dword [esp + 0x20]
push eax
call sym.leptonlib.dll_pixGetData
mov ecx, dword [esp + 0x3c]
push ecx
mov edi, eax
call sym.leptonlib.dll_pixGetData
push esi
mov ebp, eax
call sym.leptonlib.dll_dpixGetRefcount
mov edx, dword [esp + 0x2c]
push edx
mov esi, eax
call sym.leptonlib.dll_dpixGetRefcount
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x48]
push eax
call sym.leptonlib.dll_dpixGetRefcount
add esp, 0x24
cmp dword [esp + 0x34], 0
mov dword [esp + 0x54], 0
jle 0x1000f819
mov ecx, dword [esp + 0xac]
add eax, eax
add eax, eax
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x2c]
add eax, eax
add eax, eax
mov dword [esp + 0x84], eax
lea eax, [esi*4]
imul esi, ecx
mov dword [esp + 0x44], ebp
lea ebp, [ebx + esi*4]
mov edx, ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], ebp
test edx, edx
jl 0x1000f7df
cmp edx, dword [esp + 0x68]
jge 0x1000f7df
xor esi, esi
cmp dword [esp + 0x24], esi
jle 0x1000f7df
mov ebx, dword [esp + 0xa8]
mov dword [esp + 0x3c], ebx
lea ebp, [ebp + ebx*4]
lea ecx, [ecx]
test ebx, ebx
jl 0x1000f7c8
cmp ebx, dword [esp + 0x78]
jge 0x1000f7c8
mov ecx, dword [esp + 0x44]
push esi
push ecx
call sym.leptonlib.dll_l_getDataByte
add esp, 8
mov dword [esp + 0x40], eax
test eax, eax
je 0x1000f7c8
fild dword [esp + 0x40]
mov eax, dword [esp + 0x20]
fdiv qword [0x10142238]
fstp dword [esp + 0x40]
cmp eax, 8
je 0x1000f77e
cmp eax, 0x20
jne 0x1000f842
mov eax, dword [ebp]
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x54]
push edx
mov dword [esp + 0x54], eax
mov edi, dword [edi + esi*4]
push eax
call sym.leptonlib.dll_extractRGBValues
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x94]
push ecx
lea edx, [esp + 0xa0]
push edx
push edi
call sym.leptonlib.dll_extractRGBValues
fld dword [esp + 0x60]
fld st(0)
fld1
fsubrp st(1)
fild dword [esp + 0xa8]
fmul st(2)
fild dword [esp + 0x6c]
fmul st(2)
faddp st(1)
call fcn.10140710
fild dword [esp + 0xa0]
mov edi, eax
mov dword [esp + 0x6c], edi
fmul st(2)
fild dword [esp + 0x84]
fmul st(2)
faddp st(1)
call fcn.10140710
fild dword [esp + 0x8c]
mov ebx, eax
mov dword [esp + 0x84], ebx
fmulp st(2)
fimul dword [esp + 0x70]
faddp st(1)
call fcn.10140710
lea ecx, [esp + 0x68]
push ecx
push eax
push ebx
push edi
mov dword [esp + 0x80], eax
call sym.leptonlib.dll_composeRGBPixel
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x5c]
add esp, 0x30
mov dword [ebp], edx
jmp 0x1000f7c8
mov eax, dword [esp + 0x30]
push ebx
push eax
call sym.leptonlib.dll_l_getDataByte
push esi
push edi
mov dword [esp + 0x4c], eax
call sym.leptonlib.dll_l_getDataByte
fld dword [esp + 0x50]
fld st(0)
mov dword [esp + 0x84], eax
fld1
fsubrp st(1)
fimul dword [esp + 0x4c]
fild dword [esp + 0x84]
fmulp st(2)
faddp st(1)
call fcn.10140710
mov ecx, dword [esp + 0x40]
push eax
push ebx
push ecx
call sym.leptonlib.dll_l_setDataByte
add esp, 0x1c
inc esi
inc ebx
add ebp, 4
cmp esi, dword [esp + 0x24]
mov dword [esp + 0x3c], ebx
jl 0x1000f670
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x54]
mov ebp, dword [esp + 0x30]
add ebp, dword [esp + 0x7c]
add edi, dword [esp + 0x84]
mov ecx, dword [esp + 0x8c]
add dword [esp + 0x44], ecx
inc eax
inc edx
cmp eax, dword [esp + 0x34]
mov dword [esp + 0x54], eax
mov dword [esp + 0x30], ebp
mov dword [esp + 0x5c], edx
mov dword [esp + 0x2c], edi
jl 0x1000f640
lea edx, [esp + 0x28]
push edx
call sym.leptonlib.dll_pixDestroy
lea eax, [esp + 0x14]
push eax
call sym.leptonlib.dll_pixDestroy
mov eax, dword [esp + 0x9c]
add esp, 8
pop ebp
pop esi
pop edi
pop ebx
add esp, 0x88
ret
pop ebp
pop esi
pop edi
xor eax, eax
pop ebx
add esp, 0x88
ret
pop edi
xor eax, eax
pop ebx
add esp, 0x88
ret