492617:	b0 01                	mov    $0x1,%al
492619:	c3                   	ret
49261a:	8b ff                	mov    %edi,%edi
49261c:	55                   	push   %ebp
49261d:	8b ec                	mov    %esp,%ebp
49261f:	53                   	push   %ebx
492620:	56                   	push   %esi
492621:	57                   	push   %edi
492622:	8b 7d 08             	mov    0x8(%ebp),%edi
492625:	3b 7d 0c             	cmp    0xc(%ebp),%edi
492628:	74 51                	je     0x49267b
49262a:	8b f7                	mov    %edi,%esi
49262c:	8b 1e                	mov    (%esi),%ebx
49262e:	85 db                	test   %ebx,%ebx
492630:	74 0e                	je     0x492640
492632:	8b cb                	mov    %ebx,%ecx
492634:	ff 15 d4 e2 49 00    	call   *0x49e2d4
49263a:	ff d3                	call   *%ebx
49263c:	84 c0                	test   %al,%al
49263e:	74 08                	je     0x492648
492640:	83 c6 08             	add    $0x8,%esi
492643:	3b 75 0c             	cmp    0xc(%ebp),%esi
492646:	75 e4                	jne    0x49262c
492648:	3b 75 0c             	cmp    0xc(%ebp),%esi
49264b:	74 2e                	je     0x49267b
49264d:	3b f7                	cmp    %edi,%esi
49264f:	74 26                	je     0x492677
492651:	83 c6 fc             	add    $0xfffffffc,%esi
492654:	83 7e fc 00          	cmpl   $0x0,-0x4(%esi)
492658:	74 13                	je     0x49266d
49265a:	8b 1e                	mov    (%esi),%ebx
49265c:	85 db                	test   %ebx,%ebx
49265e:	74 0d                	je     0x49266d
492660:	6a 00                	push   $0x0
492662:	8b cb                	mov    %ebx,%ecx
492664:	ff 15 d4 e2 49 00    	call   *0x49e2d4
49266a:	ff d3                	call   *%ebx
49266c:	59                   	pop    %ecx
49266d:	83 ee 08             	sub    $0x8,%esi
492670:	8d 46 04             	lea    0x4(%esi),%eax
492673:	3b c7                	cmp    %edi,%eax
492675:	75 dd                	jne    0x492654
492677:	32 c0                	xor    %al,%al
492679:	eb 02                	jmp    0x49267d
49267b:	b0 01                	mov    $0x1,%al
49267d:	5f                   	pop    %edi
49267e:	5e                   	pop    %esi
49267f:	5b                   	pop    %ebx
492680:	5d                   	pop    %ebp
492681:	c3                   	ret
492682:	8b ff                	mov    %edi,%edi
492684:	55                   	push   %ebp
492685:	8b ec                	mov    %esp,%ebp
492687:	56                   	push   %esi
492688:	8b 75 0c             	mov    0xc(%ebp),%esi
49268b:	39 75 08             	cmp    %esi,0x8(%ebp)
49268e:	74 1e                	je     0x4926ae
492690:	57                   	push   %edi
492691:	8b 7e fc             	mov    -0x4(%esi),%edi
492694:	85 ff                	test   %edi,%edi
492696:	74 0d                	je     0x4926a5
492698:	6a 00                	push   $0x0
49269a:	8b cf                	mov    %edi,%ecx
49269c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4926a2:	ff d7                	call   *%edi
4926a4:	59                   	pop    %ecx
4926a5:	83 ee 08             	sub    $0x8,%esi
4926a8:	3b 75 08             	cmp    0x8(%ebp),%esi
4926ab:	75 e4                	jne    0x492691
4926ad:	5f                   	pop    %edi
4926ae:	b0 01                	mov    $0x1,%al
4926b0:	5e                   	pop    %esi
4926b1:	5d                   	pop    %ebp
4926b2:	c3                   	ret
4926b3:	8b ff                	mov    %edi,%edi
4926b5:	55                   	push   %ebp
4926b6:	8b ec                	mov    %esp,%ebp
4926b8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4926bb:	8b c1                	mov    %ecx,%eax
4926bd:	53                   	push   %ebx
4926be:	83 e0 10             	and    $0x10,%eax
4926c1:	bb 00 02 00 00       	mov    $0x200,%ebx
4926c6:	56                   	push   %esi
4926c7:	c1 e0 03             	shl    $0x3,%eax
4926ca:	57                   	push   %edi
4926cb:	f6 c1 08             	test   $0x8,%cl
4926ce:	74 02                	je     0x4926d2
4926d0:	0b c3                	or     %ebx,%eax
4926d2:	f6 c1 04             	test   $0x4,%cl
4926d5:	74 05                	je     0x4926dc
4926d7:	0d 00 04 00 00       	or     $0x400,%eax
4926dc:	f6 c1 02             	test   $0x2,%cl
4926df:	74 05                	je     0x4926e6
4926e1:	0d 00 08 00 00       	or     $0x800,%eax
4926e6:	f6 c1 01             	test   $0x1,%cl
4926e9:	74 05                	je     0x4926f0
4926eb:	0d 00 10 00 00       	or     $0x1000,%eax
4926f0:	be 00 01 00 00       	mov    $0x100,%esi
4926f5:	f7 c1 00 00 08 00    	test   $0x80000,%ecx
4926fb:	74 02                	je     0x4926ff
4926fd:	0b c6                	or     %esi,%eax
4926ff:	8b d1                	mov    %ecx,%edx
492701:	bf 00 03 00 00       	mov    $0x300,%edi
492706:	23 d7                	and    %edi,%edx
492708:	74 1f                	je     0x492729
49270a:	3b d6                	cmp    %esi,%edx
49270c:	74 16                	je     0x492724
49270e:	3b d3                	cmp    %ebx,%edx
492710:	74 0b                	je     0x49271d
492712:	3b d7                	cmp    %edi,%edx
492714:	75 13                	jne    0x492729
492716:	0d 00 60 00 00       	or     $0x6000,%eax
49271b:	eb 0c                	jmp    0x492729
49271d:	0d 00 40 00 00       	or     $0x4000,%eax
492722:	eb 05                	jmp    0x492729
492724:	0d 00 20 00 00       	or     $0x2000,%eax
492729:	ba 00 00 00 03       	mov    $0x3000000,%edx
49272e:	5f                   	pop    %edi
49272f:	23 ca                	and    %edx,%ecx
492731:	5e                   	pop    %esi
492732:	5b                   	pop    %ebx
492733:	81 f9 00 00 00 01    	cmp    $0x1000000,%ecx
492739:	74 18                	je     0x492753
49273b:	81 f9 00 00 00 02    	cmp    $0x2000000,%ecx
492741:	74 0b                	je     0x49274e
492743:	3b ca                	cmp    %edx,%ecx
492745:	75 11                	jne    0x492758
492747:	0d 00 80 00 00       	or     $0x8000,%eax
49274c:	5d                   	pop    %ebp
49274d:	c3                   	ret
49274e:	83 c8 40             	or     $0x40,%eax
492751:	5d                   	pop    %ebp
492752:	c3                   	ret
492753:	0d 40 80 00 00       	or     $0x8040,%eax
492758:	5d                   	pop    %ebp
492759:	c3                   	ret
49275a:	8b ff                	mov    %edi,%edi
49275c:	55                   	push   %ebp
49275d:	8b ec                	mov    %esp,%ebp
49275f:	83 ec 0c             	sub    $0xc,%esp
492762:	56                   	push   %esi
492763:	dd 7d fc             	fnstsw -0x4(%ebp)
492766:	db e2                	fnclex
492768:	33 f6                	xor    %esi,%esi
49276a:	46                   	inc    %esi
49276b:	39 35 fc 82 4c 00    	cmp    %esi,0x4c82fc
492771:	0f 8c 82 00 00 00    	jl     0x4927f9
492777:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
49277b:	33 c9                	xor    %ecx,%ecx
49277d:	8b d1                	mov    %ecx,%edx
49277f:	57                   	push   %edi
492780:	bf 00 00 08 00       	mov    $0x80000,%edi
492785:	a8 3f                	test   $0x3f,%al
492787:	74 29                	je     0x4927b2
492789:	0f b7 d0             	movzwl %ax,%edx
49278c:	23 d6                	and    %esi,%edx
49278e:	c1 e2 04             	shl    $0x4,%edx
492791:	a8 04                	test   $0x4,%al
492793:	74 03                	je     0x492798
492795:	83 ca 08             	or     $0x8,%edx
492798:	a8 08                	test   $0x8,%al
49279a:	74 03                	je     0x49279f
49279c:	83 ca 04             	or     $0x4,%edx
49279f:	a8 10                	test   $0x10,%al
4927a1:	74 03                	je     0x4927a6
4927a3:	83 ca 02             	or     $0x2,%edx
4927a6:	a8 20                	test   $0x20,%al
4927a8:	74 02                	je     0x4927ac
4927aa:	0b d6                	or     %esi,%edx
4927ac:	a8 02                	test   $0x2,%al
4927ae:	74 02                	je     0x4927b2
4927b0:	0b d7                	or     %edi,%edx
4927b2:	0f ae 5d f8          	stmxcsr -0x8(%ebp)
4927b6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4927b9:	83 e0 c0             	and    $0xffffffc0,%eax
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