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

Disassembly:
sub esp, 0x35c
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], ebp
mov eax, 1
mov dword [0x64a008], eax
mov ecx, 0
mov dword [esp + 0x2c4], ecx
mov dword [esp + 0x2d8], ecx
mov edx, dword [0x64f528]
test edx, edx
je 0x46b608
mov eax, dword [esp + 0x360]
mov dword [esp], eax
mov ecx, dword [esp + 0x364]
mov dword [esp + 4], ecx
call fcn.0059e920
mov edx, 1
mov dword [esp + 0x2d8], edx
mov eax, 0
mov dword [0x64f528], eax
mov ecx, dword [0x64f4c0]
test ecx, ecx
jne 0x46fcea
mov edx, 0
mov dword [esp + 0x164], edx
mov edi, dword [esp + 0x360]
mov dword [esp], edi
mov esi, dword [esp + 0x364]
mov dword [esp + 4], esi
lea eax, [esp + 0x164]
mov dword [esp + 8], eax
call fcn.005e3af8
mov ecx, 1
mov dword [esp + 0x264], ecx
mov edx, 0x32
lea ebx, [esp + 0x264]
mov ebp, edx
nop
nop
nop
nop
mov eax, dword [esp + 0x264]
mov ecx, dword [eax*4 + 0x662950]
test ecx, ecx
je 0x46b696
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
call fcn.0046ffe0
mov edx, dword [0x64f4c0]
test edx, edx
jne 0x46fcea
mov eax, dword [esp + 0x264]
inc eax
mov dword [esp + 0x264], eax
dec ebp
jg 0x46b670
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.0047ceb0
test eax, eax
jne 0x46fcdf
mov ecx, dword [0x64f45c]
test ecx, ecx
je 0x46b6ec
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00456b50
test eax, eax
jne 0x46fcdf
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.005c2b60
test eax, eax
jne 0x46fcdf
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.0043d920
test eax, eax
jne 0x46fcdf
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.005c9c20
test eax, eax
jne 0x46fcdf
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00596d08
test eax, eax
jne 0x46fcdf
fld dword [0x6a17e8]
fst dword [esp + 0x260]
fst dword [esp + 0x194]
fst dword [esp + 0x19c]
fstp dword [0x64ec90]
mov dword [esp], edi
mov dword [esp + 4], esi
lea edx, [esp + 0x260]
mov dword [esp + 8], edx
lea ecx, [esp + 0x194]
mov dword [esp + 0xc], ecx
call fcn.004701f0
test eax, eax
jne 0x46fcdf
mov dword [esp], edi
mov dword [esp + 4], esi
lea edx, [esp + 0x2dc]
mov dword [esp + 8], edx
call fcn.00594498
fld dword [esp + 0x2dc]
fld dword [esp + 0x19c]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46b7c5
fstp dword [esp + 0x184]
jmp 0x46b7ce
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
mov ecx, dword [esp + 0x184]
mov dword [esp + 0x19c], ecx
mov dword [esp], edi
mov dword [esp + 4], esi
lea ecx, [esp + 0x2e0]
mov dword [esp + 8], ecx
call fcn.005c6120
fld dword [esp + 0x2e0]
fld dword [esp + 0x19c]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46b81c
fstp dword [esp + 0x184]
jmp 0x46b825
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
mov ecx, dword [esp + 0x184]
mov dword [esp + 0x19c], ecx
mov dword [esp], edi
mov dword [esp + 4], esi
lea edx, [esp + 0x2e4]
mov dword [esp + 8], edx
lea ecx, [esp + 0x2e8]
mov dword [esp + 0xc], ecx
call fcn.005b1970
fld dword [esp + 0x2e4]
fld dword [esp + 0x194]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46b87e
fstp dword [esp + 0x184]
jmp 0x46b887
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
fld dword [esp + 0x184]
fst dword [esp + 0x194]
fld dword [esp + 0x2e8]
fld dword [esp + 0x19c]
fucom st(1)
fxch st(2)
fnstsw ax
sahf
ja 0x46b8c0
fxch st(1)
fstp dword [esp + 0x184]
jmp 0x46b8cd
fstp st(1)
fxch st(1)
fst dword [esp + 0x184]
fxch st(1)
fstp st(1)
fld dword [esp + 0x184]
fst dword [esp + 0x19c]
fxch st(1)
fmul dword [0x64ec90]
fld dword [esp + 0x260]
fucom st(2)
fxch st(2)
fxch st(1)
fnstsw ax
sahf
ja 0x46b909
fxch st(1)
fstp dword [esp + 0x184]
jmp 0x46b916
fstp st(1)
fxch st(1)
fst dword [esp + 0x184]
fxch st(1)
fstp st(1)
fld dword [esp + 0x184]
fst dword [esp + 0x260]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46b93f
fstp dword [esp + 0x184]
jmp 0x46b948
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
mov eax, dword [esp + 0x184]
mov dword [esp + 0x260], eax
mov edx, 1
mov eax, 0x32
mov ecx, dword [0x64f19c]
mov dword [esp + 0x2d4], ecx
mov esi, dword [esp + 0x364]
fld dword [0x6a17e8]
mov ebx, dword [esp + 0x360]
mov dword [esp + 0x2d0], edx
mov dword [esp + 0x2ec], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x2d0]
mov edx, dword [ecx*4 + 0x662888]
test edx, edx
je 0x46b9fd
mov eax, 0
mov ecx, dword [esp + 0x2d0]
mov dword [ecx*4 + 0x662888], eax
mov edi, ecx
mov edx, dword [esp + 0x2d4]
mov ebp, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46b9fd
mov eax, dword [esi + ebp*4 + 8]
cmp eax, edi
jne 0x46b9f8
fst dword [ebx + ebp*4 + 0x2c]
mov ebp, dword [esi + ebp*4]
jmp 0x46b9e0
mov ecx, dword [esp + 0x2d0]
inc ecx
mov dword [esp + 0x2d0], ecx
mov edx, dword [esp + 0x2ec]
dec edx
mov dword [esp + 0x2ec], edx
jg 0x46b9a0
fstp st(0)
fld dword [0x6a1828]
fst dword [esp + 0x25c]
fst dword [0x64af10]
fst dword [0x64af14]
fld dword [0x6a17e8]
fst dword [0x64af2c]
mov eax, 0
mov dword [0x64af30], eax
mov dword [0x64af34], eax
mov dword [sym.imp.USER32.dll_ReleaseDC], eax
fxch st(1)
fst dword [0x64af38]
fst dword [0x64af24]
fxch st(1)
fst dword [0x64af28]
fxch st(1)
fst dword [0x64af20]
fxch st(1)
fst dword [esp + 0x268]
fstp dword [esp + 0x284]
mov dword [esp + 0x2cc], eax
mov dword [0x64af48], eax
mov dword [esp + 0x2b8], eax
fst dword [0x64af18]
fstp dword [0x64af1c]
mov ecx, 1
mov dword [esp + 0x1f4], ecx
mov edx, dword [esp + 0x2d4]
mov dword [0x64f198], edx
mov ecx, ebx
mov dword [esp + 0x178], ecx
mov edx, esi
mov dword [esp + 0x1e0], edx
mov ecx, dword [esp + 0x2d8]
mov dword [esp + 0x294], ecx
mov edx, eax
mov dword [esp + 0x2b4], edx
nop
nop
nop
nop
nop
mov eax, dword [0x64f198]
test eax, eax
je 0x46d8e1
mov ecx, dword [0x64f480]
test ecx, ecx
jne 0x46bc42
mov edx, dword [esp + 0x178]
mov dword [esp], edx
mov ecx, dword [esp + 0x1e0]
mov dword [esp + 4], ecx
lea edx, [0x64f198]
mov dword [esp + 8], edx
call fcn.00421300
test eax, eax
jne 0x46bc42
mov eax, dword [0x64f510]
test eax, eax
je 0x46bc18
lea ecx, [0x64cb00]
mov dword [0x64ce30], ecx
mov edx, 0x84
mov dword [0x64ce34], edx
mov ebx, 1
mov dword [0x64ce38], ebx
lea eax, [0x6a1b28]
mov dword [0x64ceac], eax
mov ecx, 0x4000208
mov dword [0x64ce18], ecx
mov ebp, 4
mov dword [0x64ce1c], ebp
lea edi, [0x64ce18]
mov dword [esp], edi
call fcn.0063d0a0
mov dword [0x64ce28], ebx
mov edx, 7
mov dword [0x64ce24], edx
mov dword [0x64ce20], ebp
mov dword [esp], edi
lea eax, [0x64f198]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], edi
call fcn.0063e1f0
mov ecx, 0
mov dword [esp + 0x164], ecx
mov dword [esp + 0x1b0], ecx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
lea edx, [esp + 0x164]
mov dword [esp + 8], edx
lea eax, [esp + 0x1b0]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [esp], esi
mov dword [esp + 4], ebx
call fcn.00588d90
mov ecx, dword [0x64f198]
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + ecx*4 - 4]
cmp eax, 3
je 0x46bc42
mov ecx, 3
mov dword [0x64f3dc], ecx
jmp 0x46fcdf
mov ebp, dword [esp + 0x178]
mov dword [esp], ebp
mov edi, dword [esp + 0x1e0]
mov dword [esp + 4], edi
lea edx, [0x64f198]
mov dword [esp + 8], edx
call fcn.005e4a58
mov ecx, dword [0x64f198]
mov edx, dword [edi + ecx*4 + 8]
mov dword [esp + 0x290], edx
mov edx, 0xd
mov dword [esp + 0x164], edx
shl ecx, 2
add ecx, dword [esp + 0x178]
lea ecx, [ecx - 4]
mov dword [esp], ecx
lea edx, [esp + 0x164]
mov dword [esp + 4], edx
call fcn.005e5570
fst dword [esp + 0x1b4]
mov ecx, 1
mov dword [esp + 0x1f8], ecx
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jae 0x46bcd3
mov edx, 0
mov dword [esp + 0x1f8], edx
mov edi, dword [0x64f198]
mov eax, dword [esp + 0x1e0]
mov ecx, dword [eax + edi*4 - 4]
cmp ecx, 3
jne 0x46bd60
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + edi*4 + 0x4c]
mov dword [esp + 0x274], eax
mov ecx, dword [edx + eax*4]
mov dword [esp + 0x174], ecx
fld dword [0x6a17e8]
mov ebp, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46bd57
mov edx, dword [esp + 0x178]
fld dword [edx + ebp*4 + 0x1c]
fucomp st(1)
fnstsw ax
sahf
ja 0x46bd4a
mov eax, 1
mov dword [esp + 0x1f8], eax
mov ecx, dword [esp + 0x1e0]
mov ebp, dword [ecx + ebp*4 - 4]
jmp 0x46bd20
fstp st(0)
mov dword [esp + 0x174], ebp
mov edx, dword [0x64f4ac]
test edx, edx
je 0x46becd
mov eax, dword [0x64f3c8]
test eax, eax
je 0x46bd9a
mov ecx, dword [esp + 0x1f8]
test ecx, ecx
jne 0x46bd9a
mov edx, dword [esp + 0x294]
test edx, edx
je 0x46becd
mov eax, dword [esp + 0x1e0]
mov ecx, dword [eax + edi*4 - 4]
cmp ecx, 3
jne 0x46be49
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + edi*4 + 0x4c]
mov dword [esp + 0x274], eax
mov ecx, dword [edx + eax*4]
mov dword [esp + 0x174], ecx
mov ebp, ecx
nop
nop
nop
nop
test ebp, ebp
je 0x46be42
mov edx, dword [esp + 0x178]
fld dword [edx + ebp*4 + 4]
fstp qword [esp + 0x298]
fld dword [edx + ebp*4 + 8]
fstp qword [esp + 0x2a0]
mov eax, ebp
shl eax, 2
add eax, dword [esp + 0x178]
lea ecx, [eax + 0x34]
mov dword [esp], ecx
lea edx, [esp + 0x298]
mov dword [esp + 4], edx
mov dword [esp + 0x68], eax
call fcn.005e55d0
mov eax, dword [esp + 0x68]
lea ecx, [eax + 0x3c]
mov dword [esp], ecx
lea edx, [esp + 0x2a0]
mov dword [esp + 4], edx
call fcn.005e55d0
mov eax, dword [esp + 0x1e0]
mov ebp, dword [eax + ebp*4 - 4]
jmp 0x46bdd0
mov dword [esp + 0x174], ebp
mov ecx, dword [0x64f198]
mov edx, dword [esp + 0x1e0]
mov edi, dword [edx + ecx*4 + 4]
mov esi, edx
mov ebp, edi
nop
nop
test ebp, ebp
je 0x46becd
mov eax, dword [esp + 0x178]
fld dword [eax + ebp*4 + 0xc]
fstp qword [esp + 0x298]
fld dword [eax + ebp*4 + 0x10]
fstp qword [esp + 0x2a0]
mov ecx, ebp
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx + 0x40]
mov dword [esp], edx
lea eax, [esp + 0x298]
mov dword [esp + 4], eax
mov dword [esp + 0x68], ecx
call fcn.005e55d0
mov ecx, dword [esp + 0x68]
lea edx, [ecx + 0x48]
mov dword [esp], edx
lea eax, [esp + 0x2a0]
mov dword [esp + 4], eax
call fcn.005e55d0
mov ebp, dword [esi + ebp*4 + 4]
cmp ebp, edi
jne 0x46be60
mov ecx, dword [0x64f198]
mov dword [esp + 0x2a8], ecx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
lea edx, [esp + 0x2a8]
mov dword [esp + 8], edx
lea ecx, [esp + 0x1b8]
mov dword [esp + 0xc], ecx
lea eax, [esp + 0x2ac]
mov dword [esp + 0x10], eax
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], edx
call fcn.00420cc0
mov dword [esp], esi
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 0xc], edx
mov ebp, dword [esp + 0x290]
mov eax, ebp
shl eax, 2
lea ecx, [0x65e6e8]
add ecx, eax
lea eax, [ecx - 4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x1b4]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x6c], ecx
call fcn.00426ba0
fld dword [esp + 0x1b4]
fmul dword [esp + 0x2ac]
fstp dword [esp + 0x2b0]
mov dword [esp], esi
mov dword [esp + 4], ebx
lea ecx, [0x64f198]
mov dword [esp + 8], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x2b0]
mov dword [esp + 0x14], ecx
lea edx, [0x64adc8]
mov dword [esp + 0x18], edx
lea eax, [0x64adcc]
mov dword [esp + 0x1c], eax
call fcn.00420150
mov eax, dword [0x6a1808]
mov dword [esp + 0x280], eax
mov edi, dword [0x64f198]
mov ecx, dword [ebx + edi*4 - 4]
cmp ecx, 3
je 0x46c03e
mov edx, dword [0x64af48]
inc edx
mov dword [0x64af48], edx
fld dword [0x6a17e8]
fst dword [esp + 0x27c]
fld dword [esp + 0x260]
fxch st(1)
fucomp st(1)
fnstsw ax
sahf
je 0x46c027
fld dword [esp + 0x1b4]
fdiv st(1)
fsqrt
fld dword [0x64ed7c]
fadd st(0)
fmulp st(1)
fstp dword [esp + 0x27c]
fstp st(0)
fld dword [esp + 0x284]
fadd dword [esp + 0x27c]
fstp dword [esp + 0x284]
mov eax, 0xf
mov dword [esp + 0x164], eax
mov ecx, edi
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp], edx
lea eax, [esp + 0x164]
mov dword [esp + 4], eax
lea ecx, [esp + 0x280]
mov dword [esp + 8], ecx
call fcn.005e55b0
mov edi, dword [0x64f198]
mov edx, dword [esp + 0x1e0]
mov eax, dword [edx + edi*4 - 4]
cmp eax, 3
jne 0x46d886
mov ecx, dword [esp + 0x2b4]
inc ecx
mov dword [esp + 0x2b4], ecx
mov edx, dword [esp + 0x2b4]
mov dword [esp + 0x2b8], edx
fld dword [ebp*4 + 0x65dcbc]
fld dword [ebp*4 + 0x65ffe4]
fld st(0)
fmul dword [0x6a1b5c]
fld dword [0x6a1b60]
fxch st(1)
fdiv dword [0x6a1b60]
fadd st(3)
fst dword [esp + 0x1d0]
mov eax, dword [0x64f520]
test eax, eax
fxch st(1)
fxch st(3)
fxch st(2)
je 0x46c12f
fld st(0)
fadd st(0)
fdiv st(4)
fsubr st(3)
fstp dword [esp + 0x2bc]
fld dword [0x6a17e8]
fucomp st(2)
fnstsw ax
sahf
je 0x46c12f
fld dword [esp + 0x1d0]
fld dword [esp + 0x2bc]
fmul st(0)
fdiv dword [esp + 0x1d0]
fsubp st(1)
fstp dword [esp + 0x1d0]
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
mov ecx, dword [esp + 0x1e0]
mov edx, dword [ecx + edi*4 + 0x4c]
mov dword [esp + 0x274], edx
mov eax, dword [ecx + edx*4 - 4]
mov edi, dword [ecx + edi*4 + 0xc]
mov dword [esp + 0x2c0], edi
mov ebp, eax
nop
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46ca41
mov ecx, dword [esp + 0x1e0]
mov esi, dword [ecx + ebp*4 + 0x28]
mov dword [0x64a728], esi
mov edx, 0
mov dword [esp + 0x1e4], edx
test esi, esi
je 0x46c792
mov ecx, 3
mov dword [0x64a72c], ecx
mov edx, dword [esp + 0x1e0]
mov ecx, dword [edx + esi*4 - 4]
mov dword [esp + 0x1e4], ecx
mov edx, esi
inc edx
mov dword [esp + 0x1e8], edx
lea ecx, [esp + 0x1e4]
mov dword [esp], ecx
call fcn.0045a628
test eax, eax
je 0x46c230
mov edx, 1
mov dword [0x64a72c], edx
mov ebx, dword [esp + 0x178]
mov dword [esp], ebx
mov esi, dword [esp + 0x1e0]
mov dword [esp + 4], esi
mov eax, dword [esp + 0x1e8]
shl eax, 2
add eax, dword [esp + 0x178]
lea edx, [eax - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.004120b0
mov ecx, 3
mov dword [0x64a72c], ecx
mov dword [esp], ebx
mov dword [esp + 4], esi
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.004120b0
jmp 0x46c753
mov eax, dword [esp + 0x1e4]
sar eax, 0x1f
mov ecx, eax
xor ecx, dword [esp + 0x1e4]
sub ecx, eax
mov dword [esp + 0x1e4], ecx
mov esi, ecx
dec esi
cmp esi, 0xc
ja case.0x46c258.1
jmp dword [esi*4 + 0x46c25f]
mov edx, dword [esp + 0x178]
mov dword [esp], edx
mov eax, dword [esp + 0x1e0]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x1e8]
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp + 8], edx
call fcn.0055b158
jmp 0x46c753
mov eax, dword [esp + 0x178]
mov dword [esp], eax
mov ecx, dword [esp + 0x1e0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x1e8]
shl edx, 2
add edx, dword [esp + 0x178]
lea eax, [edx - 4]
mov dword [esp + 8], eax
call fcn.004570c8
jmp 0x46c753
mov ecx, 1
mov dword [0x64a72c], ecx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x1e8]
shl edx, 2
add edx, dword [esp + 0x178]
lea edx, [edx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.0045a778
mov eax, 3
mov dword [0x64a72c], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
call fcn.0045a778
jmp 0x46c753
mov edx, 1
mov dword [0x64a72c], edx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x1e8]
shl eax, 2
add eax, dword [esp + 0x178]
lea edx, [eax - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.004570d8
mov ecx, 3
mov dword [0x64a72c], ecx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.004570d8
jmp 0x46c753
mov eax, 1
mov dword [0x64a72c], eax
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x1e8]
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.00457a98
mov edx, 3
mov dword [0x64a72c], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
call fcn.00457a98
jmp 0x46c753
mov ecx, 1
mov dword [0x64a72c], ecx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x1e8]
shl edx, 2
add edx, dword [esp + 0x178]
lea edx, [edx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.0045bca8
mov eax, 3
mov dword [0x64a72c], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
call fcn.0045bca8
jmp 0x46c753
mov edx, 1
mov dword [0x64a72c], edx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x1e8]
shl eax, 2
add eax, dword [esp + 0x178]
lea edx, [eax - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.00458488
mov ecx, 3
mov dword [0x64a72c], ecx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.00458488
jmp 0x46c753
mov eax, 1
mov dword [0x64a72c], eax
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x1e8]
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.0045d838
mov edx, 3
mov dword [0x64a72c], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
call fcn.0045d838
jmp 0x46c753
mov ecx, 1
mov dword [0x64a72c], ecx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x1e8]
shl edx, 2
add edx, dword [esp + 0x178]
lea edx, [edx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.00459398
mov eax, 3
mov dword [0x64a72c], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
call fcn.00459398
jmp 0x46c753
mov edx, 1
mov dword [0x64a72c], edx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x1e8]
shl eax, 2
add eax, dword [esp + 0x178]
lea edx, [eax - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.0045de88
mov ecx, 3
mov dword [0x64a72c], ecx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.0045de88
jmp 0x46c753
mov eax, 1
mov dword [0x64a72c], eax
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x1e8]
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.0045fa38
mov edx, 3
mov dword [0x64a72c], edx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
call fcn.0045fa38
jmp 0x46c753
mov ecx, 1
mov dword [0x64a72c], ecx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x1e8]
shl edx, 2
add edx, dword [esp + 0x178]
lea edx, [edx - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.00462298
mov eax, 3
mov dword [0x64a72c], eax
mov dword [esp], esi
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
call fcn.00462298
jmp 0x46c753
mov edx, 1
mov dword [0x64a72c], edx
mov esi, dword [esp + 0x178]
mov dword [esp], esi
mov ebx, dword [esp + 0x1e0]
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x1e8]
shl eax, 2
add eax, dword [esp + 0x178]
lea edx, [eax - 4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.00459ef8
mov ecx, 3
mov dword [0x64a72c], ecx
mov dword [esp], esi
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.00459ef8
fld dword [0x64a730]
fld dword [esp + 0x1d0]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46c779
fstp dword [esp + 0x184]
jmp 0x46c782
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
mov eax, dword [esp + 0x184]
mov dword [esp + 0x1d0], eax
mov eax, dword [0x64f3c8]
test eax, eax
jne 0x46ca31
mov ecx, dword [esp + 0x178]
fld dword [ecx + ebp*4 + 0xc]
mov edx, dword [ecx + ebp*4 + 0x14]
mov dword [esp + 0x1ec], edx
mov edx, dword [ecx + ebp*4 + 0x2c]
mov dword [esp + 0x1f0], edx
fld dword [0x6a17e8]
fxch st(1)
fucomp st(1)
fnstsw ax
sahf
jne 0x46c7f4
fld dword [esp + 0x1ec]
fucomp st(1)
fnstsw ax
sahf
fstp dword [esp + 0xd8]
je 0x46ca31
fld dword [esp + 0xd8]
fstp st(0)
cmp edi, 3
je 0x46c82a
mov esi, dword [esp + 0x1e4]
cmp esi, 3
je 0x46c82a
cmp esi, 5
je 0x46c82a
cmp esi, 6
je 0x46c82a
cmp esi, 7
jne 0x46ca31
fld dword [0x6a17e8]
fld dword [esp + 0x1f0]
fucompp
fnstsw ax
sahf
jne 0x46ca31
mov edx, dword [esp + 0x1f4]
test edx, edx
je 0x46ca31
mov ebx, 0
mov dword [esp + 0x1f4], ebx
lea esi, [0x64cb00]
mov dword [0x64ce30], esi
mov edx, 0x84
mov dword [0x64ce34], edx
mov ecx, 1
mov dword [0x64ce38], ecx
lea eax, [0x6a1b64]
mov dword [0x64ceac], eax
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov eax, 4
mov dword [0x64ce1c], eax
lea eax, [0x64ce18]
mov dword [esp], eax
mov dword [esp + 0x68], eax
call fcn.0063d0a0
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063e1f0
mov dword [esp + 0x164], ebx
mov dword [esp + 0x1b0], ebx
mov edx, dword [esp + 0x178]
mov dword [esp], edx
mov ecx, dword [esp + 0x1e0]
mov dword [esp + 4], ecx
lea eax, [esp + 0x164]
mov dword [esp + 8], eax
mov dword [esp + 0x6c], edx
lea edx, [esp + 0x1b0]
mov dword [esp + 0xc], edx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
call fcn.00588550
mov dword [0x64ce30], esi
mov edx, 0x84
mov dword [0x64ce34], edx
mov eax, 1
mov dword [0x64ce38], eax
lea ecx, [0x6a1b9c]
mov dword [0x64ceac], ecx
mov ecx, 0x4000208
mov dword [0x64ce18], ecx
mov ecx, 4
mov dword [0x64ce1c], ecx
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063d0a0
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063e1f0
mov dword [esp + 0x164], ebx
mov dword [esp + 0x1b0], ebx
mov edx, dword [esp + 0x6c]
mov dword [esp], edx
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x78]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [0x64ce30], esi
mov eax, 0x84
mov dword [0x64ce34], eax
mov ecx, 1
mov dword [0x64ce38], ecx
lea edx, [0x6a1bd4]
mov dword [0x64ceac], edx
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov ecx, 4
mov dword [0x64ce1c], ecx
mov edx, dword [esp + 0x68]
mov dword [esp], edx
call fcn.0063d0a0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call fcn.0063e1f0
mov dword [esp + 0x164], ebx
mov dword [esp + 0x1b0], ebx
mov ecx, dword [esp + 0x6c]
mov dword [esp], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x78]
mov dword [esp + 0xc], ebx
call fcn.00588550
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ecx, dword [esp + 0x74]
mov dword [esp + 4], ecx
call fcn.00588d90
mov edx, dword [esp + 0x1e0]
mov ebp, dword [edx + ebp*4 - 4]
jmp 0x46c160
fld dword [0x6a17e8]
fld dword [esp + 0x1d0]
fucompp
fnstsw ax
sahf
jne 0x46cb07
mov eax, dword [esp + 0x2c0]
test eax, eax
jne 0x46caf7
mov ecx, dword [esp + 0x2c4]
test ecx, ecx
jne 0x46ca9a
mov edx, dword [esp + 0x178]
mov dword [esp], edx
mov ecx, dword [esp + 0x1e0]
mov dword [esp + 4], ecx
call fcn.004695a0
mov edx, eax
mov dword [esp + 0x2c4], edx
mov ebp, dword [esp + 0x2c4]
test ebp, ebp
jle 0x46cae7
mov eax, dword [0x64f198]
mov ecx, dword [esp + 0x1e0]
mov dword [ecx + eax*4 + 8], ebp
mov dword [esp + 0x290], ebp
fld dword [ebp*4 + 0x65ffe4]
fmul dword [0x6a1b5c]
fdiv dword [0x6a1b60]
fadd dword [ebp*4 + 0x65dcbc]
fstp dword [esp + 0x1d0]
jmp 0x46cb07
mov edx, 0x38
mov dword [0x64f3dc], edx
jmp 0x46fcdf
mov eax, 0x38
mov dword [0x64f3dc], eax
jmp 0x46fcdf
mov ecx, dword [0x64f198]
mov ebx, dword [esp + 0x364]
mov edx, dword [ebx + ecx*4 + 0x4c]
mov dword [esp + 0x2c8], edx
mov dword [esp + 0x274], edx
mov eax, dword [ebx + edx*4]
mov dword [esp + 0x174], eax
mov edi, dword [esp + 0x1f8]
mov esi, ebx
mov ebp, eax
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46cbe5
test edi, edi
je 0x46cb96
mov ecx, 9
mov dword [esp + 0x164], ecx
mov eax, dword [0x6a17e8]
mov dword [esp + 0x184], eax
mov edx, ebp
shl edx, 2
add edx, dword [esp + 0x178]
lea eax, [edx - 4]
mov dword [esp], eax
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
lea edx, [esp + 0x184]
mov dword [esp + 8], edx
call fcn.005e55b0
mov eax, dword [0x6a17e8]
mov dword [esp + 0x160], eax
mov eax, 0xa
mov dword [esp + 0x164], eax
mov ecx, ebp
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp], edx
lea eax, [esp + 0x164]
mov dword [esp + 4], eax
lea ecx, [esp + 0x160]
mov dword [esp + 8], ecx
call fcn.005e55b0
mov ebp, dword [esi + ebp*4 - 4]
jmp 0x46cb40
mov dword [esp + 0x174], ebp
mov edx, dword [esp + 0x2c8]
mov eax, dword [ebx + edx*4 - 4]
mov dword [esp + 0x1a0], eax
mov ebp, ebx
mov ecx, dword [esp + 0x1a0]
test ecx, ecx
je 0x46d3b4
mov edx, 1
mov dword [esp + 0x164], edx
mov ebx, dword [esp + 0x178]
mov dword [esp], ebx
mov dword [esp + 4], ebp
lea edx, [esp + 0x1a0]
mov dword [esp + 8], edx
lea ecx, [esp + 0x164]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], edx
call fcn.005e5440
mov edx, eax
mov ecx, 2
mov dword [esp + 0x164], ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov ecx, dword [esp + 0x6c]
mov dword [esp + 8], ecx
mov esi, dword [esp + 0x68]
mov dword [esp + 0xc], esi
mov dword [esp + 0x70], edx
call fcn.005e5440
mov edx, eax
mov ecx, 3
mov dword [esp + 0x164], ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov ebx, dword [esp + 0x6c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x6c], edx
call fcn.005e5440
mov ebx, eax
mov ecx, 3
mov dword [esp + 0x164], ecx
mov edx, dword [esp + 0x70]
shl edx, 2
add edx, dword [esp + 0x178]
lea esi, [edx - 4]
mov dword [esp], esi
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
call fcn.005e5570
fstp dword [0x64ada8]
mov edx, 4
mov dword [esp + 0x164], edx
mov dword [esp], esi
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
call fcn.005e5570
fstp dword [0x64adac]
mov edx, 3
mov dword [esp + 0x164], edx
mov ecx, dword [esp + 0x6c]
shl ecx, 2
add ecx, dword [esp + 0x178]
lea ecx, [ecx - 4]
mov dword [esp + 0x1a4], ecx
mov dword [esp], ecx
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
mov dword [esp + 0x6c], ecx
call fcn.005e5570
fstp dword [0x64adb0]
mov ecx, 4
mov dword [esp + 0x164], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
call fcn.005e5570
fstp dword [0x64adb4]
mov ecx, 3
mov dword [esp + 0x164], ecx
shl ebx, 2
add ebx, dword [esp + 0x178]
lea ebx, [ebx - 4]
mov dword [esp + 0x1a8], ebx
mov dword [esp], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
call fcn.005e5570
fstp dword [0x64adb8]
mov ecx, 4
mov dword [esp + 0x164], ecx
mov dword [esp], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
call fcn.005e5570
fst dword [0x64adbc]
fld dword [0x64ada8]
fld dword [0x64adb0]
fsub dword [0x64ada8]
fld dword [0x64adb4]
fadd dword [0x64adac]
fmulp st(1)
fld dword [0x64adb8]
fsub dword [0x64adb0]
fld st(3)
fadd dword [0x64adb4]
fmulp st(1)
faddp st(1)
fxch st(1)
fsub dword [0x64adb8]
fxch st(2)
fadd dword [0x64adac]
fmulp st(2)
faddp st(1)
fmul dword [0x6a17ec]
fst dword [esp + 0x1ac]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jb 0x46cf21
mov eax, 0xa0
mov dword [0x64f3dc], eax
lea ecx, [0x64cb00]
mov dword [0x64ce30], ecx
mov edx, 0x84
mov dword [0x64ce34], edx
mov edi, 1
mov dword [0x64ce38], edi
lea eax, [0x6a1c0c]
mov dword [0x64ceac], eax
mov ecx, 0x4000208
mov dword [0x64ce18], ecx
mov esi, 4
mov dword [0x64ce1c], esi
lea ebx, [0x64ce18]
mov dword [esp], ebx
call fcn.0063d0a0
mov dword [0x64ce28], edi
mov edx, 7
mov dword [0x64ce24], edx
mov dword [0x64ce20], esi
mov dword [esp], ebx
lea eax, [0x64f198]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], ebx
lea ecx, [esp + 0x1a0]
mov dword [esp + 4], ecx
call fcn.0063d590
mov edx, 9
mov dword [0x64ce24], edx
mov dword [esp], ebx
lea eax, [esp + 0x1ac]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], ebx
call fcn.0063e1f0
mov ecx, 0
mov dword [esp + 0x164], ecx
mov dword [esp + 0x1b0], ecx
mov edx, dword [esp + 0x178]
mov dword [esp], edx
mov dword [esp + 4], ebp
lea eax, [esp + 0x164]
mov dword [esp + 8], eax
lea ecx, [esp + 0x1b0]
mov dword [esp + 0xc], ecx
call fcn.00588550
jmp 0x46fcdf
fld dword [esp + 0x1b4]
fmul dword [esp + 0x1ac]
fdiv dword [esp + 0x1b8]
fstp dword [esp + 0x1bc]
mov edx, dword [esp + 0x1a0]
mov dword [esp + 0x1c0], edx
mov ebx, dword [ebp + edx*4 + 0x34]
cmp ebx, 1
jl 0x46cf75
cmp ebx, 4
jg 0x46cf75
fld dword [esp + 0x1bc]
fmul dword [0x6a17ec]
fstp dword [esp + 0x1bc]
mov eax, dword [0x64f458]
test eax, eax
je 0x46cfb0
fld dword [0x64ada8]
fadd dword [0x64adb0]
fadd dword [0x64adb8]
fdiv dword [0x6a1b60]
fst dword [esp + 0x1c4]
fmul dword [esp + 0x1bc]
fstp dword [esp + 0x1bc]
test edi, edi
je 0x46cff6
mov ecx, 8
mov dword [esp + 0x164], ecx
mov edx, dword [esp + 0x1c0]
shl edx, 2
add edx, dword [esp + 0x178]
lea eax, [edx - 4]
mov dword [esp], eax
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
lea edx, [esp + 0x1bc]
mov dword [esp + 8], edx
call fcn.005e55b0
mov eax, dword [0x6a1808]
mov dword [esp + 0x1c8], eax
mov eax, dword [0x64f56c]
test eax, eax
je 0x46d03c
fld dword [0x6a17e8]
fld dword [0x64efd4]
fucompp
fnstsw ax
sahf
je 0x46d03c
fld dword [esp + 0x1bc]
fdiv dword [0x64efd4]
fstp dword [esp + 0x1c8]
fld dword [0x64adb8]
fld dword [0x64adb0]
fsub dword [0x64adb8]
fmul st(0)
fld dword [0x64adbc]
fld dword [0x64adb4]
fsub dword [0x64adbc]
fmul st(0)
faddp st(2)
fxch st(1)
fsqrt
fld dword [0x64ada8]
fxch st(3)
fsub dword [0x64ada8]
fmul st(0)
fld dword [0x64adac]
fxch st(3)
fsub dword [0x64adac]
fmul st(0)
faddp st(1)
fsqrt
fxch st(3)
fsub dword [0x64adb0]
fmul st(0)
fxch st(2)
fsub dword [0x64adb4]
fmul st(0)
faddp st(2)
fxch st(1)
fsqrt
fxch st(2)
fucom st(2)
fxch st(1)
fnstsw ax
sahf
ja 0x46d0c7
fxch st(2)
fstp dword [esp + 0x1cc]
fxch st(1)
jmp 0x46d0d2
fstp st(2)
fst dword [esp + 0x1cc]
fxch st(1)
fstp st(1)
fld dword [esp + 0x1cc]
fxch st(1)
fucom st(1)
fnstsw ax
sahf
ja 0x46d0f6
fxch st(1)
fstp dword [esp + 0x184]
jmp 0x46d0ff
fstp st(1)
fst dword [esp + 0x184]
fstp st(0)
fld dword [esp + 0x184]
fld st(0)
fmul dword [0x6a17ec]
fmul dword [esp + 0x184]
fld dword [esp + 0x1ac]
fxch st(1)
fdiv dword [esp + 0x1ac]
fld dword [esp + 0x1d0]
fxch st(1)
fmul dword [esp + 0x1d0]
fmul dword [0x6a1c48]
fstp dword [esp + 0x1d4]
mov ecx, dword [0x64f458]
test ecx, ecx
fxch st(2)
je 0x46d169
fld dword [esp + 0x1d4]
fmul dword [esp + 0x1c4]
fstp dword [esp + 0x1d4]
fxch st(1)
fsqrt
fdivrp st(1)
fld dword [esp + 0x1bc]
fld st(0)
fdiv dword [esp + 0x1c8]
fdivrp st(3)
fxch st(2)
fsqrt
fxch st(1)
fmul dword [0x64ed90]
fmulp st(1)
mov edx, dword [0x64af30]
inc edx
mov dword [0x64af30], edx
fld st(0)
fadd dword [0x64af2c]
fstp dword [0x64af2c]
fld dword [0x64af10]
fucom st(1)
fxch st(2)
fxch st(1)
fnstsw ax
sahf
jb 0x46d1cb
fstp dword [esp + 0x184]
jmp 0x46d1d8
fstp st(0)
fxch st(1)
fst dword [esp + 0x184]
fxch st(1)
fstp st(1)
mov eax, dword [esp + 0x184]
mov dword [0x64af10], eax
fdiv dword [0x6a1b60]
fstp dword [esp + 0x1d8]
test edi, edi
je 0x46d27a
mov ebx, 9
mov dword [esp + 0x164], ebx
mov dword [esp], esi
lea edx, [esp + 0x164]
mov dword [esp + 4], edx
lea ecx, [esp + 0x1d8]
mov dword [esp + 8], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], edx
call fcn.005e5590
mov dword [esp + 0x164], ebx
mov eax, dword [esp + 0x1a4]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.005e5590
mov dword [esp + 0x164], ebx
mov eax, dword [esp + 0x1a8]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.005e5590
mov eax, dword [0x64f56c]
test eax, eax
je 0x46d32b
fld dword [0x6a17e8]
fld dword [0x64efd4]
fucompp
fnstsw ax
sahf
je 0x46d32b
fld dword [esp + 0x1d8]
fdiv dword [esp + 0x1c8]
fstp dword [esp + 0x1dc]
mov ebx, 0xa
mov dword [esp + 0x164], ebx
mov dword [esp], esi
lea esi, [esp + 0x164]
mov dword [esp + 4], esi
lea edx, [esp + 0x1dc]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.005e5590
mov dword [esp + 0x164], ebx
mov ecx, dword [esp + 0x1a4]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.005e5590
mov dword [esp + 0x164], ebx
mov eax, dword [esp + 0x1a8]
mov dword [esp], eax
mov dword [esp + 4], esi
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
call fcn.005e5590
jmp 0x46d39d
mov ebx, 0xa
mov dword [esp + 0x164], ebx
mov dword [esp], esi
lea esi, [esp + 0x164]
mov dword [esp + 4], esi
lea edx, [esp + 0x1d4]
mov dword [esp + 8], edx
mov dword [esp + 0x68], edx
call fcn.005e5590
mov dword [esp + 0x164], ebx
mov edx, dword [esp + 0x1a4]
mov dword [esp], edx
mov dword [esp + 4], esi
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
call fcn.005e5590
mov dword [esp + 0x164], ebx
mov ecx, dword [esp + 0x1a8]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.005e5590
mov eax, dword [esp + 0x1c0]
mov ecx, dword [ebp + eax*4 - 4]
mov dword [esp + 0x1a0], ecx
jmp 0x46cc00
mov edx, dword [0x64f56c]
test edx, edx
je 0x46d3d9
fld dword [0x6a17e8]
fld dword [0x64efd4]
fucompp
fnstsw ax
sahf
jne 0x46d886
mov eax, dword [0x64f198]
mov edi, dword [esp + 0x364]
mov ebx, dword [edi + eax*4 + 4]
mov edx, dword [esp + 0x178]
mov dword [esp], edx
mov dword [esp + 4], edi
mov ecx, ebx
shl ecx, 2
add ecx, dword [esp + 0x178]
lea eax, [ecx - 4]
mov dword [esp + 8], eax
lea ecx, [0x64ada8]
mov dword [esp + 0xc], ecx
lea eax, [0x64adac]
mov dword [esp + 0x10], eax
mov dword [esp + 0x68], edx
call fcn.0041d3f0
mov esi, dword [edi + ebx*4 + 4]
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov edx, esi
shl edx, 2
add edx, dword [esp + 0x178]
lea eax, [edx - 4]
mov dword [esp + 8], eax
lea edx, [0x64adb0]
mov dword [esp + 0xc], edx
lea eax, [0x64adb4]
mov dword [esp + 0x10], eax
call fcn.0041d3f0
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
mov dword [esp + 4], edi
call fcn.005e5240
mov eax, dword [0x64add8]
mov dword [esp + 0x190], eax
mov eax, dword [0x64adb0]
mov dword [0x64ada8], eax
mov eax, dword [0x64adb4]
mov dword [0x64adac], eax
mov ebp, esi
nop
nop
nop
nop
nop
nop
mov edx, ebp
mov dword [esp + 0x188], edx
mov ebp, dword [edi + edx*4 + 4]
mov ebx, dword [esp + 0x178]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov ecx, ebp
shl ecx, 2
add ecx, dword [esp + 0x178]
lea edx, [ecx - 4]
mov dword [esp + 8], edx
lea ecx, [0x64adb0]
mov dword [esp + 0xc], ecx
lea edx, [0x64adb4]
mov dword [esp + 0x10], edx
call fcn.0041d3f0
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.005e5240
mov ecx, dword [0x64add8]
mov dword [esp + 0x18c], ecx
fld dword [esp + 0x190]
fadd dword [0x64add8]
fld dword [0x64ec8c]
fmul dword [0x6a1b5c]
fxch st(1)
fucom st(1)
fnstsw ax
sahf
ja 0x46d534
fxch st(1)
fstp dword [esp + 0x184]
jmp 0x46d53d
fstp st(1)
fst dword [esp + 0x184]
fstp st(0)
fld dword [esp + 0x194]
fmul dword [esp + 0x184]
fst dword [esp + 0x198]
fld dword [esp + 0x19c]
fld dword [0x6a17e8]
fucomp st(1)
fxch st(1)
fnstsw ax
sahf
je 0x46d59e
fucom st(1)
fnstsw ax
sahf
ja 0x46d589
fxch st(1)
fst dword [esp + 0x184]
fxch st(1)
jmp 0x46d590
fst dword [esp + 0x184]
mov eax, dword [esp + 0x184]
mov dword [esp + 0x198], eax
fstp st(1)
fstp st(0)
mov eax, dword [0x64f458]
test eax, eax
je 0x46d5c4
fld dword [esp + 0x198]
fmul dword [0x64ada8]
fstp dword [esp + 0x198]
mov ecx, dword [esp + 0x188]
mov ebx, dword [edi + ecx*4 + 0x28]
mov edx, 0xa
mov dword [esp + 0x164], edx
mov eax, ebx
shl eax, 2
add eax, dword [esp + 0x178]
lea ecx, [eax - 4]
mov dword [esp], ecx
lea edx, [esp + 0x164]
mov dword [esp + 4], edx
lea eax, [esp + 0x198]
mov dword [esp + 8], eax
call fcn.005e5590
mov eax, dword [esp + 0x18c]
mov dword [esp + 0x190], eax
mov eax, dword [0x64adb0]
mov dword [0x64ada8], eax
mov eax, dword [0x64adb4]
mov dword [0x64adac], eax
cmp ebp, esi
jne 0x46d4a0
mov dword [esp + 0x174], ebx
mov ecx, dword [esp + 0x274]
mov edx, dword [edi + ecx*4]
mov dword [esp + 0x174], edx
mov ebp, dword [esp + 0x2cc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, dword [esp + 0x174]
test esi, esi
je 0x46d87f
mov ecx, 9
mov dword [esp + 0x164], ecx
mov edx, esi
shl edx, 2
add edx, dword [esp + 0x178]
lea esi, [edx - 4]
mov dword [esp], esi
lea ebx, [esp + 0x164]
mov dword [esp + 4], ebx
call fcn.005e5570
fstp dword [esp + 0x17c]
mov ecx, 0xa
mov dword [esp + 0x164], ecx
mov dword [esp], esi
mov dword [esp + 4], ebx
call fcn.005e5570
fld dword [esp + 0x17c]
fdivrp st(1)
fsqrt
fld dword [0x64ed90]
fadd st(0)
fmulp st(1)
fst dword [esp + 0x180]
fld dword [0x64af20]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
jb 0x46d6f7
fst dword [esp + 0x184]
jmp 0x46d702
fxch st(1)
fst dword [esp + 0x184]
fxch st(1)
fstp st(1)
mov ecx, dword [esp + 0x184]
mov dword [0x64af20], ecx
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jne 0x46d852
mov edx, dword [0x64c29c]
test edx, edx
je 0x46d852
mov esi, 0xc
mov dword [0x64ce30], esi
lea eax, [0x6a1c4c]
mov dword [0x64ceac], eax
mov ebx, 0x4000208
mov dword [0x64ce18], ebx
mov edx, 8
mov dword [0x64ce1c], edx
lea ecx, [0x64ce18]
mov dword [esp], ecx
mov dword [esp + 0x68], ecx
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov ecx, 7
mov dword [0x64ce24], ecx
mov ecx, 4
mov dword [0x64ce20], ecx
mov eax, dword [esp + 0x68]
mov dword [esp], eax
lea eax, [0x64f3c8]
mov dword [esp + 4], eax
call fcn.0063d590
mov edx, dword [esp + 0x68]
mov dword [esp], edx
lea eax, [esp + 0x174]
mov dword [esp + 4], eax
call fcn.0063d590
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063e1f0
mov dword [0x64ce30], esi
lea edx, [0x6a1c68]
mov dword [0x64ceac], edx
mov dword [0x64ce18], ebx
mov eax, 8
mov dword [0x64ce1c], eax
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov eax, 9
mov dword [0x64ce24], eax
mov ecx, 4
mov dword [0x64ce20], ecx
mov edx, dword [esp + 0x68]
mov dword [esp], edx
lea eax, [esp + 0x17c]
mov dword [esp + 4], eax
call fcn.0063d590
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
lea edx, [0x64ed90]
mov dword [esp + 4], edx
call fcn.0063d590
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call fcn.0063e1f0
fld dword [esp + 0x268]
fadd dword [esp + 0x180]
fstp dword [esp + 0x268]
inc ebp
mov ecx, dword [esp + 0x174]
mov edx, dword [edi + ecx*4 - 4]
mov dword [esp + 0x174], edx
jmp 0x46d660
mov dword [esp + 0x2cc], ebp
fld dword [esp + 0x25c]
fld dword [esp + 0x1b4]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
jb 0x46d8ad
fstp dword [esp + 0x184]
jmp 0x46d8b6
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
mov eax, dword [esp + 0x184]
mov dword [esp + 0x25c], eax
mov eax, dword [0x64f198]
mov ecx, dword [esp + 0x364]
mov edx, dword [ecx + eax*4]
mov dword [0x64f198], edx
jmp 0x46baf0
mov eax, dword [0x64af30]
test eax, eax
je 0x46d903
fld dword [0x64af2c]
fild dword [0x64af30]
fdivp st(1)
fstp dword [0x64af2c]
mov ebp, dword [esp + 0x2cc]
test ebp, ebp
je 0x46d929
fld dword [esp + 0x268]
fild dword [esp + 0x2cc]
fdivp st(1)
fstp dword [esp + 0x268]
mov ecx, dword [0x64af48]
test ecx, ecx
je 0x46d94d
fld dword [esp + 0x284]
fild dword [0x64af48]
fdivp st(1)
fstp dword [esp + 0x284]
mov edx, dword [0x64f19c]
mov dword [0x64f198], edx
mov esi, dword [esp + 0x364]
mov ebx, dword [esp + 0x360]
mov eax, ebp
mov dword [esp + 0x28c], eax
mov ebp, dword [0x64f198]
test ebp, ebp
je 0x46de1c
mov ecx, dword [esi + ebp*4 - 4]
cmp ecx, 3
je 0x46db17
mov edx, 0xd
mov dword [esp + 0x164], edx
mov ecx, ebp
shl ecx, 2
add ecx, ebx
lea edx, [ecx - 4]
mov dword [esp], edx
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
call fcn.005e5570
fst dword [esp + 0x1b4]
fld dword [0x6a17e8]
fst dword [esp + 0x27c]
fld dword [esp + 0x260]
fucom st(1)
fxch st(2)
fxch st(1)
fnstsw ax
sahf
je 0x46d9f5
fld st(1)
fdiv st(3)
fsqrt
fld dword [0x64ed7c]
fadd st(0)
fmulp st(1)
fstp dword [esp + 0x27c]
fstp st(2)
mov eax, dword [0x6a1808]
mov dword [esp + 0x280], eax
mov ebp, dword [0x64f56c]
test ebp, ebp
fxch st(1)
je 0x46da39
fld dword [0x64ec3c]
fucomp st(1)
fnstsw ax
sahf
je 0x46da39
fxch st(1)
fdiv dword [0x64ec3c]
fstp dword [esp + 0x280]
jmp 0x46dad8
fstp st(1)
mov edx, dword [0x64f568]
test edx, edx
je 0x46da7c
fld dword [0x64efd8]
fld dword [esp + 0x27c]
fucompp
fnstsw ax
sahf
jae 0x46dad8
fld dword [esp + 0x27c]
fdiv dword [0x64efd8]
fmul st(0)
fstp dword [esp + 0x280]
jmp 0x46dad8
test ebp, ebp
je 0x46dad8
mov eax, dword [esp + 0x284]
mov dword [esp + 0x288], eax
mov eax, dword [esp + 0x28c]
test eax, eax
je 0x46daaf
mov eax, dword [esp + 0x268]
mov dword [esp + 0x288], eax
fld dword [esp + 0x288]
fucomp st(1)
fnstsw ax
sahf
je 0x46dad8
fld dword [esp + 0x27c]
fdiv dword [esp + 0x288]
fmul st(0)
fstp dword [esp + 0x280]
fstp st(0)
mov ecx, 0xf
mov dword [esp + 0x164], ecx
mov edx, dword [0x64f198]
shl edx, 2
add edx, ebx
lea eax, [edx - 4]
mov dword [esp], eax
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
lea edx, [esp + 0x280]
mov dword [esp + 8], edx
call fcn.005e55b0
jmp 0x46de08
mov eax, dword [0x64f198]
mov ecx, dword [esi + eax*4 + 0x4c]
mov dword [esp + 0x274], ecx
mov edx, dword [esi + ecx*4]
mov dword [esp + 0x174], edx
mov eax, edx
mov dword [esp + 0x174], eax
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x174]
test ecx, ecx
je 0x46de08
mov edx, 9
mov dword [esp + 0x164], edx
mov eax, dword [esp + 0x174]
shl eax, 2
add eax, ebx
lea ebp, [eax - 4]
mov dword [esp], ebp
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
call fcn.005e5570
fstp dword [esp + 0x17c]
mov eax, dword [0x6a1808]
mov dword [esp + 0x160], eax
mov edx, dword [0x64f56c]
test edx, edx
je 0x46dbea
fld dword [0x6a17e8]
fld dword [0x64efd4]
fucompp
fnstsw ax
sahf
je 0x46dbea
mov eax, 0xa
mov dword [esp + 0x164], eax
mov dword [esp], ebp
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
call fcn.005e5570
fld dword [esp + 0x17c]
fdivrp st(1)
fstp dword [esp + 0x160]
jmp 0x46dd46
mov edx, dword [0x64f568]
test edx, edx
je 0x46dc6c
mov ecx, 0xa
mov dword [esp + 0x164], ecx
mov dword [esp], ebp
lea edx, [esp + 0x164]
mov dword [esp + 4], edx
call fcn.005e5570
fld dword [esp + 0x17c]
fdivrp st(1)
fsqrt
fld dword [0x64ed90]
fadd st(0)
fmulp st(1)
fst dword [esp + 0x180]
fld dword [0x64efd8]
fucompp
fnstsw ax
sahf
jbe 0x46dd46
mov eax, dword [0x64af34]
inc eax
mov dword [0x64af34], eax
fld dword [esp + 0x180]
fdiv dword [0x64efd8]
fmul st(0)
fstp dword [esp + 0x160]
jmp 0x46dd46
mov ecx, dword [0x64f56c]
test ecx, ecx
je 0x46dccc
mov edx, 0xa
mov dword [esp + 0x164], edx
mov dword [esp], ebp
lea eax, [esp + 0x164]
mov dword [esp + 4], eax
call fcn.005e5570
fld dword [esp + 0x268]
fdiv dword [0x64ed90]
fmul st(0)
fmul dword [0x6a1c90]
fmulp st(1)
fst dword [esp + 0x1dc]
fld dword [esp + 0x17c]
fdivrp st(1)
fstp dword [esp + 0x160]
jmp 0x46dd46
mov ecx, dword [0x64f184]
mov dword [esp + 0x26c], ecx
test ecx, ecx
je 0x46dd46
mov edx, dword [esp + 0x26c]
mov dword [esp + 0x1a0], edx
mov eax, dword [esp + 0x174]
mov edi, eax
fld dword [esp + 0x17c]
mov ebp, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46dd3d
mov ecx, dword [esi + ebp*4]
cmp ecx, edi
jne 0x46dd37
fld st(0)
fadd dword [ebx + ebp*4 + 4]
fdivr st(1)
fstp dword [esp + 0x160]
jmp 0x46dd3d
mov ebp, dword [esi + ebp*4 - 4]
jmp 0x46dd10
fstp st(0)
mov dword [esp + 0x1a0], ebp
fld dword [esp + 0x160]
fld dword [0x64af24]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
jb 0x46dd6c
fst dword [esp + 0x184]
jmp 0x46dd77
fxch st(1)
fst dword [esp + 0x184]
fxch st(1)
fstp st(1)
mov ecx, dword [esp + 0x184]
mov dword [0x64af24], ecx
fld dword [0x64af28]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46dda5
fstp dword [esp + 0x184]
jmp 0x46ddae
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
mov eax, dword [esp + 0x184]
mov dword [0x64af28], eax
mov edx, 0xa
mov dword [esp + 0x164], edx
mov ebp, dword [esp + 0x174]
mov eax, ebp
shl eax, 2
add eax, ebx
lea ecx, [eax - 4]
mov dword [esp], ecx
lea edx, [esp + 0x164]
mov dword [esp + 4], edx
lea eax, [esp + 0x160]
mov dword [esp + 8], eax
call fcn.005e55b0
mov ecx, dword [esi + ebp*4 - 4]
mov dword [esp + 0x174], ecx
jmp 0x46db40
mov edx, dword [0x64f198]
mov eax, dword [esi + edx*4]
mov dword [0x64f198], eax
jmp 0x46d970
mov ecx, dword [0x64f56c]
test ecx, ecx
je 0x46e063
fld dword [0x6a17e8]
fld dword [0x64efd4]
fucompp
fnstsw ax
sahf
jne 0x46e063
mov edx, dword [0x64f570]
test edx, edx
je 0x46e063
fld dword [0x6a17e8]
fld dword [0x64efdc]
fucompp
fnstsw ax
sahf
jbe 0x46e063
fld dword [0x6a17e8]
fld dword [0x64af24]
fucompp
fnstsw ax
sahf
jbe 0x46e063
fld dword [0x6a17e8]
fld dword [0x64af28]
fucompp
fnstsw ax
sahf
jbe 0x46e063
fld dword [0x64af28]
fdiv dword [0x64af24]
fst dword [esp + 0x2f0]
fld dword [0x64efdc]
fucompp
fnstsw ax
sahf
jae 0x46e063
fld dword [0x64efdc]
fld dword [0x64af28]
fdiv dword [0x64efdc]
fstp dword [esp + 0x170]
fdiv dword [esp + 0x2f0]
fsqrt
fmul dword [esp + 0x268]
fstp dword [esp + 0x268]
mov eax, 0
mov dword [esp + 0x278], eax
mov ecx, dword [0x64f19c]
mov dword [0x64f198], ecx
mov edx, dword [esp + 0x364]
mov dword [esp + 0x270], edx
mov eax, dword [esp + 0x360]
mov dword [esp + 0x168], eax
nop
nop
nop
nop
mov ebp, dword [0x64f198]
test ebp, ebp
je 0x46e049
mov ecx, dword [esp + 0x270]
mov edx, dword [ecx + ebp*4 - 4]
cmp edx, 3
jne 0x46e02e
mov eax, dword [esp + 0x270]
mov ecx, dword [eax + ebp*4 + 0x4c]
mov dword [esp + 0x274], ecx
mov edx, dword [eax + ecx*4]
mov dword [esp + 0x174], edx
mov ebp, edx
mov edi, dword [esp + 0x278]
nop
nop
nop
nop
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46e020
mov ecx, 0xa
mov dword [esp + 0x164], ecx
mov edx, ebp
shl edx, 2
add edx, dword [esp + 0x168]
lea esi, [edx - 4]
mov dword [esp], esi
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
call fcn.005e5570
fst dword [esp + 0x16c]
fst dword [esp + 0x160]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
je 0x46e010
fld dword [0x64af28]
fdiv dword [esp + 0x16c]
fld dword [0x64efdc]
fxch st(1)
fucompp
fnstsw ax
sahf
jbe 0x46e010
mov edx, 0xa
mov dword [esp + 0x164], edx
mov dword [esp], esi
lea eax, [esp + 0x164]
mov dword [esp + 4], eax
lea ecx, [esp + 0x170]
mov dword [esp + 8], ecx
call fcn.005e55b0
inc edi
mov edx, dword [esp + 0x270]
mov ebp, dword [edx + ebp*4 - 4]
jmp 0x46df70
mov dword [esp + 0x174], ebp
mov dword [esp + 0x278], edi
mov eax, dword [0x64f198]
mov ecx, dword [esp + 0x270]
mov edx, dword [ecx + eax*4]
mov dword [0x64f198], edx
jmp 0x46df20
mov eax, dword [esp + 0x278]
mov dword [sym.imp.USER32.dll_ReleaseDC], eax
mov eax, dword [esp + 0x170]
mov dword [0x64af24], eax
fld dword [esp + 0x25c]
fst dword [esp + 0x2f4]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jb 0x46e092
mov ecx, 0xc
mov dword [0x64f3dc], ecx
jmp 0x46fcdf
mov eax, dword [0x6a1828]
mov dword [0x64af14], eax
mov edx, dword [0x64af48]
test edx, edx
je 0x46e64e
fld dword [esp + 0x260]
fld dword [0x6a17e8]
fucomp st(1)
fnstsw ax
sahf
je 0x46e0df
fld dword [esp + 0x2f4]
fdiv st(1)
fsqrt
fld dword [0x64ed7c]
fadd st(0)
fmulp st(1)
fstp dword [0x64af14]
mov ebp, dword [0x64f56c]
test ebp, ebp
je 0x46e134
fld dword [0x6a17e8]
fld dword [0x64ec3c]
fucompp
fnstsw ax
sahf
je 0x46e134
fld dword [0x6a17e8]
fucomp st(1)
fnstsw ax
sahf
je 0x46e19b
fld dword [0x64ec3c]
fdiv st(1)
fsqrt
fld dword [0x64ed7c]
fadd st(0)
fmulp st(1)
fstp dword [0x64af14]
jmp 0x46e19b
mov eax, dword [0x64f568]
test eax, eax
je 0x46e16a
fld dword [0x64af14]
fld dword [0x64efd8]
fucompp
fnstsw ax
sahf
jbe 0x46e19b
mov eax, dword [0x64efd8]
mov dword [0x64af14], eax
jmp 0x46e19b
test ebp, ebp
je 0x46e19b
mov eax, dword [esp + 0x284]
mov dword [0x64af14], eax
mov ecx, dword [esp + 0x2cc]
test ecx, ecx
je 0x46e19b
mov eax, dword [esp + 0x268]
mov dword [0x64af14], eax
fstp st(0)
fld dword [0x6a17e8]
fld dword [0x64af14]
fucompp
fnstsw ax
sahf
jne 0x46e2de
mov edx, dword [0x64c29c]
test edx, edx
je 0x46e2de
mov esi, 0xc
lea ebx, [0x64ce18]
mov dword [0x64ce30], esi
lea eax, [0x6a1c94]
mov dword [0x64ceac], eax
mov ebp, 0x4000208
mov dword [0x64ce18], ebp
mov edi, 8
mov dword [0x64ce1c], edi
mov dword [esp], ebx
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov ecx, 7
mov dword [0x64ce24], ecx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], ebx
lea eax, [0x64f3c8]
mov dword [esp + 4], eax
mov dword [esp + 0x68], eax
call fcn.0063d590
mov dword [esp], ebx
call fcn.0063e1f0
mov dword [0x64ce30], esi
lea ecx, [0x6a1cac]
mov dword [0x64ceac], ecx
mov dword [0x64ce18], ebp
mov dword [0x64ce1c], edi
mov dword [esp], ebx
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov eax, 7
mov dword [0x64ce24], eax
mov ecx, 4
mov dword [0x64ce20], ecx
mov dword [esp], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
call fcn.0063d590
mov eax, 9
mov dword [0x64ce24], eax
mov dword [esp], ebx
lea ecx, [esp + 0x260]
mov dword [esp + 4], ecx
call fcn.0063d590
mov dword [esp], ebx
lea edx, [esp + 0x25c]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], ebx
lea eax, [0x64af14]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], ebx
call fcn.0063e1f0
fld dword [0x6a17e8]
fld dword [0x64af14]
fucom st(1)
fnstsw ax
sahf
je 0x46e31c
fld dword [0x6a1ce8]
fucomp st(1)
fnstsw ax
sahf
fstp dword [esp + 0xd8]
fstp dword [esp + 0x58]
ja 0x46e64e
fld dword [esp + 0x58]
fld dword [esp + 0xd8]
fstp st(0)
mov ecx, dword [esp + 0x2b8]
test ecx, ecx
fstp dword [esp + 0x58]
jne 0x46e64e
fld dword [esp + 0x58]
fld dword [esp + 0x260]
fucomp st(1)
fnstsw ax
sahf
jne 0x46e44f
mov edx, 1
mov eax, 0x32
mov ebp, edx
mov edi, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
fld dword [ebp*4 + 0x65be44]
fld dword [ebp*4 + 0x65b994]
fucom st(1)
fnstsw ax
sahf
ja 0x46e387
fxch st(1)
fstp dword [esp + 0x1cc]
jmp 0x46e390
fstp st(1)
fst dword [esp + 0x1cc]
fstp st(0)
fld dword [esp + 0x1cc]
fld dword [esp + 0x260]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
ja 0x46e3b9
fstp dword [esp + 0x184]
jmp 0x46e3c2
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
fld dword [esp + 0x184]
fst dword [esp + 0x260]
fld dword [ebp*4 + 0x65bf0c]
fld dword [ebp*4 + 0x65bb24]
fucom st(1)
fxch st(1)
fxch st(2)
fnstsw ax
sahf
ja 0x46e3ff
fxch st(2)
fstp dword [esp + 0x1cc]
fxch st(1)
jmp 0x46e40a
fstp st(2)
fst dword [esp + 0x1cc]
fxch st(1)
fstp st(1)
fld dword [esp + 0x1cc]
fxch st(1)
fucom st(1)
fnstsw ax
sahf
ja 0x46e42e
fxch st(1)
fstp dword [esp + 0x184]
jmp 0x46e437
fstp st(1)
fst dword [esp + 0x184]
fstp st(0)
mov eax, dword [esp + 0x184]
mov dword [esp + 0x260], eax
inc ebp
dec edi
jg 0x46e360
fld dword [esp + 0x25c]
fucom st(1)
fnstsw ax
sahf
je 0x46e480
fld dword [0x6a1ce8]
fucomp st(1)
fnstsw ax
sahf
fstp dword [esp + 0xd8]
ja 0x46e4f3
fld dword [esp + 0xd8]
fstp st(0)
mov ecx, dword [0x64f19c]
mov edi, dword [esp + 0x360]
mov esi, dword [esp + 0x364]
mov ebp, ecx
nop
nop
nop
nop
nop
nop
nop
nop
test ebp, ebp
je 0x46e4f3
fld dword [edi + ebp*4 + 0x2c]
fst dword [esp + 0x1b4]
fld dword [esp + 0x25c]
fxch st(1)
fucom st(1)
fnstsw ax
sahf
jb 0x46e4d5
fxch st(1)
fstp dword [esp + 0x184]
jmp 0x46e4de
fstp st(1)
fst dword [esp + 0x184]
fstp st(0)
mov eax, dword [esp + 0x184]
mov dword [esp + 0x25c], eax
mov ebp, dword [esi + ebp*4]
jmp 0x46e4a0
fld dword [esp + 0x260]
fxch st(1)
fucomp st(1)
fnstsw ax
sahf
je 0x46e522
fld dword [esp + 0x25c]
fdiv st(1)
fsqrt
fld dword [0x64ed7c]
fadd st(0)
fmulp st(1)
fstp dword [0x64af14]
fstp st(0)
mov edx, dword [0x64c29c]
test edx, edx
je 0x46e64e
mov ebx, 0xc
lea ebp, [0x64ce18]
mov dword [0x64ce30], ebx
lea eax, [0x6a1cec]
mov dword [0x64ceac], eax
mov edi, 0x4000208
mov dword [0x64ce18], edi
mov esi, 8
mov dword [0x64ce1c], esi
mov dword [esp], ebp
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov ecx, 7
mov dword [0x64ce24], ecx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], ebp
lea eax, [0x64f3c8]
mov dword [esp + 4], eax
mov dword [esp + 0x68], eax
call fcn.0063d590
mov dword [esp], ebp
call fcn.0063e1f0
mov dword [0x64ce30], ebx
lea ecx, [0x6a1d0c]
mov dword [0x64ceac], ecx
mov dword [0x64ce18], edi
mov dword [0x64ce1c], esi
mov dword [esp], ebp
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov eax, 7
mov dword [0x64ce24], eax
mov ecx, 4
mov dword [0x64ce20], ecx
mov dword [esp], ebp
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
call fcn.0063d590
mov eax, 9
mov dword [0x64ce24], eax
mov dword [esp], ebp
lea ecx, [esp + 0x260]
mov dword [esp + 4], ecx
call fcn.0063d590
mov dword [esp], ebp
lea edx, [esp + 0x25c]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], ebp
lea eax, [0x64af14]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], ebp
call fcn.0063e1f0
mov eax, dword [0x6a1828]
mov dword [esp + 0x2f8], eax
mov ecx, dword [esp + 0x2b8]
test ecx, ecx
fld dword [0x6a17e8]
je 0x46e6fb
mov eax, dword [0x64af20]
mov dword [esp + 0x2f8], eax
mov ebp, dword [0x64f56c]
test ebp, ebp
je 0x46e6ae
fld dword [0x64efd4]
fucomp st(1)
fnstsw ax
sahf
je 0x46e6ae
mov eax, dword [0x64af10]
mov dword [esp + 0x2f8], eax
jmp 0x46e6fb
mov edx, dword [0x64f568]
test edx, edx
je 0x46e6e5
fld dword [0x64af20]
fld dword [0x64efd8]
fucompp
fnstsw ax
sahf
jbe 0x46e6fb
mov eax, dword [0x64efd8]
mov dword [esp + 0x2f8], eax
jmp 0x46e6fb
test ebp, ebp
je 0x46e6fb
mov eax, dword [esp + 0x268]
mov dword [esp + 0x2f8], eax
fld dword [esp + 0x2f8]
fucompp
fnstsw ax
sahf
jne 0x46e849
mov eax, dword [0x64c29c]
test eax, eax
je 0x46e849
mov esi, 0xc
lea ebx, [0x64ce18]
mov dword [0x64ce30], esi
lea ecx, [0x6a1d48]
mov dword [0x64ceac], ecx
mov ebp, 0x4000208
mov dword [0x64ce18], ebp
mov edi, 8
mov dword [0x64ce1c], edi
mov dword [esp], ebx
call fcn.0063d0a0
mov edx, 1
mov dword [0x64ce28], edx
mov ecx, 7
mov dword [0x64ce24], ecx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], ebx
lea eax, [0x64f3c8]
mov dword [esp + 4], eax
mov dword [esp + 0x68], eax
call fcn.0063d590
mov dword [esp], ebx
lea edx, [esp + 0x2b8]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], ebx
call fcn.0063e1f0
mov dword [0x64ce30], esi
lea eax, [0x6a1d6c]
mov dword [0x64ceac], eax
mov dword [0x64ce18], ebp
mov dword [0x64ce1c], edi
mov dword [esp], ebx
call fcn.0063d0a0
mov ecx, 1
mov dword [0x64ce28], ecx
mov edx, 7
mov dword [0x64ce24], edx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], ebx
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
call fcn.0063d590
mov edx, 9
mov dword [0x64ce24], edx
mov dword [esp], ebx
lea eax, [0x64af20]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], ebx
lea ecx, [esp + 0x268]
mov dword [esp + 4], ecx
call fcn.0063d590
mov dword [esp], ebx
lea edx, [0x64af14]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], ebx
call fcn.0063e1f0
fld dword [esp + 0x2f8]
fld dword [0x64af14]
fucom st(1)
fxch st(1)
fnstsw ax
sahf
jb 0x46e86f
fstp dword [esp + 0x184]
jmp 0x46e878
fstp st(0)
fst dword [esp + 0x184]
fstp st(0)
fld dword [esp + 0x184]
fst dword [0x64eec4]
fst dword [0x64af50]
fld dword [0x6a17e8]
fucomp st(1)
fnstsw ax
sahf
jne 0x46e8bb
fstp st(0)
mov eax, 0xab
mov dword [0x64f3dc], eax
mov ecx, 1
mov dword [0x64f4c0], ecx
jmp 0x46fcea
fld dword [0x6a1ce8]
fucompp
fnstsw ax
sahf
ja 0x46e8e7
mov edx, 0xac
mov dword [0x64f3dc], edx
mov eax, 1
mov dword [0x64f4c0], eax
jmp 0x46fcea
mov esi, dword [esp + 0x360]
mov dword [esp], esi
mov ebx, dword [esp + 0x364]
mov dword [esp + 0x238], ebx
mov dword [esp + 4], ebx
lea edx, [0x64eec4]
mov dword [esp + 8], edx
lea ecx, [0x64af18]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x68], edx
call fcn.005b9ae0
mov dword [esp], esi
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.0043c900
mov dword [esp], esi
mov dword [esp + 4], ebx
call fcn.005c9840
mov dword [esp], esi
mov dword [esp + 4], ebx
call fcn.0041fe30
mov eax, 1
mov dword [esp + 0x1fc], eax
mov ecx, 0x32
lea edi, [0x64ce18]
mov ebp, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 0x1fc]
fld dword [edx*4 + 0x65dcbc]
fst dword [esp + 0x234]
fld dword [edx*4 + 0x65ffe4]
fld st(0)
fmul dword [0x6a1b5c]
fdiv dword [0x6a1b60]
fadd dword [edx*4 + 0x65dcbc]
fst dword [edx*4 + 0x65c22c]
fxch st(1)
fadd st(0)
fdiv dword [0x6a1b60]
fsubp st(2)
fxch st(1)
fstp dword [edx*4 + 0x65c2f4]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jae 0x46eab1
fld dword [0x6a17e8]
fld dword [esp + 0x234]
fucompp
fnstsw ax
sahf
ja 0x46eab1
lea eax, [0x64cb00]
mov dword [0x64ce30], eax
mov ecx, 0x84
mov dword [0x64ce34], ecx
mov ebx, 1
mov dword [0x64ce38], ebx
lea edx, [0x6a1da8]
mov dword [0x64ceac], edx
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], edi
call fcn.0063d0a0
mov dword [0x64ce28], ebx
mov ecx, 7
mov dword [0x64ce24], ecx
mov edx, 4
mov dword [0x64ce20], edx
mov dword [esp], edi
lea eax, [esp + 0x1fc]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], edi
call fcn.0063e1f0
mov ecx, 0
mov dword [esp + 0x164], ecx
mov dword [esp + 0x1b0], ecx
mov dword [esp], esi
mov ebx, dword [esp + 0x238]
mov dword [esp + 4], ebx
lea edx, [esp + 0x164]
mov dword [esp + 8], edx
lea eax, [esp + 0x1b0]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [esp], esi
mov dword [esp + 4], ebx
call fcn.00588d90
mov ecx, dword [esp + 0x1fc]
mov dword [esp + 0x23c], ecx
fld dword [0x6a17e8]
fld dword [ecx*4 + 0x65c22c]
fucompp
fnstsw ax
sahf
jbe 0x46ebc1
mov edx, dword [esp + 0x23c]
fld dword [0x6a17e8]
fld dword [edx*4 + 0x65ffe4]
fucompp
fnstsw ax
sahf
ja 0x46ebc1
lea eax, [0x64cb00]
mov dword [0x64ce30], eax
mov ecx, 0x84
mov dword [0x64ce34], ecx
mov ebx, 1
mov dword [0x64ce38], ebx
lea edx, [0x6a1de8]
mov dword [0x64ceac], edx
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], edi
call fcn.0063d0a0
mov dword [0x64ce28], ebx
mov ecx, 7
mov dword [0x64ce24], ecx
mov edx, 4
mov dword [0x64ce20], edx
mov dword [esp], edi
lea eax, [esp + 0x1fc]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], edi
call fcn.0063e1f0
mov ecx, 0
mov dword [esp + 0x164], ecx
mov dword [esp + 0x1b0], ecx
mov dword [esp], esi
mov ebx, dword [esp + 0x238]
mov dword [esp + 4], ebx
lea edx, [esp + 0x164]
mov dword [esp + 8], edx
lea eax, [esp + 0x1b0]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [esp], esi
mov dword [esp + 4], ebx
call fcn.00588d90
mov ecx, dword [esp + 0x1fc]
fld dword [ecx*4 + 0x65dcbc]
fst dword [esp + 0x240]
fmul dword [0x6a1b60]
fst dword [esp + 0x244]
mov edx, dword [ecx*4 + 0x65ffe4]
mov dword [esp + 0x248], edx
fadd dword [ecx*4 + 0x65ffe4]
fst dword [esp + 0x24c]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jae 0x46ef53
fld dword [esp + 0x248]
fadd st(0)
fld dword [esp + 0x244]
fsubrp st(1)
fld dword [esp + 0x24c]
fadd st(0)
fdivp st(1)
fst dword [esp + 0x250]
fld dword [esp + 0x240]
fmul dword [0x6a1e2c]
fmul dword [esp + 0x248]
fdiv dword [esp + 0x24c]
fstp dword [esp + 0x254]
fld dword [0x6a17ec]
fucomp st(1)
fnstsw ax
sahf
jb 0x46ec86
fld dword [0x6a17e8]
fucomp st(1)
fnstsw ax
sahf
fstp dword [esp + 0xd8]
jbe 0x46ef53
fld dword [esp + 0xd8]
fstp st(0)
lea ebx, [0x64cb00]
mov dword [0x64ce30], ebx
mov edx, 0x84
mov dword [0x64ce34], edx
mov ecx, 1
mov dword [0x64ce38], ecx
lea eax, [0x6a1e30]
mov dword [0x64ceac], eax
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov eax, 4
mov dword [0x64ce1c], eax
mov dword [esp], edi
call fcn.0063d0a0
mov ecx, 1
mov dword [0x64ce28], ecx
mov edx, 7
mov dword [0x64ce24], edx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], edi
lea edx, [esp + 0x1fc]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], edi
call fcn.0063e1f0
mov edx, 0
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], edx
mov dword [esp], esi
mov ecx, dword [esp + 0x238]
mov dword [esp + 4], ecx
lea eax, [esp + 0x164]
mov dword [esp + 8], eax
mov dword [esp + 0x68], ecx
lea ecx, [esp + 0x1b0]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ecx
call fcn.00588550
mov dword [0x64ce30], ebx
mov eax, 0x84
mov dword [0x64ce34], eax
mov ecx, 1
mov dword [0x64ce38], ecx
lea edx, [0x6a1e54]
mov dword [0x64ceac], edx
mov edx, 0x4000208
mov dword [0x64ce18], edx
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], edi
call fcn.0063d0a0
mov ecx, 1
mov dword [0x64ce28], ecx
mov edx, 9
mov dword [0x64ce24], edx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], edi
lea edx, [esp + 0x254]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], edi
call fcn.0063e1f0
mov edx, 0
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], edx
mov dword [esp], esi
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [0x64ce30], ebx
mov eax, 0x84
mov dword [0x64ce34], eax
mov ecx, 1
mov dword [0x64ce38], ecx
lea edx, [0x6a1e80]
mov dword [0x64ceac], edx
mov edx, 0x4000208
mov dword [0x64ce18], edx
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], edi
call fcn.0063d0a0
mov ecx, 1
mov dword [0x64ce28], ecx
mov edx, 9
mov dword [0x64ce24], edx
mov eax, 4
mov dword [0x64ce20], eax
mov dword [esp], edi
lea edx, [esp + 0x250]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], edi
call fcn.0063e1f0
mov eax, 0
mov dword [esp + 0x164], eax
mov dword [esp + 0x1b0], eax
mov dword [esp], esi
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xc], ecx
call fcn.00588550
mov dword [0x64ce30], ebx
mov ecx, 0x84
mov dword [0x64ce34], ecx
mov edx, 1
mov dword [0x64ce38], edx
lea eax, [0x6a1ea8]
mov dword [0x64ceac], eax
mov ecx, 0x4000208
mov dword [0x64ce18], ecx
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], edi
call fcn.0063d0a0
mov dword [esp], edi
call fcn.0063e1f0
mov eax, 0
mov dword [esp + 0x164], eax
mov dword [esp + 0x1b0], eax
mov dword [esp], esi
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [esp], esi
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
call fcn.00588d90
mov edx, dword [0x64f520]
test edx, edx
mov eax, dword [esp + 0x1fc]
mov dword [esp + 0x258], eax
je 0x46efc4
mov ecx, dword [esp + 0x258]
fld dword [0x6a17e8]
fld dword [ecx*4 + 0x65c22c]
fucompp
fnstsw ax
sahf
je 0x46efc4
mov edx, dword [esp + 0x258]
fld dword [edx*4 + 0x65c2f4]
fld st(0)
fmul st(0)
fld dword [edx*4 + 0x65c22c]
fxch st(1)
fdiv dword [edx*4 + 0x65c22c]
fsub st(1), st(0)
fxch st(1)
fstp dword [edx*4 + 0x65c22c]
fsubp st(1)
fstp dword [edx*4 + 0x65c2f4]
mov eax, dword [esp + 0x258]
inc eax
mov dword [esp + 0x1fc], eax
dec ebp
jg 0x46e970
mov ecx, 1
mov dword [esp + 0x1fc], ecx
fld dword [0x6a1858]
fld qword [0x6a1ed8]
fld dword [0x6a1ee0]
fld dword [0x6a1808]
fld dword [0x6a17e8]
fld dword [0x6a1b60]
mov ebp, ecx
mov edx, 0x32
mov edi, edx
fxch st(4)
fxch st(5)
fxch st(4)
fxch st(3)
fxch st(2)
fxch st(1)
nop
fld dword [ebp*4 + 0x65c54c]
fld st(5)
fpatan
fst dword [esp + 0x200]
fld dword [ebp*4 + 0x65e7ac]
fxch st(1)
fstp dword [esp + 0x94]
fld st(5)
fpatan
fst dword [esp + 0x204]
fstp dword [esp + 0x208]
fld dword [esp + 0x94]
fabs
fucomp st(6)
fnstsw ax
sahf
jae 0x46f073
fxch st(2)
fst dword [esp + 0x200]
fxch st(2)
fld dword [esp + 0x204]
fabs
fucomp st(6)
fnstsw ax
sahf
jae 0x46f092
fxch st(2)
fst dword [esp + 0x208]
fxch st(2)
fld dword [esp + 0x200]
fld st(0)
fcos
fxch st(1)
fstp dword [esp + 0x94]
fld dword [ebp*4 + 0x65e2fc]
fadd st(0)
fst dword [esp + 0x20c]
fmulp st(1)
fstp dword [esp + 0x210]
fld dword [esp + 0x94]
fsin
fst dword [esp + 0x214]
fld dword [esp + 0x208]
fxch st(1)
fstp dword [esp + 0x94]
fsin
fstp dword [esp + 0x218]
fld dword [esp + 0x94]
fucomp st(2)
fnstsw ax
sahf
je 0x46f11a
fld st(1)
fadd dword [esp + 0x214]
fld st(2)
fsub dword [esp + 0x214]
fdivp st(1)
fstp dword [ebp*4 + 0x65cf74]
jmp 0x46f121
fst dword [ebp*4 + 0x65cf74]
fld dword [esp + 0x218]
fucomp st(2)
fnstsw ax
sahf
je 0x46f153
fld st(1)
fadd dword [esp + 0x218]
fld st(2)
fsub dword [esp + 0x218]
fdivp st(1)
fstp dword [ebp*4 + 0x65d03c]
jmp 0x46f15a
fst dword [ebp*4 + 0x65d03c]
fld dword [ebp*4 + 0x65c22c]
fst dword [esp + 0x21c]
fucomp st(1)
fnstsw ax
sahf
jbe 0x46f2d0
fld dword [ebp*4 + 0x65c2f4]
fucomp st(1)
fnstsw ax
sahf
jbe 0x46f2d0
fld dword [ebp*4 + 0x65c2f4]
fst dword [esp + 0x220]
mov ecx, dword [ebp*4 + 0x65d03c]
mov dword [esp + 0x224], ecx
fld st(0)
fmul dword [ebp*4 + 0x65d03c]
fxch st(1)
fstp dword [esp + 0x94]
fld dword [esp + 0x21c]
fsubr st(1), st(0)
fxch st(1)
fst dword [esp + 0x228]
fxch st(1)
fmul dword [ebp*4 + 0x65d03c]
fsubr dword [esp + 0x94]
fst dword [esp + 0x22c]
fmul dword [ebp*4 + 0x65cf74]
fsubp st(1)
fst dword [esp + 0x230]
fucomp st(1)
fnstsw ax
sahf
je 0x46f244
fld dword [esp + 0x228]
fdiv dword [esp + 0x230]
fstp dword [ebp*4 + 0x65f1d4]
fld st(1)
fsub dword [esp + 0x224]
fmul dword [esp + 0x220]
fdiv dword [esp + 0x230]
fstp dword [ebp*4 + 0x65f29c]
fld dword [esp + 0x22c]
fdiv dword [esp + 0x230]
fstp dword [ebp*4 + 0x65f364]
jmp 0x46f259
fst dword [ebp*4 + 0x65f1d4]
fst dword [ebp*4 + 0x65f29c]
fst dword [ebp*4 + 0x65f364]
fld dword [ebp*4 + 0x65cf74]
fsqrt
fmul dword [esp + 0x20c]
fstp dword [ebp*4 + 0x65e234]
fld dword [esp + 0x214]
fmul dword [0x6a1ee4]
fld st(4)
fsub dword [esp + 0x214]
fdiv st(1), st(0)
fxch st(1)
fstp dword [ebp*4 + 0x65ec5c]
fld dword [esp + 0x218]
fmul dword [0x6a1ee4]
fxch st(1)
fstp dword [esp + 0x94]
fld st(4)
fsub dword [esp + 0x218]
fdivp st(1)
fstp dword [ebp*4 + 0x65ea04]
fld st(3)
fmul dword [esp + 0x210]
fdiv dword [esp + 0x94]
fstp dword [ebp*4 + 0x65e554]
inc ebp
dec edi
jg 0x46f020
fstp st(4)
fstp st(4)
fstp st(0)
fstp st(2)
fstp st(0)
fstp st(0)
mov dword [esp + 0x1fc], ebp
mov ebp, dword [case.0x40891f.30]
test ebp, ebp
je 0x46f344
fld dword [ebp*4 + 0x65e6e4]
fst dword [esp + 0x2fc]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
je 0x46f344
fld dword [ebp*4 + 0x65c22c]
fdiv dword [esp + 0x2fc]
fsqrt
fstp dword [0x64ede8]
fld dword [ebp*4 + 0x65ffe4]
fdiv dword [esp + 0x2fc]
fsqrt
fstp dword [0x64ee78]
mov ebp, dword [esp + 0x360]
mov dword [esp], ebp
mov edi, dword [esp + 0x364]
mov dword [esp + 4], edi
call fcn.004217b0
mov dword [esp], ebp
mov dword [esp + 4], edi
call fcn.00446e58
mov eax, dword [0x64f4cc]
test eax, eax
je 0x46f3bf
mov dword [esp], ebp
mov dword [esp + 4], edi
lea ecx, [0x64af40]
mov dword [esp + 8], ecx
call fcn.0048c0a8
mov edx, dword [0x64f4c0]
test edx, edx
jne 0x46fcdf
fld dword [0x64eec4]
fld dword [0x64af40]
fucompp
fnstsw ax
sahf
jae 0x46f3bf
mov eax, dword [0x64af40]
mov dword [0x64eec4], eax
fld dword [0x64eec4]
fst dword [esp + 0x300]
fstp dword [0x64af4c]
mov eax, dword [0x64f444]
or eax, dword [0x64f508]
je 0x46f3f5
mov eax, dword [0x6a17e8]
mov dword [0x64ec40], eax
jmp 0x46f4a5
fld dword [0x6a17e8]
fld dword [0x64ec44]
fucompp
fnstsw ax
sahf
jbe 0x46f493
fld dword [0x6a17e8]
fld dword [esp + 0x300]
fucompp
fnstsw ax
sahf
jbe 0x46f493
mov ecx, dword [0x64f1bc]
test ecx, ecx
jle 0x46f456
mov dword [esp], ebp
mov dword [esp + 4], edi
call fcn.004cfea8
fmul dword [0x6a1808]
fdiv dword [0x64eec4]
fstp dword [esp + 0x304]
jmp 0x46f46f
fld dword [0x64ec44]
fmul dword [0x6a1808]
fdiv dword [0x64eec4]
fstp dword [esp + 0x304]
fld dword [esp + 0x304]
fmul st(0)
fadd dword [0x6a1808]
fsqrt
fsub dword [esp + 0x304]
fmul dword [0x64eec4]
fstp dword [0x64eec4]
fld dword [0x64ec44]
fdiv dword [0x64eec4]
fstp dword [0x64ec40]
mov edx, dword [0x64f444]
test edx, edx
fld dword [0x64ec20]
fld dword [0x64eec4]
fld dword [0x6a17ec]
fxch st(2)
je 0x46f558
fld dword [0x6a17e8]
fxch st(1)
fucom st(1)
fxch st(1)
fxch st(3)
fnstsw ax
sahf
fxch st(2)
fxch st(1)
je 0x46f4ee
fld st(0)
fmul st(2)
fmul st(3)
fstp dword [0x64edac]
fxch st(3)
fst dword [0x64ec20]
fld dword [0x64edac]
fucomp st(1)
fxch st(3)
fnstsw ax
sahf
jne 0x46f539
fld dword [0x64ec10]
fucomp st(4)
fnstsw ax
sahf
jbe 0x46f52b
mov eax, dword [0x6a1ee8]
mov dword [0x64edac], eax
jmp 0x46f539
fld dword [0x64ec10]
fabs
fstp dword [0x64edac]
fstp st(3)
fld dword [0x64edac]
fst dword [esp + 0x308]
fstp dword [esp + 0x30c]
fxch st(1)
fxch st(2)
jmp 0x46f576
fld st(0)
fmul st(2)
fmul st(3)
fstp dword [esp + 0x308]
fld st(1)
fmul dword [0x64ec1c]
fmul st(3)
fstp dword [esp + 0x30c]
fstp st(2)
fstp st(0)
fstp st(0)
fld dword [esp + 0x308]
fld dword [0x6a1808]
fld st(0)
fsub dword [esp + 0x308]
fst dword [0x64ec9c]
fxch st(2)
fadd dword [0x6a1808]
fdivr st(1)
fstp dword [0x64eca0]
fld dword [0x6a17e8]
fxch st(2)
fucomp st(2)
fnstsw ax
sahf
jae 0x46f5cf
fstp st(0)
fstp st(0)
mov eax, 0xd
mov dword [0x64f3dc], eax
jmp 0x46fcdf
fld st(0)
fsub dword [esp + 0x30c]
fst dword [0x64ec70]
fld st(1)
fadd dword [esp + 0x30c]
fdivp st(2)
fxch st(1)
fstp dword [0x64ec74]
fucompp
fnstsw ax
sahf
jae 0x46f60c
mov ecx, 0x10
mov dword [0x64f3dc], ecx
jmp 0x46fcdf
mov ebx, 1
mov dword [esp + 0x1fc], ebx
mov edx, 0x32
mov edi, dword [esp + 0x360]
mov esi, dword [esp + 0x364]
mov ebp, edx
nop
nop
nop
mov ecx, dword [esp + 0x1fc]
fld dword [0x6a17e8]
fld dword [ecx*4 + 0x65b8cc]
fucompp
fnstsw ax
sahf
jbe 0x46f68f
mov edx, 3
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], ebx
mov dword [esp], edi
mov dword [esp + 4], esi
lea eax, [esp + 0x1fc]
mov dword [esp + 8], eax
lea ecx, [esp + 0x164]
mov dword [esp + 0xc], ecx
lea edx, [esp + 0x1b0]
mov dword [esp + 0x10], edx
call fcn.0044ea40
mov eax, dword [esp + 0x1fc]
inc eax
mov dword [esp + 0x1fc], eax
dec ebp
jg 0x46f630
fld dword [0x64ec8c]
fmul dword [0x64ec7c]
fst dword [0x64ecbc]
fld dword [0x6a17e8]
fucompp
fnstsw ax
sahf
jne 0x46f6de
fld dword [0x64ed00]
fld st(0)
fadd st(0)
fxch st(1)
fmul dword [0x6a1ee8]
fmulp st(1)
fstp dword [0x64ecbc]
mov ebp, dword [0x64f4dc]
test dword [0x64f464], ebp
je 0x46f70e
mov ecx, dword [0x64f50c]
test ecx, ecx
jne 0x46f70e
mov edx, 0x55
mov dword [0x64f3dc], edx
jmp 0x46fcdf
test ebp, ebp
jne 0x46f865
fld dword [0x6a17e8]
fld dword [0x64ec6c]
fucompp
fnstsw ax
sahf
je 0x46f865
mov eax, dword [0x64f52c]
or eax, dword [0x64f554]
je 0x46f865
lea ebp, [0x64cb00]
lea edx, [0x64ce18]
mov dword [0x64ce30], ebp
mov ecx, 0x84
mov dword [0x64ce34], ecx
mov dword [0x64ce38], ebx
lea eax, [0x6a1eec]
mov dword [0x64ceac], eax
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov eax, 4
mov dword [0x64ce1c], eax
mov dword [esp], edx
mov dword [esp + 0x68], edx
call fcn.0063d0a0
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063e1f0
mov edx, 0
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], edx
mov dword [esp], edi
mov dword [esp + 4], esi
lea ecx, [esp + 0x164]
mov dword [esp + 8], ecx
lea eax, [esp + 0x1b0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ecx
call fcn.00588550
mov dword [0x64ce30], ebp
mov edx, 0x84
mov dword [0x64ce34], edx
mov dword [0x64ce38], ebx
lea eax, [0x6a1f20]
mov dword [0x64ceac], eax
mov ecx, 0x4000208
mov dword [0x64ce18], ecx
mov edx, 4
mov dword [0x64ce1c], edx
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call fcn.0063d0a0
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
call fcn.0063e1f0
mov edx, 0
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], edx
mov dword [esp], edi
mov dword [esp + 4], esi
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xc], ecx
call fcn.00588550
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00588d90
mov edx, dword [0x64f51c]
test edx, edx
je 0x46f87f
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00498f18
mov eax, dword [0x64f4c0]
test eax, eax
jne 0x46fcdf
mov ecx, dword [0x64f464]
test dword [0x64f4dc], ecx
je 0x46f8c6
fld dword [0x6a17e8]
fld dword [0x64eec8]
fucompp
fnstsw ax
sahf
ja 0x46f8c6
mov edx, 0x56
mov dword [0x64f3dc], edx
jmp 0x46fcdf
mov eax, dword [0x64f4c8]
test eax, eax
je 0x46f8ee
mov ecx, dword [esp + 0x360]
mov dword [esp], ecx
mov edx, dword [esp + 0x364]
mov dword [esp + 4], edx
call fcn.0055d3b0
mov eax, dword [0x64f510]
test eax, eax
je 0x46fb88
mov ecx, dword [0x64f464]
test dword [0x64f4dc], ecx
mov edi, dword [esp + 0x360]
mov esi, dword [esp + 0x364]
lea ebp, [0x64ce18]
mov ebx, 1
je 0x46f9ea
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00588d90
lea edx, [0x64cb00]
mov dword [0x64ce30], edx
mov eax, 0x84
mov dword [0x64ce34], eax
mov dword [0x64ce38], ebx
lea ecx, [0x6a1f54]
mov dword [0x64ceac], ecx
mov edx, 0x4000208
mov dword [0x64ce18], edx
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], ebp
call fcn.0063d0a0
mov dword [0x64ce28], ebx
mov eax, 9
mov dword [0x64ce24], eax
mov ecx, 4
mov dword [0x64ce20], ecx
mov dword [esp], ebp
lea edx, [0x64eec8]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], ebp
call fcn.0063e1f0
mov eax, 0
mov dword [esp + 0x164], eax
mov dword [esp + 0x1b0], eax
mov dword [esp], edi
mov dword [esp + 4], esi
lea ecx, [esp + 0x164]
mov dword [esp + 8], ecx
lea edx, [esp + 0x1b0]
mov dword [esp + 0xc], edx
call fcn.00588550
jmp 0x46fb88
mov eax, dword [esp + 0x368]
mov ecx, dword [eax]
test ecx, ecx
je 0x46fabe
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00588d90
lea edx, [0x64cb00]
mov dword [0x64ce30], edx
mov eax, 0x84
mov dword [0x64ce34], eax
mov dword [0x64ce38], ebx
lea ecx, [0x6a1f54]
mov dword [0x64ceac], ecx
mov edx, 0x4000208
mov dword [0x64ce18], edx
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], ebp
call fcn.0063d0a0
mov dword [0x64ce28], ebx
mov eax, 9
mov dword [0x64ce24], eax
mov ecx, 4
mov dword [0x64ce20], ecx
mov dword [esp], ebp
lea edx, [0x64eec4]
mov dword [esp + 4], edx
call fcn.0063d590
mov dword [esp], ebp
call fcn.0063e1f0
mov eax, 0
mov dword [esp + 0x164], eax
mov dword [esp + 0x1b0], eax
mov dword [esp], edi
mov dword [esp + 4], esi
lea ecx, [esp + 0x164]
mov dword [esp + 8], ecx
lea edx, [esp + 0x1b0]
mov dword [esp + 0xc], edx
call fcn.00588550
jmp 0x46fb88
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00588d90
lea eax, [0x64cb00]
mov dword [0x64ce30], eax
mov ecx, 0x84
mov dword [0x64ce34], ecx
mov dword [0x64ce38], ebx
lea edx, [0x6a1f78]
mov dword [0x64ceac], edx
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov edx, 4
mov dword [0x64ce1c], edx
mov dword [esp], ebp
call fcn.0063d0a0
mov dword [0x64ce28], ebx
mov ecx, 9
mov dword [0x64ce24], ecx
mov edx, 4
mov dword [0x64ce20], edx
mov dword [esp], ebp
lea eax, [0x64eec4]
mov dword [esp + 4], eax
call fcn.0063d590
mov dword [esp], ebp
call fcn.0063e1f0
mov ecx, 0
mov dword [esp + 0x164], ecx
mov dword [esp + 0x1b0], ecx
mov dword [esp], edi
mov dword [esp + 4], esi
lea edx, [esp + 0x164]
mov dword [esp + 8], edx
lea eax, [esp + 0x1b0]
mov dword [esp + 0xc], eax
call fcn.00588550
mov dword [esp], edi
mov dword [esp + 4], esi
call fcn.00588d90
mov ecx, dword [0x64f444]
test ecx, ecx
jne 0x46fcea
mov edx, dword [0x64f508]
test edx, edx
jne 0x46fcea
mov eax, dword [0x64f56c]
test eax, eax
je 0x46fcea
lea ebp, [0x64cb00]
lea edi, [0x64ce18]
mov dword [0x64ce30], ebp
mov esi, 0x84
mov dword [0x64ce34], esi
mov ebx, 1
mov dword [0x64ce38], ebx
lea ecx, [0x6a1f9c]
mov dword [0x64ceac], ecx
mov edx, 0x4000208
mov dword [0x64ce18], edx
mov ecx, 4
mov dword [0x64ce1c], ecx
mov dword [esp], edi
call fcn.0063d0a0
mov dword [esp], edi
call fcn.0063e1f0
mov edx, 0
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], edx
mov ecx, dword [esp + 0x360]
mov dword [esp], ecx
mov eax, dword [esp + 0x364]
mov dword [esp + 4], eax
mov dword [esp + 0x68], ecx
lea ecx, [esp + 0x164]
mov dword [esp + 8], ecx
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x1b0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
call fcn.00588550
mov dword [0x64ce30], ebp
mov dword [0x64ce34], esi
mov dword [0x64ce38], ebx
lea edx, [0x6a1fc4]
mov dword [0x64ceac], edx
mov eax, 0x4000208
mov dword [0x64ce18], eax
mov ecx, 4
mov dword [0x64ce1c], ecx
mov dword [esp], edi
call fcn.0063d0a0
mov dword [esp], edi
call fcn.0063e1f0
mov edx, 0
mov dword [esp + 0x164], edx
mov dword [esp + 0x1b0], edx
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 8], edx
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc], eax
call fcn.00588550
jmp 0x46fcea
mov ecx, 1
mov dword [0x64f4c0], ecx
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
add esp, 0x35c
ret