5f357e:	c1 e2 02             	shl    $0x2,%edx
5f3581:	0b d1                	or     %ecx,%edx
5f3583:	8b ce                	mov    %esi,%ecx
5f3585:	c1 e2 06             	shl    $0x6,%edx
5f3588:	83 e1 3f             	and    $0x3f,%ecx
5f358b:	0b d1                	or     %ecx,%edx
5f358d:	8b ce                	mov    %esi,%ecx
5f358f:	c1 e2 02             	shl    $0x2,%edx
5f3592:	81 e1 00 03 00 00    	and    $0x300,%ecx
5f3598:	0b d1                	or     %ecx,%edx
5f359a:	c1 e2 0e             	shl    $0xe,%edx
5f359d:	0b c2                	or     %edx,%eax
5f359f:	5f                   	pop    %edi
5f35a0:	0b c6                	or     %esi,%eax
5f35a2:	5e                   	pop    %esi
5f35a3:	c9                   	leave
5f35a4:	c3                   	ret
5f35a5:	8b ff                	mov    %edi,%edi
5f35a7:	55                   	push   %ebp
5f35a8:	8b ec                	mov    %esp,%ebp
5f35aa:	51                   	push   %ecx
5f35ab:	56                   	push   %esi
5f35ac:	33 c0                	xor    %eax,%eax
5f35ae:	57                   	push   %edi
5f35af:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
5f35b3:	dd 7d fc             	fnstsw -0x4(%ebp)
5f35b6:	0f b7 55 fc          	movzwl -0x4(%ebp),%edx
5f35ba:	8b f2                	mov    %edx,%esi
5f35bc:	8b c2                	mov    %edx,%eax
5f35be:	c1 ee 02             	shr    $0x2,%esi
5f35c1:	83 e0 10             	and    $0x10,%eax
5f35c4:	83 e6 08             	and    $0x8,%esi
5f35c7:	8b ca                	mov    %edx,%ecx
5f35c9:	0b f0                	or     %eax,%esi
5f35cb:	83 e1 02             	and    $0x2,%ecx
5f35ce:	c1 ee 02             	shr    $0x2,%esi
5f35d1:	8b c2                	mov    %edx,%eax
5f35d3:	83 e0 08             	and    $0x8,%eax
5f35d6:	c1 e1 03             	shl    $0x3,%ecx
5f35d9:	0b f0                	or     %eax,%esi
5f35db:	8b c2                	mov    %edx,%eax
5f35dd:	83 e0 04             	and    $0x4,%eax
5f35e0:	d1 ee                	shr    $1,%esi
5f35e2:	0b c8                	or     %eax,%ecx
5f35e4:	83 e2 01             	and    $0x1,%edx
5f35e7:	03 c9                	add    %ecx,%ecx
5f35e9:	c1 e2 04             	shl    $0x4,%edx
5f35ec:	0b f1                	or     %ecx,%esi
5f35ee:	0b f2                	or     %edx,%esi
5f35f0:	83 3d 58 6b 71 00 01 	cmpl   $0x1,0x716b58
5f35f7:	7d 04                	jge    0x5f35fd
5f35f9:	33 ff                	xor    %edi,%edi
5f35fb:	eb 0a                	jmp    0x5f3607
5f35fd:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
5f3601:	8b 7d fc             	mov    -0x4(%ebp),%edi
5f3604:	83 e7 3f             	and    $0x3f,%edi
5f3607:	8b d7                	mov    %edi,%edx
5f3609:	8b c7                	mov    %edi,%eax
5f360b:	83 e0 10             	and    $0x10,%eax
5f360e:	c1 ea 02             	shr    $0x2,%edx
5f3611:	83 e2 08             	and    $0x8,%edx
5f3614:	8b cf                	mov    %edi,%ecx
5f3616:	0b d0                	or     %eax,%edx
5f3618:	83 e1 02             	and    $0x2,%ecx
5f361b:	8b c7                	mov    %edi,%eax
5f361d:	c1 ea 02             	shr    $0x2,%edx
5f3620:	83 e0 08             	and    $0x8,%eax
5f3623:	c1 e1 03             	shl    $0x3,%ecx
5f3626:	0b d0                	or     %eax,%edx
5f3628:	8b c7                	mov    %edi,%eax
5f362a:	83 e0 04             	and    $0x4,%eax
5f362d:	d1 ea                	shr    $1,%edx
5f362f:	0b c8                	or     %eax,%ecx
5f3631:	83 e7 01             	and    $0x1,%edi
5f3634:	03 c9                	add    %ecx,%ecx
5f3636:	c1 e7 04             	shl    $0x4,%edi
5f3639:	0b d1                	or     %ecx,%edx
5f363b:	0b d7                	or     %edi,%edx
5f363d:	8b c2                	mov    %edx,%eax
5f363f:	c1 e0 08             	shl    $0x8,%eax
5f3642:	0b c6                	or     %esi,%eax
5f3644:	c1 e0 10             	shl    $0x10,%eax
5f3647:	0b c2                	or     %edx,%eax
5f3649:	5f                   	pop    %edi
5f364a:	0b c6                	or     %esi,%eax
5f364c:	5e                   	pop    %esi
5f364d:	c9                   	leave
5f364e:	c3                   	ret
5f364f:	8b ff                	mov    %edi,%edi
5f3651:	55                   	push   %ebp
5f3652:	8b ec                	mov    %esp,%ebp
5f3654:	83 ec 20             	sub    $0x20,%esp
5f3657:	57                   	push   %edi
5f3658:	ff 75 08             	push   0x8(%ebp)
5f365b:	e8 ed fd ff ff       	call   0x5f344d
5f3660:	59                   	pop    %ecx
5f3661:	6a 07                	push   $0x7
5f3663:	0f b7 d0             	movzwl %ax,%edx
5f3666:	8d 7d e0             	lea    -0x20(%ebp),%edi
5f3669:	59                   	pop    %ecx
5f366a:	33 c0                	xor    %eax,%eax
5f366c:	f3 ab                	rep stos %eax,%es:(%edi)
5f366e:	d9 75 e0             	fnstenv -0x20(%ebp)
5f3671:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5f3674:	81 e2 3f 1f 00 00    	and    $0x1f3f,%edx
5f367a:	81 e1 c0 e0 ff ff    	and    $0xffffe0c0,%ecx
5f3680:	8b c2                	mov    %edx,%eax
5f3682:	0b ca                	or     %edx,%ecx
5f3684:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f3687:	89 4d e0             	mov    %ecx,-0x20(%ebp)
5f368a:	d9 65 e0             	fldenv -0x20(%ebp)
5f368d:	ff 75 08             	push   0x8(%ebp)
5f3690:	e8 02 fd ff ff       	call   0x5f3397
5f3695:	83 3d 58 6b 71 00 01 	cmpl   $0x1,0x716b58
5f369c:	59                   	pop    %ecx
5f369d:	0f b7 d0             	movzwl %ax,%edx
5f36a0:	5f                   	pop    %edi
5f36a1:	7c 25                	jl     0x5f36c8
5f36a3:	81 e2 c0 ff 00 00    	and    $0xffc0,%edx
5f36a9:	0f b7 c2             	movzwl %dx,%eax
5f36ac:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f36af:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
5f36b3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5f36b6:	81 e1 3f 00 ff ff    	and    $0xffff003f,%ecx
5f36bc:	0f b7 c2             	movzwl %dx,%eax
5f36bf:	0b c8                	or     %eax,%ecx
5f36c1:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5f36c4:	0f ae 55 fc          	ldmxcsr -0x4(%ebp)
5f36c8:	c9                   	leave
5f36c9:	c3                   	ret
5f36ca:	8b ff                	mov    %edi,%edi
5f36cc:	55                   	push   %ebp
5f36cd:	8b ec                	mov    %esp,%ebp
5f36cf:	83 ec 20             	sub    $0x20,%esp
5f36d2:	56                   	push   %esi
5f36d3:	8b 75 08             	mov    0x8(%ebp),%esi
5f36d6:	8b ce                	mov    %esi,%ecx
5f36d8:	c1 e9 10             	shr    $0x10,%ecx
5f36db:	83 e1 3f             	and    $0x3f,%ecx
5f36de:	8b d1                	mov    %ecx,%edx
5f36e0:	8b c1                	mov    %ecx,%eax
5f36e2:	83 e2 01             	and    $0x1,%edx
5f36e5:	f7 da                	neg    %edx
5f36e7:	57                   	push   %edi
5f36e8:	1b d2                	sbb    %edx,%edx
5f36ea:	8d 7d e0             	lea    -0x20(%ebp),%edi
5f36ed:	83 e0 02             	and    $0x2,%eax
5f36f0:	83 e2 20             	and    $0x20,%edx
5f36f3:	f7 d8                	neg    %eax
5f36f5:	6a 00                	push   $0x0
5f36f7:	1b c0                	sbb    %eax,%eax
5f36f9:	83 e0 10             	and    $0x10,%eax
5f36fc:	0b d0                	or     %eax,%edx
5f36fe:	8b c1                	mov    %ecx,%eax
5f3700:	83 e0 04             	and    $0x4,%eax
5f3703:	f7 d8                	neg    %eax
5f3705:	1b c0                	sbb    %eax,%eax
5f3707:	83 e0 08             	and    $0x8,%eax
5f370a:	0b d0                	or     %eax,%edx
5f370c:	8b c1                	mov    %ecx,%eax
5f370e:	83 e0 08             	and    $0x8,%eax
5f3711:	f7 d8                	neg    %eax
5f3713:	1b c0                	sbb    %eax,%eax
5f3715:	83 e0 04             	and    $0x4,%eax
5f3718:	0b d0                	or     %eax,%edx
5f371a:	f7 c1 10 00 00 00    	test   $0x10,%ecx
5f3720:	58                   	pop    %eax
5f3721:	0f 95 c0             	setne  %al
5f3724:	83 e1 20             	and    $0x20,%ecx
5f3727:	0b d0                	or     %eax,%edx
5f3729:	f7 d9                	neg    %ecx
5f372b:	6a 07                	push   $0x7
5f372d:	1b c9                	sbb    %ecx,%ecx
5f372f:	33 c0                	xor    %eax,%eax
5f3731:	83 e1 02             	and    $0x2,%ecx
5f3734:	0b d1                	or     %ecx,%edx
5f3736:	59                   	pop    %ecx
5f3737:	f3 ab                	rep stos %eax,%es:(%edi)
5f3739:	d9 75 e0             	fnstenv -0x20(%ebp)
5f373c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5f373f:	83 e2 3f             	and    $0x3f,%edx
5f3742:	83 e0 c0             	and    $0xffffffc0,%eax
5f3745:	0b c2                	or     %edx,%eax
5f3747:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5f374a:	d9 65 e0             	fldenv -0x20(%ebp)
5f374d:	c1 ee 18             	shr    $0x18,%esi
5f3750:	83 e6 3f             	and    $0x3f,%esi
5f3753:	8b ce                	mov    %esi,%ecx
5f3755:	8b c6                	mov    %esi,%eax
5f3757:	83 e1 01             	and    $0x1,%ecx
5f375a:	f7 d9                	neg    %ecx
5f375c:	6a 00                	push   $0x0
5f375e:	1b c9                	sbb    %ecx,%ecx
5f3760:	83 e0 02             	and    $0x2,%eax
5f3763:	83 e1 20             	and    $0x20,%ecx
5f3766:	f7 d8                	neg    %eax
5f3768:	1b c0                	sbb    %eax,%eax
5f376a:	83 e0 10             	and    $0x10,%eax
5f376d:	0b c8                	or     %eax,%ecx
5f376f:	8b c6                	mov    %esi,%eax
5f3771:	83 e0 04             	and    $0x4,%eax
5f3774:	f7 d8                	neg    %eax
5f3776:	1b c0                	sbb    %eax,%eax
5f3778:	83 e0 08             	and    $0x8,%eax
5f377b:	0b c8                	or     %eax,%ecx
5f377d:	8b c6                	mov    %esi,%eax
5f377f:	83 e0 08             	and    $0x8,%eax
5f3782:	f7 d8                	neg    %eax
5f3784:	1b c0                	sbb    %eax,%eax
5f3786:	83 e0 04             	and    $0x4,%eax
5f3789:	0b c8                	or     %eax,%ecx
5f378b:	f7 c6 10 00 00 00    	test   $0x10,%esi
5f3791:	58                   	pop    %eax
5f3792:	0f 95 c0             	setne  %al
5f3795:	0b c8                	or     %eax,%ecx
5f3797:	83 e6 20             	and    $0x20,%esi
5f379a:	f7 de                	neg    %esi
5f379c:	5f                   	pop    %edi
5f379d:	1b f6                	sbb    %esi,%esi
5f379f:	83 e6 02             	and    $0x2,%esi
5f37a2:	0b ce                	or     %esi,%ecx
5f37a4:	83 3d 58 6b 71 00 01 	cmpl   $0x1,0x716b58
5f37ab:	5e                   	pop    %esi
5f37ac:	7c 16                	jl     0x5f37c4
5f37ae:	0f ae 5d fc          	stmxcsr -0x4(%ebp)
5f37b2:	8b 45 fc             	mov    -0x4(%ebp),%eax
5f37b5:	83 e1 3f             	and    $0x3f,%ecx
5f37b8:	83 e0 c0             	and    $0xffffffc0,%eax
5f37bb:	0b c1                	or     %ecx,%eax
5f37bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f37c0:	0f ae 55 fc          	ldmxcsr -0x4(%ebp)
5f37c4:	c9                   	leave
5f37c5:	c3                   	ret
5f37c6:	8b ff                	mov    %edi,%edi
5f37c8:	55                   	push   %ebp
5f37c9:	8b ec                	mov    %esp,%ebp
5f37cb:	51                   	push   %ecx
5f37cc:	51                   	push   %ecx
5f37cd:	dd 45 08             	fldl   0x8(%ebp)
5f37d0:	d9 fc                	frndint
5f37d2:	dd 5d f8             	fstpl  -0x8(%ebp)
5f37d5:	dd 45 f8             	fldl   -0x8(%ebp)
5f37d8:	c9                   	leave
5f37d9:	c3                   	ret
5f37da:	8b ff                	mov    %edi,%edi
5f37dc:	55                   	push   %ebp
5f37dd:	8b ec                	mov    %esp,%ebp
5f37df:	53                   	push   %ebx
5f37e0:	56                   	push   %esi
5f37e1:	57                   	push   %edi
5f37e2:	33 ff                	xor    %edi,%edi
5f37e4:	bb e3 00 00 00       	mov    $0xe3,%ebx
5f37e9:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
5f37ec:	99                   	cltd
5f37ed:	2b c2                	sub    %edx,%eax
5f37ef:	8b f0                	mov    %eax,%esi
5f37f1:	d1 fe                	sar    $1,%esi
5f37f3:	6a 55                	push   $0x55
5f37f5:	ff 34 f5 98 65 67 00 	push   0x676598(,%esi,8)
5f37fc:	ff 75 08             	push   0x8(%ebp)
5f37ff:	e8 49 4a ff ff       	call   0x5e824d
5f3804:	83 c4 0c             	add    $0xc,%esp
5f3807:	85 c0                	test   %eax,%eax
5f3809:	74 13                	je     0x5f381e
5f380b:	79 05                	jns    0x5f3812
5f380d:	8d 5e ff             	lea    -0x1(%esi),%ebx
5f3810:	eb 03                	jmp    0x5f3815
5f3812:	8d 7e 01             	lea    0x1(%esi),%edi
5f3815:	3b fb                	cmp    %ebx,%edi
5f3817:	7e d0                	jle    0x5f37e9
5f3819:	83 c8 ff             	or     $0xffffffff,%eax
5f381c:	eb 07                	jmp    0x5f3825
5f381e:	8b 04 f5 9c 65 67 00 	mov    0x67659c(,%esi,8),%eax
5f3825:	5f                   	pop    %edi
5f3826:	5e                   	pop    %esi
5f3827:	5b                   	pop    %ebx
5f3828:	5d                   	pop    %ebp
5f3829:	c3                   	ret
5f382a:	8b ff                	mov    %edi,%edi
5f382c:	55                   	push   %ebp
5f382d:	8b ec                	mov    %esp,%ebp
5f382f:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5f3833:	74 1d                	je     0x5f3852
5f3835:	ff 75 08             	push   0x8(%ebp)
5f3838:	e8 9d ff ff ff       	call   0x5f37da
5f383d:	59                   	pop    %ecx
5f383e:	85 c0                	test   %eax,%eax
5f3840:	78 10                	js     0x5f3852
5f3842:	3d e4 00 00 00       	cmp    $0xe4,%eax
5f3847:	73 09                	jae    0x5f3852
5f3849:	8b 04 c5 78 54 67 00 	mov    0x675478(,%eax,8),%eax
5f3850:	5d                   	pop    %ebp
5f3851:	c3                   	ret
5f3852:	33 c0                	xor    %eax,%eax
5f3854:	5d                   	pop    %ebp
5f3855:	c3                   	ret
5f3856:	8b ff                	mov    %edi,%edi
5f3858:	55                   	push   %ebp
5f3859:	8b ec                	mov    %esp,%ebp
5f385b:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5f385f:	74 14                	je     0x5f3875
5f3861:	8b 45 08             	mov    0x8(%ebp),%eax
5f3864:	eb 01                	jmp    0x5f3867
5f3866:	40                   	inc    %eax
5f3867:	8a 08                	mov    (%eax),%cl
5f3869:	80 f9 30             	cmp    $0x30,%cl
5f386c:	74 f8                	je     0x5f3866
5f386e:	84 c9                	test   %cl,%cl
5f3870:	0f 95 c0             	setne  %al
5f3873:	5d                   	pop    %ebp
5f3874:	c3                   	ret
5f3875:	b0 01                	mov    $0x1,%al
5f3877:	5d                   	pop    %ebp
5f3878:	c3                   	ret
5f3879:	8b ff                	mov    %edi,%edi
5f387b:	55                   	push   %ebp
5f387c:	8b ec                	mov    %esp,%ebp
5f387e:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
5f3882:	75 0b                	jne    0x5f388f
5f3884:	8b 45 0c             	mov    0xc(%ebp),%eax
5f3887:	80 38 35             	cmpb   $0x35,(%eax)
5f388a:	0f 9d c0             	setge  %al
5f388d:	5d                   	pop    %ebp
5f388e:	c3                   	ret
5f388f:	e8 53 8d ff ff       	call   0x5ec5e7
5f3894:	85 c0                	test   %eax,%eax
5f3896:	75 2d                	jne    0x5f38c5
5f3898:	8b 55 0c             	mov    0xc(%ebp),%edx
5f389b:	8a 02                	mov    (%edx),%al
5f389d:	3c 35                	cmp    $0x35,%al
5f389f:	7f 20                	jg     0x5f38c1
5f38a1:	7c 60                	jl     0x5f3903
5f38a3:	ff 75 14             	push   0x14(%ebp)
5f38a6:	8d 42 01             	lea    0x1(%edx),%eax
5f38a9:	50                   	push   %eax
5f38aa:	e8 a7 ff ff ff       	call   0x5f3856
5f38af:	59                   	pop    %ecx
5f38b0:	59                   	pop    %ecx
5f38b1:	84 c0                	test   %al,%al
5f38b3:	75 0c                	jne    0x5f38c1
5f38b5:	3b 55 08             	cmp    0x8(%ebp),%edx
5f38b8:	74 49                	je     0x5f3903
5f38ba:	8a 42 ff             	mov    -0x1(%edx),%al
5f38bd:	24 01                	and    $0x1,%al
5f38bf:	5d                   	pop    %ebp
5f38c0:	c3                   	ret
5f38c1:	b0 01                	mov    $0x1,%al
5f38c3:	5d                   	pop    %ebp
5f38c4:	c3                   	ret
5f38c5:	3d 00 02 00 00       	cmp    $0x200,%eax