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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x2c
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0x44]
lea edx, [ebx + ebx*2]
mov edi, edx
sar edi, 2
mov esi, ebx
sar esi, 2
mov ebp, ecx
test esi, esi
jle 0x1004ccf9
mov eax, 1
jmp 0x1004cc6b
fstp dword [ebp - 8]
fstp dword [ebp - 4]
fld dword [ebp]
inc eax
fld dword [ebp + 8]
fld st(0)
fadd st(2)
fld dword [ebp + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebp + 0xc]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 0x24]
fxch st(2)
fstp dword [esp + 0x28]
fld dword [ebp + 0x10]
fld st(0)
fld dword [ebp + 0x18]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebp + 0x14]
fld st(0)
fld st(5)
fld dword [ebp + 0x1c]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ebp]
fld st(3)
fadd st(2)
fstp dword [ebp + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ebp + 0x10]
fxch st(1)
fstp dword [ebp + 0x14]
fld dword [esp + 0x24]
fld st(0)
fadd st(3)
fstp dword [ebp + 8]
fsubrp st(2)
fld dword [esp + 0x28]
fld st(0)
fsub st(2)
fstp dword [ebp + 0xc]
faddp st(1)
fxch st(1)
add ebp, 0x20
cmp eax, esi
jle 0x1004cc65
fstp dword [ebp - 8]
fstp dword [ebp - 4]
test ebx, 0xaaaaaaaa
je 0x1004dc50
mov esi, ebx
sar esi, 3
mov ebp, ecx
test esi, esi
jle 0x1004ce02
mov dword [esp + 0x10], ecx
mov eax, 1
mov ecx, dword [esp + 0x48]
jmp 0x1004cd29
fstp dword [ebp - 8]
fstp dword [ebp - 4]
fld dword [ebp + 0x20]
fld st(0)
inc eax
fld dword [ebp]
fadd st(1), st(0)
fsubrp st(2)
fld dword [ebp + 0x24]
fld st(0)
fld dword [ebp + 4]
fadd st(1), st(0)
fsubrp st(2)
fxch st(2)
fstp dword [ebp]
fxch st(1)
fstp dword [ebp + 4]
fxch st(1)
fstp dword [ebp + 0x20]
fstp dword [ebp + 0x24]
fld dword [ecx + edi*4]
fld dword [ebp + 0x28]
fld st(0)
fld dword [ebp + 0x2c]
fadd st(1), st(0)
fxch st(1)
fmul st(3)
fld dword [ebp + 8]
fxch st(3)
fsubp st(2)
fxch st(3)
fmulp st(1)
fld dword [ebp + 0xc]
fld st(2)
fadd st(4)
fstp dword [ebp + 8]
fld st(0)
fadd st(2)
fstp dword [ebp + 0xc]
fxch st(3)
fsubp st(2)
fsubp st(2)
fstp dword [ebp + 0x28]
fstp dword [ebp + 0x2c]
fld dword [ebp + 0x34]
fld st(0)
fld dword [ebp + 0x10]
fadd st(1), st(0)
fsubrp st(2)
fld dword [ebp + 0x14]
fld st(0)
fld dword [ebp + 0x30]
fsub st(1), st(0)
faddp st(2)
fxch st(2)
fstp dword [ebp + 0x10]
fxch st(1)
fstp dword [ebp + 0x14]
fxch st(1)
fstp dword [ebp + 0x30]
fstp dword [ebp + 0x34]
fld dword [ebp + 0x38]
fld st(0)
fld dword [ebp + 0x3c]
fsub st(1), st(0)
faddp st(2)
fld dword [ecx + edi*4 + 4]
fmul st(1), st(0)
fmulp st(2)
fld dword [ebp + 0x18]
fld st(0)
fadd st(2)
fld dword [ebp + 0x1c]
fld st(0)
fadd st(5)
fxch st(2)
fstp dword [ebp + 0x18]
fxch st(3)
fsubp st(2)
fxch st(3)
fsubp st(2)
fxch st(2)
fstp dword [ebp + 0x1c]
fxch st(1)
add ebp, 0x40
cmp eax, esi
jle 0x1004cd23
fstp dword [ebp - 8]
fstp dword [ebp - 4]
mov ecx, dword [esp + 0x10]
mov esi, ebx
sar esi, 5
test esi, esi
je 0x1004e725
mov dword [esp + 0xc], ecx
mov ebp, edx
sar ebp, 4
test esi, esi
jle 0x1004d648
mov dword [esp], edx
mov eax, 1
mov ebx, ecx
mov dword [esp + 0x1c], eax
mov eax, ebp
shl eax, 2
mov dword [esp + 0x14], esi
lea edi, [eax + eax*2]
shl ebp, 5
mov dword [esp + 4], edi
lea edi, [eax + eax*4]
sub ebp, eax
mov dword [esp + 8], edi
lea edi, [eax + eax*2]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x20], edi
mov edx, dword [esp + 8]
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
fld dword [ebx]
fld dword [ebx + 0x40]
fld st(0)
fadd st(2)
fld dword [ebx + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebx + 0x44]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 0x28]
fxch st(2)
fstp dword [esp + 0x24]
fld dword [ebx + 0x80]
fld st(0)
fld dword [ebx + 0xc0]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebx + 0x84]
fld st(0)
fld st(5)
fld dword [ebx + 0xc4]
fadd st(2), st(0)
fsubp st(3)
fld dword [ebx + 0x4c]
fxch st(1)
fadd st(4)
fxch st(4)
fsubp st(7)
fxch st(3)
fstp dword [ebx]
fld st(4)
fadd st(1)
fstp dword [ebx + 4]
fsubp st(4)
fxch st(4)
fstp dword [ebx + 0x80]
fxch st(2)
fstp dword [ebx + 0x84]
fld dword [esp + 0x28]
fld st(0)
fadd st(4)
fstp dword [ebx + 0x40]
fsubrp st(3)
fld dword [esp + 0x24]
fld st(0)
fsub st(2)
fstp dword [ebx + 0x44]
faddp st(1)
fxch st(2)
fstp dword [ebx + 0xc0]
fxch st(1)
fstp dword [ebx + 0xc4]
fld dword [ebp + eax]
fld dword [ebp + eax + 4]
fld dword [ebx + 0x88]
fld st(0)
fmul st(3)
fld dword [ebx + 0x8c]
fld st(0)
fmul st(4)
fld dword [ebx + 0x48]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fxch st(3)
fmulp st(2)
fxch st(1)
faddp st(2)
fld st(2)
fld dword [ebp + eax + 8]
fmul st(1), st(0)
fld st(5)
fld dword [ebp + eax + 0xc]
fmul st(1), st(0)
fxch st(1)
fsubp st(3)
fxch st(2)
fstp dword [esp + 0x28]
fmulp st(5)
fmulp st(3)
fld dword [ebp + eax + 0x10]
fxch st(3)
faddp st(4)
fxch st(3)
fstp dword [esp + 0x24]
fld dword [ebx + 0xc8]
fld st(0)
fmul st(3)
fld dword [ebx + 0xcc]
fld st(0)
fxch st(5)
fmulp st(1)
fld dword [ebp + eax + 0x14]
fmul st(5), st(0)
fxch st(5)
fsubp st(2)
fxch st(4)
fmulp st(2)
fxch st(1)
faddp st(3)
fld st(3)
fld dword [esp + 0x24]
fxch st(1)
fadd st(2)
fxch st(2)
fsubp st(5)
fxch st(4)
fstp dword [esp + 4]
fld st(1)
fadd st(3)
fld dword [ebx + 8]
fxch st(4)
fsubp st(3)
fld st(3)
fld dword [esp + 0x28]
fadd st(1), st(0)
fsubp st(5)
fld dword [ebx + 0xc]
fld st(0)
fadd st(7)
fxch st(7)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [ebx + 8]
fld st(6)
fadd st(3)
fstp dword [ebx + 0xc]
fxch st(3)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ebx + 0x88]
fld st(2)
fadd st(2)
fxch st(4)
fstp dword [ebx + 0x8c]
fxch st(1)
fsubp st(2)
fxch st(2)
fstp dword [ebx + 0x48]
fld st(1)
fld dword [esp + 4]
fsub st(1), st(0)
faddp st(3)
fstp dword [ebx + 0x4c]
fstp dword [ebx + 0xc8]
fstp dword [ebx + 0xcc]
fld dword [ebp + eax*2]
fld dword [ebp + eax*2 + 4]
fld dword [ebx + 0x90]
fld st(0)
fmul st(3)
fld dword [ebx + 0x94]
fld st(0)
fmul st(4)
fld dword [ebx + 0x50]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fld dword [ebx + 0x54]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ebp + eax*2 + 8]
fld st(4)
fmul st(1)
fld dword [ebp + eax*2 + 0xc]
fld st(5)
fmul st(1)
fsubp st(2)
fxch st(2)
fmulp st(5)
fxch st(1)
fmulp st(5)
fstp dword [esp + 4]
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fld dword [ebp + eax*2 + 0x10]
fld dword [ebx + 0xd0]
fld st(0)
fmul st(2)
fld dword [ebx + 0xd4]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ebp + eax*2 + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(1)
faddp st(2)
fld st(3)
fld dword [esp + 0x28]
fxch st(1)
fadd st(2)
fxch st(2)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x24]
fld st(2)
fadd st(2)
fld dword [ebx + 0x10]
fxch st(3)
fsubp st(4)
fld st(2)
fld dword [esp + 4]
fadd st(1), st(0)
fsubp st(4)
fld dword [ebx + 0x14]
fld st(0)
fadd st(7)
fxch st(7)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [ebx + 0x10]
fld st(6)
fadd st(3)
fstp dword [ebx + 0x14]
fxch st(3)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ebx + 0x90]
fxch st(3)
fstp dword [ebx + 0x94]
fld st(0)
fadd st(2)
fstp dword [ebx + 0x50]
fld st(2)
fxch st(2)
fsubp st(1)
fld dword [esp + 0x24]
fsub st(2), st(0)
faddp st(3)
fxch st(1)
fstp dword [ebx + 0x54]
fstp dword [ebx + 0xd0]
fstp dword [ebx + 0xd4]
fld dword [ecx + ebp]
fld dword [ecx + ebp + 4]
fld dword [ebx + 0x98]
fld st(0)
fmul st(3)
fld dword [ebx + 0x9c]
fld st(0)
fmul st(4)
fld dword [ebx + 0x58]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fld dword [ebx + 0x5c]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ecx + ebp + 8]
fld st(4)
fmul st(1)
fld dword [ecx + ebp + 0xc]
fld st(5)
fmul st(1)
fsubp st(2)
fxch st(2)
fmulp st(5)
fxch st(1)
fmulp st(5)
fstp dword [esp + 4]
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fld dword [ecx + ebp + 0x10]
fld dword [ebx + 0xd8]
fld st(0)
fmul st(2)
fld dword [ebx + 0xdc]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + ebp + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(1)
faddp st(2)
fld st(3)
fld dword [esp + 0x28]
fxch st(1)
fadd st(2)
fxch st(2)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x24]
fld st(2)
fadd st(2)
fld dword [ebx + 0x18]
fxch st(3)
fsubp st(4)
fld st(2)
fld dword [esp + 4]
fadd st(1), st(0)
fsubp st(4)
fld dword [ebx + 0x1c]
fld st(0)
fadd st(7)
fxch st(7)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [ebx + 0x18]
fld st(6)
fadd st(3)
fstp dword [ebx + 0x1c]
fxch st(3)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ebx + 0x98]
fxch st(3)
fstp dword [ebx + 0x9c]
fld st(0)
fadd st(2)
fstp dword [ebx + 0x58]
fld st(2)
fxch st(2)
fsubp st(1)
fld dword [esp + 0x24]
fsub st(2), st(0)
faddp st(3)
fxch st(1)
fstp dword [ebx + 0x5c]
fstp dword [ebx + 0xd8]
fstp dword [ebx + 0xdc]
fld dword [ebp + eax*4]
fld dword [ebp + eax*4 + 4]
fld dword [ebx + 0xa0]
fld st(0)
fmul st(3)
fld dword [ebx + 0xa4]
fld st(0)
fmul st(4)
fld dword [ebx + 0x60]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fld dword [ebx + 0x64]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ebp + eax*4 + 8]
fld st(4)
fmul st(1)
fld dword [ebp + eax*4 + 0xc]
fld st(5)
fmul st(1)
fsubp st(2)
fxch st(2)
fmulp st(5)
fxch st(1)
fmulp st(5)
fstp dword [esp + 4]
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fld dword [ebp + eax*4 + 0x10]
fld dword [ebx + 0xe0]
fld st(0)
fmul st(2)
fld dword [ebx + 0xe4]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ebp + eax*4 + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(1)
faddp st(2)
fld st(3)
fld dword [esp + 0x28]
fxch st(1)
fadd st(2)
fxch st(2)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x24]
fld st(2)
fadd st(2)
fld dword [ebx + 0x20]
fxch st(3)
fsubp st(4)
fld st(2)
fld dword [esp + 4]
fadd st(1), st(0)
fsubp st(4)
fld dword [ebx + 0x24]
fld st(0)
fadd st(7)
fxch st(7)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [ebx + 0x20]
fld st(6)
fadd st(3)
fstp dword [ebx + 0x24]
fxch st(3)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ebx + 0xa0]
fxch st(3)
fstp dword [ebx + 0xa4]
fld st(0)
fadd st(2)
fstp dword [ebx + 0x60]
fld st(2)
fxch st(2)
fsubp st(1)
fld dword [esp + 0x24]
fsub st(2), st(0)
faddp st(3)
fxch st(1)
fstp dword [ebx + 0x64]
fstp dword [ebx + 0xe0]
fstp dword [ebx + 0xe4]
fld dword [edx + ebp]
fld dword [edx + ebp + 4]
fld dword [ebx + 0xa8]
fld st(0)
fmul st(3)
fld dword [ebx + 0xac]
fld st(0)
fmul st(4)
fld dword [ebx + 0x68]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fld dword [ebx + 0x6c]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [edx + ebp + 8]
fld st(4)
fmul st(1)
fld dword [edx + ebp + 0xc]
fld st(5)
fmul st(1)
fsubp st(2)
fxch st(2)
fmulp st(5)
fxch st(1)
fmulp st(5)
fstp dword [esp + 4]
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fld dword [edx + ebp + 0x10]
fld dword [ebx + 0xe8]
fld st(0)
fmul st(2)
fld dword [ebx + 0xec]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [edx + ebp + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(1)
faddp st(2)
fld st(3)
fld dword [esp + 0x28]
fxch st(1)
fadd st(2)
fxch st(2)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x24]
fld st(2)
fadd st(2)
fld dword [ebx + 0x28]
fxch st(3)
fsubp st(4)
fld st(2)
fld dword [esp + 4]
fadd st(1), st(0)
fsubp st(4)
fld dword [ebx + 0x2c]
fld st(0)
fadd st(7)
fxch st(7)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [ebx + 0x28]
fld st(6)
fadd st(3)
fstp dword [ebx + 0x2c]
fxch st(3)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ebx + 0xa8]
fld st(1)
fadd st(3)
fxch st(4)
fstp dword [ebx + 0xac]
fxch st(2)
fsubp st(1)
fxch st(2)
fstp dword [ebx + 0x68]
fld st(0)
fld dword [esp + 0x24]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebx + 0x6c]
fxch st(1)
fstp dword [ebx + 0xe8]
fstp dword [ebx + 0xec]
fld dword [ebp + esi*2]
fld dword [ebp + esi*2 + 4]
fld dword [ebx + 0xb0]
fld st(0)
fmul st(3)
fld dword [ebx + 0xb4]
fld st(0)
fmul st(4)
fld dword [ebx + 0x70]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fld dword [ebx + 0x74]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ebp + esi*2 + 8]
fld st(4)
fmul st(1)
fld dword [ebp + esi*2 + 0xc]
fld st(5)
fmul st(1)
fsubp st(2)
fxch st(2)
fmulp st(5)
fxch st(1)
fmulp st(5)
fstp dword [esp + 4]
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fld dword [ebp + esi*2 + 0x10]
fld dword [ebx + 0xf0]
fld st(0)
fmul st(2)
fld dword [ebx + 0xf4]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ebp + esi*2 + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(1)
faddp st(2)
fld st(3)
fld dword [esp + 0x28]
fxch st(1)
fadd st(2)
fxch st(2)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x24]
fld st(2)
fadd st(2)
fld dword [ebx + 0x30]
fxch st(3)
fsubp st(4)
fld st(2)
fld dword [esp + 4]
fadd st(1), st(0)
fsubp st(4)
fld dword [ebx + 0x34]
fld st(0)
fadd st(7)
fxch st(7)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [ebx + 0x30]
fld st(6)
fadd st(3)
fstp dword [ebx + 0x34]
fxch st(3)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ebx + 0xb0]
fld st(1)
fadd st(3)
fxch st(4)
fstp dword [ebx + 0xb4]
fxch st(2)
fsubp st(1)
mov esi, dword [esp + 0x1c]
fxch st(2)
fstp dword [ebx + 0x70]
fld st(0)
fld dword [esp + 0x24]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebx + 0x74]
fxch st(1)
fstp dword [ebx + 0xf0]
fstp dword [ebx + 0xf4]
fld dword [edi + ebp]
fld dword [edi + ebp + 4]
fld dword [ebx + 0xb8]
fld st(0)
fmul st(3)
fld dword [ebx + 0xbc]
fld st(0)
fmul st(4)
fld dword [ebx + 0x78]
fxch st(1)
fsubp st(3)
fxch st(5)
fmulp st(1)
fld dword [ebx + 0x7c]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [edi + ebp + 8]
fld st(4)
fmul st(1)
fld dword [edi + ebp + 0xc]
fld st(5)
fmul st(1)
fsubp st(2)
fxch st(2)
fmulp st(5)
fxch st(1)
fmulp st(5)
fstp dword [esp + 4]
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x28]
fld dword [edi + ebp + 0x10]
fld dword [edi + ebp + 0x14]
fld dword [ebx + 0xf8]
fld st(0)
fmul st(3)
fld dword [ebx + 0xfc]
fld st(0)
fmul st(4)
fsubp st(2)
fmulp st(4)
fxch st(2)
fmulp st(1)
fld dword [esp + 0x28]
fxch st(1)
faddp st(3)
fld st(4)
fadd st(2)
fstp dword [esp + 0x24]
fld dword [esp + 4]
fld dword [ebx + 0x3c]
fxch st(3)
fsubp st(6)
fld st(4)
fxch st(6)
fstp dword [esp + 8]
fxch st(3)
fadd st(5), st(0)
fsubp st(4)
fld dword [ebx + 0x38]
fld st(3)
fadd st(1)
fxch st(4)
fsubp st(1)
fld st(1)
fadd st(3)
fxch st(2)
fsubp st(3)
inc esi
mov edi, dword [esp + 0x14]
fld dword [esp + 0x24]
fld st(0)
fadd st(5)
fstp dword [ebx + 0x38]
fld st(2)
fadd st(7)
fstp dword [ebx + 0x3c]
fsubp st(4)
fxch st(5)
fsubp st(1)
fxch st(2)
fstp dword [ebx + 0xb8]
fxch st(1)
fstp dword [ebx + 0xbc]
fld st(2)
fadd st(2)
fstp dword [ebx + 0x78]
fld st(0)
fxch st(2)
fsubp st(3)
fld dword [esp + 8]
fsub st(2), st(0)
faddp st(1)
fxch st(1)
fstp dword [ebx + 0x7c]
fxch st(1)
fstp dword [ebx + 0xf8]
fstp dword [ebx + 0xfc]
add ebx, 0x100
cmp esi, edi
jle 0x1004ce69
mov edx, dword [esp]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
mov edi, ebx
sar edi, 7
test edi, edi
je 0x1004e725
mov esi, edx
sar esi, 6
mov ebp, ecx
test edi, edi
jle 0x1004d853
mov dword [esp], edx
mov eax, 1
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
fld dword [ebp]
mov ecx, ebx
mov edx, 0xffffffc2
fld dword [ebp + 0x100]
fld st(0)
fadd st(2)
fld dword [ebp + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebp + 0x104]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ebp + 0x200]
fld st(0)
fld dword [ebp + 0x300]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebp + 0x204]
fld st(0)
fld st(5)
fld dword [ebp + 0x304]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ebp]
fld st(3)
fadd st(2)
fstp dword [ebp + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ebp + 0x200]
fxch st(1)
fstp dword [ebp + 0x204]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ebp + 0x100]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ebp + 0x104]
faddp st(1)
fxch st(1)
fstp dword [ebp + 0x300]
fstp dword [ebp + 0x304]
lea ecx, [ecx + esi*4]
add ebp, 8
add edx, 2
fld dword [ecx]
fld dword [ebp + 0x200]
fld st(0)
fmul st(2)
fld dword [ebp + 0x204]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ebp + 0x100]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ecx + 8]
fld st(3)
fmul st(1)
fld dword [ebp + 0x104]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [ecx + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x10]
fld dword [ebp + 0x300]
fld st(0)
fmul st(2)
fld dword [ebp + 0x304]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(3)
fld dword [ebp]
fxch st(1)
fadd st(3)
fxch st(3)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ebp + 4]
fxch st(2)
fsubp st(4)
fld st(4)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(6)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(5)
fstp dword [ebp]
fld st(0)
fadd st(3)
fstp dword [ebp + 4]
fxch st(4)
fsubp st(1)
fxch st(1)
fsubp st(3)
fstp dword [ebp + 0x200]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [ebp + 0x204]
fxch st(2)
fsubp st(3)
fstp dword [ebp + 0x100]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebp + 0x104]
fxch st(1)
fstp dword [ebp + 0x300]
fstp dword [ebp + 0x304]
jne 0x1004d721
add ebp, 0x308
inc eax
cmp eax, edi
jle 0x1004d674
mov edx, dword [esp]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
mov edi, ebx
sar edi, 9
test edi, edi
je 0x1004e725
mov esi, edx
sar esi, 8
mov ebp, ecx
test edi, edi
jle 0x1004da5e
mov dword [esp], edx
mov eax, 1
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
fld dword [ebp]
mov ecx, ebx
mov edx, 0xffffff02
fld dword [ebp + 0x400]
fld st(0)
fadd st(2)
fld dword [ebp + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebp + 0x404]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ebp + 0x800]
fld st(0)
fld dword [ebp + 0xc00]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebp + 0x804]
fld st(0)
fld st(5)
fld dword [ebp + 0xc04]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ebp]
fld st(3)
fadd st(2)
fstp dword [ebp + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ebp + 0x800]
fxch st(1)
fstp dword [ebp + 0x804]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ebp + 0x400]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ebp + 0x404]
faddp st(1)
fxch st(1)
fstp dword [ebp + 0xc00]
fstp dword [ebp + 0xc04]
lea ecx, [ecx + esi*4]
add ebp, 8
add edx, 2
fld dword [ecx]
fld dword [ebp + 0x800]
fld st(0)
fmul st(2)
fld dword [ebp + 0x804]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ebp + 0x400]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ecx + 8]
fld st(3)
fmul st(1)
fld dword [ebp + 0x404]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [ecx + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x10]
fld dword [ebp + 0xc00]
fld st(0)
fmul st(2)
fld dword [ebp + 0xc04]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(3)
fld dword [ebp]
fxch st(1)
fadd st(3)
fxch st(3)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ebp + 4]
fxch st(2)
fsubp st(4)
fld st(4)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(6)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(5)
fstp dword [ebp]
fld st(0)
fadd st(3)
fstp dword [ebp + 4]
fxch st(4)
fsubp st(1)
fxch st(1)
fsubp st(3)
fstp dword [ebp + 0x800]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [ebp + 0x804]
fxch st(2)
fsubp st(3)
fstp dword [ebp + 0x400]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebp + 0x404]
fxch st(1)
fstp dword [ebp + 0xc00]
fstp dword [ebp + 0xc04]
jne 0x1004d92c
add ebp, 0xc08
inc eax
cmp eax, edi
jle 0x1004d87f
mov edx, dword [esp]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
sar ebx, 0xb
test ebx, ebx
je 0x1004e725
sar edx, 0xa
test ebx, ebx
jle 0x1004e725
mov eax, 1
mov edi, dword [esp + 0x48]
fld dword [ecx]
mov esi, edi
mov ebp, 0xfffffc02
fld dword [ecx + 0x1000]
fld st(0)
fadd st(2)
fld dword [ecx + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ecx + 0x1004]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x2000]
fld st(0)
fld dword [ecx + 0x3000]
fadd st(1), st(0)
fsubp st(2)
fld dword [ecx + 0x2004]
fld st(0)
fld st(5)
fld dword [ecx + 0x3004]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ecx]
fld st(3)
fadd st(2)
fstp dword [ecx + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ecx + 0x2000]
fxch st(1)
fstp dword [ecx + 0x2004]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ecx + 0x1000]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ecx + 0x1004]
faddp st(1)
fxch st(1)
fstp dword [ecx + 0x3000]
fstp dword [ecx + 0x3004]
lea esi, [esi + edx*4]
add ecx, 8
add ebp, 2
fld dword [esi]
fld dword [ecx + 0x2000]
fld st(0)
fmul st(2)
fld dword [ecx + 0x2004]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [esi + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ecx + 0x1000]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [esi + 8]
fld st(3)
fmul st(1)
fld dword [ecx + 0x1004]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [esi + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [esi + 0x10]
fld dword [ecx + 0x3000]
fld st(0)
fmul st(2)
fld dword [ecx + 0x3004]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [esi + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ecx]
fxch st(4)
fmulp st(3)
faddp st(2)
fld st(4)
fadd st(1)
fxch st(1)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ecx + 4]
fxch st(2)
fsubp st(4)
fld st(2)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(4)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(7)
fstp dword [ecx]
fld st(0)
fadd st(3)
fstp dword [ecx + 4]
fxch st(6)
fsubp st(1)
fxch st(1)
fsubp st(5)
fstp dword [ecx + 0x2000]
fld st(1)
fadd st(3)
fxch st(4)
fstp dword [ecx + 0x2004]
fxch st(2)
fsubp st(1)
fxch st(2)
fstp dword [ecx + 0x1000]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ecx + 0x1004]
fxch st(1)
fstp dword [ecx + 0x3000]
fstp dword [ecx + 0x3004]
jne 0x1004db28
add ecx, 0x3008
inc eax
cmp eax, ebx
jle 0x1004da7d
jmp 0x1004e725
mov edi, ebx
sar edi, 4
test edi, edi
je 0x1004e725
mov esi, ecx
mov ebp, edx
sar ebp, 3
test edi, edi
jle 0x1004df15
mov eax, 1
mov ebx, dword [esp + 0x48]
jmp 0x1004dc7d
fstp dword [esi - 8]
fstp dword [esi - 4]
fld dword [esi]
fld st(0)
inc eax
fld dword [esi + 0x20]
fadd st(1), st(0)
fsubp st(2)
fld dword [esi + 4]
fld st(0)
fld dword [esi + 0x24]
fadd st(1), st(0)
fsubp st(2)
fxch st(3)
fstp dword [esp + 8]
fstp dword [esp + 4]
fld dword [esi + 0x40]
fld st(0)
fld dword [esi + 0x60]
fadd st(1), st(0)
fsubp st(2)
fld dword [esi + 0x44]
fld st(0)
fld st(4)
fld dword [esi + 0x64]
fadd st(2), st(0)
fsubp st(3)
fld dword [esi + 0x10]
fxch st(1)
fadd st(4)
fxch st(4)
fsubp st(6)
fxch st(3)
fstp dword [esi]
fld st(5)
fadd st(1)
fstp dword [esi + 4]
fsubp st(5)
fxch st(3)
fstp dword [esi + 0x40]
fxch st(3)
fstp dword [esi + 0x44]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [esi + 0x20]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [esi + 0x24]
faddp st(1)
fxch st(1)
fstp dword [esi + 0x60]
fstp dword [esi + 0x64]
fld dword [ebx + ebp*4]
fld dword [esi + 0x48]
fld st(0)
fmul st(2)
fld dword [esi + 0x4c]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ebx + ebp*4 + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [esi + 0x6c]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [esi + 0x68]
fld st(1)
fxch st(1)
fmul dword [ebx + ebp*4 + 0x10]
fxch st(4)
fmul dword [ebx + ebp*4 + 0x14]
fsubp st(4)
fadd st(3)
fld dword [esi + 0x28]
fxch st(4)
fsubp st(2)
fxch st(3)
fadd dword [esi + 0x2c]
fmul dword [ebx + ebp*4 + 8]
fld dword [esi + 8]
fld st(0)
fadd st(2)
fxch st(2)
fsubp st(1)
fld st(1)
fadd st(5)
fstp dword [esi + 8]
fxch st(4)
fsubp st(1)
fstp dword [esi + 0x48]
fld st(1)
fld dword [esi + 0x6c]
fmul dword [ebx + ebp*4 + 0x10]
fld dword [esi + 0x68]
fmul dword [ebx + ebp*4 + 0x14]
faddp st(1)
fadd st(1), st(0)
fld dword [esi + 0xc]
fxch st(1)
fsubp st(4)
fld st(0)
fld dword [esi + 0x2c]
fsub dword [esi + 0x28]
fmul dword [ebx + ebp*4 + 8]
fadd st(1), st(0)
fsubp st(2)
fld st(0)
fadd st(3)
fxch st(3)
fsubp st(1)
fxch st(2)
fstp dword [esi + 0xc]
fld st(4)
fadd st(4)
fxch st(2)
fstp dword [esi + 0x4c]
fxch st(3)
fsubp st(4)
fstp dword [esi + 0x28]
fld st(1)
fsub st(1)
fstp dword [esi + 0x2c]
faddp st(1)
fxch st(1)
fstp dword [esi + 0x68]
fstp dword [esi + 0x6c]
fld dword [esi + 0x50]
fld st(0)
fld dword [esi + 0x54]
fadd st(1), st(0)
fsubrp st(2)
fmul dword [ebx + ebp*4 + 8]
fld st(0)
fxch st(2)
fmul dword [ebx + ebp*4 + 8]
fld dword [esi + 0x70]
fld st(0)
fld dword [esi + 0x74]
fsub st(1), st(0)
faddp st(2)
fmul dword [ebx + ebp*4 + 0xc]
fadd st(4), st(0)
fsubp st(3)
fmul dword [ebx + ebp*4 + 0xc]
fld st(1)
fadd st(1)
fxch st(3)
fstp dword [esp + 8]
fsubp st(1)
fld st(3)
fld dword [esi + 0x34]
fadd st(1), st(0)
fsubp st(5)
fld dword [esi + 0x14]
fld st(0)
fld dword [esi + 0x30]
fsub st(1), st(0)
faddp st(2)
fld st(2)
fadd st(6)
fxch st(6)
fsubp st(3)
fxch st(5)
fstp dword [esi + 0x10]
fld st(4)
fadd st(4)
fstp dword [esi + 0x14]
fxch st(3)
fsubp st(4)
fstp dword [esi + 0x50]
fld st(3)
fadd st(1)
fxch st(3)
fstp dword [esi + 0x54]
fsubp st(3)
fxch st(1)
fstp dword [esi + 0x30]
fld st(0)
fld dword [esp + 8]
fsub st(1), st(0)
faddp st(2)
fstp dword [esi + 0x34]
fxch st(1)
fstp dword [esi + 0x70]
fstp dword [esi + 0x74]
fld dword [ebx + ebp*4 + 0x10]
fld dword [ebx + ebp*4 + 0x14]
fld dword [esi + 0x58]
fld st(0)
fmul st(3)
fld dword [esi + 0x5c]
fld st(0)
fmul st(4)
fsubp st(2)
fxch st(2)
fmul st(3)
fxch st(2)
fmul st(4)
fld dword [esi + 0x7c]
fxch st(1)
faddp st(3)
fmulp st(4)
fld dword [esi + 0x78]
fmulp st(3)
fxch st(3)
fsubp st(2)
fld dword [esi + 0x38]
fld st(3)
fadd st(3)
fxch st(1)
fsub dword [esi + 0x3c]
fxch st(3)
fsubp st(4)
fxch st(2)
fmul dword [ebx + ebp*4 + 0xc]
fld dword [esi + 0x18]
fld st(0)
fadd st(2)
fxch st(2)
fsubp st(1)
fld st(1)
fadd st(4)
fstp dword [esi + 0x18]
fxch st(3)
fsubp st(1)
fstp dword [esi + 0x58]
fld st(0)
fld dword [esi + 0x7c]
fmul dword [ebx + ebp*4 + 0x14]
fld dword [esi + 0x78]
fmul dword [ebx + ebp*4 + 0x10]
faddp st(1)
fadd st(1), st(0)
fld dword [esi + 0x1c]
fxch st(1)
fsubp st(3)
fld st(0)
fld dword [esi + 0x3c]
fadd dword [esi + 0x38]
fmul dword [ebx + ebp*4 + 0xc]
fadd st(1), st(0)
fsubp st(2)
fld st(0)
fadd st(3)
fxch st(3)
fsubp st(1)
fxch st(2)
fstp dword [esi + 0x1c]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [esi + 0x5c]
fxch st(2)
fsubp st(3)
fstp dword [esi + 0x38]
fld st(0)
fsub st(3)
fstp dword [esi + 0x3c]
faddp st(2)
add esi, 0x80
cmp eax, edi
jle 0x1004dc77
fstp dword [esi - 8]
fstp dword [esi - 4]
mov ebx, dword [esp + 0x44]
mov edi, ebx
sar edi, 6
test edi, edi
je 0x1004e725
mov esi, edx
sar esi, 5
mov ebp, ecx
test edi, edi
jle 0x1004e120
mov dword [esp], edx
mov eax, 1
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
fld dword [ebp]
mov ecx, ebx
mov edx, 0xffffffe2
fld dword [ebp + 0x80]
fld st(0)
fadd st(2)
fld dword [ebp + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebp + 0x84]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ebp + 0x100]
fld st(0)
fld dword [ebp + 0x180]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebp + 0x104]
fld st(0)
fld st(5)
fld dword [ebp + 0x184]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ebp]
fld st(3)
fadd st(2)
fstp dword [ebp + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ebp + 0x100]
fxch st(1)
fstp dword [ebp + 0x104]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ebp + 0x80]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ebp + 0x84]
faddp st(1)
fxch st(1)
fstp dword [ebp + 0x180]
fstp dword [ebp + 0x184]
lea ecx, [ecx + esi*4]
add ebp, 8
add edx, 2
fld dword [ecx]
fld dword [ebp + 0x100]
fld st(0)
fmul st(2)
fld dword [ebp + 0x104]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ebp + 0x80]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ecx + 8]
fld st(3)
fmul st(1)
fld dword [ebp + 0x84]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [ecx + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x10]
fld dword [ebp + 0x180]
fld st(0)
fmul st(2)
fld dword [ebp + 0x184]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(3)
fld dword [ebp]
fxch st(1)
fadd st(3)
fxch st(3)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ebp + 4]
fxch st(2)
fsubp st(4)
fld st(4)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(6)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(5)
fstp dword [ebp]
fld st(0)
fadd st(3)
fstp dword [ebp + 4]
fxch st(4)
fsubp st(1)
fxch st(1)
fsubp st(3)
fstp dword [ebp + 0x100]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [ebp + 0x104]
fxch st(2)
fsubp st(3)
fstp dword [ebp + 0x80]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebp + 0x84]
fxch st(1)
fstp dword [ebp + 0x180]
fstp dword [ebp + 0x184]
jne 0x1004dfee
add ebp, 0x188
inc eax
cmp eax, edi
jle 0x1004df41
mov edx, dword [esp]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
mov edi, ebx
sar edi, 8
test edi, edi
je 0x1004e725
mov esi, edx
sar esi, 7
mov ebp, ecx
test edi, edi
jle 0x1004e32b
mov dword [esp], edx
mov eax, 1
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
fld dword [ebp]
mov ecx, ebx
mov edx, 0xffffff82
fld dword [ebp + 0x200]
fld st(0)
fadd st(2)
fld dword [ebp + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebp + 0x204]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ebp + 0x400]
fld st(0)
fld dword [ebp + 0x600]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebp + 0x404]
fld st(0)
fld st(5)
fld dword [ebp + 0x604]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ebp]
fld st(3)
fadd st(2)
fstp dword [ebp + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ebp + 0x400]
fxch st(1)
fstp dword [ebp + 0x404]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ebp + 0x200]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ebp + 0x204]
faddp st(1)
fxch st(1)
fstp dword [ebp + 0x600]
fstp dword [ebp + 0x604]
lea ecx, [ecx + esi*4]
add ebp, 8
add edx, 2
fld dword [ecx]
fld dword [ebp + 0x400]
fld st(0)
fmul st(2)
fld dword [ebp + 0x404]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ebp + 0x200]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ecx + 8]
fld st(3)
fmul st(1)
fld dword [ebp + 0x204]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [ecx + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x10]
fld dword [ebp + 0x600]
fld st(0)
fmul st(2)
fld dword [ebp + 0x604]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(3)
fld dword [ebp]
fxch st(1)
fadd st(3)
fxch st(3)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ebp + 4]
fxch st(2)
fsubp st(4)
fld st(4)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(6)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(5)
fstp dword [ebp]
fld st(0)
fadd st(3)
fstp dword [ebp + 4]
fxch st(4)
fsubp st(1)
fxch st(1)
fsubp st(3)
fstp dword [ebp + 0x400]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [ebp + 0x404]
fxch st(2)
fsubp st(3)
fstp dword [ebp + 0x200]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebp + 0x204]
fxch st(1)
fstp dword [ebp + 0x600]
fstp dword [ebp + 0x604]
jne 0x1004e1f9
add ebp, 0x608
inc eax
cmp eax, edi
jle 0x1004e14c
mov edx, dword [esp]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
mov edi, ebx
sar edi, 0xa
test edi, edi
je 0x1004e725
mov esi, edx
sar esi, 9
mov ebp, ecx
test edi, edi
jle 0x1004e536
mov dword [esp], edx
mov eax, 1
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
fld dword [ebp]
mov ecx, ebx
mov edx, 0xfffffe02
fld dword [ebp + 0x800]
fld st(0)
fadd st(2)
fld dword [ebp + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ebp + 0x804]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ebp + 0x1000]
fld st(0)
fld dword [ebp + 0x1800]
fadd st(1), st(0)
fsubp st(2)
fld dword [ebp + 0x1004]
fld st(0)
fld st(5)
fld dword [ebp + 0x1804]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ebp]
fld st(3)
fadd st(2)
fstp dword [ebp + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ebp + 0x1000]
fxch st(1)
fstp dword [ebp + 0x1004]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ebp + 0x800]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ebp + 0x804]
faddp st(1)
fxch st(1)
fstp dword [ebp + 0x1800]
fstp dword [ebp + 0x1804]
lea ecx, [ecx + esi*4]
add ebp, 8
add edx, 2
fld dword [ecx]
fld dword [ebp + 0x1000]
fld st(0)
fmul st(2)
fld dword [ebp + 0x1004]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ebp + 0x800]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [ecx + 8]
fld st(3)
fmul st(1)
fld dword [ebp + 0x804]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [ecx + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x10]
fld dword [ebp + 0x1800]
fld st(0)
fmul st(2)
fld dword [ebp + 0x1804]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [ecx + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(3)
fld dword [ebp]
fxch st(1)
fadd st(3)
fxch st(3)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ebp + 4]
fxch st(2)
fsubp st(4)
fld st(4)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(6)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(5)
fstp dword [ebp]
fld st(0)
fadd st(3)
fstp dword [ebp + 4]
fxch st(4)
fsubp st(1)
fxch st(1)
fsubp st(3)
fstp dword [ebp + 0x1000]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [ebp + 0x1004]
fxch st(2)
fsubp st(3)
fstp dword [ebp + 0x800]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ebp + 0x804]
fxch st(1)
fstp dword [ebp + 0x1800]
fstp dword [ebp + 0x1804]
jne 0x1004e404
add ebp, 0x1808
inc eax
cmp eax, edi
jle 0x1004e357
mov edx, dword [esp]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
sar ebx, 0xc
test ebx, ebx
je 0x1004e725
sar edx, 0xb
test ebx, ebx
jle 0x1004e725
mov eax, 1
mov edi, dword [esp + 0x48]
fld dword [ecx]
mov esi, edi
mov ebp, 0xfffff802
fld dword [ecx + 0x2000]
fld st(0)
fadd st(2)
fld dword [ecx + 4]
fld st(0)
fxch st(3)
fsubp st(4)
fld dword [ecx + 0x2004]
fadd st(3), st(0)
fsubp st(1)
fxch st(3)
fstp dword [esp + 8]
fxch st(2)
fstp dword [esp + 4]
fld dword [ecx + 0x4000]
fld st(0)
fld dword [ecx + 0x6000]
fadd st(1), st(0)
fsubp st(2)
fld dword [ecx + 0x4004]
fld st(0)
fld st(5)
fld dword [ecx + 0x6004]
fadd st(2), st(0)
fsubp st(3)
fadd st(3)
fxch st(3)
fsubp st(6)
fxch st(2)
fstp dword [ecx]
fld st(3)
fadd st(2)
fstp dword [ecx + 4]
fxch st(1)
fsubp st(3)
fxch st(3)
fstp dword [ecx + 0x4000]
fxch st(1)
fstp dword [ecx + 0x4004]
fld dword [esp + 8]
fld st(0)
fadd st(3)
fstp dword [ecx + 0x2000]
fsubrp st(2)
fld dword [esp + 4]
fld st(0)
fsub st(2)
fstp dword [ecx + 0x2004]
faddp st(1)
fxch st(1)
fstp dword [ecx + 0x6000]
fstp dword [ecx + 0x6004]
lea esi, [esi + edx*4]
add ecx, 8
add ebp, 2
fld dword [esi]
fld dword [ecx + 0x4000]
fld st(0)
fmul st(2)
fld dword [ecx + 0x4004]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [esi + 4]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fld dword [ecx + 0x2000]
fxch st(4)
fmulp st(3)
faddp st(2)
fld dword [esi + 8]
fld st(3)
fmul st(1)
fld dword [ecx + 0x2004]
fld st(0)
fxch st(3)
fmulp st(1)
fld dword [esi + 0xc]
fmul st(3), st(0)
fxch st(3)
fsubp st(2)
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 4]
fld dword [esi + 0x10]
fld dword [ecx + 0x6000]
fld st(0)
fmul st(2)
fld dword [ecx + 0x6004]
fld st(0)
fxch st(4)
fmulp st(1)
fld dword [esi + 0x14]
fmul st(4), st(0)
fxch st(4)
fsubp st(2)
fxch st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(3)
fld dword [ecx]
fxch st(1)
fadd st(3)
fxch st(3)
fsubp st(5)
fxch st(4)
fstp dword [esp + 0x28]
fld st(2)
fadd st(1)
fld dword [ecx + 4]
fxch st(2)
fsubp st(4)
fld st(4)
fld dword [esp + 8]
fadd st(1), st(0)
fsubp st(6)
fld dword [esp + 4]
fld st(3)
fadd st(1)
fxch st(1)
fsubp st(4)
fld st(1)
fadd st(5)
fstp dword [ecx]
fld st(0)
fadd st(3)
fstp dword [ecx + 4]
fxch st(4)
fsubp st(1)
fxch st(1)
fsubp st(3)
fstp dword [ecx + 0x4000]
fld st(3)
fadd st(3)
fxch st(2)
fstp dword [ecx + 0x4004]
fxch st(2)
fsubp st(3)
fstp dword [ecx + 0x2000]
fld st(0)
fld dword [esp + 0x28]
fsub st(1), st(0)
faddp st(2)
fstp dword [ecx + 0x2004]
fxch st(1)
fstp dword [ecx + 0x6000]
fstp dword [ecx + 0x6004]
jne 0x1004e600
add ecx, 0x6008
inc eax
cmp eax, ebx
jle 0x1004e555
add esp, 0x2c
pop ebx
pop ebp
pop esi
pop edi
ret