44b8e2:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
44b8e8:	77 1b                	ja     0x44b905
44b8ea:	74 7e                	je     0x44b96a
44b8ec:	8d 81 00 e0 ff ff    	lea    -0x2000(%ecx),%eax
44b8f2:	83 f8 29             	cmp    $0x29,%eax
44b8f5:	77 1e                	ja     0x44b915
44b8f7:	0f b6 80 4b 02 45 00 	movzbl 0x45024b(%eax),%eax
44b8fe:	ff 24 85 43 02 45 00 	jmp    *0x450243(,%eax,4)
44b905:	81 f9 5f 20 00 00    	cmp    $0x205f,%ecx
44b90b:	74 5d                	je     0x44b96a
44b90d:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
44b913:	74 55                	je     0x44b96a
44b915:	8b c1                	mov    %ecx,%eax
44b917:	99                   	cltd
44b918:	83 e2 7f             	and    $0x7f,%edx
44b91b:	03 c2                	add    %edx,%eax
44b91d:	c1 f8 07             	sar    $0x7,%eax
44b920:	0f b6 80 40 3b 4b 00 	movzbl 0x4b3b40(%eax),%eax
44b927:	c1 e0 07             	shl    $0x7,%eax
44b92a:	81 e1 7f 00 00 80    	and    $0x8000007f,%ecx
44b930:	79 05                	jns    0x44b937
44b932:	49                   	dec    %ecx
44b933:	83 c9 80             	or     $0xffffff80,%ecx
44b936:	41                   	inc    %ecx
44b937:	03 c1                	add    %ecx,%eax
44b939:	33 c9                	xor    %ecx,%ecx
44b93b:	0f b7 04 45 40 58 4a 	movzwl 0x4a5840(,%eax,2),%eax
44b942:	00
44b943:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
44b94a:	00
44b94b:	83 3c 85 a0 89 4b 00 	cmpl   $0x6,0x4b89a0(,%eax,4)
44b952:	06
44b953:	0f 94 c1             	sete   %cl
44b956:	3b 4d c8             	cmp    -0x38(%ebp),%ecx
44b959:	0f 84 ff 96 fc ff    	je     0x41505e
44b95f:	8b 55 f4             	mov    -0xc(%ebp),%edx
44b962:	8b 45 dc             	mov    -0x24(%ebp),%eax
44b965:	eb 0d                	jmp    0x44b974
44b967:	8b 45 dc             	mov    -0x24(%ebp),%eax
44b96a:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
44b96e:	0f 85 ea 96 fc ff    	jne    0x41505e
44b974:	8b 4d ec             	mov    -0x14(%ebp),%ecx
44b977:	41                   	inc    %ecx
44b978:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44b97b:	3b ca                	cmp    %edx,%ecx
44b97d:	0f 8e cc fe ff ff    	jle    0x44b84f
44b983:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44b986:	e9 1d 02 00 00       	jmp    0x44bba8
44b98b:	8b 7d f8             	mov    -0x8(%ebp),%edi
44b98e:	c7 45 d8 01 00 00 00 	movl   $0x1,-0x28(%ebp)
44b995:	83 fa 01             	cmp    $0x1,%edx
44b998:	0f 8c 2e 97 fc ff    	jl     0x4150cc
44b99e:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44b9a1:	0f 83 bf 2e 00 00    	jae    0x44e866
44b9a7:	0f b7 0f             	movzwl (%edi),%ecx
44b9aa:	83 c7 02             	add    $0x2,%edi
44b9ad:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
44b9b1:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44b9b4:	89 7d f8             	mov    %edi,-0x8(%ebp)
44b9b7:	74 30                	je     0x44b9e9
44b9b9:	8b c1                	mov    %ecx,%eax
44b9bb:	25 00 fc 00 00       	and    $0xfc00,%eax
44b9c0:	3d 00 d8 00 00       	cmp    $0xd800,%eax
44b9c5:	75 22                	jne    0x44b9e9
44b9c7:	0f b7 07             	movzwl (%edi),%eax
44b9ca:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
44b9d0:	c1 e1 0a             	shl    $0xa,%ecx
44b9d3:	25 ff 03 00 00       	and    $0x3ff,%eax
44b9d8:	0b c8                	or     %eax,%ecx
44b9da:	81 c1 00 00 01 00    	add    $0x10000,%ecx
44b9e0:	83 c7 02             	add    $0x2,%edi
44b9e3:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44b9e6:	89 7d f8             	mov    %edi,-0x8(%ebp)
44b9e9:	8b c1                	mov    %ecx,%eax
44b9eb:	99                   	cltd
44b9ec:	83 e2 7f             	and    $0x7f,%edx
44b9ef:	03 c2                	add    %edx,%eax
44b9f1:	8b 55 ec             	mov    -0x14(%ebp),%edx
44b9f4:	c1 f8 07             	sar    $0x7,%eax
44b9f7:	0f b6 88 40 3b 4b 00 	movzbl 0x4b3b40(%eax),%ecx
44b9fe:	8b c2                	mov    %edx,%eax
44ba00:	c1 e1 07             	shl    $0x7,%ecx
44ba03:	25 7f 00 00 80       	and    $0x8000007f,%eax
44ba08:	79 05                	jns    0x44ba0f
44ba0a:	48                   	dec    %eax
44ba0b:	83 c8 80             	or     $0xffffff80,%eax
44ba0e:	40                   	inc    %eax
44ba0f:	03 c8                	add    %eax,%ecx
44ba11:	0f b7 04 4d 40 58 4a 	movzwl 0x4a5840(,%ecx,2),%eax
44ba18:	00
44ba19:	0f b6 04 c5 51 2f 4a 	movzbl 0x4a2f51(,%eax,8),%eax
44ba20:	00
44ba21:	8b 04 85 a0 89 4b 00 	mov    0x4b89a0(,%eax,4),%eax
44ba28:	83 f8 01             	cmp    $0x1,%eax
44ba2b:	74 0e                	je     0x44ba3b
44ba2d:	83 f8 03             	cmp    $0x3,%eax
44ba30:	74 09                	je     0x44ba3b
44ba32:	83 fa 5f             	cmp    $0x5f,%edx
44ba35:	74 04                	je     0x44ba3b
44ba37:	33 c0                	xor    %eax,%eax
44ba39:	eb 05                	jmp    0x44ba40
44ba3b:	b8 01 00 00 00       	mov    $0x1,%eax
44ba40:	3b 45 c8             	cmp    -0x38(%ebp),%eax
44ba43:	0f 84 15 96 fc ff    	je     0x41505e
44ba49:	8b 4d d8             	mov    -0x28(%ebp),%ecx
44ba4c:	8b 55 f4             	mov    -0xc(%ebp),%edx
44ba4f:	41                   	inc    %ecx
44ba50:	89 4d d8             	mov    %ecx,-0x28(%ebp)
44ba53:	3b ca                	cmp    %edx,%ecx
44ba55:	0f 8e 43 ff ff ff    	jle    0x44b99e
44ba5b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44ba5e:	e9 45 01 00 00       	jmp    0x44bba8
44ba63:	8b 7d f8             	mov    -0x8(%ebp),%edi
44ba66:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
44ba6d:	83 fa 01             	cmp    $0x1,%edx
44ba70:	0f 8c 56 96 fc ff    	jl     0x4150cc
44ba76:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44ba79:	0f 83 e7 2d 00 00    	jae    0x44e866
44ba7f:	0f b7 0f             	movzwl (%edi),%ecx
44ba82:	83 c7 02             	add    $0x2,%edi
44ba85:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
44ba89:	89 7d f8             	mov    %edi,-0x8(%ebp)
44ba8c:	74 2d                	je     0x44babb
44ba8e:	8b c1                	mov    %ecx,%eax
44ba90:	25 00 fc 00 00       	and    $0xfc00,%eax
44ba95:	3d 00 d8 00 00       	cmp    $0xd800,%eax
44ba9a:	75 1f                	jne    0x44babb
44ba9c:	0f b7 07             	movzwl (%edi),%eax
44ba9f:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
44baa5:	c1 e1 0a             	shl    $0xa,%ecx
44baa8:	25 ff 03 00 00       	and    $0x3ff,%eax
44baad:	0b c8                	or     %eax,%ecx
44baaf:	81 c1 00 00 01 00    	add    $0x10000,%ecx
44bab5:	83 c7 02             	add    $0x2,%edi
44bab8:	89 7d f8             	mov    %edi,-0x8(%ebp)
44babb:	8b 45 c4             	mov    -0x3c(%ebp),%eax
44babe:	8b 14 85 d0 45 4a 00 	mov    0x4a45d0(,%eax,4),%edx
44bac5:	8d 04 85 d0 45 4a 00 	lea    0x4a45d0(,%eax,4),%eax
44bacc:	3b ca                	cmp    %edx,%ecx
44bace:	72 0d                	jb     0x44badd
44bad0:	8d 40 04             	lea    0x4(%eax),%eax
44bad3:	3b ca                	cmp    %edx,%ecx
44bad5:	74 26                	je     0x44bafd
44bad7:	8b 10                	mov    (%eax),%edx
44bad9:	3b ca                	cmp    %edx,%ecx
44badb:	73 f3                	jae    0x44bad0
44badd:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
44bae1:	0f 84 77 95 fc ff    	je     0x41505e
44bae7:	8b 4d ec             	mov    -0x14(%ebp),%ecx
44baea:	8b 55 f4             	mov    -0xc(%ebp),%edx
44baed:	41                   	inc    %ecx
44baee:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44baf1:	3b ca                	cmp    %edx,%ecx
44baf3:	7e 81                	jle    0x44ba76
44baf5:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44baf8:	e9 ab 00 00 00       	jmp    0x44bba8
44bafd:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
44bb01:	0f 85 57 95 fc ff    	jne    0x41505e
44bb07:	eb de                	jmp    0x44bae7
44bb09:	8b 7d f8             	mov    -0x8(%ebp),%edi
44bb0c:	ba 01 00 00 00       	mov    $0x1,%edx
44bb11:	39 55 f4             	cmp    %edx,-0xc(%ebp)
44bb14:	0f 8c 73 0e 00 00    	jl     0x44c98d
44bb1a:	3b 7e 7c             	cmp    0x7c(%esi),%edi
44bb1d:	0f 83 43 2d 00 00    	jae    0x44e866
44bb23:	0f b7 0f             	movzwl (%edi),%ecx
44bb26:	83 c7 02             	add    $0x2,%edi
44bb29:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
44bb2d:	89 7d f8             	mov    %edi,-0x8(%ebp)
44bb30:	74 2d                	je     0x44bb5f
44bb32:	8b c1                	mov    %ecx,%eax
44bb34:	25 00 fc 00 00       	and    $0xfc00,%eax
44bb39:	3d 00 d8 00 00       	cmp    $0xd800,%eax
44bb3e:	75 1f                	jne    0x44bb5f
44bb40:	0f b7 07             	movzwl (%edi),%eax
44bb43:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
44bb49:	c1 e1 0a             	shl    $0xa,%ecx
44bb4c:	25 ff 03 00 00       	and    $0x3ff,%eax
44bb51:	0b c8                	or     %eax,%ecx
44bb53:	81 c1 00 00 01 00    	add    $0x10000,%ecx
44bb59:	83 c7 02             	add    $0x2,%edi
44bb5c:	89 7d f8             	mov    %edi,-0x8(%ebp)
44bb5f:	83 f9 24             	cmp    $0x24,%ecx
44bb62:	74 26                	je     0x44bb8a
44bb64:	83 f9 40             	cmp    $0x40,%ecx
44bb67:	74 21                	je     0x44bb8a
44bb69:	83 f9 60             	cmp    $0x60,%ecx
44bb6c:	74 1c                	je     0x44bb8a
44bb6e:	81 f9 a0 00 00 00    	cmp    $0xa0,%ecx
44bb74:	72 08                	jb     0x44bb7e
44bb76:	81 f9 ff d7 00 00    	cmp    $0xd7ff,%ecx
44bb7c:	76 0c                	jbe    0x44bb8a
44bb7e:	81 f9 00 e0 00 00    	cmp    $0xe000,%ecx
44bb84:	73 04                	jae    0x44bb8a
44bb86:	33 c0                	xor    %eax,%eax
44bb88:	eb 05                	jmp    0x44bb8f
44bb8a:	b8 01 00 00 00       	mov    $0x1,%eax
44bb8f:	3b 45 c8             	cmp    -0x38(%ebp),%eax
44bb92:	0f 84 c6 94 fc ff    	je     0x41505e
44bb98:	42                   	inc    %edx
44bb99:	3b 55 f4             	cmp    -0xc(%ebp),%edx
44bb9c:	0f 8e 78 ff ff ff    	jle    0x44bb1a
44bba2:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44bba5:	8b 55 f4             	mov    -0xc(%ebp),%edx
44bba8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
44bbab:	e9 1c 95 fc ff       	jmp    0x4150cc
44bbb0:	83 ff 16             	cmp    $0x16,%edi
44bbb3:	0f 85 89 01 00 00    	jne    0x44bd42
44bbb9:	8b 7d f8             	mov    -0x8(%ebp),%edi
44bbbc:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
44bbc3:	83 fa 01             	cmp    $0x1,%edx
44bbc6:	0f 8c 00 95 fc ff    	jl     0x4150cc
44bbcc:	8b 46 7c             	mov    0x7c(%esi),%eax
44bbcf:	89 45 d8             	mov    %eax,-0x28(%ebp)
44bbd2:	3b f8                	cmp    %eax,%edi
44bbd4:	0f 83 8c 2c 00 00    	jae    0x44e866
44bbda:	0f b7 0f             	movzwl (%edi),%ecx
44bbdd:	83 c7 02             	add    $0x2,%edi
44bbe0:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
44bbe4:	89 7d f8             	mov    %edi,-0x8(%ebp)
44bbe7:	74 2d                	je     0x44bc16
44bbe9:	8b c1                	mov    %ecx,%eax
44bbeb:	25 00 fc 00 00       	and    $0xfc00,%eax
44bbf0:	3d 00 d8 00 00       	cmp    $0xd800,%eax
44bbf5:	75 1f                	jne    0x44bc16
44bbf7:	0f b7 07             	movzwl (%edi),%eax
44bbfa:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
44bc00:	c1 e1 0a             	shl    $0xa,%ecx
44bc03:	25 ff 03 00 00       	and    $0x3ff,%eax
44bc08:	0b c8                	or     %eax,%ecx
44bc0a:	81 c1 00 00 01 00    	add    $0x10000,%ecx
44bc10:	83 c7 02             	add    $0x2,%edi
44bc13:	89 7d f8             	mov    %edi,-0x8(%ebp)
44bc16:	8b c1                	mov    %ecx,%eax
44bc18:	99                   	cltd
44bc19:	83 e2 7f             	and    $0x7f,%edx
44bc1c:	03 c2                	add    %edx,%eax
44bc1e:	c1 f8 07             	sar    $0x7,%eax
44bc21:	0f b6 80 40 3b 4b 00 	movzbl 0x4b3b40(%eax),%eax
44bc28:	c1 e0 07             	shl    $0x7,%eax
44bc2b:	81 e1 7f 00 00 80    	and    $0x8000007f,%ecx
44bc31:	79 05                	jns    0x44bc38
44bc33:	49                   	dec    %ecx
44bc34:	83 c9 80             	or     $0xffffff80,%ecx
44bc37:	41                   	inc    %ecx
44bc38:	03 c1                	add    %ecx,%eax
44bc3a:	0f b7 04 45 40 58 4a 	movzwl 0x4a5840(,%eax,2),%eax
44bc41:	00
44bc42:	0f b6 0c c5 52 2f 4a 	movzbl 0x4a2f52(,%eax,8),%ecx
44bc49:	00
44bc4a:	8b 46 7c             	mov    0x7c(%esi),%eax
44bc4d:	89 4d ec             	mov    %ecx,-0x14(%ebp)
44bc50:	3b f8                	cmp    %eax,%edi
44bc52:	0f 83 a7 00 00 00    	jae    0x44bcff
44bc58:	8b 5d dc             	mov    -0x24(%ebp),%ebx
44bc5b:	8b f1                	mov    %ecx,%esi
44bc5d:	0f b7 0f             	movzwl (%edi),%ecx
44bc60:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
44bc67:	85 db                	test   %ebx,%ebx
44bc69:	74 2f                	je     0x44bc9a
44bc6b:	8b c1                	mov    %ecx,%eax
44bc6d:	25 00 fc 00 00       	and    $0xfc00,%eax
44bc72:	3d 00 d8 00 00       	cmp    $0xd800,%eax
44bc77:	75 21                	jne    0x44bc9a
44bc79:	0f b7 47 02          	movzwl 0x2(%edi),%eax
44bc7d:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
44bc83:	25 ff 03 00 00       	and    $0x3ff,%eax
44bc88:	c1 e1 0a             	shl    $0xa,%ecx
44bc8b:	0b c8                	or     %eax,%ecx
44bc8d:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
44bc94:	81 c1 00 00 01 00    	add    $0x10000,%ecx
44bc9a:	8b c1                	mov    %ecx,%eax
44bc9c:	99                   	cltd
44bc9d:	83 e2 7f             	and    $0x7f,%edx
44bca0:	03 c2                	add    %edx,%eax
44bca2:	c1 f8 07             	sar    $0x7,%eax
44bca5:	0f b6 80 40 3b 4b 00 	movzbl 0x4b3b40(%eax),%eax
44bcac:	c1 e0 07             	shl    $0x7,%eax
44bcaf:	81 e1 7f 00 00 80    	and    $0x8000007f,%ecx
44bcb5:	79 05                	jns    0x44bcbc
44bcb7:	49                   	dec    %ecx
44bcb8:	83 c9 80             	or     $0xffffff80,%ecx
44bcbb:	41                   	inc    %ecx
44bcbc:	03 c1                	add    %ecx,%eax
44bcbe:	0f b7 04 45 40 58 4a 	movzwl 0x4a5840(,%eax,2),%eax
44bcc5:	00
44bcc6:	0f b6 0c c5 52 2f 4a 	movzbl 0x4a2f52(,%eax,8),%ecx
44bccd:	00
44bcce:	b8 01 00 00 00       	mov    $0x1,%eax
44bcd3:	d3 e0                	shl    %cl,%eax
44bcd5:	85 04 b5 00 58 4a 00 	test   %eax,0x4a5800(,%esi,4)
44bcdc:	74 15                	je     0x44bcf3
44bcde:	8b 45 ec             	mov    -0x14(%ebp),%eax
44bce1:	8b f1                	mov    %ecx,%esi
44bce3:	8d 3c 47             	lea    (%edi,%eax,2),%edi
44bce6:	8b 45 d8             	mov    -0x28(%ebp),%eax
44bce9:	3b f8                	cmp    %eax,%edi
44bceb:	0f 82 6c ff ff ff    	jb     0x44bc5d
44bcf1:	eb 03                	jmp    0x44bcf6
44bcf3:	8b 45 d8             	mov    -0x28(%ebp),%eax
44bcf6:	8b 75 10             	mov    0x10(%ebp),%esi
44bcf9:	8b 5d d0             	mov    -0x30(%ebp),%ebx
44bcfc:	89 7d f8             	mov    %edi,-0x8(%ebp)
44bcff:	83 be 8c 00 00 00 00 	cmpl   $0x0,0x8c(%esi)
44bd06:	74 20                	je     0x44bd28
44bd08:	3b f8                	cmp    %eax,%edi
44bd0a:	72 1c                	jb     0x44bd28
44bd0c:	3b be 88 00 00 00    	cmp    0x88(%esi),%edi
44bd12:	76 14                	jbe    0x44bd28
44bd14:	c7 46 68 01 00 00 00 	movl   $0x1,0x68(%esi)
44bd1b:	83 be 8c 00 00 00 01 	cmpl   $0x1,0x8c(%esi)
44bd22:	0f 8f 98 d3 ff ff    	jg     0x4490c0
44bd28:	8b 4d e0             	mov    -0x20(%ebp),%ecx
44bd2b:	8b 55 f4             	mov    -0xc(%ebp),%edx
44bd2e:	41                   	inc    %ecx
44bd2f:	89 4d e0             	mov    %ecx,-0x20(%ebp)
44bd32:	3b ca                	cmp    %edx,%ecx
44bd34:	0f 8e 92 fe ff ff    	jle    0x44bbcc
44bd3a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44bd3d:	e9 66 fe ff ff       	jmp    0x44bba8
44bd42:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
44bd46:	8d 4f fa             	lea    -0x6(%edi),%ecx
44bd49:	0f 84 20 07 00 00    	je     0x44c46f
44bd4f:	83 f9 0f             	cmp    $0xf,%ecx
44bd52:	0f 87 a6 27 00 00    	ja     0x44e4fe
44bd58:	ff 24 8d 77 02 45 00 	jmp    *0x450277(,%ecx,4)
44bd5f:	8b 7d f8             	mov    -0x8(%ebp),%edi
44bd62:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
44bd69:	83 fa 01             	cmp    $0x1,%edx
44bd6c:	0f 8c 36 fe ff ff    	jl     0x44bba8
44bd72:	8d 47 02             	lea    0x2(%edi),%eax
44bd75:	89 45 e0             	mov    %eax,-0x20(%ebp)
44bd78:	8b 4e 7c             	mov    0x7c(%esi),%ecx
44bd7b:	3b f9                	cmp    %ecx,%edi
44bd7d:	0f 83 e3 2a 00 00    	jae    0x44e866
44bd83:	8b 56 18             	mov    0x18(%esi),%edx
44bd86:	85 d2                	test   %edx,%edx
44bd88:	0f 84 9b 00 00 00    	je     0x44be29
44bd8e:	ff 75 dc             	push   -0x24(%ebp)
44bd91:	8d 46 1c             	lea    0x1c(%esi),%eax
44bd94:	50                   	push   %eax
44bd95:	51                   	push   %ecx
44bd96:	8b cf                	mov    %edi,%ecx
44bd98:	e8 02 a1 fc ff       	call   0x415e9f
44bd9d:	83 c4 0c             	add    $0xc,%esp
44bda0:	85 c0                	test   %eax,%eax
44bda2:	0f 85 b6 92 fc ff    	jne    0x41505e
44bda8:	8b 55 e0             	mov    -0x20(%ebp),%edx
44bdab:	83 be 8c 00 00 00 00 	cmpl   $0x0,0x8c(%esi)
44bdb2:	74 2e                	je     0x44bde2