40b580:	3b c3                	cmp    %ebx,%eax
40b582:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40b585:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
40b588:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40b58b:	89 5d dc             	mov    %ebx,-0x24(%ebp)
40b58e:	89 5d cc             	mov    %ebx,-0x34(%ebp)
40b591:	89 5d bc             	mov    %ebx,-0x44(%ebp)
40b594:	89 5d ac             	mov    %ebx,-0x54(%ebp)
40b597:	89 5d a8             	mov    %ebx,-0x58(%ebp)
40b59a:	75 10                	jne    0x40b5ac
40b59c:	68 c8 d6 40 00       	push   $0x40d6c8
40b5a1:	68 28 8f 40 00       	push   $0x408f28
40b5a6:	ff 15 14 11 40 00    	call   *0x401114
40b5ac:	8b 35 c8 d6 40 00    	mov    0x40d6c8,%esi
40b5b2:	8b 06                	mov    (%esi),%eax
40b5b4:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40b5b7:	51                   	push   %ecx
40b5b8:	56                   	push   %esi
40b5b9:	ff 50 14             	call   *0x14(%eax)
40b5bc:	db e2                	fnclex
40b5be:	3b c3                	cmp    %ebx,%eax
40b5c0:	7d 13                	jge    0x40b5d5
40b5c2:	8b 3d 44 10 40 00    	mov    0x401044,%edi
40b5c8:	6a 14                	push   $0x14
40b5ca:	68 18 8f 40 00       	push   $0x408f18
40b5cf:	56                   	push   %esi
40b5d0:	50                   	push   %eax
40b5d1:	ff d7                	call   *%edi
40b5d3:	eb 06                	jmp    0x40b5db
40b5d5:	8b 3d 44 10 40 00    	mov    0x401044,%edi
40b5db:	8b 45 dc             	mov    -0x24(%ebp),%eax
40b5de:	8b 10                	mov    (%eax),%edx
40b5e0:	8d 4d a8             	lea    -0x58(%ebp),%ecx
40b5e3:	51                   	push   %ecx
40b5e4:	50                   	push   %eax
40b5e5:	8b f0                	mov    %eax,%esi
40b5e7:	ff 52 78             	call   *0x78(%edx)
40b5ea:	db e2                	fnclex
40b5ec:	3b c3                	cmp    %ebx,%eax
40b5ee:	7d 0b                	jge    0x40b5fb
40b5f0:	6a 78                	push   $0x78
40b5f2:	68 38 8f 40 00       	push   $0x408f38
40b5f7:	56                   	push   %esi
40b5f8:	50                   	push   %eax
40b5f9:	ff d7                	call   *%edi
40b5fb:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40b5fe:	ff 15 8c 11 40 00    	call   *0x40118c
40b604:	53                   	push   %ebx
40b605:	6a 01                	push   $0x1
40b607:	6a 02                	push   $0x2
40b609:	ff 15 1c 10 40 00    	call   *0x40101c
40b60f:	3d 02 01 00 00       	cmp    $0x102,%eax
40b614:	74 45                	je     0x40b65b
40b616:	8b 75 08             	mov    0x8(%ebp),%esi
40b619:	dd 05 08 12 40 00    	fldl   0x401208
40b61f:	8b 1e                	mov    (%esi),%ebx
40b621:	ff 15 68 11 40 00    	call   *0x401168
40b627:	50                   	push   %eax
40b628:	68 f0 c9 6f 49       	push   $0x496fc9f0
40b62d:	68 06 3a e5 4a       	push   $0x4ae53a06
40b632:	68 4c 51 28 4a       	push   $0x4a28514c
40b637:	68 50 7a 3a 49       	push   $0x493a7a50
40b63c:	6a 06                	push   $0x6
40b63e:	56                   	push   %esi
40b63f:	ff 93 c8 02 00 00    	call   *0x2c8(%ebx)
40b645:	db e2                	fnclex
40b647:	33 db                	xor    %ebx,%ebx
40b649:	3b c3                	cmp    %ebx,%eax
40b64b:	7d 0e                	jge    0x40b65b
40b64d:	68 c8 02 00 00       	push   $0x2c8
40b652:	68 7c 8d 40 00       	push   $0x408d7c
40b657:	56                   	push   %esi
40b658:	50                   	push   %eax
40b659:	ff d7                	call   *%edi
40b65b:	39 1d c8 d6 40 00    	cmp    %ebx,0x40d6c8
40b661:	75 10                	jne    0x40b673
40b663:	68 c8 d6 40 00       	push   $0x40d6c8
40b668:	68 28 8f 40 00       	push   $0x408f28
40b66d:	ff 15 14 11 40 00    	call   *0x401114
40b673:	8b 35 c8 d6 40 00    	mov    0x40d6c8,%esi
40b679:	8b 16                	mov    (%esi),%edx
40b67b:	8d 45 dc             	lea    -0x24(%ebp),%eax
40b67e:	50                   	push   %eax
40b67f:	56                   	push   %esi
40b680:	ff 52 14             	call   *0x14(%edx)
40b683:	db e2                	fnclex
40b685:	3b c3                	cmp    %ebx,%eax
40b687:	7d 0b                	jge    0x40b694
40b689:	6a 14                	push   $0x14
40b68b:	68 18 8f 40 00       	push   $0x408f18
40b690:	56                   	push   %esi
40b691:	50                   	push   %eax
40b692:	ff d7                	call   *%edi
40b694:	8b 45 dc             	mov    -0x24(%ebp),%eax
40b697:	8b 08                	mov    (%eax),%ecx
40b699:	8d 55 e0             	lea    -0x20(%ebp),%edx
40b69c:	52                   	push   %edx
40b69d:	50                   	push   %eax
40b69e:	8b f0                	mov    %eax,%esi
40b6a0:	ff 51 60             	call   *0x60(%ecx)
40b6a3:	db e2                	fnclex
40b6a5:	3b c3                	cmp    %ebx,%eax
40b6a7:	7d 0b                	jge    0x40b6b4
40b6a9:	6a 60                	push   $0x60
40b6ab:	68 38 8f 40 00       	push   $0x408f38
40b6b0:	56                   	push   %esi
40b6b1:	50                   	push   %eax
40b6b2:	ff d7                	call   *%edi
40b6b4:	8b 55 e0             	mov    -0x20(%ebp),%edx
40b6b7:	8b 35 70 11 40 00    	mov    0x401170,%esi
40b6bd:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40b6c0:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40b6c3:	ff d6                	call   *%esi
40b6c5:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40b6c8:	ff 15 8c 11 40 00    	call   *0x40118c
40b6ce:	53                   	push   %ebx
40b6cf:	6a 01                	push   $0x1
40b6d1:	ff 15 74 10 40 00    	call   *0x401074
40b6d7:	8b d0                	mov    %eax,%edx
40b6d9:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40b6dc:	ff d6                	call   *%esi
40b6de:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b6e1:	50                   	push   %eax
40b6e2:	ff 15 ac 10 40 00    	call   *0x4010ac
40b6e8:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40b6eb:	51                   	push   %ecx
40b6ec:	8d 55 ac             	lea    -0x54(%ebp),%edx
40b6ef:	52                   	push   %edx
40b6f0:	c7 45 b4 94 93 40 00 	movl   $0x409394,-0x4c(%ebp)
40b6f7:	c7 45 ac 08 80 00 00 	movl   $0x8008,-0x54(%ebp)
40b6fe:	ff 15 9c 10 40 00    	call   *0x40109c
40b704:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40b707:	8b f0                	mov    %eax,%esi
40b709:	ff 15 18 10 40 00    	call   *0x401018
40b70f:	66 3b f3             	cmp    %bx,%si
40b712:	74 0b                	je     0x40b71f
40b714:	68 f2 00 00 00       	push   $0xf2
40b719:	ff 15 20 11 40 00    	call   *0x401120
40b71f:	9b                   	fwait
40b720:	68 5e b7 40 00       	push   $0x40b75e
40b725:	eb 26                	jmp    0x40b74d
40b727:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40b72a:	ff 15 90 11 40 00    	call   *0x401190
40b730:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40b733:	ff 15 8c 11 40 00    	call   *0x40118c
40b739:	8d 45 bc             	lea    -0x44(%ebp),%eax
40b73c:	50                   	push   %eax
40b73d:	8d 4d cc             	lea    -0x34(%ebp),%ecx
40b740:	51                   	push   %ecx
40b741:	6a 02                	push   $0x2
40b743:	ff 15 20 10 40 00    	call   *0x401020
40b749:	83 c4 0c             	add    $0xc,%esp
40b74c:	c3                   	ret
40b74d:	8b 35 90 11 40 00    	mov    0x401190,%esi
40b753:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40b756:	ff d6                	call   *%esi
40b758:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40b75b:	ff d6                	call   *%esi
40b75d:	c3                   	ret
40b75e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40b761:	5f                   	pop    %edi
40b762:	5e                   	pop    %esi
40b763:	33 c0                	xor    %eax,%eax
40b765:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b76c:	5b                   	pop    %ebx
40b76d:	8b e5                	mov    %ebp,%esp
40b76f:	5d                   	pop    %ebp
40b770:	c2 1c 00             	ret    $0x1c
40b773:	90                   	nop
40b774:	90                   	nop
40b775:	90                   	nop
40b776:	90                   	nop
40b777:	90                   	nop
40b778:	90                   	nop
40b779:	90                   	nop
40b77a:	90                   	nop
40b77b:	90                   	nop
40b77c:	90                   	nop
40b77d:	90                   	nop
40b77e:	90                   	nop
40b77f:	90                   	nop
40b780:	55                   	push   %ebp
40b781:	8b ec                	mov    %esp,%ebp
40b783:	83 ec 0c             	sub    $0xc,%esp
40b786:	68 76 12 40 00       	push   $0x401276
40b78b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40b791:	50                   	push   %eax
40b792:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
40b799:	81 ec bc 00 00 00    	sub    $0xbc,%esp
40b79f:	53                   	push   %ebx
40b7a0:	56                   	push   %esi
40b7a1:	57                   	push   %edi
40b7a2:	89 65 f4             	mov    %esp,-0xc(%ebp)
40b7a5:	c7 45 f8 20 12 40 00 	movl   $0x401220,-0x8(%ebp)
40b7ac:	33 ff                	xor    %edi,%edi
40b7ae:	89 7d fc             	mov    %edi,-0x4(%ebp)
40b7b1:	8b 5d 08             	mov    0x8(%ebp),%ebx
40b7b4:	8b 03                	mov    (%ebx),%eax
40b7b6:	53                   	push   %ebx
40b7b7:	ff 50 04             	call   *0x4(%eax)
40b7ba:	8b 35 3c 10 40 00    	mov    0x40103c,%esi
40b7c0:	68 bc 93 40 00       	push   $0x4093bc
40b7c5:	68 c4 93 40 00       	push   $0x4093c4
40b7ca:	89 7d e8             	mov    %edi,-0x18(%ebp)
40b7cd:	89 7d dc             	mov    %edi,-0x24(%ebp)
40b7d0:	89 7d e0             	mov    %edi,-0x20(%ebp)
40b7d3:	89 7d cc             	mov    %edi,-0x34(%ebp)
40b7d6:	89 7d c8             	mov    %edi,-0x38(%ebp)
40b7d9:	89 7d c4             	mov    %edi,-0x3c(%ebp)
40b7dc:	89 7d c0             	mov    %edi,-0x40(%ebp)
40b7df:	89 7d b0             	mov    %edi,-0x50(%ebp)
40b7e2:	89 7d a0             	mov    %edi,-0x60(%ebp)
40b7e5:	89 7d 90             	mov    %edi,-0x70(%ebp)
40b7e8:	89 7d 80             	mov    %edi,-0x80(%ebp)
40b7eb:	89 bd 70 ff ff ff    	mov    %edi,-0x90(%ebp)
40b7f1:	89 bd 50 ff ff ff    	mov    %edi,-0xb0(%ebp)
40b7f7:	89 bd 4c ff ff ff    	mov    %edi,-0xb4(%ebp)
40b7fd:	ff d6                	call   *%esi
40b7ff:	8b d0                	mov    %eax,%edx
40b801:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40b804:	ff 15 70 11 40 00    	call   *0x401170
40b80a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
40b80d:	57                   	push   %edi
40b80e:	6a ff                	push   $0xffffffff
40b810:	6a 01                	push   $0x1
40b812:	57                   	push   %edi
40b813:	68 d0 93 40 00       	push   $0x4093d0
40b818:	51                   	push   %ecx
40b819:	ff 15 e0 10 40 00    	call   *0x4010e0
40b81f:	8b d0                	mov    %eax,%edx
40b821:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40b824:	ff 15 70 11 40 00    	call   *0x401170
40b82a:	8b 55 e8             	mov    -0x18(%ebp),%edx
40b82d:	52                   	push   %edx
40b82e:	68 bc 93 40 00       	push   $0x4093bc
40b833:	68 d8 93 40 00       	push   $0x4093d8
40b838:	ff d6                	call   *%esi
40b83a:	8b d0                	mov    %eax,%edx
40b83c:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b83f:	ff 15 70 11 40 00    	call   *0x401170
40b845:	50                   	push   %eax
40b846:	ff 15 90 10 40 00    	call   *0x401090
40b84c:	8b f0                	mov    %eax,%esi
40b84e:	f7 de                	neg    %esi
40b850:	1b f6                	sbb    %esi,%esi
40b852:	f7 de                	neg    %esi
40b854:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b857:	f7 de                	neg    %esi
40b859:	ff 15 90 11 40 00    	call   *0x401190
40b85f:	66 3b f7             	cmp    %di,%si
40b862:	74 7d                	je     0x40b8e1
40b864:	39 3d c8 d6 40 00    	cmp    %edi,0x40d6c8
40b86a:	75 10                	jne    0x40b87c
40b86c:	68 c8 d6 40 00       	push   $0x40d6c8
40b871:	68 28 8f 40 00       	push   $0x408f28
40b876:	ff 15 14 11 40 00    	call   *0x401114
40b87c:	8b 35 c8 d6 40 00    	mov    0x40d6c8,%esi
40b882:	8b 06                	mov    (%esi),%eax
40b884:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
40b887:	51                   	push   %ecx
40b888:	56                   	push   %esi
40b889:	ff 50 4c             	call   *0x4c(%eax)
40b88c:	db e2                	fnclex
40b88e:	3b c7                	cmp    %edi,%eax
40b890:	7d 0f                	jge    0x40b8a1
40b892:	6a 4c                	push   $0x4c
40b894:	68 18 8f 40 00       	push   $0x408f18
40b899:	56                   	push   %esi
40b89a:	50                   	push   %eax
40b89b:	ff 15 44 10 40 00    	call   *0x401044
40b8a1:	8b 45 c4             	mov    -0x3c(%ebp),%eax
40b8a4:	8b 10                	mov    (%eax),%edx
40b8a6:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b8a9:	51                   	push   %ecx
40b8aa:	68 f0 93 40 00       	push   $0x4093f0
40b8af:	68 e0 93 40 00       	push   $0x4093e0
40b8b4:	50                   	push   %eax
40b8b5:	8b f0                	mov    %eax,%esi
40b8b7:	ff 52 24             	call   *0x24(%edx)
40b8ba:	db e2                	fnclex
40b8bc:	3b c7                	cmp    %edi,%eax
40b8be:	7d 0f                	jge    0x40b8cf
40b8c0:	6a 24                	push   $0x24
40b8c2:	68 40 94 40 00       	push   $0x409440
40b8c7:	56                   	push   %esi
40b8c8:	50                   	push   %eax
40b8c9:	ff 15 44 10 40 00    	call   *0x401044
40b8cf:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b8d2:	ff 15 90 11 40 00    	call   *0x401190
40b8d8:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
40b8db:	ff 15 8c 11 40 00    	call   *0x40118c
40b8e1:	6a 01                	push   $0x1
40b8e3:	6a 01                	push   $0x1
40b8e5:	8d 55 a0             	lea    -0x60(%ebp),%edx
40b8e8:	52                   	push   %edx
40b8e9:	8d 45 b0             	lea    -0x50(%ebp),%eax
40b8ec:	50                   	push   %eax
40b8ed:	8d 4d 90             	lea    -0x70(%ebp),%ecx
40b8f0:	be 0c 00 00 00       	mov    $0xc,%esi
40b8f5:	51                   	push   %ecx
40b8f6:	c7 45 a8 04 00 02 80 	movl   $0x80020004,-0x58(%ebp)
40b8fd:	c7 45 a0 0a 00 00 00 	movl   $0xa,-0x60(%ebp)
40b904:	89 75 b8             	mov    %esi,-0x48(%ebp)
40b907:	c7 45 b0 02 00 00 00 	movl   $0x2,-0x50(%ebp)
40b90e:	ff 15 40 10 40 00    	call   *0x401040
40b914:	8d 55 90             	lea    -0x70(%ebp),%edx
40b917:	52                   	push   %edx
40b918:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
40b91e:	50                   	push   %eax
40b91f:	89 b5 58 ff ff ff    	mov    %esi,-0xa8(%ebp)
40b925:	c7 85 50 ff ff ff 02 	movl   $0x8002,-0xb0(%ebp)
40b92c:	80 00 00
40b92f:	ff 15 50 11 40 00    	call   *0x401150
40b935:	8d 4d 90             	lea    -0x70(%ebp),%ecx
40b938:	51                   	push   %ecx
40b939:	8d 55 a0             	lea    -0x60(%ebp),%edx
40b93c:	52                   	push   %edx
40b93d:	8b f0                	mov    %eax,%esi
40b93f:	8d 45 b0             	lea    -0x50(%ebp),%eax
40b942:	50                   	push   %eax
40b943:	6a 03                	push   $0x3
40b945:	ff 15 20 10 40 00    	call   *0x401020
40b94b:	83 c4 10             	add    $0x10,%esp
40b94e:	66 3b f7             	cmp    %di,%si
40b951:	74 70                	je     0x40b9c3
40b953:	39 3d c8 d6 40 00    	cmp    %edi,0x40d6c8
40b959:	75 10                	jne    0x40b96b
40b95b:	68 c8 d6 40 00       	push   $0x40d6c8
40b960:	68 28 8f 40 00       	push   $0x408f28
40b965:	ff 15 14 11 40 00    	call   *0x401114
40b96b:	a1 c8 d6 40 00       	mov    0x40d6c8,%eax
40b970:	8b 30                	mov    (%eax),%esi
40b972:	53                   	push   %ebx
40b973:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
40b976:	51                   	push   %ecx
40b977:	89 85 48 ff ff ff    	mov    %eax,-0xb8(%ebp)
40b97d:	ff 15 68 10 40 00    	call   *0x401068
40b983:	8b d6                	mov    %esi,%edx
40b985:	8b b5 48 ff ff ff    	mov    -0xb8(%ebp),%esi
40b98b:	50                   	push   %eax
40b98c:	56                   	push   %esi
40b98d:	ff 52 10             	call   *0x10(%edx)
40b990:	db e2                	fnclex
40b992:	3b c7                	cmp    %edi,%eax
40b994:	7d 1c                	jge    0x40b9b2
40b996:	6a 10                	push   $0x10
40b998:	68 18 8f 40 00       	push   $0x408f18
40b99d:	56                   	push   %esi
40b99e:	8b 35 44 10 40 00    	mov    0x401044,%esi
40b9a4:	50                   	push   %eax