4084bf:	8b 4d 08             	mov    0x8(%ebp),%ecx
4084c2:	dd 05 60 12 40 00    	fldl   0x401260
4084c8:	8b 31                	mov    (%ecx),%esi
4084ca:	ff 15 a0 11 40 00    	call   *0x4011a0
4084d0:	50                   	push   %eax
4084d1:	68 e8 32 86 4a       	push   $0x4a8632e8
4084d6:	68 90 02 ea 49       	push   $0x49ea0290
4084db:	68 ad 7b 00 4b       	push   $0x4b007bad
4084e0:	68 40 d0 28 48       	push   $0x4828d040
4084e5:	8b d6                	mov    %esi,%edx
4084e7:	8b 75 08             	mov    0x8(%ebp),%esi
4084ea:	6a 06                	push   $0x6
4084ec:	56                   	push   %esi
4084ed:	ff 92 c8 02 00 00    	call   *0x2c8(%edx)
4084f3:	db e2                	fnclex
4084f5:	3b c3                	cmp    %ebx,%eax
4084f7:	7d 12                	jge    0x40850b
4084f9:	68 c8 02 00 00       	push   $0x2c8
4084fe:	68 ec 5e 40 00       	push   $0x405eec
408503:	56                   	push   %esi
408504:	50                   	push   %eax
408505:	ff 15 58 10 40 00    	call   *0x401058
40850b:	8d 45 c8             	lea    -0x38(%ebp),%eax
40850e:	50                   	push   %eax
40850f:	c7 45 d0 00 00 d0 a5 	movl   $0xa5d00000,-0x30(%ebp)
408516:	c7 45 d4 5c a2 02 42 	movl   $0x4202a25c,-0x2c(%ebp)
40851d:	c7 45 c8 05 00 00 00 	movl   $0x5,-0x38(%ebp)
408524:	ff 15 78 10 40 00    	call   *0x401078
40852a:	8b d0                	mov    %eax,%edx
40852c:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40852f:	ff d7                	call   *%edi
408531:	50                   	push   %eax
408532:	68 f0 63 40 00       	push   $0x4063f0
408537:	68 fc 63 40 00       	push   $0x4063fc
40853c:	ff 15 4c 10 40 00    	call   *0x40104c
408542:	8b d0                	mov    %eax,%edx
408544:	8d 4d dc             	lea    -0x24(%ebp),%ecx
408547:	ff d7                	call   *%edi
408549:	50                   	push   %eax
40854a:	ff 15 d4 10 40 00    	call   *0x4010d4
408550:	8b f0                	mov    %eax,%esi
408552:	f7 de                	neg    %esi
408554:	8d 4d dc             	lea    -0x24(%ebp),%ecx
408557:	51                   	push   %ecx
408558:	1b f6                	sbb    %esi,%esi
40855a:	8d 55 e0             	lea    -0x20(%ebp),%edx
40855d:	52                   	push   %edx
40855e:	f7 de                	neg    %esi
408560:	6a 02                	push   $0x2
408562:	f7 de                	neg    %esi
408564:	ff 15 78 11 40 00    	call   *0x401178
40856a:	83 c4 0c             	add    $0xc,%esp
40856d:	8d 4d c8             	lea    -0x38(%ebp),%ecx
408570:	ff 15 1c 10 40 00    	call   *0x40101c
408576:	66 3b f3             	cmp    %bx,%si
408579:	74 6a                	je     0x4085e5
40857b:	b8 04 00 02 80       	mov    $0x80020004,%eax
408580:	be 0a 00 00 00       	mov    $0xa,%esi
408585:	8d 55 88             	lea    -0x78(%ebp),%edx
408588:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40858b:	89 45 a0             	mov    %eax,-0x60(%ebp)
40858e:	89 75 98             	mov    %esi,-0x68(%ebp)
408591:	89 45 b0             	mov    %eax,-0x50(%ebp)
408594:	89 75 a8             	mov    %esi,-0x58(%ebp)
408597:	89 45 c0             	mov    %eax,-0x40(%ebp)
40859a:	89 75 b8             	mov    %esi,-0x48(%ebp)
40859d:	c7 45 90 0c 64 40 00 	movl   $0x40640c,-0x70(%ebp)
4085a4:	c7 45 88 08 00 00 00 	movl   $0x8,-0x78(%ebp)
4085ab:	ff 15 98 11 40 00    	call   *0x401198
4085b1:	8d 45 98             	lea    -0x68(%ebp),%eax
4085b4:	50                   	push   %eax
4085b5:	8d 4d a8             	lea    -0x58(%ebp),%ecx
4085b8:	51                   	push   %ecx
4085b9:	8d 55 b8             	lea    -0x48(%ebp),%edx
4085bc:	52                   	push   %edx
4085bd:	53                   	push   %ebx
4085be:	8d 45 c8             	lea    -0x38(%ebp),%eax
4085c1:	50                   	push   %eax
4085c2:	ff 15 80 10 40 00    	call   *0x401080
4085c8:	8d 4d 98             	lea    -0x68(%ebp),%ecx
4085cb:	51                   	push   %ecx
4085cc:	8d 55 a8             	lea    -0x58(%ebp),%edx
4085cf:	52                   	push   %edx
4085d0:	8d 45 b8             	lea    -0x48(%ebp),%eax
4085d3:	50                   	push   %eax
4085d4:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4085d7:	51                   	push   %ecx
4085d8:	6a 04                	push   $0x4
4085da:	ff 15 28 10 40 00    	call   *0x401028
4085e0:	83 c4 14             	add    $0x14,%esp
4085e3:	eb 05                	jmp    0x4085ea
4085e5:	be 0a 00 00 00       	mov    $0xa,%esi
4085ea:	68 28 64 40 00       	push   $0x406428
4085ef:	68 3c 64 40 00       	push   $0x40643c
4085f4:	ff 15 4c 10 40 00    	call   *0x40104c
4085fa:	8d 55 c8             	lea    -0x38(%ebp),%edx
4085fd:	52                   	push   %edx
4085fe:	89 45 d0             	mov    %eax,-0x30(%ebp)
408601:	c7 45 c8 08 00 00 00 	movl   $0x8,-0x38(%ebp)
408608:	ff 15 5c 10 40 00    	call   *0x40105c
40860e:	33 c9                	xor    %ecx,%ecx
408610:	66 3d ff ff          	cmp    $0xffff,%ax
408614:	0f 95 c1             	setne  %cl
408617:	f7 d9                	neg    %ecx
408619:	89 8d 54 ff ff ff    	mov    %ecx,-0xac(%ebp)
40861f:	8d 4d c8             	lea    -0x38(%ebp),%ecx
408622:	ff 15 1c 10 40 00    	call   *0x40101c
408628:	66 39 9d 54 ff ff ff 	cmp    %bx,-0xac(%ebp)
40862f:	74 2c                	je     0x40865d
408631:	8b 45 08             	mov    0x8(%ebp),%eax
408634:	8b 10                	mov    (%eax),%edx
408636:	68 b4 32 00 00       	push   $0x32b4
40863b:	50                   	push   %eax
40863c:	ff 92 54 02 00 00    	call   *0x254(%edx)
408642:	db e2                	fnclex
408644:	3b c3                	cmp    %ebx,%eax
408646:	7d 15                	jge    0x40865d
408648:	8b 4d 08             	mov    0x8(%ebp),%ecx
40864b:	68 54 02 00 00       	push   $0x254
408650:	68 ec 5e 40 00       	push   $0x405eec
408655:	51                   	push   %ecx
408656:	50                   	push   %eax
408657:	ff 15 58 10 40 00    	call   *0x401058
40865d:	6a fe                	push   $0xfffffffe
40865f:	6a fe                	push   $0xfffffffe
408661:	6a fe                	push   $0xfffffffe
408663:	6a ff                	push   $0xffffffff
408665:	8d 55 c8             	lea    -0x38(%ebp),%edx
408668:	52                   	push   %edx
408669:	89 5d d0             	mov    %ebx,-0x30(%ebp)
40866c:	c7 45 c8 02 00 00 00 	movl   $0x2,-0x38(%ebp)
408673:	ff 15 98 10 40 00    	call   *0x401098
408679:	8b d0                	mov    %eax,%edx
40867b:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40867e:	ff d7                	call   *%edi
408680:	8d 4d c8             	lea    -0x38(%ebp),%ecx
408683:	ff 15 1c 10 40 00    	call   *0x40101c
408689:	b8 04 00 02 80       	mov    $0x80020004,%eax
40868e:	89 45 c0             	mov    %eax,-0x40(%ebp)
408691:	89 45 d0             	mov    %eax,-0x30(%ebp)
408694:	8d 45 b8             	lea    -0x48(%ebp),%eax
408697:	50                   	push   %eax
408698:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40869b:	51                   	push   %ecx
40869c:	68 00 00 f0 3f       	push   $0x3ff00000
4086a1:	53                   	push   %ebx
4086a2:	68 00 00 f0 3f       	push   $0x3ff00000
4086a7:	53                   	push   %ebx
4086a8:	68 00 00 f0 3f       	push   $0x3ff00000
4086ad:	53                   	push   %ebx
4086ae:	68 00 00 f0 3f       	push   $0x3ff00000
4086b3:	53                   	push   %ebx
4086b4:	89 75 b8             	mov    %esi,-0x48(%ebp)
4086b7:	89 75 c8             	mov    %esi,-0x38(%ebp)
4086ba:	ff 15 08 11 40 00    	call   *0x401108
4086c0:	ff 15 a8 10 40 00    	call   *0x4010a8
4086c6:	dc 1d 28 12 40 00    	fcompl 0x401228
4086cc:	df e0                	fnstsw %ax
4086ce:	f6 c4 40             	test   $0x40,%ah
4086d1:	75 07                	jne    0x4086da
4086d3:	b8 01 00 00 00       	mov    $0x1,%eax
4086d8:	eb 02                	jmp    0x4086dc
4086da:	33 c0                	xor    %eax,%eax
4086dc:	8b 3d 28 10 40 00    	mov    0x401028,%edi
4086e2:	f7 d8                	neg    %eax
4086e4:	8d 55 b8             	lea    -0x48(%ebp),%edx
4086e7:	8b f0                	mov    %eax,%esi
4086e9:	52                   	push   %edx
4086ea:	8d 45 c8             	lea    -0x38(%ebp),%eax
4086ed:	50                   	push   %eax
4086ee:	6a 02                	push   $0x2
4086f0:	ff d7                	call   *%edi
4086f2:	83 c4 0c             	add    $0xc,%esp
4086f5:	66 3b f3             	cmp    %bx,%si
4086f8:	74 37                	je     0x408731
4086fa:	8d 55 88             	lea    -0x78(%ebp),%edx
4086fd:	8d 4d c8             	lea    -0x38(%ebp),%ecx
408700:	c7 45 90 48 64 40 00 	movl   $0x406448,-0x70(%ebp)
408707:	c7 45 88 08 00 00 00 	movl   $0x8,-0x78(%ebp)
40870e:	ff 15 98 11 40 00    	call   *0x401198
408714:	8d 4d c8             	lea    -0x38(%ebp),%ecx
408717:	51                   	push   %ecx
408718:	8d 55 b8             	lea    -0x48(%ebp),%edx
40871b:	52                   	push   %edx
40871c:	ff 15 68 10 40 00    	call   *0x401068
408722:	8d 45 b8             	lea    -0x48(%ebp),%eax
408725:	50                   	push   %eax
408726:	8d 4d c8             	lea    -0x38(%ebp),%ecx
408729:	51                   	push   %ecx
40872a:	6a 02                	push   $0x2
40872c:	ff d7                	call   *%edi
40872e:	83 c4 0c             	add    $0xc,%esp
408731:	9b                   	fwait
408732:	68 7f 87 40 00       	push   $0x40877f
408737:	eb 30                	jmp    0x408769
408739:	8d 55 d8             	lea    -0x28(%ebp),%edx
40873c:	52                   	push   %edx
40873d:	8d 45 dc             	lea    -0x24(%ebp),%eax
408740:	50                   	push   %eax
408741:	8d 4d e0             	lea    -0x20(%ebp),%ecx
408744:	51                   	push   %ecx
408745:	6a 03                	push   $0x3
408747:	ff 15 78 11 40 00    	call   *0x401178
40874d:	8d 55 98             	lea    -0x68(%ebp),%edx
408750:	52                   	push   %edx
408751:	8d 45 a8             	lea    -0x58(%ebp),%eax
408754:	50                   	push   %eax
408755:	8d 4d b8             	lea    -0x48(%ebp),%ecx
408758:	51                   	push   %ecx
408759:	8d 55 c8             	lea    -0x38(%ebp),%edx
40875c:	52                   	push   %edx
40875d:	6a 04                	push   $0x4
40875f:	ff 15 28 10 40 00    	call   *0x401028
408765:	83 c4 24             	add    $0x24,%esp
408768:	c3                   	ret
408769:	8b 35 cc 11 40 00    	mov    0x4011cc,%esi
40876f:	8d 4d ec             	lea    -0x14(%ebp),%ecx
408772:	ff d6                	call   *%esi
408774:	8d 4d e8             	lea    -0x18(%ebp),%ecx
408777:	ff d6                	call   *%esi
408779:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40877c:	ff d6                	call   *%esi
40877e:	c3                   	ret
40877f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
408782:	5f                   	pop    %edi
408783:	5e                   	pop    %esi
408784:	33 c0                	xor    %eax,%eax
408786:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40878d:	5b                   	pop    %ebx
40878e:	8b e5                	mov    %ebp,%esp
408790:	5d                   	pop    %ebp
408791:	c2 0c 00             	ret    $0xc
408794:	90                   	nop
408795:	90                   	nop
408796:	90                   	nop
408797:	90                   	nop
408798:	90                   	nop
408799:	90                   	nop
40879a:	90                   	nop
40879b:	90                   	nop
40879c:	90                   	nop
40879d:	90                   	nop
40879e:	90                   	nop
40879f:	90                   	nop
4087a0:	55                   	push   %ebp
4087a1:	8b ec                	mov    %esp,%ebp
4087a3:	83 ec 08             	sub    $0x8,%esp
4087a6:	68 26 13 40 00       	push   $0x401326
4087ab:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4087b1:	50                   	push   %eax
4087b2:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
4087b9:	81 ec 28 01 00 00    	sub    $0x128,%esp
4087bf:	53                   	push   %ebx
4087c0:	56                   	push   %esi
4087c1:	57                   	push   %edi
4087c2:	89 65 f8             	mov    %esp,-0x8(%ebp)
4087c5:	c7 45 fc 78 12 40 00 	movl   $0x401278,-0x4(%ebp)
4087cc:	33 ff                	xor    %edi,%edi
4087ce:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4087d1:	50                   	push   %eax
4087d2:	89 7d e0             	mov    %edi,-0x20(%ebp)
4087d5:	89 7d d8             	mov    %edi,-0x28(%ebp)
4087d8:	89 7d dc             	mov    %edi,-0x24(%ebp)
4087db:	89 7d d4             	mov    %edi,-0x2c(%ebp)
4087de:	89 7d cc             	mov    %edi,-0x34(%ebp)
4087e1:	89 7d c8             	mov    %edi,-0x38(%ebp)
4087e4:	89 7d c4             	mov    %edi,-0x3c(%ebp)
4087e7:	89 7d a4             	mov    %edi,-0x5c(%ebp)
4087ea:	89 7d 94             	mov    %edi,-0x6c(%ebp)
4087ed:	89 7d 84             	mov    %edi,-0x7c(%ebp)
4087f0:	89 bd 74 ff ff ff    	mov    %edi,-0x8c(%ebp)
4087f6:	89 bd 64 ff ff ff    	mov    %edi,-0x9c(%ebp)
4087fc:	89 bd 54 ff ff ff    	mov    %edi,-0xac(%ebp)
408802:	89 bd 44 ff ff ff    	mov    %edi,-0xbc(%ebp)
408808:	89 bd 34 ff ff ff    	mov    %edi,-0xcc(%ebp)
40880e:	89 bd 24 ff ff ff    	mov    %edi,-0xdc(%ebp)
408814:	89 bd 14 ff ff ff    	mov    %edi,-0xec(%ebp)
40881a:	89 bd 04 ff ff ff    	mov    %edi,-0xfc(%ebp)
408820:	89 bd e0 fe ff ff    	mov    %edi,-0x120(%ebp)
408826:	c7 45 bc 4b 00 00 00 	movl   $0x4b,-0x44(%ebp)
40882d:	c7 45 b4 02 00 00 00 	movl   $0x2,-0x4c(%ebp)
408834:	ff 15 60 11 40 00    	call   *0x401160
40883a:	8b 35 b0 11 40 00    	mov    0x4011b0,%esi
408840:	8b d0                	mov    %eax,%edx
408842:	8d 4d cc             	lea    -0x34(%ebp),%ecx
408845:	ff d6                	call   *%esi
408847:	50                   	push   %eax
408848:	68 5c 60 40 00       	push   $0x40605c
40884d:	68 64 60 40 00       	push   $0x406064
408852:	ff 15 4c 10 40 00    	call   *0x40104c
408858:	8b d0                	mov    %eax,%edx
40885a:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40885d:	ff d6                	call   *%esi
40885f:	50                   	push   %eax
408860:	ff 15 d4 10 40 00    	call   *0x4010d4
408866:	8b f0                	mov    %eax,%esi
408868:	f7 de                	neg    %esi
40886a:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40886d:	51                   	push   %ecx
40886e:	1b f6                	sbb    %esi,%esi
408870:	8d 55 cc             	lea    -0x34(%ebp),%edx
408873:	52                   	push   %edx
408874:	f7 de                	neg    %esi
408876:	6a 02                	push   $0x2
408878:	f7 de                	neg    %esi
40887a:	ff 15 78 11 40 00    	call   *0x401178
408880:	83 c4 0c             	add    $0xc,%esp
408883:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
408886:	ff 15 1c 10 40 00    	call   *0x40101c
40888c:	66 3b f7             	cmp    %di,%si
40888f:	0f 84 31 01 00 00    	je     0x4089c6
408895:	39 3d 38 b3 40 00    	cmp    %edi,0x40b338
40889b:	75 10                	jne    0x4088ad
40889d:	68 38 b3 40 00       	push   $0x40b338
4088a2:	68 c4 60 40 00       	push   $0x4060c4
4088a7:	ff 15 4c 11 40 00    	call   *0x40114c
4088ad:	8d 5d c4             	lea    -0x3c(%ebp),%ebx
4088b0:	53                   	push   %ebx
4088b1:	83 ec 10             	sub    $0x10,%esp
4088b4:	8b dc                	mov    %esp,%ebx
4088b6:	b9 03 00 00 00       	mov    $0x3,%ecx
4088bb:	89 0b                	mov    %ecx,(%ebx)
4088bd:	8b 8d 08 ff ff ff    	mov    -0xf8(%ebp),%ecx
4088c3:	89 4b 04             	mov    %ecx,0x4(%ebx)
4088c6:	b8 2a 23 30 00       	mov    $0x30232a,%eax
4088cb:	89 43 08             	mov    %eax,0x8(%ebx)
4088ce:	8b 85 10 ff ff ff    	mov    -0xf0(%ebp),%eax
4088d4:	89 43 0c             	mov    %eax,0xc(%ebx)
4088d7:	83 ec 10             	sub    $0x10,%esp
4088da:	8b cc                	mov    %esp,%ecx
4088dc:	b8 03 00 00 00       	mov    $0x3,%eax
4088e1:	89 01                	mov    %eax,(%ecx)
4088e3:	8b 85 18 ff ff ff    	mov    -0xe8(%ebp),%eax
4088e9:	89 41 04             	mov    %eax,0x4(%ecx)
4088ec:	8b 35 38 b3 40 00    	mov    0x40b338,%esi
4088f2:	ba d1 d3 85 00       	mov    $0x85d3d1,%edx
4088f7:	89 51 08             	mov    %edx,0x8(%ecx)
4088fa:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
408900:	89 51 0c             	mov    %edx,0xc(%ecx)
408903:	8b 95 28 ff ff ff    	mov    -0xd8(%ebp),%edx
408909:	83 ec 10             	sub    $0x10,%esp
40890c:	8b cc                	mov    %esp,%ecx
40890e:	b8 02 00 00 00       	mov    $0x2,%eax
408913:	89 01                	mov    %eax,(%ecx)
408915:	89 51 04             	mov    %edx,0x4(%ecx)
408918:	8b 95 38 ff ff ff    	mov    -0xc8(%ebp),%edx
40891e:	b8 18 00 00 00       	mov    $0x18,%eax
408923:	89 41 08             	mov    %eax,0x8(%ecx)
408926:	8b 85 30 ff ff ff    	mov    -0xd0(%ebp),%eax
40892c:	89 41 0c             	mov    %eax,0xc(%ecx)