411542:	89 75 f0             	mov    %esi,-0x10(%ebp)
411545:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
41154b:	50                   	push   %eax
41154c:	46                   	inc    %esi
41154d:	e8 52 eb 00 00       	call   0x4200a4
411552:	33 d2                	xor    %edx,%edx
411554:	e9 0f ff ff ff       	jmp    0x411468
411559:	83 e8 21             	sub    $0x21,%eax
41155c:	0f 85 4a 01 00 00    	jne    0x4116ac
411562:	8b 41 04             	mov    0x4(%ecx),%eax
411565:	6a 7f                	push   $0x7f
411567:	59                   	pop    %ecx
411568:	66 39 48 08          	cmp    %cx,0x8(%eax)
41156c:	0f 85 c9 4d 03 00    	jne    0x44633b
411572:	ff 4d d4             	decl   -0x2c(%ebp)
411575:	0f 85 b8 4d 03 00    	jne    0x446333
41157b:	eb 10                	jmp    0x41158d
41157d:	8b 45 d4             	mov    -0x2c(%ebp),%eax
411580:	40                   	inc    %eax
411581:	89 45 d4             	mov    %eax,-0x2c(%ebp)
411584:	83 f8 01             	cmp    $0x1,%eax
411587:	0f 8f a6 4d 03 00    	jg     0x446333
41158d:	ff 75 dc             	push   -0x24(%ebp)
411590:	8b 45 fc             	mov    -0x4(%ebp),%eax
411593:	ff 75 e8             	push   -0x18(%ebp)
411596:	ff 75 e0             	push   -0x20(%ebp)
411599:	ff 75 e4             	push   -0x1c(%ebp)
41159c:	50                   	push   %eax
41159d:	8b 45 f8             	mov    -0x8(%ebp),%eax
4115a0:	50                   	push   %eax
4115a1:	ff 75 ec             	push   -0x14(%ebp)
4115a4:	56                   	push   %esi
4115a5:	e8 a6 b7 ff ff       	call   0x40cd50
4115aa:	85 c0                	test   %eax,%eax
4115ac:	0f 89 27 ff ff ff    	jns    0x4114d9
4115b2:	e9 b1 00 00 00       	jmp    0x411668
4115b7:	8b 41 04             	mov    0x4(%ecx),%eax
4115ba:	6a 7f                	push   $0x7f
4115bc:	59                   	pop    %ecx
4115bd:	66 39 48 08          	cmp    %cx,0x8(%eax)
4115c1:	0f 85 74 4d 03 00    	jne    0x44633b
4115c7:	8b 45 e8             	mov    -0x18(%ebp),%eax
4115ca:	48                   	dec    %eax
4115cb:	4e                   	dec    %esi
4115cc:	83 bd 7c ff ff ff 00 	cmpl   $0x0,-0x84(%ebp)
4115d3:	89 45 e8             	mov    %eax,-0x18(%ebp)
4115d6:	0f 84 fd 01 00 00    	je     0x4117d9
4115dc:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
4115e2:	e8 f6 ea 00 00       	call   0x4200dd
4115e7:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
4115ed:	8b 18                	mov    (%eax),%ebx
4115ef:	e8 f7 ea 00 00       	call   0x4200eb
4115f4:	8b 45 e8             	mov    -0x18(%ebp),%eax
4115f7:	85 c0                	test   %eax,%eax
4115f9:	78 08                	js     0x411603
4115fb:	3b f3                	cmp    %ebx,%esi
4115fd:	0f 84 d6 fe ff ff    	je     0x4114d9
411603:	57                   	push   %edi
411604:	6a 75                	push   $0x75
411606:	e9 3d 4d 03 00       	jmp    0x446348
41160b:	83 38 12             	cmpl   $0x12,(%eax)
41160e:	0f 8c ec 4c 03 00    	jl     0x446300
411614:	83 38 13             	cmpl   $0x13,(%eax)
411617:	0f 8e fe 00 00 00    	jle    0x41171b
41161d:	83 38 18             	cmpl   $0x18,(%eax)
411620:	0f 8e da 4c 03 00    	jle    0x446300
411626:	83 38 1e             	cmpl   $0x1e,(%eax)
411629:	8b 55 fc             	mov    -0x4(%ebp),%edx
41162c:	0f 8e 4d fe ff ff    	jle    0x41147f
411632:	83 38 21             	cmpl   $0x21,(%eax)
411635:	0f 8e c5 4c 03 00    	jle    0x446300
41163b:	83 38 23             	cmpl   $0x23,(%eax)
41163e:	0f 8e 95 fe ff ff    	jle    0x4114d9
411644:	e9 b7 4c 03 00       	jmp    0x446300
411649:	ff 75 dc             	push   -0x24(%ebp)
41164c:	33 db                	xor    %ebx,%ebx
41164e:	ff 75 e8             	push   -0x18(%ebp)
411651:	ff 75 e0             	push   -0x20(%ebp)
411654:	ff 75 e4             	push   -0x1c(%ebp)
411657:	52                   	push   %edx
411658:	51                   	push   %ecx
411659:	ff 75 ec             	push   -0x14(%ebp)
41165c:	53                   	push   %ebx
41165d:	e8 ee b6 ff ff       	call   0x40cd50
411662:	85 c0                	test   %eax,%eax
411664:	78 02                	js     0x411668
411666:	8b fb                	mov    %ebx,%edi
411668:	8d 4d ac             	lea    -0x54(%ebp),%ecx
41166b:	e8 ae ea 00 00       	call   0x42011e
411670:	8d 4d 88             	lea    -0x78(%ebp),%ecx
411673:	e8 a6 ea 00 00       	call   0x42011e
411678:	8d 4d a0             	lea    -0x60(%ebp),%ecx
41167b:	e8 9e ea 00 00       	call   0x42011e
411680:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
411683:	e8 96 ea 00 00       	call   0x42011e
411688:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
41168b:	e8 8e ea 00 00       	call   0x42011e
411690:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
411696:	e8 83 ea 00 00       	call   0x42011e
41169b:	8d 4d b8             	lea    -0x48(%ebp),%ecx
41169e:	e8 7b ea 00 00       	call   0x42011e
4116a3:	8b c7                	mov    %edi,%eax
4116a5:	5f                   	pop    %edi
4116a6:	5e                   	pop    %esi
4116a7:	5b                   	pop    %ebx
4116a8:	8b e5                	mov    %ebp,%esp
4116aa:	5d                   	pop    %ebp
4116ab:	c3                   	ret
4116ac:	83 e8 04             	sub    $0x4,%eax
4116af:	0f 84 40 4c 03 00    	je     0x4462f5
4116b5:	48                   	dec    %eax
4116b6:	0f 84 f4 4b 03 00    	je     0x4462b0
4116bc:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4116bf:	83 e8 05             	sub    $0x5,%eax
4116c2:	8b 55 fc             	mov    -0x4(%ebp),%edx
4116c5:	8b 45 f4             	mov    -0xc(%ebp),%eax
4116c8:	0f 85 e0 fc ff ff    	jne    0x4113ae
4116ce:	e9 aa fe ff ff       	jmp    0x41157d
4116d3:	8b 41 04             	mov    0x4(%ecx),%eax
4116d6:	6a 7f                	push   $0x7f
4116d8:	59                   	pop    %ecx
4116d9:	66 39 48 08          	cmp    %cx,0x8(%eax)
4116dd:	0f 85 58 4c 03 00    	jne    0x44633b
4116e3:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
4116e7:	0f 85 ec fd ff ff    	jne    0x4114d9
4116ed:	57                   	push   %edi
4116ee:	6a 74                	push   $0x74
4116f0:	e9 53 4c 03 00       	jmp    0x446348
4116f5:	8b 41 04             	mov    0x4(%ecx),%eax
4116f8:	6a 7f                	push   $0x7f
4116fa:	59                   	pop    %ecx
4116fb:	66 39 48 08          	cmp    %cx,0x8(%eax)
4116ff:	0f 85 36 4c 03 00    	jne    0x44633b
411705:	ff 45 ec             	incl   -0x14(%ebp)
411708:	8d 4d 88             	lea    -0x78(%ebp),%ecx
41170b:	e9 bc fd ff ff       	jmp    0x4114cc
411710:	ff 45 f8             	incl   -0x8(%ebp)
411713:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
411716:	e9 b1 fd ff ff       	jmp    0x4114cc
41171b:	8b 55 fc             	mov    -0x4(%ebp),%edx
41171e:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
411722:	8b 4d f8             	mov    -0x8(%ebp),%ecx
411725:	8b 45 f4             	mov    -0xc(%ebp),%eax
411728:	0f 85 80 fc ff ff    	jne    0x4113ae
41172e:	8b 55 fc             	mov    -0x4(%ebp),%edx
411731:	85 c9                	test   %ecx,%ecx
411733:	0f 85 75 fc ff ff    	jne    0x4113ae
411739:	85 d2                	test   %edx,%edx
41173b:	0f 85 9e fd ff ff    	jne    0x4114df
411741:	e9 e5 4b 03 00       	jmp    0x44632b
411746:	8b 45 ec             	mov    -0x14(%ebp),%eax
411749:	48                   	dec    %eax
41174a:	4e                   	dec    %esi
41174b:	83 7d 88 00          	cmpl   $0x0,-0x78(%ebp)
41174f:	89 45 ec             	mov    %eax,-0x14(%ebp)
411752:	74 73                	je     0x4117c7
411754:	8d 4d 88             	lea    -0x78(%ebp),%ecx
411757:	e8 81 e9 00 00       	call   0x4200dd
41175c:	8d 4d 88             	lea    -0x78(%ebp),%ecx
41175f:	8b 18                	mov    (%eax),%ebx
411761:	e8 85 e9 00 00       	call   0x4200eb
411766:	8b 45 ec             	mov    -0x14(%ebp),%eax
411769:	85 c0                	test   %eax,%eax
41176b:	78 08                	js     0x411775
41176d:	3b f3                	cmp    %ebx,%esi
41176f:	0f 84 64 fd ff ff    	je     0x4114d9
411775:	57                   	push   %edi
411776:	68 93 00 00 00       	push   $0x93
41177b:	e9 c8 4b 03 00       	jmp    0x446348
411780:	8b 41 04             	mov    0x4(%ecx),%eax
411783:	6a 7f                	push   $0x7f
411785:	59                   	pop    %ecx
411786:	66 39 48 08          	cmp    %cx,0x8(%eax)
41178a:	0f 85 ab 4b 03 00    	jne    0x44633b
411790:	8b 4d f8             	mov    -0x8(%ebp),%ecx
411793:	49                   	dec    %ecx
411794:	4e                   	dec    %esi
411795:	83 7d 94 00          	cmpl   $0x0,-0x6c(%ebp)
411799:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41179c:	74 2e                	je     0x4117cc
41179e:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
4117a1:	e8 37 e9 00 00       	call   0x4200dd
4117a6:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
4117a9:	8b 18                	mov    (%eax),%ebx
4117ab:	e8 3b e9 00 00       	call   0x4200eb
4117b0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4117b3:	85 c9                	test   %ecx,%ecx
4117b5:	78 08                	js     0x4117bf
4117b7:	3b f3                	cmp    %ebx,%esi
4117b9:	0f 84 1d fd ff ff    	je     0x4114dc
4117bf:	57                   	push   %edi
4117c0:	6a 78                	push   $0x78
4117c2:	e9 81 4b 03 00       	jmp    0x446348
4117c7:	8d 5e 01             	lea    0x1(%esi),%ebx
4117ca:	eb 9d                	jmp    0x411769
4117cc:	8d 5e 01             	lea    0x1(%esi),%ebx
4117cf:	eb e2                	jmp    0x4117b3
4117d1:	8d 5e 01             	lea    0x1(%esi),%ebx
4117d4:	e9 45 fd ff ff       	jmp    0x41151e
4117d9:	8d 5e 01             	lea    0x1(%esi),%ebx
4117dc:	e9 16 fe ff ff       	jmp    0x4115f7
4117e1:	90                   	nop
4117e2:	20 14 41             	and    %dl,(%ecx,%eax,2)
4117e5:	00 23                	add    %ah,(%ebx)
4117e7:	63 44 00 d3          	arpl   %eax,-0x2d(%eax,%eax,1)
4117eb:	16                   	push   %ss
4117ec:	41                   	inc    %ecx
4117ed:	00 e3                	add    %ah,%bl
4117ef:	16                   	push   %ss
4117f0:	41                   	inc    %ecx
4117f1:	00 b7 15 41 00 10    	add    %dh,0x10004115(%edi)
4117f7:	17                   	pop    %ss
4117f8:	41                   	inc    %ecx
4117f9:	00 80 17 41 00 f5    	add    %al,-0xaffbee9(%eax)
4117ff:	16                   	push   %ss
411800:	41                   	inc    %ecx
411801:	00 46 17             	add    %al,0x17(%esi)
411804:	41                   	inc    %ecx
411805:	00 c6                	add    %al,%dh
411807:	14 41                	adc    $0x41,%al
411809:	00 e7                	add    %ah,%bh
41180b:	14 41                	adc    $0x41,%al
41180d:	00 55 8b             	add    %dl,-0x75(%ebp)
411810:	ec                   	in     (%dx),%al
411811:	83 e4 f8             	and    $0xfffffff8,%esp
411814:	83 ec 1c             	sub    $0x1c,%esp
411817:	53                   	push   %ebx
411818:	56                   	push   %esi
411819:	57                   	push   %edi
41181a:	8b 7d 08             	mov    0x8(%ebp),%edi
41181d:	8b f1                	mov    %ecx,%esi
41181f:	33 c9                	xor    %ecx,%ecx
411821:	c7 44 24 24 01 00 00 	movl   $0x1,0x24(%esp)
411828:	00
411829:	89 4c 24 18          	mov    %ecx,0x18(%esp)
41182d:	83 cb ff             	or     $0xffffffff,%ebx
411830:	89 4c 24 20          	mov    %ecx,0x20(%esp)
411834:	8b 47 04             	mov    0x4(%edi),%eax
411837:	89 4c 24 10          	mov    %ecx,0x10(%esp)
41183b:	8b 00                	mov    (%eax),%eax
41183d:	89 44 24 14          	mov    %eax,0x14(%esp)
411841:	0f bf 40 08          	movswl 0x8(%eax),%eax
411845:	2b c1                	sub    %ecx,%eax
411847:	74 2a                	je     0x411873
411849:	48                   	dec    %eax
41184a:	0f 84 84 4b 03 00    	je     0x4463d4
411850:	83 e8 32             	sub    $0x32,%eax
411853:	0f 85 fe 4a 03 00    	jne    0x446357
411859:	57                   	push   %edi
41185a:	8b ce                	mov    %esi,%ecx
41185c:	e8 9f cf ff ff       	call   0x40e800
411861:	8d 4c 24 18          	lea    0x18(%esp),%ecx
411865:	e8 b6 81 ff ff       	call   0x409a20
41186a:	5f                   	pop    %edi
41186b:	5e                   	pop    %esi
41186c:	5b                   	pop    %ebx
41186d:	8b e5                	mov    %ebp,%esp
41186f:	5d                   	pop    %ebp
411870:	c2 08 00             	ret    $0x8
411873:	ff 75 0c             	push   0xc(%ebp)
411876:	8b ce                	mov    %esi,%ecx
411878:	57                   	push   %edi
411879:	e8 02 cd ff ff       	call   0x40e580
41187e:	85 db                	test   %ebx,%ebx
411880:	78 df                	js     0x411861
411882:	e9 67 4b 03 00       	jmp    0x4463ee
411887:	55                   	push   %ebp
411888:	8b ec                	mov    %esp,%ebp
41188a:	51                   	push   %ecx
41188b:	51                   	push   %ecx
41188c:	8b 45 08             	mov    0x8(%ebp),%eax
41188f:	56                   	push   %esi
411890:	8b 40 04             	mov    0x4(%eax),%eax
411893:	8b 08                	mov    (%eax),%ecx
411895:	e8 5e 84 ff ff       	call   0x409cf8
41189a:	51                   	push   %ecx
41189b:	51                   	push   %ecx
41189c:	dd 1c 24             	fstpl  (%esp)
41189f:	e8 4c 38 01 00       	call   0x4250f0
4118a4:	8b 75 0c             	mov    0xc(%ebp),%esi
4118a7:	83 c4 08             	add    $0x8,%esp
4118aa:	8b ce                	mov    %esi,%ecx
4118ac:	dd 5d f8             	fstpl  -0x8(%ebp)
4118af:	e8 6c 81 ff ff       	call   0x409a20
4118b4:	dd 45 f8             	fldl   -0x8(%ebp)
4118b7:	33 c0                	xor    %eax,%eax
4118b9:	dd 1e                	fstpl  (%esi)
4118bb:	c7 46 0c 03 00 00 00 	movl   $0x3,0xc(%esi)
4118c2:	5e                   	pop    %esi
4118c3:	8b e5                	mov    %ebp,%esp
4118c5:	5d                   	pop    %ebp
4118c6:	c2 08 00             	ret    $0x8
4118c9:	55                   	push   %ebp
4118ca:	8b ec                	mov    %esp,%ebp
4118cc:	83 e4 f8             	and    $0xfffffff8,%esp
4118cf:	83 ec 4c             	sub    $0x4c,%esp
4118d2:	53                   	push   %ebx
4118d3:	56                   	push   %esi
4118d4:	8b 75 08             	mov    0x8(%ebp),%esi
4118d7:	33 db                	xor    %ebx,%ebx
4118d9:	89 5c 24 14          	mov    %ebx,0x14(%esp)
4118dd:	57                   	push   %edi
4118de:	8b f9                	mov    %ecx,%edi
4118e0:	8b 46 04             	mov    0x4(%esi),%eax
4118e3:	8b 08                	mov    (%eax),%ecx
4118e5:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4118e9:	83 79 0c 0e          	cmpl   $0xe,0xc(%ecx)
4118ed:	0f 84 23 4b 03 00    	je     0x446416
4118f3:	6a 02                	push   $0x2
4118f5:	58                   	pop    %eax
4118f6:	89 44 24 10          	mov    %eax,0x10(%esp)
4118fa:	e8 98 80 ff ff       	call   0x409997
4118ff:	8b 44 24 18          	mov    0x18(%esp),%eax
411903:	8b 48 08             	mov    0x8(%eax),%ecx
411906:	8b 01                	mov    (%ecx),%eax
411908:	89 44 24 2c          	mov    %eax,0x2c(%esp)
41190c:	8b 41 04             	mov    0x4(%ecx),%eax
41190f:	89 44 24 30          	mov    %eax,0x30(%esp)
411913:	8b 41 08             	mov    0x8(%ecx),%eax
411916:	89 44 24 34          	mov    %eax,0x34(%esp)
41191a:	8b 41 0c             	mov    0xc(%ecx),%eax
41191d:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
411921:	89 44 24 38          	mov    %eax,0x38(%esp)
411925:	ff 00                	incl   (%eax)
411927:	8b 01                	mov    (%ecx),%eax
411929:	89 44 24 1c          	mov    %eax,0x1c(%esp)
41192d:	8b 41 04             	mov    0x4(%ecx),%eax
411930:	89 44 24 20          	mov    %eax,0x20(%esp)
411934:	8b 41 08             	mov    0x8(%ecx),%eax
411937:	89 44 24 24          	mov    %eax,0x24(%esp)
41193b:	8b 41 0c             	mov    0xc(%ecx),%eax
41193e:	89 44 24 28          	mov    %eax,0x28(%esp)
411942:	ff 00                	incl   (%eax)
411944:	8b 44 24 10          	mov    0x10(%esp),%eax
411948:	a8 02                	test   $0x2,%al
41194a:	74 14                	je     0x411960
41194c:	83 e0 fd             	and    $0xfffffffd,%eax
41194f:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
411953:	89 44 24 10          	mov    %eax,0x10(%esp)
411957:	e8 08 41 ff ff       	call   0x405a64
41195c:	8b 44 24 10          	mov    0x10(%esp),%eax
411960:	a8 01                	test   $0x1,%al
411962:	0f 85 c6 4a 03 00    	jne    0x44642e
411968:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
41196c:	e8 3e 66 ff ff       	call   0x407faf
411971:	ff 74 24 20          	push   0x20(%esp)
411975:	ff 74 24 20          	push   0x20(%esp)
411979:	ff 15 7c f6 48 00    	call   *0x48f67c
41197f:	8d 44 24 1c          	lea    0x1c(%esp),%eax
411983:	8b cf                	mov    %edi,%ecx