423516:	ff 75 20             	push   0x20(%ebp)
423519:	e8 b2 bf ff ff       	call   0x41f4d0
42351e:	ff 75 24             	push   0x24(%ebp)
423521:	8d 45 d8             	lea    -0x28(%ebp),%eax
423524:	50                   	push   %eax
423525:	ff 75 1c             	push   0x1c(%ebp)
423528:	ff 75 18             	push   0x18(%ebp)
42352b:	ff 75 14             	push   0x14(%ebp)
42352e:	ff 75 10             	push   0x10(%ebp)
423531:	ff 75 0c             	push   0xc(%ebp)
423534:	ff 75 08             	push   0x8(%ebp)
423537:	e8 a8 c4 ff ff       	call   0x41f9e4
42353c:	83 c4 20             	add    $0x20,%esp
42353f:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423542:	8b f0                	mov    %eax,%esi
423544:	e8 e7 bf ff ff       	call   0x41f530
423549:	8b c6                	mov    %esi,%eax
42354b:	5e                   	pop    %esi
42354c:	c9                   	leave
42354d:	c3                   	ret
42354e:	8b ff                	mov    %edi,%edi
423550:	55                   	push   %ebp
423551:	8b ec                	mov    %esp,%ebp
423553:	83 ec 28             	sub    $0x28,%esp
423556:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423559:	56                   	push   %esi
42355a:	ff 75 20             	push   0x20(%ebp)
42355d:	e8 6e bf ff ff       	call   0x41f4d0
423562:	ff 75 24             	push   0x24(%ebp)
423565:	8d 45 d8             	lea    -0x28(%ebp),%eax
423568:	50                   	push   %eax
423569:	ff 75 1c             	push   0x1c(%ebp)
42356c:	ff 75 18             	push   0x18(%ebp)
42356f:	ff 75 14             	push   0x14(%ebp)
423572:	ff 75 10             	push   0x10(%ebp)
423575:	ff 75 0c             	push   0xc(%ebp)
423578:	ff 75 08             	push   0x8(%ebp)
42357b:	e8 65 c5 ff ff       	call   0x41fae5
423580:	83 c4 20             	add    $0x20,%esp
423583:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423586:	8b f0                	mov    %eax,%esi
423588:	e8 a3 bf ff ff       	call   0x41f530
42358d:	8b c6                	mov    %esi,%eax
42358f:	5e                   	pop    %esi
423590:	c9                   	leave
423591:	c3                   	ret
423592:	8b ff                	mov    %edi,%edi
423594:	55                   	push   %ebp
423595:	8b ec                	mov    %esp,%ebp
423597:	83 ec 28             	sub    $0x28,%esp
42359a:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42359d:	56                   	push   %esi
42359e:	ff 75 1c             	push   0x1c(%ebp)
4235a1:	e8 2a bf ff ff       	call   0x41f4d0
4235a6:	ff 75 20             	push   0x20(%ebp)
4235a9:	8d 45 d8             	lea    -0x28(%ebp),%eax
4235ac:	50                   	push   %eax
4235ad:	ff 75 18             	push   0x18(%ebp)
4235b0:	ff 75 14             	push   0x14(%ebp)
4235b3:	ff 75 10             	push   0x10(%ebp)
4235b6:	ff 75 0c             	push   0xc(%ebp)
4235b9:	ff 75 08             	push   0x8(%ebp)
4235bc:	e8 2d c9 ff ff       	call   0x41feee
4235c1:	83 c4 1c             	add    $0x1c,%esp
4235c4:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4235c7:	8b f0                	mov    %eax,%esi
4235c9:	e8 62 bf ff ff       	call   0x41f530
4235ce:	8b c6                	mov    %esi,%eax
4235d0:	5e                   	pop    %esi
4235d1:	c9                   	leave
4235d2:	c3                   	ret
4235d3:	8b ff                	mov    %edi,%edi
4235d5:	55                   	push   %ebp
4235d6:	8b ec                	mov    %esp,%ebp
4235d8:	83 ec 28             	sub    $0x28,%esp
4235db:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4235de:	56                   	push   %esi
4235df:	ff 75 1c             	push   0x1c(%ebp)
4235e2:	e8 e9 be ff ff       	call   0x41f4d0
4235e7:	ff 75 20             	push   0x20(%ebp)
4235ea:	8d 45 d8             	lea    -0x28(%ebp),%eax
4235ed:	50                   	push   %eax
4235ee:	ff 75 18             	push   0x18(%ebp)
4235f1:	ff 75 14             	push   0x14(%ebp)
4235f4:	ff 75 10             	push   0x10(%ebp)
4235f7:	ff 75 0c             	push   0xc(%ebp)
4235fa:	ff 75 08             	push   0x8(%ebp)
4235fd:	e8 8b c9 ff ff       	call   0x41ff8d
423602:	83 c4 1c             	add    $0x1c,%esp
423605:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423608:	8b f0                	mov    %eax,%esi
42360a:	e8 21 bf ff ff       	call   0x41f530
42360f:	8b c6                	mov    %esi,%eax
423611:	5e                   	pop    %esi
423612:	c9                   	leave
423613:	c3                   	ret
423614:	6a 10                	push   $0x10
423616:	68 28 2f 45 00       	push   $0x452f28
42361b:	e8 f0 72 ff ff       	call   0x41a910
423620:	8b 75 08             	mov    0x8(%ebp),%esi
423623:	85 f6                	test   %esi,%esi
423625:	75 14                	jne    0x42363b
423627:	e8 04 04 00 00       	call   0x423a30
42362c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423632:	e8 4c c3 ff ff       	call   0x41f983
423637:	33 c0                	xor    %eax,%eax
423639:	eb 65                	jmp    0x4236a0
42363b:	8b 7d 0c             	mov    0xc(%ebp),%edi
42363e:	85 ff                	test   %edi,%edi
423640:	74 e5                	je     0x423627
423642:	33 db                	xor    %ebx,%ebx
423644:	66 39 1f             	cmp    %bx,(%edi)
423647:	74 de                	je     0x423627
423649:	66 39 1e             	cmp    %bx,(%esi)
42364c:	75 0d                	jne    0x42365b
42364e:	e8 dd 03 00 00       	call   0x423a30
423653:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423659:	eb dc                	jmp    0x423637
42365b:	8d 45 e4             	lea    -0x1c(%ebp),%eax
42365e:	50                   	push   %eax
42365f:	e8 08 83 00 00       	call   0x42b96c
423664:	59                   	pop    %ecx
423665:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
423668:	75 0d                	jne    0x423677
42366a:	e8 c1 03 00 00       	call   0x423a30
42366f:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
423675:	eb c0                	jmp    0x423637
423677:	89 5d e0             	mov    %ebx,-0x20(%ebp)
42367a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42367d:	ff 75 e4             	push   -0x1c(%ebp)
423680:	ff 75 10             	push   0x10(%ebp)
423683:	57                   	push   %edi
423684:	56                   	push   %esi
423685:	e8 4a 88 00 00       	call   0x42bed4
42368a:	83 c4 10             	add    $0x10,%esp
42368d:	8b f0                	mov    %eax,%esi
42368f:	89 75 e0             	mov    %esi,-0x20(%ebp)
423692:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
423699:	e8 15 00 00 00       	call   0x4236b3
42369e:	8b c6                	mov    %esi,%eax
4236a0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4236a3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4236aa:	59                   	pop    %ecx
4236ab:	5f                   	pop    %edi
4236ac:	5e                   	pop    %esi
4236ad:	5b                   	pop    %ebx
4236ae:	c9                   	leave
4236af:	c3                   	ret
4236b0:	8b 75 e0             	mov    -0x20(%ebp),%esi
4236b3:	85 f6                	test   %esi,%esi
4236b5:	75 09                	jne    0x4236c0
4236b7:	ff 75 e4             	push   -0x1c(%ebp)
4236ba:	e8 16 83 00 00       	call   0x42b9d5
4236bf:	59                   	pop    %ecx
4236c0:	ff 75 e4             	push   -0x1c(%ebp)
4236c3:	e8 38 09 00 00       	call   0x424000
4236c8:	59                   	pop    %ecx
4236c9:	c3                   	ret
4236ca:	8b ff                	mov    %edi,%edi
4236cc:	55                   	push   %ebp
4236cd:	8b ec                	mov    %esp,%ebp
4236cf:	56                   	push   %esi
4236d0:	8b 75 08             	mov    0x8(%ebp),%esi
4236d3:	85 f6                	test   %esi,%esi
4236d5:	75 11                	jne    0x4236e8
4236d7:	e8 54 03 00 00       	call   0x423a30
4236dc:	6a 16                	push   $0x16
4236de:	5e                   	pop    %esi
4236df:	89 30                	mov    %esi,(%eax)
4236e1:	e8 9d c2 ff ff       	call   0x41f983
4236e6:	eb 24                	jmp    0x42370c
4236e8:	68 80 00 00 00       	push   $0x80
4236ed:	ff 75 10             	push   0x10(%ebp)
4236f0:	ff 75 0c             	push   0xc(%ebp)
4236f3:	e8 1c ff ff ff       	call   0x423614
4236f8:	83 c4 0c             	add    $0xc,%esp
4236fb:	89 06                	mov    %eax,(%esi)
4236fd:	85 c0                	test   %eax,%eax
4236ff:	75 09                	jne    0x42370a
423701:	e8 2a 03 00 00       	call   0x423a30
423706:	8b 30                	mov    (%eax),%esi
423708:	eb 02                	jmp    0x42370c
42370a:	33 f6                	xor    %esi,%esi
42370c:	8b c6                	mov    %esi,%eax
42370e:	5e                   	pop    %esi
42370f:	5d                   	pop    %ebp
423710:	c3                   	ret
423711:	6a 10                	push   $0x10
423713:	68 48 2f 45 00       	push   $0x452f48
423718:	e8 f3 71 ff ff       	call   0x41a910
42371d:	8b 75 08             	mov    0x8(%ebp),%esi
423720:	89 75 e0             	mov    %esi,-0x20(%ebp)
423723:	85 f6                	test   %esi,%esi
423725:	75 23                	jne    0x42374a
423727:	8b 45 0c             	mov    0xc(%ebp),%eax
42372a:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
42372e:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
423735:	50                   	push   %eax
423736:	33 ff                	xor    %edi,%edi
423738:	57                   	push   %edi
423739:	57                   	push   %edi
42373a:	57                   	push   %edi
42373b:	57                   	push   %edi
42373c:	57                   	push   %edi
42373d:	e8 c4 c1 ff ff       	call   0x41f906
423742:	83 c4 18             	add    $0x18,%esp
423745:	83 c8 ff             	or     $0xffffffff,%eax
423748:	eb 40                	jmp    0x42378a
42374a:	8b 46 0c             	mov    0xc(%esi),%eax
42374d:	90                   	nop
42374e:	c1 e8 0c             	shr    $0xc,%eax
423751:	56                   	push   %esi
423752:	a8 01                	test   $0x1,%al
423754:	74 08                	je     0x42375e
423756:	e8 7a 82 00 00       	call   0x42b9d5
42375b:	59                   	pop    %ecx
42375c:	eb e7                	jmp    0x423745
42375e:	33 ff                	xor    %edi,%edi
423760:	89 7d e4             	mov    %edi,-0x1c(%ebp)
423763:	e8 84 08 00 00       	call   0x423fec
423768:	59                   	pop    %ecx
423769:	89 7d fc             	mov    %edi,-0x4(%ebp)
42376c:	ff 75 0c             	push   0xc(%ebp)
42376f:	56                   	push   %esi
423770:	e8 33 00 00 00       	call   0x4237a8
423775:	59                   	pop    %ecx
423776:	59                   	pop    %ecx
423777:	8b f8                	mov    %eax,%edi
423779:	89 7d e4             	mov    %edi,-0x1c(%ebp)
42377c:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
423783:	e8 18 00 00 00       	call   0x4237a0
423788:	8b c7                	mov    %edi,%eax
42378a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42378d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
423794:	59                   	pop    %ecx
423795:	5f                   	pop    %edi
423796:	5e                   	pop    %esi
423797:	5b                   	pop    %ebx
423798:	c9                   	leave
423799:	c3                   	ret
42379a:	8b 75 e0             	mov    -0x20(%ebp),%esi
42379d:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4237a0:	56                   	push   %esi
4237a1:	e8 5a 08 00 00       	call   0x424000
4237a6:	59                   	pop    %ecx
4237a7:	c3                   	ret
4237a8:	8b ff                	mov    %edi,%edi
4237aa:	55                   	push   %ebp
4237ab:	8b ec                	mov    %esp,%ebp
4237ad:	56                   	push   %esi
4237ae:	8b 75 08             	mov    0x8(%ebp),%esi
4237b1:	85 f6                	test   %esi,%esi
4237b3:	75 23                	jne    0x4237d8
4237b5:	8b 45 0c             	mov    0xc(%ebp),%eax
4237b8:	50                   	push   %eax
4237b9:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
4237bd:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
4237c4:	33 c0                	xor    %eax,%eax
4237c6:	50                   	push   %eax
4237c7:	50                   	push   %eax
4237c8:	50                   	push   %eax
4237c9:	50                   	push   %eax
4237ca:	50                   	push   %eax
4237cb:	e8 36 c1 ff ff       	call   0x41f906
4237d0:	83 c4 18             	add    $0x18,%esp
4237d3:	83 c8 ff             	or     $0xffffffff,%eax
4237d6:	eb 5b                	jmp    0x423833
4237d8:	8b 46 0c             	mov    0xc(%esi),%eax
4237db:	57                   	push   %edi
4237dc:	83 cf ff             	or     $0xffffffff,%edi
4237df:	90                   	nop
4237e0:	c1 e8 0d             	shr    $0xd,%eax
4237e3:	a8 01                	test   $0x1,%al
4237e5:	74 42                	je     0x423829
4237e7:	ff 75 0c             	push   0xc(%ebp)
4237ea:	56                   	push   %esi
4237eb:	e8 52 04 00 00       	call   0x423c42
4237f0:	56                   	push   %esi
4237f1:	8b f8                	mov    %eax,%edi
4237f3:	e8 eb 88 00 00       	call   0x42c0e3
4237f8:	83 c4 0c             	add    $0xc,%esp
4237fb:	ff 75 0c             	push   0xc(%ebp)
4237fe:	56                   	push   %esi
4237ff:	e8 34 7f 00 00       	call   0x42b738
423804:	59                   	pop    %ecx
423805:	50                   	push   %eax
423806:	e8 65 87 00 00       	call   0x42bf70
42380b:	59                   	pop    %ecx
42380c:	59                   	pop    %ecx
42380d:	85 c0                	test   %eax,%eax
42380f:	79 05                	jns    0x423816
423811:	83 cf ff             	or     $0xffffffff,%edi
423814:	eb 13                	jmp    0x423829
423816:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
42381a:	74 0d                	je     0x423829
42381c:	ff 76 1c             	push   0x1c(%esi)
42381f:	e8 96 70 00 00       	call   0x42a8ba
423824:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
423828:	59                   	pop    %ecx
423829:	56                   	push   %esi
42382a:	e8 a6 81 00 00       	call   0x42b9d5
42382f:	59                   	pop    %ecx
423830:	8b c7                	mov    %edi,%eax
423832:	5f                   	pop    %edi
423833:	5e                   	pop    %esi
423834:	5d                   	pop    %ebp
423835:	c3                   	ret
423836:	8b ff                	mov    %edi,%edi
423838:	55                   	push   %ebp
423839:	8b ec                	mov    %esp,%ebp
42383b:	83 ec 28             	sub    $0x28,%esp
42383e:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423841:	56                   	push   %esi
423842:	6a 00                	push   $0x0
423844:	e8 87 bc ff ff       	call   0x41f4d0
423849:	8d 45 d8             	lea    -0x28(%ebp),%eax
42384c:	50                   	push   %eax
42384d:	ff 75 08             	push   0x8(%ebp)
423850:	e8 bc fe ff ff       	call   0x423711
423855:	59                   	pop    %ecx
423856:	59                   	pop    %ecx
423857:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42385a:	8b f0                	mov    %eax,%esi
42385c:	e8 cf bc ff ff       	call   0x41f530
423861:	8b c6                	mov    %esi,%eax
423863:	5e                   	pop    %esi
423864:	c9                   	leave
423865:	c3                   	ret
423866:	8b ff                	mov    %edi,%edi
423868:	55                   	push   %ebp
423869:	8b ec                	mov    %esp,%ebp
42386b:	8b 55 08             	mov    0x8(%ebp),%edx
42386e:	56                   	push   %esi
42386f:	57                   	push   %edi
423870:	85 d2                	test   %edx,%edx
423872:	74 13                	je     0x423887
423874:	8b 4d 0c             	mov    0xc(%ebp),%ecx
423877:	85 c9                	test   %ecx,%ecx
423879:	74 0c                	je     0x423887
42387b:	8b 75 10             	mov    0x10(%ebp),%esi
42387e:	85 f6                	test   %esi,%esi
423880:	75 1a                	jne    0x42389c
423882:	33 c0                	xor    %eax,%eax
423884:	66 89 02             	mov    %ax,(%edx)
423887:	e8 a4 01 00 00       	call   0x423a30
42388c:	6a 16                	push   $0x16
42388e:	5e                   	pop    %esi
42388f:	89 30                	mov    %esi,(%eax)
423891:	e8 ed c0 ff ff       	call   0x41f983
423896:	5f                   	pop    %edi