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

Disassembly:
mov eax, dword [esp + 0x18]
sub esp, 0x48
test eax, eax
jne 0x100775b4
mov eax, 1
add esp, 0x48
ret
fldz
push ebp
mov ebp, dword [esp + 0x54]
fstp dword [eax]
test ebp, ebp
jne 0x100775c9
lea eax, [ebp + 1]
pop ebp
add esp, 0x48
ret
push edi
mov edi, dword [esp + 0x54]
test edi, edi
je 0x100775ea
fld dword [esp + 0x5c]
fld dword [esp + 0x60]
fcompp
fnstsw ax
test ah, 5
jnp 0x100775ea
cmp dword [esp + 0x64], 2
jge 0x100775f5
pop edi
mov eax, 1
pop ebp
add esp, 0x48
ret
push esi
push ebp
call sym.leptonlib.dll_lheapGetCount
push edi
mov esi, eax
call sym.leptonlib.dll_lheapGetCount
add esp, 8
cmp eax, esi
jne 0x10077b76
cmp esi, 2
jl 0x10077b76
push 0
lea eax, [esp + 0x38]
push eax
push edi
call sym.leptonlib.dll_numaGetMin
push 0
lea ecx, [esp + 0x40]
push ecx
push edi
call sym.leptonlib.dll_numaGetMax
fld dword [esp + 0x78]
fld dword [esp + 0x4c]
add esp, 0x18
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10077b74
fld dword [esp + 0x64]
fld dword [esp + 0x30]
fcomp st(1)
fnstsw ax
test ah, 5
jnp 0x10077b72
fcompp
push ebx
mov dword [esp + 0x24], 0
fnstsw ax
test ah, 5
jnp 0x10077b65
push ebp
call sym.leptonlib.dll_lheapGetCount
push edi
mov esi, eax
call sym.leptonlib.dll_lheapGetCount
add esp, 8
mov dword [esp + 0x54], eax
cmp eax, esi
jne 0x10077b65
cmp esi, 2
jl 0x10077b65
push 0
lea edx, [esp + 0x3c]
push edx
push edi
call sym.leptonlib.dll_numaGetMin
push 0
lea eax, [esp + 0x44]
push eax
push edi
call sym.leptonlib.dll_numaGetMax
fld dword [esp + 0x7c]
fld dword [esp + 0x50]
add esp, 0x18
fcompp
fnstsw ax
test ah, 0x41
je 0x10077b65
fld dword [esp + 0x68]
fld dword [esp + 0x34]
fcompp
fnstsw ax
test ah, 5
jnp 0x10077b65
push edi
call sym.leptonlib.dll_lheapGetCount
lea ecx, [esp + 0x44]
push ecx
push 0
push edi
mov ebx, eax
call sym.leptonlib.dll_numaGetFValue
mov esi, 1
add esp, 0x10
cmp ebx, esi
jle 0x1007772c
lea edx, [esp + 0x3c]
push edx
push esi
push edi
call sym.leptonlib.dll_numaGetFValue
fld dword [esp + 0x48]
fld dword [esp + 0x4c]
add esp, 0xc
fcompp
fnstsw ax
test ah, 0x41
je 0x10077807
inc esi
cmp esi, ebx
jl 0x10077703
push edi
call sym.leptonlib.dll_numaClone
push ebp
mov dword [esp + 0x1c], eax
call sym.leptonlib.dll_numaClone
mov dword [esp + 0x20], eax
add esp, 8
mov edx, dword [esp + 0x14]
push 0
push edx
call sym.leptonlib.dll_numaGetFArray
mov ebp, eax
mov eax, dword [esp + 0x20]
push 0
push eax
call sym.leptonlib.dll_numaGetFArray
mov ecx, dword [esp + 0x7c]
push 4
push ecx
mov dword [esp + 0x48], eax
call dword [sym.imp.MSVCR90.dll_calloc]
mov ebx, eax
add esp, 0x18
test ebx, ebx
je 0x10077b65
fld dword [esp + 0x68]
mov edi, dword [esp + 0x54]
fld dword [esp + 0x64]
xor esi, esi
fld st(0)
xor ecx, ecx
fsubp st(2)
mov dword [esp + 0x10], esi
fxch st(1)
fst qword [esp + 0x4c]
fild dword [esp + 0x6c]
fsub qword [0x10142240]
fdivp st(1)
fstp dword [esp + 0x34]
fld dword [esp + 0x34]
test edi, edi
jle 0x10077a23
cmp esi, dword [esp + 0x6c]
jge 0x10077a23
fild dword [esp + 0x10]
lea edx, [edi - 1]
cmp ecx, edx
fmul st(1)
fadd st(2)
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
jge 0x100777e8
fld dword [ebp + ecx*4]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x100777e8
inc ecx
cmp ecx, edx
jl 0x100777d6
fld dword [ebp + ecx*4]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10077a06
cmp ecx, edx
jge 0x100777ff
mov edx, ecx
mov dword [ebx + esi*4], edx
jmp 0x10077a16
xor esi, esi
push edi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
call sym.leptonlib.dll_lheapGetCount
mov ebx, eax
lea eax, [esp + 0x4c]
push eax
push esi
push edi
call sym.leptonlib.dll_numaGetFValue
mov esi, 1
add esp, 0x10
cmp ebx, esi
jle 0x10077856
lea ecx, [esp + 0x44]
push ecx
push esi
push edi
call sym.leptonlib.dll_numaGetFValue
fld dword [esp + 0x50]
fld dword [esp + 0x54]
add esp, 0xc
fcompp
fnstsw ax
test ah, 0x41
je 0x1007786b
inc esi
cmp esi, ebx
jl 0x10077831
push edi
call sym.leptonlib.dll_numaCopy
push ebp
mov dword [esp + 0x1c], eax
call sym.leptonlib.dll_numaCopy
jmp 0x1007773c
push edi
call sym.leptonlib.dll_lheapGetCount
mov esi, eax
push 1
push edi
mov dword [esp + 0x58], esi
call sym.leptonlib.dll_numaGetFArray
add esp, 0xc
mov dword [esp + 0x10], eax
test eax, eax
je 0x100779d6
push 4
push esi
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x100779d6
xor ecx, ecx
mov dword [esp + 0x1c], ecx
test esi, esi
jle 0x100778c1
fild dword [esp + 0x1c]
inc ecx
cmp ecx, esi
mov dword [esp + 0x1c], ecx
fstp dword [eax + ecx*4 - 4]
jl 0x100778b0
mov eax, esi
cdq
sub eax, edx
mov ebp, eax
sar ebp, 1
test ebp, ebp
jle 0x1007798a
cmp ebp, esi
jge 0x10077979
mov ecx, dword [esp + 0x10]
lea edi, [ebp*4]
mov edx, ecx
xor ebx, ebx
add edx, edi
mov eax, esi
sub eax, ebp
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
nop
test ebx, ebx
jl 0x10077953
mov esi, dword [esp + 0x20]
sub esi, dword [esp + 0x10]
lea esp, [esp]
fld dword [ecx]
fld dword [edx]
fcompp
fnstsw ax
test ah, 5
jp 0x10077941
fld dword [ecx]
fstp dword [esp + 0x1c]
fld dword [edx]
fstp dword [ecx]
fld dword [esp + 0x1c]
fstp dword [edx]
fld dword [esi + ecx]
fstp dword [esp + 0x1c]
fld dword [esi + edx]
fstp dword [esi + ecx]
fld dword [esp + 0x1c]
fstp dword [esi + edx]
sub ebx, ebp
sub ecx, edi
sub edx, edi
test ebx, ebx
jge 0x10077910
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
inc ebx
add ecx, 4
add edx, 4
sub dword [esp + 0x34], 1
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
jne 0x10077900
mov edi, dword [esp + 0x5c]
mov eax, ebp
cdq
sub eax, edx
sar eax, 1
mov ebp, eax
test ebp, ebp
jg 0x100778d2
push esi
call sym.leptonlib.dll_numaCreate
add esp, 4
xor ebx, ebx
mov ebp, eax
test esi, esi
jle 0x100779b9
jmp 0x100779a0
mov eax, dword [esp + 0x20]
fld dword [eax + ebx*4]
push ecx
fstp dword [esp]
push ebp
call sym.leptonlib.dll_numaAddNumber
inc ebx
add esp, 8
cmp ebx, esi
jl 0x100779a0
mov ecx, dword [esp + 0x10]
mov esi, dword [sym.imp.MSVCR90.dll_free]
push ecx
call esi
mov edx, dword [esp + 0x24]
push edx
call esi
mov eax, ebp
mov ebp, dword [esp + 0x68]
add esp, 8
push eax
push edi
mov dword [esp + 0x40], eax
call sym.leptonlib.dll_numaSortByIndex
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x40]
push eax
push ebp
call sym.leptonlib.dll_numaSortByIndex
lea ecx, [esp + 0x48]
push ecx
mov dword [esp + 0x2c], eax
call sym.leptonlib.dll_numaDestroy
add esp, 0x14
jmp 0x10077743
xor edx, edx
lea eax, [ecx - 1]
test eax, eax
setle dl
dec edx
and eax, edx
mov dword [ebx + esi*4], eax
inc esi
cmp ecx, edi
mov dword [esp + 0x10], esi
jl 0x100777b5
mov eax, dword [esp + 0x6c]
fstp st(1)
push eax
fstp st(0)
call sym.leptonlib.dll_numaCreate
xor esi, esi
add esp, 4
cmp dword [esp + 0x6c], esi
mov edi, eax
mov dword [esp + 0x24], edi
mov dword [esp + 0x10], esi
jle 0x10077acd
lea ebx, [ebx]
fild dword [esp + 0x10]
mov ecx, dword [ebx + esi*4]
push ecx
fmul dword [esp + 0x38]
fadd dword [esp + 0x68]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fsub dword [ebp + ecx*4]
fstp dword [esp + 0x58]
fldz
fld dword [esp + 0x58]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x10077a8c
mov edx, dword [esp + 0x34]
fstp st(0)
fld dword [edx + ecx*4]
jmp 0x10077ab6
fld dword [ebp + ecx*4 + 4]
mov eax, dword [esp + 0x34]
fsub dword [ebp + ecx*4]
fdivp st(1)
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
fld dword [eax + ecx*4 + 4]
fsub dword [eax + ecx*4]
fmulp st(1)
fadd dword [eax + ecx*4]
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
fstp dword [esp]
push edi
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, dword [esp + 0x6c]
mov dword [esp + 0x10], esi
jl 0x10077a50
push ebx
call dword [sym.imp.MSVCR90.dll_free]
lea eax, [esp + 0x18]
push eax
call sym.leptonlib.dll_numaDestroy
lea ecx, [esp + 0x20]
push ecx
call sym.leptonlib.dll_numaDestroy
fild dword [esp + 0x78]
mov edx, dword [esp + 0x30]
add esp, 0xc
fsub qword [0x10142240]
push 0
push edx
fdivr qword [esp + 0x54]
fstp dword [esp + 0x5c]
call sym.leptonlib.dll_numaGetFArray
mov edx, dword [esp + 0x74]
fld dword [eax + edx*4 - 4]
mov ecx, 1
fadd dword [eax]
dec edx
add esp, 8
cmp edx, ecx
fmul qword [0x10142230]
fstp dword [esp + 0x20]
jle 0x10077b40
lea ebx, [ebx]
fld dword [eax + ecx*4]
inc ecx
cmp ecx, edx
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
jl 0x10077b30
fld dword [esp + 0x20]
mov eax, dword [esp + 0x70]
fmul dword [esp + 0x54]
lea ecx, [esp + 0x24]
push ecx
fstp dword [eax]
call sym.leptonlib.dll_numaDestroy
add esp, 4
pop ebx
pop esi
pop edi
xor eax, eax
pop ebp
add esp, 0x48
ret
pop ebx
pop esi
pop edi
mov eax, 1
pop ebp
add esp, 0x48
ret
fstp st(0)
fstp st(0)
pop esi
pop edi
mov eax, 1
pop ebp
add esp, 0x48
ret