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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
push ebx
push esi
mov esi, dword [ebp + 8]
mov eax, ecx
mov dword [esp + 0x34], eax
mov ebx, edx
mov dword [esp + 0x40], ebx
mov dword [esp + 0xc], esi
push edi
mov edi, dword [ebp + 0xc]
test eax, eax
jne 0x100ede93
push 0x80004003
call dword [sym.imp.PhotoBase.dll_void___stdcall_Base::Throw_long_int_]
cmp ebx, 8
ja 0x100ee442
mov ecx, dword [ebp + 0x10]
cmp ebx, ecx
jb 0x100ee442
mov eax, dword [esi]
add edi, 0xc
mov dword [esp + 0x60], eax
mov eax, dword [esi + 4]
mov dword [esp + 0x64], eax
mov eax, dword [esi + 8]
mov dword [esp + 0x68], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x6c], eax
test ecx, ecx
je 0x100edef8
mov esi, edi
mov ebx, ecx
lea ecx, [ecx]
mov eax, dword [esi - 0xc]
lea ecx, [esi - 0xc]
cmp eax, dword [esi - 4]
jge 0x100edeec
mov eax, dword [esi - 8]
cmp eax, dword [esi]
jge 0x100edeec
push ecx
lea ecx, [esp + 0x64]
call fcn.10055510
add esi, 0x10
sub ebx, 1
jne 0x100eded0
mov ebx, dword [esp + 0x44]
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x100edf09
push eax
lea ecx, [esp + 0x64]
call fcn.10044da0
mov edx, dword [esp + 0x38]
lea eax, [ebx*8 + 0xc]
fld1
xor esi, esi
mov dword [esp + 0x54], esi
lea ebx, [eax + edx]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x5c], ebx
add ebx, eax
mov dword [esp + 0x24], ebx
mov dword [esp + 0x44], ebx
add ebx, eax
mov ecx, ebx
mov dword [esp + 0x58], ebx
add ebx, eax
mov dword [esp + 0x1c], ecx
add eax, ebx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x34], eax
cmp dword [ebp + 0x10], esi
jbe 0x100ee1f7
mov esi, dword [esp + 0x34]
lea ebx, [ecx + 0xc]
fld qword [0x10035e20]
lea eax, [edx + 0x10]
fld dword [0x100361b0]
mov dword [esp + 0x28], esi
sub dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
sub dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x80]
mov esi, ecx
sub esi, dword [esp + 0x1c]
sub ecx, edx
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x1c]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x20]
sub esi, dword [esp + 0x1c]
sub dword [esp + 0x20], edx
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x34]
sub esi, edx
mov dword [esp + 0x30], eax
sub dword [esp + 0x24], edx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
mov dword [esp + 0x84], ecx
mov edx, dword [edi - 0xc]
mov dword [esp + 0x40], edx
cmp edx, dword [edi - 4]
jge 0x100ee158
mov ecx, dword [edi - 8]
cmp ecx, dword [edi]
jge 0x100ee158
mov eax, edx
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [edi - 4]
cdq
sub eax, ecx
sbb edx, esi
cmp edx, 0xffffffff
jl 0x100ee44d
jg 0x100ee007
cmp eax, 0x80000000
jb 0x100ee44d
test edx, edx
jg 0x100ee44d
jl 0x100ee01c
cmp eax, 0x7fffffff
ja 0x100ee44d
mov ecx, dword [edi - 8]
mov dword [esp + 0x3c], eax
mov eax, dword [edi]
cdq
mov dword [esp + 0x18], eax
mov esi, edx
mov eax, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x18]
cdq
sub ecx, eax
mov dword [esp + 0x48], ecx
sbb esi, edx
add ecx, 0x80000000
adc esi, 0
test esi, esi
ja 0x100ee44d
jb 0x100ee05b
cmp ecx, 0xffffffff
ja 0x100ee44d
fild dword [esp + 0x40]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fsub st(2)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fild dword [esp + 0x3c]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fdivr st(4)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fild dword [esp + 0x60]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fsub st(2)
fmul st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x18]
fstp dword [eax + ebx]
mov eax, dword [esp + 0x2c]
fld dword [esp + 0x18]
fst dword [ebx]
fstp dword [eax + ebx]
fild dword [esp + 0x14]
mov eax, dword [esp + 0x30]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fild dword [esp + 0x48]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fdivr st(6)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fild dword [esp + 0x64]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fsub st(2)
fmul st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fst dword [ebx + 4]
fst dword [ecx + eax]
fstp dword [eax]
fild dword [esp + 0x68]
mov ecx, dword [esp + 0x70]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fsubrp st(4)
fxch st(3)
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fst dword [esp + 0x14]
fstp dword [ecx + ebx]
mov ecx, dword [esp + 0x74]
fld dword [esp + 0x14]
fst dword [ecx + ebx]
mov ecx, dword [esp + 0x1c]
fstp dword [ecx + ebx]
fild dword [esp + 0x6c]
fstp dword [esp + 0x14]
fsubr dword [esp + 0x14]
fmulp st(1)
fstp dword [esp + 0x3c]
jmp 0x100ee18d
mov ecx, dword [esp + 0x28]
fst dword [ecx + ebx]
mov ecx, dword [esp + 0x2c]
fst dword [ebx]
fst dword [ecx + ebx]
mov ecx, dword [esp + 0x20]
fst dword [ebx + 4]
fst dword [ecx + eax]
mov ecx, dword [esp + 0x70]
fst dword [eax]
fst dword [ecx + ebx]
mov ecx, dword [esp + 0x74]
fst dword [ecx + ebx]
mov ecx, dword [esp + 0x1c]
fst dword [ecx + ebx]
fst dword [esp + 0x3c]
fld dword [esp + 0x3c]
mov esi, eax
mov edx, dword [esp + 0x24]
mov ecx, eax
mov ebx, dword [esp + 0x7c]
add edi, 0x10
mov dword [esp + 0x18], eax
add ebx, 8
mov eax, dword [esp + 0x78]
fst dword [esp + 0x14]
fld dword [esp + 0x14]
mov dword [esp + 0x40], eax
fst dword [eax + esi]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x84]
mov dword [esp + 0x7c], ebx
fstp dword [esi + eax]
mov esi, dword [esp + 0x54]
mov eax, dword [esp + 0x30]
inc esi
add eax, 8
mov dword [esp + 0x54], esi
fstp dword [edx + ecx]
mov dword [esp + 0x30], eax
cmp esi, dword [ebp + 0x10]
jb 0x100edfc7
mov ebx, dword [esp + 0x80]
fstp st(0)
fstp st(0)
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 8]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [edi]
cdq
sub ecx, eax
mov dword [esp + 0x48], ecx
sbb esi, edx
cmp esi, 0xffffffff
jl 0x100ee451
jg 0x100ee225
cmp ecx, 0x80000000
jb 0x100ee451
test esi, esi
jg 0x100ee451
jl 0x100ee23b
cmp ecx, 0x7fffffff
ja 0x100ee451
mov eax, dword [esp + 0x60]
sub eax, dword [edi]
add eax, eax
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, dword [esp + 0x34]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fild dword [esp + 0x48]
fstp dword [esp + 0x10]
fdiv dword [esp + 0x10]
fsub st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fst dword [esp + 0x10]
fstp dword [eax]
mov eax, dword [esp + 0x58]
fld dword [esp + 0x10]
fst dword [eax]
mov eax, dword [esp + 0x38]
fstp dword [eax]
mov eax, dword [edi + 4]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [edi + 0xc]
cdq
sub eax, ecx
mov dword [esp + 0x48], eax
sbb edx, esi
cmp edx, 0xffffffff
jl 0x100ee451
jg 0x100ee2ad
cmp eax, 0x80000000
jb 0x100ee451
test edx, edx
jg 0x100ee451
jl 0x100ee2c2
cmp eax, 0x7fffffff
ja 0x100ee451
mov eax, dword [edi + 4]
sub eax, dword [esp + 0x64]
add eax, eax
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, dword [esp + 0x58]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fild dword [esp + 0x48]
fstp dword [esp + 0x10]
fdiv dword [esp + 0x10]
fadd st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fst dword [esp + 0x10]
fstp dword [eax + 4]
mov eax, dword [esp + 0x5c]
fld dword [esp + 0x10]
fst dword [eax + 4]
mov eax, dword [esp + 0x38]
fstp dword [eax + 4]
mov eax, dword [edi + 8]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [edi]
cdq
sub ecx, eax
mov dword [esp + 0x48], ecx
sbb esi, edx
cmp esi, 0xffffffff
jl 0x100ee451
jg 0x100ee338
cmp ecx, 0x80000000
jb 0x100ee451
test esi, esi
jg 0x100ee451
jl 0x100ee34e
cmp ecx, 0x7fffffff
ja 0x100ee451
mov eax, dword [esp + 0x68]
sub eax, dword [edi]
add eax, eax
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, dword [esp + 0x44]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fild dword [esp + 0x48]
fstp dword [esp + 0x10]
fdiv dword [esp + 0x10]
fsub st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fst dword [esp + 0x10]
fstp dword [ebx]
fld dword [esp + 0x10]
fst dword [eax]
mov eax, dword [esp + 0x5c]
fstp dword [eax]
mov eax, dword [edi + 4]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [edi + 0xc]
cdq
sub eax, ecx
mov dword [esp + 0x48], eax
sbb edx, esi
cmp edx, 0xffffffff
jl 0x100ee451
jg 0x100ee3bc
cmp eax, 0x80000000
jb 0x100ee451
test edx, edx
jg 0x100ee451
jl 0x100ee3d1
cmp eax, 0x7fffffff
ja 0x100ee451
mov eax, dword [edi + 4]
sub eax, dword [esp + 0x6c]
add eax, eax
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, dword [esp + 0x34]
pop edi
pop esi
fstp dword [esp + 8]
fld dword [esp + 8]
fild dword [esp + 0x40]
fstp dword [esp + 8]
fdiv dword [esp + 8]
faddp st(1)
fstp dword [esp + 8]
fld dword [esp + 8]
fst dword [esp + 8]
fstp dword [eax + 4]
fld dword [esp + 8]
fst dword [ebx + 4]
fstp dword [ecx + 4]
fld1
fst dword [eax + 8]
mov eax, dword [esp + 0x50]
fst dword [ebx + 8]
pop ebx
fst dword [eax + 8]
mov eax, dword [esp + 0x50]
fst dword [ecx + 8]
fst dword [eax + 8]
mov eax, dword [esp + 0x2c]
fstp dword [eax + 8]
mov esp, ebp
pop ebp
ret 0x10
push 0x80070057
call dword [sym.imp.PhotoBase.dll_void___stdcall_Base::Throw_long_int_]
fstp st(0)
fstp st(1)
fstp st(0)
call fcn.1003ecc0
int3