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

Disassembly:
mov edx, dword [esp + 4]
sub esp, 0x188
push ebx
push ebp
mov ebp, dword [esp + 0x1a0]
push esi
mov esi, dword [esp + 0x1a8]
cmp edx, esi
push edi
mov edi, dword [esp + 0x1b0]
mov ebx, eax
jne 0x5c0b84
mov eax, dword [esp + 0x1b4]
cmp dword [esp + 0x1a4], eax
jne 0x5c0b84
mov ecx, dword [esp + 0x1a0]
cmp ecx, ebp
jne 0x5c0b84
mov eax, dword [esp + 0x1b8]
cmp edi, eax
jne 0x5c0b84
mov esi, dword [esp + 0x1bc]
fild dword [esp + 0x1b8]
push 1
push esi
push ebx
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [esp + 0x1d0]
fstp dword [esp + 8]
fild dword [esp + 0x1bc]
fstp dword [esp + 4]
fild dword [esp + 0x1b8]
fstp dword [esp]
push ecx
mov ecx, dword [esp + 0x1d4]
push edx
call fcn.005bc570
add esp, 0x24
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x188
ret
cmp dword [0x9bed00], 0
jne 0x5c0c0c
cmp dword [0xb160bc], 0xffffffff
jne 0x5c0c0c
mov ecx, dword [esp + 0x1bc]
fild dword [esp + 0x1b8]
push ecx
push ebx
sub esp, 0x20
fstp dword [esp + 0x1c]
fild dword [esp + 0x1dc]
fstp dword [esp + 0x18]
fild dword [esp + 0x1d8]
fstp dword [esp + 0x14]
fild dword [esp + 0x1d4]
fstp dword [esp + 0x10]
fild dword [esp + 0x1d0]
fstp dword [esp + 0xc]
fild dword [esp + 0x1cc]
fstp dword [esp + 8]
fild dword [esp + 0x1c8]
fstp dword [esp + 4]
fild dword [esp + 0x1c4]
fstp dword [esp]
call fcn.005d4fd0
add esp, 0x28
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x188
ret
cmp dword [0x9bed28], 0
je 0x5c18b7
cmp dword [0x9bed18], 0
jne 0x5c18b7
call fcn.0057e664
cmp dword [0xa05c94], 0
jne 0x5c0c39
call fcn.0057c526
mov eax, dword [ebx + 0xc]
mov ecx, dword [esp + 0x1bc]
mov edx, dword [eax + 0x2c]
or ecx, 2
push ecx
push edx
add eax, 8
push eax
call fcn.005b6a20
fild dword [ebx + 0x2c]
mov eax, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x19c]
fstp dword [esp + 0x4c]
mov edx, eax
fild dword [ebx + 0x30]
sub edx, ecx
mov dword [esp + 0x18], edx
mov edx, esi
fstp dword [esp + 0x48]
sub edx, ecx
fild dword [esp + 0x18]
mov dword [esp + 0x18], edx
fld dword [esp + 0x4c]
mov ecx, dword [esp + 0x1a0]
fld st(0)
mov edx, edi
fdivp st(2)
sub edx, ecx
fxch st(1)
fstp dword [esp + 0x34]
fild dword [esp + 0x18]
fld dword [esp + 0x48]
fld st(0)
mov dword [esp + 0x18], edx
fdivp st(2)
mov edx, ebp
sub edx, ecx
mov ecx, dword [esp + 0x1b4]
sub esi, ecx
sub eax, ecx
fxch st(1)
fstp dword [esp + 0x38]
fild dword [esp + 0x18]
mov dword [esp + 0x18], edx
fdiv st(1)
fstp dword [esp + 0x28]
fild dword [esp + 0x18]
mov dword [esp + 0x18], esi
fdiv st(2)
fstp dword [esp + 0x20]
fld st(1)
fchs
fstp dword [esp + 0x1c]
fild dword [esp + 0x18]
fld dword [esp + 0x1c]
fld st(0)
mov dword [esp + 0x18], eax
fdivp st(2)
mov eax, dword [esp + 0x1b8]
sub ebp, eax
sub edi, eax
fxch st(1)
fstp dword [esp + 0x50]
fld st(1)
fchs
fstp dword [esp + 0x1c]
fild dword [esp + 0x18]
fld dword [esp + 0x1c]
fld st(0)
mov dword [esp + 0x18], ebp
fdivp st(2)
fxch st(1)
fstp dword [esp + 0x54]
fidivr dword [esp + 0x18]
mov dword [esp + 0x18], edi
fstp dword [esp + 0x58]
fidivr dword [esp + 0x18]
fstp dword [esp + 0x24]
fild dword [esp + 0x19c]
fld qword [0x881950]
fsub st(1), st(0)
mov eax, dword [0x9beee0]
fxch st(1)
sub eax, 1
fstp dword [esp + 0x44]
fild dword [esp + 0x1a0]
mov edi, dword [0xb160a8]
mov ebp, dword [0x9beef8]
mov esi, dword [ebx + 0x44]
fsub st(1)
mov dword [esp + 0x5c], edi
fstp dword [esp + 0x30]
fild dword [esp + 0x1b4]
fsub st(1)
fstp dword [esp + 0x40]
fisubr dword [esp + 0x1b8]
fstp dword [esp + 0x2c]
je 0x5c1362
sub eax, 1
jne 0x5c18a6
cmp dword [0xa05cd4], 0x2c4
je 0x5c0dd4
mov eax, dword [0x9bed28]
fstp st(1)
mov ecx, dword [eax]
fstp st(0)
mov edx, dword [ecx + 0x164]
push 0x2c4
push eax
call edx
fld dword [esp + 0x4c]
fld dword [esp + 0x48]
mov dword [0xa05cd4], 0x2c4
test esi, esi
jle 0x5c18a6
fld dword [esp + 0x50]
add ebx, 0x64
fld dword [esp + 0x54]
mov dword [esp + 0x18], esi
fld dword [esp + 0x58]
fld1
jmp 0x5c0e0f
fld dword [esp + 0x48]
fld dword [esp + 0x4c]
fld dword [esp + 0x50]
fld dword [esp + 0x54]
fld dword [esp + 0x58]
fld1
fxch st(4)
fxch st(5)
fxch st(4)
mov eax, dword [ebx + 0x40]
mov ecx, dword [0x9feb00]
cmp ecx, dword [eax]
je 0x5c0e5c
mov esi, dword [eax]
fstp st(5)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
fstp st(0)
call fcn.005ad050
push 0
mov eax, 1
xor ecx, ecx
call fcn.005b46a0
fld dword [esp + 0x4c]
fld dword [esp + 0x50]
add esp, 4
fld dword [esp + 0x50]
fld dword [esp + 0x54]
fld dword [esp + 0x58]
fld1
fxch st(4)
fxch st(5)
fxch st(4)
or eax, 0xffffffff
fst dword [esp + 0x154]
cmp byte [ebx + 0x3c], 0
fst dword [esp + 0x12c]
fst dword [esp + 0x104]
mov dword [esp + 0x15c], eax
fstp dword [esp + 0xdc]
mov dword [esp + 0x134], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0xe4], eax
mov dword [esp + 0x158], ebp
mov dword [esp + 0x130], ebp
mov dword [esp + 0x108], ebp
mov dword [esp + 0xe0], ebp
mov dword [esp + 0x150], edi
mov dword [esp + 0x128], edi
mov dword [esp + 0x100], edi
mov dword [esp + 0xd8], edi
je 0x5c0f04
fld dword [ebx]
fmul dword [esp + 0x38]
fld dword [ebx - 4]
fmul dword [esp + 0x34]
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0xd0]
fld dword [ebx - 4]
fmul dword [esp + 0x20]
fld dword [ebx]
fmul dword [esp + 0x28]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c0f42
fld dword [ebx - 4]
fsub st(5)
fstp dword [esp + 0x10]
fld dword [ebx]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x10]
fmul st(4)
faddp st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0xd0]
fld dword [esp + 0x10]
fmul dword [esp + 0x24]
fld dword [esp + 0x14]
fmul st(2)
faddp st(1)
fadd dword [esp + 0x2c]
cmp byte [ebx + 0x3d], 0
fstp dword [esp + 0xd4]
fild dword [0xb160c8]
fstp dword [esp + 0x1c]
fld dword [ebx - 4]
fadd dword [esp + 0x1c]
fmul dword [0x9beef0]
fstp dword [esp + 0xe8]
fild dword [0xb160cc]
fstp dword [esp + 0x3c]
fld dword [ebx]
fadd dword [esp + 0x3c]
fmul dword [0x9beef4]
fstp dword [esp + 0xec]
fld dword [ebx + 4]
fstp dword [esp + 0xf0]
fld dword [ebx + 8]
fstp dword [esp + 0xf4]
je 0x5c0fcf
fld dword [ebx + 0x10]
fmul dword [esp + 0x38]
fld dword [ebx + 0xc]
fmul dword [esp + 0x34]
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0xf8]
fld dword [ebx + 0xc]
fmul dword [esp + 0x20]
fld dword [ebx + 0x10]
fmul dword [esp + 0x28]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c100e
fld dword [ebx + 0xc]
fsub st(5)
fstp dword [esp + 0x10]
fld dword [ebx + 0x10]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x10]
fmul st(4)
faddp st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0xf8]
fld dword [esp + 0x10]
fmul dword [esp + 0x24]
fld dword [esp + 0x14]
fmul st(2)
faddp st(1)
fadd dword [esp + 0x2c]
cmp byte [ebx + 0x3e], 0
fstp dword [esp + 0xfc]
fld dword [ebx + 0xc]
fadd dword [esp + 0x1c]
fmul dword [0x9beef0]
fstp dword [esp + 0x110]
fld dword [ebx + 0x10]
fadd dword [esp + 0x3c]
fmul dword [0x9beef4]
fstp dword [esp + 0x114]
fld dword [ebx + 0x14]
fstp dword [esp + 0x118]
fld dword [ebx + 0x18]
fstp dword [esp + 0x11c]
je 0x5c1088
fld dword [ebx + 0x20]
fmul dword [esp + 0x38]
fld dword [ebx + 0x1c]
fmul dword [esp + 0x34]
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0x120]
fld dword [ebx + 0x1c]
fmul dword [esp + 0x20]
fld dword [ebx + 0x20]
fmul dword [esp + 0x28]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c10c7
fld dword [ebx + 0x1c]
fsub st(5)
fstp dword [esp + 0x10]
fld dword [ebx + 0x20]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x10]
fmul st(4)
faddp st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0x120]
fld dword [esp + 0x10]
fmul dword [esp + 0x24]
fld dword [esp + 0x14]
fmul st(2)
faddp st(1)
fadd dword [esp + 0x2c]
cmp byte [ebx + 0x3f], 0
fstp dword [esp + 0x124]
fld dword [esp + 0x1c]
fld st(0)
fadd dword [ebx + 0x1c]
fmul dword [0x9beef0]
fstp dword [esp + 0x138]
fld dword [esp + 0x3c]
fadd dword [ebx + 0x20]
fmul dword [0x9beef4]
fstp dword [esp + 0x13c]
fld dword [ebx + 0x24]
fstp dword [esp + 0x140]
fld dword [ebx + 0x28]
fstp dword [esp + 0x144]
je 0x5c114d
fstp st(5)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
fld dword [esp + 0x38]
fmul dword [ebx + 0x30]
fld dword [esp + 0x34]
fmul dword [ebx + 0x2c]
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0x148]
fld dword [esp + 0x20]
fmul dword [ebx + 0x2c]
fld dword [esp + 0x28]
fmul dword [ebx + 0x30]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c1194
fld dword [ebx + 0x2c]
fsubrp st(6)
fxch st(5)
fstp dword [esp + 0x10]
fld dword [ebx + 0x30]
fsubrp st(4)
fxch st(3)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fld st(0)
fmulp st(2)
fld dword [esp + 0x10]
fld st(0)
fmulp st(4)
fxch st(2)
faddp st(3)
fld dword [esp + 0x40]
faddp st(3)
fxch st(2)
fstp dword [esp + 0x148]
fmul dword [esp + 0x24]
fxch st(1)
fmulp st(2)
faddp st(1)
fadd dword [esp + 0x2c]
fstp dword [esp + 0x14c]
fadd dword [ebx + 0x2c]
fmul dword [0x9beef0]
fstp dword [esp + 0x160]
fld dword [esp + 0x3c]
fadd dword [ebx + 0x30]
fmul dword [0x9beef4]
fstp dword [esp + 0x164]
fld dword [ebx + 0x34]
fstp dword [esp + 0x168]
fld dword [ebx + 0x38]
fstp dword [esp + 0x16c]
fld dword [esp + 0x124]
fld st(0)
fld dword [esp + 0xd4]
fld st(0)
fsubp st(2)
fld dword [esp + 0xf8]
fld st(0)
fld dword [esp + 0xd0]
fld st(0)
fsubp st(2)
fxch st(4)
fmulp st(1)
fld dword [esp + 0xfc]
fld st(0)
fsubrp st(4)
fld dword [esp + 0x120]
fld st(0)
fsubrp st(6)
fxch st(4)
fmulp st(5)
fxch st(1)
fsubrp st(4)
fxch st(3)
fstp dword [esp + 0x1c]
fld dword [esp + 0x14c]
fld st(0)
fsubp st(4)
fld dword [esp + 0x148]
fld st(0)
fsubp st(4)
fxch st(4)
fmulp st(3)
fsubp st(4)
fsubrp st(2)
fxch st(2)
fmulp st(1)
fsubp st(1)
fstp dword [esp + 0x3c]
fldz
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
fld dword [esp + 0x3c]
test ah, 0x41
jp 0x5c12aa
fcom st(2)
fnstsw ax
test ah, 0x41
jp 0x5c12aa
mov ecx, 0xa
lea esi, [esp + 0xf8]
lea edi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, 0xa
lea esi, [esp + 0x120]
lea edi, [esp + 0xf8]
rep movsd dword es:[edi], dword [esi]
mov ecx, 0xa
lea esi, [esp + 0x170]
lea edi, [esp + 0x120]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x5c]
fmul st(1)
fcomp qword [0x879f30]
fnstsw ax
test ah, 1
jne 0x5c12dd
mov eax, dword [0x9bed28]
fstp st(0)
mov edx, dword [eax]
fstp st(0)
mov edx, dword [edx + 0x14c]
push 0x28
lea ecx, [esp + 0xd4]
push ecx
push 2
push 5
push eax
call edx
jmp 0x5c1347
fcompp
fnstsw ax
test ah, 5
jp 0x5c1329
mov ecx, 0xa
lea esi, [esp + 0xf8]
lea edi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, 0xa
lea esi, [esp + 0x120]
lea edi, [esp + 0xf8]
rep movsd dword es:[edi], dword [esi]
mov ecx, 0xa
lea esi, [esp + 0x170]
lea edi, [esp + 0x120]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x5c]
mov eax, dword [0x9bed28]
mov ecx, dword [eax]
push 0x28
lea edx, [esp + 0xd4]
push edx
push 2
push 5
push eax
mov eax, dword [ecx + 0x14c]
call eax
add ebx, 0x60
sub dword [esp + 0x18], 1
jne 0x5c0df3
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x188
ret
cmp dword [0xa05cd4], 0x144
je 0x5c1399
mov eax, dword [0x9bed28]
fstp st(1)
mov ecx, dword [eax]
fstp st(0)
mov edx, dword [ecx + 0x164]
push 0x144
push eax
call edx
fld dword [esp + 0x4c]
fld dword [esp + 0x48]
mov dword [0xa05cd4], 0x144
test esi, esi
jle 0x5c18a6
fld dword [esp + 0x50]
add ebx, 0x70
fld dword [esp + 0x54]
mov dword [esp + 0x18], esi
fld dword [esp + 0x58]
jmp 0x5c13da
fld dword [esp + 0x48]
fld dword [esp + 0x4c]
fld dword [esp + 0x50]
fld dword [esp + 0x54]
fld dword [esp + 0x58]
fxch st(3)
fxch st(4)
fxch st(3)
mov eax, dword [ebx + 0x34]
mov ecx, dword [0x9feb00]
cmp ecx, dword [eax]
je 0x5c1423
mov esi, dword [eax]
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(0)
fstp st(0)
call fcn.005ad050
push 0
mov eax, 1
xor ecx, ecx
call fcn.005b46a0
fld dword [esp + 0x4c]
fld dword [esp + 0x50]
add esp, 4
fld dword [esp + 0x50]
fld dword [esp + 0x54]
fld dword [esp + 0x58]
fxch st(3)
fxch st(4)
fxch st(3)
cmp byte [ebx + 0x30], 0
fld dword [ebx - 0x10]
fstp dword [esp + 0x60]
mov dword [esp + 0xc4], ebp
fld dword [ebx - 0xc]
mov dword [esp + 0xa8], ebp
fstp dword [esp + 0x64]
mov dword [esp + 0x8c], ebp
fld dword [ebx]
mov dword [esp + 0x70], ebp
fstp dword [esp + 0x7c]
mov dword [esp + 0xbc], edi
fld dword [ebx + 4]
mov dword [esp + 0xa0], edi
fstp dword [esp + 0x80]
mov dword [esp + 0x84], edi
fld dword [ebx + 0x10]
mov dword [esp + 0x68], edi
fstp dword [esp + 0x98]
fld dword [ebx + 0x14]
fstp dword [esp + 0x9c]
fld dword [ebx + 0x20]
fstp dword [esp + 0xb4]
fld dword [ebx + 0x24]
fstp dword [esp + 0xb8]
fld dword [ebx - 8]
fstp dword [esp + 0x74]
fld dword [ebx - 4]
fstp dword [esp + 0x78]
fld dword [ebx + 8]
fstp dword [esp + 0x90]
fld dword [ebx + 0xc]
fstp dword [esp + 0x94]
fld dword [ebx + 0x18]
fstp dword [esp + 0xac]
fld dword [ebx + 0x1c]
fstp dword [esp + 0xb0]
fld dword [ebx + 0x28]
fstp dword [esp + 0xc8]
fld dword [ebx + 0x2c]
fstp dword [esp + 0xcc]
je 0x5c1523
fld dword [esp + 0x60]
fst dword [esp + 0x10]
fld dword [esp + 0x64]
fmul dword [esp + 0x38]
fld dword [esp + 0x34]
fmulp st(2)
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0x60]
fld dword [esp + 0x64]
fmul dword [esp + 0x28]
fld dword [esp + 0x10]
fmul dword [esp + 0x20]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c1561
fld dword [esp + 0x60]
fsub st(5)
fstp dword [esp + 0x10]
fld dword [esp + 0x64]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x10]
fmul st(4)
faddp st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0x60]
fld dword [esp + 0x10]
fmul dword [esp + 0x24]
fld dword [esp + 0x14]
fmul st(2)
faddp st(1)
fadd dword [esp + 0x2c]
cmp byte [ebx + 0x31], 0
fstp dword [esp + 0x64]
je 0x5c15a9
fld dword [esp + 0x7c]
fst dword [esp + 0x10]
fld dword [esp + 0x80]
fmul dword [esp + 0x38]
fld dword [esp + 0x34]
fmulp st(2)
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0x7c]
fld dword [esp + 0x80]
fmul dword [esp + 0x28]
fld dword [esp + 0x10]
fmul dword [esp + 0x20]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c15ea
fld dword [esp + 0x7c]
fsub st(5)
fstp dword [esp + 0x10]
fld dword [esp + 0x80]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x10]
fmul st(4)
faddp st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0x7c]
fld dword [esp + 0x10]
fmul dword [esp + 0x24]
fld dword [esp + 0x14]
fmul st(2)
faddp st(1)
fadd dword [esp + 0x2c]
cmp byte [ebx + 0x32], 0
fstp dword [esp + 0x80]
je 0x5c163b
fld dword [esp + 0x98]
fst dword [esp + 0x10]
fld dword [esp + 0x9c]
fmul dword [esp + 0x38]
fld dword [esp + 0x34]
fmulp st(2)
faddp st(1)
fadd dword [esp + 0x44]
fstp dword [esp + 0x98]
fld dword [esp + 0x9c]
fmul dword [esp + 0x28]
fld dword [esp + 0x10]
fmul dword [esp + 0x20]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c1682
fld dword [esp + 0x98]
fsub st(5)
fstp dword [esp + 0x10]
fld dword [esp + 0x9c]
fsub st(4)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x10]
fmul st(4)
faddp st(1)
fadd dword [esp + 0x40]
fstp dword [esp + 0x98]
fld dword [esp + 0x10]
fmul dword [esp + 0x24]
fld dword [esp + 0x14]
fmul st(2)
faddp st(1)
fadd dword [esp + 0x2c]
cmp byte [ebx + 0x33], 0
fstp dword [esp + 0x9c]
je 0x5c16dc
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(0)
fstp st(0)
fld dword [esp + 0xb4]
fst dword [esp + 0x10]
fld dword [esp + 0xb8]
fld st(0)
fmul dword [esp + 0x38]
fld dword [esp + 0x34]
fmulp st(3)
faddp st(2)
fld dword [esp + 0x44]
faddp st(2)
fxch st(1)
fstp dword [esp + 0xb4]
fmul dword [esp + 0x28]
fld dword [esp + 0x10]
fmul dword [esp + 0x20]
faddp st(1)
fadd dword [esp + 0x30]
jmp 0x5c172b
fld dword [esp + 0xb4]
fsubrp st(5)
fxch st(4)
fstp dword [esp + 0x10]
fld dword [esp + 0xb8]
fsubrp st(3)
fxch st(2)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fld st(0)
fmulp st(3)
fld dword [esp + 0x10]
fld st(0)
fmulp st(3)
fxch st(3)
faddp st(2)
fld dword [esp + 0x40]
faddp st(2)
fxch st(1)
fstp dword [esp + 0xb4]
fld dword [esp + 0x24]
fmulp st(2)
fmulp st(2)
faddp st(1)
fadd dword [esp + 0x2c]
fstp dword [esp + 0xb8]
fld dword [esp + 0x9c]
fld st(0)
fld dword [esp + 0x64]
fld st(0)
fsubp st(2)
fld dword [esp + 0x7c]
fld st(0)
fld dword [esp + 0x60]
fld st(0)
fsubp st(2)
fxch st(4)
fmulp st(1)
fld dword [esp + 0x80]
fld st(0)
fsubrp st(4)
fld dword [esp + 0x98]
fld st(0)
fsubrp st(6)
fxch st(4)
fmulp st(5)
fxch st(1)
fsubrp st(4)
fxch st(3)
fstp dword [esp + 0x1c]
fld dword [esp + 0xb8]
fld st(0)
fsubp st(4)
fld dword [esp + 0xb4]
fld st(0)
fsubp st(4)
fxch st(4)
fmulp st(3)
fsubp st(4)
fsubrp st(2)
fxch st(2)
fmulp st(1)
fsubp st(1)
fstp dword [esp + 0x3c]
fldz
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
fld dword [esp + 0x3c]
test ah, 0x41
jp 0x5c17fa
fcom st(2)
fnstsw ax
test ah, 0x41
jp 0x5c17fa
mov ecx, 7
lea esi, [esp + 0x7c]
lea edi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, 7
lea esi, [esp + 0x98]
lea edi, [esp + 0x7c]
rep movsd dword es:[edi], dword [esi]
mov ecx, 7
lea esi, [esp + 0x170]
lea edi, [esp + 0x98]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x5c]
fmul st(1)
fcomp qword [0x879f30]
fnstsw ax
test ah, 1
jne 0x5c182a
mov eax, dword [0x9bed28]
fstp st(0)
mov edx, dword [eax]
fstp st(0)
mov edx, dword [edx + 0x14c]
push 0x1c
lea ecx, [esp + 0x64]
push ecx
push 2
push 5
push eax
call edx
jmp 0x5c188b
fcompp
fnstsw ax
test ah, 5
jp 0x5c1870
mov ecx, 7
lea esi, [esp + 0x7c]
lea edi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, 7
lea esi, [esp + 0x98]
lea edi, [esp + 0x7c]
rep movsd dword es:[edi], dword [esi]
mov ecx, 7
lea esi, [esp + 0x170]
lea edi, [esp + 0x98]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x5c]
mov eax, dword [0x9bed28]
mov ecx, dword [eax]
push 0x1c
lea edx, [esp + 0x64]
push edx
push 2
push 5
push eax
mov eax, dword [ecx + 0x14c]
call eax
add ebx, 0x60
sub dword [esp + 0x18], 1
jne 0x5c13c0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x188
ret
pop edi
fstp st(1)
pop esi
fstp st(0)
pop ebp
xor eax, eax
pop ebx
add esp, 0x188
ret
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x188
ret