470563:	83 ce ff             	or     $0xffffffff,%esi
470566:	eb 1a                	jmp    0x470582
470568:	f6 c3 02             	test   $0x2,%bl
47056b:	74 07                	je     0x470574
47056d:	bb 00 00 00 80       	mov    $0x80000000,%ebx
470572:	eb 10                	jmp    0x470584
470574:	bb ff ff ff 7f       	mov    $0x7fffffff,%ebx
470579:	eb 09                	jmp    0x470584
47057b:	f6 c3 02             	test   $0x2,%bl
47057e:	74 02                	je     0x470582
470580:	f7 de                	neg    %esi
470582:	8b de                	mov    %esi,%ebx
470584:	80 7d e4 00          	cmpb   $0x0,-0x1c(%ebp)
470588:	5e                   	pop    %esi
470589:	0f 84 20 fe ff ff    	je     0x4703af
47058f:	8b 45 d8             	mov    -0x28(%ebp),%eax
470592:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
470599:	e9 11 fe ff ff       	jmp    0x4703af
47059e:	8b ff                	mov    %edi,%edi
4705a0:	55                   	push   %ebp
4705a1:	8b ec                	mov    %esp,%ebp
4705a3:	83 ec 1c             	sub    $0x1c,%esp
4705a6:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4705a9:	53                   	push   %ebx
4705aa:	57                   	push   %edi
4705ab:	e8 7f 2e fe ff       	call   0x45342f
4705b0:	84 c0                	test   %al,%al
4705b2:	74 23                	je     0x4705d7
4705b4:	8b 45 14             	mov    0x14(%ebp),%eax
4705b7:	6a 02                	push   $0x2
4705b9:	5f                   	pop    %edi
4705ba:	85 c0                	test   %eax,%eax
4705bc:	74 2f                	je     0x4705ed
4705be:	3b c7                	cmp    %edi,%eax
4705c0:	7c 05                	jl     0x4705c7
4705c2:	83 f8 24             	cmp    $0x24,%eax
4705c5:	7e 26                	jle    0x4705ed
4705c7:	e8 63 c8 fd ff       	call   0x44ce2f
4705cc:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4705d2:	e8 ff c6 fd ff       	call   0x44ccd6
4705d7:	33 db                	xor    %ebx,%ebx
4705d9:	8b 55 10             	mov    0x10(%ebp),%edx
4705dc:	85 d2                	test   %edx,%edx
4705de:	74 05                	je     0x4705e5
4705e0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4705e3:	89 0a                	mov    %ecx,(%edx)
4705e5:	5f                   	pop    %edi
4705e6:	8b c3                	mov    %ebx,%eax
4705e8:	5b                   	pop    %ebx
4705e9:	8b e5                	mov    %ebp,%esp
4705eb:	5d                   	pop    %ebp
4705ec:	c3                   	ret
4705ed:	56                   	push   %esi
4705ee:	ff 75 08             	push   0x8(%ebp)
4705f1:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4705f4:	e8 0f ea fd ff       	call   0x44f008
4705f9:	8b 45 0c             	mov    0xc(%ebp),%eax
4705fc:	33 f6                	xor    %esi,%esi
4705fe:	89 75 f8             	mov    %esi,-0x8(%ebp)
470601:	89 45 f4             	mov    %eax,-0xc(%ebp)
470604:	eb 03                	jmp    0x470609
470606:	8b 45 0c             	mov    0xc(%ebp),%eax
470609:	0f b7 30             	movzwl (%eax),%esi
47060c:	03 c7                	add    %edi,%eax
47060e:	6a 08                	push   $0x8
470610:	56                   	push   %esi
470611:	89 45 0c             	mov    %eax,0xc(%ebp)
470614:	e8 d7 1d 00 00       	call   0x4723f0
470619:	59                   	pop    %ecx
47061a:	59                   	pop    %ecx
47061b:	85 c0                	test   %eax,%eax
47061d:	75 e7                	jne    0x470606
47061f:	33 db                	xor    %ebx,%ebx
470621:	38 5d 18             	cmp    %bl,0x18(%ebp)
470624:	0f 95 c3             	setne  %bl
470627:	66 83 fe 2d          	cmp    $0x2d,%si
47062b:	75 04                	jne    0x470631
47062d:	0b df                	or     %edi,%ebx
47062f:	eb 06                	jmp    0x470637
470631:	66 83 fe 2b          	cmp    $0x2b,%si
470635:	75 0e                	jne    0x470645
470637:	8b 7d 0c             	mov    0xc(%ebp),%edi
47063a:	0f b7 37             	movzwl (%edi),%esi
47063d:	83 c7 02             	add    $0x2,%edi
470640:	89 7d 0c             	mov    %edi,0xc(%ebp)
470643:	eb 03                	jmp    0x470648
470645:	8b 7d 0c             	mov    0xc(%ebp),%edi
470648:	8b 4d 14             	mov    0x14(%ebp),%ecx
47064b:	c7 45 fc 19 00 00 00 	movl   $0x19,-0x4(%ebp)
470652:	6a 30                	push   $0x30
470654:	58                   	pop    %eax
470655:	6a 10                	push   $0x10
470657:	5a                   	pop    %edx
470658:	85 c9                	test   %ecx,%ecx
47065a:	74 08                	je     0x470664
47065c:	3b ca                	cmp    %edx,%ecx
47065e:	0f 85 db 02 00 00    	jne    0x47093f
470664:	66 3b f0             	cmp    %ax,%si
470667:	0f 82 55 02 00 00    	jb     0x4708c2
47066d:	6a 3a                	push   $0x3a
47066f:	58                   	pop    %eax
470670:	66 3b f0             	cmp    %ax,%si
470673:	73 0b                	jae    0x470680
470675:	0f b7 c6             	movzwl %si,%eax
470678:	83 e8 30             	sub    $0x30,%eax
47067b:	e9 3d 02 00 00       	jmp    0x4708bd
470680:	b8 10 ff 00 00       	mov    $0xff10,%eax
470685:	66 3b f0             	cmp    %ax,%si
470688:	0f 83 18 02 00 00    	jae    0x4708a6
47068e:	b8 60 06 00 00       	mov    $0x660,%eax
470693:	66 3b f0             	cmp    %ax,%si
470696:	0f 82 26 02 00 00    	jb     0x4708c2
47069c:	83 c0 0a             	add    $0xa,%eax
47069f:	66 3b f0             	cmp    %ax,%si
4706a2:	73 0d                	jae    0x4706b1
4706a4:	0f b7 c6             	movzwl %si,%eax
4706a7:	2d 60 06 00 00       	sub    $0x660,%eax
4706ac:	e9 0c 02 00 00       	jmp    0x4708bd
4706b1:	b8 f0 06 00 00       	mov    $0x6f0,%eax
4706b6:	66 3b f0             	cmp    %ax,%si
4706b9:	0f 82 03 02 00 00    	jb     0x4708c2
4706bf:	83 c0 0a             	add    $0xa,%eax
4706c2:	66 3b f0             	cmp    %ax,%si
4706c5:	73 0d                	jae    0x4706d4
4706c7:	0f b7 c6             	movzwl %si,%eax
4706ca:	2d f0 06 00 00       	sub    $0x6f0,%eax
4706cf:	e9 e9 01 00 00       	jmp    0x4708bd
4706d4:	b8 66 09 00 00       	mov    $0x966,%eax
4706d9:	66 3b f0             	cmp    %ax,%si
4706dc:	0f 82 e0 01 00 00    	jb     0x4708c2
4706e2:	83 c0 0a             	add    $0xa,%eax
4706e5:	66 3b f0             	cmp    %ax,%si
4706e8:	73 0d                	jae    0x4706f7
4706ea:	0f b7 c6             	movzwl %si,%eax
4706ed:	2d 66 09 00 00       	sub    $0x966,%eax
4706f2:	e9 c6 01 00 00       	jmp    0x4708bd
4706f7:	b8 e6 09 00 00       	mov    $0x9e6,%eax
4706fc:	66 3b f0             	cmp    %ax,%si
4706ff:	0f 82 bd 01 00 00    	jb     0x4708c2
470705:	83 c0 0a             	add    $0xa,%eax
470708:	66 3b f0             	cmp    %ax,%si
47070b:	73 0d                	jae    0x47071a
47070d:	0f b7 c6             	movzwl %si,%eax
470710:	2d e6 09 00 00       	sub    $0x9e6,%eax
470715:	e9 a3 01 00 00       	jmp    0x4708bd
47071a:	b8 66 0a 00 00       	mov    $0xa66,%eax
47071f:	66 3b f0             	cmp    %ax,%si
470722:	0f 82 9a 01 00 00    	jb     0x4708c2
470728:	83 c0 0a             	add    $0xa,%eax
47072b:	66 3b f0             	cmp    %ax,%si
47072e:	73 0d                	jae    0x47073d
470730:	0f b7 c6             	movzwl %si,%eax
470733:	2d 66 0a 00 00       	sub    $0xa66,%eax
470738:	e9 80 01 00 00       	jmp    0x4708bd
47073d:	b8 e6 0a 00 00       	mov    $0xae6,%eax
470742:	66 3b f0             	cmp    %ax,%si
470745:	0f 82 77 01 00 00    	jb     0x4708c2
47074b:	83 c0 0a             	add    $0xa,%eax
47074e:	66 3b f0             	cmp    %ax,%si
470751:	73 0d                	jae    0x470760
470753:	0f b7 c6             	movzwl %si,%eax
470756:	2d e6 0a 00 00       	sub    $0xae6,%eax
47075b:	e9 5d 01 00 00       	jmp    0x4708bd
470760:	b8 66 0b 00 00       	mov    $0xb66,%eax
470765:	66 3b f0             	cmp    %ax,%si
470768:	0f 82 54 01 00 00    	jb     0x4708c2
47076e:	83 c0 0a             	add    $0xa,%eax
470771:	66 3b f0             	cmp    %ax,%si
470774:	73 0d                	jae    0x470783
470776:	0f b7 c6             	movzwl %si,%eax
470779:	2d 66 0b 00 00       	sub    $0xb66,%eax
47077e:	e9 3a 01 00 00       	jmp    0x4708bd
470783:	b8 66 0c 00 00       	mov    $0xc66,%eax
470788:	66 3b f0             	cmp    %ax,%si
47078b:	0f 82 31 01 00 00    	jb     0x4708c2
470791:	83 c0 0a             	add    $0xa,%eax
470794:	66 3b f0             	cmp    %ax,%si
470797:	73 0d                	jae    0x4707a6
470799:	0f b7 c6             	movzwl %si,%eax
47079c:	2d 66 0c 00 00       	sub    $0xc66,%eax
4707a1:	e9 17 01 00 00       	jmp    0x4708bd
4707a6:	b8 e6 0c 00 00       	mov    $0xce6,%eax
4707ab:	66 3b f0             	cmp    %ax,%si
4707ae:	0f 82 0e 01 00 00    	jb     0x4708c2
4707b4:	83 c0 0a             	add    $0xa,%eax
4707b7:	66 3b f0             	cmp    %ax,%si
4707ba:	73 0d                	jae    0x4707c9
4707bc:	0f b7 c6             	movzwl %si,%eax
4707bf:	2d e6 0c 00 00       	sub    $0xce6,%eax
4707c4:	e9 f4 00 00 00       	jmp    0x4708bd
4707c9:	b8 66 0d 00 00       	mov    $0xd66,%eax
4707ce:	66 3b f0             	cmp    %ax,%si
4707d1:	0f 82 eb 00 00 00    	jb     0x4708c2
4707d7:	83 c0 0a             	add    $0xa,%eax
4707da:	66 3b f0             	cmp    %ax,%si
4707dd:	73 0d                	jae    0x4707ec
4707df:	0f b7 c6             	movzwl %si,%eax
4707e2:	2d 66 0d 00 00       	sub    $0xd66,%eax
4707e7:	e9 d1 00 00 00       	jmp    0x4708bd
4707ec:	b8 50 0e 00 00       	mov    $0xe50,%eax
4707f1:	66 3b f0             	cmp    %ax,%si
4707f4:	0f 82 c8 00 00 00    	jb     0x4708c2
4707fa:	83 c0 0a             	add    $0xa,%eax
4707fd:	66 3b f0             	cmp    %ax,%si
470800:	73 0d                	jae    0x47080f
470802:	0f b7 c6             	movzwl %si,%eax
470805:	2d 50 0e 00 00       	sub    $0xe50,%eax
47080a:	e9 ae 00 00 00       	jmp    0x4708bd
47080f:	b8 d0 0e 00 00       	mov    $0xed0,%eax
470814:	66 3b f0             	cmp    %ax,%si
470817:	0f 82 a5 00 00 00    	jb     0x4708c2
47081d:	83 c0 0a             	add    $0xa,%eax
470820:	66 3b f0             	cmp    %ax,%si
470823:	73 0d                	jae    0x470832
470825:	0f b7 c6             	movzwl %si,%eax
470828:	2d d0 0e 00 00       	sub    $0xed0,%eax
47082d:	e9 8b 00 00 00       	jmp    0x4708bd
470832:	b8 20 0f 00 00       	mov    $0xf20,%eax
470837:	66 3b f0             	cmp    %ax,%si
47083a:	0f 82 82 00 00 00    	jb     0x4708c2
470840:	83 c0 0a             	add    $0xa,%eax
470843:	66 3b f0             	cmp    %ax,%si
470846:	73 0a                	jae    0x470852
470848:	0f b7 c6             	movzwl %si,%eax
47084b:	2d 20 0f 00 00       	sub    $0xf20,%eax
470850:	eb 6b                	jmp    0x4708bd
470852:	b8 40 10 00 00       	mov    $0x1040,%eax
470857:	66 3b f0             	cmp    %ax,%si
47085a:	72 66                	jb     0x4708c2
47085c:	83 c0 0a             	add    $0xa,%eax
47085f:	66 3b f0             	cmp    %ax,%si
470862:	73 0a                	jae    0x47086e
470864:	0f b7 c6             	movzwl %si,%eax
470867:	2d 40 10 00 00       	sub    $0x1040,%eax
47086c:	eb 4f                	jmp    0x4708bd
47086e:	b8 e0 17 00 00       	mov    $0x17e0,%eax
470873:	66 3b f0             	cmp    %ax,%si
470876:	72 4a                	jb     0x4708c2
470878:	83 c0 0a             	add    $0xa,%eax
47087b:	66 3b f0             	cmp    %ax,%si
47087e:	73 0a                	jae    0x47088a
470880:	0f b7 c6             	movzwl %si,%eax
470883:	2d e0 17 00 00       	sub    $0x17e0,%eax
470888:	eb 33                	jmp    0x4708bd
47088a:	b8 10 18 00 00       	mov    $0x1810,%eax
47088f:	66 3b f0             	cmp    %ax,%si
470892:	72 2e                	jb     0x4708c2
470894:	83 c0 0a             	add    $0xa,%eax
470897:	66 3b f0             	cmp    %ax,%si
47089a:	73 26                	jae    0x4708c2
47089c:	0f b7 c6             	movzwl %si,%eax
47089f:	2d 10 18 00 00       	sub    $0x1810,%eax
4708a4:	eb 17                	jmp    0x4708bd
4708a6:	b8 1a ff 00 00       	mov    $0xff1a,%eax
4708ab:	66 3b f0             	cmp    %ax,%si
4708ae:	73 0a                	jae    0x4708ba
4708b0:	0f b7 c6             	movzwl %si,%eax
4708b3:	2d 10 ff 00 00       	sub    $0xff10,%eax
4708b8:	eb 03                	jmp    0x4708bd
4708ba:	83 c8 ff             	or     $0xffffffff,%eax
4708bd:	83 f8 ff             	cmp    $0xffffffff,%eax
4708c0:	75 30                	jne    0x4708f2
4708c2:	6a 41                	push   $0x41
4708c4:	58                   	pop    %eax
4708c5:	66 3b c6             	cmp    %si,%ax
4708c8:	77 08                	ja     0x4708d2
4708ca:	6a 5a                	push   $0x5a
4708cc:	58                   	pop    %eax
4708cd:	66 3b f0             	cmp    %ax,%si
4708d0:	76 09                	jbe    0x4708db
4708d2:	8d 46 9f             	lea    -0x61(%esi),%eax
4708d5:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
4708d9:	77 14                	ja     0x4708ef
4708db:	8d 46 9f             	lea    -0x61(%esi),%eax
4708de:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
4708e2:	0f b7 c6             	movzwl %si,%eax
4708e5:	77 03                	ja     0x4708ea
4708e7:	83 e8 20             	sub    $0x20,%eax
4708ea:	83 c0 c9             	add    $0xffffffc9,%eax
4708ed:	eb 03                	jmp    0x4708f2
4708ef:	83 c8 ff             	or     $0xffffffff,%eax
4708f2:	85 c0                	test   %eax,%eax
4708f4:	74 0d                	je     0x470903
4708f6:	85 c9                	test   %ecx,%ecx
4708f8:	75 45                	jne    0x47093f
4708fa:	c7 45 14 0a 00 00 00 	movl   $0xa,0x14(%ebp)
470901:	eb 3c                	jmp    0x47093f
470903:	0f b7 07             	movzwl (%edi),%eax
470906:	83 c7 02             	add    $0x2,%edi
470909:	89 7d 0c             	mov    %edi,0xc(%ebp)
47090c:	83 f8 78             	cmp    $0x78,%eax
47090f:	74 1e                	je     0x47092f
470911:	83 f8 58             	cmp    $0x58,%eax
470914:	74 19                	je     0x47092f
470916:	85 c9                	test   %ecx,%ecx
470918:	75 07                	jne    0x470921
47091a:	c7 45 14 08 00 00 00 	movl   $0x8,0x14(%ebp)
470921:	50                   	push   %eax
470922:	8d 4d 0c             	lea    0xc(%ebp),%ecx
470925:	e8 be 2a fe ff       	call   0x4533e8
47092a:	8b 7d 0c             	mov    0xc(%ebp),%edi
47092d:	eb 10                	jmp    0x47093f
47092f:	85 c9                	test   %ecx,%ecx
470931:	75 03                	jne    0x470936
470933:	89 55 14             	mov    %edx,0x14(%ebp)
470936:	0f b7 37             	movzwl (%edi),%esi
470939:	83 c7 02             	add    $0x2,%edi
47093c:	89 7d 0c             	mov    %edi,0xc(%ebp)
47093f:	83 c8 ff             	or     $0xffffffff,%eax
470942:	33 d2                	xor    %edx,%edx
470944:	f7 75 14             	divl   0x14(%ebp)
470947:	8b c8                	mov    %eax,%ecx
470949:	6a 30                	push   $0x30
47094b:	58                   	pop    %eax
47094c:	66 3b f0             	cmp    %ax,%si
47094f:	0f 82 55 02 00 00    	jb     0x470baa
470955:	6a 3a                	push   $0x3a
470957:	58                   	pop    %eax
470958:	66 3b f0             	cmp    %ax,%si
47095b:	73 0b                	jae    0x470968
47095d:	0f b7 c6             	movzwl %si,%eax
470960:	83 e8 30             	sub    $0x30,%eax
470963:	e9 3d 02 00 00       	jmp    0x470ba5
470968:	b8 10 ff 00 00       	mov    $0xff10,%eax
47096d:	66 3b f0             	cmp    %ax,%si
470970:	0f 83 18 02 00 00    	jae    0x470b8e
470976:	b8 60 06 00 00       	mov    $0x660,%eax
47097b:	66 3b f0             	cmp    %ax,%si
47097e:	0f 82 26 02 00 00    	jb     0x470baa
470984:	83 c0 0a             	add    $0xa,%eax
470987:	66 3b f0             	cmp    %ax,%si
47098a:	73 0d                	jae    0x470999
47098c:	0f b7 c6             	movzwl %si,%eax
47098f:	2d 60 06 00 00       	sub    $0x660,%eax
470994:	e9 0c 02 00 00       	jmp    0x470ba5
470999:	b8 f0 06 00 00       	mov    $0x6f0,%eax
47099e:	66 3b f0             	cmp    %ax,%si
4709a1:	0f 82 03 02 00 00    	jb     0x470baa
4709a7:	83 c0 0a             	add    $0xa,%eax
4709aa:	66 3b f0             	cmp    %ax,%si
4709ad:	73 0d                	jae    0x4709bc
4709af:	0f b7 c6             	movzwl %si,%eax
4709b2:	2d f0 06 00 00       	sub    $0x6f0,%eax
4709b7:	e9 e9 01 00 00       	jmp    0x470ba5
4709bc:	b8 66 09 00 00       	mov    $0x966,%eax
4709c1:	66 3b f0             	cmp    %ax,%si
4709c4:	0f 82 e0 01 00 00    	jb     0x470baa
4709ca:	83 c0 0a             	add    $0xa,%eax
4709cd:	66 3b f0             	cmp    %ax,%si
4709d0:	73 0d                	jae    0x4709df