4927bc:	89 45 f4             	mov    %eax,-0xc(%ebp)
4927bf:	0f ae 55 f4          	ldmxcsr -0xc(%ebp)
4927c3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4927c6:	a8 3f                	test   $0x3f,%al
4927c8:	74 28                	je     0x4927f2
4927ca:	8b c8                	mov    %eax,%ecx
4927cc:	23 ce                	and    %esi,%ecx
4927ce:	c1 e1 04             	shl    $0x4,%ecx
4927d1:	a8 04                	test   $0x4,%al
4927d3:	74 03                	je     0x4927d8
4927d5:	83 c9 08             	or     $0x8,%ecx
4927d8:	a8 08                	test   $0x8,%al
4927da:	74 03                	je     0x4927df
4927dc:	83 c9 04             	or     $0x4,%ecx
4927df:	a8 10                	test   $0x10,%al
4927e1:	74 03                	je     0x4927e6
4927e3:	83 c9 02             	or     $0x2,%ecx
4927e6:	a8 20                	test   $0x20,%al
4927e8:	74 02                	je     0x4927ec
4927ea:	0b ce                	or     %esi,%ecx
4927ec:	a8 02                	test   $0x2,%al
4927ee:	74 02                	je     0x4927f2
4927f0:	0b cf                	or     %edi,%ecx
4927f2:	0b ca                	or     %edx,%ecx
4927f4:	8b c1                	mov    %ecx,%eax
4927f6:	5f                   	pop    %edi
4927f7:	eb 3c                	jmp    0x492835
4927f9:	66 8b 4d fc          	mov    -0x4(%ebp),%cx
4927fd:	33 c0                	xor    %eax,%eax
4927ff:	f6 c1 3f             	test   $0x3f,%cl
492802:	74 31                	je     0x492835
492804:	0f b7 c1             	movzwl %cx,%eax
492807:	23 c6                	and    %esi,%eax
492809:	c1 e0 04             	shl    $0x4,%eax
49280c:	f6 c1 04             	test   $0x4,%cl
49280f:	74 03                	je     0x492814
492811:	83 c8 08             	or     $0x8,%eax
492814:	f6 c1 08             	test   $0x8,%cl
492817:	74 03                	je     0x49281c
492819:	83 c8 04             	or     $0x4,%eax
49281c:	f6 c1 10             	test   $0x10,%cl
49281f:	74 03                	je     0x492824
492821:	83 c8 02             	or     $0x2,%eax
492824:	f6 c1 20             	test   $0x20,%cl
492827:	74 02                	je     0x49282b
492829:	0b c6                	or     %esi,%eax
49282b:	f6 c1 02             	test   $0x2,%cl
49282e:	74 05                	je     0x492835
492830:	0d 00 00 08 00       	or     $0x80000,%eax
492835:	5e                   	pop    %esi
492836:	c9                   	leave
492837:	c3                   	ret
492838:	8b ff                	mov    %edi,%edi
49283a:	55                   	push   %ebp
49283b:	8b ec                	mov    %esp,%ebp
49283d:	83 ec 10             	sub    $0x10,%esp
492840:	9b d9 7d f8          	fstcw  -0x8(%ebp)
492844:	66 8b 45 f8          	mov    -0x8(%ebp),%ax
492848:	0f b7 c8             	movzwl %ax,%ecx
49284b:	83 e1 01             	and    $0x1,%ecx
49284e:	c1 e1 04             	shl    $0x4,%ecx
492851:	a8 04                	test   $0x4,%al
492853:	74 03                	je     0x492858
492855:	83 c9 08             	or     $0x8,%ecx
492858:	a8 08                	test   $0x8,%al
49285a:	74 03                	je     0x49285f
49285c:	83 c9 04             	or     $0x4,%ecx
49285f:	a8 10                	test   $0x10,%al
492861:	74 03                	je     0x492866
492863:	83 c9 02             	or     $0x2,%ecx
492866:	a8 20                	test   $0x20,%al
492868:	74 03                	je     0x49286d
49286a:	83 c9 01             	or     $0x1,%ecx
49286d:	a8 02                	test   $0x2,%al
49286f:	74 06                	je     0x492877
492871:	81 c9 00 00 08 00    	or     $0x80000,%ecx
492877:	53                   	push   %ebx
492878:	56                   	push   %esi
492879:	0f b7 f0             	movzwl %ax,%esi
49287c:	bb 00 0c 00 00       	mov    $0xc00,%ebx
492881:	8b d6                	mov    %esi,%edx
492883:	57                   	push   %edi
492884:	bf 00 02 00 00       	mov    $0x200,%edi
492889:	23 d3                	and    %ebx,%edx
49288b:	74 26                	je     0x4928b3
49288d:	81 fa 00 04 00 00    	cmp    $0x400,%edx
492893:	74 18                	je     0x4928ad
492895:	81 fa 00 08 00 00    	cmp    $0x800,%edx
49289b:	74 0c                	je     0x4928a9
49289d:	3b d3                	cmp    %ebx,%edx
49289f:	75 12                	jne    0x4928b3
4928a1:	81 c9 00 03 00 00    	or     $0x300,%ecx
4928a7:	eb 0a                	jmp    0x4928b3
4928a9:	0b cf                	or     %edi,%ecx
4928ab:	eb 06                	jmp    0x4928b3
4928ad:	81 c9 00 01 00 00    	or     $0x100,%ecx
4928b3:	81 e6 00 03 00 00    	and    $0x300,%esi
4928b9:	74 0c                	je     0x4928c7
4928bb:	3b f7                	cmp    %edi,%esi
4928bd:	75 0e                	jne    0x4928cd
4928bf:	81 c9 00 00 01 00    	or     $0x10000,%ecx
4928c5:	eb 06                	jmp    0x4928cd
4928c7:	81 c9 00 00 02 00    	or     $0x20000,%ecx
4928cd:	0f b7 c0             	movzwl %ax,%eax
4928d0:	ba 00 10 00 00       	mov    $0x1000,%edx
4928d5:	85 c2                	test   %eax,%edx
4928d7:	74 06                	je     0x4928df
4928d9:	81 c9 00 00 04 00    	or     $0x40000,%ecx
4928df:	8b 7d 0c             	mov    0xc(%ebp),%edi
4928e2:	8b f7                	mov    %edi,%esi
4928e4:	8b 45 08             	mov    0x8(%ebp),%eax
4928e7:	f7 d6                	not    %esi
4928e9:	23 f1                	and    %ecx,%esi
4928eb:	23 c7                	and    %edi,%eax
4928ed:	0b f0                	or     %eax,%esi
4928ef:	3b f1                	cmp    %ecx,%esi
4928f1:	0f 84 a8 00 00 00    	je     0x49299f
4928f7:	56                   	push   %esi
4928f8:	e8 3c 02 00 00       	call   0x492b39
4928fd:	59                   	pop    %ecx
4928fe:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
492902:	d9 6d fc             	fldcw  -0x4(%ebp)
492905:	9b d9 7d fc          	fstcw  -0x4(%ebp)
492909:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
49290d:	0f b7 f0             	movzwl %ax,%esi
492910:	83 e6 01             	and    $0x1,%esi
492913:	c1 e6 04             	shl    $0x4,%esi
492916:	a8 04                	test   $0x4,%al
492918:	74 03                	je     0x49291d
49291a:	83 ce 08             	or     $0x8,%esi
49291d:	a8 08                	test   $0x8,%al
49291f:	74 03                	je     0x492924
492921:	83 ce 04             	or     $0x4,%esi
492924:	a8 10                	test   $0x10,%al
492926:	74 03                	je     0x49292b
492928:	83 ce 02             	or     $0x2,%esi
49292b:	a8 20                	test   $0x20,%al
49292d:	74 03                	je     0x492932
49292f:	83 ce 01             	or     $0x1,%esi
492932:	a8 02                	test   $0x2,%al
492934:	74 06                	je     0x49293c
492936:	81 ce 00 00 08 00    	or     $0x80000,%esi
49293c:	0f b7 d0             	movzwl %ax,%edx
49293f:	8b ca                	mov    %edx,%ecx
492941:	23 cb                	and    %ebx,%ecx
492943:	74 2a                	je     0x49296f
492945:	81 f9 00 04 00 00    	cmp    $0x400,%ecx
49294b:	74 1c                	je     0x492969
49294d:	81 f9 00 08 00 00    	cmp    $0x800,%ecx
492953:	74 0c                	je     0x492961
492955:	3b cb                	cmp    %ebx,%ecx
492957:	75 16                	jne    0x49296f
492959:	81 ce 00 03 00 00    	or     $0x300,%esi
49295f:	eb 0e                	jmp    0x49296f
492961:	81 ce 00 02 00 00    	or     $0x200,%esi
492967:	eb 06                	jmp    0x49296f
492969:	81 ce 00 01 00 00    	or     $0x100,%esi
49296f:	81 e2 00 03 00 00    	and    $0x300,%edx
492975:	74 10                	je     0x492987
492977:	81 fa 00 02 00 00    	cmp    $0x200,%edx
49297d:	75 0e                	jne    0x49298d
49297f:	81 ce 00 00 01 00    	or     $0x10000,%esi
492985:	eb 06                	jmp    0x49298d
492987:	81 ce 00 00 02 00    	or     $0x20000,%esi
49298d:	0f b7 c0             	movzwl %ax,%eax
492990:	ba 00 10 00 00       	mov    $0x1000,%edx
492995:	85 c2                	test   %eax,%edx
492997:	74 06                	je     0x49299f
492999:	81 ce 00 00 04 00    	or     $0x40000,%esi
49299f:	83 3d fc 82 4c 00 01 	cmpl   $0x1,0x4c82fc
4929a6:	0f 8c 86 01 00 00    	jl     0x492b32
4929ac:	81 e7 1f 03 08 03    	and    $0x308031f,%edi
4929b2:	0f ae 5d f0          	stmxcsr -0x10(%ebp)
4929b6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4929b9:	8b c1                	mov    %ecx,%eax
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