422598:	83 e8 05             	sub    $0x5,%eax
42259b:	75 40                	jne    0x4225dd
42259d:	e8 39 0c 00 00       	call   0x4231db
4225a2:	eb 35                	jmp    0x4225d9
4225a4:	83 4e 1c 10          	orl    $0x10,0x1c(%esi)
4225a8:	53                   	push   %ebx
4225a9:	e8 4b e7 ff ff       	call   0x420cf9
4225ae:	eb 29                	jmp    0x4225d9
4225b0:	e8 ab 0c 00 00       	call   0x423260
4225b5:	eb 22                	jmp    0x4225d9
4225b7:	83 e8 70             	sub    $0x70,%eax
4225ba:	74 18                	je     0x4225d4
4225bc:	83 e8 03             	sub    $0x3,%eax
4225bf:	74 0c                	je     0x4225cd
4225c1:	2b c7                	sub    %edi,%eax
4225c3:	74 e3                	je     0x4225a8
4225c5:	83 e8 03             	sub    $0x3,%eax
4225c8:	75 13                	jne    0x4225dd
4225ca:	53                   	push   %ebx
4225cb:	eb aa                	jmp    0x422577
4225cd:	e8 f4 0c 00 00       	call   0x4232c6
4225d2:	eb 05                	jmp    0x4225d9
4225d4:	e8 c1 0c 00 00       	call   0x42329a
4225d9:	84 c0                	test   %al,%al
4225db:	75 07                	jne    0x4225e4
4225dd:	32 c0                	xor    %al,%al
4225df:	e9 65 02 00 00       	jmp    0x422849
4225e4:	38 5e 2c             	cmp    %bl,0x2c(%esi)
4225e7:	0f 85 5a 02 00 00    	jne    0x422847
4225ed:	8b 46 1c             	mov    0x1c(%esi),%eax
4225f0:	33 d2                	xor    %edx,%edx
4225f2:	c1 e8 04             	shr    $0x4,%eax
4225f5:	42                   	inc    %edx
4225f6:	66 89 5d f0          	mov    %bx,-0x10(%ebp)
4225fa:	8b cb                	mov    %ebx,%ecx
4225fc:	88 5d f2             	mov    %bl,-0xe(%ebp)
4225ff:	89 4d ec             	mov    %ecx,-0x14(%ebp)
422602:	84 c2                	test   %al,%dl
422604:	74 32                	je     0x422638
422606:	8b 46 1c             	mov    0x1c(%esi),%eax
422609:	c1 e8 06             	shr    $0x6,%eax
42260c:	84 c2                	test   %al,%dl
42260e:	74 06                	je     0x422616
422610:	c6 45 f0 2d          	movb   $0x2d,-0x10(%ebp)
422614:	eb 09                	jmp    0x42261f
422616:	84 56 1c             	test   %dl,0x1c(%esi)
422619:	74 0b                	je     0x422626
42261b:	c6 45 f0 2b          	movb   $0x2b,-0x10(%ebp)
42261f:	8b ca                	mov    %edx,%ecx
422621:	89 4d ec             	mov    %ecx,-0x14(%ebp)
422624:	eb 12                	jmp    0x422638
422626:	8b 46 1c             	mov    0x1c(%esi),%eax
422629:	d1 e8                	shr    $1,%eax
42262b:	84 c2                	test   %al,%dl
42262d:	74 09                	je     0x422638
42262f:	c6 45 f0 20          	movb   $0x20,-0x10(%ebp)
422633:	8b ca                	mov    %edx,%ecx
422635:	89 55 ec             	mov    %edx,-0x14(%ebp)
422638:	8a 56 2d             	mov    0x2d(%esi),%dl
42263b:	80 fa 78             	cmp    $0x78,%dl
42263e:	74 05                	je     0x422645
422640:	80 fa 58             	cmp    $0x58,%dl
422643:	75 0c                	jne    0x422651
422645:	8b 46 1c             	mov    0x1c(%esi),%eax
422648:	c1 e8 05             	shr    $0x5,%eax
42264b:	b4 01                	mov    $0x1,%ah
42264d:	a8 01                	test   $0x1,%al
42264f:	75 02                	jne    0x422653
422651:	8a e3                	mov    %bl,%ah
422653:	80 fa 61             	cmp    $0x61,%dl
422656:	74 07                	je     0x42265f
422658:	8a c3                	mov    %bl,%al
42265a:	80 fa 41             	cmp    $0x41,%dl
42265d:	75 02                	jne    0x422661
42265f:	b0 01                	mov    $0x1,%al
422661:	84 e4                	test   %ah,%ah
422663:	75 04                	jne    0x422669
422665:	84 c0                	test   %al,%al
422667:	74 1f                	je     0x422688
422669:	c6 44 0d f0 30       	movb   $0x30,-0x10(%ebp,%ecx,1)
42266e:	80 fa 58             	cmp    $0x58,%dl
422671:	74 09                	je     0x42267c
422673:	80 fa 41             	cmp    $0x41,%dl
422676:	74 04                	je     0x42267c
422678:	b0 78                	mov    $0x78,%al
42267a:	eb 03                	jmp    0x42267f
42267c:	6a 58                	push   $0x58
42267e:	58                   	pop    %eax
42267f:	88 44 0d f1          	mov    %al,-0xf(%ebp,%ecx,1)
422683:	03 cf                	add    %edi,%ecx
422685:	89 4d ec             	mov    %ecx,-0x14(%ebp)
422688:	8b 56 20             	mov    0x20(%esi),%edx
42268b:	2b d1                	sub    %ecx,%edx
42268d:	2b 56 34             	sub    0x34(%esi),%edx
422690:	f6 46 1c 0c          	testb  $0xc,0x1c(%esi)
422694:	89 55 e4             	mov    %edx,-0x1c(%ebp)
422697:	75 5a                	jne    0x4226f3
422699:	89 5d e8             	mov    %ebx,-0x18(%ebp)
42269c:	85 d2                	test   %edx,%edx
42269e:	7e 53                	jle    0x4226f3
4226a0:	8b 5e 14             	mov    0x14(%esi),%ebx
4226a3:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4226a6:	8b be 48 04 00 00    	mov    0x448(%esi),%edi
4226ac:	8b 47 08             	mov    0x8(%edi),%eax
4226af:	3b 47 04             	cmp    0x4(%edi),%eax
4226b2:	75 11                	jne    0x4226c5
4226b4:	80 7f 0c 00          	cmpb   $0x0,0xc(%edi)
4226b8:	74 03                	je     0x4226bd
4226ba:	43                   	inc    %ebx
4226bb:	eb 03                	jmp    0x4226c0
4226bd:	83 cb ff             	or     $0xffffffff,%ebx
4226c0:	89 5e 14             	mov    %ebx,0x14(%esi)
4226c3:	eb 1c                	jmp    0x4226e1
4226c5:	8d 43 01             	lea    0x1(%ebx),%eax
4226c8:	89 46 14             	mov    %eax,0x14(%esi)
4226cb:	ff 47 08             	incl   0x8(%edi)
4226ce:	8b 86 48 04 00 00    	mov    0x448(%esi),%eax
4226d4:	8b 00                	mov    (%eax),%eax
4226d6:	c6 00 20             	movb   $0x20,(%eax)
4226d9:	8b 86 48 04 00 00    	mov    0x448(%esi),%eax
4226df:	ff 00                	incl   (%eax)
4226e1:	8b 5e 14             	mov    0x14(%esi),%ebx
4226e4:	83 fb ff             	cmp    $0xffffffff,%ebx
4226e7:	74 05                	je     0x4226ee
4226e9:	41                   	inc    %ecx
4226ea:	3b ca                	cmp    %edx,%ecx
4226ec:	7c b8                	jl     0x4226a6
4226ee:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4226f1:	33 db                	xor    %ebx,%ebx
4226f3:	ff 76 08             	push   0x8(%esi)
4226f6:	8d 7e 14             	lea    0x14(%esi),%edi
4226f9:	57                   	push   %edi
4226fa:	51                   	push   %ecx
4226fb:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
422701:	8d 4d f0             	lea    -0x10(%ebp),%ecx
422704:	89 45 e8             	mov    %eax,-0x18(%ebp)
422707:	51                   	push   %ecx
422708:	8b c8                	mov    %eax,%ecx
42270a:	e8 23 0d 00 00       	call   0x423432
42270f:	8b 4e 1c             	mov    0x1c(%esi),%ecx
422712:	8d 96 48 04 00 00    	lea    0x448(%esi),%edx
422718:	8b c1                	mov    %ecx,%eax
42271a:	c1 e8 03             	shr    $0x3,%eax
42271d:	a8 01                	test   $0x1,%al
42271f:	74 57                	je     0x422778
422721:	c1 e9 02             	shr    $0x2,%ecx
422724:	f6 c1 01             	test   $0x1,%cl
422727:	75 4f                	jne    0x422778
422729:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
42272c:	89 5d f0             	mov    %ebx,-0x10(%ebp)
42272f:	85 c9                	test   %ecx,%ecx
422731:	7e 45                	jle    0x422778
422733:	8b 02                	mov    (%edx),%eax
422735:	89 45 ec             	mov    %eax,-0x14(%ebp)
422738:	8b d8                	mov    %eax,%ebx
42273a:	8b 40 08             	mov    0x8(%eax),%eax
42273d:	3b 43 04             	cmp    0x4(%ebx),%eax
422740:	8b c3                	mov    %ebx,%eax
422742:	75 12                	jne    0x422756
422744:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
422748:	74 05                	je     0x42274f
42274a:	8b 07                	mov    (%edi),%eax
42274c:	40                   	inc    %eax
42274d:	eb 03                	jmp    0x422752
42274f:	83 c8 ff             	or     $0xffffffff,%eax
422752:	89 07                	mov    %eax,(%edi)
422754:	eb 10                	jmp    0x422766
422756:	ff 07                	incl   (%edi)
422758:	ff 40 08             	incl   0x8(%eax)
42275b:	8b 02                	mov    (%edx),%eax
42275d:	8b 00                	mov    (%eax),%eax
42275f:	c6 00 30             	movb   $0x30,(%eax)
422762:	8b 02                	mov    (%edx),%eax
422764:	ff 00                	incl   (%eax)
422766:	83 3f ff             	cmpl   $0xffffffff,(%edi)
422769:	74 0b                	je     0x422776
42276b:	8b 45 f0             	mov    -0x10(%ebp),%eax
42276e:	40                   	inc    %eax
42276f:	89 45 f0             	mov    %eax,-0x10(%ebp)
422772:	3b c1                	cmp    %ecx,%eax
422774:	7c bd                	jl     0x422733
422776:	33 db                	xor    %ebx,%ebx
422778:	80 7e 38 00          	cmpb   $0x0,0x38(%esi)
42277c:	74 62                	je     0x4227e0
42277e:	39 5e 34             	cmp    %ebx,0x34(%esi)
422781:	7e 5d                	jle    0x4227e0
422783:	8b 4e 30             	mov    0x30(%esi),%ecx
422786:	89 5d f0             	mov    %ebx,-0x10(%ebp)
422789:	ff 76 08             	push   0x8(%esi)
42278c:	0f b7 01             	movzwl (%ecx),%eax
42278f:	83 c1 02             	add    $0x2,%ecx
422792:	50                   	push   %eax
422793:	6a 06                	push   $0x6
422795:	8d 45 f4             	lea    -0xc(%ebp),%eax
422798:	89 5d ec             	mov    %ebx,-0x14(%ebp)
42279b:	50                   	push   %eax
42279c:	8d 45 ec             	lea    -0x14(%ebp),%eax
42279f:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4227a2:	50                   	push   %eax
4227a3:	e8 f3 8c 00 00       	call   0x42b49b
4227a8:	83 c4 14             	add    $0x14,%esp
4227ab:	85 c0                	test   %eax,%eax
4227ad:	75 2c                	jne    0x4227db
4227af:	39 45 ec             	cmp    %eax,-0x14(%ebp)
4227b2:	74 27                	je     0x4227db
4227b4:	ff 76 08             	push   0x8(%esi)
4227b7:	8d 45 f4             	lea    -0xc(%ebp),%eax
4227ba:	57                   	push   %edi
4227bb:	ff 75 ec             	push   -0x14(%ebp)
4227be:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
4227c4:	50                   	push   %eax
4227c5:	e8 68 0c 00 00       	call   0x423432
4227ca:	8b 45 f0             	mov    -0x10(%ebp),%eax
4227cd:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4227d0:	40                   	inc    %eax
4227d1:	89 45 f0             	mov    %eax,-0x10(%ebp)
4227d4:	3b 46 34             	cmp    0x34(%esi),%eax
4227d7:	75 b0                	jne    0x422789
4227d9:	eb 16                	jmp    0x4227f1
4227db:	83 0f ff             	orl    $0xffffffff,(%edi)
4227de:	eb 11                	jmp    0x4227f1
4227e0:	ff 76 08             	push   0x8(%esi)
4227e3:	8b ca                	mov    %edx,%ecx
4227e5:	57                   	push   %edi
4227e6:	ff 76 34             	push   0x34(%esi)
4227e9:	ff 76 30             	push   0x30(%esi)
4227ec:	e8 41 0c 00 00       	call   0x423432
4227f1:	8b 0f                	mov    (%edi),%ecx
4227f3:	85 c9                	test   %ecx,%ecx
4227f5:	78 50                	js     0x422847
4227f7:	8b 46 1c             	mov    0x1c(%esi),%eax
4227fa:	c1 e8 02             	shr    $0x2,%eax
4227fd:	a8 01                	test   $0x1,%al
4227ff:	74 46                	je     0x422847
422801:	8b 75 e4             	mov    -0x1c(%ebp),%esi
422804:	85 f6                	test   %esi,%esi
422806:	7e 3f                	jle    0x422847
422808:	8b 45 e8             	mov    -0x18(%ebp),%eax
42280b:	8b 10                	mov    (%eax),%edx
42280d:	8b 42 08             	mov    0x8(%edx),%eax
422810:	3b 42 04             	cmp    0x4(%edx),%eax
422813:	75 10                	jne    0x422825
422815:	80 7a 0c 00          	cmpb   $0x0,0xc(%edx)
422819:	74 03                	je     0x42281e
42281b:	41                   	inc    %ecx
42281c:	eb 03                	jmp    0x422821
42281e:	83 c9 ff             	or     $0xffffffff,%ecx
422821:	89 0f                	mov    %ecx,(%edi)
422823:	eb 16                	jmp    0x42283b
422825:	8d 41 01             	lea    0x1(%ecx),%eax
422828:	8b 4d e8             	mov    -0x18(%ebp),%ecx
42282b:	89 07                	mov    %eax,(%edi)
42282d:	ff 42 08             	incl   0x8(%edx)
422830:	8b 01                	mov    (%ecx),%eax
422832:	8b 00                	mov    (%eax),%eax
422834:	c6 00 20             	movb   $0x20,(%eax)
422837:	8b 01                	mov    (%ecx),%eax
422839:	ff 00                	incl   (%eax)
42283b:	8b 0f                	mov    (%edi),%ecx
42283d:	83 f9 ff             	cmp    $0xffffffff,%ecx
422840:	74 05                	je     0x422847
422842:	43                   	inc    %ebx
422843:	3b de                	cmp    %esi,%ebx
422845:	7c c1                	jl     0x422808
422847:	b0 01                	mov    $0x1,%al
422849:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42284c:	5f                   	pop    %edi
42284d:	5e                   	pop    %esi
42284e:	33 cd                	xor    %ebp,%ecx
422850:	5b                   	pop    %ebx
422851:	e8 54 73 ff ff       	call   0x419baa
422856:	c9                   	leave
422857:	c3                   	ret
422858:	8b ff                	mov    %edi,%edi
42285a:	55                   	push   %ebp
42285b:	8b ec                	mov    %esp,%ebp
42285d:	83 ec 28             	sub    $0x28,%esp
422860:	a1 14 50 45 00       	mov    0x455014,%eax
422865:	33 c5                	xor    %ebp,%eax
422867:	89 45 fc             	mov    %eax,-0x4(%ebp)
42286a:	53                   	push   %ebx
42286b:	56                   	push   %esi
42286c:	57                   	push   %edi
42286d:	6a 41                	push   $0x41
42286f:	5f                   	pop    %edi
422870:	8b f1                	mov    %ecx,%esi
422872:	89 7d ec             	mov    %edi,-0x14(%ebp)
422875:	6a 02                	push   $0x2
422877:	59                   	pop    %ecx
422878:	33 db                	xor    %ebx,%ebx
42287a:	0f b7 46 2e          	movzwl 0x2e(%esi),%eax
42287e:	6a 58                	push   $0x58
422880:	5a                   	pop    %edx
422881:	83 f8 64             	cmp    $0x64,%eax
422884:	77 6a                	ja     0x4228f0
422886:	0f 84 8c 00 00 00    	je     0x422918
42288c:	83 f8 53             	cmp    $0x53,%eax
42288f:	77 2c                	ja     0x4228bd
422891:	0f 84 ae 00 00 00    	je     0x422945
422897:	2b c7                	sub    %edi,%eax
422899:	74 16                	je     0x4228b1
42289b:	2b c1                	sub    %ecx,%eax
42289d:	74 33                	je     0x4228d2
42289f:	2b c1                	sub    %ecx,%eax
4228a1:	74 0e                	je     0x4228b1
4228a3:	83 e8 01             	sub    $0x1,%eax
4228a6:	74 09                	je     0x4228b1
4228a8:	83 e8 01             	sub    $0x1,%eax
4228ab:	0f 85 a8 00 00 00    	jne    0x422959
4228b1:	8b ce                	mov    %esi,%ecx
4228b3:	e8 3f 06 00 00       	call   0x422ef7
4228b8:	e9 98 00 00 00       	jmp    0x422955
4228bd:	2b c2                	sub    %edx,%eax
4228bf:	74 24                	je     0x4228e5
4228c1:	2b c1                	sub    %ecx,%eax
4228c3:	74 17                	je     0x4228dc
4228c5:	83 e8 07             	sub    $0x7,%eax
4228c8:	74 e7                	je     0x4228b1
4228ca:	2b c1                	sub    %ecx,%eax
4228cc:	0f 85 87 00 00 00    	jne    0x422959
4228d2:	53                   	push   %ebx
4228d3:	8b ce                	mov    %esi,%ecx
4228d5:	e8 59 08 00 00       	call   0x423133
4228da:	eb 79                	jmp    0x422955
4228dc:	8b ce                	mov    %esi,%ecx
4228de:	e8 20 04 00 00       	call   0x422d03
4228e3:	eb 70                	jmp    0x422955
4228e5:	6a 01                	push   $0x1
4228e7:	8b ce                	mov    %esi,%ecx
4228e9:	e8 b7 e8 ff ff       	call   0x4211a5
4228ee:	eb 65                	jmp    0x422955
4228f0:	83 f8 6f             	cmp    $0x6f,%eax
4228f3:	77 3a                	ja     0x42292f
4228f5:	74 2f                	je     0x422926
4228f7:	83 e8 65             	sub    $0x65,%eax
4228fa:	74 b5                	je     0x4228b1
4228fc:	83 e8 01             	sub    $0x1,%eax
4228ff:	74 b0                	je     0x4228b1
422901:	83 e8 01             	sub    $0x1,%eax
422904:	74 ab                	je     0x4228b1
422906:	2b c1                	sub    %ecx,%eax
422908:	74 0e                	je     0x422918
42290a:	83 e8 05             	sub    $0x5,%eax
42290d:	75 4a                	jne    0x422959
42290f:	8b ce                	mov    %esi,%ecx
422911:	e8 c5 08 00 00       	call   0x4231db
422916:	eb 3d                	jmp    0x422955
422918:	83 4e 1c 10          	orl    $0x10,0x1c(%esi)
42291c:	53                   	push   %ebx
42291d:	8b ce                	mov    %esi,%ecx