46f63a:	eb 02                	jmp    0x46f63e
46f63c:	85 ff                	test   %edi,%edi
46f63e:	0f 94 c0             	sete   %al
46f641:	85 c0                	test   %eax,%eax
46f643:	75 03                	jne    0x46f648
46f645:	8b 4d b8             	mov    -0x48(%ebp),%ecx
46f648:	85 c9                	test   %ecx,%ecx
46f64a:	74 2b                	je     0x46f677
46f64c:	8b c2                	mov    %edx,%eax
46f64e:	8b ce                	mov    %esi,%ecx
46f650:	25 00 1b 00 00       	and    $0x1b00,%eax
46f655:	2d 00 11 00 00       	sub    $0x1100,%eax
46f65a:	f7 d8                	neg    %eax
46f65c:	1b c0                	sbb    %eax,%eax
46f65e:	40                   	inc    %eax
46f65f:	f7 d9                	neg    %ecx
46f661:	1b c9                	sbb    %ecx,%ecx
46f663:	85 c8                	test   %ecx,%eax
46f665:	74 10                	je     0x46f677
46f667:	c7 45 f8 74 13 4a 00 	movl   $0x4a1374,-0x8(%ebp)
46f66e:	c7 45 fc 30 00 00 00 	movl   $0x30,-0x4(%ebp)
46f675:	eb 52                	jmp    0x46f6c9
46f677:	33 c0                	xor    %eax,%eax
46f679:	85 f6                	test   %esi,%esi
46f67b:	74 08                	je     0x46f685
46f67d:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f683:	eb 02                	jmp    0x46f687
46f685:	85 ff                	test   %edi,%edi
46f687:	0f 94 c0             	sete   %al
46f68a:	85 c0                	test   %eax,%eax
46f68c:	8b 45 c0             	mov    -0x40(%ebp),%eax
46f68f:	75 03                	jne    0x46f694
46f691:	8b 45 b8             	mov    -0x48(%ebp),%eax
46f694:	85 c0                	test   %eax,%eax
46f696:	0f 84 a0 00 00 00    	je     0x46f73c
46f69c:	8b c2                	mov    %edx,%eax
46f69e:	8b ce                	mov    %esi,%ecx
46f6a0:	25 00 1b 00 00       	and    $0x1b00,%eax
46f6a5:	2d 00 12 00 00       	sub    $0x1200,%eax
46f6aa:	f7 d8                	neg    %eax
46f6ac:	1b c0                	sbb    %eax,%eax
46f6ae:	40                   	inc    %eax
46f6af:	f7 d9                	neg    %ecx
46f6b1:	1b c9                	sbb    %ecx,%ecx
46f6b3:	85 c8                	test   %ecx,%eax
46f6b5:	0f 84 81 00 00 00    	je     0x46f73c
46f6bb:	c7 45 f8 a8 13 4a 00 	movl   $0x4a13a8,-0x8(%ebp)
46f6c2:	c7 45 fc 2f 00 00 00 	movl   $0x2f,-0x4(%ebp)
46f6c9:	8d 45 f8             	lea    -0x8(%ebp),%eax
46f6cc:	50                   	push   %eax
46f6cd:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46f6d0:	e8 0e f5 ff ff       	call   0x46ebe3
46f6d5:	8b 55 ec             	mov    -0x14(%ebp),%edx
46f6d8:	85 f6                	test   %esi,%esi
46f6da:	74 71                	je     0x46f74d
46f6dc:	33 c0                	xor    %eax,%eax
46f6de:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f6e4:	0f 94 c0             	sete   %al
46f6e7:	85 c0                	test   %eax,%eax
46f6e9:	8b 45 c0             	mov    -0x40(%ebp),%eax
46f6ec:	75 03                	jne    0x46f6f1
46f6ee:	8b 45 b8             	mov    -0x48(%ebp),%eax
46f6f1:	85 c0                	test   %eax,%eax
46f6f3:	74 5e                	je     0x46f753
46f6f5:	81 e2 00 1b 00 00    	and    $0x1b00,%edx
46f6fb:	33 c0                	xor    %eax,%eax
46f6fd:	81 fa 00 11 00 00    	cmp    $0x1100,%edx
46f703:	8b ce                	mov    %esi,%ecx
46f705:	0f 94 c0             	sete   %al
46f708:	f7 d9                	neg    %ecx
46f70a:	1b c9                	sbb    %ecx,%ecx
46f70c:	85 c8                	test   %ecx,%eax
46f70e:	75 15                	jne    0x46f725
46f710:	33 c0                	xor    %eax,%eax
46f712:	8b ce                	mov    %esi,%ecx
46f714:	81 fa 00 12 00 00    	cmp    $0x1200,%edx
46f71a:	0f 94 c0             	sete   %al
46f71d:	f7 d9                	neg    %ecx
46f71f:	1b c9                	sbb    %ecx,%ecx
46f721:	85 c8                	test   %ecx,%eax
46f723:	74 2e                	je     0x46f753
46f725:	8d 45 f0             	lea    -0x10(%ebp),%eax
46f728:	50                   	push   %eax
46f729:	8d 45 d4             	lea    -0x2c(%ebp),%eax
46f72c:	6a 20                	push   $0x20
46f72e:	50                   	push   %eax
46f72f:	e8 da f3 ff ff       	call   0x46eb0e
46f734:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
46f737:	83 c4 0c             	add    $0xc,%esp
46f73a:	eb 2c                	jmp    0x46f768
46f73c:	85 f6                	test   %esi,%esi
46f73e:	75 9c                	jne    0x46f6dc
46f740:	81 7d cc 00 78 00 00 	cmpl   $0x7800,-0x34(%ebp)
46f747:	0f 84 15 fb ff ff    	je     0x46f262
46f74d:	33 c0                	xor    %eax,%eax
46f74f:	85 ff                	test   %edi,%edi
46f751:	eb 91                	jmp    0x46f6e4
46f753:	8d 45 f0             	lea    -0x10(%ebp),%eax
46f756:	50                   	push   %eax
46f757:	8d 45 d4             	lea    -0x2c(%ebp),%eax
46f75a:	50                   	push   %eax
46f75b:	e8 c0 20 00 00       	call   0x471820
46f760:	59                   	pop    %ecx
46f761:	59                   	pop    %ecx
46f762:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
46f765:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
46f768:	8b 70 04             	mov    0x4(%eax),%esi
46f76b:	8b 55 d0             	mov    -0x30(%ebp),%edx
46f76e:	8b 38                	mov    (%eax),%edi
46f770:	89 75 f4             	mov    %esi,-0xc(%ebp)
46f773:	89 75 e8             	mov    %esi,-0x18(%ebp)
46f776:	89 7d f0             	mov    %edi,-0x10(%ebp)
46f779:	85 d2                	test   %edx,%edx
46f77b:	74 0d                	je     0x46f78a
46f77d:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
46f780:	33 c0                	xor    %eax,%eax
46f782:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f788:	eb 04                	jmp    0x46f78e
46f78a:	33 c0                	xor    %eax,%eax
46f78c:	85 c9                	test   %ecx,%ecx
46f78e:	0f 94 c0             	sete   %al
46f791:	85 c0                	test   %eax,%eax
46f793:	0f 84 8c 02 00 00    	je     0x46fa25
46f799:	a1 94 83 4c 00       	mov    0x4c8394,%eax
46f79e:	c1 e8 09             	shr    $0x9,%eax
46f7a1:	f7 d0                	not    %eax
46f7a3:	a8 01                	test   $0x1,%al
46f7a5:	0f 84 68 01 00 00    	je     0x46f913
46f7ab:	33 c0                	xor    %eax,%eax
46f7ad:	85 d2                	test   %edx,%edx
46f7af:	74 08                	je     0x46f7b9
46f7b1:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f7b7:	eb 02                	jmp    0x46f7bb
46f7b9:	85 c9                	test   %ecx,%ecx
46f7bb:	0f 94 c0             	sete   %al
46f7be:	85 c0                	test   %eax,%eax
46f7c0:	74 50                	je     0x46f812
46f7c2:	85 d2                	test   %edx,%edx
46f7c4:	74 11                	je     0x46f7d7
46f7c6:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46f7c9:	8b c1                	mov    %ecx,%eax
46f7cb:	25 00 07 00 00       	and    $0x700,%eax
46f7d0:	3d 00 02 00 00       	cmp    $0x200,%eax
46f7d5:	75 42                	jne    0x46f819
46f7d7:	8d 45 f8             	lea    -0x8(%ebp),%eax
46f7da:	c7 45 f8 d8 13 4a 00 	movl   $0x4a13d8,-0x8(%ebp)
46f7e1:	50                   	push   %eax
46f7e2:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
46f7e5:	c7 45 fc 07 00 00 00 	movl   $0x7,-0x4(%ebp)
46f7ec:	e8 f5 ef ff ff       	call   0x46e7e6
46f7f1:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46f7f4:	51                   	push   %ecx
46f7f5:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46f7f8:	51                   	push   %ecx
46f7f9:	8b c8                	mov    %eax,%ecx
46f7fb:	e8 7d f3 ff ff       	call   0x46eb7d
46f800:	8b 75 fc             	mov    -0x4(%ebp),%esi
46f803:	8b 7d f8             	mov    -0x8(%ebp),%edi
46f806:	8b 55 d0             	mov    -0x30(%ebp),%edx
46f809:	89 7d f0             	mov    %edi,-0x10(%ebp)
46f80c:	89 75 e8             	mov    %esi,-0x18(%ebp)
46f80f:	89 75 f4             	mov    %esi,-0xc(%ebp)
46f812:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46f815:	85 d2                	test   %edx,%edx
46f817:	74 21                	je     0x46f83a
46f819:	8b f1                	mov    %ecx,%esi
46f81b:	81 e6 00 07 00 00    	and    $0x700,%esi
46f821:	81 fe 00 01 00 00    	cmp    $0x100,%esi
46f827:	0f 84 ae 00 00 00    	je     0x46f8db
46f82d:	33 c0                	xor    %eax,%eax
46f82f:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f835:	0f 94 c0             	sete   %al
46f838:	eb 10                	jmp    0x46f84a
46f83a:	33 c0                	xor    %eax,%eax
46f83c:	8b f1                	mov    %ecx,%esi
46f83e:	39 45 e4             	cmp    %eax,-0x1c(%ebp)
46f841:	0f 94 c0             	sete   %al
46f844:	81 e6 00 07 00 00    	and    $0x700,%esi
46f84a:	f7 d8                	neg    %eax
46f84c:	1b c0                	sbb    %eax,%eax
46f84e:	25 00 f4 ff ff       	and    $0xfffff400,%eax
46f853:	05 00 10 00 00       	add    $0x1000,%eax
46f858:	85 c1                	test   %eax,%ecx
46f85a:	0f 84 b6 00 00 00    	je     0x46f916
46f860:	85 d2                	test   %edx,%edx
46f862:	74 13                	je     0x46f877
46f864:	33 c0                	xor    %eax,%eax
46f866:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f86c:	0f 94 c0             	sete   %al
46f86f:	89 45 e0             	mov    %eax,-0x20(%ebp)
46f872:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46f875:	eb 0e                	jmp    0x46f885
46f877:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46f87a:	85 c0                	test   %eax,%eax
46f87c:	6a 00                	push   $0x0
46f87e:	59                   	pop    %ecx
46f87f:	0f 94 c1             	sete   %cl
46f882:	89 4d e0             	mov    %ecx,-0x20(%ebp)
46f885:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
46f889:	74 08                	je     0x46f893
46f88b:	81 fe 00 05 00 00    	cmp    $0x500,%esi
46f891:	74 48                	je     0x46f8db
46f893:	33 c9                	xor    %ecx,%ecx
46f895:	85 d2                	test   %edx,%edx
46f897:	74 08                	je     0x46f8a1
46f899:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f89f:	eb 02                	jmp    0x46f8a3
46f8a1:	85 c0                	test   %eax,%eax
46f8a3:	0f 94 c1             	sete   %cl
46f8a6:	89 4d e0             	mov    %ecx,-0x20(%ebp)
46f8a9:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
46f8ad:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46f8b0:	74 08                	je     0x46f8ba
46f8b2:	81 fe 00 06 00 00    	cmp    $0x600,%esi
46f8b8:	74 21                	je     0x46f8db
46f8ba:	85 d2                	test   %edx,%edx
46f8bc:	74 0a                	je     0x46f8c8
46f8be:	33 d2                	xor    %edx,%edx
46f8c0:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f8c6:	eb 04                	jmp    0x46f8cc
46f8c8:	33 d2                	xor    %edx,%edx
46f8ca:	85 c0                	test   %eax,%eax
46f8cc:	0f 94 c2             	sete   %dl
46f8cf:	85 d2                	test   %edx,%edx
46f8d1:	74 43                	je     0x46f916
46f8d3:	81 fe 00 04 00 00    	cmp    $0x400,%esi
46f8d9:	75 3b                	jne    0x46f916
46f8db:	8d 45 f8             	lea    -0x8(%ebp),%eax
46f8de:	c7 45 f8 e0 13 4a 00 	movl   $0x4a13e0,-0x8(%ebp)
46f8e5:	50                   	push   %eax
46f8e6:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
46f8e9:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
46f8f0:	e8 f1 ee ff ff       	call   0x46e7e6
46f8f5:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46f8f8:	51                   	push   %ecx
46f8f9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46f8fc:	51                   	push   %ecx
46f8fd:	8b c8                	mov    %eax,%ecx
46f8ff:	e8 79 f2 ff ff       	call   0x46eb7d
46f904:	8b 75 fc             	mov    -0x4(%ebp),%esi
46f907:	8b 7d f8             	mov    -0x8(%ebp),%edi
46f90a:	89 7d f0             	mov    %edi,-0x10(%ebp)
46f90d:	89 75 e8             	mov    %esi,-0x18(%ebp)
46f910:	89 75 f4             	mov    %esi,-0xc(%ebp)
46f913:	8b 4d ec             	mov    -0x14(%ebp),%ecx
46f916:	a1 94 83 4c 00       	mov    0x4c8394,%eax
46f91b:	8b 75 d0             	mov    -0x30(%ebp),%esi
46f91e:	c1 e8 07             	shr    $0x7,%eax
46f921:	f7 d0                	not    %eax
46f923:	a8 01                	test   $0x1,%al
46f925:	0f 84 fd 00 00 00    	je     0x46fa28
46f92b:	8b 55 e4             	mov    -0x1c(%ebp),%edx
46f92e:	33 c0                	xor    %eax,%eax
46f930:	85 f6                	test   %esi,%esi
46f932:	74 08                	je     0x46f93c
46f934:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f93a:	eb 02                	jmp    0x46f93e
46f93c:	85 d2                	test   %edx,%edx
46f93e:	0f 94 c0             	sete   %al
46f941:	85 c0                	test   %eax,%eax
46f943:	74 32                	je     0x46f977
46f945:	85 f6                	test   %esi,%esi
46f947:	74 0f                	je     0x46f958
46f949:	83 65 cc 00          	andl   $0x0,-0x34(%ebp)
46f94d:	8b c1                	mov    %ecx,%eax
46f94f:	24 c0                	and    $0xc0,%al
46f951:	3c 40                	cmp    $0x40,%al
46f953:	8b 45 cc             	mov    -0x34(%ebp),%eax
46f956:	eb 08                	jmp    0x46f960
46f958:	33 c0                	xor    %eax,%eax
46f95a:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f960:	0f 94 c0             	sete   %al
46f963:	85 c0                	test   %eax,%eax
46f965:	74 10                	je     0x46f977
46f967:	c7 45 f8 ec 13 4a 00 	movl   $0x4a13ec,-0x8(%ebp)
46f96e:	c7 45 fc 09 00 00 00 	movl   $0x9,-0x4(%ebp)
46f975:	eb 47                	jmp    0x46f9be
46f977:	33 c0                	xor    %eax,%eax
46f979:	85 f6                	test   %esi,%esi
46f97b:	74 08                	je     0x46f985
46f97d:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f983:	eb 02                	jmp    0x46f987
46f985:	85 d2                	test   %edx,%edx
46f987:	0f 94 c0             	sete   %al
46f98a:	85 c0                	test   %eax,%eax
46f98c:	74 59                	je     0x46f9e7
46f98e:	85 f6                	test   %esi,%esi
46f990:	74 0f                	je     0x46f9a1
46f992:	83 65 cc 00          	andl   $0x0,-0x34(%ebp)
46f996:	8b c1                	mov    %ecx,%eax
46f998:	24 c0                	and    $0xc0,%al
46f99a:	3c 80                	cmp    $0x80,%al
46f99c:	8b 45 cc             	mov    -0x34(%ebp),%eax
46f99f:	eb 08                	jmp    0x46f9a9
46f9a1:	33 c0                	xor    %eax,%eax
46f9a3:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
46f9a9:	0f 94 c0             	sete   %al
46f9ac:	85 c0                	test   %eax,%eax
46f9ae:	74 37                	je     0x46f9e7
46f9b0:	c7 45 f8 f8 13 4a 00 	movl   $0x4a13f8,-0x8(%ebp)
46f9b7:	c7 45 fc 0b 00 00 00 	movl   $0xb,-0x4(%ebp)
46f9be:	8d 45 f8             	lea    -0x8(%ebp),%eax
46f9c1:	50                   	push   %eax
46f9c2:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
46f9c5:	e8 1c ee ff ff       	call   0x46e7e6
46f9ca:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46f9cd:	51                   	push   %ecx
46f9ce:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46f9d1:	51                   	push   %ecx
46f9d2:	8b c8                	mov    %eax,%ecx
46f9d4:	e8 a4 f1 ff ff       	call   0x46eb7d
46f9d9:	8b 7d f8             	mov    -0x8(%ebp),%edi
46f9dc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46f9df:	89 7d f0             	mov    %edi,-0x10(%ebp)
46f9e2:	89 4d f4             	mov    %ecx,-0xc(%ebp)
46f9e5:	eb 44                	jmp    0x46fa2b
46f9e7:	33 c0                	xor    %eax,%eax
46f9e9:	85 f6                	test   %esi,%esi
46f9eb:	74 08                	je     0x46f9f5
46f9ed:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46f9f3:	eb 02                	jmp    0x46f9f7
46f9f5:	85 d2                	test   %edx,%edx
46f9f7:	0f 94 c0             	sete   %al
46f9fa:	85 c0                	test   %eax,%eax
46f9fc:	74 2a                	je     0x46fa28
46f9fe:	85 f6                	test   %esi,%esi
46fa00:	74 08                	je     0x46fa0a
46fa02:	6a 00                	push   $0x0
46fa04:	f6 c1 c0             	test   $0xc0,%cl
46fa07:	58                   	pop    %eax
46fa08:	eb 04                	jmp    0x46fa0e
46fa0a:	33 c0                	xor    %eax,%eax
46fa0c:	85 db                	test   %ebx,%ebx
46fa0e:	0f 94 c0             	sete   %al
46fa11:	85 c0                	test   %eax,%eax
46fa13:	74 13                	je     0x46fa28
46fa15:	c7 45 f8 04 14 4a 00 	movl   $0x4a1404,-0x8(%ebp)
46fa1c:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
46fa23:	eb 99                	jmp    0x46f9be
46fa25:	8b 75 d0             	mov    -0x30(%ebp),%esi
46fa28:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46fa2b:	33 c0                	xor    %eax,%eax
46fa2d:	85 f6                	test   %esi,%esi
46fa2f:	74 08                	je     0x46fa39
46fa31:	81 fb 00 08 00 00    	cmp    $0x800,%ebx
46fa37:	eb 03                	jmp    0x46fa3c
46fa39:	39 45 e4             	cmp    %eax,-0x1c(%ebp)
46fa3c:	8b 75 ec             	mov    -0x14(%ebp),%esi
46fa3f:	0f 94 c0             	sete   %al
46fa42:	f7 d8                	neg    %eax