4929bb:	c1 e8 03             	shr    $0x3,%eax
4929be:	83 e0 10             	and    $0x10,%eax
4929c1:	f7 c1 00 02 00 00    	test   $0x200,%ecx
4929c7:	74 03                	je     0x4929cc
4929c9:	83 c8 08             	or     $0x8,%eax
4929cc:	f7 c1 00 04 00 00    	test   $0x400,%ecx
4929d2:	74 03                	je     0x4929d7
4929d4:	83 c8 04             	or     $0x4,%eax
4929d7:	f7 c1 00 08 00 00    	test   $0x800,%ecx
4929dd:	74 03                	je     0x4929e2
4929df:	83 c8 02             	or     $0x2,%eax
4929e2:	85 ca                	test   %ecx,%edx
4929e4:	74 03                	je     0x4929e9
4929e6:	83 c8 01             	or     $0x1,%eax
4929e9:	f7 c1 00 01 00 00    	test   $0x100,%ecx
4929ef:	74 05                	je     0x4929f6
4929f1:	0d 00 00 08 00       	or     $0x80000,%eax
4929f6:	8b d1                	mov    %ecx,%edx
4929f8:	bb 00 60 00 00       	mov    $0x6000,%ebx
4929fd:	23 d3                	and    %ebx,%edx
4929ff:	74 27                	je     0x492a28
492a01:	81 fa 00 20 00 00    	cmp    $0x2000,%edx
492a07:	74 1a                	je     0x492a23
492a09:	81 fa 00 40 00 00    	cmp    $0x4000,%edx
492a0f:	74 0b                	je     0x492a1c
492a11:	3b d3                	cmp    %ebx,%edx
492a13:	75 13                	jne    0x492a28
492a15:	0d 00 03 00 00       	or     $0x300,%eax
492a1a:	eb 0c                	jmp    0x492a28
492a1c:	0d 00 02 00 00       	or     $0x200,%eax
492a21:	eb 05                	jmp    0x492a28
492a23:	0d 00 01 00 00       	or     $0x100,%eax
492a28:	6a 40                	push   $0x40
492a2a:	81 e1 40 80 00 00    	and    $0x8040,%ecx
492a30:	5b                   	pop    %ebx
492a31:	2b cb                	sub    %ebx,%ecx
492a33:	74 1a                	je     0x492a4f
492a35:	81 e9 c0 7f 00 00    	sub    $0x7fc0,%ecx
492a3b:	74 0b                	je     0x492a48
492a3d:	2b cb                	sub    %ebx,%ecx
492a3f:	75 13                	jne    0x492a54
492a41:	0d 00 00 00 01       	or     $0x1000000,%eax
492a46:	eb 0c                	jmp    0x492a54
492a48:	0d 00 00 00 03       	or     $0x3000000,%eax
492a4d:	eb 05                	jmp    0x492a54
492a4f:	0d 00 00 00 02       	or     $0x2000000,%eax
492a54:	8b cf                	mov    %edi,%ecx
492a56:	23 7d 08             	and    0x8(%ebp),%edi
492a59:	f7 d1                	not    %ecx
492a5b:	23 c8                	and    %eax,%ecx
492a5d:	0b cf                	or     %edi,%ecx
492a5f:	3b c8                	cmp    %eax,%ecx
492a61:	0f 84 b4 00 00 00    	je     0x492b1b
492a67:	51                   	push   %ecx
492a68:	e8 46 fc ff ff       	call   0x4926b3
492a6d:	50                   	push   %eax
492a6e:	89 45 f4             	mov    %eax,-0xc(%ebp)
492a71:	e8 23 79 ff ff       	call   0x48a399
492a76:	59                   	pop    %ecx
492a77:	59                   	pop    %ecx
492a78:	0f ae 5d f4          	stmxcsr -0xc(%ebp)
492a7c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
492a7f:	8b c1                	mov    %ecx,%eax
492a81:	c1 e8 03             	shr    $0x3,%eax
492a84:	83 e0 10             	and    $0x10,%eax
492a87:	f7 c1 00 02 00 00    	test   $0x200,%ecx
492a8d:	74 03                	je     0x492a92
492a8f:	83 c8 08             	or     $0x8,%eax
492a92:	f7 c1 00 04 00 00    	test   $0x400,%ecx
492a98:	74 03                	je     0x492a9d
492a9a:	83 c8 04             	or     $0x4,%eax
492a9d:	f7 c1 00 08 00 00    	test   $0x800,%ecx
492aa3:	74 03                	je     0x492aa8
492aa5:	83 c8 02             	or     $0x2,%eax
492aa8:	f7 c1 00 10 00 00    	test   $0x1000,%ecx
492aae:	74 03                	je     0x492ab3
492ab0:	83 c8 01             	or     $0x1,%eax
492ab3:	f7 c1 00 01 00 00    	test   $0x100,%ecx
492ab9:	74 05                	je     0x492ac0
492abb:	0d 00 00 08 00       	or     $0x80000,%eax
492ac0:	8b d1                	mov    %ecx,%edx
492ac2:	bf 00 60 00 00       	mov    $0x6000,%edi
492ac7:	23 d7                	and    %edi,%edx
492ac9:	74 27                	je     0x492af2
492acb:	81 fa 00 20 00 00    	cmp    $0x2000,%edx
492ad1:	74 1a                	je     0x492aed
492ad3:	81 fa 00 40 00 00    	cmp    $0x4000,%edx
492ad9:	74 0b                	je     0x492ae6
492adb:	3b d7                	cmp    %edi,%edx
492add:	75 13                	jne    0x492af2
492adf:	0d 00 03 00 00       	or     $0x300,%eax
492ae4:	eb 0c                	jmp    0x492af2
492ae6:	0d 00 02 00 00       	or     $0x200,%eax
492aeb:	eb 05                	jmp    0x492af2
492aed:	0d 00 01 00 00       	or     $0x100,%eax
492af2:	81 e1 40 80 00 00    	and    $0x8040,%ecx
492af8:	2b cb                	sub    %ebx,%ecx
492afa:	74 1a                	je     0x492b16
492afc:	81 e9 c0 7f 00 00    	sub    $0x7fc0,%ecx
492b02:	74 0b                	je     0x492b0f
492b04:	2b cb                	sub    %ebx,%ecx
492b06:	75 13                	jne    0x492b1b
492b08:	0d 00 00 00 01       	or     $0x1000000,%eax
492b0d:	eb 0c                	jmp    0x492b1b
492b0f:	0d 00 00 00 03       	or     $0x3000000,%eax
492b14:	eb 05                	jmp    0x492b1b
492b16:	0d 00 00 00 02       	or     $0x2000000,%eax
492b1b:	8b c8                	mov    %eax,%ecx
492b1d:	33 c6                	xor    %esi,%eax
492b1f:	0b ce                	or     %esi,%ecx
492b21:	a9 1f 03 08 00       	test   $0x8031f,%eax
492b26:	74 06                	je     0x492b2e
492b28:	81 c9 00 00 00 80    	or     $0x80000000,%ecx
492b2e:	8b c1                	mov    %ecx,%eax
492b30:	eb 02                	jmp    0x492b34
492b32:	8b c6                	mov    %esi,%eax
492b34:	5f                   	pop    %edi
492b35:	5e                   	pop    %esi
492b36:	5b                   	pop    %ebx
492b37:	c9                   	leave
492b38:	c3                   	ret
492b39:	8b ff                	mov    %edi,%edi
492b3b:	55                   	push   %ebp
492b3c:	8b ec                	mov    %esp,%ebp
492b3e:	8b 4d 08             	mov    0x8(%ebp),%ecx
492b41:	8b d1                	mov    %ecx,%edx
492b43:	c1 ea 04             	shr    $0x4,%edx
492b46:	83 e2 01             	and    $0x1,%edx
492b49:	8b c2                	mov    %edx,%eax
492b4b:	f6 c1 08             	test   $0x8,%cl
492b4e:	74 06                	je     0x492b56
492b50:	83 ca 04             	or     $0x4,%edx
492b53:	0f b7 c2             	movzwl %dx,%eax
492b56:	f6 c1 04             	test   $0x4,%cl
492b59:	74 03                	je     0x492b5e
492b5b:	83 c8 08             	or     $0x8,%eax
492b5e:	f6 c1 02             	test   $0x2,%cl
492b61:	74 03                	je     0x492b66
492b63:	83 c8 10             	or     $0x10,%eax
492b66:	f6 c1 01             	test   $0x1,%cl
492b69:	74 03                	je     0x492b6e
492b6b:	83 c8 20             	or     $0x20,%eax
492b6e:	f7 c1 00 00 08 00    	test   $0x80000,%ecx
492b74:	74 03                	je     0x492b79
492b76:	83 c8 02             	or     $0x2,%eax
492b79:	56                   	push   %esi
492b7a:	8b d1                	mov    %ecx,%edx
492b7c:	be 00 03 00 00       	mov    $0x300,%esi
492b81:	57                   	push   %edi
492b82:	bf 00 02 00 00       	mov    $0x200,%edi
492b87:	23 d6                	and    %esi,%edx
492b89:	74 23                	je     0x492bae
492b8b:	81 fa 00 01 00 00    	cmp    $0x100,%edx
492b91:	74 16                	je     0x492ba9
492b93:	3b d7                	cmp    %edi,%edx
492b95:	74 0b                	je     0x492ba2
492b97:	3b d6                	cmp    %esi,%edx
492b99:	75 13                	jne    0x492bae
492b9b:	0d 00 0c 00 00       	or     $0xc00,%eax
492ba0:	eb 0c                	jmp    0x492bae
492ba2:	0d 00 08 00 00       	or     $0x800,%eax
492ba7:	eb 05                	jmp    0x492bae
492ba9:	0d 00 04 00 00       	or     $0x400,%eax
492bae:	8b d1                	mov    %ecx,%edx
492bb0:	81 e2 00 00 03 00    	and    $0x30000,%edx
492bb6:	74 0c                	je     0x492bc4
492bb8:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
492bbe:	75 06                	jne    0x492bc6
492bc0:	0b c7                	or     %edi,%eax
492bc2:	eb 02                	jmp    0x492bc6
492bc4:	0b c6                	or     %esi,%eax
492bc6:	5f                   	pop    %edi
492bc7:	5e                   	pop    %esi
492bc8:	f7 c1 00 00 04 00    	test   $0x40000,%ecx
492bce:	74 05                	je     0x492bd5
492bd0:	0d 00 10 00 00       	or     $0x1000,%eax
492bd5:	5d                   	pop    %ebp
492bd6:	c3                   	ret
492bd7:	8b ff                	mov    %edi,%edi
492bd9:	55                   	push   %ebp
492bda:	8b ec                	mov    %esp,%ebp
492bdc:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
492be0:	75 15                	jne    0x492bf7
492be2:	e8 4e 73 fe ff       	call   0x479f35
492be7:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
492bed:	e8 2f 6a fe ff       	call   0x479621
492bf2:	83 c8 ff             	or     $0xffffffff,%eax
492bf5:	5d                   	pop    %ebp
492bf6:	c3                   	ret
492bf7:	ff 75 08             	push   0x8(%ebp)
492bfa:	6a 00                	push   $0x0
492bfc:	ff 35 e8 8b 4c 00    	push   0x4c8be8
492c02:	ff 15 54 e1 49 00    	call   *0x49e154
492c08:	5d                   	pop    %ebp
492c09:	c3                   	ret
492c0a:	8b ff                	mov    %edi,%edi
492c0c:	55                   	push   %ebp
492c0d:	8b ec                	mov    %esp,%ebp
492c0f:	8b 55 08             	mov    0x8(%ebp),%edx
492c12:	85 d2                	test   %edx,%edx
492c14:	75 0f                	jne    0x492c25
492c16:	33 c9                	xor    %ecx,%ecx
492c18:	8b 45 10             	mov    0x10(%ebp),%eax
492c1b:	89 08                	mov    %ecx,(%eax)
492c1d:	89 48 04             	mov    %ecx,0x4(%eax)
492c20:	33 c0                	xor    %eax,%eax
492c22:	40                   	inc    %eax
492c23:	5d                   	pop    %ebp
492c24:	c3                   	ret
492c25:	8b 4d 0c             	mov    0xc(%ebp),%ecx
492c28:	85 c9                	test   %ecx,%ecx
492c2a:	75 04                	jne    0x492c30
492c2c:	88 0a                	mov    %cl,(%edx)
492c2e:	eb e8                	jmp    0x492c18
492c30:	f7 c1 80 ff ff ff    	test   $0xffffff80,%ecx
492c36:	75 04                	jne    0x492c3c
492c38:	88 0a                	mov    %cl,(%edx)
492c3a:	eb e4                	jmp    0x492c20
492c3c:	53                   	push   %ebx
492c3d:	56                   	push   %esi
492c3e:	f7 c1 00 f8 ff ff    	test   $0xfffff800,%ecx
492c44:	75 07                	jne    0x492c4d
492c46:	33 f6                	xor    %esi,%esi
492c48:	b3 c0                	mov    $0xc0,%bl
492c4a:	46                   	inc    %esi
492c4b:	eb 33                	jmp    0x492c80
492c4d:	f7 c1 00 00 ff ff    	test   $0xffff0000,%ecx
492c53:	75 16                	jne    0x492c6b
492c55:	81 f9 00 d8 00 00    	cmp    $0xd800,%ecx
492c5b:	72 08                	jb     0x492c65
492c5d:	81 f9 ff df 00 00    	cmp    $0xdfff,%ecx
492c63:	76 44                	jbe    0x492ca9
492c65:	6a 02                	push   $0x2
492c67:	b3 e0                	mov    $0xe0,%bl
492c69:	eb 14                	jmp    0x492c7f
492c6b:	f7 c1 00 00 e0 ff    	test   $0xffe00000,%ecx
492c71:	75 36                	jne    0x492ca9
492c73:	81 f9 ff ff 10 00    	cmp    $0x10ffff,%ecx
492c79:	77 2e                	ja     0x492ca9
492c7b:	6a 03                	push   $0x3
492c7d:	b3 f0                	mov    $0xf0,%bl
492c7f:	5e                   	pop    %esi
492c80:	57                   	push   %edi
492c81:	8b fe                	mov    %esi,%edi
492c83:	8a c1                	mov    %cl,%al
492c85:	c1 e9 06             	shr    $0x6,%ecx
492c88:	24 3f                	and    $0x3f,%al
492c8a:	0c 80                	or     $0x80,%al
492c8c:	88 04 17             	mov    %al,(%edi,%edx,1)
492c8f:	83 ef 01             	sub    $0x1,%edi
492c92:	75 ef                	jne    0x492c83
492c94:	ff 75 10             	push   0x10(%ebp)
492c97:	8d 46 01             	lea    0x1(%esi),%eax
492c9a:	0a cb                	or     %bl,%cl
492c9c:	50                   	push   %eax
492c9d:	88 0a                	mov    %cl,(%edx)
492c9f:	e8 f8 21 00 00       	call   0x494e9c
492ca4:	59                   	pop    %ecx
492ca5:	59                   	pop    %ecx
492ca6:	5f                   	pop    %edi
492ca7:	eb 0d                	jmp    0x492cb6
492ca9:	ff 75 14             	push   0x14(%ebp)
492cac:	ff 75 10             	push   0x10(%ebp)
492caf:	e8 fc 21 00 00       	call   0x494eb0
492cb4:	59                   	pop    %ecx
492cb5:	59                   	pop    %ecx
492cb6:	5e                   	pop    %esi
492cb7:	5b                   	pop    %ebx
492cb8:	5d                   	pop    %ebp
492cb9:	c3                   	ret
492cba:	8b ff                	mov    %edi,%edi
492cbc:	55                   	push   %ebp
492cbd:	8b ec                	mov    %esp,%ebp
492cbf:	8b 4d 08             	mov    0x8(%ebp),%ecx
492cc2:	80 39 00             	cmpb   $0x0,(%ecx)
492cc5:	75 05                	jne    0x492ccc
492cc7:	33 c0                	xor    %eax,%eax
492cc9:	40                   	inc    %eax
492cca:	eb 16                	jmp    0x492ce2
492ccc:	80 79 01 00          	cmpb   $0x0,0x1(%ecx)
492cd0:	75 05                	jne    0x492cd7
492cd2:	6a 02                	push   $0x2
492cd4:	58                   	pop    %eax
492cd5:	eb 0b                	jmp    0x492ce2
492cd7:	33 c0                	xor    %eax,%eax
492cd9:	38 41 02             	cmp    %al,0x2(%ecx)
492cdc:	0f 95 c0             	setne  %al
492cdf:	83 c0 03             	add    $0x3,%eax
492ce2:	5d                   	pop    %ebp
492ce3:	c2 04 00             	ret    $0x4
492ce6:	8b ff                	mov    %edi,%edi
492ce8:	55                   	push   %ebp
492ce9:	8b ec                	mov    %esp,%ebp
492ceb:	51                   	push   %ecx
492cec:	ff 75 18             	push   0x18(%ebp)
492cef:	8d 45 fc             	lea    -0x4(%ebp),%eax
492cf2:	ff 75 14             	push   0x14(%ebp)
492cf5:	ff 75 10             	push   0x10(%ebp)
492cf8:	ff 75 0c             	push   0xc(%ebp)
492cfb:	50                   	push   %eax
492cfc:	e8 d1 21 00 00       	call   0x494ed2
492d01:	8b d0                	mov    %eax,%edx
492d03:	83 c4 14             	add    $0x14,%esp
492d06:	83 fa 04             	cmp    $0x4,%edx
492d09:	77 1a                	ja     0x492d25
492d0b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
492d0e:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx
492d14:	76 05                	jbe    0x492d1b
492d16:	b9 fd ff 00 00       	mov    $0xfffd,%ecx
492d1b:	8b 45 08             	mov    0x8(%ebp),%eax
492d1e:	85 c0                	test   %eax,%eax
492d20:	74 03                	je     0x492d25
492d22:	66 89 08             	mov    %cx,(%eax)
492d25:	8b c2                	mov    %edx,%eax
492d27:	c9                   	leave
492d28:	c3                   	ret
492d29:	8b ff                	mov    %edi,%edi
492d2b:	55                   	push   %ebp
492d2c:	8b ec                	mov    %esp,%ebp
492d2e:	51                   	push   %ecx
492d2f:	51                   	push   %ecx
492d30:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
492d34:	53                   	push   %ebx
492d35:	56                   	push   %esi
492d36:	57                   	push   %edi
492d37:	8b 7d 0c             	mov    0xc(%ebp),%edi
492d3a:	8b 3f                	mov    (%edi),%edi
492d3c:	0f 84 a4 00 00 00    	je     0x492de6
492d42:	8b 5d 10             	mov    0x10(%ebp),%ebx
492d45:	8b 75 08             	mov    0x8(%ebp),%esi
492d48:	85 db                	test   %ebx,%ebx
492d4a:	74 6b                	je     0x492db7
492d4c:	57                   	push   %edi
492d4d:	8d 4d ff             	lea    -0x1(%ebp),%ecx
492d50:	e8 65 ff ff ff       	call   0x492cba
492d55:	ff 75 18             	push   0x18(%ebp)
492d58:	ff 75 14             	push   0x14(%ebp)
492d5b:	50                   	push   %eax
492d5c:	8d 45 f8             	lea    -0x8(%ebp),%eax
492d5f:	57                   	push   %edi
492d60:	50                   	push   %eax
492d61:	e8 6c 21 00 00       	call   0x494ed2
492d66:	8b d0                	mov    %eax,%edx
492d68:	83 c4 14             	add    $0x14,%esp
492d6b:	83 fa ff             	cmp    $0xffffffff,%edx
492d6e:	74 5e                	je     0x492dce
492d70:	85 d2                	test   %edx,%edx
492d72:	74 51                	je     0x492dc5
492d74:	8b 4d f8             	mov    -0x8(%ebp),%ecx
492d77:	81 f9 ff ff 00 00    	cmp    $0xffff,%ecx