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

Disassembly:
sub esp, 0x50
push ebx
push ebp
push esi
lea eax, [esp + 0x48]
push edi
lea ecx, [esp + 0x48]
xor esi, esi
push eax
push ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
call fcn.100d3780
mov edi, dword [esp + 0x78]
mov eax, dword [esp + 0x64]
mov ebp, dword [edi + 8]
mov edx, dword [edi]
sub ebp, edx
inc ebp
cmp eax, esi
mov dword [esp + 0x40], ebp
je 0x100147b0
mov ebx, dword [esp + 0x80]
lea eax, [ebp + ebp*2]
push eax
push ebx
call fcn.100a0c80
test eax, eax
mov dword [esp + 0x14], eax
jne 0x100147b7
lea eax, [ebp + ebp*2]
push eax
push ebx
push 0xfffffc18
push 0x6ee
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
mov dword [esp + 0x10], eax
mov esi, eax
jmp 0x100147b7
mov ebx, dword [esp + 0x80]
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x100147ee
lea eax, [ebp + ebp*2]
push eax
push ebx
call fcn.100a0c80
test eax, eax
mov dword [esp + 0x2c], eax
jne 0x100147ee
lea eax, [ebp + ebp*2]
push eax
push ebx
push 0xfffffc18
push 0x6f7
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
add esi, eax
mov eax, dword [esp + 0x74]
test eax, eax
je 0x10014825
lea eax, [ebp + ebp*2]
push eax
push ebx
call fcn.100a0c80
test eax, eax
mov dword [esp + 0x30], eax
jne 0x10014825
lea eax, [ebp + ebp*2]
push eax
push ebx
push 0xfffffc18
push 0x700
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
add esi, eax
mov eax, dword [esp + 0x68]
test eax, eax
je 0x1001485c
lea eax, [ebp + ebp*2]
push eax
push ebx
call fcn.100a0c80
test eax, eax
mov dword [esp + 0x34], eax
jne 0x1001485c
lea eax, [ebp + ebp*2]
push eax
push ebx
push 0xfffffc18
push 0x709
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
add esi, eax
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10014893
lea eax, [ebp + ebp*2]
push eax
push ebx
call fcn.100a0c80
test eax, eax
mov dword [esp + 0x38], eax
jne 0x10014893
lea eax, [ebp + ebp*2]
push eax
push ebx
push 0xfffffc18
push 0x712
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
add esi, eax
test esi, esi
jne 0x10014cd5
mov ebx, dword [edi + 4]
mov eax, dword [edi + 0xc]
cmp ebx, eax
mov dword [esp + 0x28], ebx
jg 0x10014cce
jmp 0x100148b3
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [edi]
mov ecx, dword [esp + 0x64]
push 2
push edx
push ebp
push ebx
push eax
push ecx
call fcn.10005b20
add esi, eax
mov eax, dword [esp + 0x68]
test eax, eax
mov dword [esp + 0x10], esi
je 0x100148ef
mov edx, dword [esp + 0x34]
mov ecx, dword [edi]
push 2
push edx
push ebp
push ebx
push ecx
push eax
call fcn.10005b20
add esi, eax
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x1001490f
mov edx, dword [esp + 0x2c]
mov ecx, dword [edi]
push 2
push edx
push ebp
push ebx
push ecx
push eax
call fcn.10005b20
add esi, eax
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x70]
test eax, eax
je 0x1001492f
mov edx, dword [esp + 0x38]
mov ecx, dword [edi]
push 2
push edx
push ebp
push ebx
push ecx
push eax
call fcn.10005b20
add esi, eax
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x74]
test eax, eax
je 0x1001494f
mov edx, dword [esp + 0x30]
mov ecx, dword [edi]
push 2
push edx
push ebp
push ebx
push ecx
push eax
call fcn.10005b20
add esi, eax
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x48]
test eax, eax
je 0x10014992
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 4]
sub edx, ecx
mov ecx, dword [esp + 0x4c]
inc edx
push edx
push ebx
push ecx
call eax
test eax, eax
jne 0x10014992
mov edx, dword [edi + 0xc]
mov eax, dword [edi + 4]
sub edx, eax
inc edx
push edx
push ebx
push 0xfffff7bf
push 0x733
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
add esi, eax
mov dword [esp + 0x10], esi
test esi, esi
jne 0x10014cce
test ebp, ebp
mov dword [esp + 0x44], esi
jle 0x10014ca0
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0x14]
sub eax, esi
sub ecx, esi
sub edx, esi
sub esi, edi
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], edx
mov dword [esp + 0x3c], esi
jmp 0x100149e0
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
cmp dword [esp + 0x34], 0
je 0x100149f2
add eax, esi
mov al, byte [eax + edi]
mov byte [esp + 0x1c], al
jmp 0x100149f7
mov byte [esp + 0x1c], 0xff
mov eax, dword [esp + 0x38]
test eax, eax
je 0x10014a08
mov al, byte [esi + edi]
mov byte [esp + 0x18], al
jmp 0x10014a0d
mov byte [esp + 0x18], 0
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x10014a20
add ecx, esi
mov al, byte [ecx + edi]
mov byte [esp + 0x24], al
jmp 0x10014a25
mov byte [esp + 0x24], 0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x10014a39
lea ecx, [esi + edx]
mov dl, byte [ecx + edi]
mov byte [esp + 0x20], dl
jmp 0x10014a3e
mov byte [esp + 0x20], 0
mov eax, dword [esp + 0x7c]
cmp eax, 3
ja case.default.0x10014a4b
jmp dword [eax*4 + 0x10014d30]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
and ebp, 0xff
mov ecx, 0xff
mov ebx, dword [esp + 0x1c]
sub ecx, ebp
and edx, 0xff
and ebx, 0xff
imul ecx, edx
mov eax, 0xff
mov esi, dword [esp + 0x24]
sub eax, ebx
and esi, 0xff
imul ecx, eax
mov dword [esp + 0x5c], eax
mov eax, 0x81018203
imul esi, dword [esp + 0x5c]
imul ecx
add edx, ecx
imul esi, ebp
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x81018203
mov ecx, edx
imul esi
add edx, esi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
add cl, dl
xor edx, edx
mov dl, byte [edi]
mov esi, edx
imul esi, ebx
jmp 0x10014bd2
mov eax, dword [esp + 0x1c]
xor ecx, ecx
mov cl, byte [edi]
and eax, 0xff
mov ebp, dword [esp + 0x18]
imul ecx, eax
and ebp, 0xff
mov ebx, 0xff
imul ecx, ebp
sub ebx, eax
mov eax, 0x81018203
imul ecx
add edx, ecx
mov esi, 0xff
sar edx, 0xf
mov ecx, edx
sub esi, ebp
shr ecx, 0x1f
add edx, ecx
mov eax, 0x81018203
mov ecx, edx
mov edx, dword [esp + 0x20]
and edx, 0xff
imul esi, edx
imul esi, ebx
imul esi
add edx, esi
mov esi, dword [esp + 0x24]
and esi, 0xff
imul esi, ebx
imul esi, ebp
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x81018203
add cl, dl
imul esi
add edx, esi
sar edx, 0xf
jmp 0x10014bde
mov ebp, dword [esp + 0x18]
mov ebx, 0xff
and ebp, 0xff
xor ecx, ecx
mov cl, byte [edi]
sub ebx, ebp
mov eax, dword [esp + 0x1c]
imul ecx, ebx
and eax, 0xff
mov esi, 0xff
imul ecx, eax
mov dword [esp + 0x5c], eax
mov eax, 0x81018203
imul ecx
add edx, ecx
mov eax, 0x81018203
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ecx, edx
mov edx, dword [esp + 0x5c]
sub esi, edx
mov edx, dword [esp + 0x20]
and edx, 0xff
imul esi, edx
imul esi, ebx
imul esi
add edx, esi
mov esi, dword [esp + 0x24]
sar edx, 0xf
mov eax, edx
and esi, 0xff
shr eax, 0x1f
add edx, eax
add cl, dl
imul esi, ebp
mov eax, 0x80808081
imul esi
add edx, esi
sar edx, 7
mov eax, edx
mov ebp, dword [esp + 0x40]
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x3c]
shr eax, 0x1f
add edx, eax
add cl, dl
mov byte [edi], cl
jmp 0x10014c7e
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
and esi, 0xff
and ecx, 0xff
mov eax, 0xff
mov edx, 0xff
sub eax, esi
sub edx, ecx
imul eax, edx
mov edx, dword [esp + 0x20]
and edx, 0xff
imul eax, edx
mov edx, dword [esp + 0x24]
and edx, 0xff
imul edx, esi
add eax, edx
xor edx, edx
mov dl, byte [edi]
imul edx, ecx
imul ecx, esi
mov ebx, edx
add ecx, 0xfe01
shl ebx, 8
sub ebx, edx
mov esi, dword [esp + 0x3c]
add eax, ebx
mov ebx, dword [esp + 0x28]
cdq
idiv ecx
mov byte [edi], al
jmp 0x10014c7e
push 0
push eax
push 0xfffffda8
push 0x774
push str.C:_accusoftgear_sourceIMG_PROC_blends.c
call fcn.10046940
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x10014c98
mov eax, dword [esp + 0x44]
inc eax
inc edi
cmp eax, ebp
mov dword [esp + 0x44], eax
jl 0x100149d4
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x10]
test esi, esi
jne 0x10014cce
mov eax, dword [esp + 0x14]
mov ecx, dword [edi]
mov edx, dword [esp + 0x64]
push 2
push eax
push ebp
push ebx
push ecx
push edx
call fcn.10005df0
mov dword [esp + 0x10], eax
mov eax, dword [edi + 0xc]
inc ebx
cmp ebx, eax
mov dword [esp + 0x28], ebx
jle 0x100148af
mov ebx, dword [esp + 0x80]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x10014ce4
push eax
push ebx
call fcn.100a1010
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x10014cf3
push eax
push ebx
call fcn.100a1010
mov eax, dword [esp + 0x30]
test eax, eax
je 0x10014d02
push eax
push ebx
call fcn.100a1010
mov eax, dword [esp + 0x34]
test eax, eax
je 0x10014d11
push eax
push ebx
call fcn.100a1010
mov eax, dword [esp + 0x38]
test eax, eax
je 0x10014d20
push eax
push ebx
call fcn.100a1010
call fcn.10046b40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret