484a20:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
484a26:	0f 82 4a 5c f8 ff    	jb     0x40a676
484a2c:	81 f9 0a 20 00 00    	cmp    $0x200a,%ecx
484a32:	0f 86 3c 5b f8 ff    	jbe    0x40a574
484a38:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
484a3e:	0f 84 30 5b f8 ff    	je     0x40a574
484a44:	e9 2d 5c f8 ff       	jmp    0x40a676
484a49:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
484a4f:	0f 84 1f 5b f8 ff    	je     0x40a574
484a55:	e9 1c 5c f8 ff       	jmp    0x40a676
484a5a:	8b 45 f8             	mov    -0x8(%ebp),%eax
484a5d:	3b 43 7c             	cmp    0x7c(%ebx),%eax
484a60:	0f 83 2e 61 f8 ff    	jae    0x40ab94
484a66:	0f b7 08             	movzwl (%eax),%ecx
484a69:	83 c0 02             	add    $0x2,%eax
484a6c:	89 45 f8             	mov    %eax,-0x8(%ebp)
484a6f:	39 55 e4             	cmp    %edx,-0x1c(%ebp)
484a72:	74 2e                	je     0x484aa2
484a74:	8b c1                	mov    %ecx,%eax
484a76:	25 00 fc 00 00       	and    $0xfc00,%eax
484a7b:	3d 00 d8 00 00       	cmp    $0xd800,%eax
484a80:	75 20                	jne    0x484aa2
484a82:	8b 45 f8             	mov    -0x8(%ebp),%eax
484a85:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
484a8b:	0f b7 00             	movzwl (%eax),%eax
484a8e:	c1 e1 0a             	shl    $0xa,%ecx
484a91:	25 ff 03 00 00       	and    $0x3ff,%eax
484a96:	0b c8                	or     %eax,%ecx
484a98:	81 c1 00 00 01 00    	add    $0x10000,%ecx
484a9e:	83 45 f8 02          	addl   $0x2,-0x8(%ebp)
484aa2:	81 f9 0e 18 00 00    	cmp    $0x180e,%ecx
484aa8:	77 3c                	ja     0x484ae6
484aaa:	0f 84 c6 5b f8 ff    	je     0x40a676
484ab0:	81 f9 a0 00 00 00    	cmp    $0xa0,%ecx
484ab6:	77 1d                	ja     0x484ad5
484ab8:	0f 84 b8 5b f8 ff    	je     0x40a676
484abe:	83 f9 09             	cmp    $0x9,%ecx
484ac1:	0f 84 af 5b f8 ff    	je     0x40a676
484ac7:	83 f9 20             	cmp    $0x20,%ecx
484aca:	0f 85 a4 5a f8 ff    	jne    0x40a574
484ad0:	e9 a1 5b f8 ff       	jmp    0x40a676
484ad5:	81 f9 80 16 00 00    	cmp    $0x1680,%ecx
484adb:	0f 85 93 5a f8 ff    	jne    0x40a574
484ae1:	e9 90 5b f8 ff       	jmp    0x40a676
484ae6:	81 f9 5f 20 00 00    	cmp    $0x205f,%ecx
484aec:	77 2f                	ja     0x484b1d
484aee:	0f 84 82 5b f8 ff    	je     0x40a676
484af4:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
484afa:	0f 82 74 5a f8 ff    	jb     0x40a574
484b00:	81 f9 0a 20 00 00    	cmp    $0x200a,%ecx
484b06:	0f 86 6a 5b f8 ff    	jbe    0x40a676
484b0c:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
484b12:	0f 85 5c 5a f8 ff    	jne    0x40a574
484b18:	e9 59 5b f8 ff       	jmp    0x40a676
484b1d:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
484b23:	0f 85 4b 5a f8 ff    	jne    0x40a574
484b29:	e9 48 5b f8 ff       	jmp    0x40a676
484b2e:	8b 45 f8             	mov    -0x8(%ebp),%eax
484b31:	3b 43 7c             	cmp    0x7c(%ebx),%eax
484b34:	0f 83 5a 60 f8 ff    	jae    0x40ab94
484b3a:	0f b7 08             	movzwl (%eax),%ecx
484b3d:	83 c0 02             	add    $0x2,%eax
484b40:	89 45 f8             	mov    %eax,-0x8(%ebp)
484b43:	39 55 e4             	cmp    %edx,-0x1c(%ebp)
484b46:	74 2e                	je     0x484b76
484b48:	8b c1                	mov    %ecx,%eax
484b4a:	25 00 fc 00 00       	and    $0xfc00,%eax
484b4f:	3d 00 d8 00 00       	cmp    $0xd800,%eax
484b54:	75 20                	jne    0x484b76
484b56:	8b 45 f8             	mov    -0x8(%ebp),%eax
484b59:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
484b5f:	0f b7 00             	movzwl (%eax),%eax
484b62:	c1 e1 0a             	shl    $0xa,%ecx
484b65:	25 ff 03 00 00       	and    $0x3ff,%eax
484b6a:	0b c8                	or     %eax,%ecx
484b6c:	81 c1 00 00 01 00    	add    $0x10000,%ecx
484b72:	83 45 f8 02          	addl   $0x2,-0x8(%ebp)
484b76:	81 f9 85 00 00 00    	cmp    $0x85,%ecx
484b7c:	77 1d                	ja     0x484b9b
484b7e:	0f 84 f0 59 f8 ff    	je     0x40a574
484b84:	83 f9 0a             	cmp    $0xa,%ecx
484b87:	0f 82 e9 5a f8 ff    	jb     0x40a676
484b8d:	83 f9 0d             	cmp    $0xd,%ecx
484b90:	0f 86 de 59 f8 ff    	jbe    0x40a574
484b96:	e9 db 5a f8 ff       	jmp    0x40a676
484b9b:	81 f9 28 20 00 00    	cmp    $0x2028,%ecx
484ba1:	0f 82 cf 5a f8 ff    	jb     0x40a676
484ba7:	81 f9 29 20 00 00    	cmp    $0x2029,%ecx
484bad:	0f 86 c1 59 f8 ff    	jbe    0x40a574
484bb3:	e9 be 5a f8 ff       	jmp    0x40a676
484bb8:	8b 45 f8             	mov    -0x8(%ebp),%eax
484bbb:	3b 43 7c             	cmp    0x7c(%ebx),%eax
484bbe:	0f 83 d0 5f f8 ff    	jae    0x40ab94
484bc4:	0f b7 08             	movzwl (%eax),%ecx
484bc7:	83 c0 02             	add    $0x2,%eax
484bca:	89 45 f8             	mov    %eax,-0x8(%ebp)
484bcd:	39 55 e4             	cmp    %edx,-0x1c(%ebp)
484bd0:	74 2e                	je     0x484c00
484bd2:	8b c1                	mov    %ecx,%eax
484bd4:	25 00 fc 00 00       	and    $0xfc00,%eax
484bd9:	3d 00 d8 00 00       	cmp    $0xd800,%eax
484bde:	75 20                	jne    0x484c00
484be0:	8b 45 f8             	mov    -0x8(%ebp),%eax
484be3:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
484be9:	0f b7 00             	movzwl (%eax),%eax
484bec:	c1 e1 0a             	shl    $0xa,%ecx
484bef:	25 ff 03 00 00       	and    $0x3ff,%eax
484bf4:	0b c8                	or     %eax,%ecx
484bf6:	81 c1 00 00 01 00    	add    $0x10000,%ecx
484bfc:	83 45 f8 02          	addl   $0x2,-0x8(%ebp)
484c00:	81 f9 85 00 00 00    	cmp    $0x85,%ecx
484c06:	77 17                	ja     0x484c1f
484c08:	0f 84 68 5a f8 ff    	je     0x40a676
484c0e:	8d 41 f6             	lea    -0xa(%ecx),%eax
484c11:	83 f8 03             	cmp    $0x3,%eax
484c14:	0f 87 5a 59 f8 ff    	ja     0x40a574
484c1a:	e9 57 5a f8 ff       	jmp    0x40a676
484c1f:	8d 81 d8 df ff ff    	lea    -0x2028(%ecx),%eax
484c25:	83 f8 01             	cmp    $0x1,%eax
484c28:	0f 87 46 59 f8 ff    	ja     0x40a574
484c2e:	e9 43 5a f8 ff       	jmp    0x40a676
484c33:	8b 45 f8             	mov    -0x8(%ebp),%eax
484c36:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
484c3c:	0f b7 00             	movzwl (%eax),%eax
484c3f:	c1 e1 0a             	shl    $0xa,%ecx
484c42:	25 ff 03 00 00       	and    $0x3ff,%eax
484c47:	0b c8                	or     %eax,%ecx
484c49:	81 c1 00 00 01 00    	add    $0x10000,%ecx
484c4f:	83 45 f8 02          	addl   $0x2,-0x8(%ebp)
484c53:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
484c56:	e9 2b 5c f8 ff       	jmp    0x40a886
484c5b:	83 f8 0a             	cmp    $0xa,%eax
484c5e:	0f 87 b3 4e 00 00    	ja     0x489b17
484c64:	ff 24 85 9a b8 48 00 	jmp    *0x48b89a(,%eax,4)
484c6b:	8a 04 cd 09 b1 4a 00 	mov    0x4ab109(,%ecx,8),%al
484c72:	3c 09                	cmp    $0x9,%al
484c74:	74 1a                	je     0x484c90
484c76:	3c 05                	cmp    $0x5,%al
484c78:	74 16                	je     0x484c90
484c7a:	3c 08                	cmp    $0x8,%al
484c7c:	74 12                	je     0x484c90
484c7e:	33 c9                	xor    %ecx,%ecx
484c80:	eb 2a                	jmp    0x484cac
484c82:	83 fe 0f             	cmp    $0xf,%esi
484c85:	0f 84 e9 58 f8 ff    	je     0x40a574
484c8b:	e9 6b 5c f8 ff       	jmp    0x40a8fb
484c90:	b9 01 00 00 00       	mov    $0x1,%ecx
484c95:	eb 15                	jmp    0x484cac
484c97:	0f b6 04 cd 09 b1 4a 	movzbl 0x4ab109(,%ecx,8),%eax
484c9e:	00
484c9f:	33 c9                	xor    %ecx,%ecx
484ca1:	83 3c 85 80 61 4b 00 	cmpl   $0x6,0x4b6180(,%eax,4)
484ca8:	06
484ca9:	0f 94 c1             	sete   %cl
484cac:	33 c0                	xor    %eax,%eax
484cae:	83 fe 0f             	cmp    $0xf,%esi
484cb1:	0f 94 c0             	sete   %al
484cb4:	3b c8                	cmp    %eax,%ecx
484cb6:	0f 84 b8 58 f8 ff    	je     0x40a574
484cbc:	e9 3a 5c f8 ff       	jmp    0x40a8fb
484cc1:	0f b6 0c cd 09 b1 4a 	movzbl 0x4ab109(,%ecx,8),%ecx
484cc8:	00
484cc9:	0f b7 47 04          	movzwl 0x4(%edi),%eax
484ccd:	33 d2                	xor    %edx,%edx
484ccf:	3b 04 8d 80 61 4b 00 	cmp    0x4b6180(,%ecx,4),%eax
484cd6:	0f 95 c2             	setne  %dl
484cd9:	33 c0                	xor    %eax,%eax
484cdb:	83 fe 10             	cmp    $0x10,%esi
484cde:	0f 94 c0             	sete   %al
484ce1:	3b d0                	cmp    %eax,%edx
484ce3:	0f 84 8b 58 f8 ff    	je     0x40a574
484ce9:	e9 0d 5c f8 ff       	jmp    0x40a8fb
484cee:	0f b6 04 cd 09 b1 4a 	movzbl 0x4ab109(,%ecx,8),%eax
484cf5:	00
484cf6:	eb 08                	jmp    0x484d00
484cf8:	0f b6 04 cd 08 b1 4a 	movzbl 0x4ab108(,%ecx,8),%eax
484cff:	00
484d00:	33 c9                	xor    %ecx,%ecx
484d02:	66 39 47 04          	cmp    %ax,0x4(%edi)
484d06:	0f 95 c1             	setne  %cl
484d09:	33 c0                	xor    %eax,%eax
484d0b:	83 fe 10             	cmp    $0x10,%esi
484d0e:	0f 94 c0             	sete   %al
484d11:	3b c8                	cmp    %eax,%ecx
484d13:	0f 84 5b 58 f8 ff    	je     0x40a574
484d19:	e9 dd 5b f8 ff       	jmp    0x40a8fb
484d1e:	0f b6 04 cd 09 b1 4a 	movzbl 0x4ab109(,%ecx,8),%eax
484d25:	00
484d26:	8b 04 85 80 61 4b 00 	mov    0x4b6180(,%eax,4),%eax
484d2d:	83 f8 01             	cmp    $0x1,%eax
484d30:	0f 84 5a ff ff ff    	je     0x484c90
484d36:	83 f8 03             	cmp    $0x3,%eax
484d39:	0f 84 51 ff ff ff    	je     0x484c90
484d3f:	33 c9                	xor    %ecx,%ecx
484d41:	e9 66 ff ff ff       	jmp    0x484cac
484d46:	81 fa 0e 18 00 00    	cmp    $0x180e,%edx
484d4c:	77 51                	ja     0x484d9f
484d4e:	0f 84 2e ff ff ff    	je     0x484c82
484d54:	81 fa 85 00 00 00    	cmp    $0x85,%edx
484d5a:	77 26                	ja     0x484d82
484d5c:	0f 84 20 ff ff ff    	je     0x484c82
484d62:	83 fa 09             	cmp    $0x9,%edx
484d65:	0f 82 2c ff ff ff    	jb     0x484c97
484d6b:	83 fa 0d             	cmp    $0xd,%edx
484d6e:	0f 86 0e ff ff ff    	jbe    0x484c82
484d74:	83 fa 20             	cmp    $0x20,%edx
484d77:	0f 84 05 ff ff ff    	je     0x484c82
484d7d:	e9 15 ff ff ff       	jmp    0x484c97
484d82:	81 fa a0 00 00 00    	cmp    $0xa0,%edx
484d88:	0f 84 f4 fe ff ff    	je     0x484c82
484d8e:	81 fa 80 16 00 00    	cmp    $0x1680,%edx
484d94:	0f 84 e8 fe ff ff    	je     0x484c82
484d9a:	e9 f8 fe ff ff       	jmp    0x484c97
484d9f:	81 fa 2f 20 00 00    	cmp    $0x202f,%edx
484da5:	77 23                	ja     0x484dca
484da7:	0f 84 d5 fe ff ff    	je     0x484c82
484dad:	81 c2 00 e0 ff ff    	add    $0xffffe000,%edx
484db3:	83 fa 29             	cmp    $0x29,%edx
484db6:	0f 87 db fe ff ff    	ja     0x484c97
484dbc:	0f b6 82 ce b8 48 00 	movzbl 0x48b8ce(%edx),%eax
484dc3:	ff 24 85 c6 b8 48 00 	jmp    *0x48b8c6(,%eax,4)
484dca:	81 fa 5f 20 00 00    	cmp    $0x205f,%edx
484dd0:	0f 84 ac fe ff ff    	je     0x484c82
484dd6:	81 fa 00 30 00 00    	cmp    $0x3000,%edx
484ddc:	0f 84 a0 fe ff ff    	je     0x484c82
484de2:	e9 b0 fe ff ff       	jmp    0x484c97
484de7:	0f b6 04 cd 09 b1 4a 	movzbl 0x4ab109(,%ecx,8),%eax
484dee:	00
484def:	8b 04 85 80 61 4b 00 	mov    0x4b6180(,%eax,4),%eax
484df6:	83 f8 01             	cmp    $0x1,%eax
484df9:	0f 84 91 fe ff ff    	je     0x484c90
484dff:	83 f8 03             	cmp    $0x3,%eax
484e02:	0f 84 88 fe ff ff    	je     0x484c90
484e08:	83 fa 5f             	cmp    $0x5f,%edx
484e0b:	0f 84 7f fe ff ff    	je     0x484c90
484e11:	33 c9                	xor    %ecx,%ecx
484e13:	e9 94 fe ff ff       	jmp    0x484cac
484e18:	83 fa 24             	cmp    $0x24,%edx
484e1b:	0f 84 6f fe ff ff    	je     0x484c90
484e21:	83 fa 40             	cmp    $0x40,%edx
484e24:	0f 84 66 fe ff ff    	je     0x484c90
484e2a:	83 fa 60             	cmp    $0x60,%edx
484e2d:	0f 84 5d fe ff ff    	je     0x484c90
484e33:	81 fa a0 00 00 00    	cmp    $0xa0,%edx
484e39:	72 0c                	jb     0x484e47
484e3b:	81 fa ff d7 00 00    	cmp    $0xd7ff,%edx
484e41:	0f 86 49 fe ff ff    	jbe    0x484c90
484e47:	81 fa 00 e0 00 00    	cmp    $0xe000,%edx
484e4d:	0f 83 3d fe ff ff    	jae    0x484c90
484e53:	33 c9                	xor    %ecx,%ecx
484e55:	e9 52 fe ff ff       	jmp    0x484cac
484e5a:	83 fe 10             	cmp    $0x10,%esi
484e5d:	0f 84 11 57 f8 ff    	je     0x40a574
484e63:	e9 93 5a f8 ff       	jmp    0x40a8fb
484e68:	8b 45 f8             	mov    -0x8(%ebp),%eax
484e6b:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
484e71:	0f b7 00             	movzwl (%eax),%eax
484e74:	c1 e1 0a             	shl    $0xa,%ecx
484e77:	25 ff 03 00 00       	and    $0x3ff,%eax
484e7c:	0b c8                	or     %eax,%ecx
484e7e:	81 c1 00 00 01 00    	add    $0x10000,%ecx
484e84:	83 45 f8 02          	addl   $0x2,-0x8(%ebp)
484e88:	e9 21 57 f8 ff       	jmp    0x40a5ae
484e8d:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
484e91:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
484e97:	25 ff 03 00 00       	and    $0x3ff,%eax
484e9c:	c1 e1 0a             	shl    $0xa,%ecx
484e9f:	0b c8                	or     %eax,%ecx
484ea1:	81 c1 00 00 01 00    	add    $0x10000,%ecx
484ea7:	be 02 00 00 00       	mov    $0x2,%esi
484eac:	e9 5e 57 f8 ff       	jmp    0x40a60f
484eb1:	3b c6                	cmp    %esi,%eax
484eb3:	0f 82 bd 57 f8 ff    	jb     0x40a676
484eb9:	e9 ce f2 ff ff       	jmp    0x48418c
484ebe:	0f b7 4f 02          	movzwl 0x2(%edi),%ecx
484ec2:	0f b7 57 04          	movzwl 0x4(%edi),%edx
484ec6:	33 c0                	xor    %eax,%eax
484ec8:	83 fe 74             	cmp    $0x74,%esi
484ecb:	0f 94 c0             	sete   %al
484ece:	0f af 4b 24          	imul   0x24(%ebx),%ecx
484ed2:	89 45 d8             	mov    %eax,-0x28(%ebp)
484ed5:	8b 43 30             	mov    0x30(%ebx),%eax
484ed8:	83 c7 06             	add    $0x6,%edi
484edb:	8d 0c 48             	lea    (%eax,%ecx,2),%ecx
484ede:	89 7d cc             	mov    %edi,-0x34(%ebp)
484ee1:	85 d2                	test   %edx,%edx
484ee3:	7e 2c                	jle    0x484f11
484ee5:	8b 45 0c             	mov    0xc(%ebp),%eax
484ee8:	0f b7 31             	movzwl (%ecx),%esi
484eeb:	03 f6                	add    %esi,%esi
484eed:	4a                   	dec    %edx
484eee:	89 75 c0             	mov    %esi,-0x40(%ebp)
484ef1:	3b f0                	cmp    %eax,%esi
484ef3:	8b 73 24             	mov    0x24(%ebx),%esi
484ef6:	7d 12                	jge    0x484f0a
484ef8:	8b 43 0c             	mov    0xc(%ebx),%eax
484efb:	8b 5d c0             	mov    -0x40(%ebp),%ebx
484efe:	83 3c 98 00          	cmpl   $0x0,(%eax,%ebx,4)
484f02:	8b 5d 10             	mov    0x10(%ebp),%ebx
484f05:	7d 0b                	jge    0x484f12
484f07:	8b 45 0c             	mov    0xc(%ebp),%eax
484f0a:	8d 0c 71             	lea    (%ecx,%esi,2),%ecx
484f0d:	85 d2                	test   %edx,%edx
484f0f:	7f d7                	jg     0x484ee8
484f11:	4a                   	dec    %edx
484f12:	85 d2                	test   %edx,%edx
484f14:	79 32                	jns    0x484f48
484f16:	8b 4d d8             	mov    -0x28(%ebp),%ecx
484f19:	8b 73 54             	mov    0x54(%ebx),%esi
484f1c:	f7 de                	neg    %esi
484f1e:	1b f6                	sbb    %esi,%esi
484f20:	f7 de                	neg    %esi
484f22:	4e                   	dec    %esi
484f23:	0f b7 17             	movzwl (%edi),%edx
484f26:	8b c2                	mov    %edx,%eax
484f28:	89 45 f4             	mov    %eax,-0xc(%ebp)
484f2b:	83 c0 9e             	add    $0xffffff9e,%eax
484f2e:	89 75 ec             	mov    %esi,-0x14(%ebp)
484f31:	83 f8 07             	cmp    $0x7,%eax
484f34:	0f 87 94 01 00 00    	ja     0x4850ce
484f3a:	0f b6 80 02 b9 48 00 	movzbl 0x48b902(%eax),%eax
484f41:	ff 24 85 fa b8 48 00 	jmp    *0x48b8fa(,%eax,4)
484f48:	8b 4d c0             	mov    -0x40(%ebp),%ecx
484f4b:	8b 43 0c             	mov    0xc(%ebx),%eax
484f4e:	8b 74 88 04          	mov    0x4(%eax,%ecx,4),%esi
484f52:	2b 34 88             	sub    (%eax,%ecx,4),%esi
484f55:	8b 4d d8             	mov    -0x28(%ebp),%ecx
484f58:	eb c9                	jmp    0x484f23
484f5a:	33 c9                	xor    %ecx,%ecx
484f5c:	83 fe 72             	cmp    $0x72,%esi
484f5f:	0f b7 77 02          	movzwl 0x2(%edi),%esi
484f63:	0f 94 c1             	sete   %cl
484f66:	03 f6                	add    %esi,%esi
484f68:	83 c7 04             	add    $0x4,%edi
484f6b:	89 75 c0             	mov    %esi,-0x40(%ebp)
484f6e:	89 7d cc             	mov    %edi,-0x34(%ebp)
484f71:	89 4d d8             	mov    %ecx,-0x28(%ebp)
484f74:	3b 75 0c             	cmp    0xc(%ebp),%esi
484f77:	7d a0                	jge    0x484f19
484f79:	8b 43 0c             	mov    0xc(%ebx),%eax
484f7c:	8b 14 b0             	mov    (%eax,%esi,4),%edx
484f7f:	85 d2                	test   %edx,%edx
484f81:	78 96                	js     0x484f19
484f83:	8b 74 b0 04          	mov    0x4(%eax,%esi,4),%esi
484f87:	2b f2                	sub    %edx,%esi
484f89:	eb 98                	jmp    0x484f23
484f8b:	8b 45 f4             	mov    -0xc(%ebp),%eax
484f8e:	83 c0 9e             	add    $0xffffff9e,%eax
484f91:	0f b6 c8             	movzbl %al,%ecx
484f94:	0f be 90 20 e5 49 00 	movsbl 0x49e520(%eax),%edx