40b5d2:	ff 75 d4             	push   -0x2c(%ebp)
40b5d5:	ff 75 b4             	push   -0x4c(%ebp)
40b5d8:	e8 f7 5e ff ff       	call   0x4014d4
40b5dd:	89 45 94             	mov    %eax,-0x6c(%ebp)
40b5e0:	eb 04                	jmp    0x40b5e6
40b5e2:	83 65 94 00          	andl   $0x0,-0x6c(%ebp)
40b5e6:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b5e9:	50                   	push   %eax
40b5ea:	e8 eb 5e ff ff       	call   0x4014da
40b5ef:	8d 45 ec             	lea    -0x14(%ebp),%eax
40b5f2:	50                   	push   %eax
40b5f3:	e8 be 5e ff ff       	call   0x4014b6
40b5f8:	89 45 c0             	mov    %eax,-0x40(%ebp)
40b5fb:	8b 45 e0             	mov    -0x20(%ebp),%eax
40b5fe:	f7 d0                	not    %eax
40b600:	f7 d0                	not    %eax
40b602:	83 c0 0c             	add    $0xc,%eax
40b605:	50                   	push   %eax
40b606:	ff 75 c0             	push   -0x40(%ebp)
40b609:	e8 34 ae ff ff       	call   0x406442
40b60e:	8b 45 e0             	mov    -0x20(%ebp),%eax
40b611:	f7 d0                	not    %eax
40b613:	f7 d0                	not    %eax
40b615:	50                   	push   %eax
40b616:	e8 36 ae ff ff       	call   0x406451
40b61b:	48                   	dec    %eax
40b61c:	89 45 a4             	mov    %eax,-0x5c(%ebp)
40b61f:	c7 45 a8 01 00 00 00 	movl   $0x1,-0x58(%ebp)
40b626:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
40b62a:	eb 09                	jmp    0x40b635
40b62c:	8b 45 e8             	mov    -0x18(%ebp),%eax
40b62f:	03 45 a8             	add    -0x58(%ebp),%eax
40b632:	89 45 e8             	mov    %eax,-0x18(%ebp)
40b635:	8b 45 e8             	mov    -0x18(%ebp),%eax
40b638:	3b 45 a4             	cmp    -0x5c(%ebp),%eax
40b63b:	7f 45                	jg     0x40b682
40b63d:	ff 75 e0             	push   -0x20(%ebp)
40b640:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b643:	50                   	push   %eax
40b644:	e8 97 5e ff ff       	call   0x4014e0
40b649:	8b 45 cc             	mov    -0x34(%ebp),%eax
40b64c:	8b 4d e8             	mov    -0x18(%ebp),%ecx
40b64f:	2b 48 14             	sub    0x14(%eax),%ecx
40b652:	8b 45 cc             	mov    -0x34(%ebp),%eax
40b655:	8b 40 0c             	mov    0xc(%eax),%eax
40b658:	8d 04 88             	lea    (%eax,%ecx,4),%eax
40b65b:	50                   	push   %eax
40b65c:	e8 55 5e ff ff       	call   0x4014b6
40b661:	89 45 c0             	mov    %eax,-0x40(%ebp)
40b664:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b667:	50                   	push   %eax
40b668:	e8 6d 5e ff ff       	call   0x4014da
40b66d:	ff 75 c0             	push   -0x40(%ebp)
40b670:	8b 45 e8             	mov    -0x18(%ebp),%eax
40b673:	8b 4d d8             	mov    -0x28(%ebp),%ecx
40b676:	8d 44 81 04          	lea    0x4(%ecx,%eax,4),%eax
40b67a:	50                   	push   %eax
40b67b:	e8 c2 ad ff ff       	call   0x406442
40b680:	eb aa                	jmp    0x40b62c
40b682:	c7 45 c0 ff 74 24 0c 	movl   $0xc2474ff,-0x40(%ebp)
40b689:	8d 45 c0             	lea    -0x40(%ebp),%eax
40b68c:	50                   	push   %eax
40b68d:	e8 24 5e ff ff       	call   0x4014b6
40b692:	89 45 bc             	mov    %eax,-0x44(%ebp)
40b695:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b698:	83 c0 04             	add    $0x4,%eax
40b69b:	50                   	push   %eax
40b69c:	ff 75 bc             	push   -0x44(%ebp)
40b69f:	e8 9e ad ff ff       	call   0x406442
40b6a4:	c7 45 c0 ff 54 24 0c 	movl   $0xc2454ff,-0x40(%ebp)
40b6ab:	8d 45 c0             	lea    -0x40(%ebp),%eax
40b6ae:	50                   	push   %eax
40b6af:	e8 02 5e ff ff       	call   0x4014b6
40b6b4:	89 45 bc             	mov    %eax,-0x44(%ebp)
40b6b7:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b6ba:	83 c0 08             	add    $0x8,%eax
40b6bd:	50                   	push   %eax
40b6be:	ff 75 bc             	push   -0x44(%ebp)
40b6c1:	e8 7c ad ff ff       	call   0x406442
40b6c6:	c7 45 c0 8b 4c 24 10 	movl   $0x10244c8b,-0x40(%ebp)
40b6cd:	8d 45 c0             	lea    -0x40(%ebp),%eax
40b6d0:	50                   	push   %eax
40b6d1:	e8 e0 5d ff ff       	call   0x4014b6
40b6d6:	89 45 bc             	mov    %eax,-0x44(%ebp)
40b6d9:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b6dc:	83 c0 0c             	add    $0xc,%eax
40b6df:	50                   	push   %eax
40b6e0:	ff 75 bc             	push   -0x44(%ebp)
40b6e3:	e8 5a ad ff ff       	call   0x406442
40b6e8:	c7 45 c0 89 01 c2 2c 	movl   $0x2cc20189,-0x40(%ebp)
40b6ef:	8d 45 c0             	lea    -0x40(%ebp),%eax
40b6f2:	50                   	push   %eax
40b6f3:	e8 be 5d ff ff       	call   0x4014b6
40b6f8:	89 45 bc             	mov    %eax,-0x44(%ebp)
40b6fb:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b6fe:	83 c0 10             	add    $0x10,%eax
40b701:	50                   	push   %eax
40b702:	ff 75 bc             	push   -0x44(%ebp)
40b705:	e8 38 ad ff ff       	call   0x406442
40b70a:	83 65 c0 00          	andl   $0x0,-0x40(%ebp)
40b70e:	8d 45 c0             	lea    -0x40(%ebp),%eax
40b711:	50                   	push   %eax
40b712:	e8 9f 5d ff ff       	call   0x4014b6
40b717:	89 45 bc             	mov    %eax,-0x44(%ebp)
40b71a:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b71d:	83 c0 14             	add    $0x14,%eax
40b720:	50                   	push   %eax
40b721:	ff 75 bc             	push   -0x44(%ebp)
40b724:	e8 19 ad ff ff       	call   0x406442
40b729:	8b 45 d8             	mov    -0x28(%ebp),%eax
40b72c:	83 c0 04             	add    $0x4,%eax
40b72f:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
40b732:	6a 08                	push   $0x8
40b734:	5a                   	pop    %edx
40b735:	2b 51 14             	sub    0x14(%ecx),%edx
40b738:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
40b73b:	8b 49 0c             	mov    0xc(%ecx),%ecx
40b73e:	89 04 91             	mov    %eax,(%ecx,%edx,4)
40b741:	ff 75 08             	push   0x8(%ebp)
40b744:	e8 6d 5d ff ff       	call   0x4014b6
40b749:	89 45 c0             	mov    %eax,-0x40(%ebp)
40b74c:	8d 45 d0             	lea    -0x30(%ebp),%eax
40b74f:	50                   	push   %eax
40b750:	e8 61 5d ff ff       	call   0x4014b6
40b755:	89 45 bc             	mov    %eax,-0x44(%ebp)
40b758:	66 83 65 c4 00       	andw   $0x0,-0x3c(%ebp)
40b75d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
40b760:	50                   	push   %eax
40b761:	6a 00                	push   $0x0
40b763:	6a 00                	push   $0x0
40b765:	6a 00                	push   $0x0
40b767:	6a 00                	push   $0x0
40b769:	6a 00                	push   $0x0
40b76b:	6a 00                	push   $0x0
40b76d:	ff 75 bc             	push   -0x44(%ebp)
40b770:	ff 75 c0             	push   -0x40(%ebp)
40b773:	ff 35 00 11 46 00    	push   0x461100
40b779:	8b 45 d4             	mov    -0x2c(%ebp),%eax
40b77c:	8b 00                	mov    (%eax),%eax
40b77e:	ff 75 d4             	push   -0x2c(%ebp)
40b781:	ff 50 20             	call   *0x20(%eax)
40b784:	db e2                	fnclex
40b786:	89 45 b4             	mov    %eax,-0x4c(%ebp)
40b789:	83 7d b4 00          	cmpl   $0x0,-0x4c(%ebp)
40b78d:	7d 17                	jge    0x40b7a6
40b78f:	6a 20                	push   $0x20
40b791:	68 d0 38 40 00       	push   $0x4038d0
40b796:	ff 75 d4             	push   -0x2c(%ebp)
40b799:	ff 75 b4             	push   -0x4c(%ebp)
40b79c:	e8 33 5d ff ff       	call   0x4014d4
40b7a1:	89 45 90             	mov    %eax,-0x70(%ebp)
40b7a4:	eb 04                	jmp    0x40b7aa
40b7a6:	83 65 90 00          	andl   $0x0,-0x70(%ebp)
40b7aa:	8b 45 e0             	mov    -0x20(%ebp),%eax
40b7ad:	f7 d0                	not    %eax
40b7af:	f7 d0                	not    %eax
40b7b1:	50                   	push   %eax
40b7b2:	e8 9a ac ff ff       	call   0x406451
40b7b7:	48                   	dec    %eax
40b7b8:	89 45 9c             	mov    %eax,-0x64(%ebp)
40b7bb:	c7 45 a0 01 00 00 00 	movl   $0x1,-0x60(%ebp)
40b7c2:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
40b7c6:	eb 09                	jmp    0x40b7d1
40b7c8:	8b 45 e8             	mov    -0x18(%ebp),%eax
40b7cb:	03 45 a0             	add    -0x60(%ebp),%eax
40b7ce:	89 45 e8             	mov    %eax,-0x18(%ebp)
40b7d1:	8b 45 e8             	mov    -0x18(%ebp),%eax
40b7d4:	3b 45 9c             	cmp    -0x64(%ebp),%eax
40b7d7:	7f 45                	jg     0x40b81e
40b7d9:	ff 75 e0             	push   -0x20(%ebp)
40b7dc:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b7df:	50                   	push   %eax
40b7e0:	e8 fb 5c ff ff       	call   0x4014e0
40b7e5:	8b 45 cc             	mov    -0x34(%ebp),%eax
40b7e8:	8b 4d e8             	mov    -0x18(%ebp),%ecx
40b7eb:	2b 48 14             	sub    0x14(%eax),%ecx
40b7ee:	8b 45 cc             	mov    -0x34(%ebp),%eax
40b7f1:	8b 40 0c             	mov    0xc(%eax),%eax
40b7f4:	8d 04 88             	lea    (%eax,%ecx,4),%eax
40b7f7:	50                   	push   %eax
40b7f8:	e8 b9 5c ff ff       	call   0x4014b6
40b7fd:	89 45 c0             	mov    %eax,-0x40(%ebp)
40b800:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b803:	50                   	push   %eax
40b804:	e8 d1 5c ff ff       	call   0x4014da
40b809:	8b 45 e8             	mov    -0x18(%ebp),%eax
40b80c:	8b 4d d8             	mov    -0x28(%ebp),%ecx
40b80f:	8d 44 81 04          	lea    0x4(%ecx,%eax,4),%eax
40b813:	50                   	push   %eax
40b814:	ff 75 c0             	push   -0x40(%ebp)
40b817:	e8 26 ac ff ff       	call   0x406442
40b81c:	eb aa                	jmp    0x40b7c8
40b81e:	8d 45 dc             	lea    -0x24(%ebp),%eax
40b821:	50                   	push   %eax
40b822:	e8 8f 5c ff ff       	call   0x4014b6
40b827:	89 45 c0             	mov    %eax,-0x40(%ebp)
40b82a:	ff 75 d8             	push   -0x28(%ebp)
40b82d:	ff 75 c0             	push   -0x40(%ebp)
40b830:	e8 0d ac ff ff       	call   0x406442
40b835:	68 6d b8 40 00       	push   $0x40b86d
40b83a:	eb 12                	jmp    0x40b84e
40b83c:	8d 45 cc             	lea    -0x34(%ebp),%eax
40b83f:	50                   	push   %eax
40b840:	e8 95 5c ff ff       	call   0x4014da
40b845:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b848:	e8 9f 5c ff ff       	call   0x4014ec
40b84d:	c3                   	ret
40b84e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40b851:	50                   	push   %eax
40b852:	6a 00                	push   $0x0
40b854:	e8 75 5c ff ff       	call   0x4014ce
40b859:	8d 45 e0             	lea    -0x20(%ebp),%eax
40b85c:	50                   	push   %eax
40b85d:	6a 00                	push   $0x0
40b85f:	e8 6a 5c ff ff       	call   0x4014ce
40b864:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
40b867:	e8 80 5c ff ff       	call   0x4014ec
40b86c:	c3                   	ret
40b86d:	8b 45 d0             	mov    -0x30(%ebp),%eax
40b870:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40b873:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b87a:	5f                   	pop    %edi
40b87b:	5e                   	pop    %esi
40b87c:	5b                   	pop    %ebx
40b87d:	c9                   	leave
40b87e:	c2 04 00             	ret    $0x4
40b881:	55                   	push   %ebp
40b882:	8b ec                	mov    %esp,%ebp
40b884:	51                   	push   %ecx
40b885:	51                   	push   %ecx
40b886:	68 36 13 40 00       	push   $0x401336
40b88b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40b891:	50                   	push   %eax
40b892:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
40b899:	b8 d4 00 00 00       	mov    $0xd4,%eax
40b89e:	e8 8d 5a ff ff       	call   0x401330
40b8a3:	53                   	push   %ebx
40b8a4:	56                   	push   %esi
40b8a5:	57                   	push   %edi
40b8a6:	89 65 f8             	mov    %esp,-0x8(%ebp)
40b8a9:	c7 45 fc 38 12 40 00 	movl   $0x401238,-0x4(%ebp)
40b8b0:	ff 75 08             	push   0x8(%ebp)
40b8b3:	8d 45 e0             	lea    -0x20(%ebp),%eax
40b8b6:	50                   	push   %eax
40b8b7:	e8 2a 5c ff ff       	call   0x4014e6
40b8bc:	8b 45 0c             	mov    0xc(%ebp),%eax
40b8bf:	89 45 80             	mov    %eax,-0x80(%ebp)
40b8c2:	8d 45 90             	lea    -0x70(%ebp),%eax
40b8c5:	50                   	push   %eax
40b8c6:	6a 04                	push   $0x4
40b8c8:	ff 75 80             	push   -0x80(%ebp)
40b8cb:	8b 45 e0             	mov    -0x20(%ebp),%eax
40b8ce:	8b 00                	mov    (%eax),%eax
40b8d0:	ff 75 e0             	push   -0x20(%ebp)
40b8d3:	ff 50 0c             	call   *0xc(%eax)
40b8d6:	db e2                	fnclex
40b8d8:	89 45 88             	mov    %eax,-0x78(%ebp)
40b8db:	83 7d 88 00          	cmpl   $0x0,-0x78(%ebp)
40b8df:	7d 1a                	jge    0x40b8fb
40b8e1:	6a 0c                	push   $0xc
40b8e3:	68 c0 47 40 00       	push   $0x4047c0
40b8e8:	ff 75 e0             	push   -0x20(%ebp)
40b8eb:	ff 75 88             	push   -0x78(%ebp)
40b8ee:	e8 e1 5b ff ff       	call   0x4014d4
40b8f3:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
40b8f9:	eb 07                	jmp    0x40b902
40b8fb:	83 a5 6c ff ff ff 00 	andl   $0x0,-0x94(%ebp)
40b902:	8b 45 80             	mov    -0x80(%ebp),%eax
40b905:	81 38 7d 44 d4 dd    	cmpl   $0xddd4447d,(%eax)
40b90b:	74 05                	je     0x40b912
40b90d:	e9 58 0b 00 00       	jmp    0x40c46a
40b912:	ff 75 e0             	push   -0x20(%ebp)
40b915:	8d 45 c4             	lea    -0x3c(%ebp),%eax
40b918:	50                   	push   %eax
40b919:	e8 c8 5b ff ff       	call   0x4014e6
40b91e:	50                   	push   %eax
40b91f:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40b922:	50                   	push   %eax
40b923:	e8 30 0d 00 00       	call   0x40c658
40b928:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40b92b:	50                   	push   %eax
40b92c:	e8 43 5b ff ff       	call   0x401474
40b931:	8b d0                	mov    %eax,%edx
40b933:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b936:	e8 87 5b ff ff       	call   0x4014c2
40b93b:	8b d0                	mov    %eax,%edx
40b93d:	8b 4d 80             	mov    -0x80(%ebp),%ecx
40b940:	83 c1 04             	add    $0x4,%ecx
40b943:	e8 80 5b ff ff       	call   0x4014c8
40b948:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b94b:	e8 6c 5b ff ff       	call   0x4014bc
40b950:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
40b953:	e8 94 5b ff ff       	call   0x4014ec
40b958:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
40b95b:	e8 44 5b ff ff       	call   0x4014a4
40b960:	ff 75 e0             	push   -0x20(%ebp)
40b963:	8d 45 c4             	lea    -0x3c(%ebp),%eax
40b966:	50                   	push   %eax
40b967:	e8 7a 5b ff ff       	call   0x4014e6
40b96c:	50                   	push   %eax
40b96d:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40b970:	50                   	push   %eax
40b971:	e8 e2 0c 00 00       	call   0x40c658
40b976:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40b979:	50                   	push   %eax
40b97a:	e8 f5 5a ff ff       	call   0x401474
40b97f:	8b d0                	mov    %eax,%edx
40b981:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b984:	e8 39 5b ff ff       	call   0x4014c2
40b989:	8b d0                	mov    %eax,%edx
40b98b:	8b 4d 80             	mov    -0x80(%ebp),%ecx
40b98e:	83 c1 08             	add    $0x8,%ecx
40b991:	e8 32 5b ff ff       	call   0x4014c8
40b996:	8d 4d c8             	lea    -0x38(%ebp),%ecx
40b999:	e8 1e 5b ff ff       	call   0x4014bc
40b99e:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
40b9a1:	e8 46 5b ff ff       	call   0x4014ec
40b9a6:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
40b9a9:	e8 f6 5a ff ff       	call   0x4014a4
40b9ae:	8d 45 90             	lea    -0x70(%ebp),%eax
40b9b1:	50                   	push   %eax
40b9b2:	6a 04                	push   $0x4
40b9b4:	8b 45 80             	mov    -0x80(%ebp),%eax
40b9b7:	83 c0 0c             	add    $0xc,%eax
40b9ba:	50                   	push   %eax
40b9bb:	8b 45 e0             	mov    -0x20(%ebp),%eax
40b9be:	8b 00                	mov    (%eax),%eax
40b9c0:	ff 75 e0             	push   -0x20(%ebp)
40b9c3:	ff 50 0c             	call   *0xc(%eax)
40b9c6:	db e2                	fnclex
40b9c8:	89 45 88             	mov    %eax,-0x78(%ebp)
40b9cb:	83 7d 88 00          	cmpl   $0x0,-0x78(%ebp)
40b9cf:	7d 1a                	jge    0x40b9eb
40b9d1:	6a 0c                	push   $0xc
40b9d3:	68 c0 47 40 00       	push   $0x4047c0
40b9d8:	ff 75 e0             	push   -0x20(%ebp)
40b9db:	ff 75 88             	push   -0x78(%ebp)
40b9de:	e8 f1 5a ff ff       	call   0x4014d4
40b9e3:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
40b9e9:	eb 07                	jmp    0x40b9f2
40b9eb:	83 a5 68 ff ff ff 00 	andl   $0x0,-0x98(%ebp)
40b9f2:	8d 45 90             	lea    -0x70(%ebp),%eax
40b9f5:	50                   	push   %eax
40b9f6:	6a 04                	push   $0x4
40b9f8:	8b 45 80             	mov    -0x80(%ebp),%eax
40b9fb:	83 c0 10             	add    $0x10,%eax
40b9fe:	50                   	push   %eax
40b9ff:	8b 45 e0             	mov    -0x20(%ebp),%eax
40ba02:	8b 00                	mov    (%eax),%eax
40ba04:	ff 75 e0             	push   -0x20(%ebp)