47c67e:	8b 4d 08             	mov    0x8(%ebp),%ecx
47c681:	83 c1 04             	add    $0x4,%ecx
47c684:	83 39 00             	cmpl   $0x0,(%ecx)
47c687:	8d 49 04             	lea    0x4(%ecx),%ecx
47c68a:	0f 95 c0             	setne  %al
47c68d:	fe c8                	dec    %al
47c68f:	22 d8                	and    %al,%bl
47c691:	88 5d f0             	mov    %bl,-0x10(%ebp)
47c694:	83 ee 01             	sub    $0x1,%esi
47c697:	75 eb                	jne    0x47c684
47c699:	8b 4d f8             	mov    -0x8(%ebp),%ecx
47c69c:	8b 45 f4             	mov    -0xc(%ebp),%eax
47c69f:	ff 75 18             	push   0x18(%ebp)
47c6a2:	ff 75 f0             	push   -0x10(%ebp)
47c6a5:	ff 75 10             	push   0x10(%ebp)
47c6a8:	ff 75 e4             	push   -0x1c(%ebp)
47c6ab:	50                   	push   %eax
47c6ac:	51                   	push   %ecx
47c6ad:	e8 1d fb ff ff       	call   0x47c1cf
47c6b2:	83 c4 18             	add    $0x18,%esp
47c6b5:	5f                   	pop    %edi
47c6b6:	5e                   	pop    %esi
47c6b7:	5b                   	pop    %ebx
47c6b8:	c9                   	leave
47c6b9:	c3                   	ret
47c6ba:	8b ff                	mov    %edi,%edi
47c6bc:	55                   	push   %ebp
47c6bd:	8b ec                	mov    %esp,%ebp
47c6bf:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47c6c2:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
47c6c6:	74 17                	je     0x47c6df
47c6c8:	e8 78 fa ff ff       	call   0x47c145
47c6cd:	8b c8                	mov    %eax,%ecx
47c6cf:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
47c6d3:	99                   	cltd
47c6d4:	c1 e0 1f             	shl    $0x1f,%eax
47c6d7:	83 21 00             	andl   $0x0,(%ecx)
47c6da:	89 41 04             	mov    %eax,0x4(%ecx)
47c6dd:	5d                   	pop    %ebp
47c6de:	c3                   	ret
47c6df:	e8 86 fa ff ff       	call   0x47c16a
47c6e4:	0f b6 4d 08          	movzbl 0x8(%ebp),%ecx
47c6e8:	c1 e1 1f             	shl    $0x1f,%ecx
47c6eb:	89 08                	mov    %ecx,(%eax)
47c6ed:	5d                   	pop    %ebp
47c6ee:	c3                   	ret
47c6ef:	8b ff                	mov    %edi,%edi
47c6f1:	55                   	push   %ebp
47c6f2:	8b ec                	mov    %esp,%ebp
47c6f4:	81 ec 2c 0b 00 00    	sub    $0xb2c,%esp
47c6fa:	a1 14 40 4c 00       	mov    0x4c4014,%eax
47c6ff:	33 c5                	xor    %ebp,%eax
47c701:	89 45 fc             	mov    %eax,-0x4(%ebp)
47c704:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47c707:	33 c0                	xor    %eax,%eax
47c709:	8b 55 08             	mov    0x8(%ebp),%edx
47c70c:	53                   	push   %ebx
47c70d:	56                   	push   %esi
47c70e:	38 41 04             	cmp    %al,0x4(%ecx)
47c711:	8b 1a                	mov    (%edx),%ebx
47c713:	0f 94 c0             	sete   %al
47c716:	89 95 b4 f6 ff ff    	mov    %edx,-0x94c(%ebp)
47c71c:	48                   	dec    %eax
47c71d:	89 8d ac f6 ff ff    	mov    %ecx,-0x954(%ebp)
47c723:	83 e0 1d             	and    $0x1d,%eax
47c726:	83 c0 19             	add    $0x19,%eax
47c729:	89 85 b0 f6 ff ff    	mov    %eax,-0x950(%ebp)
47c72f:	57                   	push   %edi
47c730:	85 db                	test   %ebx,%ebx
47c732:	79 02                	jns    0x47c736
47c734:	33 db                	xor    %ebx,%ebx
47c736:	8b 42 04             	mov    0x4(%edx),%eax
47c739:	8b cb                	mov    %ebx,%ecx
47c73b:	3b d8                	cmp    %eax,%ebx
47c73d:	72 02                	jb     0x47c741
47c73f:	8b c8                	mov    %eax,%ecx
47c741:	2b d9                	sub    %ecx,%ebx
47c743:	8d 7a 08             	lea    0x8(%edx),%edi
47c746:	83 c0 08             	add    $0x8,%eax
47c749:	89 9d d0 f6 ff ff    	mov    %ebx,-0x930(%ebp)
47c74f:	83 c1 08             	add    $0x8,%ecx
47c752:	89 bd c4 f6 ff ff    	mov    %edi,-0x93c(%ebp)
47c758:	03 ca                	add    %edx,%ecx
47c75a:	03 c2                	add    %edx,%eax
47c75c:	89 8d a8 f6 ff ff    	mov    %ecx,-0x958(%ebp)
47c762:	33 db                	xor    %ebx,%ebx
47c764:	89 85 a4 f6 ff ff    	mov    %eax,-0x95c(%ebp)
47c76a:	33 f6                	xor    %esi,%esi
47c76c:	2b c1                	sub    %ecx,%eax
47c76e:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
47c774:	33 c9                	xor    %ecx,%ecx
47c776:	89 85 c0 f6 ff ff    	mov    %eax,-0x940(%ebp)
47c77c:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
47c782:	89 b5 e0 f6 ff ff    	mov    %esi,-0x920(%ebp)
47c788:	3b bd a8 f6 ff ff    	cmp    -0x958(%ebp),%edi
47c78e:	0f 84 ae 06 00 00    	je     0x47ce42
47c794:	83 f9 09             	cmp    $0x9,%ecx
47c797:	0f 85 04 01 00 00    	jne    0x47c8a1
47c79d:	85 db                	test   %ebx,%ebx
47c79f:	0f 84 86 00 00 00    	je     0x47c82b
47c7a5:	33 c9                	xor    %ecx,%ecx
47c7a7:	bf 00 ca 9a 3b       	mov    $0x3b9aca00,%edi
47c7ac:	33 f6                	xor    %esi,%esi
47c7ae:	8b 84 b5 30 fe ff ff 	mov    -0x1d0(%ebp,%esi,4),%eax
47c7b5:	f7 e7                	mul    %edi
47c7b7:	03 c1                	add    %ecx,%eax
47c7b9:	89 84 b5 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%esi,4)
47c7c0:	83 d2 00             	adc    $0x0,%edx
47c7c3:	46                   	inc    %esi
47c7c4:	8b ca                	mov    %edx,%ecx
47c7c6:	3b f3                	cmp    %ebx,%esi
47c7c8:	75 e4                	jne    0x47c7ae
47c7ca:	8b bd c4 f6 ff ff    	mov    -0x93c(%ebp),%edi
47c7d0:	85 c9                	test   %ecx,%ecx
47c7d2:	74 4b                	je     0x47c81f
47c7d4:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
47c7da:	83 f8 73             	cmp    $0x73,%eax
47c7dd:	73 16                	jae    0x47c7f5
47c7df:	89 8c 85 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%eax,4)
47c7e6:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
47c7ec:	43                   	inc    %ebx
47c7ed:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
47c7f3:	eb 30                	jmp    0x47c825
47c7f5:	33 c0                	xor    %eax,%eax
47c7f7:	50                   	push   %eax
47c7f8:	89 85 ec f6 ff ff    	mov    %eax,-0x914(%ebp)
47c7fe:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
47c804:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47c80a:	50                   	push   %eax
47c80b:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
47c811:	68 cc 01 00 00       	push   $0x1cc
47c816:	50                   	push   %eax
47c817:	e8 bf d9 ff ff       	call   0x47a1db
47c81c:	83 c4 10             	add    $0x10,%esp
47c81f:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
47c825:	8b b5 e0 f6 ff ff    	mov    -0x920(%ebp),%esi
47c82b:	85 f6                	test   %esi,%esi
47c82d:	74 6e                	je     0x47c89d
47c82f:	33 d2                	xor    %edx,%edx
47c831:	85 db                	test   %ebx,%ebx
47c833:	74 1c                	je     0x47c851
47c835:	33 c0                	xor    %eax,%eax
47c837:	01 b4 95 30 fe ff ff 	add    %esi,-0x1d0(%ebp,%edx,4)
47c83e:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
47c844:	13 c0                	adc    %eax,%eax
47c846:	42                   	inc    %edx
47c847:	8b f0                	mov    %eax,%esi
47c849:	3b d3                	cmp    %ebx,%edx
47c84b:	75 e8                	jne    0x47c835
47c84d:	85 c0                	test   %eax,%eax
47c84f:	74 4c                	je     0x47c89d
47c851:	83 fb 73             	cmp    $0x73,%ebx
47c854:	73 16                	jae    0x47c86c
47c856:	89 b4 9d 30 fe ff ff 	mov    %esi,-0x1d0(%ebp,%ebx,4)
47c85d:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
47c863:	43                   	inc    %ebx
47c864:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
47c86a:	eb 31                	jmp    0x47c89d
47c86c:	83 a5 ec f6 ff ff 00 	andl   $0x0,-0x914(%ebp)
47c873:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47c879:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
47c880:	6a 00                	push   $0x0
47c882:	50                   	push   %eax
47c883:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
47c889:	68 cc 01 00 00       	push   $0x1cc
47c88e:	50                   	push   %eax
47c88f:	e8 47 d9 ff ff       	call   0x47a1db
47c894:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
47c89a:	83 c4 10             	add    $0x10,%esp
47c89d:	33 f6                	xor    %esi,%esi
47c89f:	33 c9                	xor    %ecx,%ecx
47c8a1:	0f b6 07             	movzbl (%edi),%eax
47c8a4:	6b f6 0a             	imul   $0xa,%esi,%esi
47c8a7:	03 f0                	add    %eax,%esi
47c8a9:	41                   	inc    %ecx
47c8aa:	47                   	inc    %edi
47c8ab:	89 b5 e0 f6 ff ff    	mov    %esi,-0x920(%ebp)
47c8b1:	89 bd c4 f6 ff ff    	mov    %edi,-0x93c(%ebp)
47c8b7:	3b bd a8 f6 ff ff    	cmp    -0x958(%ebp),%edi
47c8bd:	0f 85 d1 fe ff ff    	jne    0x47c794
47c8c3:	89 8d bc f6 ff ff    	mov    %ecx,-0x944(%ebp)
47c8c9:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
47c8cf:	85 c9                	test   %ecx,%ecx
47c8d1:	0f 84 6f 05 00 00    	je     0x47ce46
47c8d7:	6a 0a                	push   $0xa
47c8d9:	33 d2                	xor    %edx,%edx
47c8db:	8b c1                	mov    %ecx,%eax
47c8dd:	5e                   	pop    %esi
47c8de:	f7 f6                	div    %esi
47c8e0:	89 85 d4 f6 ff ff    	mov    %eax,-0x92c(%ebp)
47c8e6:	85 c0                	test   %eax,%eax
47c8e8:	0f 84 de 03 00 00    	je     0x47cccc
47c8ee:	83 f8 26             	cmp    $0x26,%eax
47c8f1:	76 03                	jbe    0x47c8f6
47c8f3:	6a 26                	push   $0x26
47c8f5:	58                   	pop    %eax
47c8f6:	0f b6 0c 85 7e 25 4a 	movzbl 0x4a257e(,%eax,4),%ecx
47c8fd:	00
47c8fe:	0f b6 34 85 7f 25 4a 	movzbl 0x4a257f(,%eax,4),%esi
47c905:	00
47c906:	8b f9                	mov    %ecx,%edi
47c908:	89 85 dc f6 ff ff    	mov    %eax,-0x924(%ebp)
47c90e:	c1 e7 02             	shl    $0x2,%edi
47c911:	57                   	push   %edi
47c912:	8d 04 31             	lea    (%ecx,%esi,1),%eax
47c915:	89 85 ec f6 ff ff    	mov    %eax,-0x914(%ebp)
47c91b:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47c921:	6a 00                	push   $0x0
47c923:	50                   	push   %eax
47c924:	e8 87 f2 fe ff       	call   0x46bbb0
47c929:	8b c6                	mov    %esi,%eax
47c92b:	c1 e0 02             	shl    $0x2,%eax
47c92e:	50                   	push   %eax
47c92f:	8b 85 dc f6 ff ff    	mov    -0x924(%ebp),%eax
47c935:	0f b7 04 85 7c 25 4a 	movzwl 0x4a257c(,%eax,4),%eax
47c93c:	00
47c93d:	8d 04 85 78 1c 4a 00 	lea    0x4a1c78(,%eax,4),%eax
47c944:	50                   	push   %eax
47c945:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47c94b:	03 c7                	add    %edi,%eax
47c94d:	50                   	push   %eax
47c94e:	e8 cd ec fe ff       	call   0x46b620
47c953:	8b 85 ec f6 ff ff    	mov    -0x914(%ebp),%eax
47c959:	33 c9                	xor    %ecx,%ecx
47c95b:	41                   	inc    %ecx
47c95c:	83 c4 18             	add    $0x18,%esp
47c95f:	3b c1                	cmp    %ecx,%eax
47c961:	0f 87 e1 00 00 00    	ja     0x47ca48
47c967:	8b bd f0 f6 ff ff    	mov    -0x910(%ebp),%edi
47c96d:	85 ff                	test   %edi,%edi
47c96f:	75 43                	jne    0x47c9b4
47c971:	33 c0                	xor    %eax,%eax
47c973:	50                   	push   %eax
47c974:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
47c97a:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
47c980:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
47c986:	50                   	push   %eax
47c987:	68 cc 01 00 00       	push   $0x1cc
47c98c:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
47c992:	50                   	push   %eax
47c993:	e8 43 d8 ff ff       	call   0x47a1db
47c998:	83 c4 10             	add    $0x10,%esp
47c99b:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
47c9a1:	89 8d e8 f6 ff ff    	mov    %ecx,-0x918(%ebp)
47c9a7:	b0 01                	mov    $0x1,%al
47c9a9:	8b 9d e8 f6 ff ff    	mov    -0x918(%ebp),%ebx
47c9af:	e9 f6 02 00 00       	jmp    0x47ccaa
47c9b4:	3b f9                	cmp    %ecx,%edi
47c9b6:	75 04                	jne    0x47c9bc
47c9b8:	8a c1                	mov    %cl,%al
47c9ba:	eb ed                	jmp    0x47c9a9
47c9bc:	85 db                	test   %ebx,%ebx
47c9be:	74 f8                	je     0x47c9b8
47c9c0:	33 c9                	xor    %ecx,%ecx
47c9c2:	33 f6                	xor    %esi,%esi
47c9c4:	8b c7                	mov    %edi,%eax
47c9c6:	f7 a4 b5 30 fe ff ff 	mull   -0x1d0(%ebp,%esi,4)
47c9cd:	03 c1                	add    %ecx,%eax
47c9cf:	89 84 b5 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%esi,4)
47c9d6:	83 d2 00             	adc    $0x0,%edx
47c9d9:	46                   	inc    %esi
47c9da:	8b ca                	mov    %edx,%ecx
47c9dc:	3b f3                	cmp    %ebx,%esi
47c9de:	75 e4                	jne    0x47c9c4
47c9e0:	85 c9                	test   %ecx,%ecx
47c9e2:	74 b7                	je     0x47c99b
47c9e4:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
47c9ea:	83 f8 73             	cmp    $0x73,%eax
47c9ed:	73 1c                	jae    0x47ca0b
47c9ef:	89 8c 85 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%eax,4)
47c9f6:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
47c9fc:	40                   	inc    %eax
47c9fd:	89 85 e8 f6 ff ff    	mov    %eax,-0x918(%ebp)
47ca03:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
47ca09:	eb 9c                	jmp    0x47c9a7
47ca0b:	33 db                	xor    %ebx,%ebx
47ca0d:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47ca13:	53                   	push   %ebx
47ca14:	50                   	push   %eax
47ca15:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
47ca1b:	89 9d ec f6 ff ff    	mov    %ebx,-0x914(%ebp)
47ca21:	68 cc 01 00 00       	push   $0x1cc
47ca26:	50                   	push   %eax
47ca27:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
47ca2d:	e8 a9 d7 ff ff       	call   0x47a1db
47ca32:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
47ca38:	83 c4 10             	add    $0x10,%esp
47ca3b:	8a c3                	mov    %bl,%al
47ca3d:	89 8d e8 f6 ff ff    	mov    %ecx,-0x918(%ebp)
47ca43:	e9 61 ff ff ff       	jmp    0x47c9a9
47ca48:	3b d9                	cmp    %ecx,%ebx
47ca4a:	0f 87 ac 00 00 00    	ja     0x47cafc
47ca50:	8b 9d 30 fe ff ff    	mov    -0x1d0(%ebp),%ebx
47ca56:	be cc 01 00 00       	mov    $0x1cc,%esi
47ca5b:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
47ca61:	c1 e0 02             	shl    $0x2,%eax
47ca64:	50                   	push   %eax
47ca65:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47ca6b:	50                   	push   %eax
47ca6c:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
47ca72:	56                   	push   %esi
47ca73:	50                   	push   %eax
47ca74:	e8 62 d7 ff ff       	call   0x47a1db
47ca79:	83 c4 10             	add    $0x10,%esp
47ca7c:	33 c0                	xor    %eax,%eax
47ca7e:	85 db                	test   %ebx,%ebx
47ca80:	75 1a                	jne    0x47ca9c
47ca82:	50                   	push   %eax
47ca83:	89 85 ec f6 ff ff    	mov    %eax,-0x914(%ebp)
47ca89:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
47ca8f:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
47ca95:	50                   	push   %eax
47ca96:	56                   	push   %esi
47ca97:	e9 f0 fe ff ff       	jmp    0x47c98c
47ca9c:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
47caa2:	40                   	inc    %eax
47caa3:	89 8d e8 f6 ff ff    	mov    %ecx,-0x918(%ebp)
47caa9:	3b d8                	cmp    %eax,%ebx
47caab:	0f 84 f8 fe ff ff    	je     0x47c9a9
47cab1:	85 c9                	test   %ecx,%ecx
47cab3:	0f 84 f0 fe ff ff    	je     0x47c9a9
47cab9:	33 f6                	xor    %esi,%esi
47cabb:	33 ff                	xor    %edi,%edi
47cabd:	8b c3                	mov    %ebx,%eax
47cabf:	f7 a4 bd 30 fe ff ff 	mull   -0x1d0(%ebp,%edi,4)
47cac6:	03 c6                	add    %esi,%eax
47cac8:	89 84 bd 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%edi,4)
47cacf:	83 d2 00             	adc    $0x0,%edx
47cad2:	47                   	inc    %edi
47cad3:	8b f2                	mov    %edx,%esi
47cad5:	3b f9                	cmp    %ecx,%edi
47cad7:	75 e4                	jne    0x47cabd
47cad9:	85 f6                	test   %esi,%esi
47cadb:	0f 84 ba fe ff ff    	je     0x47c99b
47cae1:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
47cae7:	83 f8 73             	cmp    $0x73,%eax
47caea:	0f 83 1b ff ff ff    	jae    0x47ca0b
47caf0:	89 b4 85 30 fe ff ff 	mov    %esi,-0x1d0(%ebp,%eax,4)
47caf7:	e9 fa fe ff ff       	jmp    0x47c9f6
47cafc:	3b c3                	cmp    %ebx,%eax
47cafe:	8d 95 f0 f6 ff ff    	lea    -0x910(%ebp),%edx
47cb04:	0f 92 c1             	setb   %cl
47cb07:	72 06                	jb     0x47cb0f
47cb09:	8d 95 30 fe ff ff    	lea    -0x1d0(%ebp),%edx
47cb0f:	89 95 c8 f6 ff ff    	mov    %edx,-0x938(%ebp)
47cb15:	84 c9                	test   %cl,%cl
47cb17:	74 10                	je     0x47cb29
47cb19:	8d b5 30 fe ff ff    	lea    -0x1d0(%ebp),%esi
47cb1f:	8b c8                	mov    %eax,%ecx
47cb21:	89 b5 c4 f6 ff ff    	mov    %esi,-0x93c(%ebp)