4603a4:	5e                   	pop    %esi
4603a5:	8b e5                	mov    %ebp,%esp
4603a7:	5d                   	pop    %ebp
4603a8:	c2 04 00             	ret    $0x4
4603ab:	55                   	push   %ebp
4603ac:	8b ec                	mov    %esp,%ebp
4603ae:	8b 45 08             	mov    0x8(%ebp),%eax
4603b1:	53                   	push   %ebx
4603b2:	56                   	push   %esi
4603b3:	8b 75 0c             	mov    0xc(%ebp),%esi
4603b6:	33 db                	xor    %ebx,%ebx
4603b8:	57                   	push   %edi
4603b9:	8b 78 04             	mov    0x4(%eax),%edi
4603bc:	43                   	inc    %ebx
4603bd:	4f                   	dec    %edi
4603be:	83 26 00             	andl   $0x0,(%esi)
4603c1:	83 65 0c 00          	andl   $0x0,0xc(%ebp)
4603c5:	85 ff                	test   %edi,%edi
4603c7:	78 50                	js     0x460419
4603c9:	57                   	push   %edi
4603ca:	8b c8                	mov    %eax,%ecx
4603cc:	e8 4f 77 fa ff       	call   0x407b20
4603d1:	6a 30                	push   $0x30
4603d3:	59                   	pop    %ecx
4603d4:	0f b7 00             	movzwl (%eax),%eax
4603d7:	66 3b c1             	cmp    %cx,%ax
4603da:	72 09                	jb     0x4603e5
4603dc:	83 f8 39             	cmp    $0x39,%eax
4603df:	77 04                	ja     0x4603e5
4603e1:	2b c1                	sub    %ecx,%eax
4603e3:	eb 1c                	jmp    0x460401
4603e5:	83 f8 41             	cmp    $0x41,%eax
4603e8:	72 0a                	jb     0x4603f4
4603ea:	83 f8 46             	cmp    $0x46,%eax
4603ed:	77 05                	ja     0x4603f4
4603ef:	83 e8 37             	sub    $0x37,%eax
4603f2:	eb 0d                	jmp    0x460401
4603f4:	83 f8 61             	cmp    $0x61,%eax
4603f7:	72 2e                	jb     0x460427
4603f9:	83 f8 66             	cmp    $0x66,%eax
4603fc:	77 29                	ja     0x460427
4603fe:	83 e8 57             	sub    $0x57,%eax
460401:	0f af c3             	imul   %ebx,%eax
460404:	c1 e3 04             	shl    $0x4,%ebx
460407:	01 06                	add    %eax,(%esi)
460409:	4f                   	dec    %edi
46040a:	8b 45 0c             	mov    0xc(%ebp),%eax
46040d:	40                   	inc    %eax
46040e:	89 45 0c             	mov    %eax,0xc(%ebp)
460411:	83 f8 08             	cmp    $0x8,%eax
460414:	8b 45 08             	mov    0x8(%ebp),%eax
460417:	7c ac                	jl     0x4603c5
460419:	83 ff ff             	cmp    $0xffffffff,%edi
46041c:	75 09                	jne    0x460427
46041e:	b0 01                	mov    $0x1,%al
460420:	5f                   	pop    %edi
460421:	5e                   	pop    %esi
460422:	5b                   	pop    %ebx
460423:	5d                   	pop    %ebp
460424:	c2 08 00             	ret    $0x8
460427:	83 26 00             	andl   $0x0,(%esi)
46042a:	32 c0                	xor    %al,%al
46042c:	eb f2                	jmp    0x460420
46042e:	80 79 0a 00          	cmpb   $0x0,0xa(%ecx)
460432:	0f 85 a9 00 00 00    	jne    0x4604e1
460438:	8a 01                	mov    (%ecx),%al
46043a:	3c ff                	cmp    $0xff,%al
46043c:	75 03                	jne    0x460441
46043e:	32 c0                	xor    %al,%al
460440:	c3                   	ret
460441:	3c 2d                	cmp    $0x2d,%al
460443:	0f 84 98 00 00 00    	je     0x4604e1
460449:	3c 2e                	cmp    $0x2e,%al
46044b:	0f 84 90 00 00 00    	je     0x4604e1
460451:	3c 23                	cmp    $0x23,%al
460453:	0f 84 88 00 00 00    	je     0x4604e1
460459:	3c 28                	cmp    $0x28,%al
46045b:	0f 84 80 00 00 00    	je     0x4604e1
460461:	3c 22                	cmp    $0x22,%al
460463:	74 7c                	je     0x4604e1
460465:	3c 25                	cmp    $0x25,%al
460467:	74 78                	je     0x4604e1
460469:	3c 27                	cmp    $0x27,%al
46046b:	74 74                	je     0x4604e1
46046d:	3c 24                	cmp    $0x24,%al
46046f:	74 70                	je     0x4604e1
460471:	3c 26                	cmp    $0x26,%al
460473:	74 6c                	je     0x4604e1
460475:	3c 21                	cmp    $0x21,%al
460477:	74 68                	je     0x4604e1
460479:	3c 6f                	cmp    $0x6f,%al
46047b:	74 64                	je     0x4604e1
46047d:	3c 5d                	cmp    $0x5d,%al
46047f:	74 60                	je     0x4604e1
460481:	3c 5b                	cmp    $0x5b,%al
460483:	74 5c                	je     0x4604e1
460485:	3c 5c                	cmp    $0x5c,%al
460487:	74 58                	je     0x4604e1
460489:	3c a5                	cmp    $0xa5,%al
46048b:	74 54                	je     0x4604e1
46048d:	3c a3                	cmp    $0xa3,%al
46048f:	74 50                	je     0x4604e1
460491:	3c 5f                	cmp    $0x5f,%al
460493:	74 4c                	je     0x4604e1
460495:	3c a6                	cmp    $0xa6,%al
460497:	74 48                	je     0x4604e1
460499:	3c a7                	cmp    $0xa7,%al
46049b:	74 44                	je     0x4604e1
46049d:	3c a8                	cmp    $0xa8,%al
46049f:	74 40                	je     0x4604e1
4604a1:	3c a9                	cmp    $0xa9,%al
4604a3:	74 3c                	je     0x4604e1
4604a5:	3c aa                	cmp    $0xaa,%al
4604a7:	74 38                	je     0x4604e1
4604a9:	3c ab                	cmp    $0xab,%al
4604ab:	74 34                	je     0x4604e1
4604ad:	3c ac                	cmp    $0xac,%al
4604af:	74 30                	je     0x4604e1
4604b1:	3c ad                	cmp    $0xad,%al
4604b3:	74 2c                	je     0x4604e1
4604b5:	3c ae                	cmp    $0xae,%al
4604b7:	74 28                	je     0x4604e1
4604b9:	3c af                	cmp    $0xaf,%al
4604bb:	74 24                	je     0x4604e1
4604bd:	3c b0                	cmp    $0xb0,%al
4604bf:	74 20                	je     0x4604e1
4604c1:	3c b1                	cmp    $0xb1,%al
4604c3:	74 1c                	je     0x4604e1
4604c5:	3c b2                	cmp    $0xb2,%al
4604c7:	74 18                	je     0x4604e1
4604c9:	3c b3                	cmp    $0xb3,%al
4604cb:	74 14                	je     0x4604e1
4604cd:	3c b4                	cmp    $0xb4,%al
4604cf:	74 10                	je     0x4604e1
4604d1:	3c b5                	cmp    $0xb5,%al
4604d3:	74 0c                	je     0x4604e1
4604d5:	3c b6                	cmp    $0xb6,%al
4604d7:	74 08                	je     0x4604e1
4604d9:	3c b7                	cmp    $0xb7,%al
4604db:	0f 85 5d ff ff ff    	jne    0x46043e
4604e1:	b0 01                	mov    $0x1,%al
4604e3:	c3                   	ret
4604e4:	53                   	push   %ebx
4604e5:	57                   	push   %edi
4604e6:	8b f9                	mov    %ecx,%edi
4604e8:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
4604ec:	74 3b                	je     0x460529
4604ee:	56                   	push   %esi
4604ef:	33 f6                	xor    %esi,%esi
4604f1:	39 77 20             	cmp    %esi,0x20(%edi)
4604f4:	75 32                	jne    0x460528
4604f6:	ff 77 10             	push   0x10(%edi)
4604f9:	ff 15 48 f6 48 00    	call   *0x48f648
4604ff:	85 c0                	test   %eax,%eax
460501:	74 22                	je     0x460525
460503:	8b 5f 10             	mov    0x10(%edi),%ebx
460506:	ff 15 34 f7 48 00    	call   *0x48f734
46050c:	3b c3                	cmp    %ebx,%eax
46050e:	74 18                	je     0x460528
460510:	53                   	push   %ebx
460511:	e8 1f 45 fa ff       	call   0x404a35
460516:	6a 0f                	push   $0xf
460518:	e8 35 11 00 00       	call   0x461652
46051d:	46                   	inc    %esi
46051e:	83 fe 03             	cmp    $0x3,%esi
460521:	7c e0                	jl     0x460503
460523:	eb 03                	jmp    0x460528
460525:	89 77 10             	mov    %esi,0x10(%edi)
460528:	5e                   	pop    %esi
460529:	5f                   	pop    %edi
46052a:	5b                   	pop    %ebx
46052b:	c3                   	ret
46052c:	55                   	push   %ebp
46052d:	8b ec                	mov    %esp,%ebp
46052f:	8b 45 08             	mov    0x8(%ebp),%eax
460532:	81 ec 0c 01 00 00    	sub    $0x10c,%esp
460538:	80 38 00             	cmpb   $0x0,(%eax)
46053b:	56                   	push   %esi
46053c:	8b f1                	mov    %ecx,%esi
46053e:	74 04                	je     0x460544
460540:	c6 46 14 01          	movb   $0x1,0x14(%esi)
460544:	80 78 02 00          	cmpb   $0x0,0x2(%eax)
460548:	74 04                	je     0x46054e
46054a:	c6 46 16 01          	movb   $0x1,0x16(%esi)
46054e:	80 78 03 00          	cmpb   $0x0,0x3(%eax)
460552:	74 04                	je     0x460558
460554:	c6 46 17 01          	movb   $0x1,0x17(%esi)
460558:	33 c0                	xor    %eax,%eax
46055a:	38 46 14             	cmp    %al,0x14(%esi)
46055d:	74 08                	je     0x460567
46055f:	38 46 1a             	cmp    %al,0x1a(%esi)
460562:	74 03                	je     0x460567
460564:	88 46 14             	mov    %al,0x14(%esi)
460567:	38 46 15             	cmp    %al,0x15(%esi)
46056a:	74 08                	je     0x460574
46056c:	38 46 1b             	cmp    %al,0x1b(%esi)
46056f:	74 03                	je     0x460574
460571:	88 46 15             	mov    %al,0x15(%esi)
460574:	38 46 16             	cmp    %al,0x16(%esi)
460577:	74 08                	je     0x460581
460579:	38 46 1c             	cmp    %al,0x1c(%esi)
46057c:	74 03                	je     0x460581
46057e:	88 46 16             	mov    %al,0x16(%esi)
460581:	38 46 17             	cmp    %al,0x17(%esi)
460584:	74 08                	je     0x46058e
460586:	38 46 1d             	cmp    %al,0x1d(%esi)
460589:	74 03                	je     0x46058e
46058b:	88 46 17             	mov    %al,0x17(%esi)
46058e:	38 46 18             	cmp    %al,0x18(%esi)
460591:	74 08                	je     0x46059b
460593:	38 46 1e             	cmp    %al,0x1e(%esi)
460596:	74 03                	je     0x46059b
460598:	88 46 18             	mov    %al,0x18(%esi)
46059b:	39 46 20             	cmp    %eax,0x20(%esi)
46059e:	74 7d                	je     0x46061d
4605a0:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
4605a6:	50                   	push   %eax
4605a7:	ff 15 f8 f5 48 00    	call   *0x48f5f8
4605ad:	85 c0                	test   %eax,%eax
4605af:	0f 84 a0 01 00 00    	je     0x460755
4605b5:	8a 4e 1a             	mov    0x1a(%esi),%cl
4605b8:	8a 56 1b             	mov    0x1b(%esi),%dl
4605bb:	84 c9                	test   %cl,%cl
4605bd:	0f 94 c0             	sete   %al
4605c0:	fe c8                	dec    %al
4605c2:	20 45 94             	and    %al,-0x6c(%ebp)
4605c5:	84 d2                	test   %dl,%dl
4605c7:	0f 94 c0             	sete   %al
4605ca:	fe c8                	dec    %al
4605cc:	20 45 95             	and    %al,-0x6b(%ebp)
4605cf:	84 c9                	test   %cl,%cl
4605d1:	75 0d                	jne    0x4605e0
4605d3:	84 d2                	test   %dl,%dl
4605d5:	0f 94 c0             	sete   %al
4605d8:	fe c8                	dec    %al
4605da:	20 85 04 ff ff ff    	and    %al,-0xfc(%ebp)
4605e0:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
4605e4:	0f 94 c0             	sete   %al
4605e7:	fe c8                	dec    %al
4605e9:	20 85 05 ff ff ff    	and    %al,-0xfb(%ebp)
4605ef:	80 7e 1d 00          	cmpb   $0x0,0x1d(%esi)
4605f3:	0f 94 c0             	sete   %al
4605f6:	fe c8                	dec    %al
4605f8:	20 85 06 ff ff ff    	and    %al,-0xfa(%ebp)
4605fe:	84 c9                	test   %cl,%cl
460600:	0f 94 c0             	sete   %al
460603:	fe c8                	dec    %al
460605:	20 85 4f ff ff ff    	and    %al,-0xb1(%ebp)
46060b:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
460611:	50                   	push   %eax
460612:	ff 15 f4 f5 48 00    	call   *0x48f5f4
460618:	e9 38 01 00 00       	jmp    0x460755
46061d:	53                   	push   %ebx
46061e:	57                   	push   %edi
46061f:	8d 4d f4             	lea    -0xc(%ebp),%ecx
460622:	e8 6e fb ff ff       	call   0x460195
460627:	8b 1d f0 f5 48 00    	mov    0x48f5f0,%ebx
46062d:	68 a0 00 00 00       	push   $0xa0
460632:	ff d3                	call   *%ebx
460634:	8b 3d fc f5 48 00    	mov    0x48f5fc,%edi
46063a:	b9 00 80 00 00       	mov    $0x8000,%ecx
46063f:	66 85 c1             	test   %ax,%cx
460642:	75 11                	jne    0x460655
460644:	68 a0 00 00 00       	push   $0xa0
460649:	ff d7                	call   *%edi
46064b:	b9 00 80 00 00       	mov    $0x8000,%ecx
460650:	66 85 c1             	test   %ax,%cx
460653:	74 1e                	je     0x460673
460655:	80 7e 1a 00          	cmpb   $0x0,0x1a(%esi)
460659:	75 18                	jne    0x460673
46065b:	68 a0 00 00 00       	push   $0xa0
460660:	8d 4d f4             	lea    -0xc(%ebp),%ecx
460663:	e8 37 12 00 00       	call   0x46189f
460668:	8d 45 f4             	lea    -0xc(%ebp),%eax
46066b:	8b ce                	mov    %esi,%ecx
46066d:	50                   	push   %eax
46066e:	e8 ae 0a 00 00       	call   0x461121
460673:	68 a1 00 00 00       	push   $0xa1
460678:	ff d3                	call   *%ebx
46067a:	b9 00 80 00 00       	mov    $0x8000,%ecx
46067f:	66 85 c1             	test   %ax,%cx
460682:	75 11                	jne    0x460695
460684:	68 a1 00 00 00       	push   $0xa1
460689:	ff d7                	call   *%edi
46068b:	b9 00 80 00 00       	mov    $0x8000,%ecx
460690:	66 85 c1             	test   %ax,%cx
460693:	74 1e                	je     0x4606b3
460695:	80 7e 1b 00          	cmpb   $0x0,0x1b(%esi)
460699:	75 18                	jne    0x4606b3
46069b:	68 a1 00 00 00       	push   $0xa1
4606a0:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4606a3:	e8 f7 11 00 00       	call   0x46189f
4606a8:	8d 45 f4             	lea    -0xc(%ebp),%eax
4606ab:	8b ce                	mov    %esi,%ecx
4606ad:	50                   	push   %eax
4606ae:	e8 6e 0a 00 00       	call   0x461121
4606b3:	6a 11                	push   $0x11
4606b5:	ff d3                	call   *%ebx
4606b7:	b9 00 80 00 00       	mov    $0x8000,%ecx
4606bc:	66 85 c1             	test   %ax,%cx
4606bf:	75 0e                	jne    0x4606cf
4606c1:	6a 11                	push   $0x11
4606c3:	ff d7                	call   *%edi
4606c5:	b9 00 80 00 00       	mov    $0x8000,%ecx
4606ca:	66 85 c1             	test   %ax,%cx
4606cd:	74 1b                	je     0x4606ea
4606cf:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
4606d3:	75 15                	jne    0x4606ea
4606d5:	6a 11                	push   $0x11
4606d7:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4606da:	e8 c0 11 00 00       	call   0x46189f
4606df:	8d 45 f4             	lea    -0xc(%ebp),%eax
4606e2:	8b ce                	mov    %esi,%ecx
4606e4:	50                   	push   %eax
4606e5:	e8 37 0a 00 00       	call   0x461121
4606ea:	6a 12                	push   $0x12
4606ec:	ff d3                	call   *%ebx
4606ee:	b9 00 80 00 00       	mov    $0x8000,%ecx
4606f3:	66 85 c1             	test   %ax,%cx
4606f6:	75 0e                	jne    0x460706
4606f8:	6a 12                	push   $0x12
4606fa:	ff d7                	call   *%edi
4606fc:	b9 00 80 00 00       	mov    $0x8000,%ecx
460701:	66 85 c1             	test   %ax,%cx
460704:	74 1b                	je     0x460721
460706:	80 7e 1d 00          	cmpb   $0x0,0x1d(%esi)
46070a:	75 15                	jne    0x460721
46070c:	6a 12                	push   $0x12
46070e:	8d 4d f4             	lea    -0xc(%ebp),%ecx
460711:	e8 89 11 00 00       	call   0x46189f
460716:	8d 45 f4             	lea    -0xc(%ebp),%eax
460719:	8b ce                	mov    %esi,%ecx
46071b:	50                   	push   %eax
46071c:	e8 00 0a 00 00       	call   0x461121
460721:	6a 5b                	push   $0x5b
460723:	ff d3                	call   *%ebx
460725:	bb 00 80 00 00       	mov    $0x8000,%ebx
46072a:	66 85 c3             	test   %ax,%bx
46072d:	75 09                	jne    0x460738
46072f:	6a 5b                	push   $0x5b
460731:	ff d7                	call   *%edi
460733:	66 85 c3             	test   %ax,%bx
460736:	74 1b                	je     0x460753
460738:	80 7e 1e 00          	cmpb   $0x0,0x1e(%esi)
46073c:	75 15                	jne    0x460753
46073e:	6a 5b                	push   $0x5b
460740:	8d 4d f4             	lea    -0xc(%ebp),%ecx
460743:	e8 57 11 00 00       	call   0x46189f
460748:	8d 45 f4             	lea    -0xc(%ebp),%eax
46074b:	8b ce                	mov    %esi,%ecx