40e51f:	83 c4 04             	add    $0x4,%esp
40e522:	89 45 a8             	mov    %eax,-0x58(%ebp)
40e525:	8b f8                	mov    %eax,%edi
40e527:	be 51 34 4c 00       	mov    $0x4c3451,%esi
40e52c:	ad                   	lods   %ds:(%esi),%eax
40e52d:	ab                   	stos   %eax,%es:(%edi)
40e52e:	ad                   	lods   %ds:(%esi),%eax
40e52f:	ab                   	stos   %eax,%es:(%edi)
40e530:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
40e537:	c7 45 a0 00 00 00 00 	movl   $0x0,-0x60(%ebp)
40e53e:	68 10 00 00 00       	push   $0x10
40e543:	e8 56 20 09 00       	call   0x4a059e
40e548:	83 c4 04             	add    $0x4,%esp
40e54b:	89 45 9c             	mov    %eax,-0x64(%ebp)
40e54e:	8b d8                	mov    %eax,%ebx
40e550:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40e556:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40e55d:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
40e564:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
40e56b:	c7 03 f6 43 4e 00    	movl   $0x4e43f6,(%ebx)
40e571:	53                   	push   %ebx
40e572:	83 c3 04             	add    $0x4,%ebx
40e575:	53                   	push   %ebx
40e576:	68 08 00 00 00       	push   $0x8
40e57b:	e8 1e 20 09 00       	call   0x4a059e
40e580:	83 c4 04             	add    $0x4,%esp
40e583:	5b                   	pop    %ebx
40e584:	53                   	push   %ebx
40e585:	89 03                	mov    %eax,(%ebx)
40e587:	8b d8                	mov    %eax,%ebx
40e589:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40e58f:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40e596:	5b                   	pop    %ebx
40e597:	83 c3 04             	add    $0x4,%ebx
40e59a:	53                   	push   %ebx
40e59b:	68 08 00 00 00       	push   $0x8
40e5a0:	e8 f9 1f 09 00       	call   0x4a059e
40e5a5:	83 c4 04             	add    $0x4,%esp
40e5a8:	5b                   	pop    %ebx
40e5a9:	53                   	push   %ebx
40e5aa:	89 03                	mov    %eax,(%ebx)
40e5ac:	8b d8                	mov    %eax,%ebx
40e5ae:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40e5b4:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40e5bb:	5b                   	pop    %ebx
40e5bc:	83 c3 04             	add    $0x4,%ebx
40e5bf:	53                   	push   %ebx
40e5c0:	68 10 00 00 00       	push   $0x10
40e5c5:	e8 d4 1f 09 00       	call   0x4a059e
40e5ca:	83 c4 04             	add    $0x4,%esp
40e5cd:	5b                   	pop    %ebx
40e5ce:	53                   	push   %ebx
40e5cf:	89 03                	mov    %eax,(%ebx)
40e5d1:	8b d8                	mov    %eax,%ebx
40e5d3:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40e5d9:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40e5e0:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
40e5e7:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
40e5ee:	b8 03 00 00 00       	mov    $0x3,%eax
40e5f3:	89 03                	mov    %eax,(%ebx)
40e5f5:	5b                   	pop    %ebx
40e5f6:	5b                   	pop    %ebx
40e5f7:	53                   	push   %ebx
40e5f8:	8b c4                	mov    %esp,%eax
40e5fa:	50                   	push   %eax
40e5fb:	e8 50 5c 00 00       	call   0x414250
40e600:	5b                   	pop    %ebx
40e601:	c7 45 98 00 00 00 00 	movl   $0x0,-0x68(%ebp)
40e608:	68 08 00 00 00       	push   $0x8
40e60d:	e8 8c 1f 09 00       	call   0x4a059e
40e612:	83 c4 04             	add    $0x4,%esp
40e615:	89 45 94             	mov    %eax,-0x6c(%ebp)
40e618:	8b d8                	mov    %eax,%ebx
40e61a:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40e620:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40e627:	68 10 00 00 00       	push   $0x10
40e62c:	e8 6d 1f 09 00       	call   0x4a059e
40e631:	83 c4 04             	add    $0x4,%esp
40e634:	89 45 90             	mov    %eax,-0x70(%ebp)
40e637:	8b d8                	mov    %eax,%ebx
40e639:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40e63f:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40e646:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
40e64d:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
40e654:	b8 03 00 00 00       	mov    $0x3,%eax
40e659:	89 03                	mov    %eax,(%ebx)
40e65b:	83 bd 90 00 00 00 00 	cmpl   $0x0,0x90(%ebp)
40e662:	0f 85 0a 00 00 00    	jne    0x40e672
40e668:	c7 85 8c 00 00 00 01 	movl   $0x1,0x8c(%ebp)
40e66f:	00 00 00
40e672:	83 bd 98 00 00 00 00 	cmpl   $0x0,0x98(%ebp)
40e679:	0f 85 0a 00 00 00    	jne    0x40e689
40e67f:	c7 85 94 00 00 00 01 	movl   $0x1,0x94(%ebp)
40e686:	00 00 00
40e689:	83 bd a8 00 00 00 00 	cmpl   $0x0,0xa8(%ebp)
40e690:	0f 85 0a 00 00 00    	jne    0x40e6a0
40e696:	c7 85 a4 00 00 00 01 	movl   $0x1,0xa4(%ebp)
40e69d:	00 00 00
40e6a0:	89 65 8c             	mov    %esp,-0x74(%ebp)
40e6a3:	33 c0                	xor    %eax,%eax
40e6a5:	ff 15 5c 33 4b 00    	call   *0x4b335c
40e6ab:	90                   	nop
40e6ac:	90                   	nop
40e6ad:	39 65 8c             	cmp    %esp,-0x74(%ebp)
40e6b0:	74 17                	je     0x40e6c9
40e6b2:	68 2f 01 00 00       	push   $0x12f
40e6b7:	68 58 01 04 04       	push   $0x4040158
40e6bc:	68 06 00 00 00       	push   $0x6
40e6c1:	e8 e4 1e 09 00       	call   0x4a05aa
40e6c6:	83 c4 0c             	add    $0xc,%esp
40e6c9:	85 c0                	test   %eax,%eax
40e6cb:	0f 84 95 2c 00 00    	je     0x411366
40e6d1:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e6d4:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
40e6d7:	8b 5d 8c             	mov    -0x74(%ebp),%ebx
40e6da:	c7 03 3c 00 00 00    	movl   $0x3c,(%ebx)
40e6e0:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e6e3:	83 c3 08             	add    $0x8,%ebx
40e6e6:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
40e6e9:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e6ec:	83 c3 14             	add    $0x14,%ebx
40e6ef:	89 5d 88             	mov    %ebx,-0x78(%ebp)
40e6f2:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e6f5:	83 c3 30             	add    $0x30,%ebx
40e6f8:	89 9d 84 ff ff ff    	mov    %ebx,-0x7c(%ebp)
40e6fe:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e701:	83 c3 38             	add    $0x38,%ebx
40e704:	89 9d 80 ff ff ff    	mov    %ebx,-0x80(%ebp)
40e70a:	8b 5d 8c             	mov    -0x74(%ebp),%ebx
40e70d:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
40e713:	8b 5d 88             	mov    -0x78(%ebp),%ebx
40e716:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
40e71c:	8b 9d 84 ff ff ff    	mov    -0x7c(%ebp),%ebx
40e722:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
40e728:	8b 9d 80 ff ff ff    	mov    -0x80(%ebp),%ebx
40e72e:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
40e734:	c7 45 8c 00 00 00 00 	movl   $0x0,-0x74(%ebp)
40e73b:	6a 00                	push   $0x0
40e73d:	ff 75 8c             	push   -0x74(%ebp)
40e740:	ff 75 08             	push   0x8(%ebp)
40e743:	e8 50 2e 00 00       	call   0x411598
40e748:	89 45 88             	mov    %eax,-0x78(%ebp)
40e74b:	8b 45 88             	mov    -0x78(%ebp),%eax
40e74e:	50                   	push   %eax
40e74f:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40e752:	85 db                	test   %ebx,%ebx
40e754:	74 09                	je     0x40e75f
40e756:	53                   	push   %ebx
40e757:	e8 48 1e 09 00       	call   0x4a05a4
40e75c:	83 c4 04             	add    $0x4,%esp
40e75f:	58                   	pop    %eax
40e760:	89 45 f8             	mov    %eax,-0x8(%ebp)
40e763:	68 05 00 00 80       	push   $0x80000005
40e768:	6a 00                	push   $0x0
40e76a:	8b 45 f8             	mov    -0x8(%ebp),%eax
40e76d:	85 c0                	test   %eax,%eax
40e76f:	75 05                	jne    0x40e776
40e771:	b8 51 34 4c 00       	mov    $0x4c3451,%eax
40e776:	50                   	push   %eax
40e777:	68 01 00 00 00       	push   $0x1
40e77c:	bb 94 01 00 00       	mov    $0x194,%ebx
40e781:	e8 fa 2c 09 00       	call   0x4a1480
40e786:	83 c4 10             	add    $0x10,%esp
40e789:	89 45 8c             	mov    %eax,-0x74(%ebp)
40e78c:	89 65 88             	mov    %esp,-0x78(%ebp)
40e78f:	ff 75 fc             	push   -0x4(%ebp)
40e792:	68 00 00 00 00       	push   $0x0
40e797:	ff 75 8c             	push   -0x74(%ebp)
40e79a:	8b 45 f8             	mov    -0x8(%ebp),%eax
40e79d:	85 c0                	test   %eax,%eax
40e79f:	74 03                	je     0x40e7a4
40e7a1:	83 c0 08             	add    $0x8,%eax
40e7a4:	50                   	push   %eax
40e7a5:	33 c0                	xor    %eax,%eax
40e7a7:	ff 15 28 33 4b 00    	call   *0x4b3328
40e7ad:	90                   	nop
40e7ae:	90                   	nop
40e7af:	39 65 88             	cmp    %esp,-0x78(%ebp)
40e7b2:	74 17                	je     0x40e7cb
40e7b4:	68 2a 02 00 00       	push   $0x22a
40e7b9:	68 58 01 04 04       	push   $0x4040158
40e7be:	68 06 00 00 00       	push   $0x6
40e7c3:	e8 e2 1d 09 00       	call   0x4a05aa
40e7c8:	83 c4 0c             	add    $0xc,%esp
40e7cb:	85 c0                	test   %eax,%eax
40e7cd:	0f 84 5e 2b 00 00    	je     0x411331
40e7d3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e7d6:	83 c3 10             	add    $0x10,%ebx
40e7d9:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
40e7dc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e7df:	83 c3 14             	add    $0x14,%ebx
40e7e2:	89 5d 88             	mov    %ebx,-0x78(%ebp)
40e7e5:	8b 5d 88             	mov    -0x78(%ebp),%ebx
40e7e8:	db 03                	fildl  (%ebx)
40e7ea:	dd 9d 80 ff ff ff    	fstpl  -0x80(%ebp)
40e7f0:	dd 85 80 ff ff ff    	fldl   -0x80(%ebp)
40e7f6:	dc 0d fa bb 4c 00    	fmull  0x4cbbfa
40e7fc:	dd 9d 78 ff ff ff    	fstpl  -0x88(%ebp)
40e802:	dd 85 78 ff ff ff    	fldl   -0x88(%ebp)
40e808:	e8 e2 29 ff ff       	call   0x4011ef
40e80d:	68 01 03 00 80       	push   $0x80000301
40e812:	6a 00                	push   $0x0
40e814:	50                   	push   %eax
40e815:	68 01 03 00 80       	push   $0x80000301
40e81a:	6a 00                	push   $0x0
40e81c:	8b 5d 8c             	mov    -0x74(%ebp),%ebx
40e81f:	ff 33                	push   (%ebx)
40e821:	68 02 00 00 00       	push   $0x2
40e826:	bb 10 09 00 00       	mov    $0x910,%ebx
40e82b:	e8 90 2e 09 00       	call   0x4a16c0
40e830:	83 c4 1c             	add    $0x1c,%esp
40e833:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
40e839:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
40e83f:	50                   	push   %eax
40e840:	e8 8a 2f 00 00       	call   0x4117cf
40e845:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
40e84b:	8b 9d 74 ff ff ff    	mov    -0x8c(%ebp),%ebx
40e851:	85 db                	test   %ebx,%ebx
40e853:	74 09                	je     0x40e85e
40e855:	53                   	push   %ebx
40e856:	e8 49 1d 09 00       	call   0x4a05a4
40e85b:	83 c4 04             	add    $0x4,%esp
40e85e:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
40e864:	50                   	push   %eax
40e865:	8b 5d f4             	mov    -0xc(%ebp),%ebx
40e868:	85 db                	test   %ebx,%ebx
40e86a:	74 09                	je     0x40e875
40e86c:	53                   	push   %ebx
40e86d:	e8 32 1d 09 00       	call   0x4a05a4
40e872:	83 c4 04             	add    $0x4,%esp
40e875:	58                   	pop    %eax
40e876:	89 45 f4             	mov    %eax,-0xc(%ebp)
40e879:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e87c:	83 c3 30             	add    $0x30,%ebx
40e87f:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
40e882:	8b 5d 8c             	mov    -0x74(%ebp),%ebx
40e885:	83 3b 01             	cmpl   $0x1,(%ebx)
40e888:	b8 00 00 00 00       	mov    $0x0,%eax
40e88d:	0f 9c c0             	setl   %al
40e890:	89 45 88             	mov    %eax,-0x78(%ebp)
40e893:	c7 85 84 ff ff ff 00 	movl   $0x0,-0x7c(%ebp)
40e89a:	00 00 00
40e89d:	6a 00                	push   $0x0
40e89f:	ff b5 84 ff ff ff    	push   -0x7c(%ebp)
40e8a5:	b8 1b 40 4e 00       	mov    $0x4e401b,%eax
40e8aa:	89 85 80 ff ff ff    	mov    %eax,-0x80(%ebp)
40e8b0:	8d 85 80 ff ff ff    	lea    -0x80(%ebp),%eax
40e8b6:	50                   	push   %eax
40e8b7:	e8 dc 2c 00 00       	call   0x411598
40e8bc:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
40e8c2:	8b 9d 80 ff ff ff    	mov    -0x80(%ebp),%ebx
40e8c8:	85 db                	test   %ebx,%ebx
40e8ca:	74 09                	je     0x40e8d5
40e8cc:	53                   	push   %ebx
40e8cd:	e8 d2 1c 09 00       	call   0x4a05a4
40e8d2:	83 c4 04             	add    $0x4,%esp
40e8d5:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e8d8:	83 c3 2c             	add    $0x2c,%ebx
40e8db:	89 9d 78 ff ff ff    	mov    %ebx,-0x88(%ebp)
40e8e1:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e8e4:	83 c3 30             	add    $0x30,%ebx
40e8e7:	89 9d 74 ff ff ff    	mov    %ebx,-0x8c(%ebp)
40e8ed:	8b 9d 74 ff ff ff    	mov    -0x8c(%ebp),%ebx
40e8f3:	db 03                	fildl  (%ebx)
40e8f5:	dd 9d 6c ff ff ff    	fstpl  -0x94(%ebp)
40e8fb:	dd 85 6c ff ff ff    	fldl   -0x94(%ebp)
40e901:	dc 0d fa bb 4c 00    	fmull  0x4cbbfa
40e907:	dd 9d 64 ff ff ff    	fstpl  -0x9c(%ebp)
40e90d:	dd 85 64 ff ff ff    	fldl   -0x9c(%ebp)
40e913:	e8 d7 28 ff ff       	call   0x4011ef
40e918:	68 01 03 00 80       	push   $0x80000301
40e91d:	6a 00                	push   $0x0
40e91f:	50                   	push   %eax
40e920:	68 01 03 00 80       	push   $0x80000301
40e925:	6a 00                	push   $0x0
40e927:	8b 9d 78 ff ff ff    	mov    -0x88(%ebp),%ebx
40e92d:	ff 33                	push   (%ebx)
40e92f:	68 02 00 00 00       	push   $0x2
40e934:	bb 10 09 00 00       	mov    $0x910,%ebx
40e939:	e8 82 2d 09 00       	call   0x4a16c0
40e93e:	83 c4 1c             	add    $0x1c,%esp
40e941:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
40e947:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e94a:	83 c3 34             	add    $0x34,%ebx
40e94d:	89 9d 5c ff ff ff    	mov    %ebx,-0xa4(%ebp)
40e953:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40e956:	83 c3 38             	add    $0x38,%ebx
40e959:	89 9d 58 ff ff ff    	mov    %ebx,-0xa8(%ebp)
40e95f:	8b 9d 58 ff ff ff    	mov    -0xa8(%ebp),%ebx
40e965:	db 03                	fildl  (%ebx)
40e967:	dd 9d 50 ff ff ff    	fstpl  -0xb0(%ebp)
40e96d:	dd 85 50 ff ff ff    	fldl   -0xb0(%ebp)
40e973:	dc 0d fa bb 4c 00    	fmull  0x4cbbfa
40e979:	dd 9d 48 ff ff ff    	fstpl  -0xb8(%ebp)
40e97f:	dd 85 48 ff ff ff    	fldl   -0xb8(%ebp)
40e985:	e8 65 28 ff ff       	call   0x4011ef
40e98a:	68 01 03 00 80       	push   $0x80000301
40e98f:	6a 00                	push   $0x0
40e991:	50                   	push   %eax
40e992:	68 01 03 00 80       	push   $0x80000301
40e997:	6a 00                	push   $0x0
40e999:	8b 9d 5c ff ff ff    	mov    -0xa4(%ebp),%ebx
40e99f:	ff 33                	push   (%ebx)
40e9a1:	68 02 00 00 00       	push   $0x2
40e9a6:	bb 10 09 00 00       	mov    $0x910,%ebx
40e9ab:	e8 10 2d 09 00       	call   0x4a16c0
40e9b0:	83 c4 1c             	add    $0x1c,%esp
40e9b3:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
40e9b9:	68 50 0a 4e 00       	push   $0x4e0a50
40e9be:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
40e9c4:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
40e9ca:	b9 03 00 00 00       	mov    $0x3,%ecx
40e9cf:	e8 65 ee ff ff       	call   0x40d839
40e9d4:	83 c4 0c             	add    $0xc,%esp
40e9d7:	89 85 40 ff ff ff    	mov    %eax,-0xc0(%ebp)
40e9dd:	8b 9d 60 ff ff ff    	mov    -0xa0(%ebp),%ebx
40e9e3:	85 db                	test   %ebx,%ebx
40e9e5:	74 09                	je     0x40e9f0
40e9e7:	53                   	push   %ebx
40e9e8:	e8 b7 1b 09 00       	call   0x4a05a4
40e9ed:	83 c4 04             	add    $0x4,%esp
40e9f0:	8b 9d 44 ff ff ff    	mov    -0xbc(%ebp),%ebx
40e9f6:	85 db                	test   %ebx,%ebx
40e9f8:	74 09                	je     0x40ea03
40e9fa:	53                   	push   %ebx
40e9fb:	e8 a4 1b 09 00       	call   0x4a05a4
40ea00:	83 c4 04             	add    $0x4,%esp
40ea03:	83 7d 88 00          	cmpl   $0x0,-0x78(%ebp)
40ea07:	0f 84 22 00 00 00    	je     0x40ea2f
40ea0d:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
40ea13:	85 c0                	test   %eax,%eax
40ea15:	74 13                	je     0x40ea2a
40ea17:	50                   	push   %eax
40ea18:	8b 40 04             	mov    0x4(%eax),%eax
40ea1b:	83 c0 08             	add    $0x8,%eax
40ea1e:	50                   	push   %eax
40ea1f:	e8 7a 1b 09 00       	call   0x4a059e
40ea24:	59                   	pop    %ecx
40ea25:	5e                   	pop    %esi
40ea26:	8b f8                	mov    %eax,%edi
40ea28:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
40ea2a:	e9 1d 00 00 00       	jmp    0x40ea4c
40ea2f:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
40ea35:	85 c0                	test   %eax,%eax
40ea37:	74 13                	je     0x40ea4c
40ea39:	50                   	push   %eax
40ea3a:	8b 40 04             	mov    0x4(%eax),%eax
40ea3d:	83 c0 08             	add    $0x8,%eax
40ea40:	50                   	push   %eax
40ea41:	e8 58 1b 09 00       	call   0x4a059e