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

Disassembly:
sub esp, 0xd0
mov eax, dword [0xc97b24]
push ebx
push ebp
push esi
push edi
mov ebx, ecx
push 0
push 8
mov dword [esp + 0x38], ebx
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 1
push 6
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 1
push 0xc
call dword [edx + 0x20]
mov eax, dword [0xc97b24]
push 5
push 0xa
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 6
push 0xb
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 1
push 0xe
call dword [edx + 0x20]
mov eax, dword [0xc97b24]
push 0
push 1
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 5
push 0x1d
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
add esp, 0x40
push 0
push 0x1e
call dword [edx + 0x20]
add esp, 8
call fcn.00821b1e
movsx edi, word [ebx + 4]
and edi, 0x8000001f
jns 0x728e3e
dec edi
or edi, 0xffffffe0
inc edi
lea esi, [edi - 1]
test si, si
mov dword [esp + 0x1c], esi
jge 0x728e51
add esi, 0x20
mov dword [esp + 0x1c], esi
lea ecx, [ebx + 0x32c]
mov byte [esp + 0x17], 0
mov byte [esp + 0x16], 0
call fcn.00502f20
mov dword [esp + 0x2c], 0
mov edi, edi
mov al, byte [esp + 0x16]
test al, al
jne 0x7295a3
movsx ecx, di
mov al, byte [ecx + ebx + 0x30c]
test al, al
je 0x72957b
movsx eax, si
mov dl, byte [eax + ebx + 0x30c]
test dl, dl
je 0x72957b
lea edx, [eax + eax*2]
lea ecx, [ecx + ecx*2]
lea ebp, [ebx + ecx*4]
lea ebx, [ebx + edx*4]
fld dword [ebx + 0xc]
lea edi, [ebx + 0xc]
fsub dword [ebp + 0xc]
lea esi, [ebp + 0xc]
fstp dword [esp + 0x58]
mov eax, dword [esp + 0x58]
fld dword [edi + 4]
mov dword [esp + 0x64], eax
fsub dword [esi + 4]
fstp dword [esp + 0x5c]
fld dword [edi + 8]
mov ecx, dword [esp + 0x5c]
fsub dword [esi + 8]
mov dword [esp + 0x68], ecx
fstp dword [esp + 0x60]
fld dword [esp + 0x58]
mov edx, dword [esp + 0x60]
fmul dword [esp + 0x58]
mov dword [esp + 0x6c], edx
fld dword [esp + 0x5c]
fmul dword [esp + 0x5c]
faddp st(1)
fld dword [esp + 0x60]
fmul dword [esp + 0x60]
faddp st(1)
fcomp dword [0x858fe8]
fnstsw ax
test ah, 5
jp 0x729573
mov al, byte [esp + 0x17]
test al, al
jne 0x7290c2
fld dword [edi]
push 0xb6f9ac
fsub dword [esi]
fstp dword [esp + 0x74]
mov eax, dword [esp + 0x74]
fld dword [edi + 4]
mov dword [esp + 0x68], eax
fsub dword [esi + 4]
lea eax, [esp + 0x68]
push eax
fstp dword [esp + 0x7c]
fld dword [edi + 8]
mov ecx, dword [esp + 0x7c]
fsub dword [esi + 8]
mov dword [esp + 0x70], ecx
lea ecx, [esp + 0xdc]
push ecx
fstp dword [esp + 0x84]
mov edx, dword [esp + 0x84]
mov dword [esp + 0x78], edx
call fcn.0059c730
mov edx, dword [eax]
mov dword [esp + 0x40], edx
fld dword [esp + 0x40]
fmul dword [esp + 0x40]
mov ecx, dword [eax + 4]
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x48], edx
fld dword [esp + 0x48]
fmul dword [esp + 0x48]
add esp, 0xc
mov byte [esp + 0x17], 1
faddp st(1)
fld dword [esp + 0x38]
fmul dword [esp + 0x38]
faddp st(1)
fsqrt
fdivr dword [0x858c28]
fld dword [esp + 0x34]
fmul st(1)
fstp dword [esp + 0x34]
fld dword [esp + 0x38]
fmul st(1)
fstp dword [esp + 0x38]
fld dword [esp + 0x3c]
fmul st(1)
fstp dword [esp + 0x3c]
fstp st(0)
call fcn.00821b1e
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul dword [0x858c7c]
fstp dword [esp + 0x40]
call fcn.00821b1e
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul dword [0x858c7c]
fstp dword [esp + 0x44]
call fcn.00821b1e
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
lea ecx, [esp + 0x40]
fmul dword [0x858c7c]
fstp dword [esp + 0x48]
call fcn.0059c910
fld dword [esp + 0x40]
fmul dword [0x858c28]
fstp dword [esp + 0x40]
fld dword [esp + 0x44]
fmul dword [0x858c28]
fstp dword [esp + 0x44]
fld dword [esp + 0x48]
fmul dword [0x858c28]
fstp dword [esp + 0x48]
call fcn.00821b1e
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul dword [0x858c7c]
fstp dword [esp + 0x4c]
call fcn.00821b1e
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul dword [0x858c7c]
fstp dword [esp + 0x50]
call fcn.00821b1e
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
lea ecx, [esp + 0x4c]
fmul dword [0x858c7c]
fstp dword [esp + 0x54]
call fcn.0059c910
fld dword [esp + 0x4c]
fmul dword [0x858c28]
fstp dword [esp + 0x4c]
fld dword [esp + 0x50]
fmul dword [0x858c28]
fstp dword [esp + 0x50]
fld dword [esp + 0x54]
fmul dword [0x858c28]
fstp dword [esp + 0x54]
movsx eax, word [esp + 0x2c]
mov ecx, eax
imul ecx, eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], eax
fild dword [esp + 0x10]
fmul dword [0x864e10]
fadd dword [0x858b3c]
fild dword [esp + 0x18]
fmul dword [0x864e10]
fmul dword [0x859a44]
fsubr dword [0x859a44]
call fcn.00821b40
shl eax, 0x18
mov ecx, eax
or ecx, 0xc8c8ff
mov eax, 0xc80568
nop
mov dword [eax], ecx
add eax, 0x24
cmp eax, 0xc80718
jl 0x729110
fld dword [esp + 0x34]
fmul st(1)
fld dword [esi]
fsub st(1)
fstp dword [0xc80550]
fld dword [esp + 0x38]
fmul st(2)
fld dword [ebp + 0x10]
fsub st(1)
fstp dword [0xc80554]
fld dword [esp + 0x3c]
fmul st(3)
fstp dword [esp + 0x10]
fld dword [ebp + 0x14]
fsub dword [esp + 0x10]
fstp dword [0xc80558]
fld st(1)
fadd dword [esi]
fstp dword [0xc80574]
fld st(0)
fadd dword [ebp + 0x10]
fstp dword [0xc80578]
fld dword [esp + 0x10]
fadd dword [ebp + 0x14]
fstp dword [0xc8057c]
fld dword [edi]
fsub st(2)
fstp dword [0xc80598]
fld dword [ebx + 0x10]
fsub st(1)
fstp dword [0xc8059c]
fld dword [ebx + 0x14]
fsub dword [esp + 0x10]
fstp dword [0xc805a0]
fxch st(1)
fadd dword [edi]
fstp dword [0xc805bc]
fadd dword [ebx + 0x10]
fstp dword [0xc805c0]
fld dword [esp + 0x10]
fadd dword [ebx + 0x14]
fstp dword [0xc805c4]
fld dword [esp + 0x40]
fmul st(1)
fld dword [esi]
fsub st(1)
fstp dword [0xc805e0]
fld st(1)
fmul dword [esp + 0x44]
fld dword [ebp + 0x10]
fsub st(1)
fstp dword [0xc805e4]
fld st(2)
fmul dword [esp + 0x48]
fstp dword [esp + 0x10]
fld dword [ebp + 0x14]
fsub dword [esp + 0x10]
fstp dword [0xc805e8]
fld st(1)
fadd dword [esi]
fstp dword [0xc80604]
fld st(0)
fadd dword [ebp + 0x10]
fstp dword [0xc80608]
fld dword [esp + 0x10]
fadd dword [ebp + 0x14]
fstp dword [0xc8060c]
fld dword [edi]
fsub st(2)
fstp dword [0xc80628]
fld dword [ebx + 0x10]
fsub st(1)
fstp dword [0xc8062c]
fld dword [ebx + 0x14]
fsub dword [esp + 0x10]
fstp dword [0xc80630]
fxch st(1)
fadd dword [edi]
fstp dword [0xc8064c]
fadd dword [ebx + 0x10]
fstp dword [0xc80650]
fld dword [esp + 0x10]
push 0
fadd dword [ebx + 0x14]
push 0
push 0
push 0
fstp dword [0xc80654]
push 0
fld dword [esp + 0x60]
push 0
fmul st(1)
push 1
fld dword [esi]
push 1
lea edx, [esp + 0xa8]
fsub st(1)
push edx
lea eax, [esp + 0xb0]
push eax
fstp dword [0xc80670]
push esi
fld st(1)
push edi
fmul dword [esp + 0x80]
fld dword [ebp + 0x10]
fsub st(1)
fstp dword [0xc80674]
fxch st(2)
fmul dword [esp + 0x84]
fstp dword [esp + 0x40]
fld dword [ebp + 0x14]
fsub dword [esp + 0x40]
fstp dword [0xc80678]
fld st(0)
fadd dword [esi]
fstp dword [0xc80694]
fxch st(1)
fld st(0)
fadd dword [ebp + 0x10]
fstp dword [0xc80698]
fld dword [esp + 0x40]
fadd dword [ebp + 0x14]
fstp dword [0xc8069c]
fld dword [edi]
fsub st(2)
fstp dword [0xc806b8]
fld dword [ebx + 0x10]
fsub st(1)
fstp dword [0xc806bc]
fld dword [ebx + 0x14]
fsub dword [esp + 0x40]
fstp dword [0xc806c0]
fxch st(1)
fadd dword [edi]
fstp dword [0xc806dc]
fadd dword [ebx + 0x10]
fstp dword [0xc806e0]
fld dword [esp + 0x40]
fadd dword [ebx + 0x14]
fstp dword [0xc806e4]
call fcn.0056ba00
add esp, 0x30
test al, al
je 0x729546
push 0x3e4ccccd
push 0x3f800000
push 0x3f400000
push 0x3e19999a
push 0x3f800000
push 0x3f800000
push 0x3f800000
lea ecx, [esp + 0xd4]
call fcn.004ab290
fld dword [esp + 0x9c]
fmul dword [0x858b3c]
fstp dword [esp + 0x20]
fld dword [esp + 0xa0]
fmul dword [0x858b3c]
fstp dword [esp + 0x24]
fld dword [esp + 0xa4]
fmul dword [0x858b3c]
fstp dword [esp + 0x28]
call fcn.00821b1e
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fmul dword [0x858c7c]
fmul dword [0x872a64]
fadd dword [0x858cc4]
fmul dword [esp + 0x20]
fstp dword [esp + 0x20]
call fcn.00821b1e
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fmul dword [0x858c7c]
fmul dword [0x872a64]
fadd dword [0x858cc4]
fmul dword [esp + 0x24]
fstp dword [esp + 0x24]
call fcn.00821b1e
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
xor esi, esi
mov dword [esp + 0x10], esi
fmul dword [0x858c7c]
fmul dword [0x872a64]
fadd dword [0x858cc4]
fmul dword [esp + 0x28]
fstp dword [esp + 0x28]
fld dword [esp + 0x20]
fmul dword [0x858cc8]
fstp dword [esp + 0x7c]
fld dword [esp + 0x24]
fmul dword [0x858cc8]
fstp dword [esp + 0x80]
fld dword [esp + 0x28]
fmul dword [0x858cc8]
fstp dword [esp + 0x84]
jmp 0x729440
fld dword [0xb7cb5c]
fmul dword [0x858b38]
fmul dword [0x858c4c]
call fcn.00821b40
test eax, eax
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
jge 0x729469
fadd dword [0x858c54]
fild dword [esp + 0x10]
push 0
push 0x3f19999a
push 0x3f99999a
fdiv st(1)
push 0xbf800000
lea ecx, [esp + 0xc8]
push ecx
mov ecx, dword [0xa9ae38]
lea edx, [esp + 0x34]
lea eax, [esp + 0xa0]
fstp dword [esp + 0x2c]
mov edi, dword [esp + 0x2c]
push edi
fstp st(0)
push edx
push eax
call fcn.004aa440
push 0
push 0x3f19999a
push 0x3f99999a
push 0xbf800000
lea ecx, [esp + 0xc8]
push ecx
mov ecx, dword [0xa9ae24]
push edi
lea edx, [esp + 0x94]
push edx
lea eax, [esp + 0xa8]
push eax
call fcn.004aa440
inc esi
cmp esi, 2
mov dword [esp + 0x10], esi
jl 0x729440
fld dword [esp + 0x28]
mov edx, dword [esp + 0x8c]
fmul dword [esp + 0x28]
mov eax, dword [esp + 0x90]
fld dword [esp + 0x24]
sub esp, 0x10
fmul dword [esp + 0x34]
mov ecx, esp
faddp st(1)
fld dword [esp + 0x30]
fmul dword [esp + 0x30]
faddp st(1)
fsqrt
fstp dword [esp + 0xc]
mov dword [ecx], edx
mov edx, dword [esp + 0xa4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0x40]
add ecx, 0x32c
call fcn.00502f50
mov byte [esp + 0x16], 1
push 0x10
push 0
push 0xc
push 0xc80550
call fcn.007ef450
add esp, 0x10
test eax, eax
je 0x729573
push 0x12
push 0xc80700
push 3
call fcn.007ef550
add esp, 0xc
call fcn.007ef520
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
inc edx
mov edi, esi
dec esi
test si, si
mov dword [esp + 0x2c], edx
mov dword [esp + 0x1c], esi
jge 0x729597
add esi, 0x20
mov dword [esp + 0x1c], esi
cmp word [esp + 0x2c], 0x1f
jl 0x728e70
mov eax, dword [0xc97b24]
push 1
push 8
call dword [eax + 0x20]
mov ecx, dword [0xc97b24]
push 0
push 0xc
call dword [ecx + 0x20]
mov edx, dword [0xc97b24]
push 0
push 0xe
call dword [edx + 0x20]
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd0
ret