4035d5:	59                   	pop    %ecx
4035d6:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4035d9:	c7 45 dc 02 00 00 00 	movl   $0x2,-0x24(%ebp)
4035e0:	50                   	push   %eax
4035e1:	53                   	push   %ebx
4035e2:	57                   	push   %edi
4035e3:	ff 75 08             	push   0x8(%ebp)
4035e6:	ff d6                	call   *%esi
4035e8:	85 c0                	test   %eax,%eax
4035ea:	74 15                	je     0x403601
4035ec:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
4035f2:	50                   	push   %eax
4035f3:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
4035f9:	50                   	push   %eax
4035fa:	e8 43 59 00 00       	call   0x408f42
4035ff:	59                   	pop    %ecx
403600:	59                   	pop    %ecx
403601:	8d 45 d4             	lea    -0x2c(%ebp),%eax
403604:	c7 45 dc 03 00 00 00 	movl   $0x3,-0x24(%ebp)
40360b:	50                   	push   %eax
40360c:	53                   	push   %ebx
40360d:	57                   	push   %edi
40360e:	ff 75 08             	push   0x8(%ebp)
403611:	ff d6                	call   *%esi
403613:	85 c0                	test   %eax,%eax
403615:	74 15                	je     0x40362c
403617:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
40361d:	50                   	push   %eax
40361e:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
403624:	50                   	push   %eax
403625:	e8 18 59 00 00       	call   0x408f42
40362a:	59                   	pop    %ecx
40362b:	59                   	pop    %ecx
40362c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40362f:	c7 45 dc 04 00 00 00 	movl   $0x4,-0x24(%ebp)
403636:	50                   	push   %eax
403637:	53                   	push   %ebx
403638:	57                   	push   %edi
403639:	ff 75 08             	push   0x8(%ebp)
40363c:	ff d6                	call   *%esi
40363e:	85 c0                	test   %eax,%eax
403640:	74 15                	je     0x403657
403642:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
403648:	50                   	push   %eax
403649:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
40364f:	50                   	push   %eax
403650:	e8 ed 58 00 00       	call   0x408f42
403655:	59                   	pop    %ecx
403656:	59                   	pop    %ecx
403657:	38 5d 10             	cmp    %bl,0x10(%ebp)
40365a:	74 56                	je     0x4036b2
40365c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40365f:	c7 45 dc 05 00 00 00 	movl   $0x5,-0x24(%ebp)
403666:	50                   	push   %eax
403667:	53                   	push   %ebx
403668:	57                   	push   %edi
403669:	ff 75 08             	push   0x8(%ebp)
40366c:	ff d6                	call   *%esi
40366e:	85 c0                	test   %eax,%eax
403670:	74 15                	je     0x403687
403672:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
403678:	50                   	push   %eax
403679:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
40367f:	50                   	push   %eax
403680:	e8 bd 58 00 00       	call   0x408f42
403685:	59                   	pop    %ecx
403686:	59                   	pop    %ecx
403687:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40368a:	c7 45 dc 06 00 00 00 	movl   $0x6,-0x24(%ebp)
403691:	50                   	push   %eax
403692:	53                   	push   %ebx
403693:	57                   	push   %edi
403694:	ff 75 08             	push   0x8(%ebp)
403697:	ff d6                	call   *%esi
403699:	85 c0                	test   %eax,%eax
40369b:	74 15                	je     0x4036b2
40369d:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
4036a3:	50                   	push   %eax
4036a4:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
4036aa:	50                   	push   %eax
4036ab:	e8 92 58 00 00       	call   0x408f42
4036b0:	59                   	pop    %ecx
4036b1:	59                   	pop    %ecx
4036b2:	8d 85 b8 f8 ff ff    	lea    -0x748(%ebp),%eax
4036b8:	50                   	push   %eax
4036b9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4036bc:	8b 88 5c 02 00 00    	mov    0x25c(%eax),%ecx
4036c2:	e8 17 de ff ff       	call   0x4014de
4036c7:	5f                   	pop    %edi
4036c8:	5e                   	pop    %esi
4036c9:	5b                   	pop    %ebx
4036ca:	c9                   	leave
4036cb:	c2 0c 00             	ret    $0xc
4036ce:	b8 40 94 40 00       	mov    $0x409440,%eax
4036d3:	e8 58 58 00 00       	call   0x408f30
4036d8:	81 ec 5c 02 00 00    	sub    $0x25c,%esp
4036de:	8a 45 10             	mov    0x10(%ebp),%al
4036e1:	53                   	push   %ebx
4036e2:	f6 d8                	neg    %al
4036e4:	1b c0                	sbb    %eax,%eax
4036e6:	56                   	push   %esi
4036e7:	83 e0 02             	and    $0x2,%eax
4036ea:	57                   	push   %edi
4036eb:	89 45 b0             	mov    %eax,-0x50(%ebp)
4036ee:	8b 45 0c             	mov    0xc(%ebp),%eax
4036f1:	89 45 ac             	mov    %eax,-0x54(%ebp)
4036f4:	8d 85 98 fd ff ff    	lea    -0x268(%ebp),%eax
4036fa:	89 45 bc             	mov    %eax,-0x44(%ebp)
4036fd:	8b 1d dc a2 40 00    	mov    0x40a2dc,%ebx
403703:	8d 45 a8             	lea    -0x58(%ebp),%eax
403706:	89 65 f0             	mov    %esp,-0x10(%ebp)
403709:	50                   	push   %eax
40370a:	8b f9                	mov    %ecx,%edi
40370c:	6a 00                	push   $0x0
40370e:	68 05 10 00 00       	push   $0x1005
403713:	ff b7 60 02 00 00    	push   0x260(%edi)
403719:	89 7d e4             	mov    %edi,-0x1c(%ebp)
40371c:	c7 45 a8 01 00 00 00 	movl   $0x1,-0x58(%ebp)
403723:	c7 45 c0 04 01 00 00 	movl   $0x104,-0x40(%ebp)
40372a:	ff d3                	call   *%ebx
40372c:	85 c0                	test   %eax,%eax
40372e:	0f 84 85 01 00 00    	je     0x4038b9
403734:	8b 35 f8 a0 40 00    	mov    0x40a0f8,%esi
40373a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40373e:	68 7c c5 40 00       	push   $0x40c57c
403743:	ff d6                	call   *%esi
403745:	68 70 c5 40 00       	push   $0x40c570
40374a:	89 45 0c             	mov    %eax,0xc(%ebp)
40374d:	ff d6                	call   *%esi
40374f:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
403753:	0f 84 24 01 00 00    	je     0x40387d
403759:	85 c0                	test   %eax,%eax
40375b:	0f 84 1c 01 00 00    	je     0x40387d
403761:	8b 35 50 a0 40 00    	mov    0x40a050,%esi
403767:	68 60 c5 40 00       	push   $0x40c560
40376c:	50                   	push   %eax
40376d:	ff d6                	call   *%esi
40376f:	68 4c c5 40 00       	push   $0x40c54c
403774:	89 45 a4             	mov    %eax,-0x5c(%ebp)
403777:	ff 75 0c             	push   0xc(%ebp)
40377a:	ff d6                	call   *%esi
40377c:	89 45 a0             	mov    %eax,-0x60(%ebp)
40377f:	8d 85 98 fd ff ff    	lea    -0x268(%ebp),%eax
403785:	50                   	push   %eax
403786:	8d 85 9c fe ff ff    	lea    -0x164(%ebp),%eax
40378c:	50                   	push   %eax
40378d:	e8 b6 58 00 00       	call   0x409048
403792:	33 f6                	xor    %esi,%esi
403794:	59                   	pop    %ecx
403795:	39 75 a4             	cmp    %esi,-0x5c(%ebp)
403798:	59                   	pop    %ecx
403799:	0f 84 c9 00 00 00    	je     0x403868
40379f:	39 75 a0             	cmp    %esi,-0x60(%ebp)
4037a2:	0f 84 c0 00 00 00    	je     0x403868
4037a8:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
4037ac:	74 44                	je     0x4037f2
4037ae:	8d 45 a8             	lea    -0x58(%ebp),%eax
4037b1:	c7 45 b0 01 00 00 00 	movl   $0x1,-0x50(%ebp)
4037b8:	50                   	push   %eax
4037b9:	56                   	push   %esi
4037ba:	68 05 10 00 00       	push   $0x1005
4037bf:	ff b7 60 02 00 00    	push   0x260(%edi)
4037c5:	ff d3                	call   *%ebx
4037c7:	85 c0                	test   %eax,%eax
4037c9:	74 12                	je     0x4037dd
4037cb:	8d 85 98 fd ff ff    	lea    -0x268(%ebp),%eax
4037d1:	50                   	push   %eax
4037d2:	ff 15 38 a1 40 00    	call   *0x40a138
4037d8:	3b c6                	cmp    %esi,%eax
4037da:	59                   	pop    %ecx
4037db:	75 18                	jne    0x4037f5
4037dd:	8d 45 e8             	lea    -0x18(%ebp),%eax
4037e0:	68 68 a4 40 00       	push   $0x40a468
4037e5:	50                   	push   %eax
4037e6:	c7 45 e8 38 c5 40 00 	movl   $0x40c538,-0x18(%ebp)
4037ed:	e8 44 57 00 00       	call   0x408f36
4037f2:	8b 47 08             	mov    0x8(%edi),%eax
4037f5:	50                   	push   %eax
4037f6:	56                   	push   %esi
4037f7:	68 ff 0f 1f 00       	push   $0x1f0fff
4037fc:	ff 15 0c a1 40 00    	call   *0x40a10c
403802:	3b c6                	cmp    %esi,%eax
403804:	75 15                	jne    0x40381b
403806:	8d 45 dc             	lea    -0x24(%ebp),%eax
403809:	68 68 a4 40 00       	push   $0x40a468
40380e:	50                   	push   %eax
40380f:	c7 45 dc 20 c5 40 00 	movl   $0x40c520,-0x24(%ebp)
403816:	e8 1b 57 00 00       	call   0x408f36
40381b:	8d 8d 9c fe ff ff    	lea    -0x164(%ebp),%ecx
403821:	68 0c 01 00 00       	push   $0x10c
403826:	51                   	push   %ecx
403827:	68 2c 01 00 00       	push   $0x12c
40382c:	68 3b 6c 40 00       	push   $0x406c3b
403831:	50                   	push   %eax
403832:	e8 39 33 00 00       	call   0x406b70
403837:	83 c4 14             	add    $0x14,%esp
40383a:	3b c6                	cmp    %esi,%eax
40383c:	75 15                	jne    0x403853
40383e:	8d 45 e0             	lea    -0x20(%ebp),%eax
403841:	68 68 a4 40 00       	push   $0x40a468
403846:	50                   	push   %eax
403847:	c7 45 e0 04 c5 40 00 	movl   $0x40c504,-0x20(%ebp)
40384e:	e8 e3 56 00 00       	call   0x408f36
403853:	8d 45 d4             	lea    -0x2c(%ebp),%eax
403856:	68 68 a4 40 00       	push   $0x40a468
40385b:	50                   	push   %eax
40385c:	c7 45 d4 e8 c4 40 00 	movl   $0x40c4e8,-0x2c(%ebp)
403863:	e8 ce 56 00 00       	call   0x408f36
403868:	8d 45 d8             	lea    -0x28(%ebp),%eax
40386b:	68 68 a4 40 00       	push   $0x40a468
403870:	50                   	push   %eax
403871:	c7 45 d8 cc c4 40 00 	movl   $0x40c4cc,-0x28(%ebp)
403878:	e8 b9 56 00 00       	call   0x408f36
40387d:	8d 45 ec             	lea    -0x14(%ebp),%eax
403880:	68 68 a4 40 00       	push   $0x40a468
403885:	50                   	push   %eax
403886:	c7 45 ec b4 c4 40 00 	movl   $0x40c4b4,-0x14(%ebp)
40388d:	e8 a4 56 00 00       	call   0x408f36
403892:	ff 75 d0             	push   -0x30(%ebp)
403895:	ff 75 08             	push   0x8(%ebp)
403898:	e8 68 4d 00 00       	call   0x408605
40389d:	59                   	pop    %ecx
40389e:	b8 a5 38 40 00       	mov    $0x4038a5,%eax
4038a3:	59                   	pop    %ecx
4038a4:	c3                   	ret
4038a5:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4038a9:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
4038ad:	75 0a                	jne    0x4038b9
4038af:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4038b2:	6a fe                	push   $0xfffffffe
4038b4:	e8 05 01 00 00       	call   0x4039be
4038b9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4038bc:	5f                   	pop    %edi
4038bd:	5e                   	pop    %esi
4038be:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4038c5:	5b                   	pop    %ebx
4038c6:	c9                   	leave
4038c7:	c2 0c 00             	ret    $0xc
4038ca:	53                   	push   %ebx
4038cb:	56                   	push   %esi
4038cc:	57                   	push   %edi
4038cd:	33 ff                	xor    %edi,%edi
4038cf:	57                   	push   %edi
4038d0:	8b d9                	mov    %ecx,%ebx
4038d2:	ff 74 24 18          	push   0x18(%esp)
4038d6:	57                   	push   %edi
4038d7:	ff 74 24 1c          	push   0x1c(%esp)
4038db:	57                   	push   %edi
4038dc:	57                   	push   %edi
4038dd:	57                   	push   %edi
4038de:	57                   	push   %edi
4038df:	68 0d 00 00 50       	push   $0x5000000d
4038e4:	57                   	push   %edi
4038e5:	68 20 c3 40 00       	push   $0x40c320
4038ea:	68 00 02 00 00       	push   $0x200
4038ef:	ff 15 98 a2 40 00    	call   *0x40a298
4038f5:	8d b3 60 02 00 00    	lea    0x260(%ebx),%esi
4038fb:	3b c7                	cmp    %edi,%eax
4038fd:	89 06                	mov    %eax,(%esi)
4038ff:	75 04                	jne    0x403905
403901:	33 c0                	xor    %eax,%eax
403903:	eb 0a                	jmp    0x40390f
403905:	50                   	push   %eax
403906:	8b cb                	mov    %ebx,%ecx
403908:	e8 08 00 00 00       	call   0x403915
40390d:	8b 06                	mov    (%esi),%eax
40390f:	5f                   	pop    %edi
403910:	5e                   	pop    %esi
403911:	5b                   	pop    %ebx
403912:	c2 08 00             	ret    $0x8
403915:	55                   	push   %ebp
403916:	8b ec                	mov    %esp,%ebp
403918:	83 ec 20             	sub    $0x20,%esp
40391b:	53                   	push   %ebx
40391c:	8b 5d 08             	mov    0x8(%ebp),%ebx
40391f:	56                   	push   %esi
403920:	8b 35 dc a2 40 00    	mov    0x40a2dc,%esi
403926:	57                   	push   %edi
403927:	6a 20                	push   $0x20
403929:	6a 00                	push   $0x0
40392b:	68 36 10 00 00       	push   $0x1036
403930:	53                   	push   %ebx
403931:	ff d6                	call   *%esi
403933:	8d 45 e0             	lea    -0x20(%ebp),%eax
403936:	bf 1b 10 00 00       	mov    $0x101b,%edi
40393b:	50                   	push   %eax
40393c:	6a 00                	push   $0x0
40393e:	57                   	push   %edi
40393f:	53                   	push   %ebx
403940:	c7 45 e0 06 00 00 00 	movl   $0x6,-0x20(%ebp)
403947:	c7 45 ec b8 c5 40 00 	movl   $0x40c5b8,-0x14(%ebp)
40394e:	c7 45 e8 f0 00 00 00 	movl   $0xf0,-0x18(%ebp)
403955:	ff d6                	call   *%esi
403957:	8d 45 e0             	lea    -0x20(%ebp),%eax
40395a:	c7 45 ec b0 c5 40 00 	movl   $0x40c5b0,-0x14(%ebp)
403961:	50                   	push   %eax
403962:	6a 00                	push   $0x0
403964:	57                   	push   %edi
403965:	53                   	push   %ebx
403966:	c7 45 e8 c8 00 00 00 	movl   $0xc8,-0x18(%ebp)
40396d:	ff d6                	call   *%esi
40396f:	8d 45 e0             	lea    -0x20(%ebp),%eax
403972:	c7 45 ec a0 c5 40 00 	movl   $0x40c5a0,-0x14(%ebp)
403979:	50                   	push   %eax
40397a:	6a 00                	push   $0x0
40397c:	57                   	push   %edi
40397d:	53                   	push   %ebx
40397e:	c7 45 e8 8c 00 00 00 	movl   $0x8c,-0x18(%ebp)
403985:	ff d6                	call   *%esi
403987:	8d 45 e0             	lea    -0x20(%ebp),%eax
40398a:	c7 45 ec 94 c5 40 00 	movl   $0x40c594,-0x14(%ebp)
403991:	50                   	push   %eax
403992:	6a 00                	push   $0x0
403994:	57                   	push   %edi
403995:	53                   	push   %ebx
403996:	c7 45 e8 f0 00 00 00 	movl   $0xf0,-0x18(%ebp)
40399d:	ff d6                	call   *%esi
40399f:	8d 45 e0             	lea    -0x20(%ebp),%eax
4039a2:	c7 45 ec 8c c5 40 00 	movl   $0x40c58c,-0x14(%ebp)
4039a9:	50                   	push   %eax
4039aa:	6a 00                	push   $0x0
4039ac:	57                   	push   %edi
4039ad:	53                   	push   %ebx
4039ae:	c7 45 e8 69 00 00 00 	movl   $0x69,-0x18(%ebp)
4039b5:	ff d6                	call   *%esi
4039b7:	5f                   	pop    %edi
4039b8:	5e                   	pop    %esi
4039b9:	5b                   	pop    %ebx
4039ba:	c9                   	leave
4039bb:	c2 04 00             	ret    $0x4
4039be:	b8 4c 94 40 00       	mov    $0x40944c,%eax
4039c3:	e8 68 55 00 00       	call   0x408f30
4039c8:	81 ec e0 02 00 00    	sub    $0x2e0,%esp
4039ce:	83 7d 08 fe          	cmpl   $0xfffffffe,0x8(%ebp)
4039d2:	53                   	push   %ebx
4039d3:	56                   	push   %esi
4039d4:	57                   	push   %edi
4039d5:	8b f1                	mov    %ecx,%esi
4039d7:	89 65 f0             	mov    %esp,-0x10(%ebp)
4039da:	89 75 b0             	mov    %esi,-0x50(%ebp)
4039dd:	75 09                	jne    0x4039e8
4039df:	8b 86 58 02 00 00    	mov    0x258(%esi),%eax
4039e5:	89 45 08             	mov    %eax,0x8(%ebp)
4039e8:	8b 45 08             	mov    0x8(%ebp),%eax
4039eb:	8d 7e 08             	lea    0x8(%esi),%edi
4039ee:	89 86 58 02 00 00    	mov    %eax,0x258(%esi)
4039f4:	50                   	push   %eax
4039f5:	8b 86 5c 02 00 00    	mov    0x25c(%esi),%eax
4039fb:	57                   	push   %edi
4039fc:	8b 88 e8 01 00 00    	mov    0x1e8(%eax),%ecx