423685:	74 09                	je     0x423690
423687:	83 e8 01             	sub    $0x1,%eax
42368a:	0f 85 93 00 00 00    	jne    0x423723
423690:	e8 17 08 00 00       	call   0x423eac
423695:	e9 85 00 00 00       	jmp    0x42371f
42369a:	83 e8 58             	sub    $0x58,%eax
42369d:	74 1c                	je     0x4236bb
42369f:	2b c7                	sub    %edi,%eax
4236a1:	74 11                	je     0x4236b4
4236a3:	83 e8 07             	sub    $0x7,%eax
4236a6:	74 e8                	je     0x423690
4236a8:	2b c7                	sub    %edi,%eax
4236aa:	75 77                	jne    0x423723
4236ac:	53                   	push   %ebx
4236ad:	e8 32 0b 00 00       	call   0x4241e4
4236b2:	eb 6b                	jmp    0x42371f
4236b4:	e8 2d 07 00 00       	call   0x423de6
4236b9:	eb 64                	jmp    0x42371f
4236bb:	6a 01                	push   $0x1
4236bd:	e8 9c ea ff ff       	call   0x42215e
4236c2:	eb 5b                	jmp    0x42371f
4236c4:	83 f8 6f             	cmp    $0x6f,%eax
4236c7:	7f 34                	jg     0x4236fd
4236c9:	74 2b                	je     0x4236f6
4236cb:	83 e8 65             	sub    $0x65,%eax
4236ce:	74 c0                	je     0x423690
4236d0:	83 e8 01             	sub    $0x1,%eax
4236d3:	74 bb                	je     0x423690
4236d5:	83 e8 01             	sub    $0x1,%eax
4236d8:	74 b6                	je     0x423690
4236da:	2b c7                	sub    %edi,%eax
4236dc:	74 0c                	je     0x4236ea
4236de:	83 e8 05             	sub    $0x5,%eax
4236e1:	75 40                	jne    0x423723
4236e3:	e8 39 0c 00 00       	call   0x424321
4236e8:	eb 35                	jmp    0x42371f
4236ea:	83 4e 1c 10          	orl    $0x10,0x1c(%esi)
4236ee:	53                   	push   %ebx
4236ef:	e8 4b e7 ff ff       	call   0x421e3f
4236f4:	eb 29                	jmp    0x42371f
4236f6:	e8 ab 0c 00 00       	call   0x4243a6
4236fb:	eb 22                	jmp    0x42371f
4236fd:	83 e8 70             	sub    $0x70,%eax
423700:	74 18                	je     0x42371a
423702:	83 e8 03             	sub    $0x3,%eax
423705:	74 0c                	je     0x423713
423707:	2b c7                	sub    %edi,%eax
423709:	74 e3                	je     0x4236ee
42370b:	83 e8 03             	sub    $0x3,%eax
42370e:	75 13                	jne    0x423723
423710:	53                   	push   %ebx
423711:	eb aa                	jmp    0x4236bd
423713:	e8 f4 0c 00 00       	call   0x42440c
423718:	eb 05                	jmp    0x42371f
42371a:	e8 c1 0c 00 00       	call   0x4243e0
42371f:	84 c0                	test   %al,%al
423721:	75 07                	jne    0x42372a
423723:	32 c0                	xor    %al,%al
423725:	e9 65 02 00 00       	jmp    0x42398f
42372a:	38 5e 2c             	cmp    %bl,0x2c(%esi)
42372d:	0f 85 5a 02 00 00    	jne    0x42398d
423733:	8b 46 1c             	mov    0x1c(%esi),%eax
423736:	33 d2                	xor    %edx,%edx
423738:	c1 e8 04             	shr    $0x4,%eax
42373b:	42                   	inc    %edx
42373c:	66 89 5d f0          	mov    %bx,-0x10(%ebp)
423740:	8b cb                	mov    %ebx,%ecx
423742:	88 5d f2             	mov    %bl,-0xe(%ebp)
423745:	89 4d ec             	mov    %ecx,-0x14(%ebp)
423748:	84 c2                	test   %al,%dl
42374a:	74 32                	je     0x42377e
42374c:	8b 46 1c             	mov    0x1c(%esi),%eax
42374f:	c1 e8 06             	shr    $0x6,%eax
423752:	84 c2                	test   %al,%dl
423754:	74 06                	je     0x42375c
423756:	c6 45 f0 2d          	movb   $0x2d,-0x10(%ebp)
42375a:	eb 09                	jmp    0x423765
42375c:	84 56 1c             	test   %dl,0x1c(%esi)
42375f:	74 0b                	je     0x42376c
423761:	c6 45 f0 2b          	movb   $0x2b,-0x10(%ebp)
423765:	8b ca                	mov    %edx,%ecx
423767:	89 4d ec             	mov    %ecx,-0x14(%ebp)
42376a:	eb 12                	jmp    0x42377e
42376c:	8b 46 1c             	mov    0x1c(%esi),%eax
42376f:	d1 e8                	shr    $1,%eax
423771:	84 c2                	test   %al,%dl
423773:	74 09                	je     0x42377e
423775:	c6 45 f0 20          	movb   $0x20,-0x10(%ebp)
423779:	8b ca                	mov    %edx,%ecx
42377b:	89 55 ec             	mov    %edx,-0x14(%ebp)
42377e:	8a 56 2d             	mov    0x2d(%esi),%dl
423781:	80 fa 78             	cmp    $0x78,%dl
423784:	74 05                	je     0x42378b
423786:	80 fa 58             	cmp    $0x58,%dl
423789:	75 0c                	jne    0x423797
42378b:	8b 46 1c             	mov    0x1c(%esi),%eax
42378e:	c1 e8 05             	shr    $0x5,%eax
423791:	b4 01                	mov    $0x1,%ah
423793:	a8 01                	test   $0x1,%al
423795:	75 02                	jne    0x423799
423797:	8a e3                	mov    %bl,%ah
423799:	80 fa 61             	cmp    $0x61,%dl
42379c:	74 07                	je     0x4237a5
42379e:	8a c3                	mov    %bl,%al
4237a0:	80 fa 41             	cmp    $0x41,%dl
4237a3:	75 02                	jne    0x4237a7
4237a5:	b0 01                	mov    $0x1,%al
4237a7:	84 e4                	test   %ah,%ah
4237a9:	75 04                	jne    0x4237af
4237ab:	84 c0                	test   %al,%al
4237ad:	74 1f                	je     0x4237ce
4237af:	c6 44 0d f0 30       	movb   $0x30,-0x10(%ebp,%ecx,1)
4237b4:	80 fa 58             	cmp    $0x58,%dl
4237b7:	74 09                	je     0x4237c2
4237b9:	80 fa 41             	cmp    $0x41,%dl
4237bc:	74 04                	je     0x4237c2
4237be:	b0 78                	mov    $0x78,%al
4237c0:	eb 03                	jmp    0x4237c5
4237c2:	6a 58                	push   $0x58
4237c4:	58                   	pop    %eax
4237c5:	88 44 0d f1          	mov    %al,-0xf(%ebp,%ecx,1)
4237c9:	03 cf                	add    %edi,%ecx
4237cb:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4237ce:	8b 56 20             	mov    0x20(%esi),%edx
4237d1:	2b d1                	sub    %ecx,%edx
4237d3:	2b 56 34             	sub    0x34(%esi),%edx
4237d6:	f6 46 1c 0c          	testb  $0xc,0x1c(%esi)
4237da:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4237dd:	75 5a                	jne    0x423839
4237df:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4237e2:	85 d2                	test   %edx,%edx
4237e4:	7e 53                	jle    0x423839
4237e6:	8b 5e 14             	mov    0x14(%esi),%ebx
4237e9:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4237ec:	8b be 48 04 00 00    	mov    0x448(%esi),%edi
4237f2:	8b 47 08             	mov    0x8(%edi),%eax
4237f5:	3b 47 04             	cmp    0x4(%edi),%eax
4237f8:	75 11                	jne    0x42380b
4237fa:	80 7f 0c 00          	cmpb   $0x0,0xc(%edi)
4237fe:	74 03                	je     0x423803
423800:	43                   	inc    %ebx
423801:	eb 03                	jmp    0x423806
423803:	83 cb ff             	or     $0xffffffff,%ebx
423806:	89 5e 14             	mov    %ebx,0x14(%esi)
423809:	eb 1c                	jmp    0x423827
42380b:	8d 43 01             	lea    0x1(%ebx),%eax
42380e:	89 46 14             	mov    %eax,0x14(%esi)
423811:	ff 47 08             	incl   0x8(%edi)
423814:	8b 86 48 04 00 00    	mov    0x448(%esi),%eax
42381a:	8b 00                	mov    (%eax),%eax
42381c:	c6 00 20             	movb   $0x20,(%eax)
42381f:	8b 86 48 04 00 00    	mov    0x448(%esi),%eax
423825:	ff 00                	incl   (%eax)
423827:	8b 5e 14             	mov    0x14(%esi),%ebx
42382a:	83 fb ff             	cmp    $0xffffffff,%ebx
42382d:	74 05                	je     0x423834
42382f:	41                   	inc    %ecx
423830:	3b ca                	cmp    %edx,%ecx
423832:	7c b8                	jl     0x4237ec
423834:	8b 4d ec             	mov    -0x14(%ebp),%ecx
423837:	33 db                	xor    %ebx,%ebx
423839:	ff 76 08             	push   0x8(%esi)
42383c:	8d 7e 14             	lea    0x14(%esi),%edi
42383f:	57                   	push   %edi
423840:	51                   	push   %ecx
423841:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
423847:	8d 4d f0             	lea    -0x10(%ebp),%ecx
42384a:	89 45 e8             	mov    %eax,-0x18(%ebp)
42384d:	51                   	push   %ecx
42384e:	8b c8                	mov    %eax,%ecx
423850:	e8 f2 0d 00 00       	call   0x424647
423855:	8b 4e 1c             	mov    0x1c(%esi),%ecx
423858:	8d 96 48 04 00 00    	lea    0x448(%esi),%edx
42385e:	8b c1                	mov    %ecx,%eax
423860:	c1 e8 03             	shr    $0x3,%eax
423863:	a8 01                	test   $0x1,%al
423865:	74 57                	je     0x4238be
423867:	c1 e9 02             	shr    $0x2,%ecx
42386a:	f6 c1 01             	test   $0x1,%cl
42386d:	75 4f                	jne    0x4238be
42386f:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
423872:	89 5d f0             	mov    %ebx,-0x10(%ebp)
423875:	85 c9                	test   %ecx,%ecx
423877:	7e 45                	jle    0x4238be
423879:	8b 02                	mov    (%edx),%eax
42387b:	89 45 ec             	mov    %eax,-0x14(%ebp)
42387e:	8b d8                	mov    %eax,%ebx
423880:	8b 40 08             	mov    0x8(%eax),%eax
423883:	3b 43 04             	cmp    0x4(%ebx),%eax
423886:	8b c3                	mov    %ebx,%eax
423888:	75 12                	jne    0x42389c
42388a:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
42388e:	74 05                	je     0x423895
423890:	8b 07                	mov    (%edi),%eax
423892:	40                   	inc    %eax
423893:	eb 03                	jmp    0x423898
423895:	83 c8 ff             	or     $0xffffffff,%eax
423898:	89 07                	mov    %eax,(%edi)
42389a:	eb 10                	jmp    0x4238ac
42389c:	ff 07                	incl   (%edi)
42389e:	ff 40 08             	incl   0x8(%eax)
4238a1:	8b 02                	mov    (%edx),%eax
4238a3:	8b 00                	mov    (%eax),%eax
4238a5:	c6 00 30             	movb   $0x30,(%eax)
4238a8:	8b 02                	mov    (%edx),%eax
4238aa:	ff 00                	incl   (%eax)
4238ac:	83 3f ff             	cmpl   $0xffffffff,(%edi)
4238af:	74 0b                	je     0x4238bc
4238b1:	8b 45 f0             	mov    -0x10(%ebp),%eax
4238b4:	40                   	inc    %eax
4238b5:	89 45 f0             	mov    %eax,-0x10(%ebp)
4238b8:	3b c1                	cmp    %ecx,%eax
4238ba:	7c bd                	jl     0x423879
4238bc:	33 db                	xor    %ebx,%ebx
4238be:	80 7e 38 00          	cmpb   $0x0,0x38(%esi)
4238c2:	74 62                	je     0x423926
4238c4:	39 5e 34             	cmp    %ebx,0x34(%esi)
4238c7:	7e 5d                	jle    0x423926
4238c9:	8b 4e 30             	mov    0x30(%esi),%ecx
4238cc:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4238cf:	ff 76 08             	push   0x8(%esi)
4238d2:	0f b7 01             	movzwl (%ecx),%eax
4238d5:	83 c1 02             	add    $0x2,%ecx
4238d8:	50                   	push   %eax
4238d9:	6a 06                	push   $0x6
4238db:	8d 45 f4             	lea    -0xc(%ebp),%eax
4238de:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4238e1:	50                   	push   %eax
4238e2:	8d 45 ec             	lea    -0x14(%ebp),%eax
4238e5:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4238e8:	50                   	push   %eax
4238e9:	e8 26 98 00 00       	call   0x42d114
4238ee:	83 c4 14             	add    $0x14,%esp
4238f1:	85 c0                	test   %eax,%eax
4238f3:	75 2c                	jne    0x423921
4238f5:	39 45 ec             	cmp    %eax,-0x14(%ebp)
4238f8:	74 27                	je     0x423921
4238fa:	ff 76 08             	push   0x8(%esi)
4238fd:	8d 45 f4             	lea    -0xc(%ebp),%eax
423900:	57                   	push   %edi
423901:	ff 75 ec             	push   -0x14(%ebp)
423904:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
42390a:	50                   	push   %eax
42390b:	e8 37 0d 00 00       	call   0x424647
423910:	8b 45 f0             	mov    -0x10(%ebp),%eax
423913:	8b 4d e0             	mov    -0x20(%ebp),%ecx
423916:	40                   	inc    %eax
423917:	89 45 f0             	mov    %eax,-0x10(%ebp)
42391a:	3b 46 34             	cmp    0x34(%esi),%eax
42391d:	75 b0                	jne    0x4238cf
42391f:	eb 16                	jmp    0x423937
423921:	83 0f ff             	orl    $0xffffffff,(%edi)
423924:	eb 11                	jmp    0x423937
423926:	ff 76 08             	push   0x8(%esi)
423929:	8b ca                	mov    %edx,%ecx
42392b:	57                   	push   %edi
42392c:	ff 76 34             	push   0x34(%esi)
42392f:	ff 76 30             	push   0x30(%esi)
423932:	e8 10 0d 00 00       	call   0x424647
423937:	8b 0f                	mov    (%edi),%ecx
423939:	85 c9                	test   %ecx,%ecx
42393b:	78 50                	js     0x42398d
42393d:	8b 46 1c             	mov    0x1c(%esi),%eax
423940:	c1 e8 02             	shr    $0x2,%eax
423943:	a8 01                	test   $0x1,%al
423945:	74 46                	je     0x42398d
423947:	8b 75 e4             	mov    -0x1c(%ebp),%esi
42394a:	85 f6                	test   %esi,%esi
42394c:	7e 3f                	jle    0x42398d
42394e:	8b 45 e8             	mov    -0x18(%ebp),%eax
423951:	8b 10                	mov    (%eax),%edx
423953:	8b 42 08             	mov    0x8(%edx),%eax
423956:	3b 42 04             	cmp    0x4(%edx),%eax
423959:	75 10                	jne    0x42396b
42395b:	80 7a 0c 00          	cmpb   $0x0,0xc(%edx)
42395f:	74 03                	je     0x423964
423961:	41                   	inc    %ecx
423962:	eb 03                	jmp    0x423967
423964:	83 c9 ff             	or     $0xffffffff,%ecx
423967:	89 0f                	mov    %ecx,(%edi)
423969:	eb 16                	jmp    0x423981
42396b:	8d 41 01             	lea    0x1(%ecx),%eax
42396e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
423971:	89 07                	mov    %eax,(%edi)
423973:	ff 42 08             	incl   0x8(%edx)
423976:	8b 01                	mov    (%ecx),%eax
423978:	8b 00                	mov    (%eax),%eax
42397a:	c6 00 20             	movb   $0x20,(%eax)
42397d:	8b 01                	mov    (%ecx),%eax
42397f:	ff 00                	incl   (%eax)
423981:	8b 0f                	mov    (%edi),%ecx
423983:	83 f9 ff             	cmp    $0xffffffff,%ecx
423986:	74 05                	je     0x42398d
423988:	43                   	inc    %ebx
423989:	3b de                	cmp    %esi,%ebx
42398b:	7c c1                	jl     0x42394e
42398d:	b0 01                	mov    $0x1,%al
42398f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423992:	5f                   	pop    %edi
423993:	5e                   	pop    %esi
423994:	33 cd                	xor    %ebp,%ecx
423996:	5b                   	pop    %ebx
423997:	e8 34 7f ff ff       	call   0x41b8d0
42399c:	c9                   	leave
42399d:	c3                   	ret
42399e:	8b ff                	mov    %edi,%edi
4239a0:	55                   	push   %ebp
4239a1:	8b ec                	mov    %esp,%ebp
4239a3:	83 ec 28             	sub    $0x28,%esp
4239a6:	a1 14 40 45 00       	mov    0x454014,%eax
4239ab:	33 c5                	xor    %ebp,%eax
4239ad:	89 45 fc             	mov    %eax,-0x4(%ebp)
4239b0:	53                   	push   %ebx
4239b1:	56                   	push   %esi
4239b2:	57                   	push   %edi
4239b3:	6a 41                	push   $0x41
4239b5:	5f                   	pop    %edi
4239b6:	8b f1                	mov    %ecx,%esi
4239b8:	89 7d ec             	mov    %edi,-0x14(%ebp)
4239bb:	6a 02                	push   $0x2
4239bd:	59                   	pop    %ecx
4239be:	33 db                	xor    %ebx,%ebx
4239c0:	0f b7 46 2e          	movzwl 0x2e(%esi),%eax
4239c4:	6a 58                	push   $0x58
4239c6:	5a                   	pop    %edx
4239c7:	83 f8 64             	cmp    $0x64,%eax
4239ca:	77 6a                	ja     0x423a36
4239cc:	0f 84 8c 00 00 00    	je     0x423a5e
4239d2:	83 f8 53             	cmp    $0x53,%eax
4239d5:	77 2c                	ja     0x423a03
4239d7:	0f 84 ae 00 00 00    	je     0x423a8b
4239dd:	2b c7                	sub    %edi,%eax
4239df:	74 16                	je     0x4239f7
4239e1:	2b c1                	sub    %ecx,%eax
4239e3:	74 33                	je     0x423a18
4239e5:	2b c1                	sub    %ecx,%eax
4239e7:	74 0e                	je     0x4239f7
4239e9:	83 e8 01             	sub    $0x1,%eax
4239ec:	74 09                	je     0x4239f7
4239ee:	83 e8 01             	sub    $0x1,%eax
4239f1:	0f 85 a8 00 00 00    	jne    0x423a9f
4239f7:	8b ce                	mov    %esi,%ecx
4239f9:	e8 3f 06 00 00       	call   0x42403d
4239fe:	e9 98 00 00 00       	jmp    0x423a9b
423a03:	2b c2                	sub    %edx,%eax
423a05:	74 24                	je     0x423a2b
423a07:	2b c1                	sub    %ecx,%eax
423a09:	74 17                	je     0x423a22
423a0b:	83 e8 07             	sub    $0x7,%eax
423a0e:	74 e7                	je     0x4239f7