47b658:	8b ec                	mov    %esp,%ebp
47b65a:	8b 45 08             	mov    0x8(%ebp),%eax
47b65d:	8b 00                	mov    (%eax),%eax
47b65f:	89 01                	mov    %eax,(%ecx)
47b661:	8b c1                	mov    %ecx,%eax
47b663:	5d                   	pop    %ebp
47b664:	c2 04 00             	ret    $0x4
47b667:	8b ff                	mov    %edi,%edi
47b669:	55                   	push   %ebp
47b66a:	8b ec                	mov    %esp,%ebp
47b66c:	8b 45 08             	mov    0x8(%ebp),%eax
47b66f:	8b 00                	mov    (%eax),%eax
47b671:	89 01                	mov    %eax,(%ecx)
47b673:	8b c1                	mov    %ecx,%eax
47b675:	5d                   	pop    %ebp
47b676:	c2 04 00             	ret    $0x4
47b679:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47b67e:	8b c8                	mov    %eax,%ecx
47b680:	33 05 1c c2 4b 00    	xor    0x4bc21c,%eax
47b686:	83 e1 1f             	and    $0x1f,%ecx
47b689:	d3 c8                	ror    %cl,%eax
47b68b:	c3                   	ret
47b68c:	ff 31                	push   (%ecx)
47b68e:	e8 c1 c8 fe ff       	call   0x467f54
47b693:	59                   	pop    %ecx
47b694:	c3                   	ret
47b695:	ff 31                	push   (%ecx)
47b697:	e8 70 c8 fe ff       	call   0x467f0c
47b69c:	59                   	pop    %ecx
47b69d:	c3                   	ret
47b69e:	6a 14                	push   $0x14
47b6a0:	68 80 4f 4b 00       	push   $0x4b4f80
47b6a5:	e8 86 e2 00 00       	call   0x489930
47b6aa:	33 f6                	xor    %esi,%esi
47b6ac:	89 75 e0             	mov    %esi,-0x20(%ebp)
47b6af:	89 75 dc             	mov    %esi,-0x24(%ebp)
47b6b2:	6a 03                	push   $0x3
47b6b4:	e8 53 c8 fe ff       	call   0x467f0c
47b6b9:	59                   	pop    %ecx
47b6ba:	89 75 fc             	mov    %esi,-0x4(%ebp)
47b6bd:	8b 15 94 80 4b 00    	mov    0x4b8094,%edx
47b6c3:	8b c2                	mov    %edx,%eax
47b6c5:	8b f2                	mov    %edx,%esi
47b6c7:	83 e0 1f             	and    $0x1f,%eax
47b6ca:	8b c8                	mov    %eax,%ecx
47b6cc:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
47b6d0:	75 0f                	jne    0x47b6e1
47b6d2:	bb 14 c2 4b 00       	mov    $0x4bc214,%ebx
47b6d7:	33 35 14 c2 4b 00    	xor    0x4bc214,%esi
47b6dd:	6a 02                	push   $0x2
47b6df:	eb 0d                	jmp    0x47b6ee
47b6e1:	bb 18 c2 4b 00       	mov    $0x4bc218,%ebx
47b6e6:	33 35 18 c2 4b 00    	xor    0x4bc218,%esi
47b6ec:	6a 15                	push   $0x15
47b6ee:	d3 ce                	ror    %cl,%esi
47b6f0:	89 75 e0             	mov    %esi,-0x20(%ebp)
47b6f3:	5f                   	pop    %edi
47b6f4:	89 7d dc             	mov    %edi,-0x24(%ebp)
47b6f7:	85 f6                	test   %esi,%esi
47b6f9:	74 12                	je     0x47b70d
47b6fb:	83 fe 01             	cmp    $0x1,%esi
47b6fe:	74 0d                	je     0x47b70d
47b700:	6a 20                	push   $0x20
47b702:	59                   	pop    %ecx
47b703:	2b c8                	sub    %eax,%ecx
47b705:	33 c0                	xor    %eax,%eax
47b707:	d3 c8                	ror    %cl,%eax
47b709:	33 c2                	xor    %edx,%eax
47b70b:	89 03                	mov    %eax,(%ebx)
47b70d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
47b714:	e8 0e 00 00 00       	call   0x47b727
47b719:	85 f6                	test   %esi,%esi
47b71b:	75 13                	jne    0x47b730
47b71d:	33 c0                	xor    %eax,%eax
47b71f:	eb 23                	jmp    0x47b744
47b721:	8b 75 e0             	mov    -0x20(%ebp),%esi
47b724:	8b 7d dc             	mov    -0x24(%ebp),%edi
47b727:	6a 03                	push   $0x3
47b729:	e8 26 c8 fe ff       	call   0x467f54
47b72e:	59                   	pop    %ecx
47b72f:	c3                   	ret
47b730:	83 fe 01             	cmp    $0x1,%esi
47b733:	74 0c                	je     0x47b741
47b735:	57                   	push   %edi
47b736:	8b ce                	mov    %esi,%ecx
47b738:	ff 15 54 43 49 00    	call   *0x494354
47b73e:	ff d6                	call   *%esi
47b740:	59                   	pop    %ecx
47b741:	33 c0                	xor    %eax,%eax
47b743:	40                   	inc    %eax
47b744:	e8 30 e2 00 00       	call   0x489979
47b749:	c2 04 00             	ret    $0x4
47b74c:	8b ff                	mov    %edi,%edi
47b74e:	55                   	push   %ebp
47b74f:	8b ec                	mov    %esp,%ebp
47b751:	8b 45 08             	mov    0x8(%ebp),%eax
47b754:	48                   	dec    %eax
47b755:	83 e8 01             	sub    $0x1,%eax
47b758:	74 2d                	je     0x47b787
47b75a:	83 e8 04             	sub    $0x4,%eax
47b75d:	74 13                	je     0x47b772
47b75f:	83 e8 09             	sub    $0x9,%eax
47b762:	74 1c                	je     0x47b780
47b764:	83 e8 06             	sub    $0x6,%eax
47b767:	74 10                	je     0x47b779
47b769:	83 e8 01             	sub    $0x1,%eax
47b76c:	74 04                	je     0x47b772
47b76e:	33 c0                	xor    %eax,%eax
47b770:	5d                   	pop    %ebp
47b771:	c3                   	ret
47b772:	b8 1c c2 4b 00       	mov    $0x4bc21c,%eax
47b777:	5d                   	pop    %ebp
47b778:	c3                   	ret
47b779:	b8 18 c2 4b 00       	mov    $0x4bc218,%eax
47b77e:	5d                   	pop    %ebp
47b77f:	c3                   	ret
47b780:	b8 20 c2 4b 00       	mov    $0x4bc220,%eax
47b785:	5d                   	pop    %ebp
47b786:	c3                   	ret
47b787:	b8 14 c2 4b 00       	mov    $0x4bc214,%eax
47b78c:	5d                   	pop    %ebp
47b78d:	c3                   	ret
47b78e:	8b ff                	mov    %edi,%edi
47b790:	55                   	push   %ebp
47b791:	8b ec                	mov    %esp,%ebp
47b793:	8d 41 04             	lea    0x4(%ecx),%eax
47b796:	8b d0                	mov    %eax,%edx
47b798:	2b d1                	sub    %ecx,%edx
47b79a:	83 c2 03             	add    $0x3,%edx
47b79d:	56                   	push   %esi
47b79e:	33 f6                	xor    %esi,%esi
47b7a0:	c1 ea 02             	shr    $0x2,%edx
47b7a3:	3b c1                	cmp    %ecx,%eax
47b7a5:	1b c0                	sbb    %eax,%eax
47b7a7:	f7 d0                	not    %eax
47b7a9:	23 c2                	and    %edx,%eax
47b7ab:	74 0d                	je     0x47b7ba
47b7ad:	8b 55 08             	mov    0x8(%ebp),%edx
47b7b0:	46                   	inc    %esi
47b7b1:	89 11                	mov    %edx,(%ecx)
47b7b3:	8d 49 04             	lea    0x4(%ecx),%ecx
47b7b6:	3b f0                	cmp    %eax,%esi
47b7b8:	75 f6                	jne    0x47b7b0
47b7ba:	5e                   	pop    %esi
47b7bb:	5d                   	pop    %ebp
47b7bc:	c2 04 00             	ret    $0x4
47b7bf:	8b ff                	mov    %edi,%edi
47b7c1:	55                   	push   %ebp
47b7c2:	8b ec                	mov    %esp,%ebp
47b7c4:	6b 0d c8 d4 49 00 0c 	imul   $0xc,0x49d4c8,%ecx
47b7cb:	8b 45 0c             	mov    0xc(%ebp),%eax
47b7ce:	03 c8                	add    %eax,%ecx
47b7d0:	3b c1                	cmp    %ecx,%eax
47b7d2:	74 0f                	je     0x47b7e3
47b7d4:	8b 55 08             	mov    0x8(%ebp),%edx
47b7d7:	39 50 04             	cmp    %edx,0x4(%eax)
47b7da:	74 09                	je     0x47b7e5
47b7dc:	83 c0 0c             	add    $0xc,%eax
47b7df:	3b c1                	cmp    %ecx,%eax
47b7e1:	75 f4                	jne    0x47b7d7
47b7e3:	33 c0                	xor    %eax,%eax
47b7e5:	5d                   	pop    %ebp
47b7e6:	c3                   	ret
47b7e7:	8b ff                	mov    %edi,%edi
47b7e9:	55                   	push   %ebp
47b7ea:	8b ec                	mov    %esp,%ebp
47b7ec:	8b 45 08             	mov    0x8(%ebp),%eax
47b7ef:	83 f8 01             	cmp    $0x1,%eax
47b7f2:	74 1f                	je     0x47b813
47b7f4:	83 f8 03             	cmp    $0x3,%eax
47b7f7:	74 1a                	je     0x47b813
47b7f9:	83 f8 0d             	cmp    $0xd,%eax
47b7fc:	74 15                	je     0x47b813
47b7fe:	83 f8 0f             	cmp    $0xf,%eax
47b801:	7e 05                	jle    0x47b808
47b803:	83 f8 11             	cmp    $0x11,%eax
47b806:	7e 0b                	jle    0x47b813
47b808:	e8 22 16 fd ff       	call   0x44ce2f
47b80d:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
47b813:	83 c8 ff             	or     $0xffffffff,%eax
47b816:	5d                   	pop    %ebp
47b817:	c3                   	ret
47b818:	8b c1                	mov    %ecx,%eax
47b81a:	c3                   	ret
47b81b:	8b ff                	mov    %edi,%edi
47b81d:	55                   	push   %ebp
47b81e:	8b ec                	mov    %esp,%ebp
47b820:	51                   	push   %ecx
47b821:	8d 45 ff             	lea    -0x1(%ebp),%eax
47b824:	50                   	push   %eax
47b825:	6a 03                	push   $0x3
47b827:	e8 cc fd ff ff       	call   0x47b5f8
47b82c:	59                   	pop    %ecx
47b82d:	59                   	pop    %ecx
47b82e:	8b e5                	mov    %ebp,%esp
47b830:	5d                   	pop    %ebp
47b831:	c3                   	ret
47b832:	8b ff                	mov    %edi,%edi
47b834:	55                   	push   %ebp
47b835:	8b ec                	mov    %esp,%ebp
47b837:	ff 75 08             	push   0x8(%ebp)
47b83a:	b9 14 c2 4b 00       	mov    $0x4bc214,%ecx
47b83f:	e8 4a ff ff ff       	call   0x47b78e
47b844:	ff 75 08             	push   0x8(%ebp)
47b847:	b9 18 c2 4b 00       	mov    $0x4bc218,%ecx
47b84c:	e8 3d ff ff ff       	call   0x47b78e
47b851:	ff 75 08             	push   0x8(%ebp)
47b854:	b9 1c c2 4b 00       	mov    $0x4bc21c,%ecx
47b859:	e8 30 ff ff ff       	call   0x47b78e
47b85e:	ff 75 08             	push   0x8(%ebp)
47b861:	b9 20 c2 4b 00       	mov    $0x4bc220,%ecx
47b866:	e8 23 ff ff ff       	call   0x47b78e
47b86b:	5d                   	pop    %ebp
47b86c:	c3                   	ret
47b86d:	e8 8e 67 ff ff       	call   0x472000
47b872:	83 c0 08             	add    $0x8,%eax
47b875:	c3                   	ret
47b876:	e8 85 67 ff ff       	call   0x472000
47b87b:	83 c0 04             	add    $0x4,%eax
47b87e:	c3                   	ret
47b87f:	6a 2c                	push   $0x2c
47b881:	68 60 4f 4b 00       	push   $0x4b4f60
47b886:	e8 a5 e0 00 00       	call   0x489930
47b88b:	33 db                	xor    %ebx,%ebx
47b88d:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
47b890:	21 5d c8             	and    %ebx,-0x38(%ebp)
47b893:	b1 01                	mov    $0x1,%cl
47b895:	88 4d e3             	mov    %cl,-0x1d(%ebp)
47b898:	8b 75 08             	mov    0x8(%ebp),%esi
47b89b:	6a 08                	push   $0x8
47b89d:	5f                   	pop    %edi
47b89e:	3b f7                	cmp    %edi,%esi
47b8a0:	7f 18                	jg     0x47b8ba
47b8a2:	74 35                	je     0x47b8d9
47b8a4:	8d 46 ff             	lea    -0x1(%esi),%eax
47b8a7:	83 e8 01             	sub    $0x1,%eax
47b8aa:	74 22                	je     0x47b8ce
47b8ac:	48                   	dec    %eax
47b8ad:	83 e8 01             	sub    $0x1,%eax
47b8b0:	74 27                	je     0x47b8d9
47b8b2:	48                   	dec    %eax
47b8b3:	83 e8 01             	sub    $0x1,%eax
47b8b6:	75 4c                	jne    0x47b904
47b8b8:	eb 14                	jmp    0x47b8ce
47b8ba:	83 fe 0b             	cmp    $0xb,%esi
47b8bd:	74 1a                	je     0x47b8d9
47b8bf:	83 fe 0f             	cmp    $0xf,%esi
47b8c2:	74 0a                	je     0x47b8ce
47b8c4:	83 fe 14             	cmp    $0x14,%esi
47b8c7:	7e 3b                	jle    0x47b904
47b8c9:	83 fe 16             	cmp    $0x16,%esi
47b8cc:	7f 36                	jg     0x47b904
47b8ce:	56                   	push   %esi
47b8cf:	e8 78 fe ff ff       	call   0x47b74c
47b8d4:	83 c4 04             	add    $0x4,%esp
47b8d7:	eb 45                	jmp    0x47b91e
47b8d9:	e8 70 68 ff ff       	call   0x47214e
47b8de:	8b d8                	mov    %eax,%ebx
47b8e0:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
47b8e3:	85 db                	test   %ebx,%ebx
47b8e5:	75 08                	jne    0x47b8ef
47b8e7:	83 c8 ff             	or     $0xffffffff,%eax
47b8ea:	e9 92 01 00 00       	jmp    0x47ba81
47b8ef:	ff 33                	push   (%ebx)
47b8f1:	56                   	push   %esi
47b8f2:	e8 c8 fe ff ff       	call   0x47b7bf
47b8f7:	59                   	pop    %ecx
47b8f8:	59                   	pop    %ecx
47b8f9:	33 c9                	xor    %ecx,%ecx
47b8fb:	85 c0                	test   %eax,%eax
47b8fd:	0f 95 c1             	setne  %cl
47b900:	85 c9                	test   %ecx,%ecx
47b902:	75 12                	jne    0x47b916
47b904:	e8 26 15 fd ff       	call   0x44ce2f
47b909:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
47b90f:	e8 c2 13 fd ff       	call   0x44ccd6
47b914:	eb d1                	jmp    0x47b8e7
47b916:	83 c0 08             	add    $0x8,%eax
47b919:	32 c9                	xor    %cl,%cl
47b91b:	88 4d e3             	mov    %cl,-0x1d(%ebp)
47b91e:	89 45 d8             	mov    %eax,-0x28(%ebp)
47b921:	83 65 cc 00          	andl   $0x0,-0x34(%ebp)
47b925:	84 c9                	test   %cl,%cl
47b927:	74 0b                	je     0x47b934
47b929:	6a 03                	push   $0x3
47b92b:	e8 dc c5 fe ff       	call   0x467f0c
47b930:	59                   	pop    %ecx
47b931:	8a 4d e3             	mov    -0x1d(%ebp),%cl
47b934:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
47b938:	c6 45 e2 00          	movb   $0x0,-0x1e(%ebp)
47b93c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
47b940:	8b 45 d8             	mov    -0x28(%ebp),%eax
47b943:	84 c9                	test   %cl,%cl
47b945:	74 14                	je     0x47b95b
47b947:	8b 15 94 80 4b 00    	mov    0x4b8094,%edx
47b94d:	8b ca                	mov    %edx,%ecx
47b94f:	83 e1 1f             	and    $0x1f,%ecx
47b952:	33 10                	xor    (%eax),%edx
47b954:	d3 ca                	ror    %cl,%edx
47b956:	8a 4d e3             	mov    -0x1d(%ebp),%cl
47b959:	eb 02                	jmp    0x47b95d
47b95b:	8b 10                	mov    (%eax),%edx
47b95d:	8b c2                	mov    %edx,%eax
47b95f:	89 45 dc             	mov    %eax,-0x24(%ebp)
47b962:	33 d2                	xor    %edx,%edx
47b964:	83 f8 01             	cmp    $0x1,%eax
47b967:	0f 94 c2             	sete   %dl
47b96a:	89 55 d0             	mov    %edx,-0x30(%ebp)
47b96d:	88 55 e2             	mov    %dl,-0x1e(%ebp)
47b970:	84 d2                	test   %dl,%dl
47b972:	0f 85 8a 00 00 00    	jne    0x47ba02
47b978:	85 c0                	test   %eax,%eax
47b97a:	75 13                	jne    0x47b98f
47b97c:	84 c9                	test   %cl,%cl
47b97e:	74 08                	je     0x47b988
47b980:	6a 03                	push   $0x3
47b982:	e8 cd c5 fe ff       	call   0x467f54
47b987:	59                   	pop    %ecx
47b988:	6a 03                	push   $0x3
47b98a:	e8 9b 09 ff ff       	call   0x46c32a
47b98f:	3b f7                	cmp    %edi,%esi
47b991:	74 0a                	je     0x47b99d
47b993:	83 fe 0b             	cmp    $0xb,%esi
47b996:	74 05                	je     0x47b99d
47b998:	83 fe 04             	cmp    $0x4,%esi
47b99b:	75 23                	jne    0x47b9c0
47b99d:	8b 43 04             	mov    0x4(%ebx),%eax
47b9a0:	89 45 cc             	mov    %eax,-0x34(%ebp)
47b9a3:	83 63 04 00          	andl   $0x0,0x4(%ebx)
47b9a7:	3b f7                	cmp    %edi,%esi
47b9a9:	75 3b                	jne    0x47b9e6
47b9ab:	e8 bd fe ff ff       	call   0x47b86d
47b9b0:	8b 00                	mov    (%eax),%eax
47b9b2:	89 45 c8             	mov    %eax,-0x38(%ebp)
47b9b5:	e8 b3 fe ff ff       	call   0x47b86d
47b9ba:	c7 00 8c 00 00 00    	movl   $0x8c,(%eax)
47b9c0:	3b f7                	cmp    %edi,%esi
47b9c2:	75 22                	jne    0x47b9e6
47b9c4:	6b 05 d0 d4 49 00 0c 	imul   $0xc,0x49d4d0,%eax
47b9cb:	03 03                	add    (%ebx),%eax
47b9cd:	6b 0d d4 d4 49 00 0c 	imul   $0xc,0x49d4d4,%ecx
47b9d4:	03 c8                	add    %eax,%ecx
47b9d6:	89 45 c4             	mov    %eax,-0x3c(%ebp)
47b9d9:	3b c1                	cmp    %ecx,%eax
47b9db:	74 25                	je     0x47ba02
47b9dd:	83 60 08 00          	andl   $0x0,0x8(%eax)
47b9e1:	83 c0 0c             	add    $0xc,%eax
47b9e4:	eb f0                	jmp    0x47b9d6
47b9e6:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47b9eb:	83 e0 1f             	and    $0x1f,%eax