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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x8c
mov ebx, dword [esp + 0xa8]
mov ebp, dword [esp + 0xac]
mov ecx, 0x34
xor eax, eax
mov edi, dword [esp + 0xa0]
rep stosb byte es:[edi], al
mov eax, dword [ebx]
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x24], eax
fld dword [0x6480b3ac]
push eax
fimul dword [esp]
pop esi
fstp qword [esp]
call fcn.647d44a4
fdiv qword [0x6480b410]
fadd qword [0x6480b430]
fstp qword [esp]
call fcn.647d44b4
fld1
fsubp st(1)
fnstcw word [esp + 0x7a]
mov ax, word [esp + 0x7a]
mov ah, 0xc
mov word [esp + 0x78], ax
mov eax, dword [esp + 0xa0]
fldcw word [esp + 0x78]
fistp dword [eax + 0x20]
fldcw word [esp + 0x7a]
fild dword [esp + 0xb0]
mov dword [esp + 0x74], ebp
fild dword [esp + 0x74]
fstp qword [esp + 0x48]
fld dword [0x6480b400]
fmul st(1)
fld qword [0x6480b430]
fmulp st(1)
fdiv qword [esp + 0x48]
fstp qword [esp]
fstp dword [esp + 0x20]
call fcn.647d44a4
fld dword [0x6480b3e4]
fmul st(1), st(0)
fld dword [0x6480b3dc]
fsub st(2), st(0)
fxch st(2)
mov eax, dword [esp + 0xa0]
mov eax, dword [eax + 0x20]
mov ecx, eax
inc ecx
mov esi, 1
mov eax, esi
shl eax, cl
push eax
fimul dword [esp]
fisub dword [ebx]
fnstcw word [esp + 0x7e]
mov ax, word [esp + 0x7e]
mov ah, 0xc
mov word [esp + 0x7c], ax
mov edx, dword [esp + 0xa4]
fldcw word [esp + 0x7c]
fistp dword [edx + 0x1c]
fldcw word [esp + 0x7e]
fld dword [0x6480b400]
mov dword [esp], ebp
fiadd dword [esp]
pop edi
fld dword [esp + 0x20]
fmulp st(1)
fld qword [0x6480b430]
fmulp st(1)
fdiv qword [esp + 0x48]
fstp qword [esp]
fxch st(1)
fstp qword [esp + 0x10]
fstp qword [esp + 0x20]
call fcn.647d44a4
fld qword [esp + 0x20]
fmulp st(1)
fld qword [esp + 0x10]
fsubp st(1)
mov eax, dword [esp + 0xa0]
mov eax, dword [eax + 0x20]
mov ecx, eax
inc ecx
shl esi, cl
push esi
fimul dword [esp]
pop eax
fadd qword [0x6480b430]
fnstcw word [esp + 0x7a]
mov ax, word [esp + 0x7a]
mov ah, 0xc
mov word [esp + 0x78], ax
fldcw word [esp + 0x78]
fistp dword [esp + 0x74]
fldcw word [esp + 0x7a]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0xa0]
sub eax, dword [edx + 0x1c]
inc eax
mov dword [edx + 0x28], eax
lea ecx, [ebp*4]
mov dword [esp + 0x70], ecx
mov dword [esp], ecx
call fcn.647d4284
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x10], eax
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.647d4284
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x14], eax
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.647d4284
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x18], eax
mov ecx, dword [esp + 0xa4]
mov dword [edx + 4], ecx
mov dword [edx], ebp
mov eax, dword [esp + 0xb0]
mov dword [edx + 0x2c], eax
cmp eax, 0x658f
jg 0x647247c6
mov dword [edx + 0x30], 0
xor ebx, ebx
xor esi, esi
fild dword [esp + 0xb0]
fstp qword [esp + 0x50]
mov edi, dword [esp + 0xa0]
inc esi
fld dword [0x6480b3e8]
push esi
fimul dword [esp]
pop ecx
fsub dword [0x6480b3a8]
fadd dword [0x6480b3dc]
fmul dword [0x6480b3e0]
fstp qword [esp]
call fcn.647d4484
fadd st(0)
fmul qword [esp + 0x48]
fdiv qword [esp + 0x50]
fadd dword [0x6480b380]
fstp qword [esp]
call fcn.647d44b4
fnstcw word [esp + 0x7a]
mov ax, word [esp + 0x7a]
mov ah, 0xc
mov word [esp + 0x78], ax
fldcw word [esp + 0x78]
fistp dword [esp + 0x74]
fldcw word [esp + 0x7a]
mov eax, dword [esp + 0x74]
fld dword [esi*4 + 0x6480541c]
cmp ebx, eax
jge 0x647242d0
fld dword [esi*4 + 0x64805420]
fsub st(1)
mov edx, eax
sub edx, ebx
push edx
fidiv dword [esp]
pop edx
cmp ebx, ebp
jge 0x647242d4
mov edx, dword [edi + 0x10]
fld dword [0x6480b3d8]
fld st(2)
fadd st(1)
fstp dword [edx + ebx*4]
fxch st(2)
fadd st(1)
inc ebx
cmp eax, ebx
jle 0x647242da
cmp ebx, ebp
je 0x647242e4
fld st(0)
fadd st(3)
fstp dword [edx + ebx*4]
fadd st(1)
inc ebx
cmp ebx, eax
jne 0x647242b4
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x647242ea
fstp st(0)
jmp 0x647242ea
fstp st(0)
fstp st(0)
jmp 0x647242ea
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0x647242ea
fstp st(0)
fstp st(0)
fstp st(0)
cmp esi, 0x57
jne 0x6472421c
cmp ebp, ebx
jle 0x64724317
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x10]
fld dword [edx + ebx*4 - 4]
lea eax, [edx + ebx*4]
add edx, dword [esp + 0x70]
fst dword [eax]
add eax, 4
cmp eax, edx
jne 0x6472430c
fstp st(0)
test ebp, ebp
jle 0x647245e4
lea ecx, [ebp + ebp]
mov eax, dword [esp + 0xb0]
cdq
idiv ecx
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0xa0]
mov edx, dword [edx + 0x18]
mov dword [esp + 0x68], edx
mov ecx, dword [esp + 0xa4]
mov ecx, dword [ecx + 0x78]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x60], 0
fldz
fld st(0)
fld st(1)
mov ebx, 1
mov edi, 0xffffff9d
mov dword [esp + 0x3c], 0
lea eax, [ecx - 0x63]
mov dword [esp + 0x58], ebp
mov ebp, eax
nop
fmul qword [0x6480b438]
fxch st(1)
fmul dword [0x6480b41c]
faddp st(1)
fxch st(1)
fmul dword [0x6480b420]
faddp st(1)
fstp dword [esp + 0x5c]
cmp ebp, dword [esp + 0x3c]
jge 0x6472443b
fld dword [esp + 0x5c]
mov edx, dword [esp + 0xa4]
fsub dword [edx + 0x70]
fstp qword [esp + 0x40]
mov esi, dword [esp + 0x38]
imul esi, edi
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0x6c]
jmp 0x647243d2
inc edi
add esi, dword [esp + 0x38]
lea ebp, [edi + ebx]
cmp dword [esp + 0x3c], ebp
jle 0x64724437
mov dword [esp + 0x74], esi
fild dword [esp + 0x74]
fld dword [0x6480b424]
fmul st(1)
fstp qword [esp]
fstp dword [esp + 0x20]
call fcn.647d44cc
mov eax, esi
imul eax, esi
fld dword [0x6480b428]
push eax
fimul dword [esp]
pop eax
fstp qword [esp]
fstp qword [esp + 0x10]
call fcn.647d44cc
fld qword [esp + 0x10]
fmul qword [0x6480b438]
fxch st(1)
fmul dword [0x6480b41c]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [0x6480b420]
faddp st(1)
fld qword [esp + 0x40]
fucompp
fnstsw ax
test ah, 0x45
je 0x647243c4
mov ebx, dword [esp + 0x64]
cmp dword [esp + 0x58], ebx
jl 0x647244ed
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0xa4]
add edx, dword [eax + 0x7c]
mov esi, dword [esp + 0x38]
imul esi, ebx
mov dword [esp + 0x40], edi
mov edi, esi
mov esi, edx
mov dword [esp + 0x64], ebp
mov ebp, ebx
mov ebx, eax
nop
cmp ebp, esi
jl 0x647244d8
mov dword [esp + 0x74], edi
fild dword [esp + 0x74]
fld dword [0x6480b424]
fmul st(1)
fstp qword [esp]
fstp dword [esp + 0x20]
call fcn.647d44cc
mov eax, edi
imul eax, edi
fld dword [0x6480b428]
push eax
fimul dword [esp]
pop eax
fstp qword [esp]
fstp qword [esp + 0x10]
call fcn.647d44cc
fld qword [esp + 0x10]
fmul dword [0x6480b418]
fxch st(1)
fmul dword [0x6480b41c]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [0x6480b420]
faddp st(1)
fld dword [esp + 0x5c]
fadd dword [ebx + 0x74]
fucompp
fnstsw ax
test ah, 0x45
jne 0x647244e3
inc ebp
add edi, dword [esp + 0x38]
cmp dword [esp + 0x58], ebp
jge 0x6472446c
mov edi, dword [esp + 0x40]
mov ebx, ebp
mov ebp, dword [esp + 0x64]
lea eax, [edi - 1]
shl eax, 0x10
lea eax, [ebx + eax - 1]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov dword [ecx + edx*4], eax
inc edx
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x38]
add dword [esp + 0x60], eax
mov ecx, dword [esp + 0x58]
cmp edx, ecx
je 0x6472455e
fild dword [esp + 0x60]
fld dword [0x6480b424]
fmul st(1)
fstp qword [esp]
fstp dword [esp + 0x20]
call fcn.647d44cc
mov eax, dword [esp + 0x60]
imul eax, eax
fld dword [0x6480b428]
push eax
fimul dword [esp]
pop eax
fstp qword [esp]
fstp qword [esp + 0x10]
call fcn.647d44cc
fld qword [esp + 0x10]
fld dword [esp + 0x20]
fxch st(2)
fxch st(1)
jmp 0x64724378
xor esi, esi
mov ebx, 1
mov edi, dword [esp + 0xa0]
mov dword [esp + 0x3c], ecx
mov eax, dword [edi + 0x14]
lea ebp, [eax + esi*4]
fld dword [0x6480b400]
push esi
fiadd dword [esp]
pop eax
fld dword [0x6480b380]
fmul st(1), st(0)
fxch st(1)
fmul qword [esp + 0x50]
fdiv qword [esp + 0x48]
fstp qword [esp]
fstp qword [esp + 0x10]
call fcn.647d44a4
fmul dword [0x6480b3e4]
fsub dword [0x6480b3dc]
mov ecx, dword [edi + 0x20]
inc ecx
mov eax, ebx
shl eax, cl
push eax
fimul dword [esp]
pop eax
fld qword [esp + 0x10]
faddp st(1)
fnstcw word [esp + 0x7a]
mov ax, word [esp + 0x7a]
mov ah, 0xc
mov word [esp + 0x78], ax
fldcw word [esp + 0x78]
fistp dword [ebp]
fldcw word [esp + 0x7a]
inc esi
cmp esi, dword [esp + 0x3c]
jne 0x64724570
mov ebp, dword [esp + 0x3c]
mov eax, dword [esp + 0xa4]
add eax, 0x24
mov edx, dword [esp + 0xa4]
fld dword [edx + 0x1c]
fstp dword [esp + 8]
fld dword [edx + 0x18]
fstp dword [esp + 4]
fld qword [esp + 0x50]
fmul dword [0x6480b380]
fdiv qword [esp + 0x48]
fstp dword [esp]
mov edx, ebp
call fcn.6472248c
mov ecx, dword [esp + 0xa0]
mov dword [ecx + 8], eax
mov dword [esp], 0xc
call fcn.647d4284
mov ebx, eax
mov eax, dword [esp + 0xa0]
mov dword [eax + 0xc], ebx
mov edx, dword [esp + 0x70]
mov dword [esp], edx
call fcn.647d4284
mov dword [ebx], eax
mov ecx, dword [esp + 0xa0]
mov ebx, dword [ecx + 0xc]
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.647d4284
mov dword [ebx + 4], eax
mov edx, dword [esp + 0xa0]
mov ebx, dword [edx + 0xc]
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
call fcn.647d4284
mov dword [ebx + 8], eax
test ebp, ebp
jle 0x647247bb
fld qword [esp + 0x48]
fadd st(0)
fstp qword [esp + 0x48]
xor ebx, ebx
mov edi, dword [esp + 0xa0]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
jmp 0x64724739
fld dword [0x6480b398]
fxch st(2)
fucom st(2)
fnstsw ax
fstp st(2)
test ah, 5
jne 0x64724788
fstp st(1)
mov esi, 0x11
fld1
mov edx, 0x10
mov ebx, dword [edi + 0xc]
mov ecx, dword [esp + 0x38]
shl ecx, 2
mov eax, dword [edi + 4]
fld st(0)
fmul dword [eax + edx*4 + 0x84]
fld dword [eax + esi*4 + 0x84]
fmul st(3)
faddp st(1)
mov ebp, dword [ebx]
fstp dword [ebp + ecx]
fld st(0)
fmul dword [eax + edx*4 + 0xc8]
fld dword [eax + esi*4 + 0xc8]
fmul st(3)
faddp st(1)
mov ebp, dword [ebx + 4]
fstp dword [ebp + ecx]
mov ebx, dword [ebx + 8]
fmul dword [eax + edx*4 + 0x10c]
fxch st(1)
fmul dword [eax + esi*4 + 0x10c]
faddp st(1)
fstp dword [ebx + ecx]
inc dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
cmp dword [esp + 0x38], edx
je 0x647247bb
fld dword [0x6480b380]
fiadd dword [esp + 0x38]
fmul qword [esp + 0x50]
fdiv qword [esp + 0x48]
fstp qword [esp]
call fcn.647d44a4
fmul dword [0x6480b3e4]
fsub dword [0x6480b3dc]
fadd st(0)
fstp dword [esp + 0x7c]
fld dword [esp + 0x7c]
fldz
fucom st(1)
fnstsw ax
test ah, 0x45
jne 0x647246a8
fstp st(1)
mov esi, 1
fld1
xor edx, edx
jmp 0x647246cd
fstp st(0)
fnstcw word [esp + 0x7a]
mov ax, word [esp + 0x7a]
mov ah, 0xc
mov word [esp + 0x78], ax
fldcw word [esp + 0x78]
fist dword [esp + 0x74]
fldcw word [esp + 0x7a]
mov edx, dword [esp + 0x74]
push edx
fisub dword [esp]
pop ebx
fld1
fsub st(1)
lea esi, [edx + 1]
jmp 0x647246cd
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp dword [esp + 0xb0], 0x946f
jg 0x647247e6
mov edx, dword [esp + 0xa0]
mov dword [edx + 0x30], 0x3f70a3d7
jmp 0x64724206
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x30], 0x3f800000
cmp dword [esp + 0xb0], 0xb3b0
jle 0x64724206
mov dword [eax + 0x30], 0x3fa33333
jmp 0x64724206