41c5a2:	74 06                	je     0x41c5aa
41c5a4:	83 f8 2b             	cmp    $0x2b,%eax
41c5a7:	75 2b                	jne    0x41c5d4
41c5a9:	43                   	inc    %ebx
41c5aa:	8b 46 28             	mov    0x28(%esi),%eax
41c5ad:	8b ce                	mov    %esi,%ecx
41c5af:	83 48 08 04          	orl    $0x4,0x8(%eax)
41c5b3:	e8 4a fe ff ff       	call   0x41c402
41c5b8:	f7 46 50 00 04 00 00 	testl  $0x400,0x50(%esi)
41c5bf:	74 78                	je     0x41c639
41c5c1:	83 7e 4c 3f          	cmpl   $0x3f,0x4c(%esi)
41c5c5:	75 72                	jne    0x41c639
41c5c7:	8b ce                	mov    %esi,%ecx
41c5c9:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
41c5cd:	e8 30 fe ff ff       	call   0x41c402
41c5d2:	eb 69                	jmp    0x41c63d
41c5d4:	83 f8 3f             	cmp    $0x3f,%eax
41c5d7:	75 05                	jne    0x41c5de
41c5d9:	33 ff                	xor    %edi,%edi
41c5db:	47                   	inc    %edi
41c5dc:	eb cc                	jmp    0x41c5aa
41c5de:	83 f8 7b             	cmp    $0x7b,%eax
41c5e1:	75 67                	jne    0x41c64a
41c5e3:	e8 1a fe ff ff       	call   0x41c402
41c5e8:	8b ce                	mov    %esi,%ecx
41c5ea:	e8 1e b7 ff ff       	call   0x417d0d
41c5ef:	84 c0                	test   %al,%al
41c5f1:	74 5c                	je     0x41c64f
41c5f3:	8b 46 4c             	mov    0x4c(%esi),%eax
41c5f6:	8b 5e 44             	mov    0x44(%esi),%ebx
41c5f9:	83 f8 2c             	cmp    $0x2c,%eax
41c5fc:	74 04                	je     0x41c602
41c5fe:	8b fb                	mov    %ebx,%edi
41c600:	eb 20                	jmp    0x41c622
41c602:	8b ce                	mov    %esi,%ecx
41c604:	e8 f9 fd ff ff       	call   0x41c402
41c609:	8b 46 4c             	mov    0x4c(%esi),%eax
41c60c:	83 f8 7d             	cmp    $0x7d,%eax
41c60f:	74 16                	je     0x41c627
41c611:	8b ce                	mov    %esi,%ecx
41c613:	e8 f5 b6 ff ff       	call   0x417d0d
41c618:	84 c0                	test   %al,%al
41c61a:	74 33                	je     0x41c64f
41c61c:	8b 7e 44             	mov    0x44(%esi),%edi
41c61f:	8b 46 4c             	mov    0x4c(%esi),%eax
41c622:	83 f8 7d             	cmp    $0x7d,%eax
41c625:	75 28                	jne    0x41c64f
41c627:	83 ff ff             	cmp    $0xffffffff,%edi
41c62a:	0f 84 7a ff ff ff    	je     0x41c5aa
41c630:	3b fb                	cmp    %ebx,%edi
41c632:	7c 1b                	jl     0x41c64f
41c634:	e9 71 ff ff ff       	jmp    0x41c5aa
41c639:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
41c63d:	ff 75 fc             	push   -0x4(%ebp)
41c640:	8d 4e 24             	lea    0x24(%esi),%ecx
41c643:	57                   	push   %edi
41c644:	53                   	push   %ebx
41c645:	e8 61 96 ff ff       	call   0x415cab
41c64a:	5f                   	pop    %edi
41c64b:	5e                   	pop    %esi
41c64c:	5b                   	pop    %ebx
41c64d:	c9                   	leave
41c64e:	c3                   	ret
41c64f:	6a 07                	push   $0x7
41c651:	8b ce                	mov    %esi,%ecx
41c653:	e8 f0 cf ff ff       	call   0x419648
41c658:	cc                   	int3
41c659:	55                   	push   %ebp
41c65a:	8b ec                	mov    %esp,%ebp
41c65c:	83 ec 0c             	sub    $0xc,%esp
41c65f:	53                   	push   %ebx
41c660:	8b 5d 10             	mov    0x10(%ebp),%ebx
41c663:	8b d1                	mov    %ecx,%edx
41c665:	89 55 fc             	mov    %edx,-0x4(%ebp)
41c668:	56                   	push   %esi
41c669:	57                   	push   %edi
41c66a:	85 db                	test   %ebx,%ebx
41c66c:	75 03                	jne    0x41c671
41c66e:	8b 5a 58             	mov    0x58(%edx),%ebx
41c671:	8b 7d 08             	mov    0x8(%ebp),%edi
41c674:	8b 75 0c             	mov    0xc(%ebp),%esi
41c677:	3b fe                	cmp    %esi,%edi
41c679:	74 38                	je     0x41c6b3
41c67b:	85 db                	test   %ebx,%ebx
41c67d:	74 34                	je     0x41c6b3
41c67f:	8b 43 04             	mov    0x4(%ebx),%eax
41c682:	83 f8 09             	cmp    $0x9,%eax
41c685:	7f 35                	jg     0x41c6bc
41c687:	74 5c                	je     0x41c6e5
41c689:	83 e8 01             	sub    $0x1,%eax
41c68c:	74 57                	je     0x41c6e5
41c68e:	83 e8 01             	sub    $0x1,%eax
41c691:	0f 84 c9 01 00 00    	je     0x41c860
41c697:	83 e8 01             	sub    $0x1,%eax
41c69a:	0f 84 9f 01 00 00    	je     0x41c83f
41c6a0:	83 e8 03             	sub    $0x3,%eax
41c6a3:	0f 84 5f 01 00 00    	je     0x41c808
41c6a9:	83 e8 01             	sub    $0x1,%eax
41c6ac:	74 40                	je     0x41c6ee
41c6ae:	83 e8 01             	sub    $0x1,%eax
41c6b1:	74 32                	je     0x41c6e5
41c6b3:	8b c7                	mov    %edi,%eax
41c6b5:	5f                   	pop    %edi
41c6b6:	5e                   	pop    %esi
41c6b7:	5b                   	pop    %ebx
41c6b8:	c9                   	leave
41c6b9:	c2 0c 00             	ret    $0xc
41c6bc:	83 e8 0c             	sub    $0xc,%eax
41c6bf:	74 22                	je     0x41c6e3
41c6c1:	83 e8 01             	sub    $0x1,%eax
41c6c4:	74 1f                	je     0x41c6e5
41c6c6:	83 e8 01             	sub    $0x1,%eax
41c6c9:	74 1a                	je     0x41c6e5
41c6cb:	48                   	dec    %eax
41c6cc:	83 e8 01             	sub    $0x1,%eax
41c6cf:	0f 84 c2 01 00 00    	je     0x41c897
41c6d5:	83 e8 04             	sub    $0x4,%eax
41c6d8:	74 0b                	je     0x41c6e5
41c6da:	83 e8 01             	sub    $0x1,%eax
41c6dd:	75 d4                	jne    0x41c6b3
41c6df:	33 db                	xor    %ebx,%ebx
41c6e1:	eb 98                	jmp    0x41c67b
41c6e3:	33 db                	xor    %ebx,%ebx
41c6e5:	85 db                	test   %ebx,%ebx
41c6e7:	74 ca                	je     0x41c6b3
41c6e9:	8b 5b 0c             	mov    0xc(%ebx),%ebx
41c6ec:	eb 8d                	jmp    0x41c67b
41c6ee:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
41c6f2:	0f b7 37             	movzwl (%edi),%esi
41c6f5:	8b c6                	mov    %esi,%eax
41c6f7:	89 45 f8             	mov    %eax,-0x8(%ebp)
41c6fa:	89 45 10             	mov    %eax,0x10(%ebp)
41c6fd:	74 1d                	je     0x41c71c
41c6ff:	ff 73 14             	push   0x14(%ebx)
41c702:	8d 47 02             	lea    0x2(%edi),%eax
41c705:	50                   	push   %eax
41c706:	57                   	push   %edi
41c707:	e8 ce 7b fe ff       	call   0x4042da
41c70c:	83 c4 0c             	add    $0xc,%esp
41c70f:	3b c7                	cmp    %edi,%eax
41c711:	0f 85 c8 00 00 00    	jne    0x41c7df
41c717:	8b 55 fc             	mov    -0x4(%ebp),%edx
41c71a:	8b c6                	mov    %esi,%eax
41c71c:	8b 4b 20             	mov    0x20(%ebx),%ecx
41c71f:	89 4d 08             	mov    %ecx,0x8(%ebp)
41c722:	85 c9                	test   %ecx,%ecx
41c724:	74 30                	je     0x41c756
41c726:	f7 42 5c 00 08 00 00 	testl  $0x800,0x5c(%edx)
41c72d:	74 11                	je     0x41c740
41c72f:	8b 4a 70             	mov    0x70(%edx),%ecx
41c732:	50                   	push   %eax
41c733:	e8 0d 6c 00 00       	call   0x423345
41c738:	8b 4d 08             	mov    0x8(%ebp),%ecx
41c73b:	0f b7 c0             	movzwl %ax,%eax
41c73e:	eb 02                	jmp    0x41c742
41c740:	8b c6                	mov    %esi,%eax
41c742:	51                   	push   %ecx
41c743:	0f b7 c0             	movzwl %ax,%eax
41c746:	50                   	push   %eax
41c747:	e8 13 7e fe ff       	call   0x40455f
41c74c:	59                   	pop    %ecx
41c74d:	59                   	pop    %ecx
41c74e:	84 c0                	test   %al,%al
41c750:	0f 85 89 00 00 00    	jne    0x41c7df
41c756:	8b 45 f8             	mov    -0x8(%ebp),%eax
41c759:	b9 00 01 00 00       	mov    $0x100,%ecx
41c75e:	66 3b c1             	cmp    %cx,%ax
41c761:	73 1c                	jae    0x41c77f
41c763:	8b 73 18             	mov    0x18(%ebx),%esi
41c766:	85 f6                	test   %esi,%esi
41c768:	74 7a                	je     0x41c7e4
41c76a:	0f b7 d0             	movzwl %ax,%edx
41c76d:	33 c0                	xor    %eax,%eax
41c76f:	8b ca                	mov    %edx,%ecx
41c771:	40                   	inc    %eax
41c772:	83 e1 07             	and    $0x7,%ecx
41c775:	c1 ea 03             	shr    $0x3,%edx
41c778:	d3 e0                	shl    %cl,%eax
41c77a:	84 04 32             	test   %al,(%edx,%esi,1)
41c77d:	eb 5e                	jmp    0x41c7dd
41c77f:	8b 43 1c             	mov    0x1c(%ebx),%eax
41c782:	85 c0                	test   %eax,%eax
41c784:	74 22                	je     0x41c7a8
41c786:	8b 48 08             	mov    0x8(%eax),%ecx
41c789:	8b 40 04             	mov    0x4(%eax),%eax
41c78c:	c6 45 f4 00          	movb   $0x0,-0xc(%ebp)
41c790:	ff 75 f4             	push   -0xc(%ebp)
41c793:	8d 34 41             	lea    (%ecx,%eax,2),%esi
41c796:	8d 45 10             	lea    0x10(%ebp),%eax
41c799:	50                   	push   %eax
41c79a:	56                   	push   %esi
41c79b:	51                   	push   %ecx
41c79c:	e8 ca 73 fe ff       	call   0x403b6b
41c7a1:	83 c4 10             	add    $0x10,%esp
41c7a4:	3b c6                	cmp    %esi,%eax
41c7a6:	75 37                	jne    0x41c7df
41c7a8:	0f b7 43 24          	movzwl 0x24(%ebx),%eax
41c7ac:	8b 75 fc             	mov    -0x4(%ebp),%esi
41c7af:	66 85 c0             	test   %ax,%ax
41c7b2:	74 10                	je     0x41c7c4
41c7b4:	8b 4e 70             	mov    0x70(%esi),%ecx
41c7b7:	50                   	push   %eax
41c7b8:	ff 75 10             	push   0x10(%ebp)
41c7bb:	e8 ab 58 00 00       	call   0x42206b
41c7c0:	84 c0                	test   %al,%al
41c7c2:	75 1b                	jne    0x41c7df
41c7c4:	83 7b 28 00          	cmpl   $0x0,0x28(%ebx)
41c7c8:	74 1a                	je     0x41c7e4
41c7ca:	ff 76 70             	push   0x70(%esi)
41c7cd:	ff 73 28             	push   0x28(%ebx)
41c7d0:	ff 75 10             	push   0x10(%ebp)
41c7d3:	e8 29 7c fe ff       	call   0x404401
41c7d8:	83 c4 0c             	add    $0xc,%esp
41c7db:	84 c0                	test   %al,%al
41c7dd:	74 05                	je     0x41c7e4
41c7df:	33 c0                	xor    %eax,%eax
41c7e1:	40                   	inc    %eax
41c7e2:	eb 02                	jmp    0x41c7e6
41c7e4:	33 c0                	xor    %eax,%eax
41c7e6:	8b 4b 08             	mov    0x8(%ebx),%ecx
41c7e9:	83 e1 01             	and    $0x1,%ecx
41c7ec:	3b c1                	cmp    %ecx,%eax
41c7ee:	0f 85 bf fe ff ff    	jne    0x41c6b3
41c7f4:	8b 55 fc             	mov    -0x4(%ebp),%edx
41c7f7:	83 c7 02             	add    $0x2,%edi
41c7fa:	3b 7d 0c             	cmp    0xc(%ebp),%edi
41c7fd:	0f 85 eb fe ff ff    	jne    0x41c6ee
41c803:	e9 ab fe ff ff       	jmp    0x41c6b3
41c808:	ff 72 5c             	push   0x5c(%edx)
41c80b:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
41c80e:	8d 47 02             	lea    0x2(%edi),%eax
41c811:	ff 72 70             	push   0x70(%edx)
41c814:	89 45 0c             	mov    %eax,0xc(%ebp)
41c817:	8d 41 02             	lea    0x2(%ecx),%eax
41c81a:	50                   	push   %eax
41c81b:	51                   	push   %ecx
41c81c:	ff 75 0c             	push   0xc(%ebp)
41c81f:	57                   	push   %edi
41c820:	e8 58 66 fe ff       	call   0x402e7d
41c825:	83 c4 18             	add    $0x18,%esp
41c828:	3b c7                	cmp    %edi,%eax
41c82a:	0f 85 83 fe ff ff    	jne    0x41c6b3
41c830:	8b 7d 0c             	mov    0xc(%ebp),%edi
41c833:	8b 55 fc             	mov    -0x4(%ebp),%edx
41c836:	3b fe                	cmp    %esi,%edi
41c838:	75 ce                	jne    0x41c808
41c83a:	e9 74 fe ff ff       	jmp    0x41c6b3
41c83f:	c6 45 0c 00          	movb   $0x0,0xc(%ebp)
41c843:	8d 45 10             	lea    0x10(%ebp),%eax
41c846:	ff 75 0c             	push   0xc(%ebp)
41c849:	c7 45 10 0a 00 00 00 	movl   $0xa,0x10(%ebp)
41c850:	50                   	push   %eax
41c851:	56                   	push   %esi
41c852:	57                   	push   %edi
41c853:	e8 35 73 fe ff       	call   0x403b8d
41c858:	83 c4 10             	add    $0x10,%esp
41c85b:	e9 55 fe ff ff       	jmp    0x41c6b5
41c860:	6a 0a                	push   $0xa
41c862:	58                   	pop    %eax
41c863:	66 39 47 fe          	cmp    %ax,-0x2(%edi)
41c867:	0f 84 46 fe ff ff    	je     0x41c6b3
41c86d:	89 45 10             	mov    %eax,0x10(%ebp)
41c870:	8d 45 10             	lea    0x10(%ebp),%eax
41c873:	c6 45 0c 00          	movb   $0x0,0xc(%ebp)
41c877:	ff 75 0c             	push   0xc(%ebp)
41c87a:	50                   	push   %eax
41c87b:	56                   	push   %esi
41c87c:	57                   	push   %edi
41c87d:	e8 0b 73 fe ff       	call   0x403b8d
41c882:	8b f8                	mov    %eax,%edi
41c884:	83 c4 10             	add    $0x10,%esp
41c887:	3b fe                	cmp    %esi,%edi
41c889:	0f 84 24 fe ff ff    	je     0x41c6b3
41c88f:	83 c7 02             	add    $0x2,%edi
41c892:	e9 1c fe ff ff       	jmp    0x41c6b3
41c897:	85 db                	test   %ebx,%ebx
41c899:	74 18                	je     0x41c8b3
41c89b:	ff 73 0c             	push   0xc(%ebx)
41c89e:	8b ca                	mov    %edx,%ecx
41c8a0:	56                   	push   %esi
41c8a1:	57                   	push   %edi
41c8a2:	e8 b2 fd ff ff       	call   0x41c659
41c8a7:	8b 5b 18             	mov    0x18(%ebx),%ebx
41c8aa:	8b f0                	mov    %eax,%esi
41c8ac:	8b 55 fc             	mov    -0x4(%ebp),%edx
41c8af:	3b fe                	cmp    %esi,%edi
41c8b1:	75 e4                	jne    0x41c897
41c8b3:	8b c6                	mov    %esi,%eax
41c8b5:	e9 fb fd ff ff       	jmp    0x41c6b5
41c8ba:	55                   	push   %ebp
41c8bb:	8b ec                	mov    %esp,%ebp
41c8bd:	83 ec 14             	sub    $0x14,%esp
41c8c0:	53                   	push   %ebx
41c8c1:	8b 5d 14             	mov    0x14(%ebp),%ebx
41c8c4:	8b d1                	mov    %ecx,%edx
41c8c6:	89 55 fc             	mov    %edx,-0x4(%ebp)
41c8c9:	56                   	push   %esi
41c8ca:	57                   	push   %edi
41c8cb:	85 db                	test   %ebx,%ebx
41c8cd:	75 03                	jne    0x41c8d2
41c8cf:	8b 5a 58             	mov    0x58(%edx),%ebx
41c8d2:	8b 75 0c             	mov    0xc(%ebp),%esi
41c8d5:	8b 7d 10             	mov    0x10(%ebp),%edi
41c8d8:	3b f7                	cmp    %edi,%esi
41c8da:	74 38                	je     0x41c914
41c8dc:	85 db                	test   %ebx,%ebx
41c8de:	74 34                	je     0x41c914
41c8e0:	8b 43 04             	mov    0x4(%ebx),%eax
41c8e3:	83 f8 09             	cmp    $0x9,%eax
41c8e6:	7f 38                	jg     0x41c920
41c8e8:	74 5f                	je     0x41c949
41c8ea:	83 e8 01             	sub    $0x1,%eax
41c8ed:	74 5a                	je     0x41c949
41c8ef:	83 e8 01             	sub    $0x1,%eax
41c8f2:	0f 84 71 01 00 00    	je     0x41ca69
41c8f8:	83 e8 01             	sub    $0x1,%eax
41c8fb:	0f 84 40 01 00 00    	je     0x41ca41
41c901:	83 e8 03             	sub    $0x3,%eax
41c904:	0f 84 fb 00 00 00    	je     0x41ca05
41c90a:	83 e8 01             	sub    $0x1,%eax
41c90d:	74 43                	je     0x41c952
41c90f:	83 e8 01             	sub    $0x1,%eax
41c912:	74 35                	je     0x41c949
41c914:	8b 45 08             	mov    0x8(%ebp),%eax
41c917:	89 30                	mov    %esi,(%eax)
41c919:	5f                   	pop    %edi
41c91a:	5e                   	pop    %esi
41c91b:	5b                   	pop    %ebx
41c91c:	c9                   	leave
41c91d:	c2 10 00             	ret    $0x10
41c920:	83 e8 0c             	sub    $0xc,%eax
41c923:	74 22                	je     0x41c947
41c925:	83 e8 01             	sub    $0x1,%eax
41c928:	74 1f                	je     0x41c949
41c92a:	83 e8 01             	sub    $0x1,%eax
41c92d:	74 1a                	je     0x41c949
41c92f:	48                   	dec    %eax
41c930:	83 e8 01             	sub    $0x1,%eax
41c933:	0f 84 66 01 00 00    	je     0x41ca9f
41c939:	83 e8 04             	sub    $0x4,%eax
41c93c:	74 0b                	je     0x41c949
41c93e:	83 e8 01             	sub    $0x1,%eax
41c941:	75 d1                	jne    0x41c914
41c943:	33 db                	xor    %ebx,%ebx
41c945:	eb 95                	jmp    0x41c8dc
41c947:	33 db                	xor    %ebx,%ebx
41c949:	85 db                	test   %ebx,%ebx
41c94b:	74 c7                	je     0x41c914
41c94d:	8b 5b 0c             	mov    0xc(%ebx),%ebx
41c950:	eb 8a                	jmp    0x41c8dc