46e759:	e8 bc fd ff ff       	call   0x46e51a
46e75e:	8b 45 08             	mov    0x8(%ebp),%eax
46e761:	5f                   	pop    %edi
46e762:	5e                   	pop    %esi
46e763:	5b                   	pop    %ebx
46e764:	c9                   	leave
46e765:	c3                   	ret
46e766:	55                   	push   %ebp
46e767:	8b ec                	mov    %esp,%ebp
46e769:	53                   	push   %ebx
46e76a:	56                   	push   %esi
46e76b:	8b f1                	mov    %ecx,%esi
46e76d:	57                   	push   %edi
46e76e:	8b 7d 08             	mov    0x8(%ebp),%edi
46e771:	83 26 00             	andl   $0x0,(%esi)
46e774:	83 66 04 00          	andl   $0x0,0x4(%esi)
46e778:	8b 0f                	mov    (%edi),%ecx
46e77a:	8a 01                	mov    (%ecx),%al
46e77c:	84 c0                	test   %al,%al
46e77e:	74 59                	je     0x46e7d9
46e780:	33 db                	xor    %ebx,%ebx
46e782:	8b d1                	mov    %ecx,%edx
46e784:	3a 45 0c             	cmp    0xc(%ebp),%al
46e787:	74 22                	je     0x46e7ab
46e789:	0f b6 c0             	movzbl %al,%eax
46e78c:	80 b8 b8 16 4a 00 00 	cmpb   $0x0,0x4a16b8(%eax)
46e793:	75 0c                	jne    0x46e7a1
46e795:	f7 05 94 83 4c 00 00 	testl  $0x10000,0x4c8394
46e79c:	00 01 00
46e79f:	74 2c                	je     0x46e7cd
46e7a1:	43                   	inc    %ebx
46e7a2:	42                   	inc    %edx
46e7a3:	89 17                	mov    %edx,(%edi)
46e7a5:	8a 02                	mov    (%edx),%al
46e7a7:	84 c0                	test   %al,%al
46e7a9:	75 d9                	jne    0x46e784
46e7ab:	53                   	push   %ebx
46e7ac:	51                   	push   %ecx
46e7ad:	8b ce                	mov    %esi,%ecx
46e7af:	e8 1a fe ff ff       	call   0x46e5ce
46e7b4:	8b 07                	mov    (%edi),%eax
46e7b6:	8a 08                	mov    (%eax),%cl
46e7b8:	84 c9                	test   %cl,%cl
46e7ba:	74 17                	je     0x46e7d3
46e7bc:	40                   	inc    %eax
46e7bd:	89 07                	mov    %eax,(%edi)
46e7bf:	3a 4d 0c             	cmp    0xc(%ebp),%cl
46e7c2:	74 19                	je     0x46e7dd
46e7c4:	83 26 00             	andl   $0x0,(%esi)
46e7c7:	c6 46 04 03          	movb   $0x3,0x4(%esi)
46e7cb:	eb 10                	jmp    0x46e7dd
46e7cd:	c6 46 04 02          	movb   $0x2,0x4(%esi)
46e7d1:	eb 0a                	jmp    0x46e7dd
46e7d3:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
46e7d7:	75 04                	jne    0x46e7dd
46e7d9:	c6 46 04 01          	movb   $0x1,0x4(%esi)
46e7dd:	5f                   	pop    %edi
46e7de:	8b c6                	mov    %esi,%eax
46e7e0:	5e                   	pop    %esi
46e7e1:	5b                   	pop    %ebx
46e7e2:	5d                   	pop    %ebp
46e7e3:	c2 08 00             	ret    $0x8
46e7e6:	55                   	push   %ebp
46e7e7:	8b ec                	mov    %esp,%ebp
46e7e9:	8b 45 08             	mov    0x8(%ebp),%eax
46e7ec:	56                   	push   %esi
46e7ed:	8b f1                	mov    %ecx,%esi
46e7ef:	83 26 00             	andl   $0x0,(%esi)
46e7f2:	83 66 04 00          	andl   $0x0,0x4(%esi)
46e7f6:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
46e7fa:	7e 0a                	jle    0x46e806
46e7fc:	ff 70 04             	push   0x4(%eax)
46e7ff:	ff 30                	push   (%eax)
46e801:	e8 c8 fd ff ff       	call   0x46e5ce
46e806:	8b c6                	mov    %esi,%eax
46e808:	5e                   	pop    %esi
46e809:	5d                   	pop    %ebp
46e80a:	c2 04 00             	ret    $0x4
46e80d:	55                   	push   %ebp
46e80e:	8b ec                	mov    %esp,%ebp
46e810:	53                   	push   %ebx
46e811:	56                   	push   %esi
46e812:	8b f1                	mov    %ecx,%esi
46e814:	33 db                	xor    %ebx,%ebx
46e816:	89 5e 04             	mov    %ebx,0x4(%esi)
46e819:	39 5d 08             	cmp    %ebx,0x8(%ebp)
46e81c:	74 29                	je     0x46e847
46e81e:	6a 08                	push   $0x8
46e820:	b9 a8 83 4c 00       	mov    $0x4c83a8,%ecx
46e825:	e8 09 36 00 00       	call   0x471e33
46e82a:	85 c0                	test   %eax,%eax
46e82c:	74 0c                	je     0x46e83a
46e82e:	ff 75 08             	push   0x8(%ebp)
46e831:	8b c8                	mov    %eax,%ecx
46e833:	e8 b8 01 00 00       	call   0x46e9f0
46e838:	8b d8                	mov    %eax,%ebx
46e83a:	85 db                	test   %ebx,%ebx
46e83c:	8b ce                	mov    %esi,%ecx
46e83e:	0f 95 c0             	setne  %al
46e841:	fe c8                	dec    %al
46e843:	24 03                	and    $0x3,%al
46e845:	eb 02                	jmp    0x46e849
46e847:	8a c3                	mov    %bl,%al
46e849:	89 19                	mov    %ebx,(%ecx)
46e84b:	88 46 04             	mov    %al,0x4(%esi)
46e84e:	8b c6                	mov    %esi,%eax
46e850:	5e                   	pop    %esi
46e851:	5b                   	pop    %ebx
46e852:	5d                   	pop    %ebp
46e853:	c2 04 00             	ret    $0x4
46e856:	55                   	push   %ebp
46e857:	8b ec                	mov    %esp,%ebp
46e859:	8b 45 08             	mov    0x8(%ebp),%eax
46e85c:	56                   	push   %esi
46e85d:	8b f1                	mov    %ecx,%esi
46e85f:	83 66 04 00          	andl   $0x0,0x4(%esi)
46e863:	83 f8 02             	cmp    $0x2,%eax
46e866:	74 09                	je     0x46e871
46e868:	83 f8 03             	cmp    $0x3,%eax
46e86b:	74 04                	je     0x46e871
46e86d:	33 c9                	xor    %ecx,%ecx
46e86f:	eb 02                	jmp    0x46e873
46e871:	8b c8                	mov    %eax,%ecx
46e873:	83 26 00             	andl   $0x0,(%esi)
46e876:	88 4e 04             	mov    %cl,0x4(%esi)
46e879:	83 f8 01             	cmp    $0x1,%eax
46e87c:	75 11                	jne    0x46e88f
46e87e:	50                   	push   %eax
46e87f:	e8 45 62 00 00       	call   0x474ac9
46e884:	89 06                	mov    %eax,(%esi)
46e886:	59                   	pop    %ecx
46e887:	85 c0                	test   %eax,%eax
46e889:	75 04                	jne    0x46e88f
46e88b:	c6 46 04 03          	movb   $0x3,0x4(%esi)
46e88f:	8b c6                	mov    %esi,%eax
46e891:	5e                   	pop    %esi
46e892:	5d                   	pop    %ebp
46e893:	c2 04 00             	ret    $0x4
46e896:	55                   	push   %ebp
46e897:	8b ec                	mov    %esp,%ebp
46e899:	83 ec 24             	sub    $0x24,%esp
46e89c:	a1 14 40 4c 00       	mov    0x4c4014,%eax
46e8a1:	33 c5                	xor    %ebp,%eax
46e8a3:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e8a6:	8b c1                	mov    %ecx,%eax
46e8a8:	33 c9                	xor    %ecx,%ecx
46e8aa:	53                   	push   %ebx
46e8ab:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46e8ae:	89 45 dc             	mov    %eax,-0x24(%ebp)
46e8b1:	89 08                	mov    %ecx,(%eax)
46e8b3:	89 48 04             	mov    %ecx,0x4(%eax)
46e8b6:	88 4d f9             	mov    %cl,-0x7(%ebp)
46e8b9:	88 4d e3             	mov    %cl,-0x1d(%ebp)
46e8bc:	56                   	push   %esi
46e8bd:	8d 75 f9             	lea    -0x7(%ebp),%esi
46e8c0:	57                   	push   %edi
46e8c1:	8b 7d 08             	mov    0x8(%ebp),%edi
46e8c4:	3b d9                	cmp    %ecx,%ebx
46e8c6:	7f 10                	jg     0x46e8d8
46e8c8:	7c 04                	jl     0x46e8ce
46e8ca:	3b f9                	cmp    %ecx,%edi
46e8cc:	73 0a                	jae    0x46e8d8
46e8ce:	f7 df                	neg    %edi
46e8d0:	c6 45 e3 01          	movb   $0x1,-0x1d(%ebp)
46e8d4:	13 d9                	adc    %ecx,%ebx
46e8d6:	f7 db                	neg    %ebx
46e8d8:	51                   	push   %ecx
46e8d9:	6a 0a                	push   $0xa
46e8db:	53                   	push   %ebx
46e8dc:	57                   	push   %edi
46e8dd:	4e                   	dec    %esi
46e8de:	e8 ed 70 02 00       	call   0x4959d0
46e8e3:	6a 00                	push   $0x0
46e8e5:	6a 0a                	push   $0xa
46e8e7:	53                   	push   %ebx
46e8e8:	04 30                	add    $0x30,%al
46e8ea:	57                   	push   %edi
46e8eb:	88 06                	mov    %al,(%esi)
46e8ed:	e8 6e ba ff ff       	call   0x46a360
46e8f2:	8b da                	mov    %edx,%ebx
46e8f4:	8b f8                	mov    %eax,%edi
46e8f6:	0b c3                	or     %ebx,%eax
46e8f8:	6a 00                	push   $0x0
46e8fa:	59                   	pop    %ecx
46e8fb:	75 db                	jne    0x46e8d8
46e8fd:	38 4d e3             	cmp    %cl,-0x1d(%ebp)
46e900:	74 04                	je     0x46e906
46e902:	4e                   	dec    %esi
46e903:	c6 06 2d             	movb   $0x2d,(%esi)
46e906:	8d 4d f9             	lea    -0x7(%ebp),%ecx
46e909:	2b ce                	sub    %esi,%ecx
46e90b:	51                   	push   %ecx
46e90c:	8b 4d dc             	mov    -0x24(%ebp),%ecx
46e90f:	56                   	push   %esi
46e910:	e8 24 fd ff ff       	call   0x46e639
46e915:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46e918:	8b 45 dc             	mov    -0x24(%ebp),%eax
46e91b:	33 cd                	xor    %ebp,%ecx
46e91d:	5f                   	pop    %edi
46e91e:	5e                   	pop    %esi
46e91f:	5b                   	pop    %ebx
46e920:	e8 a5 b0 ff ff       	call   0x4699ca
46e925:	c9                   	leave
46e926:	c2 08 00             	ret    $0x8
46e929:	55                   	push   %ebp
46e92a:	8b ec                	mov    %esp,%ebp
46e92c:	83 ec 20             	sub    $0x20,%esp
46e92f:	a1 14 40 4c 00       	mov    0x4c4014,%eax
46e934:	33 c5                	xor    %ebp,%eax
46e936:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e939:	53                   	push   %ebx
46e93a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46e93d:	56                   	push   %esi
46e93e:	8b f1                	mov    %ecx,%esi
46e940:	c6 45 f8 00          	movb   $0x0,-0x8(%ebp)
46e944:	57                   	push   %edi
46e945:	89 75 e0             	mov    %esi,-0x20(%ebp)
46e948:	8d 7d f8             	lea    -0x8(%ebp),%edi
46e94b:	83 26 00             	andl   $0x0,(%esi)
46e94e:	83 66 04 00          	andl   $0x0,0x4(%esi)
46e952:	8b 75 08             	mov    0x8(%ebp),%esi
46e955:	6a 00                	push   $0x0
46e957:	6a 0a                	push   $0xa
46e959:	53                   	push   %ebx
46e95a:	56                   	push   %esi
46e95b:	4f                   	dec    %edi
46e95c:	e8 6f 70 02 00       	call   0x4959d0
46e961:	6a 00                	push   $0x0
46e963:	6a 0a                	push   $0xa
46e965:	53                   	push   %ebx
46e966:	04 30                	add    $0x30,%al
46e968:	56                   	push   %esi
46e969:	88 07                	mov    %al,(%edi)
46e96b:	e8 f0 b9 ff ff       	call   0x46a360
46e970:	8b da                	mov    %edx,%ebx
46e972:	8b f0                	mov    %eax,%esi
46e974:	0b c3                	or     %ebx,%eax
46e976:	75 dd                	jne    0x46e955
46e978:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46e97b:	2b cf                	sub    %edi,%ecx
46e97d:	51                   	push   %ecx
46e97e:	8b 4d e0             	mov    -0x20(%ebp),%ecx
46e981:	57                   	push   %edi
46e982:	e8 b2 fc ff ff       	call   0x46e639
46e987:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46e98a:	8b 45 e0             	mov    -0x20(%ebp),%eax
46e98d:	33 cd                	xor    %ebp,%ecx
46e98f:	5f                   	pop    %edi
46e990:	5e                   	pop    %esi
46e991:	5b                   	pop    %ebx
46e992:	e8 33 b0 ff ff       	call   0x4699ca
46e997:	c9                   	leave
46e998:	c2 08 00             	ret    $0x8
46e99b:	c7 01 44 16 4a 00    	movl   $0x4a1644,(%ecx)
46e9a1:	8b c1                	mov    %ecx,%eax
46e9a3:	c3                   	ret
46e9a4:	55                   	push   %ebp
46e9a5:	8b ec                	mov    %esp,%ebp
46e9a7:	83 09 ff             	orl    $0xffffffff,(%ecx)
46e9aa:	8d 51 2c             	lea    0x2c(%ecx),%edx
46e9ad:	83 0a ff             	orl    $0xffffffff,(%edx)
46e9b0:	8b 45 08             	mov    0x8(%ebp),%eax
46e9b3:	a3 90 83 4c 00       	mov    %eax,0x4c8390
46e9b8:	a3 8c 83 4c 00       	mov    %eax,0x4c838c
46e9bd:	8b 45 10             	mov    0x10(%ebp),%eax
46e9c0:	a3 94 83 4c 00       	mov    %eax,0x4c8394
46e9c5:	8b 45 0c             	mov    0xc(%ebp),%eax
46e9c8:	a3 9c 83 4c 00       	mov    %eax,0x4c839c
46e9cd:	33 c0                	xor    %eax,%eax
46e9cf:	a2 98 83 4c 00       	mov    %al,0x4c8398
46e9d4:	a3 a0 83 4c 00       	mov    %eax,0x4c83a0
46e9d9:	a3 a4 83 4c 00       	mov    %eax,0x4c83a4
46e9de:	8b c1                	mov    %ecx,%eax
46e9e0:	89 15 84 83 4c 00    	mov    %edx,0x4c8384
46e9e6:	89 0d 80 83 4c 00    	mov    %ecx,0x4c8380
46e9ec:	5d                   	pop    %ebp
46e9ed:	c2 0c 00             	ret    $0xc
46e9f0:	55                   	push   %ebp
46e9f1:	8b ec                	mov    %esp,%ebp
46e9f3:	8b 45 08             	mov    0x8(%ebp),%eax
46e9f6:	c7 01 80 16 4a 00    	movl   $0x4a1680,(%ecx)
46e9fc:	85 c0                	test   %eax,%eax
46e9fe:	74 0f                	je     0x46ea0f
46ea00:	8a 50 04             	mov    0x4(%eax),%dl
46ea03:	80 fa 02             	cmp    $0x2,%dl
46ea06:	74 05                	je     0x46ea0d
46ea08:	80 fa 03             	cmp    $0x3,%dl
46ea0b:	75 02                	jne    0x46ea0f
46ea0d:	33 c0                	xor    %eax,%eax
46ea0f:	89 41 04             	mov    %eax,0x4(%ecx)
46ea12:	8b c1                	mov    %ecx,%eax
46ea14:	5d                   	pop    %ebp
46ea15:	c2 04 00             	ret    $0x4
46ea18:	55                   	push   %ebp
46ea19:	8b ec                	mov    %esp,%ebp
46ea1b:	8b 45 08             	mov    0x8(%ebp),%eax
46ea1e:	83 49 0c ff          	orl    $0xffffffff,0xc(%ecx)
46ea22:	89 41 04             	mov    %eax,0x4(%ecx)
46ea25:	8b 45 0c             	mov    0xc(%ebp),%eax
46ea28:	89 41 08             	mov    %eax,0x8(%ecx)
46ea2b:	8b c1                	mov    %ecx,%eax
46ea2d:	c7 01 a8 16 4a 00    	movl   $0x4a16a8,(%ecx)
46ea33:	5d                   	pop    %ebp
46ea34:	c2 08 00             	ret    $0x8
46ea37:	ff 0d a4 83 4c 00    	decl   0x4c83a4
46ea3d:	c3                   	ret
46ea3e:	55                   	push   %ebp
46ea3f:	8b ec                	mov    %esp,%ebp
46ea41:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46ea45:	b9 a8 83 4c 00       	mov    $0x4c83a8,%ecx
46ea4a:	ff 75 08             	push   0x8(%ebp)
46ea4d:	74 07                	je     0x46ea56
46ea4f:	e8 49 34 00 00       	call   0x471e9d
46ea54:	5d                   	pop    %ebp
46ea55:	c3                   	ret
46ea56:	e8 d8 33 00 00       	call   0x471e33
46ea5b:	5d                   	pop    %ebp
46ea5c:	c3                   	ret
46ea5d:	55                   	push   %ebp
46ea5e:	8b ec                	mov    %esp,%ebp
46ea60:	8b 45 08             	mov    0x8(%ebp),%eax
46ea63:	56                   	push   %esi
46ea64:	8b f1                	mov    %ecx,%esi
46ea66:	83 26 00             	andl   $0x0,(%esi)
46ea69:	83 66 04 00          	andl   $0x0,0x4(%esi)
46ea6d:	ff 70 04             	push   0x4(%eax)
46ea70:	ff 30                	push   (%eax)
46ea72:	e8 57 fb ff ff       	call   0x46e5ce
46ea77:	8b c6                	mov    %esi,%eax
46ea79:	5e                   	pop    %esi
46ea7a:	5d                   	pop    %ebp
46ea7b:	c2 04 00             	ret    $0x4
46ea7e:	55                   	push   %ebp
46ea7f:	8b ec                	mov    %esp,%ebp
46ea81:	8b 45 08             	mov    0x8(%ebp),%eax
46ea84:	56                   	push   %esi
46ea85:	8b f1                	mov    %ecx,%esi
46ea87:	83 66 04 00          	andl   $0x0,0x4(%esi)
46ea8b:	88 46 04             	mov    %al,0x4(%esi)
46ea8e:	83 f8 01             	cmp    $0x1,%eax
46ea91:	75 13                	jne    0x46eaa6
46ea93:	50                   	push   %eax
46ea94:	e8 30 60 00 00       	call   0x474ac9
46ea99:	89 06                	mov    %eax,(%esi)
46ea9b:	59                   	pop    %ecx
46ea9c:	85 c0                	test   %eax,%eax
46ea9e:	75 09                	jne    0x46eaa9
46eaa0:	c6 46 04 03          	movb   $0x3,0x4(%esi)
46eaa4:	eb 03                	jmp    0x46eaa9
46eaa6:	83 26 00             	andl   $0x0,(%esi)