4167aa:	d8 1d 28 11 40 00    	fcomps 0x401128
4167b0:	df e0                	fnstsw %ax
4167b2:	9e                   	sahf
4167b3:	74 15                	je     0x4167ca
4167b5:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
4167bb:	50                   	push   %eax
4167bc:	8b 45 08             	mov    0x8(%ebp),%eax
4167bf:	8b 00                	mov    (%eax),%eax
4167c1:	ff 75 08             	push   0x8(%ebp)
4167c4:	ff 90 fc 06 00 00    	call   *0x6fc(%eax)
4167ca:	9b                   	fwait
4167cb:	68 f6 67 41 00       	push   $0x4167f6
4167d0:	eb 23                	jmp    0x4167f5
4167d2:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4167d5:	e8 d6 aa fe ff       	call   0x4012b0
4167da:	8d 45 a8             	lea    -0x58(%ebp),%eax
4167dd:	50                   	push   %eax
4167de:	8d 45 b8             	lea    -0x48(%ebp),%eax
4167e1:	50                   	push   %eax
4167e2:	8d 45 c8             	lea    -0x38(%ebp),%eax
4167e5:	50                   	push   %eax
4167e6:	8d 45 d8             	lea    -0x28(%ebp),%eax
4167e9:	50                   	push   %eax
4167ea:	6a 04                	push   $0x4
4167ec:	e8 cb aa fe ff       	call   0x4012bc
4167f1:	83 c4 14             	add    $0x14,%esp
4167f4:	c3                   	ret
4167f5:	c3                   	ret
4167f6:	8b 45 0c             	mov    0xc(%ebp),%eax
4167f9:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4167fc:	89 08                	mov    %ecx,(%eax)
4167fe:	33 c0                	xor    %eax,%eax
416800:	8b 4d f0             	mov    -0x10(%ebp),%ecx
416803:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41680a:	5f                   	pop    %edi
41680b:	5e                   	pop    %esi
41680c:	5b                   	pop    %ebx
41680d:	c9                   	leave
41680e:	c2 08 00             	ret    $0x8
416811:	55                   	push   %ebp
416812:	8b ec                	mov    %esp,%ebp
416814:	83 ec 0c             	sub    $0xc,%esp
416817:	68 c6 11 40 00       	push   $0x4011c6
41681c:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
416822:	50                   	push   %eax
416823:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
41682a:	b8 cc 00 00 00       	mov    $0xcc,%eax
41682f:	e8 8c a9 fe ff       	call   0x4011c0
416834:	53                   	push   %ebx
416835:	56                   	push   %esi
416836:	57                   	push   %edi
416837:	89 65 f4             	mov    %esp,-0xc(%ebp)
41683a:	c7 45 f8 40 11 40 00 	movl   $0x401140,-0x8(%ebp)
416841:	8b 45 08             	mov    0x8(%ebp),%eax
416844:	83 e0 01             	and    $0x1,%eax
416847:	89 45 fc             	mov    %eax,-0x4(%ebp)
41684a:	8b 45 08             	mov    0x8(%ebp),%eax
41684d:	24 fe                	and    $0xfe,%al
41684f:	89 45 08             	mov    %eax,0x8(%ebp)
416852:	8b 45 08             	mov    0x8(%ebp),%eax
416855:	8b 00                	mov    (%eax),%eax
416857:	ff 75 08             	push   0x8(%ebp)
41685a:	ff 50 04             	call   *0x4(%eax)
41685d:	68 a8 3a 41 00       	push   $0x413aa8
416862:	68 b0 3a 41 00       	push   $0x413ab0
416867:	e8 32 aa fe ff       	call   0x40129e
41686c:	8b d0                	mov    %eax,%edx
41686e:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416871:	e8 22 aa fe ff       	call   0x401298
416876:	50                   	push   %eax
416877:	68 b0 3a 41 00       	push   $0x413ab0
41687c:	e8 1d aa fe ff       	call   0x40129e
416881:	89 45 c8             	mov    %eax,-0x38(%ebp)
416884:	c7 45 c0 08 00 00 00 	movl   $0x8,-0x40(%ebp)
41688b:	8d 45 c0             	lea    -0x40(%ebp),%eax
41688e:	50                   	push   %eax
41688f:	8d 45 b0             	lea    -0x50(%ebp),%eax
416892:	50                   	push   %eax
416893:	e8 0c aa fe ff       	call   0x4012a4
416898:	68 b0 3a 41 00       	push   $0x413ab0
41689d:	68 b0 3a 41 00       	push   $0x413ab0
4168a2:	e8 f7 a9 fe ff       	call   0x40129e
4168a7:	89 45 a8             	mov    %eax,-0x58(%ebp)
4168aa:	c7 45 a0 08 80 00 00 	movl   $0x8008,-0x60(%ebp)
4168b1:	8d 45 b0             	lea    -0x50(%ebp),%eax
4168b4:	50                   	push   %eax
4168b5:	8d 45 a0             	lea    -0x60(%ebp),%eax
4168b8:	50                   	push   %eax
4168b9:	e8 ec a9 fe ff       	call   0x4012aa
4168be:	66 89 85 54 ff ff ff 	mov    %ax,-0xac(%ebp)
4168c5:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4168c8:	e8 e3 a9 fe ff       	call   0x4012b0
4168cd:	8d 45 a0             	lea    -0x60(%ebp),%eax
4168d0:	50                   	push   %eax
4168d1:	8d 45 b0             	lea    -0x50(%ebp),%eax
4168d4:	50                   	push   %eax
4168d5:	8d 45 c0             	lea    -0x40(%ebp),%eax
4168d8:	50                   	push   %eax
4168d9:	6a 03                	push   $0x3
4168db:	e8 dc a9 fe ff       	call   0x4012bc
4168e0:	83 c4 10             	add    $0x10,%esp
4168e3:	0f bf 85 54 ff ff ff 	movswl -0xac(%ebp),%eax
4168ea:	85 c0                	test   %eax,%eax
4168ec:	0f 84 83 00 00 00    	je     0x416975
4168f2:	c7 85 68 ff ff ff 0c 	movl   $0x413b0c,-0x98(%ebp)
4168f9:	3b 41 00
4168fc:	c7 85 60 ff ff ff 08 	movl   $0x8,-0xa0(%ebp)
416903:	00 00 00
416906:	8d 95 60 ff ff ff    	lea    -0xa0(%ebp),%edx
41690c:	8d 4d a0             	lea    -0x60(%ebp),%ecx
41690f:	e8 78 a9 fe ff       	call   0x40128c
416914:	c7 85 78 ff ff ff b8 	movl   $0x413ab8,-0x88(%ebp)
41691b:	3a 41 00
41691e:	c7 85 70 ff ff ff 08 	movl   $0x8,-0x90(%ebp)
416925:	00 00 00
416928:	8d 95 70 ff ff ff    	lea    -0x90(%ebp),%edx
41692e:	8d 4d b0             	lea    -0x50(%ebp),%ecx
416931:	e8 56 a9 fe ff       	call   0x40128c
416936:	c7 45 c8 56 8e da ff 	movl   $0xffda8e56,-0x38(%ebp)
41693d:	c7 45 c0 03 00 00 00 	movl   $0x3,-0x40(%ebp)
416944:	6a 00                	push   $0x0
416946:	8d 45 a0             	lea    -0x60(%ebp),%eax
416949:	50                   	push   %eax
41694a:	8d 45 b0             	lea    -0x50(%ebp),%eax
41694d:	50                   	push   %eax
41694e:	8d 45 c0             	lea    -0x40(%ebp),%eax
416951:	50                   	push   %eax
416952:	8d 45 90             	lea    -0x70(%ebp),%eax
416955:	50                   	push   %eax
416956:	e8 37 a9 fe ff       	call   0x401292
41695b:	8d 45 90             	lea    -0x70(%ebp),%eax
41695e:	50                   	push   %eax
41695f:	8d 45 a0             	lea    -0x60(%ebp),%eax
416962:	50                   	push   %eax
416963:	8d 45 b0             	lea    -0x50(%ebp),%eax
416966:	50                   	push   %eax
416967:	8d 45 c0             	lea    -0x40(%ebp),%eax
41696a:	50                   	push   %eax
41696b:	6a 04                	push   $0x4
41696d:	e8 4a a9 fe ff       	call   0x4012bc
416972:	83 c4 14             	add    $0x14,%esp
416975:	68 5c 3b 41 00       	push   $0x413b5c
41697a:	68 64 3b 41 00       	push   $0x413b64
41697f:	e8 1a a9 fe ff       	call   0x40129e
416984:	8b d0                	mov    %eax,%edx
416986:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416989:	e8 0a a9 fe ff       	call   0x401298
41698e:	50                   	push   %eax
41698f:	e8 ec a8 fe ff       	call   0x401280
416994:	50                   	push   %eax
416995:	8d 45 c0             	lea    -0x40(%ebp),%eax
416998:	50                   	push   %eax
416999:	e8 e8 a8 fe ff       	call   0x401286
41699e:	c7 45 88 6c 3b 41 00 	movl   $0x413b6c,-0x78(%ebp)
4169a5:	c7 45 80 08 80 00 00 	movl   $0x8008,-0x80(%ebp)
4169ac:	8d 45 c0             	lea    -0x40(%ebp),%eax
4169af:	50                   	push   %eax
4169b0:	8d 45 80             	lea    -0x80(%ebp),%eax
4169b3:	50                   	push   %eax
4169b4:	e8 f1 a8 fe ff       	call   0x4012aa
4169b9:	66 89 85 54 ff ff ff 	mov    %ax,-0xac(%ebp)
4169c0:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4169c3:	e8 e8 a8 fe ff       	call   0x4012b0
4169c8:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4169cb:	e8 fe a8 fe ff       	call   0x4012ce
4169d0:	0f bf 85 54 ff ff ff 	movswl -0xac(%ebp),%eax
4169d7:	85 c0                	test   %eax,%eax
4169d9:	74 32                	je     0x416a0d
4169db:	c7 45 88 74 3b 41 00 	movl   $0x413b74,-0x78(%ebp)
4169e2:	c7 45 80 08 00 00 00 	movl   $0x8,-0x80(%ebp)
4169e9:	8d 55 80             	lea    -0x80(%ebp),%edx
4169ec:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4169ef:	e8 98 a8 fe ff       	call   0x40128c
4169f4:	6a 02                	push   $0x2
4169f6:	8d 45 c0             	lea    -0x40(%ebp),%eax
4169f9:	50                   	push   %eax
4169fa:	e8 7b a8 fe ff       	call   0x40127a
4169ff:	dd 9d 58 ff ff ff    	fstpl  -0xa8(%ebp)
416a05:	8d 4d c0             	lea    -0x40(%ebp),%ecx
416a08:	e8 c1 a8 fe ff       	call   0x4012ce
416a0d:	6a 01                	push   $0x1
416a0f:	e8 5a a8 fe ff       	call   0x40126e
416a14:	8b d0                	mov    %eax,%edx
416a16:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416a19:	e8 7a a8 fe ff       	call   0x401298
416a1e:	50                   	push   %eax
416a1f:	68 a8 3a 41 00       	push   $0x413aa8
416a24:	e8 4b a8 fe ff       	call   0x401274
416a29:	f7 d8                	neg    %eax
416a2b:	1b c0                	sbb    %eax,%eax
416a2d:	f7 d8                	neg    %eax
416a2f:	f7 d8                	neg    %eax
416a31:	66 89 85 54 ff ff ff 	mov    %ax,-0xac(%ebp)
416a38:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416a3b:	e8 70 a8 fe ff       	call   0x4012b0
416a40:	0f bf 85 54 ff ff ff 	movswl -0xac(%ebp),%eax
416a47:	85 c0                	test   %eax,%eax
416a49:	0f 84 83 00 00 00    	je     0x416ad2
416a4f:	c7 85 68 ff ff ff b0 	movl   $0x413bb0,-0x98(%ebp)
416a56:	3b 41 00
416a59:	c7 85 60 ff ff ff 08 	movl   $0x8,-0xa0(%ebp)
416a60:	00 00 00
416a63:	8d 95 60 ff ff ff    	lea    -0xa0(%ebp),%edx
416a69:	8d 4d a0             	lea    -0x60(%ebp),%ecx
416a6c:	e8 1b a8 fe ff       	call   0x40128c
416a71:	c7 85 78 ff ff ff 94 	movl   $0x413b94,-0x88(%ebp)
416a78:	3b 41 00
416a7b:	c7 85 70 ff ff ff 08 	movl   $0x8,-0x90(%ebp)
416a82:	00 00 00
416a85:	8d 95 70 ff ff ff    	lea    -0x90(%ebp),%edx
416a8b:	8d 4d b0             	lea    -0x50(%ebp),%ecx
416a8e:	e8 f9 a7 fe ff       	call   0x40128c
416a93:	c7 45 c8 2d 86 a9 ff 	movl   $0xffa9862d,-0x38(%ebp)
416a9a:	c7 45 c0 03 00 00 00 	movl   $0x3,-0x40(%ebp)
416aa1:	6a 00                	push   $0x0
416aa3:	8d 45 a0             	lea    -0x60(%ebp),%eax
416aa6:	50                   	push   %eax
416aa7:	8d 45 b0             	lea    -0x50(%ebp),%eax
416aaa:	50                   	push   %eax
416aab:	8d 45 c0             	lea    -0x40(%ebp),%eax
416aae:	50                   	push   %eax
416aaf:	8d 45 90             	lea    -0x70(%ebp),%eax
416ab2:	50                   	push   %eax
416ab3:	e8 da a7 fe ff       	call   0x401292
416ab8:	8d 45 90             	lea    -0x70(%ebp),%eax
416abb:	50                   	push   %eax
416abc:	8d 45 a0             	lea    -0x60(%ebp),%eax
416abf:	50                   	push   %eax
416ac0:	8d 45 b0             	lea    -0x50(%ebp),%eax
416ac3:	50                   	push   %eax
416ac4:	8d 45 c0             	lea    -0x40(%ebp),%eax
416ac7:	50                   	push   %eax
416ac8:	6a 04                	push   $0x4
416aca:	e8 ed a7 fe ff       	call   0x4012bc
416acf:	83 c4 14             	add    $0x14,%esp
416ad2:	83 3d 64 94 41 00 00 	cmpl   $0x0,0x419464
416ad9:	75 1b                	jne    0x416af6
416adb:	68 64 94 41 00       	push   $0x419464
416ae0:	68 14 3c 41 00       	push   $0x413c14
416ae5:	e8 7e a7 fe ff       	call   0x401268
416aea:	c7 85 34 ff ff ff 64 	movl   $0x419464,-0xcc(%ebp)
416af1:	94 41 00
416af4:	eb 0a                	jmp    0x416b00
416af6:	c7 85 34 ff ff ff 64 	movl   $0x419464,-0xcc(%ebp)
416afd:	94 41 00
416b00:	8b 85 34 ff ff ff    	mov    -0xcc(%ebp),%eax
416b06:	8b 00                	mov    (%eax),%eax
416b08:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
416b0e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
416b11:	50                   	push   %eax
416b12:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
416b18:	8b 00                	mov    (%eax),%eax
416b1a:	ff b5 54 ff ff ff    	push   -0xac(%ebp)
416b20:	ff 50 14             	call   *0x14(%eax)
416b23:	db e2                	fnclex
416b25:	89 85 50 ff ff ff    	mov    %eax,-0xb0(%ebp)
416b2b:	83 bd 50 ff ff ff 00 	cmpl   $0x0,-0xb0(%ebp)
416b32:	7d 20                	jge    0x416b54
416b34:	6a 14                	push   $0x14
416b36:	68 04 3c 41 00       	push   $0x413c04
416b3b:	ff b5 54 ff ff ff    	push   -0xac(%ebp)
416b41:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
416b47:	e8 7c a7 fe ff       	call   0x4012c8
416b4c:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
416b52:	eb 07                	jmp    0x416b5b
416b54:	83 a5 30 ff ff ff 00 	andl   $0x0,-0xd0(%ebp)
416b5b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
416b5e:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
416b64:	8d 45 d8             	lea    -0x28(%ebp),%eax
416b67:	50                   	push   %eax
416b68:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
416b6e:	8b 00                	mov    (%eax),%eax
416b70:	ff b5 4c ff ff ff    	push   -0xb4(%ebp)
416b76:	ff 50 50             	call   *0x50(%eax)
416b79:	db e2                	fnclex
416b7b:	89 85 48 ff ff ff    	mov    %eax,-0xb8(%ebp)
416b81:	83 bd 48 ff ff ff 00 	cmpl   $0x0,-0xb8(%ebp)
416b88:	7d 20                	jge    0x416baa
416b8a:	6a 50                	push   $0x50
416b8c:	68 24 3c 41 00       	push   $0x413c24
416b91:	ff b5 4c ff ff ff    	push   -0xb4(%ebp)
416b97:	ff b5 48 ff ff ff    	push   -0xb8(%ebp)
416b9d:	e8 26 a7 fe ff       	call   0x4012c8
416ba2:	89 85 2c ff ff ff    	mov    %eax,-0xd4(%ebp)
416ba8:	eb 07                	jmp    0x416bb1
416baa:	83 a5 2c ff ff ff 00 	andl   $0x0,-0xd4(%ebp)
416bb1:	ff 75 d8             	push   -0x28(%ebp)
416bb4:	6a 00                	push   $0x0
416bb6:	e8 b9 a6 fe ff       	call   0x401274
416bbb:	f7 d8                	neg    %eax
416bbd:	1b c0                	sbb    %eax,%eax
416bbf:	40                   	inc    %eax
416bc0:	f7 d8                	neg    %eax
416bc2:	66 89 85 44 ff ff ff 	mov    %ax,-0xbc(%ebp)
416bc9:	8d 4d d8             	lea    -0x28(%ebp),%ecx
416bcc:	e8 df a6 fe ff       	call   0x4012b0
416bd1:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
416bd4:	e8 89 a6 fe ff       	call   0x401262
416bd9:	0f bf 85 44 ff ff ff 	movswl -0xbc(%ebp),%eax
416be0:	85 c0                	test   %eax,%eax
416be2:	0f 84 22 01 00 00    	je     0x416d0a
416be8:	83 3d 64 94 41 00 00 	cmpl   $0x0,0x419464
416bef:	75 1b                	jne    0x416c0c
416bf1:	68 64 94 41 00       	push   $0x419464
416bf6:	68 14 3c 41 00       	push   $0x413c14
416bfb:	e8 68 a6 fe ff       	call   0x401268
416c00:	c7 85 28 ff ff ff 64 	movl   $0x419464,-0xd8(%ebp)
416c07:	94 41 00
416c0a:	eb 0a                	jmp    0x416c16
416c0c:	c7 85 28 ff ff ff 64 	movl   $0x419464,-0xd8(%ebp)
416c13:	94 41 00
416c16:	8b 85 28 ff ff ff    	mov    -0xd8(%ebp),%eax
416c1c:	8b 00                	mov    (%eax),%eax
416c1e:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
416c24:	8d 45 d4             	lea    -0x2c(%ebp),%eax
416c27:	50                   	push   %eax
416c28:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
416c2e:	8b 00                	mov    (%eax),%eax
416c30:	ff b5 54 ff ff ff    	push   -0xac(%ebp)
416c36:	ff 50 4c             	call   *0x4c(%eax)
416c39:	db e2                	fnclex
416c3b:	89 85 50 ff ff ff    	mov    %eax,-0xb0(%ebp)
416c41:	83 bd 50 ff ff ff 00 	cmpl   $0x0,-0xb0(%ebp)
416c48:	7d 20                	jge    0x416c6a
416c4a:	6a 4c                	push   $0x4c
416c4c:	68 04 3c 41 00       	push   $0x413c04
416c51:	ff b5 54 ff ff ff    	push   -0xac(%ebp)
416c57:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
416c5d:	e8 66 a6 fe ff       	call   0x4012c8
416c62:	89 85 24 ff ff ff    	mov    %eax,-0xdc(%ebp)
416c68:	eb 07                	jmp    0x416c71
416c6a:	83 a5 24 ff ff ff 00 	andl   $0x0,-0xdc(%ebp)
416c71:	8b 45 d4             	mov    -0x2c(%ebp),%eax
416c74:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
416c7a:	c7 45 88 27 00 00 00 	movl   $0x27,-0x78(%ebp)
416c81:	c7 45 80 02 00 00 00 	movl   $0x2,-0x80(%ebp)
416c88:	8d 45 d0             	lea    -0x30(%ebp),%eax
416c8b:	50                   	push   %eax
416c8c:	6a 10                	push   $0x10
416c8e:	58                   	pop    %eax
416c8f:	e8 2c a5 fe ff       	call   0x4011c0
416c94:	8d 75 80             	lea    -0x80(%ebp),%esi
416c97:	8b fc                	mov    %esp,%edi
416c99:	a5                   	movsl  %ds:(%esi),%es:(%edi)
416c9a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
416c9b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
416c9c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
416c9d:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
416ca3:	8b 00                	mov    (%eax),%eax
416ca5:	ff b5 4c ff ff ff    	push   -0xb4(%ebp)