48ea82:	3b d7                	cmp    %edi,%edx
48ea84:	75 18                	jne    0x48ea9e
48ea86:	83 f9 0a             	cmp    $0xa,%ecx
48ea89:	74 3d                	je     0x48eac8
48ea8b:	83 f9 0d             	cmp    $0xd,%ecx
48ea8e:	74 04                	je     0x48ea94
48ea90:	33 c0                	xor    %eax,%eax
48ea92:	eb 4d                	jmp    0x48eae1
48ea94:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48ea97:	33 d2                	xor    %edx,%edx
48ea99:	42                   	inc    %edx
48ea9a:	89 11                	mov    %edx,(%ecx)
48ea9c:	eb 26                	jmp    0x48eac4
48ea9e:	83 f9 0a             	cmp    $0xa,%ecx
48eaa1:	74 25                	je     0x48eac8
48eaa3:	76 eb                	jbe    0x48ea90
48eaa5:	33 d2                	xor    %edx,%edx
48eaa7:	42                   	inc    %edx
48eaa8:	83 f9 0d             	cmp    $0xd,%ecx
48eaab:	76 12                	jbe    0x48eabf
48eaad:	81 f9 85 00 00 00    	cmp    $0x85,%ecx
48eab3:	74 0a                	je     0x48eabf
48eab5:	8d 81 d8 df ff ff    	lea    -0x2028(%ecx),%eax
48eabb:	3b c2                	cmp    %edx,%eax
48eabd:	77 d1                	ja     0x48ea90
48eabf:	8b 45 0c             	mov    0xc(%ebp),%eax
48eac2:	89 10                	mov    %edx,(%eax)
48eac4:	8b c2                	mov    %edx,%eax
48eac6:	eb 19                	jmp    0x48eae1
48eac8:	33 d2                	xor    %edx,%edx
48eaca:	3b 75 08             	cmp    0x8(%ebp),%esi
48eacd:	76 07                	jbe    0x48ead6
48eacf:	66 83 7e fe 0d       	cmpw   $0xd,-0x2(%esi)
48ead4:	74 03                	je     0x48ead9
48ead6:	8d 7a 01             	lea    0x1(%edx),%edi
48ead9:	8b 45 0c             	mov    0xc(%ebp),%eax
48eadc:	89 38                	mov    %edi,(%eax)
48eade:	8d 42 01             	lea    0x1(%edx),%eax
48eae1:	5f                   	pop    %edi
48eae2:	5e                   	pop    %esi
48eae3:	5b                   	pop    %ebx
48eae4:	5d                   	pop    %ebp
48eae5:	c3                   	ret
48eae6:	55                   	push   %ebp
48eae7:	8b ec                	mov    %esp,%ebp
48eae9:	83 ec 0c             	sub    $0xc,%esp
48eaec:	53                   	push   %ebx
48eaed:	8b da                	mov    %edx,%ebx
48eaef:	33 d2                	xor    %edx,%edx
48eaf1:	56                   	push   %esi
48eaf2:	42                   	inc    %edx
48eaf3:	57                   	push   %edi
48eaf4:	0f b7 03             	movzwl (%ebx),%eax
48eaf7:	8b f9                	mov    %ecx,%edi
48eaf9:	0f b6 f0             	movzbl %al,%esi
48eafc:	23 f2                	and    %edx,%esi
48eafe:	89 45 fc             	mov    %eax,-0x4(%ebp)
48eb01:	81 ff 00 01 00 00    	cmp    $0x100,%edi
48eb07:	73 46                	jae    0x48eb4f
48eb09:	a8 04                	test   $0x4,%al
48eb0b:	75 1f                	jne    0x48eb2c
48eb0d:	a8 02                	test   $0x2,%al
48eb0f:	0f 84 7d 03 00 00    	je     0x48ee92
48eb15:	83 e1 07             	and    $0x7,%ecx
48eb18:	c1 ef 03             	shr    $0x3,%edi
48eb1b:	d2 e2                	shl    %cl,%dl
48eb1d:	6a 00                	push   $0x0
48eb1f:	58                   	pop    %eax
48eb20:	84 54 1f 02          	test   %dl,0x2(%edi,%ebx,1)
48eb24:	0f 95 c0             	setne  %al
48eb27:	e9 68 03 00 00       	jmp    0x48ee94
48eb2c:	a8 02                	test   $0x2,%al
48eb2e:	74 1f                	je     0x48eb4f
48eb30:	8b c7                	mov    %edi,%eax
48eb32:	83 e1 07             	and    $0x7,%ecx
48eb35:	c1 e8 03             	shr    $0x3,%eax
48eb38:	d3 e2                	shl    %cl,%edx
48eb3a:	84 54 18 02          	test   %dl,0x2(%eax,%ebx,1)
48eb3e:	74 0c                	je     0x48eb4c
48eb40:	33 c0                	xor    %eax,%eax
48eb42:	85 f6                	test   %esi,%esi
48eb44:	0f 94 c0             	sete   %al
48eb47:	e9 48 03 00 00       	jmp    0x48ee94
48eb4c:	8b 45 fc             	mov    -0x4(%ebp),%eax
48eb4f:	6a 02                	push   $0x2
48eb51:	59                   	pop    %ecx
48eb52:	03 d9                	add    %ecx,%ebx
48eb54:	22 c1                	and    %cl,%al
48eb56:	74 03                	je     0x48eb5b
48eb58:	83 c3 20             	add    $0x20,%ebx
48eb5b:	0f b7 0b             	movzwl (%ebx),%ecx
48eb5e:	66 85 c9             	test   %cx,%cx
48eb61:	0f 84 2b 03 00 00    	je     0x48ee92
48eb67:	8b c7                	mov    %edi,%eax
48eb69:	c7 45 fc 80 00 00 00 	movl   $0x80,-0x4(%ebp)
48eb70:	99                   	cltd
48eb71:	f7 7d fc             	idivl  -0x4(%ebp)
48eb74:	c7 45 f4 03 00 00 00 	movl   $0x3,-0xc(%ebp)
48eb7b:	89 55 fc             	mov    %edx,-0x4(%ebp)
48eb7e:	89 45 f8             	mov    %eax,-0x8(%ebp)
48eb81:	33 c0                	xor    %eax,%eax
48eb83:	83 c3 02             	add    $0x2,%ebx
48eb86:	40                   	inc    %eax
48eb87:	6a 02                	push   $0x2
48eb89:	66 3b c8             	cmp    %ax,%cx
48eb8c:	58                   	pop    %eax
48eb8d:	75 44                	jne    0x48ebd3
48eb8f:	0f b7 0b             	movzwl (%ebx),%ecx
48eb92:	03 d8                	add    %eax,%ebx
48eb94:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
48eb98:	74 2c                	je     0x48ebc6
48eb9a:	8b c1                	mov    %ecx,%eax
48eb9c:	25 00 fc 00 00       	and    $0xfc00,%eax
48eba1:	3d 00 d8 00 00       	cmp    $0xd800,%eax
48eba6:	75 1e                	jne    0x48ebc6
48eba8:	0f b7 03             	movzwl (%ebx),%eax
48ebab:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
48ebb1:	25 ff 03 00 00       	and    $0x3ff,%eax
48ebb6:	c1 e1 0a             	shl    $0xa,%ecx
48ebb9:	0b c8                	or     %eax,%ecx
48ebbb:	6a 02                	push   $0x2
48ebbd:	58                   	pop    %eax
48ebbe:	81 c1 00 00 01 00    	add    $0x10000,%ecx
48ebc4:	03 d8                	add    %eax,%ebx
48ebc6:	3b f9                	cmp    %ecx,%edi
48ebc8:	0f 84 72 ff ff ff    	je     0x48eb40
48ebce:	e9 b3 02 00 00       	jmp    0x48ee86
48ebd3:	66 3b c8             	cmp    %ax,%cx
48ebd6:	0f 85 83 00 00 00    	jne    0x48ec5f
48ebdc:	0f b7 0b             	movzwl (%ebx),%ecx
48ebdf:	03 d8                	add    %eax,%ebx
48ebe1:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
48ebe5:	74 5e                	je     0x48ec45
48ebe7:	8b c1                	mov    %ecx,%eax
48ebe9:	25 00 fc 00 00       	and    $0xfc00,%eax
48ebee:	6a 02                	push   $0x2
48ebf0:	3d 00 d8 00 00       	cmp    $0xd800,%eax
48ebf5:	75 1c                	jne    0x48ec13
48ebf7:	0f b7 03             	movzwl (%ebx),%eax
48ebfa:	ba ff 03 00 00       	mov    $0x3ff,%edx
48ebff:	23 ca                	and    %edx,%ecx
48ec01:	23 c2                	and    %edx,%eax
48ec03:	c1 e1 0a             	shl    $0xa,%ecx
48ec06:	0b c8                	or     %eax,%ecx
48ec08:	58                   	pop    %eax
48ec09:	81 c1 00 00 01 00    	add    $0x10000,%ecx
48ec0f:	03 d8                	add    %eax,%ebx
48ec11:	eb 01                	jmp    0x48ec14
48ec13:	58                   	pop    %eax
48ec14:	0f b7 13             	movzwl (%ebx),%edx
48ec17:	03 d8                	add    %eax,%ebx
48ec19:	8b c2                	mov    %edx,%eax
48ec1b:	25 00 fc 00 00       	and    $0xfc00,%eax
48ec20:	3d 00 d8 00 00       	cmp    $0xd800,%eax
48ec25:	75 23                	jne    0x48ec4a
48ec27:	0f b7 03             	movzwl (%ebx),%eax
48ec2a:	81 e2 ff 03 00 00    	and    $0x3ff,%edx
48ec30:	25 ff 03 00 00       	and    $0x3ff,%eax
48ec35:	c1 e2 0a             	shl    $0xa,%edx
48ec38:	0b d0                	or     %eax,%edx
48ec3a:	6a 02                	push   $0x2
48ec3c:	81 c2 00 00 01 00    	add    $0x10000,%edx
48ec42:	58                   	pop    %eax
48ec43:	eb 03                	jmp    0x48ec48
48ec45:	0f b7 13             	movzwl (%ebx),%edx
48ec48:	03 d8                	add    %eax,%ebx
48ec4a:	3b f9                	cmp    %ecx,%edi
48ec4c:	0f 82 31 02 00 00    	jb     0x48ee83
48ec52:	3b fa                	cmp    %edx,%edi
48ec54:	0f 86 e6 fe ff ff    	jbe    0x48eb40
48ec5a:	e9 24 02 00 00       	jmp    0x48ee83
48ec5f:	8b 45 f8             	mov    -0x8(%ebp),%eax
48ec62:	0f b6 80 40 3b 4b 00 	movzbl 0x4b3b40(%eax),%eax
48ec69:	c1 e0 07             	shl    $0x7,%eax
48ec6c:	03 c2                	add    %edx,%eax
48ec6e:	33 d2                	xor    %edx,%edx
48ec70:	66 3b 4d f4          	cmp    -0xc(%ebp),%cx
48ec74:	0f b7 0b             	movzwl (%ebx),%ecx
48ec77:	0f 94 c2             	sete   %dl
48ec7a:	0f b7 04 45 40 58 4a 	movzwl 0x4a5840(,%eax,2),%eax
48ec81:	00
48ec82:	83 f9 0d             	cmp    $0xd,%ecx
48ec85:	0f 87 60 02 00 00    	ja     0x48eeeb
48ec8b:	ff 24 8d f2 ee 48 00 	jmp    *0x48eef2(,%ecx,4)
48ec92:	85 d2                	test   %edx,%edx
48ec94:	0f 85 a6 fe ff ff    	jne    0x48eb40
48ec9a:	e9 e1 01 00 00       	jmp    0x48ee80
48ec9f:	8a 04 c5 51 2f 4a 00 	mov    0x4a2f51(,%eax,8),%al
48eca6:	3c 09                	cmp    $0x9,%al
48eca8:	0f 84 c7 01 00 00    	je     0x48ee75
48ecae:	3c 05                	cmp    $0x5,%al
48ecb0:	0f 84 bf 01 00 00    	je     0x48ee75
48ecb6:	3c 08                	cmp    $0x8,%al
48ecb8:	e9 28 02 00 00       	jmp    0x48eee5
48ecbd:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
48ecc4:	00
48ecc5:	0f b7 4b 02          	movzwl 0x2(%ebx),%ecx
48ecc9:	2b 0c 85 a0 89 4b 00 	sub    0x4b89a0(,%eax,4),%ecx
48ecd0:	f7 d9                	neg    %ecx
48ecd2:	1b c9                	sbb    %ecx,%ecx
48ecd4:	41                   	inc    %ecx
48ecd5:	3b ca                	cmp    %edx,%ecx
48ecd7:	e9 9e 01 00 00       	jmp    0x48ee7a
48ecdc:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
48ece3:	00
48ece4:	33 c9                	xor    %ecx,%ecx
48ece6:	66 39 43 02          	cmp    %ax,0x2(%ebx)
48ecea:	0f 94 c1             	sete   %cl
48eced:	eb e6                	jmp    0x48ecd5
48ecef:	0f b6 04 c5 50 2f 4a 	movzbl 0x4a2f50(,%eax,8),%eax
48ecf6:	00
48ecf7:	eb eb                	jmp    0x48ece4
48ecf9:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
48ed00:	00
48ed01:	33 c9                	xor    %ecx,%ecx
48ed03:	41                   	inc    %ecx
48ed04:	8b 04 85 a0 89 4b 00 	mov    0x4b89a0(,%eax,4),%eax
48ed0b:	3b c1                	cmp    %ecx,%eax
48ed0d:	74 09                	je     0x48ed18
48ed0f:	83 f8 03             	cmp    $0x3,%eax
48ed12:	0f 85 cf 01 00 00    	jne    0x48eee7
48ed18:	8b c1                	mov    %ecx,%eax
48ed1a:	e9 59 01 00 00       	jmp    0x48ee78
48ed1f:	b9 0e 18 00 00       	mov    $0x180e,%ecx
48ed24:	3b f9                	cmp    %ecx,%edi
48ed26:	77 3d                	ja     0x48ed65
48ed28:	0f 84 64 ff ff ff    	je     0x48ec92
48ed2e:	83 ff 09             	cmp    $0x9,%edi
48ed31:	72 7e                	jb     0x48edb1
48ed33:	83 ff 0d             	cmp    $0xd,%edi
48ed36:	0f 86 56 ff ff ff    	jbe    0x48ec92
48ed3c:	83 ff 20             	cmp    $0x20,%edi
48ed3f:	0f 84 4d ff ff ff    	je     0x48ec92
48ed45:	81 ff 85 00 00 00    	cmp    $0x85,%edi
48ed4b:	0f 84 41 ff ff ff    	je     0x48ec92
48ed51:	81 ff a0 00 00 00    	cmp    $0xa0,%edi
48ed57:	0f 84 35 ff ff ff    	je     0x48ec92
48ed5d:	81 ff 80 16 00 00    	cmp    $0x1680,%edi
48ed63:	eb 46                	jmp    0x48edab
48ed65:	81 ff 00 20 00 00    	cmp    $0x2000,%edi
48ed6b:	72 44                	jb     0x48edb1
48ed6d:	81 ff 0a 20 00 00    	cmp    $0x200a,%edi
48ed73:	0f 86 19 ff ff ff    	jbe    0x48ec92
48ed79:	81 ff 27 20 00 00    	cmp    $0x2027,%edi
48ed7f:	76 30                	jbe    0x48edb1
48ed81:	81 ff 29 20 00 00    	cmp    $0x2029,%edi
48ed87:	0f 86 05 ff ff ff    	jbe    0x48ec92
48ed8d:	81 ff 2f 20 00 00    	cmp    $0x202f,%edi
48ed93:	0f 84 f9 fe ff ff    	je     0x48ec92
48ed99:	81 ff 5f 20 00 00    	cmp    $0x205f,%edi
48ed9f:	0f 84 ed fe ff ff    	je     0x48ec92
48eda5:	81 ff 00 30 00 00    	cmp    $0x3000,%edi
48edab:	0f 84 e1 fe ff ff    	je     0x48ec92
48edb1:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
48edb8:	00
48edb9:	33 c9                	xor    %ecx,%ecx
48edbb:	83 3c 85 a0 89 4b 00 	cmpl   $0x6,0x4b89a0(,%eax,4)
48edc2:	06
48edc3:	e9 22 ff ff ff       	jmp    0x48ecea
48edc8:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
48edcf:	00
48edd0:	33 c9                	xor    %ecx,%ecx
48edd2:	41                   	inc    %ecx
48edd3:	8b 04 85 a0 89 4b 00 	mov    0x4b89a0(,%eax,4),%eax
48edda:	3b c1                	cmp    %ecx,%eax
48eddc:	0f 84 36 ff ff ff    	je     0x48ed18
48ede2:	83 f8 03             	cmp    $0x3,%eax
48ede5:	0f 84 2d ff ff ff    	je     0x48ed18
48edeb:	83 ff 5f             	cmp    $0x5f,%edi
48edee:	0f 84 24 ff ff ff    	je     0x48ed18
48edf4:	e9 ee 00 00 00       	jmp    0x48eee7
48edf9:	81 ff a0 00 00 00    	cmp    $0xa0,%edi
48edff:	73 12                	jae    0x48ee13
48ee01:	83 ff 24             	cmp    $0x24,%edi
48ee04:	74 6f                	je     0x48ee75
48ee06:	83 ff 40             	cmp    $0x40,%edi
48ee09:	74 6a                	je     0x48ee75
48ee0b:	83 ff 60             	cmp    $0x60,%edi
48ee0e:	e9 d2 00 00 00       	jmp    0x48eee5
48ee13:	8d 87 00 28 ff ff    	lea    -0xd800(%edi),%eax
48ee19:	b9 ff 07 00 00       	mov    $0x7ff,%ecx
48ee1e:	3b c8                	cmp    %eax,%ecx
48ee20:	1b c0                	sbb    %eax,%eax
48ee22:	f7 d8                	neg    %eax
48ee24:	eb 52                	jmp    0x48ee78
48ee26:	8a 0c c5 51 2f 4a 00 	mov    0x4a2f51(,%eax,8),%cl
48ee2d:	0f b6 c1             	movzbl %cl,%eax
48ee30:	8b 04 85 a0 89 4b 00 	mov    0x4b89a0(,%eax,4),%eax
48ee37:	83 f8 06             	cmp    $0x6,%eax
48ee3a:	0f 84 a7 00 00 00    	je     0x48eee7
48ee40:	85 c0                	test   %eax,%eax
48ee42:	75 31                	jne    0x48ee75
48ee44:	80 f9 01             	cmp    $0x1,%cl
48ee47:	0f 85 9a 00 00 00    	jne    0x48eee7
48ee4d:	81 ff 1c 06 00 00    	cmp    $0x61c,%edi
48ee53:	0f 84 8e 00 00 00    	je     0x48eee7
48ee59:	81 ff 0e 18 00 00    	cmp    $0x180e,%edi
48ee5f:	0f 84 82 00 00 00    	je     0x48eee7
48ee65:	81 ff 66 20 00 00    	cmp    $0x2066,%edi
48ee6b:	72 08                	jb     0x48ee75
48ee6d:	81 ff 69 20 00 00    	cmp    $0x2069,%edi
48ee73:	76 72                	jbe    0x48eee7
48ee75:	33 c0                	xor    %eax,%eax
48ee77:	40                   	inc    %eax
48ee78:	3b c2                	cmp    %edx,%eax
48ee7a:	0f 84 c0 fc ff ff    	je     0x48eb40
48ee80:	83 c3 04             	add    $0x4,%ebx
48ee83:	8b 55 fc             	mov    -0x4(%ebp),%edx
48ee86:	0f b7 0b             	movzwl (%ebx),%ecx
48ee89:	66 85 c9             	test   %cx,%cx
48ee8c:	0f 85 ef fc ff ff    	jne    0x48eb81
48ee92:	8b c6                	mov    %esi,%eax
48ee94:	5f                   	pop    %edi
48ee95:	5e                   	pop    %esi
48ee96:	5b                   	pop    %ebx
48ee97:	8b e5                	mov    %ebp,%esp
48ee99:	5d                   	pop    %ebp
48ee9a:	c3                   	ret
48ee9b:	8a 0c c5 51 2f 4a 00 	mov    0x4a2f51(,%eax,8),%cl
48eea2:	80 f9 1b             	cmp    $0x1b,%cl
48eea5:	74 40                	je     0x48eee7
48eea7:	80 f9 1c             	cmp    $0x1c,%cl
48eeaa:	74 3b                	je     0x48eee7
48eeac:	0f b6 c1             	movzbl %cl,%eax
48eeaf:	83 3c 85 a0 89 4b 00 	cmpl   $0x0,0x4b89a0(,%eax,4)
48eeb6:	00
48eeb7:	75 bc                	jne    0x48ee75
48eeb9:	80 f9 01             	cmp    $0x1,%cl
48eebc:	75 29                	jne    0x48eee7
48eebe:	81 ff 1c 06 00 00    	cmp    $0x61c,%edi
48eec4:	eb 99                	jmp    0x48ee5f
48eec6:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
48eecd:	00
48eece:	8b 04 85 a0 89 4b 00 	mov    0x4b89a0(,%eax,4),%eax
48eed5:	83 f8 04             	cmp    $0x4,%eax
48eed8:	74 9b                	je     0x48ee75
48eeda:	81 ff 00 01 00 00    	cmp    $0x100,%edi
48eee0:	73 05                	jae    0x48eee7
48eee2:	83 f8 05             	cmp    $0x5,%eax
48eee5:	74 8e                	je     0x48ee75
48eee7:	33 c0                	xor    %eax,%eax
48eee9:	eb 8d                	jmp    0x48ee78
48eeeb:	33 c0                	xor    %eax,%eax
48eeed:	eb a5                	jmp    0x48ee94
48eeef:	8d 49 00             	lea    0x0(%ecx),%ecx
48eef2:	92                   	xchg   %eax,%edx
48eef3:	ec                   	in     (%dx),%al
48eef4:	48                   	dec    %eax
48eef5:	00 9f ec 48 00 bd    	add    %bl,-0x42ffb714(%edi)
48eefb:	ec                   	in     (%dx),%al