4be7d7:	5e                   	pop    %esi
4be7d8:	89 1a                	mov    %ebx,(%edx)
4be7da:	8b c3                	mov    %ebx,%eax
4be7dc:	5b                   	pop    %ebx
4be7dd:	8b e5                	mov    %ebp,%esp
4be7df:	5d                   	pop    %ebp
4be7e0:	c3                   	ret
4be7e1:	cc                   	int3
4be7e2:	cc                   	int3
4be7e3:	cc                   	int3
4be7e4:	cc                   	int3
4be7e5:	cc                   	int3
4be7e6:	cc                   	int3
4be7e7:	cc                   	int3
4be7e8:	cc                   	int3
4be7e9:	cc                   	int3
4be7ea:	cc                   	int3
4be7eb:	cc                   	int3
4be7ec:	cc                   	int3
4be7ed:	cc                   	int3
4be7ee:	cc                   	int3
4be7ef:	cc                   	int3
4be7f0:	55                   	push   %ebp
4be7f1:	8b ec                	mov    %esp,%ebp
4be7f3:	83 ec 54             	sub    $0x54,%esp
4be7f6:	8b 45 0c             	mov    0xc(%ebp),%eax
4be7f9:	53                   	push   %ebx
4be7fa:	56                   	push   %esi
4be7fb:	57                   	push   %edi
4be7fc:	8b 7d 08             	mov    0x8(%ebp),%edi
4be7ff:	33 f6                	xor    %esi,%esi
4be801:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4be804:	89 45 fc             	mov    %eax,-0x4(%ebp)
4be807:	3b 38                	cmp    (%eax),%edi
4be809:	72 2a                	jb     0x4be835
4be80b:	8b cf                	mov    %edi,%ecx
4be80d:	2b 48 04             	sub    0x4(%eax),%ecx
4be810:	3b 48 10             	cmp    0x10(%eax),%ecx
4be813:	0f 84 f4 03 00 00    	je     0x4bec0d
4be819:	ff 70 48             	push   0x48(%eax)
4be81c:	51                   	push   %ecx
4be81d:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4be820:	51                   	push   %ecx
4be821:	8b c8                	mov    %eax,%ecx
4be823:	e8 08 07 fa ff       	call   0x45ef30
4be828:	80 7d e8 00          	cmpb   $0x0,-0x18(%ebp)
4be82c:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4be82f:	0f 85 11 04 00 00    	jne    0x4bec46
4be835:	0f b6 1f             	movzbl (%edi),%ebx
4be838:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
4be83e:	73 03                	jae    0x4be843
4be840:	47                   	inc    %edi
4be841:	eb 2f                	jmp    0x4be872
4be843:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
4be847:	83 c3 80             	add    $0xffffff80,%ebx
4be84a:	8b c1                	mov    %ecx,%eax
4be84c:	c1 e0 07             	shl    $0x7,%eax
4be84f:	03 d8                	add    %eax,%ebx
4be851:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
4be857:	73 05                	jae    0x4be85e
4be859:	83 c7 02             	add    $0x2,%edi
4be85c:	eb 14                	jmp    0x4be872
4be85e:	53                   	push   %ebx
4be85f:	8d 45 dc             	lea    -0x24(%ebp),%eax
4be862:	57                   	push   %edi
4be863:	50                   	push   %eax
4be864:	e8 77 11 fa ff       	call   0x45f9e0
4be869:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4be86c:	83 c4 0c             	add    $0xc,%esp
4be86f:	8b 7d dc             	mov    -0x24(%ebp),%edi
4be872:	85 ff                	test   %edi,%edi
4be874:	0f 84 ca 03 00 00    	je     0x4bec44
4be87a:	8b c3                	mov    %ebx,%eax
4be87c:	c1 e8 03             	shr    $0x3,%eax
4be87f:	83 f8 0a             	cmp    $0xa,%eax
4be882:	0f 87 fd 01 00 00    	ja     0x4bea85
4be888:	0f 84 b8 01 00 00    	je     0x4bea46
4be88e:	48                   	dec    %eax
4be88f:	83 f8 05             	cmp    $0x5,%eax
4be892:	0f 87 fa 02 00 00    	ja     0x4beb92
4be898:	ff 24 85 58 ec 4b 00 	jmp    *0x4bec58(,%eax,4)
4be89f:	80 fb 08             	cmp    $0x8,%bl
4be8a2:	0f 85 ea 02 00 00    	jne    0x4beb92
4be8a8:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4be8ab:	50                   	push   %eax
4be8ac:	57                   	push   %edi
4be8ad:	e8 ce 22 f9 ff       	call   0x450b80
4be8b2:	8b f8                	mov    %eax,%edi
4be8b4:	83 c4 08             	add    $0x8,%esp
4be8b7:	85 ff                	test   %edi,%edi
4be8b9:	0f 84 85 03 00 00    	je     0x4bec44
4be8bf:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
4be8c2:	8b c3                	mov    %ebx,%eax
4be8c4:	83 e8 00             	sub    $0x0,%eax
4be8c7:	74 39                	je     0x4be902
4be8c9:	83 e8 01             	sub    $0x1,%eax
4be8cc:	74 34                	je     0x4be902
4be8ce:	83 e8 01             	sub    $0x1,%eax
4be8d1:	74 2f                	je     0x4be902
4be8d3:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4be8d6:	83 c1 04             	add    $0x4,%ecx
4be8d9:	f6 01 01             	testb  $0x1,(%ecx)
4be8dc:	74 0a                	je     0x4be8e8
4be8de:	8b 01                	mov    (%ecx),%eax
4be8e0:	83 e0 fc             	and    $0xfffffffc,%eax
4be8e3:	83 c0 04             	add    $0x4,%eax
4be8e6:	eb 05                	jmp    0x4be8ed
4be8e8:	e8 43 23 f9 ff       	call   0x450c30
4be8ed:	ff 75 d8             	push   -0x28(%ebp)
4be8f0:	8b c8                	mov    %eax,%ecx
4be8f2:	53                   	push   %ebx
4be8f3:	6a 01                	push   $0x1
4be8f5:	e8 26 1e fa ff       	call   0x460720
4be8fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4be8fd:	e9 05 ff ff ff       	jmp    0x4be807
4be902:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4be905:	8b 45 fc             	mov    -0x4(%ebp),%eax
4be908:	83 49 14 02          	orl    $0x2,0x14(%ecx)
4be90c:	89 59 30             	mov    %ebx,0x30(%ecx)
4be90f:	e9 f3 fe ff ff       	jmp    0x4be807
4be914:	80 fb 10             	cmp    $0x10,%bl
4be917:	0f 85 75 02 00 00    	jne    0x4beb92
4be91d:	8d 45 cc             	lea    -0x34(%ebp),%eax
4be920:	83 ce 04             	or     $0x4,%esi
4be923:	50                   	push   %eax
4be924:	57                   	push   %edi
4be925:	e8 56 22 f9 ff       	call   0x450b80
4be92a:	8b f8                	mov    %eax,%edi
4be92c:	83 c4 08             	add    $0x8,%esp
4be92f:	8b 45 cc             	mov    -0x34(%ebp),%eax
4be932:	0b 45 d0             	or     -0x30(%ebp),%eax
4be935:	74 04                	je     0x4be93b
4be937:	b1 01                	mov    $0x1,%cl
4be939:	eb 02                	jmp    0x4be93d
4be93b:	32 c9                	xor    %cl,%cl
4be93d:	8b 45 f8             	mov    -0x8(%ebp),%eax
4be940:	88 48 34             	mov    %cl,0x34(%eax)
4be943:	85 ff                	test   %edi,%edi
4be945:	0f 84 f9 02 00 00    	je     0x4bec44
4be94b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4be94e:	e9 b4 fe ff ff       	jmp    0x4be807
4be953:	80 fb 18             	cmp    $0x18,%bl
4be956:	0f 85 36 02 00 00    	jne    0x4beb92
4be95c:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4be95f:	83 ce 10             	or     $0x10,%esi
4be962:	50                   	push   %eax
4be963:	57                   	push   %edi
4be964:	e8 17 22 f9 ff       	call   0x450b80
4be969:	8b f8                	mov    %eax,%edi
4be96b:	83 c4 08             	add    $0x8,%esp
4be96e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
4be971:	0b 45 c8             	or     -0x38(%ebp),%eax
4be974:	74 04                	je     0x4be97a
4be976:	b1 01                	mov    $0x1,%cl
4be978:	eb 02                	jmp    0x4be97c
4be97a:	32 c9                	xor    %cl,%cl
4be97c:	8b 45 f8             	mov    -0x8(%ebp),%eax
4be97f:	88 48 36             	mov    %cl,0x36(%eax)
4be982:	85 ff                	test   %edi,%edi
4be984:	0f 84 ba 02 00 00    	je     0x4bec44
4be98a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4be98d:	e9 75 fe ff ff       	jmp    0x4be807
4be992:	80 fb 28             	cmp    $0x28,%bl
4be995:	0f 85 f7 01 00 00    	jne    0x4beb92
4be99b:	8d 45 bc             	lea    -0x44(%ebp),%eax
4be99e:	83 ce 08             	or     $0x8,%esi
4be9a1:	50                   	push   %eax
4be9a2:	57                   	push   %edi
4be9a3:	e8 d8 21 f9 ff       	call   0x450b80
4be9a8:	8b f8                	mov    %eax,%edi
4be9aa:	83 c4 08             	add    $0x8,%esp
4be9ad:	8b 45 bc             	mov    -0x44(%ebp),%eax
4be9b0:	0b 45 c0             	or     -0x40(%ebp),%eax
4be9b3:	74 04                	je     0x4be9b9
4be9b5:	b1 01                	mov    $0x1,%cl
4be9b7:	eb 02                	jmp    0x4be9bb
4be9b9:	32 c9                	xor    %cl,%cl
4be9bb:	8b 45 f8             	mov    -0x8(%ebp),%eax
4be9be:	88 48 35             	mov    %cl,0x35(%eax)
4be9c1:	85 ff                	test   %edi,%edi
4be9c3:	0f 84 7b 02 00 00    	je     0x4bec44
4be9c9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4be9cc:	e9 36 fe ff ff       	jmp    0x4be807
4be9d1:	80 fb 30             	cmp    $0x30,%bl
4be9d4:	0f 85 b8 01 00 00    	jne    0x4beb92
4be9da:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4be9dd:	50                   	push   %eax
4be9de:	57                   	push   %edi
4be9df:	e8 9c 21 f9 ff       	call   0x450b80
4be9e4:	8b f8                	mov    %eax,%edi
4be9e6:	83 c4 08             	add    $0x8,%esp
4be9e9:	85 ff                	test   %edi,%edi
4be9eb:	0f 84 53 02 00 00    	je     0x4bec44
4be9f1:	8b 5d b4             	mov    -0x4c(%ebp),%ebx
4be9f4:	8b c3                	mov    %ebx,%eax
4be9f6:	83 e8 00             	sub    $0x0,%eax
4be9f9:	74 39                	je     0x4bea34
4be9fb:	83 e8 01             	sub    $0x1,%eax
4be9fe:	74 34                	je     0x4bea34
4bea00:	83 e8 01             	sub    $0x1,%eax
4bea03:	74 2f                	je     0x4bea34
4bea05:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4bea08:	83 c1 04             	add    $0x4,%ecx
4bea0b:	f6 01 01             	testb  $0x1,(%ecx)
4bea0e:	74 0a                	je     0x4bea1a
4bea10:	8b 01                	mov    (%ecx),%eax
4bea12:	83 e0 fc             	and    $0xfffffffc,%eax
4bea15:	83 c0 04             	add    $0x4,%eax
4bea18:	eb 05                	jmp    0x4bea1f
4bea1a:	e8 11 22 f9 ff       	call   0x450c30
4bea1f:	ff 75 b8             	push   -0x48(%ebp)
4bea22:	8b c8                	mov    %eax,%ecx
4bea24:	53                   	push   %ebx
4bea25:	6a 06                	push   $0x6
4bea27:	e8 f4 1c fa ff       	call   0x460720
4bea2c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bea2f:	e9 d3 fd ff ff       	jmp    0x4be807
4bea34:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4bea37:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bea3a:	83 49 14 40          	orl    $0x40,0x14(%ecx)
4bea3e:	89 59 38             	mov    %ebx,0x38(%ecx)
4bea41:	e9 c1 fd ff ff       	jmp    0x4be807
4bea46:	80 fb 50             	cmp    $0x50,%bl
4bea49:	0f 85 43 01 00 00    	jne    0x4beb92
4bea4f:	8d 45 ac             	lea    -0x54(%ebp),%eax
4bea52:	83 ce 20             	or     $0x20,%esi
4bea55:	50                   	push   %eax
4bea56:	57                   	push   %edi
4bea57:	e8 24 21 f9 ff       	call   0x450b80
4bea5c:	8b f8                	mov    %eax,%edi
4bea5e:	83 c4 08             	add    $0x8,%esp
4bea61:	8b 45 ac             	mov    -0x54(%ebp),%eax
4bea64:	0b 45 b0             	or     -0x50(%ebp),%eax
4bea67:	74 04                	je     0x4bea6d
4bea69:	b0 01                	mov    $0x1,%al
4bea6b:	eb 02                	jmp    0x4bea6f
4bea6d:	32 c0                	xor    %al,%al
4bea6f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4bea72:	88 41 37             	mov    %al,0x37(%ecx)
4bea75:	85 ff                	test   %edi,%edi
4bea77:	0f 84 c7 01 00 00    	je     0x4bec44
4bea7d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bea80:	e9 82 fd ff ff       	jmp    0x4be807
4bea85:	83 f8 14             	cmp    $0x14,%eax
4bea88:	0f 84 aa 00 00 00    	je     0x4beb38
4bea8e:	3d e7 03 00 00       	cmp    $0x3e7,%eax
4bea93:	0f 85 f9 00 00 00    	jne    0x4beb92
4bea99:	80 fb 3a             	cmp    $0x3a,%bl
4bea9c:	0f 85 f0 00 00 00    	jne    0x4beb92
4beaa2:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4beaa5:	83 c7 fe             	add    $0xfffffffe,%edi
4beaa8:	8b 43 28             	mov    0x28(%ebx),%eax
4beaab:	83 c7 02             	add    $0x2,%edi
4beaae:	85 c0                	test   %eax,%eax
4beab0:	74 20                	je     0x4bead2
4beab2:	8b 4b 20             	mov    0x20(%ebx),%ecx
4beab5:	8b 10                	mov    (%eax),%edx
4beab7:	3b ca                	cmp    %edx,%ecx
4beab9:	7d 12                	jge    0x4beacd
4beabb:	8b 44 88 04          	mov    0x4(%eax,%ecx,4),%eax
4beabf:	89 45 f0             	mov    %eax,-0x10(%ebp)
4beac2:	8d 41 01             	lea    0x1(%ecx),%eax
4beac5:	89 43 20             	mov    %eax,0x20(%ebx)
4beac8:	8b 45 f0             	mov    -0x10(%ebp),%eax
4beacb:	eb 2f                	jmp    0x4beafc
4beacd:	3b 53 24             	cmp    0x24(%ebx),%edx
4bead0:	75 10                	jne    0x4beae2
4bead2:	8b 43 24             	mov    0x24(%ebx),%eax
4bead5:	8d 4b 1c             	lea    0x1c(%ebx),%ecx
4bead8:	40                   	inc    %eax
4bead9:	50                   	push   %eax
4beada:	e8 b1 ed f9 ff       	call   0x45d890
4beadf:	8b 43 28             	mov    0x28(%ebx),%eax
4beae2:	ff 00                	incl   (%eax)
4beae4:	ff 73 1c             	push   0x1c(%ebx)
4beae7:	e8 f4 93 00 00       	call   0x4c7ee0
4beaec:	8b 53 20             	mov    0x20(%ebx),%edx
4beaef:	83 c4 04             	add    $0x4,%esp
4beaf2:	8b 4b 28             	mov    0x28(%ebx),%ecx
4beaf5:	89 44 91 04          	mov    %eax,0x4(%ecx,%edx,4)
4beaf9:	ff 43 20             	incl   0x20(%ebx)
4beafc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4beaff:	57                   	push   %edi
4beb00:	50                   	push   %eax
4beb01:	e8 7a a2 00 00       	call   0x4c8d80
4beb06:	8b f8                	mov    %eax,%edi
4beb08:	85 ff                	test   %edi,%edi
4beb0a:	0f 84 34 01 00 00    	je     0x4bec44
4beb10:	8b 45 fc             	mov    -0x4(%ebp),%eax
4beb13:	3b 38                	cmp    (%eax),%edi
4beb15:	0f 83 f0 fc ff ff    	jae    0x4be80b
4beb1b:	66 8b 07             	mov    (%edi),%ax
4beb1e:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4beb21:	66 c7 45 f4 ba 3e    	movw   $0x3eba,-0xc(%ebp)
4beb27:	66 3b 01             	cmp    (%ecx),%ax
4beb2a:	0f 84 78 ff ff ff    	je     0x4beaa8
4beb30:	8b 45 fc             	mov    -0x4(%ebp),%eax
4beb33:	e9 cf fc ff ff       	jmp    0x4be807
4beb38:	80 fb a2             	cmp    $0xa2,%bl
4beb3b:	75 55                	jne    0x4beb92
4beb3d:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4beb40:	c6 45 ec 00          	movb   $0x0,-0x14(%ebp)
4beb44:	83 4b 14 01          	orl    $0x1,0x14(%ebx)
4beb48:	8b 4b 04             	mov    0x4(%ebx),%ecx
4beb4b:	f6 c1 03             	test   $0x3,%cl
4beb4e:	75 05                	jne    0x4beb55
4beb50:	83 e1 fc             	and    $0xfffffffc,%ecx
4beb53:	eb 11                	jmp    0x4beb66
4beb55:	8b c1                	mov    %ecx,%eax
4beb57:	d1 e8                	shr    $1,%eax
4beb59:	a8 01                	test   $0x1,%al
4beb5b:	74 04                	je     0x4beb61
4beb5d:	33 c9                	xor    %ecx,%ecx
4beb5f:	eb 05                	jmp    0x4beb66
4beb61:	83 e1 fc             	and    $0xfffffffc,%ecx
4beb64:	8b 09                	mov    (%ecx),%ecx
4beb66:	51                   	push   %ecx
4beb67:	ff 75 ec             	push   -0x14(%ebp)
4beb6a:	8d 4b 2c             	lea    0x2c(%ebx),%ecx
4beb6d:	e8 be cd f9 ff       	call   0x45b930
4beb72:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4beb75:	51                   	push   %ecx
4beb76:	57                   	push   %edi
4beb77:	50                   	push   %eax
4beb78:	e8 73 05 fa ff       	call   0x45f0f0
4beb7d:	8b f8                	mov    %eax,%edi
4beb7f:	83 c4 0c             	add    $0xc,%esp
4beb82:	85 ff                	test   %edi,%edi
4beb84:	0f 84 ba 00 00 00    	je     0x4bec44
4beb8a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4beb8d:	e9 75 fc ff ff       	jmp    0x4be807
4beb92:	8b c3                	mov    %ebx,%eax
4beb94:	24 07                	and    $0x7,%al
4beb96:	3c 04                	cmp    $0x4,%al
4beb98:	0f 84 8c 00 00 00    	je     0x4bec2a
4beb9e:	85 db                	test   %ebx,%ebx
4beba0:	0f 84 84 00 00 00    	je     0x4bec2a
4beba6:	8b 55 f8             	mov    -0x8(%ebp),%edx
4beba9:	8d 42 04             	lea    0x4(%edx),%eax
4bebac:	81 fb 40 1f 00 00    	cmp    $0x1f40,%ebx
4bebb2:	72 24                	jb     0x4bebd8
4bebb4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4bebb7:	51                   	push   %ecx
4bebb8:	50                   	push   %eax
4bebb9:	68 94 d8 68 00       	push   $0x68d894
4bebbe:	57                   	push   %edi
4bebbf:	6a 00                	push   $0x0
4bebc1:	53                   	push   %ebx
4bebc2:	8d 4a 08             	lea    0x8(%edx),%ecx
4bebc5:	e8 b6 d9 fe ff       	call   0x4ac580