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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x574
fld qword [0x44fc18]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
fst qword [esp + 0x1c]
cmp eax, ecx
fld qword [0x458ae8]
push ebx
fstp qword [esp + 0xe8]
fldz
push esi
fst qword [esp + 0x104]
push edi
jle 0x420a25
mov edx, eax
mov eax, ecx
mov ecx, edx
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], ecx
mov edi, dword [0x458a80]
imul eax, eax, 0x68
imul ecx, ecx, 0x68
fld qword [eax + edi + 8]
fstp qword [esp + 0x48]
fld qword [eax + edi + 0x10]
fstp qword [esp + 0x50]
fld qword [ecx + edi + 8]
fstp qword [esp + 0x98]
fld qword [ecx + edi + 0x10]
fstp qword [esp + 0xa0]
fld qword [eax + edi + 0x50]
mov ebx, dword [ebp + 0x10]
fstp qword [esp + 0xb0]
mov edx, dword [0x458a70]
fld qword [ecx + edi + 0x50]
fstp qword [esp + 0x70]
lea ebx, [ebx + ebx*2]
shl ebx, 4
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], eax
fld qword [ebx + edx + 8]
mov dword [esp + 0x40], ecx
fstp qword [esp + 0x78]
fld qword [ebx + edx + 0x10]
fstp qword [esp + 0x90]
fld qword [ebx + edx + 0x18]
fmul qword [0x44f4e8]
fstp qword [esp + 0xa8]
fst qword [esp + 0x118]
fst qword [esp + 0x110]
fld qword [esp + 0x98]
fmul qword [esp + 0x78]
fld qword [esp + 0xa0]
fmul qword [esp + 0x90]
faddp st(1)
fsub qword [esp + 0xa8]
fcom st(1)
fnstsw ax
test ah, 1
je 0x420ae4
fchs
fsub qword [esp + 0x70]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 1
je 0x420af5
fchs
mov esi, dword [0x458a44]
fcompp
fnstsw ax
test ah, 5
jp 0x420c94
mov eax, dword [0x458a70]
mov ecx, dword [ebx + eax]
mov edx, dword [esp + 0x40]
shl ecx, 5
lea eax, [ecx + esi]
mov ecx, dword [edx + edi]
shl ecx, 5
fld qword [ecx + esi]
add ecx, esi
fsub qword [eax]
mov dword [esp + 0x30], eax
fld qword [ecx + 8]
mov dword [esp + 0x60], ecx
fsub qword [eax + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420bf2
mov edx, dword [0x458a70]
mov eax, dword [ebx + edx + 4]
mov ecx, dword [esp + 0x60]
fld qword [ecx]
shl eax, 5
fsub qword [eax + esi]
add eax, esi
fld qword [ecx + 8]
mov dword [esp + 0x58], eax
fsub qword [eax + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420bf2
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + edi + 4]
mov ecx, dword [esp + 0x30]
shl edx, 5
fld qword [edx + esi]
lea eax, [edx + esi]
fsub qword [ecx]
mov dword [esp + 0x60], eax
fld qword [eax + 8]
fsub qword [ecx + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420bf2
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x58]
fld qword [eax]
fsub qword [ecx]
fld qword [eax + 8]
fsub qword [ecx + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x420c94
mov eax, dword [esp + 0x30]
mov esi, dword [ebp + 0xc]
push eax
push esi
call fcn.0041c0c0
add esp, 8
test al, al
je 0x420c28
mov ecx, dword [0x458a70]
mov ebx, dword [ebx + ecx + 4]
shl ebx, 5
add ebx, dword [0x458a44]
push ebx
push esi
call fcn.0041c0c0
add esp, 8
test al, al
jne 0x420c88
fld qword [esp + 0x48]
mov edx, dword [ebp + 0xc]
fld qword [esp + 0x50]
mov eax, dword [ebp + 8]
fld qword [esp + 0x98]
mov ecx, dword [esp + 0x44]
fstp qword [esp + 0x48]
mov dword [ebp + 8], edx
fld qword [esp + 0xa0]
mov edx, dword [esp + 0x40]
fstp qword [esp + 0x50]
mov dword [esp + 0x44], edx
fxch st(1)
mov dword [ebp + 0xc], eax
fstp qword [esp + 0x98]
mov dword [esp + 0x40], ecx
fstp qword [esp + 0xa0]
fld qword [esp + 0xb0]
fld qword [esp + 0x70]
fstp qword [esp + 0xb0]
fstp qword [esp + 0x70]
mov esi, dword [0x458a44]
mov edi, dword [0x458a80]
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx + edi]
mov edx, dword [esp + 0x40]
mov ecx, dword [ecx + edi + 4]
shl eax, 5
fld qword [eax + esi]
lea ebx, [eax + esi]
mov eax, dword [edx + edi]
fstp qword [esp + 0xd8]
fld qword [ebx + 8]
shl eax, 5
fstp qword [esp + 0xe0]
add eax, esi
fld qword [eax]
shl ecx, 5
fstp qword [esp + 0xb8]
fld qword [eax + 8]
mov eax, dword [edx + edi + 4]
fstp qword [esp + 0xc0]
shl eax, 5
fld qword [eax + esi]
add eax, esi
fstp qword [esp + 0x80]
lea edi, [ecx + esi]
fld qword [eax + 8]
fstp qword [esp + 0x88]
fld qword [edi]
fstp qword [esp + 0xc8]
fld qword [edi + 8]
fstp qword [esp + 0xd0]
fld qword [esp + 0xb0]
fsub qword [esp + 0x70]
fst qword [esp + 0x68]
fstp qword [esp + 0x60]
fld qword [esp + 0x48]
fsub qword [esp + 0x98]
fst qword [esp + 0x58]
fld qword [esp + 0x50]
fsub qword [esp + 0xa0]
fst qword [esp + 0xe8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fldz
fld qword [esp + 0x60]
fcom st(1)
fnstsw ax
test ah, 1
je 0x420d60
fchs
fsubp st(2)
fcomp st(1)
fnstsw ax
test ah, 0x41
jnp 0x420d6d
fchs
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x421040
fld qword [esp + 0xa0]
fld qword [esp + 0x50]
fsubr st(1)
fld st(1)
fsub qword [esp + 0x88]
fld qword [esp + 0x58]
fmul st(1), st(0)
fld qword [esp + 0x98]
fld qword [esp + 0x80]
fsubr st(1)
fmul st(4)
faddp st(3)
fld st(4)
fsub qword [esp + 0xc0]
fmul st(2)
fld st(1)
fsub qword [esp + 0xb8]
fmul st(5)
faddp st(1)
faddp st(3)
fld st(4)
fsub qword [esp + 0xd0]
fmul st(2)
fld st(1)
fsub qword [esp + 0xc8]
fmul st(5)
faddp st(1)
fld qword [esp + 0xe0]
fsub st(6), st(0)
fxch st(6)
fmul st(3)
fld qword [esp + 0xd8]
fsub st(3), st(0)
fxch st(3)
fmulp st(6)
faddp st(5)
faddp st(4)
fxch st(2)
fmulp st(3)
fxch st(2)
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x421046
fstp st(1)
fsub qword [esp + 0xb8]
fst qword [esp + 0x60]
fxch st(1)
fsub qword [esp + 0xc0]
fst qword [esp + 0x30]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420ee7
fld qword [esp + 0xd8]
fsub qword [esp + 0x80]
fld qword [esp + 0xe0]
fsub qword [esp + 0x88]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420ee7
fld qword [esp + 0xc8]
fsub qword [esp + 0xb8]
fld qword [esp + 0xd0]
fsub qword [esp + 0xc0]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420ee7
fld qword [esp + 0xc8]
fsub qword [esp + 0x80]
fld qword [esp + 0xd0]
fsub qword [esp + 0x88]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x421040
fld qword [esp + 0x60]
fld qword [esp + 0x30]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420f49
fld qword [esp + 0xd8]
fsub qword [esp + 0x80]
fld qword [esp + 0xe0]
fsub qword [esp + 0x88]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x420f49
fld qword [edi]
fst qword [esp + 0x120]
fld qword [edi + 8]
jmp 0x420f55
fld qword [ebx]
fst qword [esp + 0x120]
fld qword [ebx + 8]
fst qword [esp + 0x128]
lea edx, [esp + 0x180]
fxch st(1)
push edx
fsub qword [esp + 0x4c]
lea eax, [esp + 0x384]
push eax
sub esp, 0x18
fstp qword [esp + 0x180]
lea ecx, [esp + 0x180]
lea edx, [esp + 0x140]
fsub qword [esp + 0x70]
fstp qword [esp + 0x188]
fld qword [esp + 0xc8]
fstp qword [esp + 0x10]
fld qword [esp + 0xb0]
fstp qword [esp + 8]
fld qword [esp + 0x98]
fstp qword [esp]
push ecx
push edx
call fcn.0041c4e0
fld qword [esp + 0x70]
fsub qword [esp + 0x148]
mov esi, eax
add esp, 0x28
mov ecx, esi
fstp qword [esp + 0x160]
shl ecx, 4
fld qword [esp + 0x50]
lea eax, [esp + esi*8 + 0x180]
fsub qword [esp + 0x128]
push eax
lea edx, [esp + ecx + 0x384]
push edx
fstp qword [esp + 0x170]
sub esp, 0x18
fld qword [esp + 0xc8]
lea eax, [esp + 0x180]
fstp qword [esp + 0x10]
lea ecx, [esp + 0x140]
fld qword [esp + 0xb0]
fstp qword [esp + 8]
fld qword [esp + 0x98]
fstp qword [esp]
push eax
push ecx
call fcn.0041c4e0
add esp, 0x28
add esi, eax
mov dword [esp + 0x30], esi
jmp 0x421532
fld qword [esp + 0x58]
jmp 0x42104a
fstp st(0)
fstp st(1)
fld qword [esp + 0xe8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fsub qword [esp + 0xb0]
fsub qword [esp + 0x70]
fldz
fcomp st(1)
fnstsw ax
test ah, 0x41
jnp 0x421076
fchs
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x421349
fld qword [esp + 0xa0]
fld qword [esp + 0x50]
fsubr st(1)
fld st(1)
fsub qword [esp + 0x88]
fld qword [esp + 0x58]
fmul st(1), st(0)
fld qword [esp + 0x98]
fld qword [esp + 0x80]
fsubr st(1)
fmul st(4)
faddp st(3)
fld st(4)
fsub qword [esp + 0xc0]
fmul st(2)
fld st(1)
fsub qword [esp + 0xb8]
fmul st(5)
faddp st(1)
faddp st(3)
fld st(4)
fsub qword [esp + 0xd0]
fmul st(2)
fld st(1)
fsub qword [esp + 0xc8]
fmul st(5)
faddp st(1)
fld qword [esp + 0xe0]
fsub st(6), st(0)
fxch st(6)
fmul st(3)
fld qword [esp + 0xd8]
fsub st(3), st(0)
fxch st(3)
fmulp st(6)
faddp st(5)
faddp st(4)
fxch st(2)
fmulp st(3)
fxch st(2)
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x42134f
fstp st(1)
fsub qword [esp + 0xb8]
fst qword [esp + 0x60]
fxch st(1)
fsub qword [esp + 0xc0]
fst qword [esp + 0x30]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x4211f0
fld qword [esp + 0xd8]
fsub qword [esp + 0x80]
fld qword [esp + 0xe0]
fsub qword [esp + 0x88]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x4211f0
fld qword [esp + 0xc8]
fsub qword [esp + 0xb8]
fld qword [esp + 0xd0]
fsub qword [esp + 0xc0]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x4211f0
fld qword [esp + 0xc8]
fsub qword [esp + 0x80]
fld qword [esp + 0xd0]
fsub qword [esp + 0x88]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jp 0x421349
fld qword [esp + 0x60]
fld qword [esp + 0x30]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x421252
fld qword [esp + 0xd8]
fsub qword [esp + 0x80]
fld qword [esp + 0xe0]
fsub qword [esp + 0x88]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x421252
fld qword [edi]
fst qword [esp + 0x130]
fld qword [edi + 8]
jmp 0x42125e
fld qword [ebx]
fst qword [esp + 0x130]
fld qword [ebx + 8]
fst qword [esp + 0x138]
lea edx, [esp + 0x180]
fxch st(1)
push edx
fsub qword [esp + 0x4c]
lea eax, [esp + 0x384]
push eax
sub esp, 0x18
fstp qword [esp + 0x170]
lea ecx, [esp + 0x170]
lea edx, [esp + 0x150]
fsub qword [esp + 0x70]
fstp qword [esp + 0x178]
fld qword [esp + 0xc8]
fstp qword [esp + 0x10]
fld qword [esp + 0xb0]
fstp qword [esp + 8]
fld qword [esp + 0x98]
fstp qword [esp]
push ecx
push edx
call fcn.0041c4e0
fld qword [esp + 0x70]
fsub qword [esp + 0x158]
mov esi, eax
add esp, 0x28
mov ecx, esi
fstp qword [esp + 0x150]
shl ecx, 4
fld qword [esp + 0x50]
lea eax, [esp + esi*8 + 0x180]
fsub qword [esp + 0x138]
push eax
lea edx, [esp + ecx + 0x384]
push edx
fstp qword [esp + 0x160]
sub esp, 0x18
fld qword [esp + 0xc8]
lea eax, [esp + 0x170]
fstp qword [esp + 0x10]
lea ecx, [esp + 0x150]
fld qword [esp + 0xb0]
fstp qword [esp + 8]
fld qword [esp + 0x98]
fstp qword [esp]
push eax
push ecx
call fcn.0041c4e0
add esp, 0x28
add esi, eax
mov dword [esp + 0x30], esi
jmp 0x421532
fld qword [esp + 0x58]
jmp 0x421353
fstp st(0)
fstp st(1)
fld qword [esp + 0xe8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fld qword [esp + 0x28]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x4213bf
fld qword [esp + 0x68]
fldz
fcom st(1)
fnstsw ax
test ah, 0x41
jnp 0x42138b
fxch st(1)
fchs
fxch st(1)
fxch st(1)
fcomp st(2)
fnstsw ax
test ah, 5
jp 0x4213c1
mov eax, dword [ebp + 0x18]
fstp st(0)
mov ecx, dword [ebp + 0x1c]
fstp st(0)
fld qword [esp + 0x48]
fstp qword [eax]
fld qword [esp + 0x50]
fstp qword [eax + 8]
mov al, 1
fld qword [esp + 0xb0]
fstp qword [ecx]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
fldz
fld qword [esp + 0x48]
fmul qword [esp + 0x78]
fld qword [esp + 0x50]
fmul qword [esp + 0x90]
faddp st(1)
fsub qword [esp + 0xa8]
fcom st(1)
fnstsw ax
test ah, 1
je 0x4213e8
fchs
fsub qword [esp + 0xb0]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 1
je 0x4213fc
fchs
fcompp
fnstsw ax
test ah, 5
jp 0x4214d0
mov edx, dword [0x458a70]
fld qword [ebx]
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + edx]
shl ecx, 5
fsub qword [ecx + esi]
lea eax, [ecx + esi]
fld qword [ebx + 8]
mov dword [esp + 0x30], eax
fsub qword [eax + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x421744
mov edx, dword [esp + 0x3c]
fld qword [ebx]
mov eax, dword [0x458a70]
mov ecx, dword [edx + eax + 4]
shl ecx, 5
fsub qword [esi + ecx]
add esi, ecx
fld qword [ebx + 8]
fsub qword [esi + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x421744
mov ebx, dword [esp + 0x30]
fld qword [edi]
fsub qword [ebx]
fld qword [edi + 8]
fsub qword [ebx + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x421748
fld qword [edi]
fsub qword [esi]
fld qword [edi + 8]
fsub qword [esi + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x421748
fld qword [esp + 0xa8]
lea ecx, [esp + 0x180]
push ecx
lea edx, [esp + 0x384]
push edx
sub esp, 0x28
fstp qword [esp + 0x20]
lea eax, [esp + 0xc8]
fld qword [esp + 0xc0]
lea ecx, [esp + 0x78]
fstp qword [esp + 0x18]
fld qword [esp + 0xa8]
fstp qword [esp + 0x10]
fld qword [esp + 0xa0]
fstp qword [esp + 8]
fld qword [esp + 0xe0]
fstp qword [esp]
push eax
push ecx
call fcn.0041b830
add esp, 0x38
mov dword [esp + 0x30], eax
mov esi, dword [esp + 0x30]
xor edi, edi
test esi, esi
jle 0x421615
mov ebx, dword [ebp + 0x14]
lea esi, [esp + 0x380]
lea ebx, [ebx]
mov eax, dword [esi + 4]
fld qword [esp + edi*8 + 0x180]
mov edx, dword [esi]
fstp qword [esp + 0x58]
mov ecx, dword [esi + 8]
mov dword [esp + 0x144], eax
lea eax, [esp + 0x140]
mov dword [esp + 0x140], edx
mov edx, dword [esi + 0xc]
push eax
push ebx
mov dword [esp + 0x150], ecx
mov dword [esp + 0x154], edx
call fcn.0040ce70
fstp qword [esp + 0x70]
fld qword [esp + 0x60]
mov edx, dword [ebp + 8]
fstp qword [esp]
lea ecx, [esp + 0x148]
push ecx
push ebx
push edx
call fcn.0041c7b0
fadd qword [esp + 0x7c]
mov ecx, dword [ebp + 0xc]
add esp, 0xc
fstp qword [esp + 0x70]
lea eax, [esp + 0x148]
fld qword [esp + 0x60]
fstp qword [esp]
push eax
push ebx
push ecx
call fcn.0041c7b0
fadd qword [esp + 0x7c]
mov eax, dword [ebp + 0x10]
add esp, 0xc
fstp qword [esp + 0x70]
lea edx, [esp + 0x148]
fld qword [esp + 0x60]
fstp qword [esp]
push edx
push ebx
push eax
call fcn.0041cb20
fadd qword [esp + 0x7c]
inc edi
add esp, 0x14
fstp qword [esp + edi*8 + 0x278]
add esi, 0x10
cmp edi, dword [esp + 0x30]
jl 0x421550
mov esi, dword [esp + 0x30]
fld qword [esp + 0x118]
xor ecx, ecx
cmp esi, 4
fld qword [esp + 0x110]
jl 0x421931
fld qword [esp + 0x108]
lea edi, [esi - 3]
fld qword [esp + 0xf0]
lea edx, [esp + 0x390]
fcom qword [esp + ecx*8 + 0x280]
fnstsw ax
test ah, 0x41
jne 0x421678
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [esp + ecx*8 + 0x280]
fld qword [esp + ecx*8 + 0x180]
fld qword [edx - 0x10]
fld qword [edx - 8]
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
fcom qword [esp + ecx*8 + 0x288]
fnstsw ax
test ah, 0x41
jne 0x4216a9
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [esp + ecx*8 + 0x288]
fld qword [esp + ecx*8 + 0x188]
fld qword [edx]
fld qword [edx + 8]
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
fcom qword [esp + ecx*8 + 0x290]
fnstsw ax
test ah, 0x41
jne 0x4216db
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [esp + ecx*8 + 0x290]
fld qword [esp + ecx*8 + 0x190]
fld qword [edx + 0x10]
fld qword [edx + 0x18]
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
fcom qword [esp + ecx*8 + 0x298]
fnstsw ax
test ah, 0x41
jne 0x42170d
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [esp + ecx*8 + 0x298]
fld qword [esp + ecx*8 + 0x198]
fld qword [edx + 0x20]
fld qword [edx + 0x28]
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
add ecx, 4
add edx, 0x40
cmp ecx, edi
jl 0x421646
fxch st(3)
fst qword [esp + 0x118]
fxch st(2)
fst qword [esp + 0x110]
fxch st(1)
fst qword [esp + 0x108]
fxch st(3)
fst qword [esp + 0xf0]
jmp 0x421945
mov ebx, dword [esp + 0x30]
mov esi, dword [ebp + 8]
push ebx
push esi
call fcn.0041c0c0
add esp, 8
test al, al
je 0x421782
mov edx, dword [0x458a70]
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + edx + 4]
shl eax, 5
add eax, dword [0x458a44]
push eax
push esi
call fcn.0041c0c0
add esp, 8
test al, al
jne 0x4214d0
mov ecx, dword [esp + 0x3c]
mov edx, dword [0x458a70]
mov eax, dword [ecx + edx]
mov edi, dword [0x458a44]
mov ecx, dword [esp + 0x44]
mov ebx, dword [0x458a80]
shl eax, 5
lea esi, [eax + edi]
mov eax, dword [ecx + ebx]
shl eax, 5
fld qword [eax + edi]
add eax, edi
fsub qword [esi]
fld qword [eax + 8]
fsub qword [esi + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x42183d
mov edx, dword [esp + 0x44]
mov eax, dword [edx + ebx + 4]
shl eax, 5
fld qword [eax + edi]
add eax, edi
fsub qword [esi]
fld qword [eax + 8]
fsub qword [esi + 8]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
call sub.MSVCR90.dll__CIsqrt
fcomp qword [esp + 0x28]
fnstsw ax
test ah, 5
jnp 0x42183d
mov ecx, dword [0x458a70]
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + ecx + 4]
shl eax, 5
mov edx, dword [eax + edi]
add eax, edi
mov dword [esp + 0xf8], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0xfc], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x100], edx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x104], eax
jmp 0x421864
mov ecx, dword [esi]
mov dword [esp + 0xf8], ecx
mov edx, dword [esi + 4]
mov dword [esp + 0xfc], edx
mov eax, dword [esi + 8]
mov dword [esp + 0x100], eax
mov ecx, dword [esi + 0xc]
mov dword [esp + 0x104], ecx
fld qword [esp + 0x78]
lea edx, [esp + 0x180]
fchs
push edx
fst qword [esp + 0x6c]
lea eax, [esp + 0x384]
fstp qword [esp + 0x174]
push eax
fld qword [esp + 0x98]
sub esp, 8
fchs
lea ecx, [esp + 0xa8]
fst qword [esp + 0xf8]
lea edx, [esp + 0x180]
fstp qword [esp + 0x188]
lea eax, [esp + 0x108]
fld qword [esp + 0x80]
fstp qword [esp]
push ecx
push edx
push eax
call fcn.0041c160
fld qword [esp + 0x84]
mov esi, eax
fstp qword [esp + 0x18c]
fld qword [esp + 0x104]
add esp, 0x1c
mov edx, esi
fstp qword [esp + 0x178]
fld qword [esp + 0x70]
shl edx, 4
lea ecx, [esp + esi*8 + 0x180]
push ecx
lea eax, [esp + edx + 0x384]
push eax
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0xa8]
push ecx
lea edx, [esp + 0x184]
push edx
lea eax, [esp + 0x110]
push eax
call fcn.0041c160
add esp, 0x1c
add esi, eax
mov dword [esp + 0x30], esi
jmp 0x421536
fld qword [esp + 0xf0]
fld qword [esp + 0x108]
fxch st(3)
fxch st(2)
fxch st(1)
cmp ecx, esi
jge 0x4219b6
mov edx, ecx
shl edx, 4
lea edx, [esp + edx + 0x380]
fcom qword [esp + ecx*8 + 0x280]
fnstsw ax
test ah, 0x41
jne 0x421982
fstp st(0)
fstp st(2)
fstp st(1)
fstp st(0)
fld qword [esp + ecx*8 + 0x280]
fld qword [esp + ecx*8 + 0x180]
fld qword [edx]
fld qword [edx + 8]
fxch st(2)
fxch st(3)
inc ecx
add edx, 0x10
cmp ecx, esi
jl 0x421955
fxch st(2)
fst qword [esp + 0x118]
fxch st(1)
fst qword [esp + 0x110]
fxch st(3)
fst qword [esp + 0x108]
fxch st(2)
fst qword [esp + 0xf0]
fxch st(2)
fxch st(3)
fxch st(1)
fxch st(2)
mov eax, dword [ebp + 0x18]
fxch st(1)
fstp qword [eax]
fxch st(1)
fstp qword [eax + 8]
mov eax, dword [ebp + 0x1c]
fxch st(1)
fstp qword [eax]
fld qword [0x44fc08]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x421a0a
fld qword [0x44f380]
fld qword [esp + 0x28]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
je 0x421a15
mov edi, dword [0x458a80]
fstp st(1)
fmul qword [0x44f9d8]
mov ebx, dword [esp + 0x3c]
fst qword [esp + 0x28]
fldz
jmp 0x420ab7
fstp st(0)
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x10]
fstp st(0)
fld qword [0x44f9d8]
mov ecx, dword [ebp + 8]
fcomp st(1)
sub esp, 8
fnstsw ax
fstp qword [esp]
push edx
test ah, 0x41
mov eax, dword [ebp + 0xc]
push eax
push ecx
jne 0x421a4f
push str.quality_aas__d__d__d:_poor_quality__with__e__n_n
call dword [sym.imp.MSVCR90.dll_printf]
add esp, 0x18
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x44fc20
call dword [sym.imp.MSVCR90.dll_printf]
add esp, 0x18
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret