Function at 0x68c548
Capabilities:
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
test dword [0x84efac], 0xffffff80
jne 0x68c578
test dword [0x84efac], 0xffffffff
jne 0x693028
call fcn.0079f000
jmp fcn.0068c548
push ebx
mov ebx, esp
and esp, 0xfffffff8
push edi
push esi
push ebp
sub esp, 0x22c
mov dword [esp + 0x1e0], ecx
movzx esi, byte [ebx + 8]
xor al, al
mov byte [esp + 0x1e4], al
xor dl, dl
xor cl, cl
mov byte [esp + 0x1e8], dl
xor al, al
xor dl, dl
mov byte [esp + 0x1ec], cl
xor cl, cl
mov byte [esp + 0x1f4], dl
xor dl, dl
mov byte [esp + 0x1f8], dl
xor dl, dl
pxor mm0, mm0
movq qword [esp + 0x10], mm0
movq qword [esp + 0x18], mm0
emms
xor ebp, ebp
mov byte [esp + 0x200], cl
mov byte [esp + 0x1fc], dl
mov byte [esp + 0x1f0], al
mov eax, dword [esp + 0x1e0]
movzx edx, byte [ebp + eax + 0x9684]
test edx, edx
je 0x68d350
mov ecx, 1
xor eax, eax
cmp edx, 7
movzx edx, byte [ebx + 8]
cmove eax, ecx
cmp edx, eax
jne 0x68d350
mov eax, dword [esp + 0x1e0]
mov eax, dword [ebp + eax + 0x9688]
cmp eax, 0x2a
jl 0x68c668
cmp eax, 0x2e
jg 0x68c668
mov esi, dword [esp + 0x1e0]
movzx eax, byte [ebp + esi + 0x968c]
mov edi, eax
shl edi, 5
lea eax, [edi + eax*4]
lea ecx, [esi + eax]
mov edx, dword [ecx + 0x9a24]
cmp edx, 7
je 0x68d36e
jmp 0x68d350
cmp eax, 0x2f
jl 0x68c6a8
cmp eax, 0x31
jg 0x68c6a8
mov esi, dword [esp + 0x1e0]
movzx eax, byte [ebp + esi + 0x968c]
mov edi, eax
shl edi, 5
lea eax, [edi + eax*4]
lea ecx, [esi + eax]
mov edx, dword [ecx + 0x9a24]
cmp edx, 8
je 0x68e5f8
jmp 0x68d350
cmp eax, 0x32
jl 0x68c6e8
cmp eax, 0x41
jg 0x68c6e8
mov esi, dword [esp + 0x1e0]
movzx eax, byte [ebp + esi + 0x968c]
mov edi, eax
shl edi, 5
lea eax, [edi + eax*4]
lea ecx, [esi + eax]
mov edx, dword [ecx + 0x9a24]
cmp edx, 9
je 0x68eef8
jmp 0x68d350
cmp eax, 0x42
jl 0x68c728
cmp eax, 0x61
jg 0x68c728
mov esi, dword [esp + 0x1e0]
movzx eax, byte [ebp + esi + 0x968c]
mov edi, eax
mov dword [esp + 0x1d0], eax
shl edi, 5
lea eax, [edi + eax*4]
lea ecx, [esi + eax]
mov edx, dword [ecx + 0x9a24]
cmp edx, 0xa
je 0x68f438
jmp 0x68d350
cmp eax, 0xb
je 0x692d78
cmp eax, 0x29
je 0x692d78
cmp eax, 0xc
je 0x692a08
cmp eax, 0xd
je 0x692778
cmp eax, 4
je 0x692518
cmp eax, 5
je 0x691e58
cmp eax, 0x17
je 0x691748
cmp eax, 0x18
je 0x690f18
cmp eax, 0x19
je 0x6908d8
cmp eax, 0xe
jl 0x68d308
cmp eax, 0x16
jg 0x68d308
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0e4]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x68c7bd
cmp al, 6
je 0x68c7bd
cmp al, 7
je 0x68c7bd
cmp al, 8
jne 0x68d350
lea esi, [edx + 0xa0c4]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov al, byte [eax + 8]
test al, al
je 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dword [esp + 0x1d8], eax
mov al, byte [esp + 0x1ec]
test al, al
jne 0x68c81f
mov edi, 0x849f20
mov eax, dword [esp + 0x1e0]
lea esi, [eax + 0x95e8]
mov ecx, 0x1b
rep movsd dword es:[edi], dword [esi]
mov al, 1
mov byte [esp + 0x1ec], al
mov eax, dword [esp + 0x1e0]
mov eax, dword [ebp + eax + 0x9688]
lea edx, [eax - 0xe]
cmp edx, 8
ja 0x68d1ff
mov eax, dword [eax*4 + 0x8802fc]
jmp eax
mov eax, dword [esp + 0x1d8]
mov eax, dword [eax + 4]
cmp eax, 0x1d
je 0x68d2d8
cmp eax, 0x1e
jne 0x68d268
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push dword [0x849f70]
push dword [0x849f6c]
push dword [0x849f68]
push 0
call dword [eax + 0x24]
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push dword [0x849f7c]
push dword [0x849f78]
push dword [0x849f74]
push 1
call dword [eax + 0x24]
jmp 0x68d350
cmp eax, 0x1f
jne 0x68d350
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push dword [0x849f70]
push dword [0x849f6c]
push dword [0x849f68]
push 0
call dword [eax + 0x24]
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push dword [0x849f7c]
push dword [0x849f78]
push dword [0x849f74]
push 1
call dword [eax + 0x24]
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push dword [0x849f88]
push dword [0x849f84]
push dword [0x849f80]
push 2
call dword [eax + 0x24]
jmp 0x68d350
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push dword [0x849f70]
push dword [0x849f6c]
push dword [0x849f68]
push 0
call dword [eax + 0x24]
jmp 0x68d350
cmp eax, 8
je 0x690688
cmp eax, 7
je 0x690368
cmp eax, 0x1f
je 0x690128
cmp eax, 0x21
je 0x68ff18
cmp eax, 0x20
je 0x68fce8
cmp eax, 0x22
je 0x68f708
cmp eax, 0x23
je 0x68f708
cmp eax, 0x24
je 0x68f708
add ebp, 0x1c
cmp ebp, 0x380
jl 0x68c5eb
add esp, 0x22c
pop ebp
pop esi
pop edi
mov esp, ebx
pop ebx
ret 4
mov edx, esi
lea ecx, [edx + eax + 0x9a04]
mov eax, dword [eax + edx + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1d0], eax
mov eax, esi
movzx eax, byte [ebp + eax + 0x968c]
mov dl, byte [esp + eax + 0x10]
test dl, dl
jne 0x68d3ca
imul eax, eax, 0x3bc
lea edi, [eax + 0x849fa0]
mov edx, esi
lea esi, [edx + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1e0]
movzx eax, byte [ebp + eax + 0x968c]
mov byte [esp + eax + 0x10], 1
imul eax, eax, 0x3bc
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x9688]
cmp edx, 0x2a
je 0x68e1a8
cmp edx, 0x2b
je 0x68de08
cmp edx, 0x2c
je 0x68d978
cmp edx, 0x2e
jne 0x68d7f8
fld dword [eax + 0x84a068]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x208]
test edx, edx
jne 0x68d488
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x210]
fld dword [0x8802b4]
fst qword [esp + 0x218]
fcompi st(1)
fstp st(0)
ja 0x68d4aa
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x210]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x208]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x218]
jmp 0x68d55e
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x210]
fld dword [0x8802b4]
fstp qword [esp + 0x218]
test edx, edx
jne 0x68d4f8
fld qword [esp + 0x210]
fld qword [esp + 0x218]
fcompi st(1)
fstp st(0)
jbe 0x68d4f8
fld qword [esp + 0x210]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x208]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x218]
jmp 0x68d55e
cmp edx, 1
je 0x68dd68
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fst qword [esp + 0x210]
fld qword [esp + 0x218]
fcompi st(1)
fstp st(0)
ja 0x68d55e
fld qword [esp + 0x210]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x208]
fstp qword [esp + 0x218]
fld qword [esp + 0x218]
fst dword [eax + 0x84a068]
mov eax, dword [esp + 0x1d0]
mov esi, dword [eax + 0x9c]
cmp esi, 1
fstp dword [eax + 0x1f8]
jle 0x68d6b8
fld dword [eax + 0x14]
fst qword [esp + 0x210]
fld qword [esp + 0x218]
fmul dword [0x880258]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x68d618
mov edx, dword [esp + 0x1d0]
mov eax, 1
mov dword [edx + 0x1c0], DirectSoundEnumerateA
mov dword [esp + 0x1c8], eax
fild dword [esp + 0x1c8]
fadd dword [0x880418]
fstp qword [esp + 0x208]
jmp 0x68d683
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fst qword [esp + 0x208]
fld qword [0x8800e8]
fdivrp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x1c0], ecx
fld qword [0x84db60]
fstp qword [esp]
fld qword [esp + 0x208]
fdivr qword [0x8800e0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0x138]
jmp 0x68d6c2
fld dword [eax + 0x14]
fstp qword [esp + 0x210]
fld qword [esp + 0x218]
xor edx, edx
fmul dword [0x880258]
fld qword [esp + 0x210]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div esi
test eax, eax
jne 0x68d758
mov edx, dword [esp + 0x1d0]
mov eax, 1
mov dword [edx + 0x1a8], DirectSoundEnumerateA
mov dword [esp + 0x1c8], eax
fild dword [esp + 0x1c8]
fadd dword [0x880418]
fstp qword [esp + 0x218]
jmp 0x68d7c3
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fst qword [esp + 0x218]
fld qword [0x8800e8]
fdivrp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x1a8], ecx
fld qword [0x84db60]
fstp qword [esp]
fld qword [esp + 0x218]
fdivr qword [0x8800e0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0x108]
jmp 0x68d350
cmp edx, 0x2d
jne 0x68d350
movss xmm0, dword [eax + 0x84a058]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x68d868
mov ecx, dword [esp + 0x1e0]
movss xmm1, dword [ebp + ecx + 0x9690]
movss xmm2, dword [0x8802b4]
comiss xmm1, xmm2
jb 0x68d880
movss xmm6, dword [0x8802b8]
mov edx, ecx
movss xmm3, xmm6
subss xmm3, dword [ebp + edx + 0x9694]
mulss xmm3, xmm1
movss xmm1, xmm6
subss xmm1, xmm3
jmp 0x68d8cf
mov ecx, dword [esp + 0x1e0]
movss xmm1, dword [ebp + ecx + 0x9690]
movss xmm2, dword [0x8802b4]
test edx, edx
jne 0x68d8b8
comiss xmm1, xmm2
jae 0x68d8b8
xorps xmm3, xmm3
subss xmm3, xmm1
mov edx, ecx
mulss xmm3, dword [ebp + edx + 0x9694]
movss xmm1, dword [0x8802b8]
subss xmm1, xmm3
jmp 0x68d8cf
mov edx, ecx
mulss xmm1, dword [ebp + edx + 0x9694]
addss xmm1, dword [0x8802b8]
maxss xmm1, xmm2
mulss xmm0, xmm1
mulss xmm0, xmm1
mulss xmm0, xmm1
movss dword [eax + 0x84a058], xmm0
mulss xmm0, dword [0x880294]
addss xmm0, dword [0x880298]
movss dword [esp + 0x194], xmm0
mov ecx, dword [esp + 0x194]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x198], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x194]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x194], edx
movss xmm3, dword [0x880290]
addss xmm3, dword [esp + 0x194]
mulss xmm3, dword [0x88028c]
mov eax, dword [esp + 0x1d0]
movss dword [eax + 0x1f4], xmm3
movss dword [eax + 0x1c8], xmm3
jmp 0x68d350
fld dword [eax + 0x84a064]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x218]
test edx, edx
jne 0x68d9f8
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x210]
fld dword [0x8802b4]
fst qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68da1a
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x210]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x208]
jmp 0x68dace
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x210]
fld dword [0x8802b4]
fstp qword [esp + 0x208]
test edx, edx
jne 0x68da68
fld qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
jbe 0x68da68
fld qword [esp + 0x210]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x208]
jmp 0x68dace
cmp edx, 1
je 0x68ddb8
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fst qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68dace
fld qword [esp + 0x210]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x218]
fstp qword [esp + 0x208]
fld qword [esp + 0x208]
fst dword [eax + 0x84a064]
mov eax, dword [esp + 0x1d0]
mov esi, dword [eax + 0x9c]
cmp esi, 1
fstp dword [eax + 0x1f0]
jle 0x68dc28
fld dword [eax + 0x14]
fst qword [esp + 0x218]
fld qword [esp + 0x208]
fmul dword [0x880258]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x68db88
mov edx, dword [esp + 0x1d0]
mov eax, 1
mov dword [edx + 0x1b8], DirectSoundEnumerateA
mov dword [esp + 0x1c8], eax
fild dword [esp + 0x1c8]
fadd dword [0x880418]
fstp qword [esp + 0x210]
jmp 0x68dbf3
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fst qword [esp + 0x210]
fld qword [0x8800e8]
fdivrp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x1b8], ecx
fld qword [0x84db60]
fstp qword [esp]
fld qword [esp + 0x210]
fdivr qword [0x8800e0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0x128]
jmp 0x68dc32
fld dword [eax + 0x14]
fstp qword [esp + 0x218]
fld qword [esp + 0x208]
xor edx, edx
fmul dword [0x880258]
fld qword [esp + 0x218]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div esi
test eax, eax
jne 0x68dcc8
mov edx, dword [esp + 0x1d0]
mov eax, 1
mov dword [edx + 0x1a0], DirectSoundEnumerateA
mov dword [esp + 0x1c8], eax
fild dword [esp + 0x1c8]
fadd dword [0x880418]
fstp qword [esp + 0x218]
jmp 0x68dd33
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fst qword [esp + 0x218]
fld qword [0x8800e8]
fdivrp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x1a0], ecx
fld qword [0x84db60]
fstp qword [esp]
fld qword [esp + 0x218]
fdivr qword [0x8800e0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0xf8]
jmp 0x68d350
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x210]
fld qword [esp + 0x218]
fcompi st(1)
fstp st(0)
ja 0x68d518
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fmul qword [esp + 0x208]
fstp qword [esp + 0x218]
jmp 0x68d55e
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68da88
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fmul qword [esp + 0x218]
fstp qword [esp + 0x208]
jmp 0x68dace
fld dword [eax + 0x84a060]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x218]
test edx, edx
jne 0x68de88
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x210]
fld dword [0x8802b4]
fst qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68deaa
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x210]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x208]
jmp 0x68df5e
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x210]
fld dword [0x8802b4]
fstp qword [esp + 0x208]
test edx, edx
jne 0x68def8
fld qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
jbe 0x68def8
fld qword [esp + 0x210]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x208]
jmp 0x68df5e
cmp edx, 1
je 0x68e158
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fst qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68df5e
fld qword [esp + 0x210]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x218]
fstp qword [esp + 0x208]
fld qword [esp + 0x208]
fst dword [eax + 0x84a060]
mov eax, dword [esp + 0x1d0]
mov ecx, dword [eax + 0x9c]
cmp ecx, 1
fstp dword [eax + 0x1ec]
jle 0x68e068
fld dword [eax + 0x14]
fst qword [esp + 0x218]
fld qword [esp + 0x208]
fmul dword [0x880258]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x68dff8
mov eax, dword [esp + 0x1d0]
mov dword [eax + 0x1b4], DirectSoundEnumerateA
jmp 0x68e072
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fdivr qword [0x8800e8]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov esi, dword [esp + 0x1a8]
mov dword [edx + 0x1b4], esi
jmp 0x68e072
fld dword [eax + 0x14]
fstp qword [esp + 0x218]
fld qword [esp + 0x208]
xor edx, edx
fmul dword [0x880258]
fld qword [esp + 0x218]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div ecx
test eax, eax
jne 0x68e0e8
mov eax, dword [esp + 0x1d0]
mov dword [eax + 0x19c], DirectSoundEnumerateA
jmp 0x68d350
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fdivr qword [0x8800e8]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x19c], ecx
jmp 0x68d350
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68df18
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fmul qword [esp + 0x218]
fstp qword [esp + 0x208]
jmp 0x68df5e
fld dword [eax + 0x84a05c]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x218]
test edx, edx
jne 0x68e228
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x210]
fld dword [0x8802b4]
fst qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68e24a
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x210]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x208]
jmp 0x68e2fe
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x210]
fld dword [0x8802b4]
fstp qword [esp + 0x208]
test edx, edx
jne 0x68e298
fld qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
jbe 0x68e298
fld qword [esp + 0x210]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x208]
jmp 0x68e2fe
cmp edx, 1
je 0x68e5a8
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fst qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68e2fe
fld qword [esp + 0x210]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x218]
fstp qword [esp + 0x208]
fld qword [esp + 0x208]
fst dword [eax + 0x84a05c]
mov eax, dword [esp + 0x1d0]
mov esi, dword [eax + 0x9c]
cmp esi, 1
fstp dword [eax + 0x1e8]
jle 0x68e468
fld dword [eax + 0x14]
fst qword [esp + 0x218]
fld qword [esp + 0x208]
fmul dword [0x880258]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x68e3b8
mov edx, dword [esp + 0x1d0]
mov eax, 1
mov dword [edx + 0x1b0], DirectSoundEnumerateA
mov dword [esp + 0x1c8], eax
fild dword [esp + 0x1c8]
fadd dword [0x880418]
fstp qword [esp + 0x210]
jmp 0x68e423
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fst qword [esp + 0x210]
fld qword [0x8800e8]
fdivrp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x1b0], ecx
mov eax, edx
fld qword [eax + 0xb0]
fst qword [esp + 0x220]
fstp qword [esp]
fld qword [esp + 0x210]
fdivr qword [0x880180]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0x118]
jmp 0x68e47f
fld dword [eax + 0x14]
fstp qword [esp + 0x218]
fld qword [eax + 0xb0]
fstp qword [esp + 0x220]
fld qword [esp + 0x208]
xor edx, edx
fmul dword [0x880258]
fld qword [esp + 0x218]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div esi
test eax, eax
jne 0x68e508
mov edx, dword [esp + 0x1d0]
mov eax, 1
mov dword [edx + 0x198], DirectSoundEnumerateA
mov dword [esp + 0x1c8], eax
fild dword [esp + 0x1c8]
fadd dword [0x880418]
fstp qword [esp + 0x218]
jmp 0x68e573
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x1d0]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880418]
fst qword [esp + 0x218]
fld qword [0x8800e8]
fdivrp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0x198], ecx
fld qword [esp + 0x220]
fstp qword [esp]
fld qword [esp + 0x218]
fdivr qword [0x880180]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0xe8]
jmp 0x68d350
fld qword [esp + 0x210]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x210]
fld qword [esp + 0x208]
fcompi st(1)
fstp st(0)
ja 0x68e2b8
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fmul qword [esp + 0x218]
fstp qword [esp + 0x208]
jmp 0x68e2fe
mov edx, esi
lea ecx, [edx + eax + 0x9a04]
mov eax, dword [eax + edx + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1d0], eax
mov eax, esi
movzx eax, byte [ebp + eax + 0x968c]
mov dl, byte [esp + eax + 0x10]
test dl, dl
jne 0x68e654
imul eax, eax, 0x3bc
lea edi, [eax + 0x849fa0]
mov edx, esi
lea esi, [edx + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1e0]
movzx eax, byte [ebp + eax + 0x968c]
mov byte [esp + eax + 0x10], 1
imul eax, eax, 0x3bc
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x9688]
cmp edx, 0x2f
je 0x68eb88
cmp edx, 0x31
jne 0x68e918
fld dword [eax + 0x84a254]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x220]
test edx, edx
jne 0x68e6f8
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x218]
fld dword [0x8802b4]
fst qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x68e71a
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x218]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x220]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x210]
jmp 0x68e7ce
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x218]
fld dword [0x8802b4]
fstp qword [esp + 0x210]
test edx, edx
jne 0x68e768
fld qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
jbe 0x68e768
fld qword [esp + 0x218]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x220]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x210]
jmp 0x68e7ce
cmp edx, 1
je 0x68ee58
fld qword [esp + 0x218]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x218]
fld qword [esp + 0x218]
fadd dword [0x8802b8]
fst qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x68e7ce
fld qword [esp + 0x218]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x220]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fst dword [eax + 0x84a254]
mov eax, dword [esp + 0x1d0]
fst dword [eax + 0x104]
fld dword [0x880258]
fmulp st(1)
fmul dword [eax + 0x14]
fst qword [esp + 0x220]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov esi, dword [esp + 0x1a8]
test esi, esi
jne 0x68e858
mov esi, 1
mov eax, dword [esp + 0x1d0]
mov dword [eax + 0xf8], 1
mov dword [eax + 0xdc], DirectSoundEnumerateA
jmp 0x68e8af
mov edx, dword [esp + 0x1d0]
mov dword [edx + 0xf8], esi
fld qword [esp + 0x220]
fdivr qword [0x8800e8]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0xdc], ecx
fld qword [0x880148]
mov eax, dword [esp + 0x1d0]
fstp qword [esp]
fld dword [eax + 0x18]
fmul dword [eax + 0xe4]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fld qword [0x880180]
fdivr st(1), st(0)
fxch st(1)
fstp qword [esp]
mov dword [esp + 0x1c8], esi
shr esi, 0x1f
fild dword [esp + 0x1c8]
fadd dword [esi*4 + 0x880418]
fdivp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0xc0]
jmp 0x68d350
cmp edx, 0x30
jne 0x68d350
fld dword [eax + 0x84a24c]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x220]
test edx, edx
jne 0x68e998
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x218]
fld dword [0x8802b4]
fcompi st(1)
fstp st(0)
ja 0x68e9ad
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x218]
fmulp st(1)
fsubp st(1)
fmul qword [esp + 0x220]
fstp qword [esp + 0x218]
jmp 0x68ea68
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x218]
test edx, edx
jne 0x68e9f8
fld dword [0x8802b4]
fld qword [esp + 0x218]
fcompi st(1)
fstp st(0)
jae 0x68e9f8
fld qword [esp + 0x218]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fmul qword [esp + 0x220]
fstp qword [esp + 0x218]
jmp 0x68ea68
fld qword [esp + 0x218]
mov esi, ecx
fmul dword [ebp + esi + 0x9694]
fld qword [esp + 0x220]
fmulp st(1)
fadd st(0)
fstp dword [esp + 0x19c]
mov ecx, dword [esp + 0x19c]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x1a0], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x19c]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x19c], edx
fld dword [esp + 0x19c]
fmul dword [0x8802b0]
fstp qword [esp + 0x218]
fld qword [esp + 0x218]
fst dword [eax + 0x84a24c]
fld dword [0x880264]
fmulp st(1)
mov eax, dword [esp + 0x1d0]
fst dword [eax + 0x100]
fst dword [eax + 0xe4]
fld qword [0x880148]
fst qword [esp + 0x220]
fld dword [eax + 0x18]
fmul st(2), st(0)
fstp qword [esp + 0x218]
fxch st(1)
fst qword [esp + 0x210]
fxch st(1)
fstp qword [esp]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fstp qword [esp + 0x208]
fld qword [esp + 0x220]
fstp qword [esp]
fld qword [esp + 0x218]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esp + 0x1d0]
mov eax, dword [edx + 0xf4]
fdivr qword [esp + 0x208]
shr eax, 0x1f
fstp qword [esp]
fild dword [edx + 0xf4]
fadd dword [eax*4 + 0x880418]
fdivr qword [0x880180]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0xb8]
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x210]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esp + 0x1d0]
mov eax, dword [edx + 0xf8]
fld qword [0x880180]
fdivr st(1), st(0)
shr eax, 0x1f
fxch st(1)
fstp qword [esp]
fild dword [edx + 0xf8]
fadd dword [eax*4 + 0x880418]
fdivp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0xc0]
jmp 0x68d350
fld dword [eax + 0x84a250]
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x220]
test edx, edx
jne 0x68ec08
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fst qword [esp + 0x218]
fld dword [0x8802b4]
fst qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x68ec2a
fld dword [0x8802b8]
mov edx, ecx
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x218]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x220]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x210]
jmp 0x68ecde
mov ecx, dword [esp + 0x1e0]
fld dword [ebp + ecx + 0x9690]
fstp qword [esp + 0x218]
fld dword [0x8802b4]
fstp qword [esp + 0x210]
test edx, edx
jne 0x68ec78
fld qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
jbe 0x68ec78
fld qword [esp + 0x218]
fchs
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x220]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x210]
jmp 0x68ecde
cmp edx, 1
je 0x68eea8
fld qword [esp + 0x218]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x218]
fld qword [esp + 0x218]
fadd dword [0x8802b8]
fst qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x68ecde
fld qword [esp + 0x218]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x220]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fst dword [eax + 0x84a250]
mov eax, dword [esp + 0x1d0]
fst dword [eax + 0xfc]
fld dword [0x880258]
fmulp st(1)
fmul dword [eax + 0x14]
fst qword [esp + 0x220]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov esi, dword [esp + 0x1a8]
test esi, esi
jne 0x68ed68
mov esi, 1
mov eax, dword [esp + 0x1d0]
mov dword [eax + 0xf4], 1
mov dword [eax + 0xd8], DirectSoundEnumerateA
jmp 0x68edbf
mov edx, dword [esp + 0x1d0]
mov dword [edx + 0xf4], esi
fld qword [esp + 0x220]
fdivr qword [0x8800e8]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov ecx, dword [esp + 0x1a8]
mov dword [edx + 0xd8], ecx
fld qword [0x880148]
mov eax, dword [esp + 0x1d0]
fld dword [eax + 0x18]
fst qword [esp + 0x220]
fxch st(1)
fstp qword [esp]
fmul dword [eax + 0xe4]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fstp qword [esp + 0x218]
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x220]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fdivr qword [esp + 0x218]
fstp qword [esp]
mov dword [esp + 0x1c8], esi
fild dword [esp + 0x1c8]
shr esi, 0x1f
fadd dword [esi*4 + 0x880418]
fdivr qword [0x880180]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x1d0]
fstp qword [eax + 0xb8]
jmp 0x68d350
fld qword [esp + 0x218]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x68e788
fld qword [esp + 0x218]
fadd dword [0x8802b8]
fmul qword [esp + 0x220]
fstp qword [esp + 0x210]
jmp 0x68e7ce
fld qword [esp + 0x218]
mov edx, ecx
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x68ec98
fld qword [esp + 0x218]
fadd dword [0x8802b8]
fmul qword [esp + 0x220]
fstp qword [esp + 0x210]
jmp 0x68ecde
mov edx, esi
lea ecx, [edx + eax + 0x9a04]
mov eax, dword [eax + edx + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1d4], eax
mov eax, esi
movzx eax, byte [ebp + eax + 0x968c]
mov dl, byte [esp + eax + 0x10]
test dl, dl
jne 0x68ef54
imul eax, eax, 0x3bc
lea edi, [eax + 0x849fa0]
mov edx, esi
lea esi, [edx + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1e0]
movzx eax, byte [ebp + eax + 0x968c]
mov byte [esp + eax + 0x10], 1
imul eax, eax, 0x3bc
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x9688]
mov dword [esp + 0x1d0], eax
lea eax, [eax + 0x84a0b0]
cmp edx, 0x32
jl 0x68f118
cmp edx, 0x39
jg 0x68f118
lea ecx, [edx - 0x32]
lea edi, [edx*4 - 0xc8]
add eax, edi
mov dword [esp + 0x1d8], ecx
mov esi, dword [esp + 0x1d0]
movss xmm0, dword [esi + edx*4 + 0x849fe8]
mov ecx, dword [esp + 0x1e0]
mov ecx, dword [ebp + ecx + 0x969c]
test ecx, ecx
jne 0x68f008
mov esi, dword [esp + 0x1e0]
movss xmm1, dword [ebp + esi + 0x9690]
movss xmm2, dword [0x8802b4]
comiss xmm1, xmm2
jb 0x68f020
movss xmm6, dword [0x8802b8]
mov ecx, esi
movss xmm3, xmm6
subss xmm3, dword [ebp + ecx + 0x9694]
mulss xmm3, xmm1
movss xmm1, xmm6
subss xmm1, xmm3
jmp 0x68f06f
mov esi, dword [esp + 0x1e0]
movss xmm1, dword [ebp + esi + 0x9690]
movss xmm2, dword [0x8802b4]
test ecx, ecx
jne 0x68f058
comiss xmm1, xmm2
jae 0x68f058
xorps xmm3, xmm3
subss xmm3, xmm1
mov ecx, esi
mulss xmm3, dword [ebp + ecx + 0x9694]
movss xmm1, dword [0x8802b8]
subss xmm1, xmm3
jmp 0x68f06f
mov ecx, esi
mulss xmm1, dword [ebp + ecx + 0x9694]
addss xmm1, dword [0x8802b8]
maxss xmm1, xmm2
mulss xmm0, xmm1
mulss xmm0, xmm1
mulss xmm0, xmm1
mulss xmm0, dword [0x880294]
addss xmm0, dword [0x880298]
mov ecx, dword [esp + 0x1d0]
movss dword [esp + 0x194], xmm0
mov edi, dword [esp + 0x194]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x198], edi
mov esi, edi
xor esi, 0xffffffff
and esi, dword [esp + 0x194]
and edi, 0x40000000
or esi, edi
mov dword [esp + 0x194], esi
movss xmm0, dword [0x880290]
addss xmm0, dword [esp + 0x194]
mulss xmm0, dword [0x88028c]
movss dword [ecx + edx*4 + 0x849fe8], xmm0
fld dword [ecx + edx*4 + 0x84a068]
fstp qword [esp + 0x220]
jmp 0x68f2ac
lea ecx, [edx - 0x3a]
lea edi, [edx*4 - 0xe8]
add eax, edi
mov dword [esp + 0x1d8], ecx
mov esi, dword [esp + 0x1d0]
mov ecx, dword [esp + 0x1e0]
fld dword [esi + edx*4 + 0x84a048]
mov ecx, dword [ebp + ecx + 0x969c]
test ecx, ecx
fstp qword [esp + 0x218]
jne 0x68f1b8
mov esi, dword [esp + 0x1e0]
fld dword [ebp + esi + 0x9690]
fst qword [esp + 0x210]
fld dword [0x8802b4]
fst qword [esp + 0x220]
fcompi st(1)
fstp st(0)
ja 0x68f1da
fld dword [0x8802b8]
mov ecx, esi
fld dword [ebp + ecx + 0x9694]
fsubr st(1)
fld qword [esp + 0x210]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x220]
jmp 0x68f28e
mov esi, dword [esp + 0x1e0]
fld dword [ebp + esi + 0x9690]
fstp qword [esp + 0x210]
fld dword [0x8802b4]
fstp qword [esp + 0x220]
test ecx, ecx
jne 0x68f228
fld qword [esp + 0x210]
fld qword [esp + 0x220]
fcompi st(1)
fstp st(0)
jbe 0x68f228
fld qword [esp + 0x210]
fchs
mov ecx, esi
fmul dword [ebp + ecx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x218]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x220]
jmp 0x68f28e
cmp ecx, 1
je 0x68f3e8
fld qword [esp + 0x210]
mov ecx, esi
fmul dword [ebp + ecx + 0x9694]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fst qword [esp + 0x210]
fld qword [esp + 0x220]
fcompi st(1)
fstp st(0)
ja 0x68f28e
fld qword [esp + 0x210]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x218]
fstp qword [esp + 0x220]
fld qword [esp + 0x220]
mov ecx, dword [esp + 0x1d0]
movss xmm0, dword [ecx + edx*4 + 0x849fc8]
fstp dword [ecx + edx*4 + 0x84a048]
fld dword [eax + 0x100]
fstp dword [esp + 0x218]
comiss xmm0, dword [0x880260]
jbe 0x68f2d2
movss xmm1, xmm0
movss xmm0, dword [0x88025c]
maxss xmm0, xmm1
mov edx, dword [esp + 0x1d8]
lea ecx, [edx*8]
lea edx, [ecx + edx*4]
mov eax, dword [esp + 0x1d4]
movss dword [edx + eax + 0xa4], xmm0
fld dword [0x8802b4]
fld dword [0x8802b0]
fld dword [esp + 0x218]
fcomi st(2)
fxch st(2)
fstp st(0)
fcmovne st(0), st(1)
fstp st(1)
fld dword [0x880258]
fcomi st(1)
fcmovbe st(0), st(1)
fstp st(1)
fld dword [0x880254]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fld st(0)
fadd st(0)
fxch st(1)
fst dword [esp + 0x218]
fld dword [0x8802c0]
fstp dword [esp + 0x210]
fxch st(1)
fstp dword [esp + 0x208]
fld qword [0x880150]
fcompi st(1)
fstp st(0)
jae 0x68f388
fld dword [esp + 0x208]
fsubr dword [0x880294]
fmul dword [esp + 0x218]
fadd dword [esp + 0x210]
fstp dword [esp + 0x208]
jmp 0x68f39d
fld dword [esp + 0x208]
fmul dword [esp + 0x218]
fstp dword [esp + 0x208]
fld dword [esp + 0x208]
fdivr dword [0x8802b8]
fadd dword [esp + 0x210]
fmul st(0)
fstp dword [edx + eax + 0xa8]
fld dword [0x8802b8]
fld qword [esp + 0x220]
fcomi st(1)
fcmovb st(0), st(1)
fstp st(1)
fmul qword [0x880190]
fstp dword [edx + eax + 0xa0]
jmp 0x68d350
fld qword [esp + 0x210]
mov ecx, esi
fmul dword [ebp + ecx + 0x9694]
fst qword [esp + 0x210]
fld qword [esp + 0x220]
fcompi st(1)
fstp st(0)
ja 0x68f248
fld qword [esp + 0x210]
fadd dword [0x8802b8]
fmul qword [esp + 0x218]
fstp qword [esp + 0x220]
jmp 0x68f28e
mov edx, esi
lea ecx, [edx + eax + 0x9a04]
mov eax, dword [eax + edx + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1d4], eax
mov eax, esi
movzx eax, byte [ebp + eax + 0x968c]
mov dl, byte [esp + eax + 0x10]
test dl, dl
jne 0x68f494
imul eax, eax, 0x3bc
lea edi, [eax + 0x849fa0]
mov edx, esi
lea esi, [edx + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1e0]
movzx eax, byte [ebp + eax + 0x968c]
mov byte [esp + eax + 0x10], 1
imul esi, eax, 0x3bc
mov edx, dword [esp + 0x1e0]
mov ecx, dword [ebp + edx + 0x9688]
mov dword [esp + 0x1d8], esi
lea eax, [esi + ecx*4 + 0x84a278]
movss xmm0, dword [esi + ecx*4 + 0x84a17c]
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x68f518
mov ecx, dword [esp + 0x1e0]
movss xmm1, dword [ebp + ecx + 0x9690]
comiss xmm1, dword [0x8802b4]
jb 0x68f528
movss xmm3, dword [0x8802b8]
mov edx, ecx
movss xmm6, xmm3
subss xmm6, dword [ebp + edx + 0x9694]
mulss xmm6, xmm1
subss xmm3, xmm6
mulss xmm0, xmm3
jmp 0x68f5dd
mov ecx, dword [esp + 0x1e0]
movss xmm1, dword [ebp + ecx + 0x9690]
test edx, edx
jne 0x68f568
comiss xmm1, dword [0x8802b4]
jae 0x68f568
xorps xmm6, xmm6
subss xmm6, xmm1
mov edx, ecx
mulss xmm6, dword [ebp + edx + 0x9694]
movss xmm3, dword [0x8802b8]
subss xmm3, xmm6
mulss xmm0, xmm3
jmp 0x68f5dd
mulss xmm1, dword [ebp + ecx + 0x9694]
mulss xmm1, xmm0
addss xmm1, xmm1
mov edx, esi
movss dword [esp + 0x18c], xmm1
mov edi, dword [esp + 0x18c]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x190], edi
mov esi, edi
xor esi, 0xffffffff
and esi, dword [esp + 0x18c]
and edi, 0x40000000
or esi, edi
mov dword [esp + 0x18c], esi
movss xmm0, dword [esp + 0x18c]
mulss xmm0, dword [0x8802b0]
mov eax, dword [ebp + ecx + 0x9688]
lea eax, [edx + eax*4 + 0x84a278]
movss dword [eax - 0xfc], xmm0
mov eax, dword [esp + 0x1d0]
imul eax, eax, 0x3bc
mov edx, dword [eax + ecx + 0x5a8]
cmp edx, 1
je 0x68f638
mov eax, ecx
mov esi, dword [ebp + eax + 0x9688]
mov ecx, dword [esp + 0x1d4]
mov eax, dword [ecx]
lea edx, [esi - 0x42]
mov edi, dword [esp + 0x1d8]
push dword [edi + esi*4 + 0x84a17c]
push edx
call dword [eax + 0x68]
jmp 0x68d350
mov edx, ecx
movzx eax, word [eax + edx + 0x528]
cmp eax, 3
jne 0x68f5fe
mov eax, edx
mov esi, dword [ebp + eax + 0x9688]
mov ecx, dword [esp + 0x1d4]
mov eax, dword [ecx]
lea edx, [esi - 0x42]
mov edi, dword [esp + 0x1d8]
push dword [edi + esi*4 + 0x84a17c]
push edx
call dword [eax + 0x70]
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa174]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x68f73a
cmp al, 6
je 0x68f73a
cmp al, 7
je 0x68f73a
cmp al, 8
jne 0x68d350
lea ecx, [edx + 0xa154]
mov eax, dword [edx + 0xa154]
call dword [eax + 0xc]
mov dl, byte [esp + 0x1f4]
test dl, dl
jne 0x68f7b8
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x4d4]
mov edi, dword [esi + 0x4ec]
mov dword [0x84db68], edx
mov edx, dword [esi + 0x4d8]
mov dword [0x84db6c], edx
mov edx, dword [esi + 0x4dc]
mov dword [0x84db70], edx
mov edx, dword [esi + 0x4e0]
mov dword [0x84db74], edx
mov edx, dword [esi + 0x4e4]
mov dword [0x84db78], edx
mov edx, dword [esi + 0x4e8]
mov dword [0x84db7c], edx
mov dl, 1
mov dword [0x84db80], edi
mov byte [esp + 0x1f4], dl
mov edx, dword [esp + 0x1e0]
mov edx, dword [ebp + edx + 0x9688]
cmp edx, 0x22
je 0x68fb48
movss xmm0, dword [0x84db74]
cmp edx, 0x23
je 0x68f9a8
movss xmm6, dword [0x84db78]
cmp edx, 0x24
je 0x68f838
movss xmm5, dword [0x84db7c]
mov edx, dword [0x84db80]
add esp, 0xfffffff0
mov ecx, eax
movss dword [eax + 0x38], xmm0
movss dword [eax + 0x40], xmm6
movss dword [eax + 0x48], xmm5
movss dword [esp], xmm0
movss dword [esp + 4], xmm6
movss dword [esp + 8], xmm5
mov dword [esp + 0xc], edx
call fcn.00698c38
jmp 0x68d350
movss xmm5, dword [0x84db7c]
movss xmm7, dword [0x8802b8]
mov edx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + edx + 0x9690]
movss xmm3, xmm7
subss xmm3, xmm5
mulss xmm3, xmm2
movss xmm4, xmm5
mulss xmm4, xmm2
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x68f8a8
movss xmm1, dword [0x8802b4]
comiss xmm2, xmm1
jb 0x68f8b0
mov edx, dword [esp + 0x1e0]
movss xmm7, dword [ebp + edx + 0x9694]
mulss xmm7, xmm3
addss xmm5, xmm7
jmp 0x68f996
movss xmm1, dword [0x8802b4]
test edx, edx
jne 0x68f8d8
comiss xmm2, xmm1
jae 0x68f8d8
mov edx, dword [esp + 0x1e0]
subss xmm7, dword [ebp + edx + 0x9694]
mulss xmm7, xmm4
addss xmm5, xmm7
jmp 0x68f996
mov edx, dword [esp + 0x1e0]
movss xmm7, dword [ebp + edx + 0x9694]
mulss xmm2, xmm7
comiss xmm2, xmm1
jb 0x68f948
mulss xmm7, xmm3
addss xmm5, xmm7
addss xmm5, xmm5
movss dword [esp + 0x30], xmm5
mov esi, dword [esp + 0x30]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x34], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x30]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x30], edx
movss xmm5, dword [esp + 0x30]
mulss xmm5, dword [0x8802b0]
jmp 0x68f996
mulss xmm7, xmm4
addss xmm5, xmm7
addss xmm5, xmm5
movss dword [esp + 0x30], xmm5
mov esi, dword [esp + 0x30]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x34], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x30]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x30], edx
movss xmm5, dword [esp + 0x30]
mulss xmm5, dword [0x8802b0]
movss dword [0x84db7c], xmm5
jmp 0x68f7f5
movss xmm6, dword [0x8802a8]
addss xmm6, dword [0x84db78]
mulss xmm6, dword [0x8802a4]
movss xmm3, dword [0x8802b8]
mov esi, dword [esp + 0x1e0]
movss xmm4, dword [ebp + esi + 0x9690]
movss xmm1, xmm3
subss xmm1, xmm6
mulss xmm1, xmm4
movss xmm5, xmm6
mulss xmm5, xmm4
mov esi, dword [ebp + esi + 0x969c]
test esi, esi
jne 0x68fa28
movss xmm2, dword [0x8802b4]
comiss xmm4, xmm2
jb 0x68fa30
mov esi, dword [esp + 0x1e0]
movss xmm3, dword [ebp + esi + 0x9694]
mulss xmm3, xmm1
addss xmm6, xmm3
jmp 0x68fb1d
movss xmm2, dword [0x8802b4]
test esi, esi
jne 0x68fa58
comiss xmm4, xmm2
jae 0x68fa58
mov esi, dword [esp + 0x1e0]
subss xmm3, dword [ebp + esi + 0x9694]
mulss xmm3, xmm5
addss xmm6, xmm3
jmp 0x68fb1d
mov edx, dword [esp + 0x1e0]
movss xmm3, dword [ebp + edx + 0x9694]
mulss xmm4, xmm3
comiss xmm4, xmm2
jb 0x68fac8
mulss xmm3, xmm1
addss xmm6, xmm3
addss xmm6, xmm6
movss dword [esp + 0x28], xmm6
mov edi, dword [esp + 0x28]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x2c], edi
mov esi, edi
xor esi, 0xffffffff
and esi, dword [esp + 0x28]
and edi, 0x40000000
or esi, edi
mov dword [esp + 0x28], esi
movss xmm6, dword [esp + 0x28]
mulss xmm6, dword [0x8802b0]
mov edx, dword [ebp + edx + 0x9688]
jmp 0x68fb1d
mulss xmm3, xmm5
addss xmm6, xmm3
addss xmm6, xmm6
movss dword [esp + 0x28], xmm6
mov edi, dword [esp + 0x28]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x2c], edi
mov esi, edi
xor esi, 0xffffffff
and esi, dword [esp + 0x28]
and edi, 0x40000000
or esi, edi
mov dword [esp + 0x28], esi
movss xmm6, dword [esp + 0x28]
mulss xmm6, dword [0x8802b0]
mov edx, dword [ebp + edx + 0x9688]
mulss xmm6, dword [0x88029c]
addss xmm6, dword [0x8802a0]
movss dword [0x84db78], xmm6
jmp 0x68f7e8
movss xmm1, dword [0x8802c0]
addss xmm1, dword [0x84db74]
mulss xmm1, dword [0x8802bc]
movss xmm0, dword [0x8802b8]
mov esi, dword [esp + 0x1e0]
movss xmm3, dword [ebp + esi + 0x9690]
movss xmm4, xmm0
subss xmm4, xmm1
mulss xmm4, xmm3
movss xmm5, xmm1
mulss xmm5, xmm3
mov esi, dword [ebp + esi + 0x969c]
test esi, esi
jne 0x68fbc8
movss xmm2, dword [0x8802b4]
comiss xmm3, xmm2
jb 0x68fbd0
mov esi, dword [esp + 0x1e0]
movss xmm3, dword [ebp + esi + 0x9694]
mulss xmm3, xmm4
addss xmm1, xmm3
jmp 0x68fccd
movss xmm2, dword [0x8802b4]
test esi, esi
jne 0x68fc08
comiss xmm3, xmm2
jae 0x68fc08
mov esi, dword [esp + 0x1e0]
movss xmm3, xmm0
subss xmm3, dword [ebp + esi + 0x9694]
mulss xmm3, xmm5
addss xmm1, xmm3
jmp 0x68fccd
mov edx, dword [esp + 0x1e0]
movss xmm6, dword [ebp + edx + 0x9694]
mulss xmm3, xmm6
comiss xmm3, xmm2
jb 0x68fc78
mulss xmm6, xmm4
addss xmm1, xmm6
addss xmm1, xmm1
movss dword [esp + 0x20], xmm1
mov edi, dword [esp + 0x20]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x24], edi
mov esi, edi
xor esi, 0xffffffff
and esi, dword [esp + 0x20]
and edi, 0x40000000
or esi, edi
mov dword [esp + 0x20], esi
movss xmm1, dword [esp + 0x20]
mulss xmm1, dword [0x8802b0]
mov edx, dword [ebp + edx + 0x9688]
jmp 0x68fccd
mulss xmm6, xmm5
addss xmm1, xmm6
addss xmm1, xmm1
movss dword [esp + 0x20], xmm1
mov edi, dword [esp + 0x20]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x24], edi
mov esi, edi
xor esi, 0xffffffff
and esi, dword [esp + 0x20]
and edi, 0x40000000
or esi, edi
mov dword [esp + 0x20], esi
movss xmm1, dword [esp + 0x20]
mulss xmm1, dword [0x8802b0]
mov edx, dword [ebp + edx + 0x9688]
mulss xmm1, dword [0x8802ac]
addss xmm0, xmm1
movss dword [0x84db74], xmm0
jmp 0x68f7d7
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa1bc]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x68fd1a
cmp al, 6
je 0x68fd1a
cmp al, 7
je 0x68fd1a
cmp al, 8
jne 0x68d350
lea ecx, [edx + 0xa19c]
mov eax, dword [edx + 0xa19c]
call dword [eax + 0xc]
mov dl, byte [esp + 0x1fc]
test dl, dl
jne 0x68fd74
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x500]
mov edi, dword [esi + 0x508]
mov dword [0x84db84], edx
mov edx, dword [esi + 0x504]
mov ecx, dword [esi + 0x50c]
mov dword [0x84db88], edx
mov dl, 1
mov dword [0x84db8c], edi
mov dword [0x84db90], ecx
mov byte [esp + 0x1fc], dl
movss xmm0, dword [0x84db90]
movss xmm2, dword [0x8802b8]
mov edx, dword [esp + 0x1e0]
movss xmm3, dword [ebp + edx + 0x9690]
movss xmm4, xmm2
subss xmm4, xmm0
mulss xmm4, xmm3
movss xmm5, xmm0
mulss xmm5, xmm3
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x68fde8
movss xmm1, dword [0x8802b4]
comiss xmm3, xmm1
jb 0x68fdf0
mov edx, dword [esp + 0x1e0]
movss xmm3, dword [ebp + edx + 0x9694]
mulss xmm3, xmm4
addss xmm0, xmm3
movss xmm1, dword [0x8802b0]
jmp 0x68feea
movss xmm1, dword [0x8802b4]
test edx, edx
jne 0x68fe28
comiss xmm3, xmm1
jae 0x68fe28
mov edx, dword [esp + 0x1e0]
subss xmm2, dword [ebp + edx + 0x9694]
mulss xmm2, xmm5
addss xmm0, xmm2
movss xmm1, dword [0x8802b0]
jmp 0x68feea
mov edx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + edx + 0x9694]
mulss xmm3, xmm2
comiss xmm3, xmm1
jb 0x68fe98
mulss xmm2, xmm4
addss xmm0, xmm2
addss xmm0, xmm0
movss dword [esp + 0x38], xmm0
mov ecx, dword [esp + 0x38]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x3c], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x38]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x38], edx
movss xmm1, dword [0x8802b0]
movss xmm0, xmm1
mulss xmm0, dword [esp + 0x38]
jmp 0x68feea
mulss xmm2, xmm5
addss xmm0, xmm2
addss xmm0, xmm0
movss dword [esp + 0x38], xmm0
mov ecx, dword [esp + 0x38]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x3c], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x38]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x38], edx
movss xmm1, dword [0x8802b0]
movss xmm0, xmm1
mulss xmm0, dword [esp + 0x38]
movss dword [0x84db90], xmm0
mulss xmm0, xmm1
addss xmm1, xmm0
movss dword [eax + 0x30], xmm1
movss dword [eax + 0x34], xmm1
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa198]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x68ff4a
cmp al, 6
je 0x68ff4a
cmp al, 7
je 0x68ff4a
cmp al, 8
jne 0x68d350
lea ecx, [edx + 0xa178]
mov eax, dword [edx + 0xa178]
call dword [eax + 0xc]
mov dl, byte [esp + 0x200]
test dl, dl
jne 0x68ffa4
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x4f0]
mov edi, dword [esi + 0x4f8]
mov dword [0x84db94], edx
mov edx, dword [esi + 0x4f4]
mov ecx, dword [esi + 0x4fc]
mov dword [0x84db98], edx
mov dl, 1
mov dword [0x84db9c], edi
mov dword [0x84dba0], ecx
mov byte [esp + 0x200], dl
movss xmm5, dword [0x84dba0]
movss xmm1, dword [0x8802b8]
mov edx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + edx + 0x9690]
movss xmm3, xmm1
subss xmm3, xmm5
mulss xmm3, xmm2
movss xmm4, xmm5
mulss xmm4, xmm2
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x690018
movss xmm0, dword [0x8802b4]
comiss xmm2, xmm0
jb 0x690020
mov edx, dword [esp + 0x1e0]
movss xmm0, dword [ebp + edx + 0x9694]
mulss xmm0, xmm3
addss xmm5, xmm0
jmp 0x690106
movss xmm0, dword [0x8802b4]
test edx, edx
jne 0x690048
comiss xmm2, xmm0
jae 0x690048
mov edx, dword [esp + 0x1e0]
subss xmm1, dword [ebp + edx + 0x9694]
mulss xmm1, xmm4
addss xmm5, xmm1
jmp 0x690106
mov edx, dword [esp + 0x1e0]
movss xmm1, dword [ebp + edx + 0x9694]
mulss xmm2, xmm1
comiss xmm2, xmm0
jb 0x6900b8
mulss xmm1, xmm3
addss xmm5, xmm1
addss xmm5, xmm5
movss dword [esp + 0x40], xmm5
mov ecx, dword [esp + 0x40]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x44], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x40]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x40], edx
movss xmm5, dword [esp + 0x40]
mulss xmm5, dword [0x8802b0]
jmp 0x690106
mulss xmm1, xmm4
addss xmm5, xmm1
addss xmm5, xmm5
movss dword [esp + 0x40], xmm5
mov ecx, dword [esp + 0x40]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x44], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x40]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x40], edx
movss xmm5, dword [esp + 0x40]
mulss xmm5, dword [0x8802b0]
movss dword [0x84dba0], xmm5
movss dword [eax + 0x30], xmm5
movss dword [eax + 0x34], xmm5
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa204]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x69015a
cmp al, 6
je 0x69015a
cmp al, 7
je 0x69015a
cmp al, 8
jne 0x68d350
lea ecx, [edx + 0xa1e4]
mov eax, dword [edx + 0xa1e4]
call dword [eax + 0xc]
mov dl, byte [esp + 0x1f8]
test dl, dl
jne 0x6901cc
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x510]
mov edi, dword [esi + 0x524]
mov dword [0x84dba4], edx
mov edx, dword [esi + 0x514]
mov dword [0x84dba8], edx
mov edx, dword [esi + 0x518]
mov dword [0x84dbac], edx
mov edx, dword [esi + 0x51c]
mov dword [0x84dbb0], edx
mov edx, dword [esi + 0x520]
mov dword [0x84dbb4], edx
mov dl, 1
mov dword [0x84dbb8], edi
mov byte [esp + 0x1f8], dl
movss xmm5, dword [0x84dbb0]
movss xmm1, dword [0x8802b8]
mov edx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + edx + 0x9690]
movss xmm3, xmm1
subss xmm3, xmm5
mulss xmm3, xmm2
movss xmm4, xmm5
mulss xmm4, xmm2
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x690238
movss xmm0, dword [0x8802b4]
comiss xmm2, xmm0
jb 0x690240
mov edx, dword [esp + 0x1e0]
movss xmm0, dword [ebp + edx + 0x9694]
mulss xmm0, xmm3
addss xmm5, xmm0
jmp 0x690326
movss xmm0, dword [0x8802b4]
test edx, edx
jne 0x690268
comiss xmm2, xmm0
jae 0x690268
mov edx, dword [esp + 0x1e0]
subss xmm1, dword [ebp + edx + 0x9694]
mulss xmm1, xmm4
addss xmm5, xmm1
jmp 0x690326
mov edx, dword [esp + 0x1e0]
movss xmm1, dword [ebp + edx + 0x9694]
mulss xmm2, xmm1
comiss xmm2, xmm0
jb 0x6902d8
mulss xmm1, xmm3
addss xmm5, xmm1
addss xmm5, xmm5
movss dword [esp + 0x48], xmm5
mov esi, dword [esp + 0x48]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x4c], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x48]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x48], edx
movss xmm5, dword [esp + 0x48]
mulss xmm5, dword [0x8802b0]
jmp 0x690326
mulss xmm1, xmm4
addss xmm5, xmm1
addss xmm5, xmm5
movss dword [esp + 0x48], xmm5
mov esi, dword [esp + 0x48]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x4c], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x48]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x48], edx
movss xmm5, dword [esp + 0x48]
mulss xmm5, dword [0x8802b0]
movss dword [0x84dbb0], xmm5
mov esi, dword [0x84dbb4]
mov edx, dword [0x84dbb8]
movss dword [eax + 0x118], xmm5
add esp, 0xfffffff4
mov ecx, eax
movss dword [esp], xmm5
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.00698e18
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa108]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x69039a
cmp al, 6
je 0x69039a
cmp al, 7
je 0x69039a
cmp al, 8
jne 0x68d350
lea ecx, [edx + 0xa0e8]
mov eax, dword [edx + 0xa0e8]
call dword [eax + 0xc]
mov dl, byte [esp + 0x1f0]
test dl, dl
jne 0x69044c
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x9654]
mov edi, dword [esi + 0x967c]
mov dword [0x84dbbc], edx
mov edx, dword [esi + 0x9658]
mov dword [0x84dbc0], edx
mov edx, dword [esi + 0x965c]
mov dword [0x84dbc4], edx
mov edx, dword [esi + 0x9660]
mov dword [0x84dbc8], edx
mov edx, dword [esi + 0x9664]
mov dword [0x84dbcc], edx
mov edx, dword [esi + 0x9668]
mov dword [0x84dbd0], edx
mov edx, dword [esi + 0x966c]
mov dword [0x84dbd4], edx
mov edx, dword [esi + 0x9670]
mov dword [0x84dbd8], edx
mov edx, dword [esi + 0x9674]
mov dword [0x84dbdc], edx
mov edx, dword [esi + 0x9678]
mov dword [0x84dbe0], edx
mov dl, 1
mov dword [0x84dbe4], edi
mov byte [esp + 0x1f0], dl
fld dword [0x84dbe0]
mov edx, dword [esp + 0x1e0]
mov esi, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x220]
test esi, esi
jne 0x6904c8
fld dword [ebp + edx + 0x9690]
fst qword [esp + 0x218]
fld dword [0x8802b4]
fst qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x6904e3
fld dword [0x8802b8]
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x218]
fmulp st(1)
fsubp st(1)
fld qword [esp + 0x220]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x210]
jmp 0x69058c
fld dword [ebp + edx + 0x9690]
fstp qword [esp + 0x218]
fld dword [0x8802b4]
fstp qword [esp + 0x210]
test esi, esi
jne 0x690528
fld qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
jbe 0x690528
fld qword [esp + 0x218]
fchs
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fld qword [esp + 0x220]
fmul st(1)
fmul st(1)
fmulp st(1)
fstp qword [esp + 0x210]
jmp 0x69058c
cmp esi, 1
je 0x690638
fld qword [esp + 0x218]
fmul dword [ebp + edx + 0x9694]
fstp qword [esp + 0x218]
fld qword [esp + 0x218]
fadd dword [0x8802b8]
fst qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x69058c
fld qword [esp + 0x218]
fld st(0)
fmul st(0)
fmulp st(1)
fld dword [0x8802b8]
fsub st(1), st(0)
faddp st(1)
fmul qword [esp + 0x220]
fstp qword [esp + 0x210]
fld qword [esp + 0x210]
mov edx, dword [eax]
mov edx, dword [edx + 4]
fst dword [0x84dbe0]
mov esi, dword [esp + 0x1e0]
fld qword [0x880190]
fmulp st(1)
fmul dword [esi + 0xa208]
fstp qword [esp + 0x1c0]
mov edi, dword [esp + 0x1c0]
mov esi, dword [esp + 0x1c4]
mov ecx, esi
shr ecx, 0x14
and ecx, 0x7ff
cmp ecx, 0x3fe
jle 0x690628
mov dword [esp + 0x204], edx
mov edx, esi
neg ecx
shld edx, edi, 0xb
or edx, 0x80000000
add ecx, 0x41e
mov dword [esp + 0x1d8], edx
mov edi, edx
shr edi, cl
mov edx, dword [esp + 0x204]
mov dword [esp + 0x1d8], edi
neg edi
cmp esi, 0
mov esi, dword [esp + 0x1d8]
cmovge edi, esi
jmp 0x69062a
xor edi, edi
push edi
mov ecx, eax
call edx
jmp 0x68d350
fld qword [esp + 0x218]
fmul dword [ebp + edx + 0x9694]
fst qword [esp + 0x218]
fld qword [esp + 0x210]
fcompi st(1)
fstp st(0)
ja 0x690546
fld qword [esp + 0x218]
fadd dword [0x8802b8]
fmul qword [esp + 0x220]
fstp qword [esp + 0x210]
jmp 0x69058c
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa108]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x6906ba
cmp al, 6
je 0x6906ba
cmp al, 7
je 0x6906ba
cmp al, 8
jne 0x68d350
lea ecx, [edx + 0xa0e8]
mov eax, dword [edx + 0xa0e8]
call dword [eax + 0xc]
mov dl, byte [esp + 0x1f0]
test dl, dl
jne 0x69076c
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x9654]
mov edi, dword [esi + 0x967c]
mov dword [0x84dbbc], edx
mov edx, dword [esi + 0x9658]
mov dword [0x84dbc0], edx
mov edx, dword [esi + 0x965c]
mov dword [0x84dbc4], edx
mov edx, dword [esi + 0x9660]
mov dword [0x84dbc8], edx
mov edx, dword [esi + 0x9664]
mov dword [0x84dbcc], edx
mov edx, dword [esi + 0x9668]
mov dword [0x84dbd0], edx
mov edx, dword [esi + 0x966c]
mov dword [0x84dbd4], edx
mov edx, dword [esi + 0x9670]
mov dword [0x84dbd8], edx
mov edx, dword [esi + 0x9674]
mov dword [0x84dbdc], edx
mov edx, dword [esi + 0x9678]
mov dword [0x84dbe0], edx
mov dl, 1
mov dword [0x84dbe4], edi
mov byte [esp + 0x1f0], dl
fld dword [0x84dbc4]
mov edx, dword [esp + 0x1e0]
mov esi, dword [ebp + edx + 0x969c]
fstp qword [esp + 0x220]
test esi, esi
jne 0x6907d8
fld dword [ebp + edx + 0x9690]
fst qword [esp + 0x218]
fld dword [0x8802b4]
fcompi st(1)
fstp st(0)
ja 0x6907e6
fld dword [0x8802b8]
fld dword [ebp + edx + 0x9694]
fsubr st(1)
fld qword [esp + 0x218]
fmulp st(1)
fsubp st(1)
fmul qword [esp + 0x220]
fstp qword [esp + 0x218]
jmp 0x690886
fld dword [ebp + edx + 0x9690]
fstp qword [esp + 0x218]
test esi, esi
jne 0x690828
fld dword [0x8802b4]
fld qword [esp + 0x218]
fcompi st(1)
fstp st(0)
jae 0x690828
fld qword [esp + 0x218]
fchs
fmul dword [ebp + edx + 0x9694]
fsubr dword [0x8802b8]
fmul qword [esp + 0x220]
fstp qword [esp + 0x218]
jmp 0x690886
fld qword [esp + 0x218]
mov edi, edx
fmul dword [ebp + edi + 0x9694]
fld qword [esp + 0x220]
fmulp st(1)
fadd st(0)
fstp dword [esp + 0x50]
mov esi, dword [esp + 0x50]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x54], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x50]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x50], edx
fld dword [esp + 0x50]
fmul dword [0x8802b0]
fstp qword [esp + 0x218]
fld qword [esp + 0x218]
mov edi, 1
xor edx, edx
fst dword [0x84dbc4]
fld qword [eax + 0x80]
fsubr st(1)
fabs
fld qword [0x880188]
fcompi st(1)
fstp st(0)
cmovb edx, edi
movzx esi, dl
test esi, esi
fstp qword [eax + 0x80]
je 0x68d350
mov ecx, eax
call fcn.00454dcc
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0e4]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x69090a
cmp al, 6
je 0x69090a
cmp al, 7
je 0x69090a
cmp al, 8
jne 0x68d350
lea esi, [edx + 0xa0c4]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov eax, dword [eax + 4]
cmp eax, 0x1b
jne 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dword [esp + 0x1d8], eax
mov al, byte [esp + 0x1e8]
test al, al
jne 0x6909b8
mov esi, dword [esp + 0x1e0]
mov eax, dword [esi + 0x9600]
mov edi, dword [esi + 0x9610]
mov dword [0x849eb8], eax
mov eax, dword [esi + 0x9604]
mov ecx, dword [esi + 0x9614]
mov dword [0x849ebc], eax
mov edx, dword [esi + 0x9618]
movss xmm3, dword [esi + 0x961c]
mov dword [0x849ec8], edi
movss xmm1, dword [esi + 0x9620]
movss xmm2, dword [esi + 0x9624]
mov dword [0x849ecc], ecx
mov al, 1
mov dword [0x849ed0], edx
mov byte [esp + 0x1e8], al
jmp 0x6909d0
movss xmm3, dword [0x849ed4]
movss xmm1, dword [0x849ed8]
movss xmm2, dword [0x849edc]
mov edx, dword [esp + 0x1e0]
movss xmm6, dword [ebp + edx + 0x9690]
movss xmm0, dword [0x8802b8]
subss xmm0, xmm3
mulss xmm0, xmm6
mov eax, dword [ebp + edx + 0x969c]
movss dword [esp + 0x1dc], xmm0
movss xmm0, xmm3
mulss xmm0, xmm6
test eax, eax
jne 0x690a38
movss xmm5, dword [0x8802b4]
comiss xmm6, xmm5
jb 0x690a40
movss xmm4, dword [ebp + edx + 0x9694]
movss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm4
addss xmm3, xmm0
jmp 0x690b36
movss xmm5, dword [0x8802b4]
test eax, eax
jne 0x690a78
comiss xmm6, xmm5
jae 0x690a78
movss xmm4, dword [ebp + edx + 0x9694]
movss xmm7, dword [0x8802b8]
subss xmm7, xmm4
mulss xmm7, xmm0
addss xmm3, xmm7
jmp 0x690b36
movss xmm4, dword [ebp + edx + 0x9694]
movss xmm7, xmm4
mulss xmm7, xmm6
comiss xmm7, xmm5
jb 0x690ae8
movss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm4
addss xmm3, xmm0
addss xmm3, xmm3
movss dword [esp + 0x70], xmm3
mov ecx, dword [esp + 0x70]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov edx, ecx
mov dword [esp + 0x74], ecx
xor edx, 0xffffffff
and ecx, 0x40000000
and edx, dword [esp + 0x70]
or edx, ecx
mov dword [esp + 0x70], edx
movss xmm3, dword [esp + 0x70]
mulss xmm3, dword [0x8802b0]
jmp 0x690b36
mulss xmm0, xmm4
addss xmm3, xmm0
addss xmm3, xmm3
movss dword [esp + 0x70], xmm3
mov ecx, dword [esp + 0x70]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x74], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x70]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x70], edx
movss xmm3, dword [esp + 0x70]
mulss xmm3, dword [0x8802b0]
movss dword [0x849ed4], xmm3
movss xmm0, dword [0x8802b8]
subss xmm0, xmm1
mulss xmm0, xmm6
movss xmm7, xmm1
mulss xmm7, xmm6
movss dword [esp + 0x1dc], xmm7
test eax, eax
jne 0x690b78
comiss xmm6, xmm5
jb 0x690b78
mulss xmm0, xmm4
addss xmm1, xmm0
jmp 0x690c5f
test eax, eax
jne 0x690ba8
comiss xmm6, xmm5
jae 0x690ba8
movss xmm0, dword [0x8802b8]
subss xmm0, xmm4
mulss xmm0, dword [esp + 0x1dc]
addss xmm1, xmm0
jmp 0x690c5f
movss xmm7, xmm4
mulss xmm7, xmm6
comiss xmm7, xmm5
jb 0x690c08
mulss xmm0, xmm4
addss xmm1, xmm0
addss xmm1, xmm1
movss dword [esp + 0x78], xmm1
mov ecx, dword [esp + 0x78]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x7c], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x78]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x78], edx
movss xmm1, dword [esp + 0x78]
mulss xmm1, dword [0x8802b0]
jmp 0x690c5f
movss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm4
addss xmm1, xmm0
addss xmm1, xmm1
movss dword [esp + 0x78], xmm1
mov ecx, dword [esp + 0x78]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov edx, ecx
mov dword [esp + 0x7c], ecx
xor edx, 0xffffffff
and ecx, 0x40000000
and edx, dword [esp + 0x78]
or edx, ecx
mov dword [esp + 0x78], edx
movss xmm1, dword [esp + 0x78]
mulss xmm1, dword [0x8802b0]
movss dword [0x849ed8], xmm1
movss xmm0, dword [0x8802b8]
subss xmm0, xmm2
mulss xmm0, xmm6
movss xmm1, xmm2
mulss xmm1, xmm6
test eax, eax
jne 0x690c98
comiss xmm6, xmm5
jb 0x690c98
mulss xmm4, xmm0
addss xmm2, xmm4
jmp 0x690d98
test eax, eax
jne 0x690cc8
comiss xmm6, xmm5
jae 0x690cc8
movss xmm0, dword [0x8802b8]
subss xmm0, xmm4
mulss xmm0, xmm1
addss xmm2, xmm0
jmp 0x690d98
mulss xmm6, xmm4
comiss xmm6, xmm5
jb 0x690d38
mulss xmm4, xmm0
addss xmm2, xmm4
addss xmm2, xmm2
movss dword [esp + 0x80], xmm2
mov edx, dword [esp + 0x80]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x84], edx
mov eax, edx
xor eax, 0xffffffff
and eax, dword [esp + 0x80]
and edx, 0x40000000
or eax, edx
mov dword [esp + 0x80], eax
movss xmm2, dword [esp + 0x80]
mulss xmm2, dword [0x8802b0]
jmp 0x690d98
mulss xmm4, xmm1
addss xmm2, xmm4
addss xmm2, xmm2
movss dword [esp + 0x80], xmm2
mov edx, dword [esp + 0x80]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x84], edx
mov eax, edx
xor eax, 0xffffffff
and eax, dword [esp + 0x80]
and edx, 0x40000000
or eax, edx
mov dword [esp + 0x80], eax
movss xmm2, dword [esp + 0x80]
mulss xmm2, dword [0x8802b0]
movss dword [0x849edc], xmm2
add esp, 0xfffffff8
mov ecx, dword [esp + 0x1e0]
movss dword [esp], xmm3
mov byte [esp + 4], 1
call fcn.0067bff0
push 1
push dword [0x849ed8]
mov ecx, dword [esp + 0x1e0]
call fcn.0067c140
movss xmm0, dword [0x849edc]
mulss xmm0, dword [0x880294]
addss xmm0, dword [0x880298]
movss dword [0x85fae8], xmm0
mov eax, dword [0x85fae8]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [0x85faec], eax
xor eax, 0xffffffff
mov edx, dword [esp + 0x1d8]
and eax, dword [0x85fae8]
mov dword [0x85fae8], eax
mov ecx, dword [0x85faec]
and ecx, 0x40000000
or eax, ecx
mov dword [0x85fae8], eax
fld dword [0x880290]
fadd dword [0x85fae8]
fmul dword [0x88028c]
fst qword [esp + 0x220]
fst dword [edx + 0xb4]
fld qword [0x880180]
fld st(0)
fld dword [edx + 0xe0]
fsubr st(2)
fmul qword [0x880170]
fadd qword [0x880178]
fdivr st(3)
fadd st(2)
fsubrp st(3)
fsubr st(2)
fld st(1)
fxch st(3)
fst dword [edx + 0x104]
fld dword [edx + 0xfc]
fsubr st(4), st(0)
fld dword [edx + 0x100]
fsubr st(4), st(0)
faddp st(1)
fld dword [0x8802b8]
fxch st(1)
faddp st(2)
fld st(3)
fxch st(1)
fdiv dword [edx + 0x70]
fxch st(1)
fmul st(5)
fld st(1)
fld dword [edx + 0x74]
fmul st(1), st(0)
fxch st(5)
fmul st(6), st(0)
fxch st(1)
fmul qword [0x880158]
fxch st(7)
fmulp st(1)
fxch st(6)
fadd qword [0x880160]
fdivp st(1)
fld dword [edx + 0x78]
fdivr st(4), st(0)
fmulp st(2)
fxch st(3)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(4)
fxch st(2)
faddp st(3)
fxch st(1)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(3)
fxch st(1)
faddp st(2)
faddp st(1)
fdivr qword [0x880168]
fstp dword [edx + 0xc4]
fld qword [esp + 0x220]
fstp dword [edx + 0xc0]
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0e4]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x690f4a
cmp al, 6
je 0x690f4a
cmp al, 7
je 0x690f4a
cmp al, 8
jne 0x68d350
lea esi, [edx + 0xa0c4]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov eax, dword [eax + 4]
cmp eax, 0x1b
jne 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dl, byte [esp + 0x1e8]
test dl, dl
jne 0x690ff8
mov esi, dword [esp + 0x1e0]
mov edx, dword [esi + 0x9600]
movss xmm3, dword [esi + 0x9610]
mov dword [0x849eb8], edx
mov edx, dword [esi + 0x9604]
movss xmm1, dword [esi + 0x9614]
mov dword [0x849ebc], edx
movss xmm2, dword [esi + 0x9618]
mov edx, dword [esi + 0x961c]
mov dword [0x849ed4], edx
mov edi, dword [esi + 0x9620]
mov ecx, dword [esi + 0x9624]
mov dword [0x849ed8], edi
mov dl, 1
mov dword [0x849edc], ecx
mov byte [esp + 0x1e8], dl
jmp 0x691010
movss xmm3, dword [0x849ec8]
movss xmm1, dword [0x849ecc]
movss xmm2, dword [0x849ed0]
mov ecx, dword [esp + 0x1e0]
movss xmm0, dword [ebp + ecx + 0x9690]
movss xmm5, dword [0x8802b8]
subss xmm5, xmm3
mulss xmm5, xmm0
movss xmm6, xmm3
mulss xmm6, xmm0
mov edx, dword [ebp + ecx + 0x969c]
test edx, edx
mov dword [esp + 0x1d8], edx
jne 0x691078
movss xmm4, dword [0x8802b4]
comiss xmm0, xmm4
jb 0x691080
mov edx, ecx
movss xmm6, dword [ebp + edx + 0x9694]
mulss xmm5, xmm6
movss dword [esp + 0x1dc], xmm6
addss xmm3, xmm5
jmp 0x6911ad
movss xmm4, dword [0x8802b4]
test edx, edx
jne 0x6910b8
comiss xmm0, xmm4
jae 0x6910b8
mov edx, ecx
movss xmm5, dword [ebp + edx + 0x9694]
movss xmm7, dword [0x8802b8]
movss dword [esp + 0x1dc], xmm5
subss xmm7, xmm5
mulss xmm7, xmm6
addss xmm3, xmm7
jmp 0x6911ad
mov edx, ecx
movss xmm7, dword [ebp + edx + 0x9694]
movss dword [esp + 0x1dc], xmm7
mulss xmm7, xmm0
comiss xmm7, xmm4
jb 0x691148
mulss xmm5, dword [esp + 0x1dc]
addss xmm3, xmm5
addss xmm3, xmm3
movss dword [esp + 0x88], xmm3
mov ecx, dword [esp + 0x88]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x8c], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x88]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x88], edx
movss xmm3, dword [esp + 0x88]
mulss xmm3, dword [0x8802b0]
jmp 0x6911ad
mulss xmm6, dword [esp + 0x1dc]
addss xmm3, xmm6
addss xmm3, xmm3
movss dword [esp + 0x88], xmm3
mov ecx, dword [esp + 0x88]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x8c], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x88]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x88], edx
movss xmm3, dword [esp + 0x88]
mulss xmm3, dword [0x8802b0]
movss dword [0x849ec8], xmm3
movss xmm6, dword [0x8802b8]
subss xmm6, xmm1
mulss xmm6, xmm0
movss xmm5, xmm1
mulss xmm5, xmm0
mov edx, dword [esp + 0x1d8]
test edx, edx
jne 0x6911f8
comiss xmm0, xmm4
jb 0x6911f8
mulss xmm6, dword [esp + 0x1dc]
addss xmm1, xmm6
jmp 0x69130d
test edx, edx
jne 0x691228
comiss xmm0, xmm4
jae 0x691228
movss xmm6, dword [0x8802b8]
subss xmm6, dword [esp + 0x1dc]
mulss xmm6, xmm5
addss xmm1, xmm6
jmp 0x69130d
movss xmm7, dword [esp + 0x1dc]
mulss xmm7, xmm0
comiss xmm7, xmm4
jb 0x6912a8
mulss xmm6, dword [esp + 0x1dc]
addss xmm1, xmm6
addss xmm1, xmm1
movss dword [esp + 0x90], xmm1
mov ecx, dword [esp + 0x90]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x94], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x90]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x90], edx
movss xmm1, dword [esp + 0x90]
mulss xmm1, dword [0x8802b0]
jmp 0x69130d
mulss xmm5, dword [esp + 0x1dc]
addss xmm1, xmm5
addss xmm1, xmm1
movss dword [esp + 0x90], xmm1
mov ecx, dword [esp + 0x90]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x94], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0x90]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0x90], edx
movss xmm1, dword [esp + 0x90]
mulss xmm1, dword [0x8802b0]
movss dword [0x849ecc], xmm1
movss xmm6, dword [0x8802b8]
subss xmm6, xmm2
mulss xmm6, xmm0
movss xmm5, xmm2
mulss xmm5, xmm0
mov edx, dword [esp + 0x1d8]
test edx, edx
jne 0x691358
comiss xmm0, xmm4
jb 0x691358
movss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm6
addss xmm2, xmm0
jmp 0x691471
test edx, edx
jne 0x691388
comiss xmm0, xmm4
jae 0x691388
movss xmm0, dword [0x8802b8]
subss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm5
addss xmm2, xmm0
jmp 0x691471
mulss xmm0, dword [esp + 0x1dc]
comiss xmm0, xmm4
jb 0x691408
movss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm6
addss xmm2, xmm0
addss xmm2, xmm2
movss dword [esp + 0x98], xmm2
mov ecx, dword [esp + 0x98]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov edx, ecx
mov dword [esp + 0x9c], ecx
xor edx, 0xffffffff
and ecx, 0x40000000
and edx, dword [esp + 0x98]
or edx, ecx
mov dword [esp + 0x98], edx
movss xmm2, dword [esp + 0x98]
mulss xmm2, dword [0x8802b0]
jmp 0x691471
movss xmm0, dword [esp + 0x1dc]
mulss xmm0, xmm5
addss xmm2, xmm0
addss xmm2, xmm2
movss dword [esp + 0x98], xmm2
mov ecx, dword [esp + 0x98]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov edx, ecx
mov dword [esp + 0x9c], ecx
xor edx, 0xffffffff
and ecx, 0x40000000
and edx, dword [esp + 0x98]
or edx, ecx
mov dword [esp + 0x98], edx
movss xmm2, dword [esp + 0x98]
mulss xmm2, dword [0x8802b0]
movss dword [0x849ed0], xmm2
movss xmm0, dword [0x880298]
mulss xmm3, dword [0x880294]
addss xmm3, xmm0
movss xmm5, dword [0x880290]
movss dword [0x85fae8], xmm3
mov edx, dword [0x85fae8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [0x85faec], edx
xor edx, 0xffffffff
movss xmm3, xmm5
and edx, dword [0x85fae8]
mov dword [0x85fae8], edx
mov ecx, dword [0x85faec]
and ecx, 0x40000000
or edx, ecx
mov dword [0x85fae8], edx
addss xmm3, dword [0x85fae8]
mulss xmm3, dword [0x88028c]
movss dword [eax + 0x108], xmm3
comiss xmm3, dword [0x8802b0]
jae 0x691538
movss xmm6, dword [0x880290]
movss xmm7, dword [0x8802b0]
subss xmm7, xmm3
mulss xmm7, xmm6
addss xmm3, xmm3
movss dword [eax + 0x88], xmm7
movss dword [eax + 0x8c], xmm3
movss dword [eax + 0x90], xmm4
jmp 0x691578
movss dword [eax + 0x88], xmm4
movss xmm6, dword [0x880290]
movss xmm7, dword [0x8802b8]
subss xmm7, xmm3
mulss xmm7, xmm6
movss dword [eax + 0x8c], xmm7
movss xmm7, dword [0x880490]
addss xmm7, xmm3
mulss xmm7, xmm6
movss dword [eax + 0x90], xmm7
mulss xmm1, dword [0x880294]
addss xmm1, xmm0
movss dword [0x85fae8], xmm1
mov edx, dword [0x85fae8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [0x85faec], edx
xor edx, 0xffffffff
and edx, dword [0x85fae8]
mov dword [0x85fae8], edx
mov ecx, dword [0x85faec]
and ecx, 0x40000000
or edx, ecx
mov dword [0x85fae8], edx
movss xmm1, dword [0x85fae8]
addss xmm1, xmm5
mulss xmm1, dword [0x88028c]
movss dword [eax + 0x10c], xmm1
comiss xmm1, dword [0x8802b0]
jae 0x691628
movss xmm3, dword [0x8802b0]
subss xmm3, xmm1
mulss xmm3, xmm6
movss dword [eax + 0x94], xmm3
addss xmm1, xmm1
movss dword [eax + 0x98], xmm1
movss dword [eax + 0x9c], xmm4
jmp 0x691660
movss dword [eax + 0x94], xmm4
movss xmm7, dword [0x8802b8]
subss xmm7, xmm1
mulss xmm7, xmm6
movss xmm3, dword [0x880490]
movss dword [eax + 0x98], xmm7
addss xmm3, xmm1
mulss xmm3, xmm6
movss dword [eax + 0x9c], xmm3
mulss xmm2, dword [0x880294]
addss xmm0, xmm2
movss dword [0x85fae8], xmm0
mov ecx, dword [0x85fae8]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [0x85faec], ecx
xor ecx, 0xffffffff
and ecx, dword [0x85fae8]
mov dword [0x85fae8], ecx
mov esi, dword [0x85faec]
and esi, 0x40000000
or ecx, esi
mov dword [0x85fae8], ecx
addss xmm5, dword [0x85fae8]
mulss xmm5, dword [0x88028c]
movss dword [eax + 0x110], xmm5
comiss xmm5, dword [0x8802b0]
jae 0x691708
movss xmm0, dword [0x8802b0]
subss xmm0, xmm5
mulss xmm6, xmm0
movss dword [eax + 0xa0], xmm6
addss xmm5, xmm5
movss dword [eax + 0xa4], xmm5
movss dword [eax + 0xa8], xmm4
jmp 0x68d350
movss dword [eax + 0xa0], xmm4
movss xmm1, dword [0x8802b8]
subss xmm1, xmm5
mulss xmm1, xmm6
movss xmm0, dword [0x880490]
addss xmm0, xmm5
movss dword [eax + 0xa4], xmm1
mulss xmm6, xmm0
movss dword [eax + 0xa8], xmm6
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0e4]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x69177a
cmp al, 6
je 0x69177a
cmp al, 7
je 0x69177a
cmp al, 8
jne 0x68d350
lea esi, [edx + 0xa0c4]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov eax, dword [eax + 4]
cmp eax, 0x1b
jne 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov edi, eax
mov dl, byte [esp + 0x1e8]
test dl, dl
jne 0x691828
mov esi, dword [esp + 0x1e0]
movss xmm4, dword [esi + 0x9600]
movss xmm3, dword [esi + 0x9604]
mov edx, dword [esi + 0x9610]
mov ecx, dword [esi + 0x9624]
mov dword [0x849ec8], edx
mov edx, dword [esi + 0x9614]
mov dword [0x849ecc], edx
mov edx, dword [esi + 0x9618]
mov dword [0x849ed0], edx
mov edx, dword [esi + 0x961c]
mov dword [0x849ed4], edx
mov edx, dword [esi + 0x9620]
mov dword [0x849ed8], edx
mov dl, 1
mov dword [0x849edc], ecx
mov byte [esp + 0x1e8], dl
jmp 0x691838
movss xmm4, dword [0x849eb8]
movss xmm3, dword [0x849ebc]
mov ecx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + ecx + 0x9690]
movss xmm6, dword [0x8802b8]
subss xmm6, xmm4
mulss xmm6, xmm2
movss xmm0, xmm4
mulss xmm0, xmm2
mov edx, dword [ebp + ecx + 0x969c]
test edx, edx
mov dword [esp + 0x1d8], edx
jne 0x691898
movss xmm1, dword [0x8802b4]
comiss xmm2, xmm1
jb 0x6918a0
mov edx, ecx
movss xmm5, dword [ebp + edx + 0x9694]
mulss xmm6, xmm5
addss xmm4, xmm6
jmp 0x6919b8
movss xmm1, dword [0x8802b4]
test edx, edx
jne 0x6918d8
comiss xmm2, xmm1
jae 0x6918d8
mov edx, ecx
movss xmm5, dword [ebp + edx + 0x9694]
movss xmm6, dword [0x8802b8]
subss xmm6, xmm5
mulss xmm6, xmm0
addss xmm4, xmm6
jmp 0x6919b8
mov edx, ecx
movss xmm5, dword [ebp + edx + 0x9694]
movss xmm7, xmm5
mulss xmm7, xmm2
comiss xmm7, xmm1
jb 0x691958
mulss xmm6, xmm5
addss xmm4, xmm6
addss xmm4, xmm4
movss dword [esp + 0xa0], xmm4
mov ecx, dword [esp + 0xa0]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0xa4], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0xa0]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0xa0], edx
movss xmm4, dword [esp + 0xa0]
mulss xmm4, dword [0x8802b0]
jmp 0x6919b8
mulss xmm0, xmm5
addss xmm4, xmm0
addss xmm4, xmm4
movss dword [esp + 0xa0], xmm4
mov ecx, dword [esp + 0xa0]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0xa4], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0xa0]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0xa0], edx
movss xmm4, dword [esp + 0xa0]
mulss xmm4, dword [0x8802b0]
movss dword [0x849eb8], xmm4
movss xmm0, dword [0x8802b8]
subss xmm0, xmm3
mulss xmm0, xmm2
movss xmm6, xmm3
mulss xmm6, xmm2
mov edx, dword [esp + 0x1d8]
test edx, edx
jne 0x6919f8
comiss xmm2, xmm1
jb 0x6919f8
mulss xmm5, xmm0
addss xmm3, xmm5
jmp 0x691af8
test edx, edx
jne 0x691a28
comiss xmm2, xmm1
jae 0x691a28
movss xmm0, dword [0x8802b8]
subss xmm0, xmm5
mulss xmm0, xmm6
addss xmm3, xmm0
jmp 0x691af8
mulss xmm2, xmm5
comiss xmm2, xmm1
jb 0x691a98
mulss xmm5, xmm0
addss xmm3, xmm5
addss xmm3, xmm3
movss dword [esp + 0xa8], xmm3
mov ecx, dword [esp + 0xa8]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0xac], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0xa8]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0xa8], edx
movss xmm3, dword [esp + 0xa8]
mulss xmm3, dword [0x8802b0]
jmp 0x691af8
mulss xmm5, xmm6
addss xmm3, xmm5
addss xmm3, xmm3
movss dword [esp + 0xa8], xmm3
mov ecx, dword [esp + 0xa8]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0xac], ecx
mov edx, ecx
xor edx, 0xffffffff
and edx, dword [esp + 0xa8]
and ecx, 0x40000000
or edx, ecx
mov dword [esp + 0xa8], edx
movss xmm3, dword [esp + 0xa8]
mulss xmm3, dword [0x8802b0]
movss dword [0x849ebc], xmm3
mulss xmm4, dword [0x880294]
addss xmm4, dword [0x880298]
movss dword [0x85fae8], xmm4
mov edx, dword [0x85fae8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [0x85faec], edx
xor edx, 0xffffffff
lea ecx, [esp + 0xb0]
and edx, dword [0x85fae8]
mov dword [0x85fae8], edx
mov esi, dword [0x85faec]
and esi, 0x40000000
or edx, esi
mov dword [0x85fae8], edx
fld dword [0x880290]
fadd dword [0x85fae8]
fmul dword [0x88028c]
fmul qword [0x880138]
fst dword [edi + 0xd0]
fadd dword [edi + 0xcc]
fstp qword [esp + 0x220]
call fcn.00435a30
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x220]
fadd qword [0x880130]
fmul qword [0x880128]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
lea ecx, [esp + 0xd4]
fmul qword [0x880120]
fmul dword [edi + 0x114]
fld dword [edi + 0xf4]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fstp dword [edi + 0x74]
fld dword [edi + 0xcc]
fadd dword [edi + 0xd0]
fadd dword [edi + 0xd4]
fstp qword [esp + 0x220]
call fcn.00435a30
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x220]
fadd qword [0x880130]
fmul qword [0x880128]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
movss xmm0, dword [0x849ebc]
mulss xmm0, dword [0x880294]
fmul qword [0x880120]
addss xmm0, dword [0x880298]
lea ecx, [esp + 0xf8]
fmul dword [edi + 0x114]
fld dword [edi + 0xf8]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fst dword [edi + 0x78]
fld qword [0x880180]
fld st(0)
fld st(1)
fld dword [edi + 0xfc]
fsubr st(2), st(0)
fld dword [edi + 0x100]
fsubr st(2), st(0)
faddp st(1)
fxch st(3)
fsubr dword [edi + 0x104]
fld st(1)
fmul st(3)
fld dword [0x8802b8]
fxch st(2)
fmul st(3), st(0)
fmulp st(4)
fxch st(1)
fdiv dword [edi + 0x70]
fxch st(4)
fadd dword [edi + 0x104]
fstp qword [esp + 0x220]
fld st(3)
fxch st(4)
fmul st(5)
fld dword [edi + 0x74]
fmul st(5), st(0)
fdivp st(6)
fxch st(4)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(1)
fxch st(4)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(1)
faddp st(3)
fxch st(1)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(1)
faddp st(1)
fadd qword [esp + 0x220]
fdivr qword [0x880168]
fstp dword [edi + 0xc4]
movss dword [0x85fae8], xmm0
mov edx, dword [0x85fae8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [0x85faec], edx
xor edx, 0xffffffff
and edx, dword [0x85fae8]
mov dword [0x85fae8], edx
mov esi, dword [0x85faec]
and esi, 0x40000000
or edx, esi
mov dword [0x85fae8], edx
fld dword [0x880290]
fadd dword [0x85fae8]
fmul dword [0x88028c]
fmul qword [0x880138]
fst dword [edi + 0xd4]
fld dword [edi + 0xcc]
fadd dword [edi + 0xd0]
faddp st(1)
fstp qword [esp + 0x220]
call fcn.00435a30
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x220]
fadd qword [0x880130]
fmul qword [0x880128]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fmul qword [0x880120]
fmul dword [edi + 0x114]
fld dword [edi + 0xf8]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fst dword [edi + 0x78]
fld qword [0x880180]
fld dword [edi + 0xfc]
fld st(1)
fsubr st(1)
fld dword [edi + 0x100]
fld st(3)
fsubr st(1)
fxch st(3)
faddp st(1)
fld st(2)
fxch st(4)
fsubr dword [edi + 0x104]
fxch st(2)
fmul st(4), st(0)
fxch st(2)
fmul st(3), st(0)
fld dword [0x8802b8]
fxch st(3)
fmulp st(1)
fxch st(2)
fdiv dword [edi + 0x70]
fld st(0)
fxch st(1)
fmul st(6)
fxch st(2)
fadd dword [edi + 0x104]
fstp qword [esp + 0x220]
fld dword [edi + 0x74]
fmul st(1), st(0)
fdivp st(6)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(4)
fxch st(4)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(2)
fxch st(2)
faddp st(1)
fxch st(2)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(1)
faddp st(1)
fadd qword [esp + 0x220]
fdivr qword [0x880168]
fstp dword [edi + 0xc4]
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0e4]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x691e8a
cmp al, 6
je 0x691e8a
cmp al, 7
je 0x691e8a
cmp al, 8
jne 0x68d350
lea esi, [edx + 0xa0c4]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov al, byte [eax + 8]
test al, al
jne 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov esi, eax
mov dl, byte [esp + 0x1e4]
test dl, dl
jne 0x691ef8
mov edi, dword [esp + 0x1e0]
mov edx, dword [edi + 0x95f8]
movss xmm0, dword [edi + 0x95fc]
mov dword [esp + 0x1d8], edx
mov dword [0x849eb0], edx
mov dl, 1
mov byte [esp + 0x1e4], dl
jmp 0x691f0d
movss xmm0, dword [0x849eb4]
mov edx, dword [0x849eb0]
mov dword [esp + 0x1d8], edx
movss xmm2, dword [0x8802b8]
mov edx, dword [esp + 0x1e0]
movss xmm5, dword [ebp + edx + 0x9690]
movss xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, xmm5
movss xmm3, xmm0
mulss xmm3, xmm5
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x691f78
movss xmm4, dword [0x8802b4]
comiss xmm5, xmm4
jb 0x691f80
mov edx, dword [esp + 0x1e0]
movss xmm3, dword [ebp + edx + 0x9694]
mulss xmm3, xmm1
addss xmm0, xmm3
jmp 0x692088
movss xmm4, dword [0x8802b4]
test edx, edx
jne 0x691fa8
comiss xmm5, xmm4
jae 0x691fa8
mov edx, dword [esp + 0x1e0]
subss xmm2, dword [ebp + edx + 0x9694]
mulss xmm2, xmm3
addss xmm0, xmm2
jmp 0x692088
mov edx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + edx + 0x9694]
mulss xmm5, xmm2
comiss xmm5, xmm4
jb 0x692028
mulss xmm2, xmm1
addss xmm0, xmm2
addss xmm0, xmm0
movss dword [esp + 0x11c], xmm0
mov edi, dword [esp + 0x11c]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x120], edi
mov edx, edi
xor edx, 0xffffffff
and edx, dword [esp + 0x11c]
and edi, 0x40000000
or edx, edi
mov dword [esp + 0x11c], edx
movss xmm0, dword [esp + 0x11c]
mulss xmm0, dword [0x8802b0]
jmp 0x692088
mulss xmm2, xmm3
addss xmm0, xmm2
addss xmm0, xmm0
movss dword [esp + 0x11c], xmm0
mov edi, dword [esp + 0x11c]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0x120], edi
mov edx, edi
xor edx, 0xffffffff
and edx, dword [esp + 0x11c]
and edi, 0x40000000
or edx, edi
mov dword [esp + 0x11c], edx
movss xmm0, dword [esp + 0x11c]
mulss xmm0, dword [0x8802b0]
movss dword [0x849eb4], xmm0
mov edx, dword [esi]
add esp, 0xfffffff8
mov edi, dword [esp + 0x1e0]
mov ecx, esi
mov dword [esp], edi
movss dword [esp + 4], xmm0
call dword [edx + 0x24]
mov edi, dword [esp + 0x1e0]
mov edx, dword [edi + 0xa0e4]
cmp edx, 0x1b
jne 0x68d350
movss xmm0, dword [0x849eb4]
mulss xmm0, dword [0x880294]
addss xmm0, dword [0x880298]
movss dword [0x85fae8], xmm0
mov edx, dword [0x85fae8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [0x85faec], edx
xor edx, 0xffffffff
and edx, dword [0x85fae8]
mov dword [0x85fae8], edx
mov edi, dword [0x85faec]
and edi, 0x40000000
or edx, edi
mov dword [0x85fae8], edx
fld dword [0x880290]
fadd dword [0x85fae8]
fmul dword [0x88028c]
fst qword [esp + 0x220]
fst dword [esi + 0xdc]
fld qword [0x880150]
fcompi st(1)
fstp st(0)
jae 0x692178
fld qword [esp + 0x220]
fadd qword [0x880140]
fmul qword [0x880108]
fadd qword [0x880110]
fstp qword [esp + 0x220]
jmp 0x69218c
fld qword [esp + 0x220]
fmul qword [0x880118]
fstp qword [esp + 0x220]
fld qword [0x8800f8]
lea ecx, [esp + 0x124]
fld qword [esp + 0x220]
fmul st(1), st(0)
fld qword [0x8800f0]
faddp st(1)
fmulp st(1)
fadd qword [0x880100]
fstp dword [esi + 0xf4]
fld dword [esi + 0xcc]
fadd dword [esi + 0xd0]
fstp qword [esp + 0x218]
call fcn.00435a30
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x218]
fadd qword [0x880130]
fmul qword [0x880128]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esi + 0xdc]
movss xmm6, dword [0x849eb4]
fmul qword [0x880120]
mulss xmm6, dword [0x880294]
addss xmm6, dword [0x880298]
fmul dword [esi + 0x114]
fld dword [esi + 0xf4]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fst dword [esi + 0x74]
fld qword [esp + 0x220]
fadd st(0)
fsubr qword [0x880148]
fstp dword [esi + 0x80]
fld qword [0x880180]
fld dword [esi + 0xdc]
fsubr st(1)
fld st(1)
fxch st(1)
fmul qword [0x880170]
fld st(2)
fxch st(1)
fadd qword [0x880178]
fdivr dword [esi + 0xb0]
fadd st(3)
fsub dword [esi + 0xb0]
fst dword [esi + 0x100]
fsubr st(2), st(0)
fld st(2)
fld dword [esi + 0xfc]
fsubr st(3), st(0)
faddp st(2)
fxch st(4)
fsubr dword [esi + 0x104]
fxch st(2)
fmul st(4), st(0)
fxch st(2)
fmul st(3), st(0)
fld dword [0x8802b8]
fxch st(3)
fmulp st(1)
fxch st(2)
fdiv dword [esi + 0x70]
fld st(0)
fmul st(6)
fxch st(2)
fadd dword [esi + 0x104]
fxch st(2)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(5)
fld dword [esi + 0x78]
fdivr st(6), st(0)
fmulp st(1)
fxch st(5)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(3)
fxch st(3)
faddp st(2)
fxch st(3)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(3)
faddp st(2)
faddp st(1)
fdivr qword [0x880168]
fstp dword [esi + 0xc4]
mov dword [esi + 0xe8], edx
movss dword [0x85fae8], xmm6
mov edx, dword [0x85fae8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [0x85faec], edx
xor edx, 0xffffffff
and edx, dword [0x85fae8]
mov dword [0x85fae8], edx
mov edi, dword [0x85faec]
and edi, 0x40000000
or edx, edi
mov dword [0x85fae8], edx
fld dword [0x880290]
fadd dword [0x85fae8]
fmul dword [0x88028c]
fst qword [esp + 0x220]
fst dword [esi + 0xe0]
fld qword [0x880150]
fcompi st(1)
fstp st(0)
jae 0x692398
fld qword [esp + 0x220]
fadd qword [0x880140]
fmul qword [0x880108]
fadd qword [0x880110]
fstp qword [esp + 0x220]
jmp 0x6923ac
fld qword [esp + 0x220]
fmul qword [0x880118]
fstp qword [esp + 0x220]
fld qword [0x8800f8]
lea ecx, [esp + 0x148]
fld qword [esp + 0x220]
fmul st(1), st(0)
fld qword [0x8800f0]
faddp st(1)
fmulp st(1)
fadd qword [0x880100]
fstp dword [esi + 0xf8]
fld dword [esi + 0xcc]
fadd dword [esi + 0xd0]
fadd dword [esi + 0xd4]
fstp qword [esp + 0x218]
call fcn.00435a30
fld qword [0x880148]
fstp qword [esp]
fld qword [esp + 0x218]
fadd qword [0x880130]
fmul qword [0x880128]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esi + 0xe0]
fmul qword [0x880120]
fmul dword [esi + 0x114]
fld dword [esi + 0xf8]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fst dword [esi + 0x78]
fld qword [esp + 0x220]
fadd st(0)
fsubr qword [0x880148]
fstp dword [esi + 0x84]
fld qword [0x880180]
fld st(0)
fld st(1)
fld dword [esi + 0xe0]
fsubr st(3)
fmul qword [0x880170]
fadd qword [0x880178]
fdivr dword [esi + 0xb4]
fadd st(3)
fsub dword [esi + 0xb4]
fsubr st(3), st(0)
fst dword [esi + 0x104]
fld dword [esi + 0x100]
fsubr st(3), st(0)
fld dword [esi + 0xfc]
fsubr st(3), st(0)
faddp st(1)
faddp st(1)
fld dword [0x8802b8]
fld st(3)
fmul st(3)
fxch st(1)
fdiv dword [esi + 0x70]
fld st(0)
fxch st(5)
fmul st(6)
fxch st(3)
fstp qword [esp + 0x220]
fxch st(3)
fmulp st(5)
fxch st(2)
fmul st(5)
fld dword [esi + 0x74]
fmul st(4), st(0)
fdivp st(6)
fxch st(3)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(2)
fxch st(4)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(4)
faddp st(3)
fmul qword [0x880158]
fadd qword [0x880160]
fdivp st(1)
faddp st(1)
fadd qword [esp + 0x220]
fdivr qword [0x880168]
fstp dword [esi + 0xc4]
mov dword [esi + 0xec], edx
jmp 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0e4]
test eax, eax
je 0x68d350
mov eax, edx
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x69254a
cmp al, 6
je 0x69254a
cmp al, 7
je 0x69254a
cmp al, 8
jne 0x68d350
lea esi, [edx + 0xa0c4]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov al, byte [eax + 8]
test al, al
jne 0x68d350
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dl, byte [esp + 0x1e4]
test dl, dl
jne 0x6925b8
mov edi, dword [esp + 0x1e0]
movss xmm0, dword [edi + 0x95f8]
mov esi, dword [edi + 0x95fc]
mov dword [esp + 0x1d8], esi
mov dl, 1
mov dword [0x849eb4], esi
mov byte [esp + 0x1e4], dl
jmp 0x6925cd
mov edx, dword [0x849eb4]
movss xmm0, dword [0x849eb0]
mov dword [esp + 0x1d8], edx
movss xmm2, dword [0x8802b8]
mov edx, dword [esp + 0x1e0]
movss xmm5, dword [ebp + edx + 0x9690]
movss xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, xmm5
movss xmm3, xmm0
mulss xmm3, xmm5
mov edx, dword [ebp + edx + 0x969c]
test edx, edx
jne 0x692638
movss xmm4, dword [0x8802b4]
comiss xmm5, xmm4
jb 0x692640
mov edx, dword [esp + 0x1e0]
movss xmm3, dword [ebp + edx + 0x9694]
mulss xmm3, xmm1
addss xmm0, xmm3
jmp 0x692748
movss xmm4, dword [0x8802b4]
test edx, edx
jne 0x692668
comiss xmm5, xmm4
jae 0x692668
mov edx, dword [esp + 0x1e0]
subss xmm2, dword [ebp + edx + 0x9694]
mulss xmm2, xmm3
addss xmm0, xmm2
jmp 0x692748
mov edx, dword [esp + 0x1e0]
movss xmm2, dword [ebp + edx + 0x9694]
mulss xmm5, xmm2
comiss xmm5, xmm4
jb 0x6926e8
mulss xmm2, xmm1
addss xmm0, xmm2
addss xmm0, xmm0
movss dword [esp + 0x16c], xmm0
mov esi, dword [esp + 0x16c]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x170], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x16c]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x16c], edx
movss xmm0, dword [esp + 0x16c]
mulss xmm0, dword [0x8802b0]
jmp 0x692748
mulss xmm2, xmm3
addss xmm0, xmm2
addss xmm0, xmm0
movss dword [esp + 0x16c], xmm0
mov esi, dword [esp + 0x16c]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x170], esi
mov edx, esi
xor edx, 0xffffffff
and edx, dword [esp + 0x16c]
and esi, 0x40000000
or edx, esi
mov dword [esp + 0x16c], edx
movss xmm0, dword [esp + 0x16c]
mulss xmm0, dword [0x8802b0]
movss dword [0x849eb0], xmm0
mov edx, dword [eax]
add esp, 0xfffffff8
movss dword [esp], xmm0
mov esi, dword [esp + 0x1e0]
mov ecx, eax
mov dword [esp + 4], esi
call dword [edx + 0x24]
jmp 0x68d350
mov ecx, dword [esp + 0x1e0]
movzx esi, byte [ebp + ecx + 0x968c]
mov edi, esi
mov dword [esp + 0x1d0], esi
shl edi, 5
lea esi, [edi + esi*4]
lea edx, [ecx + esi]
mov eax, dword [edx + 0x9a24]
test eax, eax
je 0x68d350
mov edx, ecx
lea ecx, [edx + esi + 0x9a04]
mov eax, dword [esi + edx + 0x9a04]
mov dword [esp + 0x1d8], ecx
call dword [eax + 0xc]
mov al, byte [eax + 6]
test al, al
je 0x68d350
mov eax, dword [esp + 0x1e0]
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x6927ee
cmp al, 6
je 0x6927ee
cmp al, 7
je 0x6927ee
cmp al, 8
jne 0x68d350
mov eax, dword [esp + 0x1e0]
mov esi, dword [esi + eax + 0x9a04]
mov ecx, dword [esp + 0x1d8]
call dword [esi + 0xc]
mov dword [esp + 0x1d8], eax
mov edx, dword [esp + 0x1d0]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x692858
imul edx, edx, 0x3bc
lea edi, [edx + 0x849fa0]
mov eax, dword [esp + 0x1e0]
lea esi, [eax + edx + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1d0]
mov byte [esp + eax + 0x10], 1
jmp 0x692860
mov eax, edx
imul edx, eax, 0x3bc
movss xmm0, dword [edx + 0x84a340]
movss xmm1, dword [0x8802b8]
mov eax, dword [esp + 0x1e0]
movss xmm5, dword [ebp + eax + 0x9690]
movss xmm2, xmm1
subss xmm2, xmm0
mulss xmm2, xmm5
movss xmm3, xmm0
mulss xmm3, xmm5
mov eax, dword [ebp + eax + 0x969c]
test eax, eax
jne 0x6928d8
movss xmm4, dword [0x8802b4]
comiss xmm5, xmm4
jb 0x6928e0
mov eax, dword [esp + 0x1e0]
movss xmm1, dword [ebp + eax + 0x9694]
mulss xmm1, xmm2
addss xmm0, xmm1
jmp 0x6929e8
movss xmm4, dword [0x8802b4]
test eax, eax
jne 0x692908
comiss xmm5, xmm4
jae 0x692908
mov eax, dword [esp + 0x1e0]
subss xmm1, dword [ebp + eax + 0x9694]
mulss xmm1, xmm3
addss xmm0, xmm1
jmp 0x6929e8
mov eax, dword [esp + 0x1e0]
movss xmm1, dword [ebp + eax + 0x9694]
mulss xmm5, xmm1
comiss xmm5, xmm4
jb 0x692988
mulss xmm1, xmm2
addss xmm0, xmm1
addss xmm0, xmm0
movss dword [esp + 0x174], xmm0
mov ecx, dword [esp + 0x174]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x178], ecx
mov eax, ecx
xor eax, 0xffffffff
and eax, dword [esp + 0x174]
and ecx, 0x40000000
or eax, ecx
mov dword [esp + 0x174], eax
movss xmm0, dword [esp + 0x174]
mulss xmm0, dword [0x8802b0]
jmp 0x6929e8
mulss xmm1, xmm3
addss xmm0, xmm1
addss xmm0, xmm0
movss dword [esp + 0x174], xmm0
mov ecx, dword [esp + 0x174]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x178], ecx
mov eax, ecx
xor eax, 0xffffffff
and eax, dword [esp + 0x174]
and ecx, 0x40000000
or eax, ecx
mov dword [esp + 0x174], eax
movss xmm0, dword [esp + 0x174]
mulss xmm0, dword [0x8802b0]
movss dword [edx + 0x84a340], xmm0
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push edi
movss dword [esp], xmm0
call dword [eax + 0x64]
jmp 0x68d350
mov ecx, dword [esp + 0x1e0]
movzx esi, byte [ebp + ecx + 0x968c]
mov edi, esi
mov dword [esp + 0x1d0], esi
shl edi, 5
lea esi, [edi + esi*4]
lea edx, [ecx + esi]
mov eax, dword [edx + 0x9a24]
test eax, eax
je 0x68d350
mov edx, ecx
lea ecx, [edx + esi + 0x9a04]
mov eax, dword [esi + edx + 0x9a04]
mov dword [esp + 0x1d8], ecx
call dword [eax + 0xc]
mov al, byte [eax + 5]
test al, al
je 0x68d350
mov eax, dword [esp + 0x1e0]
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x692a7e
cmp al, 6
je 0x692a7e
cmp al, 7
je 0x692a7e
cmp al, 8
jne 0x68d350
mov eax, dword [esp + 0x1e0]
mov esi, dword [esi + eax + 0x9a04]
mov ecx, dword [esp + 0x1d8]
call dword [esi + 0xc]
mov dword [esp + 0x1d8], eax
mov edx, dword [esp + 0x1d0]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x692ae8
imul edx, edx, 0x3bc
lea edi, [edx + 0x849fa0]
mov eax, dword [esp + 0x1e0]
lea esi, [eax + edx + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1d0]
mov byte [esp + eax + 0x10], 1
jmp 0x692af0
mov eax, edx
imul edx, eax, 0x3bc
movss xmm2, dword [edx + 0x84a348]
movss xmm0, dword [0x8802b8]
mov eax, dword [esp + 0x1e0]
movss xmm6, dword [ebp + eax + 0x9690]
movss xmm3, xmm0
subss xmm3, xmm2
mulss xmm3, xmm6
movss xmm4, xmm2
mulss xmm4, xmm6
mov eax, dword [ebp + eax + 0x969c]
test eax, eax
jne 0x692b68
movss xmm5, dword [0x8802b4]
comiss xmm6, xmm5
jb 0x692b70
mov eax, dword [esp + 0x1e0]
movss xmm1, dword [ebp + eax + 0x9694]
mulss xmm1, xmm3
addss xmm2, xmm1
jmp 0x692c88
movss xmm5, dword [0x8802b4]
test eax, eax
jne 0x692ba8
comiss xmm6, xmm5
jae 0x692ba8
mov eax, dword [esp + 0x1e0]
movss xmm1, xmm0
subss xmm1, dword [ebp + eax + 0x9694]
mulss xmm1, xmm4
addss xmm2, xmm1
jmp 0x692c88
mov eax, dword [esp + 0x1e0]
movss xmm1, dword [ebp + eax + 0x9694]
mulss xmm6, xmm1
comiss xmm6, xmm5
jb 0x692c28
mulss xmm1, xmm3
addss xmm2, xmm1
addss xmm2, xmm2
movss dword [esp + 0x17c], xmm2
mov ecx, dword [esp + 0x17c]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x180], ecx
mov eax, ecx
xor eax, 0xffffffff
and eax, dword [esp + 0x17c]
and ecx, 0x40000000
or eax, ecx
mov dword [esp + 0x17c], eax
movss xmm2, dword [esp + 0x17c]
mulss xmm2, dword [0x8802b0]
jmp 0x692c88
mulss xmm1, xmm4
addss xmm2, xmm1
addss xmm2, xmm2
movss dword [esp + 0x17c], xmm2
mov ecx, dword [esp + 0x17c]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x180], ecx
mov eax, ecx
xor eax, 0xffffffff
and eax, dword [esp + 0x17c]
and ecx, 0x40000000
or eax, ecx
mov dword [esp + 0x17c], eax
movss xmm2, dword [esp + 0x17c]
mulss xmm2, dword [0x8802b0]
movss dword [edx + 0x84a348], xmm2
mov eax, dword [esp + 0x1d8]
movss dword [eax + 0xa4], xmm2
mulss xmm2, dword [0x84dbe8]
addss xmm2, dword [0x880250]
comiss xmm2, dword [0x880288]
jae 0x692cc5
comiss xmm2, dword [0x880284]
ja 0x692d55
movss xmm3, xmm2
mulss xmm3, xmm3
movss xmm7, xmm3
mulss xmm7, xmm2
movss xmm6, xmm7
mulss xmm6, xmm2
movss xmm5, xmm6
mulss xmm5, xmm2
movss xmm4, xmm5
mulss xmm4, xmm2
movss xmm1, xmm4
mulss xmm1, xmm2
addss xmm0, xmm2
mulss xmm3, dword [0x8802b0]
addss xmm0, xmm3
mulss xmm7, dword [0x880280]
addss xmm0, xmm7
mulss xmm6, dword [0x88027c]
addss xmm0, xmm6
mulss xmm5, dword [0x880278]
addss xmm0, xmm5
mulss xmm4, dword [0x880274]
addss xmm0, xmm4
movss xmm3, dword [0x880270]
mulss xmm3, xmm1
mulss xmm1, xmm2
mulss xmm1, dword [0x88026c]
addss xmm3, xmm1
addss xmm0, xmm3
mov ecx, eax
mov eax, dword [ecx]
push edi
mulss xmm0, dword [0x880268]
movss dword [esp], xmm0
call dword [eax + 0x5c]
jmp 0x68d350
mov edi, dword [esp + 0x1e0]
movzx edx, byte [ebp + edi + 0x968c]
mov ecx, edx
mov dword [esp + 0x1d0], edx
shl ecx, 5
lea edx, [ecx + edx*4]
lea esi, [edi + edx]
mov ecx, dword [esi + 0x9a24]
test ecx, ecx
je 0x68d350
cmp eax, 0x29
je 0x692dc9
mov eax, edi
mov al, byte [ebp + eax + 0x9684]
cmp al, 5
je 0x692dc9
cmp al, 6
je 0x692dc9
cmp al, 7
je 0x692dc9
cmp al, 8
jne 0x68d350
mov eax, edi
lea ecx, [eax + edx + 0x9a04]
mov edx, dword [edx + eax + 0x9a04]
call dword [edx + 0xc]
mov dword [esp + 0x1d8], eax
mov edx, dword [esp + 0x1d0]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x692e38
mov eax, edx
imul eax, eax, 0x3bc
lea edi, [eax + 0x849fa0]
mov dword [esp + 0x204], eax
mov edx, dword [esp + 0x1e0]
lea esi, [edx + eax + 0x528]
mov dword [esp + 0x1d4], edi
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1d0]
mov byte [esp + eax + 0x10], 1
jmp 0x692e54
mov ecx, edx
imul edx, ecx, 0x3bc
lea eax, [edx + 0x849fa0]
mov dword [esp + 0x204], edx
mov dword [esp + 0x1d4], eax
xor esi, esi
mov eax, dword [esp + 0x204]
mov ecx, dword [eax + 0x84a020]
test ecx, ecx
jle 0x692fab
mov eax, dword [esp + 0x1d4]
lea eax, [eax + esi*8]
mov edx, dword [esp + 0x1e0]
lea esi, [esi]
lea edi, [edi]
mov ecx, dword [esp + 0x1d4]
movss xmm4, dword [ecx + esi*8 + 4]
mov ecx, dword [ebp + edx + 0x969c]
test ecx, ecx
jne 0x692ee8
movss xmm3, dword [ebp + edx + 0x9690]
comiss xmm3, dword [0x8802b4]
jb 0x692ef1
movss xmm2, dword [0x8802b8]
movss xmm0, dword [ebp + edx + 0x9694]
movss xmm1, xmm2
subss xmm1, xmm0
mulss xmm1, xmm3
subss xmm2, xmm1
mulss xmm4, xmm2
jmp 0x692f8d
movss xmm3, dword [ebp + edx + 0x9690]
test ecx, ecx
jne 0x692f28
comiss xmm3, dword [0x8802b4]
jae 0x692f28
xorps xmm0, xmm0
subss xmm0, xmm3
mulss xmm0, dword [ebp + edx + 0x9694]
movss xmm1, dword [0x8802b8]
subss xmm1, xmm0
mulss xmm4, xmm1
jmp 0x692f8d
mulss xmm3, dword [ebp + edx + 0x9694]
mulss xmm3, xmm4
addss xmm3, xmm3
movss dword [esp + 0x184], xmm3
mov ecx, dword [esp + 0x184]
and ecx, 0x40000000
add ecx, ecx
sar ecx, 0x1f
and ecx, 0x7fffffff
mov dword [esp + 0x188], ecx
mov edi, ecx
xor edi, 0xffffffff
and edi, dword [esp + 0x184]
and ecx, 0x40000000
or edi, ecx
mov dword [esp + 0x184], edi
movss xmm4, dword [esp + 0x184]
mulss xmm4, dword [0x8802b0]
movss dword [eax + 4], xmm4
add eax, 8
inc esi
mov ecx, dword [esp + 0x204]
mov ecx, dword [ecx + 0x84a020]
cmp esi, ecx
jl 0x692e88
cmp ecx, 1
jne 0x68d350
mov edx, dword [esp + 0x204]
mov eax, dword [edx + 0x84a334]
cmp eax, 2
je 0x692fe8
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
push 1
mov edx, dword [esp + 0x1d8]
push dword [edx + esi*8 + 4]
call dword [eax + 0x10]
jmp 0x68d350
mov eax, dword [edx + 0x84a054]
cmp eax, 2
jne 0x692fc6
mov ecx, dword [esp + 0x1d8]
mov eax, dword [ecx]
add esp, 0xfffffff8
mov edx, dword [esp + 0x1dc]
movss xmm0, dword [edx + esi*8 + 4]
mulss xmm0, dword [0x880264]
movss dword [esp], xmm0
mov byte [esp + 4], 1
call dword [eax + 0x10]
jmp 0x68d350
push edi
push esi
push ebp
push ebx
sub esp, 0x228
mov ebp, ecx
xor cl, cl
mov byte [esp + 0x224], cl
xor dl, dl
xor al, al
mov byte [esp + 0x220], dl
xor cl, cl
xor dl, dl
mov byte [esp + 0x208], al
xor al, al
xor bl, bl
mov byte [esp + 0x210], bl
xor bl, bl
xor esi, esi
mov dword [esp + 0x204], ebp
mov byte [esp + esi + 0x10], 0
inc esi
cmp esi, 0x10
jl 0x693069
mov ebp, dword [esp + 0x204]
xor esi, esi
mov byte [esp + 0x21c], al
mov byte [esp + 0x218], dl
mov byte [esp + 0x214], bl
mov ebx, esi
mov byte [esp + 0x20c], cl
mov al, byte [ebx + ebp + 0x9684]
test al, al
je 0x693c40
cmp al, 7
mov al, byte [esp + 0x23c]
sete dl
cmp al, dl
jne 0x693c40
mov edx, dword [ebx + ebp + 0x9688]
cmp edx, 0x2a
jl 0x6930f8
cmp edx, 0x2e
jg 0x6930f8
movzx edx, byte [ebx + ebp + 0x968c]
mov eax, edx
shl eax, 5
lea eax, [eax + edx*4]
lea esi, [ebp + eax]
mov edi, dword [esi + 0x9a24]
cmp edi, 7
je 0x693c5c
jmp 0x693c40
cmp edx, 0x2f
jl 0x693138
cmp edx, 0x31
jg 0x693138
movzx edx, byte [ebx + ebp + 0x968c]
mov eax, edx
shl eax, 5
lea eax, [eax + edx*4]
lea esi, [ebp + eax]
mov edi, dword [esi + 0x9a24]
cmp edi, 8
je 0x694b88
jmp 0x693c40
cmp edx, 0x32
jl 0x693178
cmp edx, 0x41
jg 0x693178
movzx edx, byte [ebx + ebp + 0x968c]
mov eax, edx
shl eax, 5
lea eax, [eax + edx*4]
lea esi, [ebp + eax]
mov edi, dword [esi + 0x9a24]
cmp edi, 9
je 0x695278
jmp 0x693c40
cmp edx, 0x42
jl 0x6931b8
cmp edx, 0x61
jg 0x6931b8
movzx edx, byte [ebx + ebp + 0x968c]
mov eax, edx
shl eax, 5
mov dword [esp + 0x200], edx
lea eax, [eax + edx*4]
lea esi, [ebp + eax]
mov edi, dword [esi + 0x9a24]
cmp edi, 0xa
je 0x695648
jmp 0x693c40
cmp edx, 0xb
je 0x6989f8
cmp edx, 0x29
je 0x6989f8
cmp edx, 0xc
je 0x698708
cmp edx, 0xd
je 0x6984d8
cmp edx, 4
je 0x6982e8
cmp edx, 5
je 0x697c38
cmp edx, 0x17
je 0x697538
cmp edx, 0x18
je 0x696db8
cmp edx, 0x19
je 0x696798
cmp edx, 0xe
jl 0x693bf8
cmp edx, 0x16
jg 0x693bf8
mov eax, dword [ebp + 0xa0e4]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x693244
cmp al, 6
je 0x693244
cmp al, 7
je 0x693244
cmp al, 8
jne 0x693c40
lea esi, [ebp + 0xa0c4]
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov al, byte [eax + 8]
test al, al
je 0x693c40
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dword [esp + 0x1d0], eax
mov al, byte [esp + 0x208]
test al, al
jne 0x693298
mov edi, 0x849f20
lea esi, [ebp + 0x95e8]
mov ecx, 0x1b
rep movsd dword es:[edi], dword [esi]
mov al, 1
mov byte [esp + 0x208], al
mov edx, dword [ebx + ebp + 0x9688]
lea eax, [edx - 0xe]
cmp eax, 8
ja 0x693af2
mov eax, dword [edx*4 + 0x88045c]
jmp eax
mov eax, dword [esp + 0x1d0]
mov eax, dword [eax + 4]
cmp eax, 0x1d
je 0x693bc8
cmp eax, 0x1e
jne 0x693b58
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
push dword [0x849f70]
push dword [0x849f6c]
push dword [0x849f68]
push 0
call dword [eax + 0x24]
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
push dword [0x849f7c]
push dword [0x849f78]
push dword [0x849f74]
push 1
call dword [eax + 0x24]
jmp 0x693c40
cmp eax, 0x1f
jne 0x693c40
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
push dword [0x849f70]
push dword [0x849f6c]
push dword [0x849f68]
push 0
call dword [eax + 0x24]
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
push dword [0x849f7c]
push dword [0x849f78]
push dword [0x849f74]
push 1
call dword [eax + 0x24]
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
push dword [0x849f88]
push dword [0x849f84]
push dword [0x849f80]
push 2
call dword [eax + 0x24]
jmp 0x693c40
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
push dword [0x849f70]
push dword [0x849f6c]
push dword [0x849f68]
push 0
call dword [eax + 0x24]
jmp 0x693c40
cmp edx, 8
je 0x6965b8
cmp edx, 7
je 0x696348
cmp edx, 0x1f
je 0x696148
cmp edx, 0x21
je 0x695f88
cmp edx, 0x20
je 0x695da8
cmp edx, 0x22
je 0x695898
cmp edx, 0x23
je 0x695898
cmp edx, 0x24
je 0x695898
add ebx, 0x1c
cmp ebx, 0x380
jl 0x69309b
add esp, 0x228
pop ebx
pop ebp
pop esi
pop edi
ret 4
lea ecx, [ebp + eax + 0x9a04]
mov eax, dword [eax + ebp + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x200], eax
movzx edx, byte [ebx + ebp + 0x968c]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x693cab
imul eax, edx, 0x3bc
lea edi, [eax + 0x849fa0]
lea esi, [ebp + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
movzx edx, byte [ebx + ebp + 0x968c]
mov byte [esp + edx + 0x10], 1
imul edx, edx, 0x3bc
mov eax, dword [ebx + ebp + 0x9688]
cmp eax, 0x2a
je 0x6947e8
cmp eax, 0x2b
je 0x694508
cmp eax, 0x2c
je 0x694158
cmp eax, 0x2e
jne 0x694028
fld dword [edx + 0x84a068]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x693d38
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fst qword [esp + 0x1f0]
fcomp st(1)
fnstsw ax
sahf
ja 0x693d4c
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fstp qword [esp + 0x1f0]
jmp 0x693dcf
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fstp qword [esp + 0x1f0]
test esi, esi
jne 0x693d88
fcom qword [esp + 0x1f0]
fnstsw ax
sahf
jae 0x693d88
fchs
fmul dword [ebx + ebp + 0x9694]
fsubr dword [0x880484]
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fstp qword [esp + 0x1f0]
jmp 0x693dcf
cmp esi, 1
je 0x6944a8
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom qword [esp + 0x1f0]
fnstsw ax
sahf
jae 0x693db8
fstp st(2)
fstp st(0)
fstp st(0)
jmp 0x693dcf
fld st(0)
fmul st(0)
fmulp st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fstp qword [esp + 0x1f0]
fld qword [esp + 0x1f0]
mov eax, dword [esp + 0x200]
fst dword [edx + 0x84a068]
mov esi, dword [eax + 0x9c]
cmp esi, 1
fstp dword [eax + 0x1f8]
jle 0x693f08
mov edx, eax
fld dword [edx + 0x14]
fst qword [esp + 0x1f8]
fld qword [esp + 0x1f0]
fmul dword [0x880424]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x693e78
mov eax, edx
mov edx, 1
mov dword [eax + 0x1c0], DirectSoundEnumerateA
mov dword [esp + 0x1c8], edx
fild dword [esp + 0x1c8]
fadd dword [0x880500]
jmp 0x693ed5
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fld qword [0x880358]
fdiv st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x1c0], eax
fld qword [0x84db60]
fstp qword [esp]
fld qword [0x8803e8]
fdivrp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0x138]
jmp 0x693f12
fld dword [eax + 0x14]
fstp qword [esp + 0x1f8]
fld qword [esp + 0x1f0]
xor edx, edx
fmul dword [0x880424]
fld qword [esp + 0x1f8]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div esi
test eax, eax
jne 0x693f98
mov eax, dword [esp + 0x200]
mov edx, 1
mov dword [eax + 0x1a8], DirectSoundEnumerateA
mov dword [esp + 0x1c8], edx
fild dword [esp + 0x1c8]
fadd dword [0x880500]
jmp 0x693ffc
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x200]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fld qword [0x880358]
fdiv st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x1a8], eax
fld qword [0x84db60]
fstp qword [esp]
fld qword [0x8803e8]
fdivrp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0x108]
jmp 0x693c40
cmp eax, 0x2d
jne 0x693c40
fld dword [edx + 0x84a058]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x694078
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x694085
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
jmp 0x6940ca
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test esi, esi
jne 0x6940a8
fcom st(1)
fnstsw ax
sahf
jbe 0x6940a8
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
jmp 0x6940ca
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fadd dword [0x880484]
fcom st(1)
fnstsw ax
sahf
ja 0x6940c8
fstp st(0)
jmp 0x6940ca
fstp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fst dword [edx + 0x84a058]
mov esi, dword [esp + 0x200]
fld dword [0x880460]
fmulp st(1)
fadd dword [0x880464]
fstp dword [esp + 0x194]
mov eax, dword [esp + 0x194]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov edx, eax
mov dword [esp + 0x198], eax
xor edx, 0xffffffff
and eax, 0x40000000
and edx, dword [esp + 0x194]
or edx, eax
mov dword [esp + 0x194], edx
fld dword [0x88045c]
fadd dword [esp + 0x194]
fmul dword [0x880458]
fst dword [esi + 0x1f4]
fstp dword [esi + 0x1c8]
jmp 0x693c40
fld dword [edx + 0x84a064]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x6941b8
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fst qword [esp + 0x1f0]
fcomp st(1)
fnstsw ax
sahf
ja 0x6941cc
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fstp qword [esp + 0x1f0]
jmp 0x69424f
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fstp qword [esp + 0x1f0]
test esi, esi
jne 0x694208
fcom qword [esp + 0x1f0]
fnstsw ax
sahf
jae 0x694208
fchs
fmul dword [ebx + ebp + 0x9694]
fsubr dword [0x880484]
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fstp qword [esp + 0x1f0]
jmp 0x69424f
cmp esi, 1
je 0x6944d8
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom qword [esp + 0x1f0]
fnstsw ax
sahf
jae 0x694238
fstp st(2)
fstp st(0)
fstp st(0)
jmp 0x69424f
fld st(0)
fmul st(0)
fmulp st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fstp qword [esp + 0x1f0]
fld qword [esp + 0x1f0]
mov eax, dword [esp + 0x200]
fst dword [edx + 0x84a064]
mov esi, dword [eax + 0x9c]
cmp esi, 1
fstp dword [eax + 0x1f0]
jle 0x694388
mov edx, eax
fld dword [edx + 0x14]
fst qword [esp + 0x1f8]
fld qword [esp + 0x1f0]
fmul dword [0x880424]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x6942f8
mov eax, edx
mov edx, 1
mov dword [eax + 0x1b8], DirectSoundEnumerateA
mov dword [esp + 0x1c8], edx
fild dword [esp + 0x1c8]
fadd dword [0x880500]
jmp 0x694355
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fld qword [0x880358]
fdiv st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x1b8], eax
fld qword [0x84db60]
fstp qword [esp]
fld qword [0x8803e8]
fdivrp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0x128]
jmp 0x694392
fld dword [eax + 0x14]
fstp qword [esp + 0x1f8]
fld qword [esp + 0x1f0]
xor edx, edx
fmul dword [0x880424]
fld qword [esp + 0x1f8]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div esi
test eax, eax
jne 0x694418
mov eax, dword [esp + 0x200]
mov edx, 1
mov dword [eax + 0x1a0], DirectSoundEnumerateA
mov dword [esp + 0x1c8], edx
fild dword [esp + 0x1c8]
fadd dword [0x880500]
jmp 0x69447c
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x200]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fld qword [0x880358]
fdiv st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x1a0], eax
fld qword [0x84db60]
fstp qword [esp]
fld qword [0x8803e8]
fdivrp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0xf8]
jmp 0x693c40
fmul dword [ebx + ebp + 0x9694]
fcom qword [esp + 0x1f0]
fnstsw ax
sahf
jb 0x693d98
fadd dword [0x880484]
fmulp st(1)
fstp qword [esp + 0x1f0]
jmp 0x693dcf
fmul dword [ebx + ebp + 0x9694]
fcom qword [esp + 0x1f0]
fnstsw ax
sahf
jb 0x694218
fadd dword [0x880484]
fmulp st(1)
fstp qword [esp + 0x1f0]
jmp 0x69424f
fld dword [edx + 0x84a060]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x694558
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x694565
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x6945dc
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test esi, esi
jne 0x694598
fcom st(1)
fnstsw ax
sahf
jbe 0x694598
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x6945dc
cmp esi, 1
je 0x6947b8
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom st(2)
fnstsw ax
sahf
jae 0x6945c8
fstp st(1)
fstp st(0)
fstp st(1)
jmp 0x6945dc
fstp st(2)
fld st(1)
fmul st(0)
fmulp st(2)
fxch st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fst dword [edx + 0x84a060]
mov eax, dword [esp + 0x200]
mov ecx, dword [eax + 0x9c]
fst dword [eax + 0x1ec]
cmp ecx, 1
jle 0x6946d8
fld st(0)
fld dword [eax + 0x14]
fxch st(1)
fmul dword [0x880424]
fmul st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x694668
mov eax, dword [esp + 0x200]
mov dword [eax + 0x1b4], DirectSoundEnumerateA
jmp 0x6946db
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x200]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fdivr qword [0x880358]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x1b4], eax
jmp 0x6946db
fld dword [eax + 0x14]
fxch st(1)
fmul dword [0x880424]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
xor edx, edx
div ecx
test eax, eax
jne 0x694748
mov eax, dword [esp + 0x200]
mov dword [eax + 0x19c], DirectSoundEnumerateA
jmp 0x693c40
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x200]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fdivr qword [0x880358]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x19c], eax
jmp 0x693c40
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fcom st(1)
fnstsw ax
sahf
jb 0x6945aa
fstp st(1)
fld dword [0x880484]
faddp st(1)
fmulp st(1)
jmp 0x6945dc
fld dword [edx + 0x84a05c]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x694848
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fst qword [esp + 0x1e0]
fcomp st(1)
fnstsw ax
sahf
ja 0x69485c
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fstp qword [esp + 0x1e0]
jmp 0x6948df
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fstp qword [esp + 0x1e0]
test esi, esi
jne 0x694898
fcom qword [esp + 0x1e0]
fnstsw ax
sahf
jae 0x694898
fchs
fmul dword [ebx + ebp + 0x9694]
fsubr dword [0x880484]
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fstp qword [esp + 0x1e0]
jmp 0x6948df
cmp esi, 1
je 0x694b58
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom qword [esp + 0x1e0]
fnstsw ax
sahf
jae 0x6948c8
fstp st(2)
fstp st(0)
fstp st(0)
jmp 0x6948df
fld st(0)
fmul st(0)
fmulp st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fstp qword [esp + 0x1e0]
fld qword [esp + 0x1e0]
mov eax, dword [esp + 0x200]
fst dword [edx + 0x84a05c]
mov esi, dword [eax + 0x9c]
cmp esi, 1
fstp dword [eax + 0x1e8]
jle 0x694a28
mov edx, eax
fld dword [edx + 0x14]
fst qword [esp + 0x1f0]
fld qword [esp + 0x1e0]
fmul dword [0x880424]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
test eax, eax
jne 0x694988
mov eax, edx
mov edx, 1
mov dword [eax + 0x1b0], DirectSoundEnumerateA
mov dword [esp + 0x1c8], edx
fild dword [esp + 0x1c8]
fadd dword [0x880500]
jmp 0x6949e5
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fld qword [0x880358]
fdiv st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x1b0], eax
mov eax, dword [esp + 0x200]
fld qword [eax + 0xb0]
fst qword [esp + 0x1f8]
fstp qword [esp]
fdivr qword [0x880400]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0x118]
jmp 0x694a3f
fld dword [eax + 0x14]
fstp qword [esp + 0x1f0]
fld qword [eax + 0xb0]
fstp qword [esp + 0x1f8]
fld qword [esp + 0x1e0]
xor edx, edx
fmul dword [0x880424]
fld qword [esp + 0x1f0]
fmulp st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
div esi
test eax, eax
jne 0x694ac8
mov eax, dword [esp + 0x200]
mov edx, 1
mov dword [eax + 0x198], DirectSoundEnumerateA
mov dword [esp + 0x1c8], edx
fild dword [esp + 0x1c8]
fadd dword [0x880500]
jmp 0x694b2c
mov dword [esp + 0x1c8], eax
shr eax, 0x1f
mov edx, dword [esp + 0x200]
fild dword [esp + 0x1c8]
fadd dword [eax*4 + 0x880500]
fld qword [0x880358]
fdiv st(1)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0x198], eax
fld qword [esp + 0x1f8]
fstp qword [esp]
fdivr qword [0x880400]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0xe8]
jmp 0x693c40
fmul dword [ebx + ebp + 0x9694]
fcom qword [esp + 0x1e0]
fnstsw ax
sahf
jb 0x6948a8
fadd dword [0x880484]
fmulp st(1)
fstp qword [esp + 0x1e0]
jmp 0x6948df
lea ecx, [ebp + eax + 0x9a04]
mov eax, dword [eax + ebp + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x200], eax
movzx edx, byte [ebx + ebp + 0x968c]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x694bd7
imul eax, edx, 0x3bc
lea edi, [eax + 0x849fa0]
lea esi, [ebp + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
movzx edx, byte [ebx + ebp + 0x968c]
mov byte [esp + edx + 0x10], 1
imul edx, edx, 0x3bc
mov eax, dword [ebx + ebp + 0x9688]
cmp eax, 0x2f
je 0x694fe8
cmp eax, 0x31
jne 0x694df8
fld dword [edx + 0x84a254]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x694c48
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x694c55
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x694ccc
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test esi, esi
jne 0x694c88
fcom st(1)
fnstsw ax
sahf
jbe 0x694c88
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x694ccc
cmp esi, 1
je 0x695218
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom st(2)
fnstsw ax
sahf
jae 0x694cb8
fstp st(1)
fstp st(0)
fstp st(1)
jmp 0x694ccc
fstp st(2)
fld st(1)
fmul st(0)
fmulp st(2)
fxch st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fst dword [edx + 0x84a254]
mov edx, dword [esp + 0x200]
fst dword [edx + 0x104]
fld dword [0x880424]
fmulp st(1)
fmul dword [edx + 0x14]
fld st(0)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov esi, dword [esp + 0x1a8]
test esi, esi
jne 0x694d48
fstp st(0)
mov esi, 1
mov eax, edx
mov dword [eax + 0xf8], 1
mov dword [eax + 0xdc], DirectSoundEnumerateA
jmp 0x694d91
mov dword [edx + 0xf8], esi
fdivr qword [0x880358]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0xdc], eax
fld qword [0x8803c0]
mov eax, edx
fstp qword [esp]
fld dword [eax + 0x18]
fmul dword [eax + 0xe4]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fld qword [0x880400]
fdivr st(1), st(0)
fxch st(1)
fstp qword [esp]
mov dword [esp + 0x1c8], esi
shr esi, 0x1f
fild dword [esp + 0x1c8]
fadd dword [esi*4 + 0x880500]
fdivp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0xc0]
jmp 0x693c40
cmp eax, 0x30
jne 0x693c40
fld dword [edx + 0x84a24c]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x694e48
fld dword [ebx + ebp + 0x9690]
fcom dword [0x880480]
fnstsw ax
sahf
jb 0x694e4f
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmulp st(1)
jmp 0x694ece
fld dword [ebx + ebp + 0x9690]
test esi, esi
jne 0x694e78
fcom dword [0x880480]
fnstsw ax
sahf
jae 0x694e78
fchs
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fsubrp st(1)
fmulp st(1)
jmp 0x694ece
fmul dword [ebx + ebp + 0x9694]
fmulp st(1)
fadd st(0)
fstp dword [esp + 0x19c]
mov eax, dword [esp + 0x19c]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x1a0], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x19c]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x19c], esi
fld dword [esp + 0x19c]
fmul dword [0x88047c]
fst dword [edx + 0x84a24c]
mov eax, dword [esp + 0x200]
fld dword [0x880430]
fmulp st(1)
fst dword [eax + 0x100]
fst dword [eax + 0xe4]
fld qword [0x8803c0]
fst qword [esp + 0x1f8]
fld dword [eax + 0x18]
fmul st(2), st(0)
fstp qword [esp + 0x1f0]
fxch st(1)
fst qword [esp + 0x1d8]
fxch st(1)
fstp qword [esp]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fstp qword [esp + 0x1e0]
fld qword [esp + 0x1f8]
fstp qword [esp]
fld qword [esp + 0x1f0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
mov edx, dword [eax + 0xf4]
fdivr qword [esp + 0x1e0]
shr edx, 0x1f
fstp qword [esp]
fild dword [eax + 0xf4]
fadd dword [edx*4 + 0x880500]
fdivr qword [0x880400]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0xb8]
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1d8]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
mov edx, dword [eax + 0xf8]
fld qword [0x880400]
fdivr st(1), st(0)
shr edx, 0x1f
fxch st(1)
fstp qword [esp]
fild dword [eax + 0xf8]
fadd dword [edx*4 + 0x880500]
fdivp st(1)
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0xc0]
jmp 0x693c40
fld dword [edx + 0x84a250]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x695038
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x695045
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x6950bc
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test esi, esi
jne 0x695078
fcom st(1)
fnstsw ax
sahf
jbe 0x695078
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x6950bc
cmp esi, 1
je 0x695248
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom st(2)
fnstsw ax
sahf
jae 0x6950a8
fstp st(1)
fstp st(0)
fstp st(1)
jmp 0x6950bc
fstp st(2)
fld st(1)
fmul st(0)
fmulp st(2)
fxch st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fst dword [edx + 0x84a250]
mov edx, dword [esp + 0x200]
fst dword [edx + 0xfc]
fld dword [0x880424]
fmulp st(1)
fmul dword [edx + 0x14]
fld st(0)
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov esi, dword [esp + 0x1a8]
test esi, esi
jne 0x695138
fstp st(0)
mov esi, 1
mov eax, edx
mov dword [eax + 0xf4], 1
mov dword [eax + 0xd8], DirectSoundEnumerateA
jmp 0x695181
mov dword [edx + 0xf4], esi
fdivr qword [0x880358]
fnstcw word [esp + 0x1b0]
movzx eax, word [esp + 0x1b0]
or eax, 0xc00
mov dword [esp + 0x1b8], eax
fldcw word [esp + 0x1b8]
fistp qword [esp + 0x1a8]
fldcw word [esp + 0x1b0]
mov eax, dword [esp + 0x1a8]
mov dword [edx + 0xd8], eax
fld qword [0x8803c0]
mov eax, edx
fld dword [eax + 0x18]
fst qword [esp + 0x1f0]
fxch st(1)
fstp qword [esp]
fmul dword [eax + 0xe4]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fstp qword [esp + 0x1f8]
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1f0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
fdivr qword [esp + 0x1f8]
fstp qword [esp]
mov dword [esp + 0x1c8], esi
fild dword [esp + 0x1c8]
shr esi, 0x1f
fadd dword [esi*4 + 0x880500]
fdivr qword [0x880400]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov eax, dword [esp + 0x200]
fstp qword [eax + 0xb8]
jmp 0x693c40
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fcom st(1)
fnstsw ax
sahf
jb 0x694c9a
fstp st(1)
fld dword [0x880484]
faddp st(1)
fmulp st(1)
jmp 0x694ccc
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fcom st(1)
fnstsw ax
sahf
jb 0x69508a
fstp st(1)
fld dword [0x880484]
faddp st(1)
fmulp st(1)
jmp 0x6950bc
lea ecx, [ebp + eax + 0x9a04]
mov eax, dword [eax + ebp + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1d0], eax
movzx edx, byte [ebx + ebp + 0x968c]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x6952c7
imul eax, edx, 0x3bc
lea edi, [eax + 0x849fa0]
lea esi, [ebp + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
movzx edx, byte [ebx + ebp + 0x968c]
mov byte [esp + edx + 0x10], 1
imul eax, edx, 0x3bc
lea edx, [eax + 0x84a0b0]
mov ecx, dword [ebx + ebp + 0x9688]
mov dword [esp + 0x200], eax
cmp ecx, 0x32
jl 0x695428
cmp ecx, 0x39
jg 0x695428
lea eax, [ecx - 0x32]
lea esi, [ecx*4 - 0xc8]
add edx, esi
mov dword [esp + 0x1e8], eax
mov edi, dword [esp + 0x200]
mov esi, dword [ebx + ebp + 0x969c]
fld dword [edi + ecx*4 + 0x849fe8]
test esi, esi
jne 0x695358
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x695365
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
jmp 0x6953aa
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test esi, esi
jne 0x695388
fcom st(1)
fnstsw ax
sahf
jbe 0x695388
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
jmp 0x6953aa
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fadd dword [0x880484]
fcom st(1)
fnstsw ax
sahf
ja 0x6953a8
fstp st(0)
jmp 0x6953aa
fstp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
fmul dword [0x880460]
fadd dword [0x880464]
fstp dword [esp + 0x194]
mov eax, dword [esp + 0x194]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov esi, eax
mov dword [esp + 0x198], eax
xor esi, 0xffffffff
and eax, 0x40000000
and esi, dword [esp + 0x194]
or esi, eax
mov dword [esp + 0x194], esi
fld dword [0x88045c]
fadd dword [esp + 0x194]
fmul dword [0x880458]
fst dword [edi + ecx*4 + 0x849fe8]
fld dword [edi + ecx*4 + 0x84a068]
fxch st(1)
jmp 0x69551c
lea eax, [ecx - 0x3a]
lea esi, [ecx*4 - 0xe8]
add edx, esi
mov dword [esp + 0x1e8], eax
mov edi, dword [esp + 0x200]
mov esi, dword [ebx + ebp + 0x969c]
fld dword [edi + ecx*4 + 0x84a048]
test esi, esi
jne 0x695488
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x695495
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x69550c
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test esi, esi
jne 0x6954c8
fcom st(1)
fnstsw ax
sahf
jbe 0x6954c8
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x69550c
cmp esi, 1
je 0x695618
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom st(2)
fnstsw ax
sahf
jae 0x6954f8
fstp st(1)
fstp st(0)
fstp st(1)
jmp 0x69550c
fstp st(2)
fld st(1)
fmul st(0)
fmulp st(2)
fxch st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
mov eax, edi
fst dword [eax + ecx*4 + 0x84a048]
fld dword [eax + ecx*4 + 0x849fc8]
fld dword [edx + 0x100]
fxch st(1)
fcom dword [0x88042c]
fnstsw ax
sahf
jbe 0x695542
fcom dword [0x880428]
fnstsw ax
sahf
jae 0x695542
fstp st(0)
fld dword [0x880428]
mov esi, dword [esp + 0x1e8]
lea edx, [esi*8]
lea esi, [edx + esi*4]
mov edi, dword [esp + 0x1d0]
fstp dword [esi + edi + 0xa4]
fcom dword [0x880480]
fnstsw ax
sahf
jne 0x695574
fstp st(0)
fld dword [0x88047c]
fld st(0)
fcom qword [0x880410]
fnstsw ax
sahf
jae 0x695591
fstp st(0)
fstp st(0)
fld dword [0x880424]
fld qword [0x8804f8]
fcom qword [0x880360]
fnstsw ax
sahf
jbe 0x6955ac
fstp st(0)
fstp st(0)
fld dword [0x880420]
fld qword [0x8804f0]
fld dword [0x88048c]
fld st(2)
fadd st(0)
fxch st(2)
fcomp qword [0x8803c8]
fnstsw ax
sahf
jbe 0x6955d8
fld dword [0x880460]
fsubrp st(2)
fxch st(2)
fmulp st(1)
fadd st(1)
jmp 0x6955dc
fxch st(2)
fmulp st(1)
fdivr dword [0x880484]
faddp st(1)
fmul st(0)
mov edx, edi
fstp dword [esi + edx + 0xa8]
fcom dword [0x880484]
fnstsw ax
sahf
jae 0x695602
fstp st(0)
fld dword [0x880484]
fmul qword [0x880410]
mov eax, edx
fstp dword [esi + eax + 0xa0]
jmp 0x693c40
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fcom st(1)
fnstsw ax
sahf
jb 0x6954da
fstp st(1)
fld dword [0x880484]
faddp st(1)
fmulp st(1)
jmp 0x69550c
lea ecx, [ebp + eax + 0x9a04]
mov eax, dword [eax + ebp + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1e8], eax
movzx edx, byte [ebx + ebp + 0x968c]
mov al, byte [esp + edx + 0x10]
test al, al
jne 0x695697
imul eax, edx, 0x3bc
lea edi, [eax + 0x849fa0]
lea esi, [ebp + eax + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
movzx edx, byte [ebx + ebp + 0x968c]
mov byte [esp + edx + 0x10], 1
imul edx, edx, 0x3bc
mov eax, dword [ebx + ebp + 0x9688]
lea edi, [edx + eax*4 + 0x84a278]
fld dword [edx + eax*4 + 0x84a17c]
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x6956f8
fld dword [ebx + ebp + 0x9690]
fcom dword [0x880480]
fnstsw ax
sahf
jb 0x6956ff
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmulp st(1)
jmp 0x69578c
fld dword [ebx + ebp + 0x9690]
test esi, esi
jne 0x695728
fcom dword [0x880480]
fnstsw ax
sahf
jae 0x695728
fchs
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fsubrp st(1)
fmulp st(1)
jmp 0x69578c
fmul dword [ebx + ebp + 0x9694]
fmulp st(1)
fadd st(0)
fstp dword [esp + 0x18c]
mov eax, dword [esp + 0x18c]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x190], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x18c]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x18c], esi
mov edi, dword [ebx + ebp + 0x9688]
lea edi, [edx + edi*4 + 0x84a278]
fld dword [esp + 0x18c]
fmul dword [0x88047c]
fstp dword [edi - 0xfc]
mov eax, dword [esp + 0x200]
imul eax, eax, 0x3bc
mov esi, dword [eax + ebp + 0x5a8]
cmp esi, 1
je 0x6957d8
mov esi, dword [ebx + ebp + 0x9688]
mov ecx, dword [esp + 0x1e8]
mov eax, dword [ecx]
lea edi, [esi - 0x42]
push dword [edx + esi*4 + 0x84a17c]
push edi
call dword [eax + 0x68]
jmp 0x693c40
movzx eax, word [eax + ebp + 0x528]
cmp eax, 3
jne 0x6957ab
mov esi, dword [ebx + ebp + 0x9688]
mov ecx, dword [esp + 0x1e8]
mov eax, dword [ecx]
lea edi, [esi - 0x42]
push dword [edx + esi*4 + 0x84a17c]
push edi
call dword [eax + 0x70]
jmp 0x693c40
mov eax, dword [ebp + 0xa174]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x6958c1
cmp al, 6
je 0x6958c1
cmp al, 7
je 0x6958c1
cmp al, 8
jne 0x693c40
lea ecx, [ebp + 0xa154]
mov eax, dword [ebp + 0xa154]
call dword [eax + 0xc]
mov ecx, eax
mov dl, byte [esp + 0x20c]
test dl, dl
jne 0x69593a
mov esi, dword [ebp + 0x4d4]
mov edi, dword [ebp + 0x4d8]
mov edx, dword [ebp + 0x4dc]
mov dword [0x84db68], esi
mov dword [0x84db6c], edi
mov dword [0x84db70], edx
mov edx, dword [ebp + 0x4e0]
mov dword [0x84db74], edx
mov edx, dword [ebp + 0x4e4]
mov dword [0x84db78], edx
mov edx, dword [ebp + 0x4e8]
mov dword [0x84db7c], edx
mov edx, dword [ebp + 0x4ec]
mov dword [0x84db80], edx
mov dl, 1
mov byte [esp + 0x20c], dl
mov esi, dword [ebx + ebp + 0x9688]
cmp esi, 0x22
je 0x695c48
fld dword [0x84db74]
cmp esi, 0x23
je 0x695ad8
fld dword [0x84db78]
cmp esi, 0x24
je 0x6959a8
fld dword [0x84db7c]
mov edx, dword [0x84db80]
add esp, 0xfffffff0
fxch st(2)
fst dword [ecx + 0x38]
fxch st(1)
fst dword [ecx + 0x40]
fxch st(2)
fst dword [ecx + 0x48]
fxch st(1)
fstp dword [esp]
fxch st(1)
fstp dword [esp + 4]
fstp dword [esp + 8]
mov dword [esp + 0xc], edx
call fcn.00698c38
jmp 0x693c40
fld dword [0x84db7c]
fld st(0)
mov edx, dword [ebx + ebp + 0x969c]
fld dword [0x880484]
fsubr st(1), st(0)
test edx, edx
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x6959f8
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x6959fe
fstp st(3)
fstp st(2)
fstp st(1)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x695acc
fld dword [0x880480]
test edx, edx
jne 0x695a28
fcom st(2)
fnstsw ax
sahf
jbe 0x695a28
fstp st(0)
fstp st(3)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fsubp st(1)
fmulp st(1)
faddp st(1)
jmp 0x695acc
fstp st(3)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x695a88
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x30]
mov edx, dword [esp + 0x30]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x34], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x30]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x30], esi
fld dword [esp + 0x30]
fmul dword [0x88047c]
jmp 0x695acc
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x30]
mov edx, dword [esp + 0x30]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x34], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x30]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x30], esi
fld dword [esp + 0x30]
fmul dword [0x88047c]
fst dword [0x84db7c]
jmp 0x69596a
fld dword [0x880474]
mov edx, dword [ebx + ebp + 0x969c]
fadd dword [0x84db78]
test edx, edx
fmul dword [0x880470]
fld st(0)
fld dword [0x880484]
fsubr st(1), st(0)
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x695b38
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x695b3e
fstp st(1)
fstp st(2)
fstp st(0)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x695c23
fld dword [0x880480]
test edx, edx
jne 0x695b68
fcom st(2)
fnstsw ax
sahf
jbe 0x695b68
fstp st(4)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubp st(1)
fmulp st(1)
faddp st(1)
jmp 0x695c23
fstp st(3)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x695bd8
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x28]
mov edx, dword [esp + 0x28]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x2c], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x28]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x28], esi
mov esi, dword [ebx + ebp + 0x9688]
fld dword [esp + 0x28]
fmul dword [0x88047c]
jmp 0x695c23
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x28]
mov edx, dword [esp + 0x28]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x2c], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x28]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x28], esi
mov esi, dword [ebx + ebp + 0x9688]
fld dword [esp + 0x28]
fmul dword [0x88047c]
fmul dword [0x880468]
fadd dword [0x88046c]
fst dword [0x84db78]
jmp 0x69595f
fld dword [0x88048c]
mov edx, dword [ebx + ebp + 0x969c]
fadd dword [0x84db74]
test edx, edx
fmul dword [0x880488]
fld st(0)
fld dword [0x880484]
fsubr st(1), st(0)
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x695ca8
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x695cae
fstp st(1)
fstp st(1)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(2)
fxch st(2)
faddp st(1)
jmp 0x695d95
fld dword [0x880480]
test edx, edx
jne 0x695cd8
fcom st(2)
fnstsw ax
sahf
jbe 0x695cd8
fstp st(4)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fxch st(2)
faddp st(1)
jmp 0x695d95
fld dword [ebx + ebp + 0x9694]
fmul st(3), st(0)
fxch st(3)
fcompp
fnstsw ax
sahf
jb 0x695d48
fstp st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x20]
mov edx, dword [esp + 0x20]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x24], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x20]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x20], esi
mov esi, dword [ebx + ebp + 0x9688]
fld dword [esp + 0x20]
fmul dword [0x88047c]
jmp 0x695d95
fstp st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x20]
mov edx, dword [esp + 0x20]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x24], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x20]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x20], esi
mov esi, dword [ebx + ebp + 0x9688]
fld dword [esp + 0x20]
fmul dword [0x88047c]
fmul dword [0x880478]
faddp st(1)
fst dword [0x84db74]
jmp 0x695950
mov eax, dword [ebp + 0xa1bc]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x695dd1
cmp al, 6
je 0x695dd1
cmp al, 7
je 0x695dd1
cmp al, 8
jne 0x693c40
lea ecx, [ebp + 0xa19c]
mov eax, dword [ebp + 0xa19c]
call dword [eax + 0xc]
mov edx, eax
mov al, byte [esp + 0x210]
test al, al
jne 0x695e26
mov esi, dword [ebp + 0x500]
mov edi, dword [ebp + 0x504]
mov al, 1
mov dword [0x84db84], esi
mov esi, dword [ebp + 0x508]
mov dword [0x84db88], edi
mov dword [0x84db8c], esi
mov esi, dword [ebp + 0x50c]
mov dword [0x84db90], esi
mov byte [esp + 0x210], al
fld dword [0x84db90]
fld st(0)
mov esi, dword [ebx + ebp + 0x969c]
fld dword [0x880484]
fsubr st(1), st(0)
test esi, esi
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x695e88
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x695e8e
fstp st(3)
fstp st(0)
fstp st(0)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
fld dword [0x88047c]
jmp 0x695f70
fld dword [0x880480]
test esi, esi
jne 0x695eb8
fcom st(2)
fnstsw ax
sahf
jbe 0x695eb8
fstp st(4)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubp st(1)
fmulp st(1)
faddp st(1)
fld dword [0x88047c]
jmp 0x695f70
fstp st(3)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x695f28
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x38]
mov esi, dword [esp + 0x38]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x3c], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x38]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x38], edi
fld dword [0x88047c]
fld st(0)
fmul dword [esp + 0x38]
fxch st(1)
jmp 0x695f70
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x38]
mov esi, dword [esp + 0x38]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x3c], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x38]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x38], edi
fld dword [0x88047c]
fld st(0)
fmul dword [esp + 0x38]
fxch st(1)
fxch st(1)
fst dword [0x84db90]
fmul st(1)
faddp st(1)
fst dword [edx + 0x30]
fstp dword [edx + 0x34]
jmp 0x693c40
mov eax, dword [ebp + 0xa198]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x695fb1
cmp al, 6
je 0x695fb1
cmp al, 7
je 0x695fb1
cmp al, 8
jne 0x693c40
lea ecx, [ebp + 0xa178]
mov eax, dword [ebp + 0xa178]
call dword [eax + 0xc]
mov edx, eax
mov al, byte [esp + 0x214]
test al, al
jne 0x696006
mov esi, dword [ebp + 0x4f0]
mov edi, dword [ebp + 0x4f4]
mov al, 1
mov dword [0x84db94], esi
mov esi, dword [ebp + 0x4f8]
mov dword [0x84db98], edi
mov dword [0x84db9c], esi
mov esi, dword [ebp + 0x4fc]
mov dword [0x84dba0], esi
mov byte [esp + 0x214], al
fld dword [0x84dba0]
fld st(0)
mov esi, dword [ebx + ebp + 0x969c]
fld dword [0x880484]
fsubr st(1), st(0)
test esi, esi
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x696058
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x69605e
fstp st(1)
fstp st(1)
fstp st(1)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x69612c
fld dword [0x880480]
test esi, esi
jne 0x696088
fcom st(2)
fnstsw ax
sahf
jbe 0x696088
fstp st(4)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubp st(1)
fmulp st(1)
faddp st(1)
jmp 0x69612c
fstp st(3)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x6960e8
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x40]
mov esi, dword [esp + 0x40]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x44], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x40]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x40], edi
fld dword [esp + 0x40]
fmul dword [0x88047c]
jmp 0x69612c
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x40]
mov esi, dword [esp + 0x40]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x44], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x40]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x40], edi
fld dword [esp + 0x40]
fmul dword [0x88047c]
fst dword [0x84dba0]
fst dword [edx + 0x30]
fstp dword [edx + 0x34]
jmp 0x693c40
mov eax, dword [ebp + 0xa204]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x696171
cmp al, 6
je 0x696171
cmp al, 7
je 0x696171
cmp al, 8
jne 0x693c40
lea ecx, [ebp + 0xa1e4]
mov eax, dword [ebp + 0xa1e4]
call dword [eax + 0xc]
mov ecx, eax
mov dl, byte [esp + 0x218]
test dl, dl
jne 0x6961de
mov esi, dword [ebp + 0x510]
mov edi, dword [ebp + 0x514]
mov edx, dword [ebp + 0x518]
mov dword [0x84dba4], esi
mov dword [0x84dba8], edi
mov dword [0x84dbac], edx
mov edx, dword [ebp + 0x51c]
mov dword [0x84dbb0], edx
mov edx, dword [ebp + 0x520]
mov dword [0x84dbb4], edx
mov edx, dword [ebp + 0x524]
mov dword [0x84dbb8], edx
mov dl, 1
mov byte [esp + 0x218], dl
fld dword [0x84dbb0]
fld st(0)
mov edx, dword [ebx + ebp + 0x969c]
fld dword [0x880484]
fsubr st(1), st(0)
test edx, edx
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x696238
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x69623e
fstp st(1)
fstp st(1)
fstp st(1)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x69630c
fld dword [0x880480]
test edx, edx
jne 0x696268
fcom st(2)
fnstsw ax
sahf
jbe 0x696268
fstp st(4)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubp st(1)
fmulp st(1)
faddp st(1)
jmp 0x69630c
fstp st(3)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x6962c8
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x48]
mov edx, dword [esp + 0x48]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x4c], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x48]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x48], esi
fld dword [esp + 0x48]
fmul dword [0x88047c]
jmp 0x69630c
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x48]
mov edx, dword [esp + 0x48]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x4c], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x48]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x48], esi
fld dword [esp + 0x48]
fmul dword [0x88047c]
fst dword [0x84dbb0]
mov edx, dword [0x84dbb4]
mov esi, dword [0x84dbb8]
fst dword [ecx + 0x118]
add esp, 0xfffffff4
fstp dword [esp]
mov dword [esp + 4], edx
mov dword [esp + 8], esi
call fcn.00698e18
jmp 0x693c40
mov eax, dword [ebp + 0xa108]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x696371
cmp al, 6
je 0x696371
cmp al, 7
je 0x696371
cmp al, 8
jne 0x693c40
lea ecx, [ebp + 0xa0e8]
mov eax, dword [ebp + 0xa0e8]
call dword [eax + 0xc]
mov dword [esp + 0x1e8], eax
mov al, byte [esp + 0x21c]
test al, al
jne 0x69641b
mov esi, dword [ebp + 0x9654]
mov edi, dword [ebp + 0x9658]
mov eax, dword [ebp + 0x965c]
mov dword [0x84dbbc], esi
mov edx, dword [ebp + 0x9660]
mov dword [0x84dbc0], edi
mov dword [0x84dbc4], eax
mov dword [0x84dbc8], edx
mov eax, dword [ebp + 0x9664]
mov dword [0x84dbcc], eax
mov eax, dword [ebp + 0x9668]
mov dword [0x84dbd0], eax
mov eax, dword [ebp + 0x966c]
mov dword [0x84dbd4], eax
mov eax, dword [ebp + 0x9670]
mov dword [0x84dbd8], eax
mov eax, dword [ebp + 0x9674]
mov dword [0x84dbdc], eax
mov eax, dword [ebp + 0x9678]
mov dword [0x84dbe0], eax
mov eax, dword [ebp + 0x967c]
mov dword [0x84dbe4], eax
mov al, 1
mov byte [esp + 0x21c], al
fld dword [0x84dbe0]
mov edx, dword [ebx + ebp + 0x969c]
test edx, edx
jne 0x696468
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
fcom st(1)
fnstsw ax
sahf
ja 0x696475
fstp st(0)
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x6964ec
fld dword [ebx + ebp + 0x9690]
fld dword [0x880480]
test edx, edx
jne 0x6964a8
fcom st(1)
fnstsw ax
sahf
jbe 0x6964a8
fstp st(0)
fld dword [0x880484]
fxch st(1)
fchs
fmul dword [ebx + ebp + 0x9694]
fsubp st(1)
fmul st(1), st(0)
fmul st(1), st(0)
fmulp st(1)
jmp 0x6964ec
cmp edx, 1
je 0x696588
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fadd st(1), st(0)
fxch st(1)
fcom st(2)
fnstsw ax
sahf
jae 0x6964d8
fstp st(1)
fstp st(0)
fstp st(1)
jmp 0x6964ec
fstp st(2)
fld st(1)
fmul st(0)
fmulp st(2)
fxch st(1)
fadd dword [0x88048c]
faddp st(1)
fmulp st(1)
fst dword [0x84dbe0]
mov eax, dword [esp + 0x1e8]
mov edx, dword [eax]
mov esi, dword [edx + 4]
fld qword [0x880410]
fmulp st(1)
fmul dword [ebp + 0xa208]
fstp qword [esp + 0x1c0]
mov edi, dword [esp + 0x1c0]
mov edx, dword [esp + 0x1c4]
mov ecx, edx
shr ecx, 0x14
and ecx, 0x7ff
cmp ecx, 0x3fe
jle 0x696568
mov eax, edx
neg ecx
add ecx, 0x41e
shld eax, edi, 0xb
or eax, 0x80000000
shr eax, cl
test edx, edx
mov dword [esp + 0x1d0], eax
jge 0x696571
neg eax
mov dword [esp + 0x1d0], eax
jmp 0x696571
xor eax, eax
mov dword [esp + 0x1d0], eax
push eax
mov ecx, dword [esp + 0x1ec]
call esi
jmp 0x693c40
fxch st(1)
fmul dword [ebx + ebp + 0x9694]
fcom st(1)
fnstsw ax
sahf
jb 0x6964ba
fstp st(1)
fld dword [0x880484]
faddp st(1)
fmulp st(1)
jmp 0x6964ec
mov eax, dword [ebp + 0xa108]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x6965e1
cmp al, 6
je 0x6965e1
cmp al, 7
je 0x6965e1
cmp al, 8
jne 0x693c40
lea ecx, [ebp + 0xa0e8]
mov eax, dword [ebp + 0xa0e8]
call dword [eax + 0xc]
mov ecx, eax
mov dl, byte [esp + 0x21c]
test dl, dl
jne 0x69668e
mov esi, dword [ebp + 0x9654]
mov edi, dword [ebp + 0x9658]
mov edx, dword [ebp + 0x965c]
mov dword [0x84dbbc], esi
mov dword [0x84dbc0], edi
mov dword [0x84dbc4], edx
mov edx, dword [ebp + 0x9660]
mov dword [0x84dbc8], edx
mov edx, dword [ebp + 0x9664]
mov dword [0x84dbcc], edx
mov edx, dword [ebp + 0x9668]
mov dword [0x84dbd0], edx
mov edx, dword [ebp + 0x966c]
mov dword [0x84dbd4], edx
mov edx, dword [ebp + 0x9670]
mov dword [0x84dbd8], edx
mov edx, dword [ebp + 0x9674]
mov dword [0x84dbdc], edx
mov edx, dword [ebp + 0x9678]
mov dword [0x84dbe0], edx
mov edx, dword [ebp + 0x967c]
mov dword [0x84dbe4], edx
mov dl, 1
mov byte [esp + 0x21c], dl
fld dword [0x84dbc4]
mov edx, dword [ebx + ebp + 0x969c]
test edx, edx
jne 0x6966d8
fld dword [ebx + ebp + 0x9690]
fcom dword [0x880480]
fnstsw ax
sahf
jb 0x6966df
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmulp st(1)
jmp 0x69674f
fld dword [ebx + ebp + 0x9690]
test edx, edx
jne 0x696708
fcom dword [0x880480]
fnstsw ax
sahf
jae 0x696708
fchs
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fsubrp st(1)
fmulp st(1)
jmp 0x69674f
fmul dword [ebx + ebp + 0x9694]
fmulp st(1)
fadd st(0)
fstp dword [esp + 0x50]
mov edx, dword [esp + 0x50]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x54], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x50]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x50], esi
fld dword [esp + 0x50]
fmul dword [0x88047c]
fst dword [0x84dbc4]
mov esi, 1
xor edi, edi
fld qword [ecx + 0x80]
fsubr st(1)
fabs
fcomp qword [0x880408]
fnstsw ax
sahf
mov edx, esi
ja 0x696775
mov edx, edi
movzx edx, dl
test edx, edx
fstp qword [ecx + 0x80]
je 0x693c40
call fcn.00454dcc
jmp 0x693c40
mov eax, dword [ebp + 0xa0e4]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x6967c1
cmp al, 6
je 0x6967c1
cmp al, 7
je 0x6967c1
cmp al, 8
jne 0x693c40
lea esi, [ebp + 0xa0c4]
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov eax, dword [eax + 4]
cmp eax, 0x1b
jne 0x693c40
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dword [esp + 0x1d0], eax
mov al, byte [esp + 0x220]
test al, al
jne 0x696858
mov esi, dword [ebp + 0x9600]
mov edi, dword [ebp + 0x9604]
mov eax, dword [ebp + 0x9610]
mov dword [0x849eb8], esi
mov edx, dword [ebp + 0x9614]
mov dword [0x849ebc], edi
mov dword [0x849ec8], eax
mov dword [0x849ecc], edx
mov eax, dword [ebp + 0x9618]
mov dword [0x849ed0], eax
mov al, 1
fld dword [ebp + 0x961c]
fld dword [ebp + 0x9620]
fld dword [ebp + 0x9624]
mov byte [esp + 0x220], al
jmp 0x69686a
fld dword [0x849ed4]
fld dword [0x849ed8]
fld dword [0x849edc]
fld dword [ebx + ebp + 0x9690]
fld st(3)
fld st(1)
fxch st(1)
fsubr dword [0x880484]
fmul st(2)
fxch st(1)
fmul st(5)
fstp qword [esp + 0x1f8]
mov edx, dword [ebx + ebp + 0x969c]
test edx, edx
jne 0x6968c8
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x6968ce
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(6)
faddp st(2)
fxch st(5)
fstp qword [esp + 0x1e0]
jmp 0x6969c7
fld dword [0x880480]
test edx, edx
jne 0x696908
fcom st(2)
fnstsw ax
sahf
jbe 0x696908
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fst qword [esp + 0x1e0]
fsubr dword [0x880484]
fld qword [esp + 0x1f8]
fmulp st(1)
faddp st(5)
fxch st(4)
jmp 0x6969c7
fld dword [ebx + ebp + 0x9694]
fld st(3)
fmul st(1)
fxch st(1)
fstp qword [esp + 0x1e0]
fcomp st(1)
fnstsw ax
sahf
jb 0x696978
fxch st(1)
fmul qword [esp + 0x1e0]
faddp st(5)
fxch st(4)
fadd st(0)
fstp dword [esp + 0x70]
mov eax, dword [esp + 0x70]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x74], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x70]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x70], esi
fld dword [esp + 0x70]
fmul dword [0x88047c]
jmp 0x6969c7
fstp st(1)
fld qword [esp + 0x1f8]
fmul qword [esp + 0x1e0]
faddp st(5)
fxch st(4)
fadd st(0)
fstp dword [esp + 0x70]
mov eax, dword [esp + 0x70]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x74], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x70]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x70], esi
fld dword [esp + 0x70]
fmul dword [0x88047c]
fst dword [0x849ed4]
fld st(3)
fld st(2)
fxch st(1)
fsubr dword [0x880484]
fmul st(3)
fxch st(1)
fmul st(5)
test edx, edx
jne 0x696a08
fxch st(3)
fcom st(6)
fnstsw ax
sahf
fxch st(3)
jb 0x696a08
fstp st(0)
fmul qword [esp + 0x1e0]
faddp st(4)
jmp 0x696ae2
test edx, edx
jne 0x696a38
fxch st(3)
fcom st(6)
fnstsw ax
sahf
fxch st(3)
jae 0x696a38
fstp st(1)
fld qword [esp + 0x1e0]
fsubr dword [0x880484]
fmulp st(1)
faddp st(4)
jmp 0x696ae2
fld st(3)
fmul qword [esp + 0x1e0]
fcomp st(7)
fnstsw ax
sahf
jb 0x696a98
fstp st(0)
fmul qword [esp + 0x1e0]
faddp st(4)
fxch st(3)
fadd st(0)
fstp dword [esp + 0x78]
mov eax, dword [esp + 0x78]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x7c], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x78]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x78], esi
fld dword [esp + 0x78]
fmul dword [0x88047c]
fxch st(3)
jmp 0x696ae2
fstp st(1)
fmul qword [esp + 0x1e0]
faddp st(4)
fxch st(3)
fadd st(0)
fstp dword [esp + 0x78]
mov eax, dword [esp + 0x78]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x7c], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x78]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x78], esi
fld dword [esp + 0x78]
fmul dword [0x88047c]
fxch st(3)
fxch st(3)
fstp dword [0x849ed8]
fld st(1)
fld st(1)
fxch st(1)
fsubr dword [0x880484]
fmul st(2)
fxch st(1)
fmul st(3)
test edx, edx
jne 0x696b28
fxch st(2)
fcom st(5)
fnstsw ax
sahf
fxch st(2)
jb 0x696b28
fstp st(5)
fstp st(1)
fstp st(3)
fxch st(2)
fmul qword [esp + 0x1e0]
faddp st(2)
jmp 0x696c36
test edx, edx
jne 0x696b58
fxch st(2)
fcom st(5)
fnstsw ax
sahf
fxch st(2)
jae 0x696b58
fstp st(1)
fstp st(4)
fstp st(0)
fld qword [esp + 0x1e0]
fsubr dword [0x880484]
fmulp st(3)
faddp st(2)
jmp 0x696c36
fxch st(2)
fmul qword [esp + 0x1e0]
fcomp st(5)
fxch st(4)
fstp st(0)
fnstsw ax
sahf
jb 0x696bd8
fstp st(0)
fxch st(2)
fmul qword [esp + 0x1e0]
faddp st(2)
fxch st(1)
fadd st(0)
fstp dword [esp + 0x80]
mov eax, dword [esp + 0x80]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x84], eax
mov edx, eax
xor edx, 0xffffffff
and edx, dword [esp + 0x80]
and eax, 0x40000000
or edx, eax
mov dword [esp + 0x80], edx
fld dword [esp + 0x80]
fmul dword [0x88047c]
fxch st(1)
jmp 0x696c36
fstp st(3)
fxch st(2)
fmul qword [esp + 0x1e0]
faddp st(2)
fxch st(1)
fadd st(0)
fstp dword [esp + 0x80]
mov eax, dword [esp + 0x80]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x84], eax
mov edx, eax
xor edx, 0xffffffff
and edx, dword [esp + 0x80]
and eax, 0x40000000
or edx, eax
mov dword [esp + 0x80], edx
fld dword [esp + 0x80]
fmul dword [0x88047c]
fxch st(1)
fxch st(1)
fstp dword [0x849edc]
add esp, 0xfffffff8
mov ecx, dword [esp + 0x1d8]
fstp dword [esp]
mov byte [esp + 4], 1
call fcn.0067bff0
push 1
push dword [0x849ed8]
mov ecx, dword [esp + 0x1d8]
call fcn.0067c140
fld dword [0x849edc]
mov esi, dword [esp + 0x1d0]
fmul dword [0x880460]
fadd dword [0x880464]
fstp dword [0x85fae8]
mov eax, dword [0x85fae8]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [0x85faec], eax
xor eax, 0xffffffff
and eax, dword [0x85fae8]
mov dword [0x85fae8], eax
mov edx, dword [0x85faec]
and edx, 0x40000000
or eax, edx
mov dword [0x85fae8], eax
fld dword [0x88045c]
fadd dword [0x85fae8]
fmul dword [0x880458]
fst qword [esp + 0x1f8]
fst dword [esi + 0xb4]
fld dword [esi + 0xe0]
fsubr qword [0x880400]
fmul qword [0x8803f0]
fadd qword [0x8803f8]
fdivr st(1)
fadd qword [0x880400]
fsubrp st(1)
fst dword [esi + 0x104]
fld qword [0x8803e8]
fld dword [esi + 0xfc]
fadd st(1)
fld dword [esi + 0x100]
fadd st(2)
fld st(0)
fmul st(2)
fld dword [0x880484]
fxch st(4)
fadd st(5)
fxch st(4)
fdiv dword [esi + 0x70]
fld st(0)
fxch st(3)
fmul st(5)
fld dword [esi + 0x74]
fmul st(4), st(0)
fxch st(5)
fmulp st(6)
fxch st(3)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(2)
fld dword [esi + 0x78]
fdivr st(4), st(0)
fmulp st(1)
fxch st(3)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(2)
faddp st(1)
fxch st(1)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(2)
faddp st(1)
fld dword [esi + 0x100]
fadd dword [esi + 0xfc]
faddp st(2)
faddp st(1)
fdivr qword [0x8803d0]
fstp dword [esi + 0xc4]
fld qword [esp + 0x1f8]
fstp dword [esi + 0xc0]
jmp 0x693c40
mov eax, dword [ebp + 0xa0e4]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x696de1
cmp al, 6
je 0x696de1
cmp al, 7
je 0x696de1
cmp al, 8
jne 0x693c40
lea esi, [ebp + 0xa0c4]
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov eax, dword [eax + 4]
cmp eax, 0x1b
jne 0x693c40
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov ecx, eax
mov dl, byte [esp + 0x220]
test dl, dl
jne 0x696e78
mov esi, dword [ebp + 0x9600]
mov edi, dword [ebp + 0x9604]
mov edx, dword [ebp + 0x961c]
mov dword [0x849eb8], esi
mov dword [0x849ebc], edi
fld dword [ebp + 0x9610]
fld dword [ebp + 0x9614]
fld dword [ebp + 0x9618]
mov dword [0x849ed4], edx
mov edx, dword [ebp + 0x9620]
mov dword [0x849ed8], edx
mov edx, dword [ebp + 0x9624]
mov dword [0x849edc], edx
mov dl, 1
mov byte [esp + 0x220], dl
jmp 0x696e8a
fld dword [0x849ec8]
fld dword [0x849ecc]
fld dword [0x849ed0]
fld dword [ebx + ebp + 0x9690]
fld st(3)
fld st(1)
fxch st(1)
fsubr dword [0x880484]
fmul st(2)
fxch st(1)
fmul st(5)
fstp qword [esp + 0x1f8]
mov edx, dword [ebx + ebp + 0x969c]
test edx, edx
jne 0x696ee8
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x696eee
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(6)
faddp st(2)
fxch st(5)
fstp qword [esp + 0x1e0]
jmp 0x69700c
fld dword [0x880480]
test edx, edx
jne 0x696f28
fcom st(2)
fnstsw ax
sahf
jbe 0x696f28
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fst qword [esp + 0x1e0]
fsubr dword [0x880484]
fld qword [esp + 0x1f8]
fmulp st(1)
faddp st(5)
fxch st(4)
jmp 0x69700c
fld dword [ebx + ebp + 0x9694]
fld st(3)
fmul st(1)
fxch st(1)
fstp qword [esp + 0x1e0]
fcomp st(1)
fnstsw ax
sahf
jb 0x696fa8
fxch st(1)
fmul qword [esp + 0x1e0]
faddp st(5)
fxch st(4)
fadd st(0)
fstp dword [esp + 0x88]
mov esi, dword [esp + 0x88]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x8c], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x88]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x88], edi
fld dword [esp + 0x88]
fmul dword [0x88047c]
jmp 0x69700c
fstp st(1)
fld qword [esp + 0x1f8]
fmul qword [esp + 0x1e0]
faddp st(5)
fxch st(4)
fadd st(0)
fstp dword [esp + 0x88]
mov esi, dword [esp + 0x88]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x8c], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x88]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x88], edi
fld dword [esp + 0x88]
fmul dword [0x88047c]
fst dword [0x849ec8]
fld st(3)
fld st(2)
fxch st(1)
fsubr dword [0x880484]
fmul st(3)
fxch st(1)
fmul st(5)
test edx, edx
jne 0x697048
fxch st(3)
fcom st(6)
fnstsw ax
sahf
fxch st(3)
jb 0x697048
fstp st(0)
fmul qword [esp + 0x1e0]
faddp st(4)
jmp 0x697157
test edx, edx
jne 0x697078
fxch st(3)
fcom st(6)
fnstsw ax
sahf
fxch st(3)
jae 0x697078
fstp st(1)
fld qword [esp + 0x1e0]
fsubr dword [0x880484]
fmulp st(1)
faddp st(4)
jmp 0x697157
fld st(3)
fmul qword [esp + 0x1e0]
fcomp st(7)
fnstsw ax
sahf
jb 0x6970f8
fstp st(0)
fmul qword [esp + 0x1e0]
faddp st(4)
fxch st(3)
fadd st(0)
fstp dword [esp + 0x90]
mov esi, dword [esp + 0x90]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x94], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x90]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x90], edi
fld dword [esp + 0x90]
fmul dword [0x88047c]
fxch st(3)
jmp 0x697157
fstp st(1)
fmul qword [esp + 0x1e0]
faddp st(4)
fxch st(3)
fadd st(0)
fstp dword [esp + 0x90]
mov esi, dword [esp + 0x90]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [esp + 0x94], esi
mov edi, esi
xor edi, 0xffffffff
and edi, dword [esp + 0x90]
and esi, 0x40000000
or edi, esi
mov dword [esp + 0x90], edi
fld dword [esp + 0x90]
fmul dword [0x88047c]
fxch st(3)
fxch st(3)
fst dword [0x849ecc]
fld st(2)
fld st(2)
fxch st(1)
fsubr dword [0x880484]
fmul st(3)
fxch st(1)
fmul st(4)
test edx, edx
jne 0x697198
fxch st(3)
fcom st(6)
fnstsw ax
sahf
fxch st(3)
jb 0x697198
fstp st(3)
fstp st(2)
fxch st(1)
fmul qword [esp + 0x1e0]
faddp st(2)
jmp 0x6972a9
test edx, edx
jne 0x6971c8
fxch st(3)
fcom st(6)
fnstsw ax
sahf
fxch st(3)
jae 0x6971c8
fstp st(3)
fstp st(0)
fld qword [esp + 0x1e0]
fsubr dword [0x880484]
fmulp st(2)
fxch st(2)
faddp st(1)
fxch st(1)
jmp 0x6972a9
fxch st(3)
fmul qword [esp + 0x1e0]
fcomp st(6)
fnstsw ax
sahf
jb 0x697248
fstp st(2)
fxch st(1)
fmul qword [esp + 0x1e0]
faddp st(2)
fxch st(1)
fadd st(0)
fstp dword [esp + 0x98]
mov edx, dword [esp + 0x98]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x9c], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x98]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x98], esi
fld dword [esp + 0x98]
fmul dword [0x88047c]
fxch st(1)
jmp 0x6972a9
fstp st(0)
fxch st(1)
fmul qword [esp + 0x1e0]
faddp st(2)
fxch st(1)
fadd st(0)
fstp dword [esp + 0x98]
mov edx, dword [esp + 0x98]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x9c], edx
mov esi, edx
xor esi, 0xffffffff
and esi, dword [esp + 0x98]
and edx, 0x40000000
or esi, edx
mov dword [esp + 0x98], esi
fld dword [esp + 0x98]
fmul dword [0x88047c]
fxch st(1)
fxch st(1)
fst dword [0x849ed0]
fld dword [0x880464]
fxch st(3)
fmul dword [0x880460]
fadd st(3)
fstp dword [0x85fae8]
mov esi, dword [0x85fae8]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [0x85faec], esi
xor esi, 0xffffffff
and esi, dword [0x85fae8]
mov dword [0x85fae8], esi
mov edx, dword [0x85faec]
and edx, 0x40000000
or esi, edx
mov dword [0x85fae8], esi
fld dword [0x880458]
fld dword [0x88045c]
fadd dword [0x85fae8]
fmul st(1)
fst dword [ecx + 0x108]
fcom qword [0x8803c8]
fnstsw ax
sahf
jae 0x697368
fld qword [0x8803c0]
fld st(1)
fxch st(2)
fadd st(0)
fxch st(2)
fsubr qword [0x8803c8]
fmul st(1)
fstp dword [ecx + 0x88]
fxch st(1)
fstp dword [ecx + 0x8c]
fxch st(5)
fst dword [ecx + 0x90]
jmp 0x697398
fxch st(5)
fst dword [ecx + 0x88]
fld qword [0x8803c0]
fld qword [0x880400]
fsub st(7)
fmul st(1)
fstp dword [ecx + 0x8c]
fld qword [0x8803b8]
faddp st(7)
fmul st(6), st(0)
fxch st(6)
fstp dword [ecx + 0x90]
fxch st(3)
fmul dword [0x880460]
fadd st(4)
fstp dword [0x85fae8]
mov esi, dword [0x85fae8]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [0x85faec], esi
xor esi, 0xffffffff
and esi, dword [0x85fae8]
mov dword [0x85fae8], esi
mov edx, dword [0x85faec]
and edx, 0x40000000
or esi, edx
mov dword [0x85fae8], esi
fld dword [0x85fae8]
fadd dword [0x88045c]
fmul st(1)
fst dword [ecx + 0x10c]
fcom qword [0x8803c8]
fnstsw ax
sahf
jae 0x697438
fld st(0)
fxch st(1)
fadd st(0)
fxch st(1)
fsubr qword [0x8803c8]
fmul st(6)
fstp dword [ecx + 0x94]
fstp dword [ecx + 0x98]
fxch st(2)
fst dword [ecx + 0x9c]
fxch st(2)
jmp 0x697462
fxch st(3)
fst dword [ecx + 0x94]
fld qword [0x880400]
fsub st(4)
fmul st(6)
fstp dword [ecx + 0x98]
fld qword [0x8803b8]
faddp st(4)
fxch st(3)
fmul st(5)
fstp dword [ecx + 0x9c]
fld dword [0x880460]
fmulp st(2)
fxch st(3)
faddp st(1)
fstp dword [0x85fae8]
mov edi, dword [0x85fae8]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [0x85faec], edi
xor edi, 0xffffffff
and edi, dword [0x85fae8]
mov dword [0x85fae8], edi
mov esi, dword [0x85faec]
and esi, 0x40000000
or edi, esi
mov dword [0x85fae8], edi
fld dword [0x85fae8]
fadd dword [0x88045c]
fmulp st(2)
fxch st(1)
fst dword [ecx + 0x110]
fcom qword [0x8803c8]
fnstsw ax
sahf
jae 0x697508
fld qword [0x8803c8]
fsub st(1)
fmulp st(3)
fxch st(2)
fstp dword [ecx + 0xa0]
fxch st(1)
fadd st(0)
fstp dword [ecx + 0xa4]
fstp dword [ecx + 0xa8]
jmp 0x693c40
fxch st(1)
fstp dword [ecx + 0xa0]
fld qword [0x880400]
fsub st(1)
fmul st(2)
fstp dword [ecx + 0xa4]
fld qword [0x8803b8]
faddp st(1)
fmulp st(1)
fstp dword [ecx + 0xa8]
jmp 0x693c40
mov eax, dword [ebp + 0xa0e4]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x697561
cmp al, 6
je 0x697561
cmp al, 7
je 0x697561
cmp al, 8
jne 0x693c40
lea esi, [ebp + 0xa0c4]
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov eax, dword [eax + 4]
cmp eax, 0x1b
jne 0x693c40
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov esi, eax
mov dl, byte [esp + 0x220]
test dl, dl
jne 0x6975f8
fld dword [ebp + 0x9600]
mov edi, dword [ebp + 0x9610]
mov edx, dword [ebp + 0x9614]
fld dword [ebp + 0x9604]
mov dword [0x849ec8], edi
mov dword [0x849ecc], edx
mov edx, dword [ebp + 0x9618]
mov dword [0x849ed0], edx
mov edx, dword [ebp + 0x961c]
mov dword [0x849ed4], edx
mov edx, dword [ebp + 0x9620]
mov dword [0x849ed8], edx
mov edx, dword [ebp + 0x9624]
mov dword [0x849edc], edx
mov dl, 1
mov byte [esp + 0x220], dl
jmp 0x697604
fld dword [0x849eb8]
fld dword [0x849ebc]
fld dword [ebx + ebp + 0x9690]
fld st(2)
fld st(1)
fxch st(1)
fsubr dword [0x880484]
fmul st(2)
fxch st(1)
fmul st(4)
mov edx, dword [ebx + ebp + 0x969c]
test edx, edx
jne 0x697658
fld dword [0x880480]
fcom st(3)
fnstsw ax
sahf
ja 0x69765e
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(5)
faddp st(2)
jmp 0x697766
fld dword [0x880480]
test edx, edx
jne 0x697688
fcom st(3)
fnstsw ax
sahf
jbe 0x697688
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fld st(0)
fsubr dword [0x880484]
fmulp st(2)
fxch st(5)
faddp st(1)
fxch st(1)
jmp 0x697766
fld dword [ebx + ebp + 0x9694]
fld st(4)
fmul st(1)
fcomp st(2)
fnstsw ax
sahf
jb 0x697708
fstp st(2)
fxch st(1)
fmul st(2), st(0)
fxch st(5)
faddp st(2)
fxch st(1)
fadd st(0)
fstp dword [esp + 0xa0]
mov edi, dword [esp + 0xa0]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0xa4], edi
mov eax, edi
xor eax, 0xffffffff
and eax, dword [esp + 0xa0]
and edi, 0x40000000
or eax, edi
mov dword [esp + 0xa0], eax
fld dword [esp + 0xa0]
fmul dword [0x88047c]
fxch st(1)
jmp 0x697766
fstp st(3)
fxch st(1)
fmul st(2)
faddp st(5)
fxch st(4)
fadd st(0)
fstp dword [esp + 0xa0]
mov edi, dword [esp + 0xa0]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [esp + 0xa4], edi
mov eax, edi
xor eax, 0xffffffff
and eax, dword [esp + 0xa0]
and edi, 0x40000000
or eax, edi
mov dword [esp + 0xa0], eax
fld dword [esp + 0xa0]
fmul dword [0x88047c]
fxch st(1)
fxch st(4)
fxch st(1)
fst dword [0x849eb8]
fld st(3)
fld st(3)
fxch st(1)
fsubr dword [0x880484]
fmul st(4)
fxch st(1)
fmul st(5)
test edx, edx
jne 0x6977a8
fxch st(4)
fcom st(3)
fnstsw ax
sahf
fxch st(4)
jb 0x6977a8
fstp st(0)
fstp st(2)
fstp st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
jmp 0x6978a2
test edx, edx
jne 0x6977d8
fxch st(4)
fcom st(3)
fnstsw ax
sahf
fxch st(4)
jae 0x6977d8
fstp st(1)
fstp st(2)
fstp st(2)
fxch st(3)
fsubr dword [0x880484]
fmulp st(3)
fxch st(1)
faddp st(2)
jmp 0x6978a2
fxch st(4)
fmul st(6)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x697848
fstp st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fxch st(1)
fadd st(0)
fstp dword [esp + 0xa8]
mov edx, dword [esp + 0xa8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0xac], edx
mov edi, edx
xor edi, 0xffffffff
and edi, dword [esp + 0xa8]
and edx, 0x40000000
or edi, edx
mov dword [esp + 0xa8], edi
fld dword [esp + 0xa8]
fmul dword [0x88047c]
fxch st(1)
jmp 0x6978a2
fstp st(1)
fxch st(3)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0xa8]
mov edx, dword [esp + 0xa8]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0xac], edx
mov edi, edx
xor edi, 0xffffffff
and edi, dword [esp + 0xa8]
and edx, 0x40000000
or edi, edx
mov dword [esp + 0xa8], edi
fld dword [esp + 0xa8]
fmul dword [0x88047c]
fxch st(1)
fxch st(1)
fstp dword [0x849ebc]
lea ecx, [esp + 0xb0]
fmul dword [0x880460]
fadd dword [0x880464]
fstp dword [0x85fae8]
mov edi, dword [0x85fae8]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [0x85faec], edi
xor edi, 0xffffffff
and edi, dword [0x85fae8]
mov dword [0x85fae8], edi
mov edx, dword [0x85faec]
and edx, 0x40000000
or edi, edx
mov dword [0x85fae8], edi
fld dword [0x88045c]
fadd dword [0x85fae8]
fmul dword [0x880458]
fmul qword [0x8803b0]
fst dword [esi + 0xd0]
fadd dword [esi + 0xcc]
fstp qword [esp + 0x1e0]
call fcn.00435a30
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1e0]
fadd qword [0x8803a8]
fmul qword [0x8803a0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esi + 0xf4]
fmul qword [0x880398]
fmul dword [esi + 0x114]
fcom dword [esi + 0xf4]
fnstsw ax
sahf
jbe 0x697988
fstp st(0)
mov dword [esi + 0x74], edx
jmp 0x69798b
fstp dword [esi + 0x74]
fld dword [esi + 0xcc]
lea ecx, [esp + 0xd4]
fadd dword [esi + 0xd0]
fadd dword [esi + 0xd4]
fstp qword [esp + 0x1e0]
call fcn.00435a30
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1e0]
fadd qword [0x8803a8]
fmul qword [0x8803a0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esi + 0xf8]
fmul qword [0x880398]
fmul dword [esi + 0x114]
fld dword [esi + 0xf8]
fcom st(1)
fnstsw ax
sahf
jae 0x697a08
fstp st(1)
mov dword [esi + 0x78], edx
jmp 0x697a0d
fstp st(0)
fst dword [esi + 0x78]
fld qword [0x8803e8]
lea ecx, [esp + 0xf8]
fld dword [esi + 0x74]
fld dword [esi + 0xfc]
fadd st(2)
fld dword [esi + 0x100]
fadd st(3)
fld st(0)
fmul st(2)
fld dword [0x880484]
fdiv dword [esi + 0x70]
fld st(0)
fmul st(5)
fxch st(5)
fdivr st(7)
fxch st(5)
fmul qword [0x8803d8]
fxch st(7)
fmulp st(1)
fxch st(6)
fadd qword [0x8803e0]
fdivp st(1)
fld dword [esi + 0x104]
faddp st(5)
fxch st(1)
fmul st(4)
fxch st(3)
fmul qword [0x8803d8]
fxch st(2)
fmulp st(4)
fxch st(1)
fadd qword [0x8803e0]
fdivp st(2)
faddp st(1)
fxch st(2)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(1)
faddp st(1)
fadd dword [esi + 0xfc]
fadd dword [esi + 0x100]
fadd dword [esi + 0x104]
fdivr qword [0x8803d0]
fstp dword [esi + 0xc4]
fld dword [0x849ebc]
fmul dword [0x880460]
fadd dword [0x880464]
fstp dword [0x85fae8]
mov edi, dword [0x85fae8]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [0x85faec], edi
xor edi, 0xffffffff
and edi, dword [0x85fae8]
mov dword [0x85fae8], edi
mov edx, dword [0x85faec]
and edx, 0x40000000
or edi, edx
mov dword [0x85fae8], edi
fld dword [0x88045c]
fadd dword [0x85fae8]
fmul dword [0x880458]
fmul qword [0x8803b0]
fst dword [esi + 0xd4]
fld dword [esi + 0xcc]
fadd dword [esi + 0xd0]
faddp st(1)
fstp qword [esp + 0x1e0]
call fcn.00435a30
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1e0]
fadd qword [0x8803a8]
fmul qword [0x8803a0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esi + 0xf8]
fmul qword [0x880398]
fmul dword [esi + 0x114]
fld dword [esi + 0xf8]
fcom st(1)
fnstsw ax
sahf
jae 0x697b88
fstp st(1)
mov dword [esi + 0x78], edx
jmp 0x697b8d
fstp st(0)
fst dword [esi + 0x78]
fld dword [0x880484]
fld qword [0x8803e8]
fld dword [esi + 0x74]
fld dword [esi + 0xfc]
fadd st(2)
fld dword [esi + 0x100]
fadd st(3)
fld st(0)
fxch st(5)
fdiv dword [esi + 0x70]
fxch st(2)
fmul st(5), st(0)
fld st(2)
fmul st(4)
fxch st(4)
fdivr st(7)
fxch st(7)
fmulp st(3)
fxch st(3)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(5)
fld dword [esi + 0x104]
faddp st(4)
fmul st(3)
fxch st(2)
fmulp st(3)
fxch st(4)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(1)
faddp st(2)
fxch st(2)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(2)
faddp st(1)
fld qword [0x8803d0]
fxch st(1)
fadd dword [esi + 0xfc]
fadd dword [esi + 0x100]
fadd dword [esi + 0x104]
fdivp st(1)
fstp dword [esi + 0xc4]
jmp 0x693c40
mov eax, dword [ebp + 0xa0e4]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x697c61
cmp al, 6
je 0x697c61
cmp al, 7
je 0x697c61
cmp al, 8
jne 0x693c40
lea esi, [ebp + 0xa0c4]
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov al, byte [eax + 8]
test al, al
jne 0x693c40
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov dword [esp + 0x1d0], eax
mov al, byte [esp + 0x224]
test al, al
jne 0x697cb8
mov edx, dword [ebp + 0x95f8]
mov al, 1
mov dword [0x849eb0], edx
fld dword [ebp + 0x95fc]
mov byte [esp + 0x224], al
jmp 0x697cc4
fld dword [0x849eb4]
mov edx, dword [0x849eb0]
fld dword [0x880484]
fld st(1)
fsubr st(1)
fld dword [ebx + ebp + 0x9690]
fmul st(1), st(0)
fld st(0)
fmul st(4)
mov esi, dword [ebx + ebp + 0x969c]
test esi, esi
jne 0x697d18
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x697d1e
fstp st(2)
fstp st(1)
fstp st(2)
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x697e0b
fld dword [0x880480]
test esi, esi
jne 0x697d48
fcom st(2)
fnstsw ax
sahf
jbe 0x697d48
fstp st(2)
fstp st(1)
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fsubp st(2)
fmulp st(1)
faddp st(1)
jmp 0x697e0b
fstp st(4)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(4)
fxch st(3)
fstp st(0)
fnstsw ax
sahf
jb 0x697db8
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x11c]
mov eax, dword [esp + 0x11c]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x120], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x11c]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x11c], esi
fld dword [esp + 0x11c]
fmul dword [0x88047c]
jmp 0x697e0b
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x11c]
mov eax, dword [esp + 0x11c]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x120], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x11c]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x11c], esi
fld dword [esp + 0x11c]
fmul dword [0x88047c]
fst dword [0x849eb4]
mov ecx, dword [esp + 0x1d0]
mov eax, dword [ecx]
add esp, 0xfffffff8
mov dword [esp], edx
fstp dword [esp + 4]
call dword [eax + 0x24]
mov eax, dword [ebp + 0xa0e4]
cmp eax, 0x1b
jne 0x693c40
fld dword [0x849eb4]
mov edi, dword [esp + 0x1d0]
fmul dword [0x880460]
fadd dword [0x880464]
fstp dword [0x85fae8]
mov esi, dword [0x85fae8]
and esi, 0x40000000
add esi, esi
sar esi, 0x1f
and esi, 0x7fffffff
mov dword [0x85faec], esi
xor esi, 0xffffffff
and esi, dword [0x85fae8]
mov dword [0x85fae8], esi
mov edx, dword [0x85faec]
and edx, 0x40000000
or esi, edx
mov dword [0x85fae8], esi
fld dword [0x88045c]
fadd dword [0x85fae8]
fmul dword [0x880458]
fst qword [esp + 0x1d8]
fst dword [edi + 0xdc]
fcomp qword [0x8803c8]
fnstsw ax
sahf
jbe 0x697ee8
fld qword [esp + 0x1d8]
fadd qword [0x8803b8]
fmul qword [0x880380]
fadd qword [0x880388]
fstp qword [esp + 0x1d8]
jmp 0x697efc
fld qword [esp + 0x1d8]
fmul qword [0x880390]
fstp qword [esp + 0x1d8]
fld qword [0x880370]
mov eax, edi
lea ecx, [esp + 0x124]
fld qword [esp + 0x1d8]
fmul st(1), st(0)
fld qword [0x880368]
faddp st(1)
fmulp st(1)
fadd qword [0x880378]
fstp dword [eax + 0xf4]
fld dword [eax + 0xcc]
fadd dword [eax + 0xd0]
fstp qword [esp + 0x1e0]
call fcn.00435a30
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1e0]
fadd qword [0x8803a8]
fmul qword [0x8803a0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, edi
fmul qword [0x880398]
fmul dword [edx + 0x114]
fld dword [edx + 0xf4]
mov edx, dword [edx + 0xf4]
fcom st(1)
fnstsw ax
sahf
jae 0x697f98
fstp st(1)
mov eax, edi
mov dword [eax + 0x74], edx
jmp 0x697f9f
fstp st(0)
mov eax, edi
fst dword [eax + 0x74]
fld qword [esp + 0x1d8]
fadd st(0)
fsubr qword [0x8803c0]
mov edx, dword [eax + 0xdc]
fstp dword [eax + 0x80]
fld dword [eax + 0xdc]
fsubr qword [0x880400]
fmul qword [0x8803f0]
fadd qword [0x8803f8]
fdivr dword [eax + 0xb0]
fadd qword [0x880400]
fsub dword [eax + 0xb0]
fst dword [eax + 0x100]
fld st(0)
fld qword [0x8803e8]
fadd st(1), st(0)
fld st(1)
fld dword [eax + 0xfc]
fadd st(2)
fmul st(1), st(0)
fld dword [0x880484]
fdiv dword [eax + 0x70]
fld st(0)
fmul st(7)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(3)
fld dword [eax + 0x104]
faddp st(4)
fxch st(3)
fmul st(4), st(0)
fmulp st(1)
fld dword [eax + 0x78]
fdivr st(6), st(0)
fmulp st(3)
fxch st(5)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(3)
faddp st(2)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(3)
faddp st(2)
fxch st(1)
fadd dword [eax + 0xfc]
faddp st(1)
fadd dword [eax + 0x104]
fdivr qword [0x8803d0]
fstp dword [eax + 0xc4]
mov dword [eax + 0xe8], edx
fld dword [0x849eb4]
fmul dword [0x880460]
fadd dword [0x880464]
fstp dword [0x85fae8]
mov edi, dword [0x85fae8]
and edi, 0x40000000
add edi, edi
sar edi, 0x1f
and edi, 0x7fffffff
mov dword [0x85faec], edi
xor edi, 0xffffffff
and edi, dword [0x85fae8]
mov dword [0x85fae8], edi
mov esi, dword [0x85faec]
and esi, 0x40000000
or edi, esi
mov dword [0x85fae8], edi
fld dword [0x88045c]
fadd dword [0x85fae8]
fmul dword [0x880458]
fst qword [esp + 0x1e0]
fst dword [eax + 0xe0]
fcomp qword [0x8803c8]
fnstsw ax
sahf
jbe 0x698118
fld qword [esp + 0x1e0]
fadd qword [0x8803b8]
fmul qword [0x880380]
fadd qword [0x880388]
fstp qword [esp + 0x1e0]
jmp 0x69812c
fld qword [esp + 0x1e0]
fmul qword [0x880390]
fstp qword [esp + 0x1e0]
fld qword [0x880370]
mov eax, dword [esp + 0x1d0]
lea ecx, [esp + 0x148]
fld qword [esp + 0x1e0]
fmul st(1), st(0)
fld qword [0x880368]
faddp st(1)
fmulp st(1)
fadd qword [0x880378]
fstp dword [eax + 0xf8]
fld dword [eax + 0xcc]
fadd dword [eax + 0xd0]
fadd dword [eax + 0xd4]
fstp qword [esp + 0x1d8]
call fcn.00435a30
fld qword [0x8803c0]
fstp qword [esp]
fld qword [esp + 0x1d8]
fadd qword [0x8803a8]
fmul qword [0x8803a0]
fstp qword [esp + 8]
call sub.MSVCRT.dll_pow
mov edx, dword [esp + 0x1d0]
fmul qword [0x880398]
fmul dword [edx + 0x114]
fst qword [esp + 0x1d8]
fld dword [edx + 0xf8]
mov edx, dword [edx + 0xf8]
fxch st(1)
fcomp st(1)
fnstsw ax
sahf
jbe 0x6981e8
fstp qword [esp + 0x1d8]
mov eax, dword [esp + 0x1d0]
mov dword [eax + 0x78], edx
jmp 0x6981fb
fstp st(0)
mov eax, dword [esp + 0x1d0]
fld qword [esp + 0x1d8]
fstp dword [eax + 0x78]
fld qword [esp + 0x1e0]
fadd st(0)
mov edx, eax
fsubr qword [0x8803c0]
mov eax, dword [edx + 0xe0]
fstp dword [edx + 0x84]
fld dword [edx + 0xe0]
fsubr qword [0x880400]
fmul qword [0x8803f0]
fadd qword [0x8803f8]
fdivr dword [edx + 0xb4]
fadd qword [0x880400]
fsub dword [edx + 0xb4]
fst dword [edx + 0x104]
fld qword [0x8803e8]
fld dword [edx + 0x74]
fld dword [edx + 0x100]
fadd st(2)
fld st(0)
fld dword [edx + 0xfc]
fadd st(4)
fmul st(1), st(0)
fld dword [0x880484]
fxch st(5)
fadd st(6)
fxch st(5)
fdiv dword [edx + 0x70]
fld st(0)
fmul st(5)
fmul qword [0x8803d8]
fxch st(4)
fmul st(6)
fxch st(2)
fmulp st(6)
fxch st(3)
fadd qword [0x8803e0]
fdivp st(2)
fld qword [esp + 0x1d8]
fdivr st(4), st(0)
fmulp st(3)
fxch st(3)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(3)
faddp st(2)
fmul qword [0x8803d8]
fadd qword [0x8803e0]
fdivp st(2)
faddp st(1)
fadd dword [edx + 0xfc]
fadd dword [edx + 0x100]
faddp st(1)
fdivr qword [0x8803d0]
fstp dword [edx + 0xc4]
mov dword [edx + 0xec], eax
jmp 0x693c40
mov eax, dword [ebp + 0xa0e4]
test eax, eax
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x698311
cmp al, 6
je 0x698311
cmp al, 7
je 0x698311
cmp al, 8
jne 0x693c40
lea esi, [ebp + 0xa0c4]
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov al, byte [eax + 8]
test al, al
jne 0x693c40
mov eax, dword [ebp + 0xa0c4]
mov ecx, esi
call dword [eax + 0xc]
mov ecx, eax
mov dl, byte [esp + 0x224]
test dl, dl
jne 0x698368
fld dword [ebp + 0x95f8]
mov esi, dword [ebp + 0x95fc]
mov dl, 1
mov dword [0x849eb4], esi
mov byte [esp + 0x224], dl
jmp 0x698374
mov esi, dword [0x849eb4]
fld dword [0x849eb0]
fld dword [0x880484]
fld st(1)
fsubr st(1)
fld dword [ebx + ebp + 0x9690]
fmul st(1), st(0)
fld st(0)
fmul st(4)
mov edx, dword [ebx + ebp + 0x969c]
test edx, edx
jne 0x6983c8
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x6983ce
fstp st(2)
fstp st(1)
fstp st(2)
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x6984be
fld dword [0x880480]
test edx, edx
jne 0x6983f8
fcom st(2)
fnstsw ax
sahf
jbe 0x6983f8
fstp st(2)
fstp st(1)
fstp st(1)
fld dword [ebx + ebp + 0x9694]
fsubp st(2)
fmulp st(1)
faddp st(1)
jmp 0x6984be
fstp st(4)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(4)
fxch st(3)
fstp st(0)
fnstsw ax
sahf
jb 0x698468
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x16c]
mov edx, dword [esp + 0x16c]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x170], edx
mov edi, edx
xor edi, 0xffffffff
and edi, dword [esp + 0x16c]
and edx, 0x40000000
or edi, edx
mov dword [esp + 0x16c], edi
fld dword [esp + 0x16c]
fmul dword [0x88047c]
jmp 0x6984be
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x16c]
mov edx, dword [esp + 0x16c]
and edx, 0x40000000
add edx, edx
sar edx, 0x1f
and edx, 0x7fffffff
mov dword [esp + 0x170], edx
mov edi, edx
xor edi, 0xffffffff
and edi, dword [esp + 0x16c]
and edx, 0x40000000
or edi, edx
mov dword [esp + 0x16c], edi
fld dword [esp + 0x16c]
fmul dword [0x88047c]
fst dword [0x849eb0]
mov edx, dword [ecx]
add esp, 0xfffffff8
fstp dword [esp]
mov dword [esp + 4], esi
call dword [edx + 0x24]
jmp 0x693c40
movzx eax, byte [ebx + ebp + 0x968c]
mov esi, eax
shl esi, 5
mov dword [esp + 0x200], eax
lea esi, [esi + eax*4]
lea edx, [ebp + esi]
mov edi, dword [edx + 0x9a24]
test edi, edi
je 0x693c40
lea ecx, [ebp + esi + 0x9a04]
mov eax, dword [esi + ebp + 0x9a04]
mov dword [esp + 0x1e8], ecx
call dword [eax + 0xc]
mov al, byte [eax + 6]
test al, al
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x69853f
cmp al, 6
je 0x69853f
cmp al, 7
je 0x69853f
cmp al, 8
jne 0x693c40
mov eax, dword [esi + ebp + 0x9a04]
mov ecx, dword [esp + 0x1e8]
call dword [eax + 0xc]
mov dword [esp + 0x1e8], eax
mov esi, dword [esp + 0x200]
mov al, byte [esp + esi + 0x10]
test al, al
jne 0x698598
mov edx, esi
imul edx, edx, 0x3bc
lea edi, [edx + 0x849fa0]
lea esi, [ebp + edx + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x200]
mov byte [esp + eax + 0x10], 1
jmp 0x6985a0
mov eax, esi
imul edx, eax, 0x3bc
fld dword [edx + 0x84a340]
fld st(0)
mov esi, dword [ebx + ebp + 0x969c]
fld dword [0x880484]
fsubr st(1), st(0)
test esi, esi
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x6985f8
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x6985fe
fstp st(2)
fstp st(1)
fstp st(1)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(1)
faddp st(1)
jmp 0x6986eb
fld dword [0x880480]
test esi, esi
jne 0x698628
fcom st(2)
fnstsw ax
sahf
jbe 0x698628
fstp st(2)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubp st(1)
fmulp st(1)
faddp st(1)
jmp 0x6986eb
fstp st(3)
fld dword [ebx + ebp + 0x9694]
fmul st(2), st(0)
fxch st(2)
fcomp st(3)
fxch st(2)
fstp st(0)
fnstsw ax
sahf
jb 0x698698
fstp st(1)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x174]
mov eax, dword [esp + 0x174]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x178], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x174]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x174], esi
fld dword [esp + 0x174]
fmul dword [0x88047c]
jmp 0x6986eb
fstp st(2)
fmulp st(1)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x174]
mov eax, dword [esp + 0x174]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x178], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x174]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x174], esi
fld dword [esp + 0x174]
fmul dword [0x88047c]
fst dword [edx + 0x84a340]
mov ecx, dword [esp + 0x1e8]
mov eax, dword [ecx]
push edi
fstp dword [esp]
call dword [eax + 0x64]
jmp 0x693c40
movzx eax, byte [ebx + ebp + 0x968c]
mov esi, eax
shl esi, 5
mov dword [esp + 0x200], eax
lea esi, [esi + eax*4]
lea edx, [ebp + esi]
mov edi, dword [edx + 0x9a24]
test edi, edi
je 0x693c40
lea ecx, [ebp + esi + 0x9a04]
mov eax, dword [esi + ebp + 0x9a04]
mov dword [esp + 0x1e8], ecx
call dword [eax + 0xc]
mov al, byte [eax + 5]
test al, al
je 0x693c40
mov al, byte [ebx + ebp + 0x9684]
cmp al, 5
je 0x69876f
cmp al, 6
je 0x69876f
cmp al, 7
je 0x69876f
cmp al, 8
jne 0x693c40
mov eax, dword [esi + ebp + 0x9a04]
mov ecx, dword [esp + 0x1e8]
call dword [eax + 0xc]
mov dword [esp + 0x1e8], eax
mov esi, dword [esp + 0x200]
mov al, byte [esp + esi + 0x10]
test al, al
jne 0x6987c8
mov edx, esi
imul edx, edx, 0x3bc
lea edi, [edx + 0x849fa0]
lea esi, [ebp + edx + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x200]
mov byte [esp + eax + 0x10], 1
jmp 0x6987d0
mov eax, esi
imul edx, eax, 0x3bc
fld dword [edx + 0x84a348]
fld st(0)
mov esi, dword [ebx + ebp + 0x969c]
fld dword [0x880484]
fsubr st(1), st(0)
test esi, esi
fld dword [ebx + ebp + 0x9690]
fmul st(2), st(0)
fld st(0)
fmul st(4)
jne 0x698828
fld dword [0x880480]
fcom st(2)
fnstsw ax
sahf
ja 0x69882e
fstp st(2)
fstp st(1)
fstp st(0)
fld dword [ebx + ebp + 0x9694]
fmulp st(2)
fxch st(2)
faddp st(1)
jmp 0x69891d
fld dword [0x880480]
test esi, esi
jne 0x698858
fcom st(2)
fnstsw ax
sahf
jbe 0x698858
fstp st(4)
fstp st(1)
fstp st(2)
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fxch st(2)
faddp st(1)
jmp 0x69891d
fld dword [ebx + ebp + 0x9694]
fmul st(3), st(0)
fxch st(3)
fcompp
fnstsw ax
sahf
jb 0x6988c8
fstp st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x17c]
mov eax, dword [esp + 0x17c]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x180], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x17c]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x17c], esi
fld dword [esp + 0x17c]
fmul dword [0x88047c]
jmp 0x69891d
fstp st(3)
fmulp st(2)
fxch st(2)
faddp st(1)
fadd st(0)
fstp dword [esp + 0x17c]
mov eax, dword [esp + 0x17c]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x180], eax
mov esi, eax
xor esi, 0xffffffff
and esi, dword [esp + 0x17c]
and eax, 0x40000000
or esi, eax
mov dword [esp + 0x17c], esi
fld dword [esp + 0x17c]
fmul dword [0x88047c]
fst dword [edx + 0x84a348]
mov edx, dword [esp + 0x1e8]
fst dword [edx + 0xa4]
fld dword [0x84dbe8]
fmulp st(1)
fadd dword [0x880250]
fcom dword [0x880454]
fnstsw ax
sahf
jae 0x698968
fcom dword [0x880450]
fnstsw ax
sahf
jbe 0x698968
fstp st(0)
jmp 0x6989e0
fld st(0)
fmul st(0)
fld st(1)
fmul st(1)
fld st(2)
fmul st(1)
fld st(3)
fmul st(1)
fld st(4)
fmul st(1)
fld st(5)
fmul st(1)
fxch st(1)
fstp qword [esp + 0x1f8]
fld st(5)
fmul st(1)
fxch st(7)
faddp st(6)
fld dword [0x88047c]
fmulp st(5)
fxch st(5)
faddp st(4)
fld dword [0x88044c]
fmulp st(3)
fxch st(3)
faddp st(2)
fld dword [0x880448]
fmulp st(1)
faddp st(1)
fld dword [0x880444]
fmulp st(2)
faddp st(1)
fld dword [0x880440]
fmul qword [esp + 0x1f8]
faddp st(1)
fld dword [0x88043c]
fmulp st(2)
fxch st(2)
fmul dword [0x880438]
faddp st(1)
faddp st(1)
mov ecx, edx
mov eax, dword [ecx]
push edi
fmul dword [0x880434]
fstp dword [esp]
call dword [eax + 0x5c]
jmp 0x693c40
movzx esi, byte [ebx + ebp + 0x968c]
mov eax, esi
shl eax, 5
mov dword [esp + 0x200], esi
lea eax, [eax + esi*4]
lea edi, [ebp + eax]
mov esi, dword [edi + 0x9a24]
test esi, esi
je 0x693c40
cmp edx, 0x29
je 0x698a45
mov dl, byte [ebx + ebp + 0x9684]
cmp dl, 5
je 0x698a45
cmp dl, 6
je 0x698a45
cmp dl, 7
je 0x698a45
cmp dl, 8
jne 0x693c40
lea ecx, [ebp + eax + 0x9a04]
mov eax, dword [eax + ebp + 0x9a04]
call dword [eax + 0xc]
mov dword [esp + 0x1e8], eax
mov esi, dword [esp + 0x200]
mov al, byte [esp + esi + 0x10]
test al, al
jne 0x698aa8
mov edx, esi
imul edx, edx, 0x3bc
lea edi, [edx + 0x849fa0]
mov dword [esp + 0x1d0], edi
lea esi, [ebp + edx + 0x528]
mov ecx, 0xef
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x200]
mov byte [esp + eax + 0x10], 1
jmp 0x698abd
mov edx, esi
imul edx, edx, 0x3bc
lea eax, [edx + 0x849fa0]
mov dword [esp + 0x1d0], eax
xor esi, esi
mov eax, dword [edx + 0x84a020]
test eax, eax
jle 0x698bc3
mov eax, dword [esp + 0x1d0]
lea ecx, [eax + esi*8]
nop
mov eax, dword [esp + 0x1d0]
mov edi, dword [ebx + ebp + 0x969c]
test edi, edi
fld dword [eax + esi*8 + 4]
jne 0x698b28
fld dword [ebx + ebp + 0x9690]
fcom dword [0x880480]
fnstsw ax
sahf
jb 0x698b2f
fld dword [0x880484]
fld dword [ebx + ebp + 0x9694]
fsubr st(1)
fmulp st(2)
fsubrp st(1)
fmulp st(1)
jmp 0x698bae
fld dword [ebx + ebp + 0x9690]
test edi, edi
jne 0x698b58
fcom dword [0x880480]
fnstsw ax
sahf
jae 0x698b58
fchs
fmul dword [ebx + ebp + 0x9694]
fld dword [0x880484]
fsubrp st(1)
fmulp st(1)
jmp 0x698bae
fmul dword [ebx + ebp + 0x9694]
fmulp st(1)
fadd st(0)
fstp dword [esp + 0x184]
mov eax, dword [esp + 0x184]
and eax, 0x40000000
add eax, eax
sar eax, 0x1f
and eax, 0x7fffffff
mov dword [esp + 0x188], eax
mov edi, eax
xor edi, 0xffffffff
and edi, dword [esp + 0x184]
and eax, 0x40000000
or edi, eax
mov dword [esp + 0x184], edi
fld dword [esp + 0x184]
fmul dword [0x88047c]
fstp dword [ecx + 4]
add ecx, 8
inc esi
mov eax, dword [edx + 0x84a020]
cmp esi, eax
jl 0x698ad8
cmp eax, 1
jne 0x693c40
mov eax, dword [edx + 0x84a334]
cmp eax, 2
je 0x698bf8
mov ecx, dword [esp + 0x1e8]
mov edx, dword [ecx]
push 1
mov eax, dword [esp + 0x1d4]
push dword [eax + esi*8 + 4]
call dword [edx + 0x10]
jmp 0x693c40
mov eax, dword [edx + 0x84a054]
cmp eax, 2
jne 0x698bd7
mov ecx, dword [esp + 0x1e8]
mov edx, dword [ecx]
add esp, 0xfffffff8
mov eax, dword [esp + 0x1d8]
fld dword [eax + esi*8 + 4]
fmul dword [0x880430]
fstp dword [esp]
mov byte [esp + 4], 1
call dword [edx + 0x10]
jmp 0x693c40