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

Disassembly:
push ebx
push esi
mov ebx, ecx
push edi
push ebp
sub esp, 0x410
mov edx, dword [ebx + 0x284]
movsx eax, word [edx + 0x5c]
fldz
fld dword [0x691f2c]
mov ebp, eax
mov edi, dword [ebp*4 + 0x92d4c8]
mov ecx, dword [edi + 0x1c]
lea edi, [esp + 0xac]
add ecx, 0x10
fadd dword [ecx]
fstp dword [esp + 0x32c]
fld dword [0x691f2c]
fadd dword [ecx + 4]
lea esi, [esp + 0x32c]
fstp dword [esp + 0x330]
fld dword [0x691e34]
fadd dword [ecx + 8]
fstp dword [esp + 0x334]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [eax*4 + 0x92d4c8]
lea edi, [esp + 0xb8]
mov eax, dword [esi + 0x1c]
fld dword [0x691e48]
add eax, 0x1c
fadd dword [eax]
fstp dword [esp + 0x338]
fld dword [0x691e48]
fadd dword [eax + 4]
lea esi, [esp + 0x338]
fstp dword [esp + 0x33c]
fld dword [0x691e34]
fadd dword [eax + 8]
fstp dword [esp + 0x340]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0xac]
lea edi, [esp + 0xc4]
fld dword [esp + 0xb0]
mov dword [esp + 0x344], eax
lea esi, [esp + 0x344]
mov dword [esp + 0x34c], 0
fst st(1)
fstp dword [esp + 0x348]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0xb8]
lea edi, [esp + 0xd0]
mov dword [esp + 0x350], eax
lea esi, [esp + 0x350]
mov dword [esp + 0x358], 0
fst dword [esp + 0x354]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0xb8]
lea edi, [esp + 0xdc]
fld dword [esp + 0xbc]
mov dword [esp + 0x35c], eax
lea esi, [esp + 0x35c]
mov dword [esp + 0x364], 0
fst st(1)
fstp dword [esp + 0x360]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0xac]
lea edi, [esp + 0xe8]
mov dword [esp + 0x368], eax
lea esi, [esp + 0x368]
mov dword [esp + 0x370], 0
fst dword [esp + 0x36c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x284]
mov al, byte [ecx + 0x50]
and al, 7
cmp al, 2
jne 0x4f9920
fstp st(0)
call fcn.005b84f0
test al, al
fldz
fldz
fldz
je 0x4f9927
fld dword [esp + 0xd0]
fstp st(3)
fld dword [esp + 0xd4]
fstp st(2)
fld dword [esp + 0xd8]
fstp st(1)
fld st(2)
mov eax, dword [esp + 0xc4]
mov ebp, dword [esp + 0xc8]
fstp dword [esp + 0xc4]
fld st(1)
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0xcc]
fstp dword [esp + 0xc8]
fst dword [esp + 0xcc]
fld dword [esp + 0xe8]
fstp st(3)
fld dword [esp + 0xec]
fstp st(2)
fld dword [esp + 0xf0]
fstp st(1)
fld st(2)
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0xdc]
fstp dword [esp + 0xdc]
fld st(1)
mov edx, dword [esp + 0xe0]
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0xd4], ebp
fstp dword [esp + 0xe0]
fst dword [esp + 0xe4]
fcompp
fstp st(0)
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], edx
mov eax, dword [ebx + 0x284]
xor ebp, ebp
lea edi, [esp + 0xc4]
mov dword [esp + 0x28], eax
add dword [esp + 0x28], 4
xor esi, esi
lea eax, [eax]
lea eax, [esp + 0x374]
push edi
push dword [esp + 0x2c]
push eax
call fcn.004dff20
mov eax, dword [esp + 0x380]
inc ebp
mov dword [esp + esi + 0x100], eax
mov ecx, dword [esp + 0x384]
mov dword [esp + esi + 0x104], ecx
mov eax, dword [esp + 0x388]
mov dword [esp + esi + 0x108], eax
mov dword [esp + 0x14], ebx
add dword [esp + 0x14], 4
add dword [esp + 0x14], 0x30
mov eax, dword [esp + 0x14]
add esp, 0xc
fld dword [eax + 8]
add edi, 0xc
fstp dword [esp + esi + 0xfc]
add esi, 0xc
cmp ebp, 4
jl 0x4f7c20
lea esi, [esp + 0x118]
lea edi, [esp + 0x164]
movsd dword es:[edi], dword [esi]
xor ebp, ebp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0xf4]
mov dword [esp + 0x18], 0
mov dword [esp + 4], eax
lea eax, [eax]
mov eax, dword [esp + 4]
lea edi, [esp + 0x170]
fld dword [eax]
fsub dword [esp + 0x164]
mov eax, dword [esp + 0x168]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 4]
fstp dword [esp + 0x380]
fld dword [eax + 4]
fsub dword [esp + 0x98]
mov eax, dword [esp + 0x16c]
lea esi, [esp + 0x380]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 4]
fstp dword [esp + 0x384]
fld dword [eax + 8]
fsub dword [esp + 0x9c]
fstp dword [esp + 0x388]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x170]
call fcn.004dfea0
mov eax, dword [esp + 0x174]
mov dword [esp + ebp + 0x124], eax
fld dword [esp + 0x170]
fchs
fstp dword [esp + ebp + 0x128]
mov dword [esp + ebp + 0x12c], 0
mov eax, dword [esp + 0x18]
fld dword [esp + 0x98]
fmul dword [esp + ebp + 0x128]
fld dword [esp + 0x164]
fmul dword [esp + ebp + 0x124]
faddp st(1)
fld dword [esp + 0x9c]
fmul dword [esp + ebp + 0x12c]
add ebp, 0xc
faddp st(1)
fchs
fstp dword [esp + eax*4 + 0x154]
mov eax, dword [esp + 4]
fld dword [eax]
mov eax, dword [esp + 4]
fstp dword [esp + 0x164]
fld dword [eax + 4]
mov eax, dword [esp + 4]
fstp dword [esp + 0x168]
fld dword [eax + 8]
inc dword [esp + 0x18]
add dword [esp + 4], 0xc
cmp dword [esp + 0x18], 4
fstp dword [esp + 0x16c]
jl 0x4f7cb0
mov eax, dword [esp + 8]
mov byte [esp + 0x24], 0
fld dword [eax]
fstp dword [esp + 0x17c]
fld dword [eax + 4]
fstp dword [esp + 0x180]
fld dword [eax + 8]
fstp dword [esp + 0x184]
fld dword [ebx + 0x340]
fstp dword [esp + 0x188]
fld dword [ebx + 0x344]
fstp dword [esp + 0x18c]
fld dword [ebx + 0x348]
fstp dword [esp + 0x190]
fld dword [esp + 0x188]
fsub dword [esp + 0x17c]
lea edi, [esp + 0x194]
fstp dword [esp + 0x38c]
fld dword [esp + 0x18c]
fsub dword [esp + 0x180]
lea esi, [esp + 0x38c]
fstp dword [esp + 0x390]
fld dword [esp + 0x190]
fsub dword [esp + 0x184]
fstp dword [esp + 0x394]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x194]
call fcn.004dfea0
lea esi, [esp + 0x17c]
lea edi, [esp + 0x1a0]
movsd dword es:[edi], dword [esi]
xor edx, edx
fldz
fldz
fldz
fldz
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1a8]
mov esi, dword [esp + 0x1a4]
mov edi, dword [esp + 0x198]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x19c]
mov dword [esp + 0x74], esi
mov dword [esp + 0x84], edi
xor ecx, ecx
mov dword [esp + 0x88], eax
fld dword [esp + ecx + 0x128]
fstp st(2)
fld st(1)
fmul dword [esp + 0x180]
fld dword [esp + ecx + 0x124]
fstp st(2)
fld st(1)
fmul dword [esp + 0x17c]
faddp st(1)
fld dword [esp + ecx + 0x12c]
fstp st(4)
fld st(3)
fmul dword [esp + 0x184]
faddp st(1)
fld dword [esp + edx*4 + 0x154]
fstp st(5)
fadd st(4)
fstp dword [esp + 0x54]
fld dword [esp + 0x54]
fcomp dword [0x691e58]
fnstsw ax
test ah, 0x45
jne 0x4f7f24
mov ebp, 1
jmp 0x4f7f42
fld dword [esp + 0x54]
fcomp dword [0x691f30]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f7f40
or ebp, 0xffffffff
jmp 0x4f7f42
xor ebp, ebp
fld st(1)
fmul dword [esp + 0x18c]
fld st(1)
fmul dword [esp + 0x188]
faddp st(1)
fld st(3)
fmul dword [esp + 0x190]
faddp st(1)
fadd st(4)
fstp dword [esp + 0x60]
fld dword [esp + 0x60]
fcomp dword [0x691e58]
fnstsw ax
test ah, 0x45
jne 0x4f7f80
mov esi, 1
jmp 0x4f7fa2
fld dword [esp + 0x60]
fcomp dword [0x691f30]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f7fa0
or esi, 0xffffffff
jmp 0x4f7fa2
xor esi, esi
cmp ebp, 0xffffffff
je 0x4f8060
cmp esi, 0xffffffff
je 0x4f8060
test ebp, ebp
mov byte [esp + 0x24], 1
jne 0x4f8007
fld dword [0x691e58]
fsub dword [esp + 0x54]
fstp st(4)
fld st(3)
fmul st(3)
fstp dword [esp + 0x68]
fld st(3)
fmul st(1)
fadd dword [esp + 0x17c]
fstp dword [esp + 0x17c]
fld st(3)
fmul st(2)
fadd dword [esp + 0x180]
fstp dword [esp + 0x180]
fld dword [esp + 0x184]
fadd dword [esp + 0x68]
fstp dword [esp + 0x184]
test esi, esi
jne 0x4f8183
fld dword [0x691e58]
fsub dword [esp + 0x60]
fstp st(4)
fld st(3)
fmul st(3)
fstp st(3)
fld st(3)
fmul st(1)
fadd dword [esp + 0x188]
fstp dword [esp + 0x188]
fld st(3)
fmul st(2)
fadd dword [esp + 0x18c]
fstp dword [esp + 0x18c]
fld dword [esp + 0x190]
fadd st(3)
fstp dword [esp + 0x190]
jmp 0x4f8183
cmp ebp, 0xffffffff
jne 0x4f80f6
cmp esi, 1
jne 0x4f80f6
fld st(1)
fmul dword [esp + 0x74]
fld st(1)
fmul dword [esp + 0x1a0]
faddp st(1)
fld st(3)
fmul dword [esp + 0x78]
faddp st(1)
fadd st(4)
fchs
fld st(2)
fmul dword [esp + 0x84]
fld st(2)
fmul dword [esp + 0x194]
faddp st(1)
fld st(4)
fmul dword [esp + 0x88]
faddp st(1)
fdivp st(1)
fstp st(4)
fld st(3)
fmul dword [esp + 0x194]
fadd dword [esp + 0x1a0]
fstp dword [esp + 0x188]
fld st(3)
fmul dword [esp + 0x84]
fadd dword [esp + 0x74]
fstp dword [esp + 0x18c]
fld st(3)
fmul dword [esp + 0x88]
fadd dword [esp + 0x78]
fstp dword [esp + 0x190]
jmp 0x4f8183
cmp ebp, 1
jne 0x4f8183
cmp esi, 0xffffffff
jne 0x4f8183
fld st(1)
fmul dword [esp + 0x74]
fld st(1)
fmul dword [esp + 0x1a0]
faddp st(1)
fld st(3)
fmul dword [esp + 0x78]
faddp st(1)
fadd st(4)
fchs
fld st(2)
fmul dword [esp + 0x84]
fld st(2)
fmul dword [esp + 0x194]
faddp st(1)
fld st(4)
fmul dword [esp + 0x88]
faddp st(1)
fdivp st(1)
fstp st(4)
fld st(3)
fmul dword [esp + 0x194]
fadd dword [esp + 0x1a0]
fstp dword [esp + 0x17c]
fld st(3)
fmul dword [esp + 0x84]
fadd dword [esp + 0x74]
fstp dword [esp + 0x180]
fld st(3)
fmul dword [esp + 0x88]
fadd dword [esp + 0x78]
fstp dword [esp + 0x184]
inc edx
add ecx, 0xc
cmp edx, 4
jl 0x4f7ec3
cmp byte [esp + 0x24], 0
jne 0x4f9930
mov dword [esp + 0x1ac], 0
mov dword [esp + 0x1b0], 0
fld dword [esp + 0x1ac]
fadd dword [esp + 0xf4]
mov dword [esp + 0x1b4], 0
xor ebp, ebp
xor edi, edi
fstp dword [esp + 0x1ac]
fld dword [esp + 0x1b0]
fadd dword [esp + 0xf8]
fstp dword [esp + 0x1b0]
fld dword [esp + 0x1b4]
fadd dword [esp + 0xfc]
fstp dword [esp + 0x1b4]
fld dword [esp + 0x1ac]
fadd dword [esp + 0x100]
fstp dword [esp + 0x1ac]
fld dword [esp + 0x1b0]
fadd dword [esp + 0x104]
fstp dword [esp + 0x1b0]
fld dword [esp + 0x1b4]
fadd dword [esp + 0x108]
fstp dword [esp + 0x1b4]
fld dword [esp + 0x1ac]
fadd dword [esp + 0x10c]
fstp dword [esp + 0x1ac]
fld dword [esp + 0x1b0]
fadd dword [esp + 0x110]
fstp dword [esp + 0x1b0]
fld dword [esp + 0x1b4]
fadd dword [esp + 0x114]
fstp dword [esp + 0x1b4]
fld dword [esp + 0x1ac]
fadd dword [esp + 0x118]
fstp dword [esp + 0x1ac]
fld dword [esp + 0x1b0]
fadd dword [esp + 0x11c]
fstp dword [esp + 0x1b0]
fld dword [esp + 0x1b4]
fadd dword [esp + 0x120]
fstp dword [esp + 0x1b4]
fld dword [esp + 0x1ac]
fmul dword [0x691e4c]
fstp dword [esp + 0x1ac]
fld dword [esp + 0x1b0]
fmul dword [0x691e4c]
fstp dword [esp + 0x1b0]
fld dword [esp + 0x1b4]
fmul dword [0x691e4c]
fstp dword [esp + 0x1b4]
fld dword [0x691e34]
fstp st(4)
fld dword [esp + 0x1b0]
mov eax, dword [esp + 0x1b4]
fstp st(2)
mov dword [esp + 0x80], eax
fld dword [esp + edi + 0xf4]
fsub dword [esp + 0x1ac]
fstp st(3)
fld dword [esp + edi + 0xf8]
fsub st(2)
fst st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fld dword [esp + edi + 0xfc]
fsub dword [esp + 0x80]
fstp st(4)
fld st(3)
fmul st(0)
faddp st(1)
fstp st(3)
fld st(2)
fcomp st(4)
fnstsw ax
test ah, 0x45
jne 0x4f8361
fld st(2)
fstp st(4)
inc ebp
add edi, 0xc
cmp ebp, 4
jl 0x4f8317
fld st(3)
fsqrt
fstp dword [esp + 0xa0]
fld dword [esp + 0xa0]
fstp st(4)
lea eax, [esp + 0x1ac]
fld st(3)
fstp st(4)
fld dword [0x691f34]
fmulp st(4)
fld st(3)
push 0
push 0
push eax
push eax
fstp dword [esp]
fcompp
fcompp
lea ecx, [esp + 0x1c8]
call fcn.004173a0
mov eax, dword [esp + 8]
lea edi, [esp + 0x1cc]
fldz
fld dword [ebx + 0x340]
fsub dword [eax]
fstp dword [esp + 0x398]
fld dword [ebx + 0x344]
fsub dword [eax + 4]
lea esi, [esp + 0x398]
fstp dword [esp + 0x39c]
fld dword [ebx + 0x348]
fsub dword [eax + 8]
fstp dword [esp + 0x3a0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x1d0]
fst st(1)
fmul st(0)
fld dword [esp + 0x1cc]
fmul st(0)
faddp st(1)
mov dword [esp + 0x1d4], 0
fld dword [esp + 0x1d4]
fstp st(2)
fld st(1)
fmul st(0)
faddp st(1)
fst st(1)
fsqrt
fstp dword [esp + 0xa0]
fld dword [esp + 0xa0]
fstp st(1)
fld dword [0x691e34]
fcomp st(1)
fnstsw ax
and ah, 0x44
cmp ah, 0x40
jne 0x4f8457
xor al, al
add esp, 0x410
fstp st(0)
pop ebp
pop edi
pop esi
pop ebx
ret
lea ecx, [esp + 0x1cc]
fstp st(0)
call fcn.004dfea0
mov eax, dword [esp + 8]
lea edi, [esp + 0x1d8]
lea esi, [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x17c]
lea ecx, [esp + 0x188]
lea esi, [esp + 0x1cc]
push ecx
push eax
lea eax, [esp + 0x1e0]
lea ecx, [esp + 0x1c0]
push esi
push eax
call fcn.00417260
test al, al
jne 0x4f84d0
mov dword [ebx + 0x28c], 0
cmp dword [ebx + 0x244], 0xb
jne 0x4f84bf
mov ecx, ebx
call fcn.0050c600
xor al, al
add esp, 0x410
pop ebp
pop edi
pop esi
pop ebx
ret
lea esi, [esp + 0x17c]
lea edi, [esp + 0x1e4]
or dword [esp + 0x1c], 0xffffffff
or dword [esp + 0x14], 0xffffffff
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x188]
fsub dword [esp + 0x17c]
lea edi, [esp + 0x1f0]
fstp dword [esp + 0x3a4]
fld dword [esp + 0x18c]
fsub dword [esp + 0x180]
lea esi, [esp + 0x3a4]
fstp dword [esp + 0x3a8]
fld dword [esp + 0x190]
fsub dword [esp + 0x184]
fstp dword [esp + 0x3ac]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x1f0]
call fcn.004dfea0
mov eax, dword [esp + 0x1ec]
xor edx, edx
mov ecx, dword [esp + 0x1f4]
xor edi, edi
mov dword [esp + 0x5c], eax
mov ebp, dword [esp + 0x1e8]
mov eax, dword [esp + 0x1f8]
mov dword [esp + 0x58], ebp
fldz
fldz
fldz
fldz
mov dword [esp + 0x7c], eax
mov dword [esp + 0x64], ecx
nop
fld dword [esp + edi + 0x128]
fstp st(4)
fld st(3)
fmul dword [esp + 0x180]
fld dword [esp + edi + 0x124]
fstp st(4)
fld st(3)
fmul dword [esp + 0x17c]
faddp st(1)
fld dword [esp + edi + 0x12c]
fstp st(3)
fld st(2)
fmul dword [esp + 0x184]
faddp st(1)
fld dword [esp + edx*4 + 0x154]
fstp st(2)
fadd st(1)
fstp dword [esp + 0x6c]
fld st(3)
fmul dword [esp + 0x18c]
fld st(3)
fmul dword [esp + 0x188]
faddp st(1)
fld st(2)
fmul dword [esp + 0x190]
faddp st(1)
fadd st(1)
fstp dword [esp + 0x70]
fld dword [esp + 0x6c]
fcomp dword [0x691e34]
fnstsw ax
test ah, 0x45
jne 0x4f8693
fld dword [esp + 0x70]
fcomp dword [0x691e34]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f8693
fld st(3)
fmul dword [esp + 0x58]
fld st(3)
fmul dword [esp + 0x1e4]
mov dword [esp + 0x14], edx
faddp st(1)
fld st(2)
fmul dword [esp + 0x5c]
faddp st(1)
fadd st(1)
fchs
fld st(4)
fmul dword [esp + 0x64]
fld st(4)
fmul dword [esp + 0x1f0]
faddp st(1)
fld st(3)
fmul dword [esp + 0x7c]
faddp st(1)
fdivp st(1)
fstp st(4)
fld st(3)
fmul dword [esp + 0x1f0]
fadd dword [esp + 0x1e4]
fstp dword [esp + 0x17c]
fld st(3)
fmul dword [esp + 0x64]
fadd dword [esp + 0x58]
fstp dword [esp + 0x180]
fld st(3)
fmul dword [esp + 0x7c]
fadd dword [esp + 0x5c]
fstp dword [esp + 0x184]
jmp 0x4f8733
fld dword [esp + 0x6c]
fcomp dword [0x691e34]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f8733
fld dword [esp + 0x70]
fcomp dword [0x691e34]
fnstsw ax
test ah, 0x45
jne 0x4f8733
fld st(3)
fmul dword [esp + 0x58]
fld st(3)
fmul dword [esp + 0x1e4]
mov dword [esp + 0x1c], edx
faddp st(1)
fld st(2)
fmul dword [esp + 0x5c]
faddp st(1)
fadd st(1)
fchs
fld st(4)
fmul dword [esp + 0x64]
fld st(4)
fmul dword [esp + 0x1f0]
faddp st(1)
fld st(3)
fmul dword [esp + 0x7c]
faddp st(1)
fdivp st(1)
fstp st(4)
fld st(3)
fmul dword [esp + 0x1f0]
fadd dword [esp + 0x1e4]
fstp dword [esp + 0x188]
fld st(3)
fmul dword [esp + 0x64]
fadd dword [esp + 0x58]
fstp dword [esp + 0x18c]
fld st(3)
fmul dword [esp + 0x7c]
fadd dword [esp + 0x5c]
fstp dword [esp + 0x190]
inc edx
add edi, 0xc
cmp edx, 4
jl 0x4f8580
cmp dword [esp + 0x1c], 0
jl 0x4f874e
cmp dword [esp + 0x14], 0
jge 0x4f8780
mov dword [ebx + 0x28c], 0
cmp dword [ebx + 0x244], 0xb
jne 0x4f9940
fcompp
fcompp
mov ecx, ebx
call fcn.0050c600
xor al, al
add esp, 0x410
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, dword [esp + 0x1c]
add dword [esp + 0x1c], 4
add eax, 3
mov dword [esp + 0x30], 0
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1c]
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov esi, eax
mov eax, dword [esp + 0x14]
add eax, 3
add dword [esp + 0x14], 4
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov ebp, eax
mov eax, dword [esp + 0x14]
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 8]
fld dword [eax]
fstp dword [esp + 0x1fc]
fld dword [eax + 4]
fstp dword [esp + 0x200]
fld dword [eax + 8]
mov eax, ebp
fstp dword [esp + 0x204]
lea edi, [eax*4]
lea edi, [edi + edi*2]
add dword [esp + 0x30], 2
mov eax, dword [esp + edi + 0xf4]
mov edx, dword [esp + edi + 0xf8]
cmp ebp, esi
mov dword [esp + 0x208], eax
mov eax, dword [esp + edi + 0xfc]
mov dword [esp + 0x20c], edx
mov dword [esp + 0x210], eax
mov eax, ebp
je 0x4f88a0
mov ecx, dword [esp + 0x30]
lea ebp, [ecx*4]
lea ebp, [ebp + ebp*2]
add eax, 3
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov edx, eax
lea edx, [edx*4]
lea edx, [edx + edx*2]
mov edi, dword [esp + edx + 0xf4]
mov dword [esp + ebp + 0x1fc], edi
mov ecx, dword [esp + edx + 0xf8]
mov dword [esp + ebp + 0x200], ecx
mov edx, dword [esp + edx + 0xfc]
mov dword [esp + ebp + 0x204], edx
add ebp, 0xc
inc dword [esp + 0x30]
cmp eax, esi
jne 0x4f8851
mov eax, dword [esp + 0x30]
lea eax, [eax*4]
fld dword [ebx + 0x340]
lea eax, [eax + eax*2]
fstp dword [esp + eax + 0x1fc]
fld dword [ebx + 0x344]
fstp dword [esp + eax + 0x200]
fld dword [ebx + 0x348]
fstp dword [esp + eax + 0x204]
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], 0
fld dword [eax]
mov eax, dword [esp + 8]
fstp dword [esp + 0x238]
fld dword [eax + 4]
mov eax, dword [esp + 8]
fstp dword [esp + 0x23c]
fld dword [eax + 8]
mov eax, dword [esp + 0x40]
fstp dword [esp + 0x240]
lea ebp, [eax*4]
lea ebp, [ebp + ebp*2]
add dword [esp + 0x2c], 2
mov eax, dword [esp + ebp + 0xf4]
mov edi, dword [esp + ebp + 0xf8]
mov dword [esp + 0x244], eax
mov eax, dword [esp + ebp + 0xfc]
mov dword [esp + 0x24c], eax
mov eax, dword [esp + 0x40]
mov ecx, eax
mov dword [esp + 0x248], edi
cmp ecx, dword [esp + 0x3c]
je 0x4f89b1
mov edx, dword [esp + 0x2c]
lea ecx, [edx*4]
lea ecx, [ecx + ecx*2]
mov eax, eax
add eax, 5
cdq
and edx, 3
add eax, edx
and eax, 3
sub eax, edx
mov esi, eax
lea esi, [esi*4]
lea esi, [esi + esi*2]
mov ebp, dword [esp + esi + 0xf4]
mov dword [esp + ecx + 0x238], ebp
mov edx, dword [esp + esi + 0xf8]
mov dword [esp + ecx + 0x23c], edx
mov edi, dword [esp + esi + 0xfc]
mov dword [esp + ecx + 0x240], edi
add ecx, 0xc
inc dword [esp + 0x2c]
cmp eax, dword [esp + 0x3c]
jne 0x4f8960
mov eax, dword [esp + 0x2c]
lea eax, [eax*4]
fld dword [ebx + 0x340]
lea eax, [eax + eax*2]
fstp dword [esp + eax + 0x238]
fld dword [ebx + 0x344]
fstp dword [esp + eax + 0x23c]
fld dword [ebx + 0x348]
fstp dword [esp + eax + 0x240]
fld dword [0x691e34]
fstp dword [esp + 0x8c]
fld dword [0x691e34]
fstp dword [esp + 0x90]
fld dword [0x691e34]
fstp dword [esp + 0x94]
fld dword [esp + 0x8c]
fadd dword [esp + 0xf4]
lea esi, [esp + 0x1fc]
mov eax, dword [esp + 0x30]
lea edi, [esp + 0x278]
mov dword [esp + 0x274], 0
fstp dword [esp + 0x8c]
fld dword [esp + 0x90]
fadd dword [esp + 0xf8]
mov byte [esp + 0x4c], 1
mov dword [esp + 0x44], eax
inc dword [esp + 0x44]
mov eax, 1
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fadd dword [esp + 0xfc]
fstp dword [esp + 0x94]
fld dword [esp + 0x8c]
fadd dword [esp + 0x100]
fstp dword [esp + 0x8c]
fld dword [esp + 0x90]
fadd dword [esp + 0x104]
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fadd dword [esp + 0x108]
fstp dword [esp + 0x94]
fld dword [esp + 0x8c]
fadd dword [esp + 0x10c]
fstp dword [esp + 0x8c]
fld dword [esp + 0x90]
fadd dword [esp + 0x110]
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fadd dword [esp + 0x114]
fstp dword [esp + 0x94]
fld dword [esp + 0x8c]
fadd dword [esp + 0x118]
fstp dword [esp + 0x8c]
fld dword [esp + 0x90]
fadd dword [esp + 0x11c]
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fadd dword [esp + 0x120]
fstp dword [esp + 0x94]
fld dword [esp + 0x8c]
fmul dword [0x691e4c]
fstp dword [esp + 0x8c]
fld dword [esp + 0x90]
fmul dword [0x691e4c]
fstp dword [esp + 0x90]
fld dword [esp + 0x94]
fmul dword [0x691e4c]
fstp dword [esp + 0x94]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add eax, dword [esp + 0x30]
mov dword [esp + 0x10], 1
cmp eax, 1
jle 0x4f9950
fcompp
fcompp
lea ebp, [esp + 0x208]
fld dword [ebp]
fsub dword [esp + 0x278]
lea edi, [esp + 0x284]
fstp dword [esp + 0x3b0]
fld dword [ebp + 4]
fsub dword [esp + 0x27c]
lea esi, [esp + 0x3b0]
fstp dword [esp + 0x3b4]
fld dword [ebp + 8]
fsub dword [esp + 0x280]
fstp dword [esp + 0x3b8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x284]
mov dword [esp + 0x28c], 0
call fcn.004dfea0
fldz
fldz
fld dword [esp + 0x284]
fmul dword [0x691e84]
fstp dword [esp + 0x284]
fld dword [esp + 0x288]
fmul dword [0x691e84]
fstp dword [esp + 0x288]
fld dword [esp + 0x28c]
fmul dword [0x691e84]
mov eax, dword [esp + 0x288]
fstp dword [esp + 0x28c]
fld dword [esp + 0x284]
fchs
fstp st(2)
mov dword [esp + 0x28c], 0
mov dword [esp + 0x284], eax
fld st(1)
fstp dword [esp + 0x288]
fld dword [ebp + 4]
fsub dword [esp + 0x90]
fmul dword [esp + 0x288]
fld dword [ebp]
fsub dword [esp + 0x8c]
fmul dword [esp + 0x284]
faddp st(1)
fld dword [ebp + 8]
fsub dword [esp + 0x94]
fmul dword [esp + 0x28c]
faddp st(1)
fcomp dword [0x691e34]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f8ce2
fld dword [esp + 0x284]
fmul dword [0x691f38]
fstp dword [esp + 0x284]
fld dword [esp + 0x288]
fmul dword [0x691f38]
fstp dword [esp + 0x288]
fld dword [esp + 0x28c]
fmul dword [0x691f38]
fstp dword [esp + 0x28c]
fld dword [esp + 0x278]
fadd dword [esp + 0x284]
lea edi, [esp + 0x290]
push 0
fstp dword [esp + 0x3c0]
fld dword [esp + 0x28c]
fstp st(2)
fld dword [esp + 0x280]
fadd st(2)
fstp dword [esp + 0x3c4]
fld dword [esp + 0x290]
fstp st(1)
lea esi, [esp + 0x3c0]
fld dword [esp + 0x284]
fadd st(1)
fstp dword [esp + 0x3c8]
movsd dword es:[edi], dword [esi]
push 0
push 0
push 0
push 1
push 1
push 1
movsd dword es:[edi], dword [esi]
push 1
movsd dword es:[edi], dword [esi]
fld dword [ebp]
fadd dword [esp + 0x2a4]
lea edi, [esp + 0x2bc]
fstp dword [esp + 0x3e8]
fld dword [ebp + 4]
lea esi, [esp + 0x3e8]
fadd st(2)
fstp dword [esp + 0x3ec]
fld dword [ebp + 8]
fadd st(1)
fstp dword [esp + 0x3f0]
movsd dword es:[edi], dword [esi]
fcompp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x2c8]
lea edi, [esp + 0x294]
push edi
push eax
lea eax, [esp + 0x2a0]
push ebp
push eax
call fcn.004d92d0
add esp, 0x30
test al, al
jne 0x4f8de3
lea eax, [esp + 0x2a8]
lea edx, [esp + 0x274]
lea esi, [esp + 0x29c]
push 0
push 0
push 0
push 0
push 1
push 1
push 1
push 1
push edx
push eax
lea eax, [esp + 0x2b8]
push esi
push eax
call fcn.004d92d0
add esp, 0x30
test al, al
fldz
fldz
fldz
je 0x4f8efb
mov eax, dword [ebx + 0x284]
mov ecx, dword [esp + 0x274]
cmp ecx, eax
je 0x4f8ef0
cmp ecx, ebx
je 0x4f8ef0
mov eax, dword [ebx + 0x3a4]
mov edi, ecx
cmp edi, eax
je 0x4f8ef0
mov eax, ecx
mov dl, byte [eax + 0x50]
and dl, 7
movzx eax, dl
cmp eax, 3
jne 0x4f8ed7
mov eax, dword [esp + 0x274]
cmp dword [eax + 0x244], 1
jne 0x4f8e54
mov eax, dword [esp + 0x10]
mov byte [esp + 0x4c], 0
mov dword [esp + 0x44], eax
jmp 0x4f9960
fld dword [ebp + 8]
fsub dword [esp + 0x280]
mov esi, dword [esp + 0x274]
add esi, 0x14
fstp st(1)
fld dword [ebp + 4]
fsub dword [esp + 0x27c]
fstp st(2)
fld dword [ebp]
fsub dword [esp + 0x278]
fstp st(3)
fld st(1)
fmul dword [esi + 4]
fld st(3)
fmul dword [esi]
faddp st(1)
fld st(1)
fmul dword [esi + 8]
faddp st(1)
fcomp dword [0x691e34]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f8eb6
mov eax, dword [esp + 0x10]
mov byte [esp + 0x4c], 0
mov dword [esp + 0x44], eax
jmp 0x4f9970
mov eax, dword [esp + 0x274]
cmp dword [eax + 0x16c], ebx
jne 0x4f8efb
mov eax, dword [esp + 0x10]
mov byte [esp + 0x4c], 0
mov dword [esp + 0x44], eax
jmp 0x4f9980
mov eax, dword [esp + 0x10]
mov byte [esp + 0x4c], 0
mov dword [esp + 0x44], eax
jmp 0x4f9990
mov dword [esp + 0x274], 0
fld dword [ebp]
fstp dword [esp + 0x278]
fld dword [ebp + 4]
mov eax, dword [esp + 0x30]
inc dword [esp + 0x10]
fstp dword [esp + 0x27c]
fld dword [ebp + 8]
inc eax
add ebp, 0xc
fstp dword [esp + 0x280]
fcompp
cmp dword [esp + 0x10], eax
fstp st(0)
jl 0x4f8b97
lea esi, [esp + 0x238]
mov eax, dword [esp + 0x2c]
lea edi, [esp + 0x2d4]
mov dword [esp + 0x2d0], 0
mov byte [esp + 0x48], 1
mov dword [esp + 0x38], eax
inc dword [esp + 0x38]
mov eax, 1
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add eax, dword [esp + 0x2c]
mov dword [esp + 0xc], 1
cmp eax, 1
jle 0x4f99b0
lea ebp, [esp + 0x244]
fld dword [ebp]
fsub dword [esp + 0x2d4]
lea edi, [esp + 0x2e0]
fstp dword [esp + 0x3d4]
fld dword [ebp + 4]
fsub dword [esp + 0x2d8]
lea esi, [esp + 0x3d4]
fstp dword [esp + 0x3d8]
fld dword [ebp + 8]
fsub dword [esp + 0x2dc]
fstp dword [esp + 0x3dc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x2e0]
mov dword [esp + 0x2e8], 0
call fcn.004dfea0
fldz
fldz
fld dword [esp + 0x2e0]
fmul dword [0x691e84]
fstp dword [esp + 0x2e0]
fld dword [esp + 0x2e4]
fmul dword [0x691e84]
fstp dword [esp + 0x2e4]
fld dword [esp + 0x2e8]
fmul dword [0x691e84]
mov eax, dword [esp + 0x2e4]
fstp dword [esp + 0x2e8]
fld dword [esp + 0x2e0]
fchs
fstp st(2)
mov dword [esp + 0x2e8], 0
mov dword [esp + 0x2e0], eax
fld st(1)
fstp dword [esp + 0x2e4]
fld dword [ebp + 4]
fsub dword [esp + 0x90]
fmul dword [esp + 0x2e4]
fld dword [ebp]
fsub dword [esp + 0x8c]
fmul dword [esp + 0x2e0]
faddp st(1)
fld dword [ebp + 8]
fsub dword [esp + 0x94]
fmul dword [esp + 0x2e8]
faddp st(1)
fcomp dword [0x691e34]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f90cc
fld dword [esp + 0x2e0]
fmul dword [0x691f38]
fstp dword [esp + 0x2e0]
fld dword [esp + 0x2e4]
fmul dword [0x691f38]
fstp dword [esp + 0x2e4]
fld dword [esp + 0x2e8]
fmul dword [0x691f38]
fstp dword [esp + 0x2e8]
fld dword [esp + 0x2d4]
fadd dword [esp + 0x2e0]
lea edi, [esp + 0x2ec]
push 0
fstp dword [esp + 0x3e4]
fld dword [esp + 0x2e8]
fstp st(2)
fld dword [esp + 0x2dc]
fadd st(2)
fstp dword [esp + 0x3e8]
fld dword [esp + 0x2ec]
fstp st(1)
lea esi, [esp + 0x3e4]
fld dword [esp + 0x2e0]
fadd st(1)
fstp dword [esp + 0x3ec]
movsd dword es:[edi], dword [esi]
push 0
push 0
push 0
push 1
push 1
push 1
movsd dword es:[edi], dword [esi]
push 1
movsd dword es:[edi], dword [esi]
fld dword [ebp]
fadd dword [esp + 0x300]
lea edi, [esp + 0x318]
fstp dword [esp + 0x40c]
fld dword [ebp + 4]
lea esi, [esp + 0x40c]
fadd st(2)
fstp dword [esp + 0x410]
fld dword [ebp + 8]
fadd st(1)
fstp dword [esp + 0x414]
movsd dword es:[edi], dword [esi]
fcompp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x324]
lea esi, [esp + 0x2f0]
push esi
push eax
lea eax, [esp + 0x2fc]
push ebp
push eax
call fcn.004d92d0
add esp, 0x30
test al, al
jne 0x4f91cd
lea eax, [esp + 0x304]
lea ecx, [esp + 0x2d0]
lea edi, [esp + 0x2f8]
push 0
push 0
push 0
push 0
push 1
push 1
push 1
push 1
push ecx
push eax
lea eax, [esp + 0x314]
push edi
push eax
call fcn.004d92d0
add esp, 0x30
test al, al
fldz
fldz
fldz
je 0x4f92e0
mov eax, dword [ebx + 0x284]
mov edx, dword [esp + 0x2d0]
cmp edx, eax
je 0x4f92d5
cmp edx, ebx
je 0x4f92d5
mov eax, dword [ebx + 0x3a4]
mov esi, edx
cmp esi, eax
je 0x4f92d5
mov eax, edx
mov cl, byte [eax + 0x50]
and cl, 7
movzx eax, cl
cmp eax, 3
jne 0x4f92c3
mov eax, dword [esp + 0x2d0]
cmp dword [eax + 0x244], 1
jne 0x4f9240
mov eax, dword [esp + 0xc]
mov byte [esp + 0x48], 0
mov dword [esp + 0x38], eax
jmp 0x4f99c0
fld dword [ebp + 8]
fsub dword [esp + 0x2dc]
mov edi, dword [esp + 0x2d0]
add edi, 0x14
fstp st(1)
fld dword [ebp + 4]
fsub dword [esp + 0x2d8]
fstp st(2)
fld dword [ebp]
fsub dword [esp + 0x2d4]
fstp st(3)
fld st(1)
fmul dword [edi + 4]
fld st(3)
fmul dword [edi]
faddp st(1)
fld st(1)
fmul dword [edi + 8]
faddp st(1)
fcomp dword [0x691e34]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f92a2
mov eax, dword [esp + 0xc]
mov byte [esp + 0x48], 0
mov dword [esp + 0x38], eax
jmp 0x4f99c7
mov eax, dword [esp + 0x2d0]
cmp dword [eax + 0x16c], ebx
jne 0x4f92e0
mov eax, dword [esp + 0xc]
mov byte [esp + 0x48], 0
mov dword [esp + 0x38], eax
jmp 0x4f99d0
mov eax, dword [esp + 0xc]
mov byte [esp + 0x48], 0
mov dword [esp + 0x38], eax
jmp 0x4f99d7
mov dword [esp + 0x2d0], 0
fld dword [ebp]
mov eax, dword [esp + 0x2c]
inc dword [esp + 0xc]
fstp dword [esp + 0x2d4]
fld dword [ebp + 4]
inc eax
fstp dword [esp + 0x2d8]
fld dword [ebp + 8]
add ebp, 0xc
cmp dword [esp + 0xc], eax
fstp dword [esp + 0x2dc]
jl 0x4f99a0
fldz
fld dword [0x691e34]
xor edi, edi
cmp dword [esp + 0x30], 0
fstp st(4)
jle 0x4f9394
xor edx, edx
lea eax, [eax]
fld dword [esp + edx + 0x208]
fsub dword [esp + edx + 0x1fc]
fstp st(3)
fld dword [esp + edx + 0x20c]
fsub dword [esp + edx + 0x200]
fstp st(2)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fld dword [esp + edx + 0x210]
fsub dword [esp + edx + 0x204]
fstp st(4)
fld st(3)
fmul st(0)
faddp st(1)
fstp st(3)
fld st(2)
fsqrt
fstp dword [esp + 0xa0]
fld dword [esp + 0xa0]
fstp st(3)
inc edi
add edx, 0xc
fld st(2)
faddp st(4)
cmp edi, dword [esp + 0x30]
jl 0x4f9330
fld dword [0x691e34]
xor ecx, ecx
cmp dword [esp + 0x2c], 0
fstp st(3)
jle 0x4f9409
xor esi, esi
fld dword [esp + esi + 0x244]
fsub dword [esp + esi + 0x238]
fstp st(2)
fld dword [esp + esi + 0x248]
fsub dword [esp + esi + 0x23c]
fst st(1)
fmul st(0)
fld st(2)
fmul st(0)
faddp st(1)
fld dword [esp + esi + 0x24c]
fsub dword [esp + esi + 0x240]
fstp st(3)
fld st(2)
fmul st(0)
faddp st(1)
fstp st(2)
fld st(1)
fsqrt
fstp dword [esp + 0xa0]
fld dword [esp + 0xa0]
fstp st(2)
inc ecx
add esi, 0xc
fld st(1)
faddp st(3)
cmp ecx, dword [esp + 0x2c]
jl 0x4f93a7
cmp byte [esp + 0x4c], 0
je 0x4f9440
cmp byte [esp + 0x48], 0
je 0x4f9440
fld st(3)
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f9430
mov eax, 1
jmp 0x4f950d
mov eax, 2
jmp 0x4f950d
cmp byte [esp + 0x4c], 0
je 0x4f9451
mov eax, 1
jmp 0x4f950d
cmp byte [esp + 0x48], 0
je 0x4f9462
mov eax, 2
jmp 0x4f950d
cmp dword [esp + 0x44], 1
jne 0x4f9480
cmp dword [esp + 0x38], 1
jle 0x4f9480
mov eax, 2
jmp 0x4f950d
cmp dword [esp + 0x44], 1
jle 0x4f9495
cmp dword [esp + 0x38], 1
jne 0x4f9495
mov eax, 1
jmp 0x4f950d
mov eax, dword [esp + 0x2d0]
mov edi, dword [esp + 0x274]
cmp edi, eax
jne 0x4f94c7
fld st(3)
fcomp st(3)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f94c0
mov eax, 1
jmp 0x4f950d
mov eax, 2
jmp 0x4f950d
mov ebp, dword [esp + 0x2d0]
movsx eax, word [ebp + 0x5c]
mov edx, dword [eax*4 + 0x92d4c8]
mov eax, dword [esp + 0x274]
movsx esi, word [eax + 0x5c]
mov ecx, dword [edx + 0x1c]
mov edi, dword [esi*4 + 0x92d4c8]
mov eax, dword [edi + 0x1c]
fld dword [eax + 0xc]
fcomp dword [ecx + 0xc]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4f9508
mov eax, 1
jmp 0x4f950d
mov eax, 2
cmp eax, 1
jne 0x4f9690
mov dword [ebx + 0x260], 0
mov dword [ebx + 0x264], 0
mov dword [ebx + 0x268], 0
mov dword [ebx + 0x26c], 0
mov dword [ebx + 0x270], 0
mov dword [ebx + 0x274], 0
mov dword [ebx + 0x278], 0
mov dword [ebx + 0x27c], 0
mov word [ebx + 0x280], 0
mov word [ebx + 0x282], 0
cmp dword [esp + 0x30], 1
mov ebp, 1
jle 0x4f9804
mov edx, 0xc
lea eax, [eax]
movsx eax, word [ebx + 0x280]
lea esi, [esp + edx + 0x1fc]
lea edi, [esp + 0x3f8]
inc ebp
add edx, 0xc
lea eax, [eax + eax*4]
lea eax, [eax*4]
movsd dword es:[edi], dword [esi]
add eax, ebx
add eax, 0x290
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [0x691e54]
fmul dword [esp + 0x3f8]
fnstcw word [esp + 0x50]
mov ecx, dword [esp + 0x50]
or byte [esp + 0x51], 0xc
fldcw word [esp + 0x50]
fistp dword [esp + 0xa0]
mov esi, dword [esp + 0xa0]
mov dword [esp + 0x50], ecx
fldcw word [esp + 0x50]
mov word [eax + 4], si
fld dword [0x691e54]
fmul dword [esp + 0x3fc]
fnstcw word [esp + 0x50]
mov edi, dword [esp + 0x50]
or byte [esp + 0x51], 0xc
fldcw word [esp + 0x50]
fistp dword [esp + 0xa0]
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x50], edi
fldcw word [esp + 0x50]
mov word [eax + 6], cx
fld dword [0x691e54]
fmul dword [esp + 0x400]
fnstcw word [esp + 0x50]
mov esi, dword [esp + 0x50]
or byte [esp + 0x51], 0xc
fldcw word [esp + 0x50]
mov dword [esp + 0x50], esi
fistp dword [esp + 0xa0]
fldcw word [esp + 0x50]
mov edi, dword [esp + 0xa0]
mov word [eax + 8], di
movsx ecx, word [ebx + 0x280]
mov dword [ebx + ecx*4 + 0x260], eax
inc word [ebx + 0x280]
cmp ebp, dword [esp + 0x30]
jl 0x4f9590
jmp 0x4f9804
cmp eax, 2
jne 0x4f9804
mov dword [ebx + 0x260], 0
mov dword [ebx + 0x264], 0
mov dword [ebx + 0x268], 0
mov dword [ebx + 0x26c], 0
mov dword [ebx + 0x270], 0
mov dword [ebx + 0x274], 0
mov dword [ebx + 0x278], 0
mov dword [ebx + 0x27c], 0
mov word [ebx + 0x280], 0
mov word [ebx + 0x282], 0
cmp dword [esp + 0x2c], 1
mov edx, 1
jle 0x4f9804
mov ebp, 0xc
movsx eax, word [ebx + 0x280]
lea esi, [esp + ebp + 0x238]
lea edi, [esp + 0x404]
inc edx
add ebp, 0xc
lea eax, [eax + eax*4]
lea eax, [eax*4]
movsd dword es:[edi], dword [esi]
add eax, ebx
add eax, 0x290
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [0x691e54]
fmul dword [esp + 0x404]
fnstcw word [esp + 0x50]
mov ecx, dword [esp + 0x50]
or byte [esp + 0x51], 0xc
fldcw word [esp + 0x50]
fistp dword [esp + 0xa0]
mov esi, dword [esp + 0xa0]
mov dword [esp + 0x50], ecx
fldcw word [esp + 0x50]
mov word [eax + 4], si
fld dword [0x691e54]
fmul dword [esp + 0x408]
fnstcw word [esp + 0x50]
mov edi, dword [esp + 0x50]
or byte [esp + 0x51], 0xc
fldcw word [esp + 0x50]
fistp dword [esp + 0xa0]
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x50], edi
fldcw word [esp + 0x50]
mov word [eax + 6], cx
fld dword [0x691e54]
fmul dword [esp + 0x40c]
fnstcw word [esp + 0x50]
mov esi, dword [esp + 0x50]
or byte [esp + 0x51], 0xc
fldcw word [esp + 0x50]
mov dword [esp + 0x50], esi
fistp dword [esp + 0xa0]
fldcw word [esp + 0x50]
mov edi, dword [esp + 0xa0]
mov word [eax + 8], di
movsx ecx, word [ebx + 0x280]
mov dword [ebx + ecx*4 + 0x260], eax
inc word [ebx + 0x280]
cmp edx, dword [esp + 0x2c]
jl 0x4f9710
cmp word [ebx + 0x280], 0
jne 0x4f9840
mov dword [ebx + 0x28c], 0
cmp dword [ebx + 0x244], 0xb
jne 0x4f99e0
fcompp
fcompp
mov ecx, ebx
call fcn.0050c600
xor al, al
add esp, 0x410
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, dword [ebx + 0x248]
mov dword [ebx + 0x248], 0
cmp dword [ebx + 0x248], 0
jne 0x4f98e9
mov edi, dword [ebx + 0x244]
cmp edi, 0x26
jg 0x4f9884
cmp edi, 0x16
je 0x4f9884
lea ecx, [edi - 0x10]
cmp ecx, 1
jbe 0x4f9884
cmp edi, 0x1f
je 0x4f9884
cmp edi, 0xc
je 0x4f9884
cmp edi, 2
jne 0x4f9888
xor cl, cl
jmp 0x4f988a
mov cl, 1
test cl, cl
je 0x4f98e9
cmp edi, 5
jne 0x4f98b8
mov dl, byte [ebx + 0x14e]
and dl, 0x7f
or dl, 0x80
mov byte [ebx + 0x14e], dl
cmp dword [ebx + 0x24c], 1
jg 0x4f98b8
mov dword [ebx + 0x24c], 2
cmp dword [ebx + 0x244], 1
je 0x4f98e9
mov ebp, dword [ebx + 0x244]
mov dword [ebx + 0x248], ebp
mov esi, dword [ebx + 0x24c]
mov edi, dword [ebx + 0x254]
cmp esi, edi
jl 0x4f98e9
mov ecx, dword [ebx + 0x24c]
mov dword [ebx + 0x254], ecx
cmp dword [ebx + 0x248], 0
jne 0x4f98f8
mov dword [ebx + 0x248], eax
fcompp
fcompp
mov dword [ebx + 0x244], 0xb
mov eax, dword [ebx + 0x350]
mov dword [ebx + 0x24c], eax
add esp, 0x410
pop ebp
mov al, 1
pop edi
pop esi
pop ebx
ret
fstp st(0)
jmp 0x4f7c02
fcompp
fstp st(0)
jmp 0x4f7c02
fcompp
fcompp
jmp 0x4f84d0
fcompp
fcompp
jmp 0x4f8770
fcompp
fcompp
jmp 0x4f8f33
fcompp
fstp st(0)
jmp 0x4f8f33
fcompp
fstp st(0)
jmp 0x4f8f33
fcompp
fstp st(0)
jmp 0x4f8f33
fcompp
fstp st(0)
jmp 0x4f8f33
fcompp
fstp st(0)
jmp 0x4f8f81
fldz
fldz
fldz
fldz
jmp 0x4f9316
fldz
jmp 0x4f9316
fldz
jmp 0x4f9316
fldz
jmp 0x4f9316
fldz
jmp 0x4f9316
fcompp
fcompp
jmp 0x4f9830