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

Disassembly:
sub esp, 0x58
movzx eax, byte [esp + 0x78]
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x64]
push ebx
mov ebx, 1
sub ebx, eax
imul eax, edx
push ebp
push esi
mov esi, dword [esp + 0x7c]
push edi
mov edi, ebx
imul ebx, edx
sub esi, eax
imul edi, ecx
mov eax, dword [esp + 0x78]
sub eax, ecx
and ecx, 1
mov dword [esp + 0x60], ebx
mov dword [esp + 0x24], esi
je 0x1002eb89
sar eax, 1
mov edx, eax
mov dword [esp + 0x28], eax
jmp 0x1002eb96
mov edx, eax
sar edx, 1
and eax, 1
add edx, eax
mov dword [esp + 0x28], edx
test ecx, ecx
fld qword [0x1008aec0]
fld qword [0x1008aeb8]
mov ebp, dword [esp + 0x84]
fld qword [0x1008aeb0]
mov dword [esp + 0x2c], edx
fld qword [0x1008aea8]
fld qword [0x1008aea0]
je 0x1002ef21
lea eax, [edx + 1]
mov dword [esp + 0x2c], eax
lea eax, [edx + edi]
imul eax, ebp
mov ecx, esi
sub ecx, ebx
cmp ecx, 4
mov dword [esp + 0x30], eax
mov eax, ebx
jl 0x1002ee60
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x70]
add edx, ebx
lea edx, [ecx + edx*4]
mov ecx, dword [esp + 0x6c]
mov esi, dword [ecx]
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x74]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [esp + 0x80]
sub ecx, 0x18
fmul st(5)
add ecx, 4
fld dword [esp + 0x74]
add ecx, 4
fadd dword [esp + 0x7c]
add ecx, 4
add ecx, 4
add ecx, 4
fmul st(5)
add ecx, 4
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esi + eax*4]
mov esi, dword [ecx - 0x18]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fmul st(1)
fstp dword [edx]
fld dword [esi + eax*4 + 4]
mov esi, dword [ecx - 0x14]
fstp dword [esp + 0x10]
fld dword [esi + eax*4 + 4]
mov esi, dword [ecx - 0x10]
fstp dword [esp + 0x14]
fld dword [esi + eax*4 + 4]
mov esi, dword [ecx - 0xc]
fstp dword [esp + 0x7c]
fld dword [esi + eax*4 + 4]
mov esi, dword [ecx - 8]
fstp dword [esp + 0x80]
fld dword [esi + eax*4 + 4]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x74]
fld dword [esi + eax*4 + 4]
mov esi, dword [ecx]
fstp dword [esp + 0x88]
fld dword [esp + 0x80]
fmul st(5)
fld dword [esp + 0x74]
fadd dword [esp + 0x7c]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esi + eax*4 + 4]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fmul st(1)
mov esi, dword [ecx - 0x18]
sub ecx, 0x18
add ecx, 4
fstp dword [edx + 4]
add ecx, 4
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x74]
sub ecx, 0x18
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx + 0x18]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [esp + 0x80]
add ecx, 4
fmul st(5)
add ecx, 4
fld dword [esp + 0x74]
add ecx, 4
fadd dword [esp + 0x7c]
add ecx, 4
add ecx, 4
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esi + eax*4 + 8]
mov esi, dword [ecx - 0x18]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fmul st(1)
fstp dword [edx + 8]
fld dword [esi + eax*4 + 0xc]
mov esi, dword [ecx - 0x14]
fstp dword [esp + 0x10]
fld dword [esi + eax*4 + 0xc]
mov esi, dword [ecx - 0x10]
fstp dword [esp + 0x14]
fld dword [esi + eax*4 + 0xc]
mov esi, dword [ecx - 0xc]
fstp dword [esp + 0x7c]
fld dword [esi + eax*4 + 0xc]
mov esi, dword [ecx - 8]
fstp dword [esp + 0x80]
fld dword [esi + eax*4 + 0xc]
mov esi, dword [ecx - 4]
fstp dword [esp + 0x74]
fld dword [esi + eax*4 + 0xc]
mov esi, dword [ecx]
fstp dword [esp + 0x88]
fld dword [esp + 0x80]
fmul st(5)
fld dword [esp + 0x74]
fadd dword [esp + 0x7c]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esi + eax*4 + 0xc]
fadd dword [esp + 0x10]
mov esi, dword [esp + 0x24]
add eax, 4
add esi, 0xfffffffd
fmul st(3)
sub ecx, 0x18
add edx, 0x10
cmp eax, esi
faddp st(1)
fmul st(1)
fstp dword [edx - 4]
jl 0x1002ebf8
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
jmp 0x1002ee64
mov ecx, dword [esp + 0x6c]
cmp eax, esi
jge 0x1002ef25
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x70]
add edx, eax
lea edx, [esi + edx*4]
mov esi, dword [ecx]
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x74]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [esp + 0x80]
add eax, 1
fmul st(5)
sub ecx, 0x18
fld dword [esp + 0x74]
add edx, 4
cmp eax, dword [esp + 0x24]
fadd dword [esp + 0x7c]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esi + eax*4 - 4]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fmul st(1)
fstp dword [edx - 4]
jl 0x1002ee79
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
jmp 0x1002ef25
mov ecx, dword [esp + 0x6c]
lea edx, [edx + edx - 1]
fstp st(0)
fld qword [0x1008ae80]
sar edx, 1
mov dword [esp + 0x5c], edx
mov eax, 0x55555556
imul edx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
mov dword [esp + 0x64], eax
add eax, edi
cmp edi, eax
mov edx, edi
mov dword [esp + 0x88], eax
jge 0x1002f2f9
imul edx, ebp
mov eax, dword [esp + 0x70]
add edx, ebx
lea edx, [eax + edx*4]
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x2c]
add edx, edi
imul edx, ebp
add edx, ebx
lea edx, [eax + edx*4]
mov dword [esp + 0x50], edx
lea edx, [edi + 1]
imul edx, ebp
add edx, ebx
lea edx, [eax + edx*4]
mov dword [esp + 0x44], edx
lea edx, [edi + 2]
imul edx, ebp
add edx, ebx
lea edx, [eax + edx*4]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x2c]
add edx, edi
add edx, 1
imul edx, ebp
add edx, ebx
lea edx, [eax + edx*4]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x2c]
add edx, edi
add edx, 2
imul edx, ebp
add edx, ebx
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x88]
sub edx, edi
sub edx, 1
mov dword [esp + 0x48], eax
mov eax, 0xaaaaaaab
mul edx
shr edx, 1
add edx, 1
lea esi, [ebp + ebp*2]
add esi, esi
lea edi, [edi + edx*2]
add esi, esi
add edi, edx
mov dword [esp + 0x58], edx
mov dword [esp + 0x30], edi
cmp ebx, dword [esp + 0x24]
mov eax, ebx
jge 0x1002f2c9
mov edx, dword [esp + 0x48]
mov ebp, dword [esp + 0x50]
mov edi, dword [esp + 0x54]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x44]
mov ebx, dword [ecx]
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x74]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x18]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x20]
add ecx, 4
fld dword [ebx + eax*4]
add ecx, 4
fstp dword [esp + 0x28]
fld dword [esp + 0x88]
fmul st(5)
fld dword [esp + 0x18]
fadd dword [esp + 0x74]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x80]
fmul st(4)
fsubp st(1)
fld dword [esp + 0x28]
fadd dword [esp + 0x7c]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x80]
fmul st(5)
fld dword [esp + 0x74]
fadd dword [esp + 0x7c]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esp + 0x18]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fadd dword [esp + 0x1c]
fmulp st(1)
fld dword [esp + 0x18]
fadd dword [esp + 0x7c]
fmul qword [0x1008ae98]
fld dword [esp + 0x74]
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x80]
fmul qword [0x1008ae88]
fsubp st(1)
faddp st(1)
fstp dword [edi]
fld dword [esp + 0x1c]
mov ebx, dword [ecx]
fld qword [0x1008aea0]
add ecx, 4
fmul st(1)
add ecx, 4
add ecx, 4
fstp dword [ebp]
fld dword [ebx + eax*4]
mov ebx, dword [ecx - 8]
fstp dword [esp + 0x10]
fld dword [ebx + eax*4]
mov ebx, dword [esp + 0x34]
fstp dword [esp + 0x14]
fstp dword [esp + 0x80]
fld dword [esp + 0x20]
fmul st(4)
fld dword [esp + 0x28]
fld dword [esp + 0x18]
fld st(0)
faddp st(2)
fxch st(1)
fmul st(5)
fsubp st(2)
fld dword [esp + 0x88]
fadd dword [esp + 0x10]
fmul st(4)
fsubp st(2)
fld dword [esp + 0x74]
fadd dword [esp + 0x14]
fmul st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x28]
fadd dword [esp + 0x74]
fmul qword [0x1008ae98]
fld st(1)
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x88]
fmul qword [0x1008ae88]
fsubp st(1)
fld dword [esp + 0x1c]
fadd dword [esp + 0x80]
fmul qword [0x1008ae80]
faddp st(1)
fstp dword [edx]
fld dword [esp + 0x1c]
fld qword [0x1008aea0]
fmul st(1)
fstp dword [ebx]
mov ebx, dword [ecx - 4]
fld dword [ebx + eax*4]
mov ebx, dword [ecx]
fstp dword [esp + 0x7c]
fstp dword [esp + 0x80]
fld dword [esp + 0x10]
fmul st(5)
fld dword [esp + 0x28]
fadd dword [esp + 0x14]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x7c]
fmul st(4)
fsubp st(1)
fld dword [ebx + eax*4]
fadd st(2)
fmul st(3)
faddp st(1)
fstp dword [esp + 0x1c]
fadd dword [esp + 0x14]
fmul qword [0x1008ae98]
fld dword [esp + 0x28]
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x10]
fmul qword [0x1008ae88]
mov ebx, dword [esp + 0x38]
fsubp st(1)
fld dword [esp + 0x1c]
add dword [esp + 0x34], 4
add dword [esp + 0x38], 4
fld st(0)
fadd dword [esp + 0x80]
add eax, 1
fld qword [0x1008ae80]
sub ecx, 0x30
fmul st(1), st(0)
add edi, 4
fxch st(3)
add ebp, 4
add edx, 4
faddp st(1)
fstp dword [ebx]
mov ebx, dword [esp + 0x3c]
add dword [esp + 0x3c], 4
cmp eax, dword [esp + 0x24]
fmul qword [0x1008aea0]
fstp dword [ebx]
jl 0x1002f026
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x84]
add dword [esp + 0x40], esi
add dword [esp + 0x44], esi
add dword [esp + 0x48], esi
add dword [esp + 0x4c], esi
add dword [esp + 0x50], esi
add dword [esp + 0x54], esi
add ecx, 0x18
sub edx, 1
mov dword [esp + 0x58], edx
jne 0x1002eff6
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0x64]
cmp dword [esp + 0x5c], edi
jle 0x1002f5a2
cmp ebx, esi
mov eax, ebx
jge 0x1002f5a2
mov esi, dword [esp + 0x2c]
add edi, 1
mov dword [esp + 0x60], edi
add esi, edx
mov edi, esi
mov esi, dword [esp + 0x70]
imul edi, ebp
add edi, ebx
lea edi, [esi + edi*4]
mov dword [esp + 0x50], edi
mov edi, edx
imul edi, ebp
add edi, ebx
lea esi, [esi + edi*4]
mov dword [esp + 0x54], esi
mov esi, dword [ecx]
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x74]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x18]
add ecx, 4
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x20]
add ecx, 4
fld dword [esi + eax*4]
add ecx, 4
fstp dword [esp + 0x28]
fld dword [esp + 0x88]
fmul st(5)
fld dword [esp + 0x18]
fadd dword [esp + 0x74]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x80]
fmul st(4)
fsubp st(1)
fld dword [esp + 0x28]
fadd dword [esp + 0x7c]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x80]
fmul st(5)
fld dword [esp + 0x74]
fadd dword [esp + 0x7c]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esp + 0x18]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x64]
fld dword [esp + 0x64]
fadd dword [esp + 0x1c]
fmulp st(1)
fld dword [esp + 0x18]
fadd dword [esp + 0x7c]
fmul qword [0x1008ae98]
fld dword [esp + 0x74]
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x80]
fld qword [0x1008ae88]
fmul st(1), st(0)
fxch st(2)
fsubrp st(1)
mov esi, dword [esp + 0x54]
faddp st(2)
fxch st(1)
fstp dword [esi]
mov esi, dword [esp + 0x50]
fld dword [esp + 0x1c]
fld qword [0x1008aea0]
fmul st(1)
fstp dword [esi]
mov esi, dword [esp + 0x60]
cmp esi, dword [esp + 0x5c]
jne 0x1002f4a5
mov esi, dword [esp + 0x24]
fstp st(0)
lea edi, [esi - 1]
fstp st(0)
cmp eax, edi
fld qword [0x1008ae80]
je 0x1002f594
sub ecx, 0x24
jmp 0x1002f57d
mov esi, dword [ecx]
fld dword [esi + eax*4]
mov esi, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
mov edi, dword [esp + 0x70]
fstp dword [esp + 0x80]
fld dword [esp + 0x20]
fmul st(5)
fld dword [esp + 0x28]
fadd dword [esp + 0x18]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x10]
fmul st(4)
fsubp st(1)
fld dword [esi + eax*4]
lea esi, [edx + 1]
fadd dword [esp + 0x74]
imul esi, ebp
fmul st(3)
faddp st(1)
add esi, eax
fstp dword [esp + 0x1c]
fld dword [esp + 0x28]
fadd dword [esp + 0x74]
fmul qword [0x1008ae98]
fld dword [esp + 0x18]
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x88]
fmulp st(2)
fsubrp st(1)
fld dword [esp + 0x1c]
fld st(0)
fadd dword [esp + 0x80]
fld qword [0x1008ae80]
fmul st(1), st(0)
fxch st(3)
faddp st(1)
fstp dword [esp + 0x88]
fld dword [esp + 0x88]
fstp dword [edi + esi*4]
mov esi, dword [esp + 0x2c]
add esi, edx
fmul qword [0x1008aea0]
add esi, 1
imul esi, ebp
fstp dword [esp + 0x88]
fld dword [esp + 0x88]
add esi, eax
fstp dword [edi + esi*4]
mov esi, dword [esp + 0x24]
lea edi, [esi - 1]
cmp eax, edi
je 0x1002f59c
sub ecx, 0x28
add dword [esp + 0x54], 4
add dword [esp + 0x50], 4
add eax, 1
cmp eax, esi
jl 0x1002f33e
jmp 0x1002f5a2
add edx, 1
sub ecx, 0x1c
jmp 0x1002f5a2
add edx, 2
sub ecx, 0x18
test byte [esp + 0x78], 1
mov eax, ebx
je 0x1002f70a
cmp ebx, esi
fstp st(0)
jge 0x1002f6fa
mov edi, dword [esp + 0x70]
imul edx, ebp
add edx, ebx
lea edx, [edi + edx*4]
mov edi, dword [ecx]
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x74]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x18]
add ecx, 4
fld dword [edi + eax*4]
mov edi, dword [ecx + 4]
fstp dword [esp + 0x20]
add ecx, 4
fld dword [esp + 0x88]
fmul st(4)
fld dword [esp + 0x18]
fld dword [esp + 0x74]
fld st(0)
faddp st(2)
fxch st(1)
fmul st(5)
fsubp st(2)
fld dword [esp + 0x20]
fadd dword [esp + 0x80]
fmul st(4)
fsubp st(2)
fld dword [edi + eax*4]
fadd dword [esp + 0x7c]
fmul st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fld dword [esp + 0x80]
fmul st(6)
fld dword [esp + 0x7c]
faddp st(3)
fxch st(2)
fmul st(5)
fsubp st(2)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(2)
fld dword [esp + 0x18]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x78]
fadd dword [esp + 0x78]
fmul qword [0x1008ae80]
fld dword [esp + 0x18]
fadd dword [esp + 0x7c]
fmul qword [0x1008ae98]
fld dword [esp + 0x74]
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x80]
fmul qword [0x1008ae88]
fsubp st(1)
add eax, 1
sub ecx, 0x20
add edx, 4
cmp eax, esi
faddp st(1)
fstp dword [edx - 4]
jl 0x1002f5c5
fstp st(3)
pop edi
fstp st(1)
pop esi
fstp st(0)
pop ebp
fstp st(0)
pop ebx
add esp, 0x58
ret
cmp ebx, esi
jge 0x1002f87d
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x70]
add esi, edx
imul edx, ebp
imul esi, ebp
add esi, ebx
add edx, ebx
lea esi, [edi + esi*4]
lea edx, [edi + edx*4]
mov edi, dword [esp + 0x24]
jmp 0x1002f738
fld qword [0x1008ae80]
mov ebx, dword [ecx]
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x10]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x14]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x7c]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x80]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x74]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x88]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x18]
add ecx, 4
fld dword [ebx + eax*4]
mov ebx, dword [ecx + 4]
fstp dword [esp + 0x20]
add ecx, 4
fld dword [esp + 0x88]
fmul st(5)
fld dword [esp + 0x18]
fadd dword [esp + 0x74]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x20]
fadd dword [esp + 0x80]
fmul st(4)
fsubp st(1)
fld dword [ebx + eax*4]
fadd dword [esp + 0x7c]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x80]
fmul st(5)
fld dword [esp + 0x74]
fadd dword [esp + 0x7c]
fmul st(5)
fsubp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x14]
fmul st(4)
fsubp st(1)
fld dword [esp + 0x18]
fadd dword [esp + 0x10]
fmul st(3)
faddp st(1)
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fadd dword [esp + 0x1c]
fmulp st(1)
fld dword [esp + 0x18]
fadd dword [esp + 0x7c]
fmul qword [0x1008ae98]
fld dword [esp + 0x74]
fmul qword [0x1008ae90]
faddp st(1)
fld dword [esp + 0x88]
fadd dword [esp + 0x80]
fmul qword [0x1008ae88]
fsubp st(1)
faddp st(1)
fstp dword [edx]
fld dword [esp + 0x1c]
fmul qword [0x1008aea0]
fstp dword [esi]
add eax, 1
sub ecx, 0x20
add edx, 4
add esi, 4
cmp eax, edi
jl 0x1002f732
fstp st(3)
pop edi
fstp st(1)
pop esi
fstp st(0)
pop ebp
fstp st(0)
pop ebx
add esp, 0x58
ret
fstp st(4)
pop edi
fstp st(2)
pop esi
fstp st(0)
pop ebp
fstp st(0)
pop ebx
fstp st(0)
add esp, 0x58
ret