40c42c:	83 ec 10             	sub    $0x10,%esp
40c42f:	8b cc                	mov    %esp,%ecx
40c431:	8b c7                	mov    %edi,%eax
40c433:	89 01                	mov    %eax,(%ecx)
40c435:	8b 45 c8             	mov    -0x38(%ebp),%eax
40c438:	89 41 04             	mov    %eax,0x4(%ecx)
40c43b:	b8 db 80 3f 00       	mov    $0x3f80db,%eax
40c440:	89 41 08             	mov    %eax,0x8(%ecx)
40c443:	89 59 0c             	mov    %ebx,0xc(%ecx)
40c446:	83 ec 10             	sub    $0x10,%esp
40c449:	8b cc                	mov    %esp,%ecx
40c44b:	b8 08 00 00 00       	mov    $0x8,%eax
40c450:	89 01                	mov    %eax,(%ecx)
40c452:	89 7d c4             	mov    %edi,-0x3c(%ebp)
40c455:	8b 7d d8             	mov    -0x28(%ebp),%edi
40c458:	89 79 04             	mov    %edi,0x4(%ecx)
40c45b:	89 55 90             	mov    %edx,-0x70(%ebp)
40c45e:	8b 12                	mov    (%edx),%edx
40c460:	b8 58 80 40 00       	mov    $0x408058,%eax
40c465:	89 41 08             	mov    %eax,0x8(%ecx)
40c468:	8b 45 90             	mov    -0x70(%ebp),%eax
40c46b:	50                   	push   %eax
40c46c:	89 71 0c             	mov    %esi,0xc(%ecx)
40c46f:	ff 52 44             	call   *0x44(%edx)
40c472:	db e2                	fnclex
40c474:	85 c0                	test   %eax,%eax
40c476:	7d 12                	jge    0x40c48a
40c478:	8b 4d 90             	mov    -0x70(%ebp),%ecx
40c47b:	6a 44                	push   $0x44
40c47d:	68 98 7c 40 00       	push   $0x407c98
40c482:	51                   	push   %ecx
40c483:	50                   	push   %eax
40c484:	ff 15 48 10 40 00    	call   *0x401048
40c48a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c48d:	ff 15 ac 11 40 00    	call   *0x4011ac
40c493:	eb 09                	jmp    0x40c49e
40c495:	8b 75 e0             	mov    -0x20(%ebp),%esi
40c498:	8b 7d d8             	mov    -0x28(%ebp),%edi
40c49b:	8b 5d d0             	mov    -0x30(%ebp),%ebx
40c49e:	68 70 77 40 00       	push   $0x407770
40c4a3:	ff 15 1c 10 40 00    	call   *0x40101c
40c4a9:	83 f8 01             	cmp    $0x1,%eax
40c4ac:	0f 84 e7 00 00 00    	je     0x40c599
40c4b2:	a1 38 03 41 00       	mov    0x410338,%eax
40c4b7:	85 c0                	test   %eax,%eax
40c4b9:	75 10                	jne    0x40c4cb
40c4bb:	68 38 03 41 00       	push   $0x410338
40c4c0:	68 a8 7c 40 00       	push   $0x407ca8
40c4c5:	ff 15 2c 11 40 00    	call   *0x40112c
40c4cb:	8b 0d 38 03 41 00    	mov    0x410338,%ecx
40c4d1:	8b 11                	mov    (%ecx),%edx
40c4d3:	89 4d 90             	mov    %ecx,-0x70(%ebp)
40c4d6:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c4d9:	51                   	push   %ecx
40c4da:	83 ec 10             	sub    $0x10,%esp
40c4dd:	8b cc                	mov    %esp,%ecx
40c4df:	b8 03 00 00 00       	mov    $0x3,%eax
40c4e4:	89 01                	mov    %eax,(%ecx)
40c4e6:	8b 45 98             	mov    -0x68(%ebp),%eax
40c4e9:	89 41 04             	mov    %eax,0x4(%ecx)
40c4ec:	b8 cb 62 64 00       	mov    $0x6462cb,%eax
40c4f1:	89 41 08             	mov    %eax,0x8(%ecx)
40c4f4:	8b 45 a0             	mov    -0x60(%ebp),%eax
40c4f7:	89 41 0c             	mov    %eax,0xc(%ecx)
40c4fa:	83 ec 10             	sub    $0x10,%esp
40c4fd:	8b cc                	mov    %esp,%ecx
40c4ff:	b8 03 00 00 00       	mov    $0x3,%eax
40c504:	89 01                	mov    %eax,(%ecx)
40c506:	8b 45 a8             	mov    -0x58(%ebp),%eax
40c509:	89 41 04             	mov    %eax,0x4(%ecx)
40c50c:	b8 81 64 55 00       	mov    $0x556481,%eax
40c511:	89 41 08             	mov    %eax,0x8(%ecx)
40c514:	8b 45 b0             	mov    -0x50(%ebp),%eax
40c517:	89 41 0c             	mov    %eax,0xc(%ecx)
40c51a:	83 ec 10             	sub    $0x10,%esp
40c51d:	8b cc                	mov    %esp,%ecx
40c51f:	b8 02 00 00 00       	mov    $0x2,%eax
40c524:	89 01                	mov    %eax,(%ecx)
40c526:	8b 45 b8             	mov    -0x48(%ebp),%eax
40c529:	89 41 04             	mov    %eax,0x4(%ecx)
40c52c:	b8 18 00 00 00       	mov    $0x18,%eax
40c531:	89 41 08             	mov    %eax,0x8(%ecx)
40c534:	8b 45 c0             	mov    -0x40(%ebp),%eax
40c537:	89 41 0c             	mov    %eax,0xc(%ecx)
40c53a:	83 ec 10             	sub    $0x10,%esp
40c53d:	8b cc                	mov    %esp,%ecx
40c53f:	b8 03 00 00 00       	mov    $0x3,%eax
40c544:	89 01                	mov    %eax,(%ecx)
40c546:	8b 45 c8             	mov    -0x38(%ebp),%eax
40c549:	89 41 04             	mov    %eax,0x4(%ecx)
40c54c:	b8 9b 92 00 00       	mov    $0x929b,%eax
40c551:	89 41 08             	mov    %eax,0x8(%ecx)
40c554:	89 59 0c             	mov    %ebx,0xc(%ecx)
40c557:	83 ec 10             	sub    $0x10,%esp
40c55a:	8b cc                	mov    %esp,%ecx
40c55c:	b8 08 00 00 00       	mov    $0x8,%eax
40c561:	89 01                	mov    %eax,(%ecx)
40c563:	89 79 04             	mov    %edi,0x4(%ecx)
40c566:	b8 74 80 40 00       	mov    $0x408074,%eax
40c56b:	89 41 08             	mov    %eax,0x8(%ecx)
40c56e:	8b 45 90             	mov    -0x70(%ebp),%eax
40c571:	50                   	push   %eax
40c572:	89 71 0c             	mov    %esi,0xc(%ecx)
40c575:	ff 52 44             	call   *0x44(%edx)
40c578:	db e2                	fnclex
40c57a:	85 c0                	test   %eax,%eax
40c57c:	7d 12                	jge    0x40c590
40c57e:	8b 4d 90             	mov    -0x70(%ebp),%ecx
40c581:	6a 44                	push   $0x44
40c583:	68 98 7c 40 00       	push   $0x407c98
40c588:	51                   	push   %ecx
40c589:	50                   	push   %eax
40c58a:	ff 15 48 10 40 00    	call   *0x401048
40c590:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c593:	ff 15 ac 11 40 00    	call   *0x4011ac
40c599:	68 88 80 40 00       	push   $0x408088
40c59e:	ff 15 1c 10 40 00    	call   *0x40101c
40c5a4:	83 f8 01             	cmp    $0x1,%eax
40c5a7:	0f 84 e7 00 00 00    	je     0x40c694
40c5ad:	a1 38 03 41 00       	mov    0x410338,%eax
40c5b2:	85 c0                	test   %eax,%eax
40c5b4:	75 10                	jne    0x40c5c6
40c5b6:	68 38 03 41 00       	push   $0x410338
40c5bb:	68 a8 7c 40 00       	push   $0x407ca8
40c5c0:	ff 15 2c 11 40 00    	call   *0x40112c
40c5c6:	8b 0d 38 03 41 00    	mov    0x410338,%ecx
40c5cc:	8b 11                	mov    (%ecx),%edx
40c5ce:	89 4d 90             	mov    %ecx,-0x70(%ebp)
40c5d1:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c5d4:	51                   	push   %ecx
40c5d5:	83 ec 10             	sub    $0x10,%esp
40c5d8:	8b cc                	mov    %esp,%ecx
40c5da:	b8 03 00 00 00       	mov    $0x3,%eax
40c5df:	89 01                	mov    %eax,(%ecx)
40c5e1:	8b 45 98             	mov    -0x68(%ebp),%eax
40c5e4:	89 41 04             	mov    %eax,0x4(%ecx)
40c5e7:	b8 8a 91 4d 00       	mov    $0x4d918a,%eax
40c5ec:	89 41 08             	mov    %eax,0x8(%ecx)
40c5ef:	8b 45 a0             	mov    -0x60(%ebp),%eax
40c5f2:	89 41 0c             	mov    %eax,0xc(%ecx)
40c5f5:	83 ec 10             	sub    $0x10,%esp
40c5f8:	8b cc                	mov    %esp,%ecx
40c5fa:	b8 03 00 00 00       	mov    $0x3,%eax
40c5ff:	89 01                	mov    %eax,(%ecx)
40c601:	8b 45 a8             	mov    -0x58(%ebp),%eax
40c604:	89 41 04             	mov    %eax,0x4(%ecx)
40c607:	b8 95 9a 2b 00       	mov    $0x2b9a95,%eax
40c60c:	89 41 08             	mov    %eax,0x8(%ecx)
40c60f:	8b 45 b0             	mov    -0x50(%ebp),%eax
40c612:	89 41 0c             	mov    %eax,0xc(%ecx)
40c615:	83 ec 10             	sub    $0x10,%esp
40c618:	8b cc                	mov    %esp,%ecx
40c61a:	b8 02 00 00 00       	mov    $0x2,%eax
40c61f:	89 01                	mov    %eax,(%ecx)
40c621:	8b 45 b8             	mov    -0x48(%ebp),%eax
40c624:	89 41 04             	mov    %eax,0x4(%ecx)
40c627:	b8 18 00 00 00       	mov    $0x18,%eax
40c62c:	89 41 08             	mov    %eax,0x8(%ecx)
40c62f:	8b 45 c0             	mov    -0x40(%ebp),%eax
40c632:	89 41 0c             	mov    %eax,0xc(%ecx)
40c635:	83 ec 10             	sub    $0x10,%esp
40c638:	8b cc                	mov    %esp,%ecx
40c63a:	b8 03 00 00 00       	mov    $0x3,%eax
40c63f:	89 01                	mov    %eax,(%ecx)
40c641:	8b 45 c8             	mov    -0x38(%ebp),%eax
40c644:	89 41 04             	mov    %eax,0x4(%ecx)
40c647:	b8 49 c5 60 00       	mov    $0x60c549,%eax
40c64c:	89 41 08             	mov    %eax,0x8(%ecx)
40c64f:	89 59 0c             	mov    %ebx,0xc(%ecx)
40c652:	83 ec 10             	sub    $0x10,%esp
40c655:	8b cc                	mov    %esp,%ecx
40c657:	b8 08 00 00 00       	mov    $0x8,%eax
40c65c:	89 01                	mov    %eax,(%ecx)
40c65e:	89 79 04             	mov    %edi,0x4(%ecx)
40c661:	b8 90 80 40 00       	mov    $0x408090,%eax
40c666:	89 41 08             	mov    %eax,0x8(%ecx)
40c669:	8b 45 90             	mov    -0x70(%ebp),%eax
40c66c:	50                   	push   %eax
40c66d:	89 71 0c             	mov    %esi,0xc(%ecx)
40c670:	ff 52 44             	call   *0x44(%edx)
40c673:	db e2                	fnclex
40c675:	85 c0                	test   %eax,%eax
40c677:	7d 12                	jge    0x40c68b
40c679:	8b 4d 90             	mov    -0x70(%ebp),%ecx
40c67c:	6a 44                	push   $0x44
40c67e:	68 98 7c 40 00       	push   $0x407c98
40c683:	51                   	push   %ecx
40c684:	50                   	push   %eax
40c685:	ff 15 48 10 40 00    	call   *0x401048
40c68b:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c68e:	ff 15 ac 11 40 00    	call   *0x4011ac
40c694:	68 b0 80 40 00       	push   $0x4080b0
40c699:	ff 15 1c 10 40 00    	call   *0x40101c
40c69f:	83 f8 01             	cmp    $0x1,%eax
40c6a2:	0f 84 e7 00 00 00    	je     0x40c78f
40c6a8:	a1 38 03 41 00       	mov    0x410338,%eax
40c6ad:	85 c0                	test   %eax,%eax
40c6af:	75 10                	jne    0x40c6c1
40c6b1:	68 38 03 41 00       	push   $0x410338
40c6b6:	68 a8 7c 40 00       	push   $0x407ca8
40c6bb:	ff 15 2c 11 40 00    	call   *0x40112c
40c6c1:	8b 0d 38 03 41 00    	mov    0x410338,%ecx
40c6c7:	8b 11                	mov    (%ecx),%edx
40c6c9:	89 4d 90             	mov    %ecx,-0x70(%ebp)
40c6cc:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c6cf:	51                   	push   %ecx
40c6d0:	83 ec 10             	sub    $0x10,%esp
40c6d3:	8b cc                	mov    %esp,%ecx
40c6d5:	b8 03 00 00 00       	mov    $0x3,%eax
40c6da:	89 01                	mov    %eax,(%ecx)
40c6dc:	8b 45 98             	mov    -0x68(%ebp),%eax
40c6df:	89 41 04             	mov    %eax,0x4(%ecx)
40c6e2:	b8 7e bc 71 00       	mov    $0x71bc7e,%eax
40c6e7:	89 41 08             	mov    %eax,0x8(%ecx)
40c6ea:	8b 45 a0             	mov    -0x60(%ebp),%eax
40c6ed:	89 41 0c             	mov    %eax,0xc(%ecx)
40c6f0:	83 ec 10             	sub    $0x10,%esp
40c6f3:	8b cc                	mov    %esp,%ecx
40c6f5:	b8 03 00 00 00       	mov    $0x3,%eax
40c6fa:	89 01                	mov    %eax,(%ecx)
40c6fc:	8b 45 a8             	mov    -0x58(%ebp),%eax
40c6ff:	89 41 04             	mov    %eax,0x4(%ecx)
40c702:	b8 12 ef 72 00       	mov    $0x72ef12,%eax
40c707:	89 41 08             	mov    %eax,0x8(%ecx)
40c70a:	8b 45 b0             	mov    -0x50(%ebp),%eax
40c70d:	89 41 0c             	mov    %eax,0xc(%ecx)
40c710:	83 ec 10             	sub    $0x10,%esp
40c713:	8b cc                	mov    %esp,%ecx
40c715:	b8 02 00 00 00       	mov    $0x2,%eax
40c71a:	89 01                	mov    %eax,(%ecx)
40c71c:	8b 45 b8             	mov    -0x48(%ebp),%eax
40c71f:	89 41 04             	mov    %eax,0x4(%ecx)
40c722:	b8 18 00 00 00       	mov    $0x18,%eax
40c727:	89 41 08             	mov    %eax,0x8(%ecx)
40c72a:	8b 45 c0             	mov    -0x40(%ebp),%eax
40c72d:	89 41 0c             	mov    %eax,0xc(%ecx)
40c730:	83 ec 10             	sub    $0x10,%esp
40c733:	8b cc                	mov    %esp,%ecx
40c735:	b8 03 00 00 00       	mov    $0x3,%eax
40c73a:	89 01                	mov    %eax,(%ecx)
40c73c:	8b 45 c8             	mov    -0x38(%ebp),%eax
40c73f:	89 41 04             	mov    %eax,0x4(%ecx)
40c742:	b8 5e 0a 45 00       	mov    $0x450a5e,%eax
40c747:	89 41 08             	mov    %eax,0x8(%ecx)
40c74a:	89 59 0c             	mov    %ebx,0xc(%ecx)
40c74d:	83 ec 10             	sub    $0x10,%esp
40c750:	8b cc                	mov    %esp,%ecx
40c752:	b8 08 00 00 00       	mov    $0x8,%eax
40c757:	89 01                	mov    %eax,(%ecx)
40c759:	89 79 04             	mov    %edi,0x4(%ecx)
40c75c:	b8 b8 80 40 00       	mov    $0x4080b8,%eax
40c761:	89 41 08             	mov    %eax,0x8(%ecx)
40c764:	8b 45 90             	mov    -0x70(%ebp),%eax
40c767:	50                   	push   %eax
40c768:	89 71 0c             	mov    %esi,0xc(%ecx)
40c76b:	ff 52 44             	call   *0x44(%edx)
40c76e:	db e2                	fnclex
40c770:	85 c0                	test   %eax,%eax
40c772:	7d 12                	jge    0x40c786
40c774:	8b 4d 90             	mov    -0x70(%ebp),%ecx
40c777:	6a 44                	push   $0x44
40c779:	68 98 7c 40 00       	push   $0x407c98
40c77e:	51                   	push   %ecx
40c77f:	50                   	push   %eax
40c780:	ff 15 48 10 40 00    	call   *0x401048
40c786:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c789:	ff 15 ac 11 40 00    	call   *0x4011ac
40c78f:	68 78 77 40 00       	push   $0x407778
40c794:	ff 15 1c 10 40 00    	call   *0x40101c
40c79a:	83 f8 01             	cmp    $0x1,%eax
40c79d:	0f 84 e7 00 00 00    	je     0x40c88a
40c7a3:	a1 38 03 41 00       	mov    0x410338,%eax
40c7a8:	85 c0                	test   %eax,%eax
40c7aa:	75 10                	jne    0x40c7bc
40c7ac:	68 38 03 41 00       	push   $0x410338
40c7b1:	68 a8 7c 40 00       	push   $0x407ca8
40c7b6:	ff 15 2c 11 40 00    	call   *0x40112c
40c7bc:	8b 0d 38 03 41 00    	mov    0x410338,%ecx
40c7c2:	8b 11                	mov    (%ecx),%edx
40c7c4:	89 4d 90             	mov    %ecx,-0x70(%ebp)
40c7c7:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c7ca:	51                   	push   %ecx
40c7cb:	83 ec 10             	sub    $0x10,%esp
40c7ce:	8b cc                	mov    %esp,%ecx
40c7d0:	b8 03 00 00 00       	mov    $0x3,%eax
40c7d5:	89 01                	mov    %eax,(%ecx)
40c7d7:	8b 45 98             	mov    -0x68(%ebp),%eax
40c7da:	89 41 04             	mov    %eax,0x4(%ecx)
40c7dd:	b8 7c ee 05 00       	mov    $0x5ee7c,%eax
40c7e2:	89 41 08             	mov    %eax,0x8(%ecx)
40c7e5:	8b 45 a0             	mov    -0x60(%ebp),%eax
40c7e8:	89 41 0c             	mov    %eax,0xc(%ecx)
40c7eb:	83 ec 10             	sub    $0x10,%esp
40c7ee:	8b cc                	mov    %esp,%ecx
40c7f0:	b8 03 00 00 00       	mov    $0x3,%eax
40c7f5:	89 01                	mov    %eax,(%ecx)
40c7f7:	8b 45 a8             	mov    -0x58(%ebp),%eax
40c7fa:	89 41 04             	mov    %eax,0x4(%ecx)
40c7fd:	b8 0f 30 19 00       	mov    $0x19300f,%eax
40c802:	89 41 08             	mov    %eax,0x8(%ecx)
40c805:	8b 45 b0             	mov    -0x50(%ebp),%eax
40c808:	89 41 0c             	mov    %eax,0xc(%ecx)
40c80b:	83 ec 10             	sub    $0x10,%esp
40c80e:	8b cc                	mov    %esp,%ecx
40c810:	b8 02 00 00 00       	mov    $0x2,%eax
40c815:	89 01                	mov    %eax,(%ecx)
40c817:	8b 45 b8             	mov    -0x48(%ebp),%eax
40c81a:	89 41 04             	mov    %eax,0x4(%ecx)
40c81d:	b8 18 00 00 00       	mov    $0x18,%eax
40c822:	89 41 08             	mov    %eax,0x8(%ecx)
40c825:	8b 45 c0             	mov    -0x40(%ebp),%eax
40c828:	89 41 0c             	mov    %eax,0xc(%ecx)
40c82b:	83 ec 10             	sub    $0x10,%esp
40c82e:	8b cc                	mov    %esp,%ecx
40c830:	b8 03 00 00 00       	mov    $0x3,%eax
40c835:	89 01                	mov    %eax,(%ecx)
40c837:	8b 45 c8             	mov    -0x38(%ebp),%eax
40c83a:	89 41 04             	mov    %eax,0x4(%ecx)
40c83d:	b8 11 f4 4c 00       	mov    $0x4cf411,%eax
40c842:	89 41 08             	mov    %eax,0x8(%ecx)
40c845:	89 59 0c             	mov    %ebx,0xc(%ecx)
40c848:	83 ec 10             	sub    $0x10,%esp
40c84b:	8b cc                	mov    %esp,%ecx
40c84d:	b8 08 00 00 00       	mov    $0x8,%eax
40c852:	89 01                	mov    %eax,(%ecx)
40c854:	89 79 04             	mov    %edi,0x4(%ecx)
40c857:	b8 d0 80 40 00       	mov    $0x4080d0,%eax
40c85c:	89 41 08             	mov    %eax,0x8(%ecx)
40c85f:	8b 45 90             	mov    -0x70(%ebp),%eax
40c862:	50                   	push   %eax
40c863:	89 71 0c             	mov    %esi,0xc(%ecx)
40c866:	ff 52 44             	call   *0x44(%edx)
40c869:	db e2                	fnclex
40c86b:	85 c0                	test   %eax,%eax
40c86d:	7d 12                	jge    0x40c881
40c86f:	8b 4d 90             	mov    -0x70(%ebp),%ecx
40c872:	6a 44                	push   $0x44
40c874:	68 98 7c 40 00       	push   $0x407c98
40c879:	51                   	push   %ecx
40c87a:	50                   	push   %eax
40c87b:	ff 15 48 10 40 00    	call   *0x401048
40c881:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40c884:	ff 15 ac 11 40 00    	call   *0x4011ac
40c88a:	68 e4 80 40 00       	push   $0x4080e4
40c88f:	ff 15 1c 10 40 00    	call   *0x40101c
40c895:	83 f8 01             	cmp    $0x1,%eax
40c898:	0f 84 e7 00 00 00    	je     0x40c985
40c89e:	a1 38 03 41 00       	mov    0x410338,%eax
40c8a3:	85 c0                	test   %eax,%eax
40c8a5:	75 10                	jne    0x40c8b7