417496:	8b 4d 10             	mov    0x10(%ebp),%ecx
417499:	0b c9                	or     %ecx,%ecx
41749b:	74 4d                	je     0x4174ea
41749d:	8b 75 08             	mov    0x8(%ebp),%esi
4174a0:	8b 7d 0c             	mov    0xc(%ebp),%edi
4174a3:	b7 41                	mov    $0x41,%bh
4174a5:	b3 5a                	mov    $0x5a,%bl
4174a7:	b6 20                	mov    $0x20,%dh
4174a9:	8d 49 00             	lea    0x0(%ecx),%ecx
4174ac:	8a 26                	mov    (%esi),%ah
4174ae:	0a e4                	or     %ah,%ah
4174b0:	8a 07                	mov    (%edi),%al
4174b2:	74 27                	je     0x4174db
4174b4:	0a c0                	or     %al,%al
4174b6:	74 23                	je     0x4174db
4174b8:	83 c6 01             	add    $0x1,%esi
4174bb:	83 c7 01             	add    $0x1,%edi
4174be:	3a e7                	cmp    %bh,%ah
4174c0:	72 06                	jb     0x4174c8
4174c2:	3a e3                	cmp    %bl,%ah
4174c4:	77 02                	ja     0x4174c8
4174c6:	02 e6                	add    %dh,%ah
4174c8:	3a c7                	cmp    %bh,%al
4174ca:	72 06                	jb     0x4174d2
4174cc:	3a c3                	cmp    %bl,%al
4174ce:	77 02                	ja     0x4174d2
4174d0:	02 c6                	add    %dh,%al
4174d2:	3a e0                	cmp    %al,%ah
4174d4:	75 0b                	jne    0x4174e1
4174d6:	83 e9 01             	sub    $0x1,%ecx
4174d9:	75 d1                	jne    0x4174ac
4174db:	33 c9                	xor    %ecx,%ecx
4174dd:	3a e0                	cmp    %al,%ah
4174df:	74 09                	je     0x4174ea
4174e1:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
4174e6:	72 02                	jb     0x4174ea
4174e8:	f7 d9                	neg    %ecx
4174ea:	8b c1                	mov    %ecx,%eax
4174ec:	5b                   	pop    %ebx
4174ed:	5e                   	pop    %esi
4174ee:	5f                   	pop    %edi
4174ef:	c9                   	leave
4174f0:	c3                   	ret
4174f1:	33 c0                	xor    %eax,%eax
4174f3:	50                   	push   %eax
4174f4:	50                   	push   %eax
4174f5:	6a 03                	push   $0x3
4174f7:	50                   	push   %eax
4174f8:	6a 03                	push   $0x3
4174fa:	68 00 00 00 40       	push   $0x40000000
4174ff:	68 b8 05 42 00       	push   $0x4205b8
417504:	ff 15 fc c0 41 00    	call   *0x41c0fc
41750a:	a3 60 68 42 00       	mov    %eax,0x426860
41750f:	c3                   	ret
417510:	8b 0d 60 68 42 00    	mov    0x426860,%ecx
417516:	83 f9 fe             	cmp    $0xfffffffe,%ecx
417519:	75 0b                	jne    0x417526
41751b:	e8 d1 ff ff ff       	call   0x4174f1
417520:	8b 0d 60 68 42 00    	mov    0x426860,%ecx
417526:	33 c0                	xor    %eax,%eax
417528:	83 f9 ff             	cmp    $0xffffffff,%ecx
41752b:	0f 95 c0             	setne  %al
41752e:	c3                   	ret
41752f:	cc                   	int3
417530:	a1 60 68 42 00       	mov    0x426860,%eax
417535:	83 f8 ff             	cmp    $0xffffffff,%eax
417538:	74 0c                	je     0x417546
41753a:	83 f8 fe             	cmp    $0xfffffffe,%eax
41753d:	74 07                	je     0x417546
41753f:	50                   	push   %eax
417540:	ff 15 00 c1 41 00    	call   *0x41c100
417546:	c3                   	ret
417547:	8b ff                	mov    %edi,%edi
417549:	55                   	push   %ebp
41754a:	8b ec                	mov    %esp,%ebp
41754c:	56                   	push   %esi
41754d:	6a 00                	push   $0x0
41754f:	ff 75 10             	push   0x10(%ebp)
417552:	ff 75 0c             	push   0xc(%ebp)
417555:	ff 75 08             	push   0x8(%ebp)
417558:	ff 35 60 68 42 00    	push   0x426860
41755e:	ff 15 04 c1 41 00    	call   *0x41c104
417564:	8b f0                	mov    %eax,%esi
417566:	85 f6                	test   %esi,%esi
417568:	75 2d                	jne    0x417597
41756a:	ff 15 48 c1 41 00    	call   *0x41c148
417570:	83 f8 06             	cmp    $0x6,%eax
417573:	75 22                	jne    0x417597
417575:	e8 b6 ff ff ff       	call   0x417530
41757a:	e8 72 ff ff ff       	call   0x4174f1
41757f:	56                   	push   %esi
417580:	ff 75 10             	push   0x10(%ebp)
417583:	ff 75 0c             	push   0xc(%ebp)
417586:	ff 75 08             	push   0x8(%ebp)
417589:	ff 35 60 68 42 00    	push   0x426860
41758f:	ff 15 04 c1 41 00    	call   *0x41c104
417595:	8b f0                	mov    %eax,%esi
417597:	8b c6                	mov    %esi,%eax
417599:	5e                   	pop    %esi
41759a:	5d                   	pop    %ebp
41759b:	c3                   	ret
41759c:	6a 0c                	push   $0xc
41759e:	68 60 41 42 00       	push   $0x424160
4175a3:	e8 28 14 ff ff       	call   0x4089d0
4175a8:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
4175ac:	8b 45 08             	mov    0x8(%ebp),%eax
4175af:	ff 30                	push   (%eax)
4175b1:	e8 31 8e ff ff       	call   0x4103e7
4175b6:	59                   	pop    %ecx
4175b7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4175bb:	8b 45 0c             	mov    0xc(%ebp),%eax
4175be:	8b 00                	mov    (%eax),%eax
4175c0:	8b 30                	mov    (%eax),%esi
4175c2:	8b d6                	mov    %esi,%edx
4175c4:	c1 fa 06             	sar    $0x6,%edx
4175c7:	8b c6                	mov    %esi,%eax
4175c9:	83 e0 3f             	and    $0x3f,%eax
4175cc:	6b c8 38             	imul   $0x38,%eax,%ecx
4175cf:	8b 04 95 18 70 42 00 	mov    0x427018(,%edx,4),%eax
4175d6:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
4175db:	74 0b                	je     0x4175e8
4175dd:	56                   	push   %esi
4175de:	e8 d2 00 00 00       	call   0x4176b5
4175e3:	59                   	pop    %ecx
4175e4:	8b f0                	mov    %eax,%esi
4175e6:	eb 0e                	jmp    0x4175f6
4175e8:	e8 e6 76 ff ff       	call   0x40ecd3
4175ed:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4175f3:	83 ce ff             	or     $0xffffffff,%esi
4175f6:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4175f9:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
417600:	e8 17 00 00 00       	call   0x41761c
417605:	8b c6                	mov    %esi,%eax
417607:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41760a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
417611:	59                   	pop    %ecx
417612:	5f                   	pop    %edi
417613:	5e                   	pop    %esi
417614:	5b                   	pop    %ebx
417615:	c9                   	leave
417616:	c2 0c 00             	ret    $0xc
417619:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41761c:	8b 45 10             	mov    0x10(%ebp),%eax
41761f:	ff 30                	push   (%eax)
417621:	e8 e4 8d ff ff       	call   0x41040a
417626:	59                   	pop    %ecx
417627:	c3                   	ret
417628:	8b ff                	mov    %edi,%edi
41762a:	55                   	push   %ebp
41762b:	8b ec                	mov    %esp,%ebp
41762d:	83 ec 10             	sub    $0x10,%esp
417630:	56                   	push   %esi
417631:	8b 75 08             	mov    0x8(%ebp),%esi
417634:	83 fe fe             	cmp    $0xfffffffe,%esi
417637:	75 15                	jne    0x41764e
417639:	e8 82 76 ff ff       	call   0x40ecc0
41763e:	83 20 00             	andl   $0x0,(%eax)
417641:	e8 8d 76 ff ff       	call   0x40ecd3
417646:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
41764c:	eb 61                	jmp    0x4176af
41764e:	85 f6                	test   %esi,%esi
417650:	78 45                	js     0x417697
417652:	3b 35 18 72 42 00    	cmp    0x427218,%esi
417658:	73 3d                	jae    0x417697
41765a:	8b c6                	mov    %esi,%eax
41765c:	8b d6                	mov    %esi,%edx
41765e:	83 e0 3f             	and    $0x3f,%eax
417661:	c1 fa 06             	sar    $0x6,%edx
417664:	6b c8 38             	imul   $0x38,%eax,%ecx
417667:	8b 04 95 18 70 42 00 	mov    0x427018(,%edx,4),%eax
41766e:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
417673:	74 22                	je     0x417697
417675:	8d 45 08             	lea    0x8(%ebp),%eax
417678:	89 75 f8             	mov    %esi,-0x8(%ebp)
41767b:	89 45 f4             	mov    %eax,-0xc(%ebp)
41767e:	8d 4d ff             	lea    -0x1(%ebp),%ecx
417681:	8d 45 f8             	lea    -0x8(%ebp),%eax
417684:	89 75 f0             	mov    %esi,-0x10(%ebp)
417687:	50                   	push   %eax
417688:	8d 45 f4             	lea    -0xc(%ebp),%eax
41768b:	50                   	push   %eax
41768c:	8d 45 f0             	lea    -0x10(%ebp),%eax
41768f:	50                   	push   %eax
417690:	e8 07 ff ff ff       	call   0x41759c
417695:	eb 1b                	jmp    0x4176b2
417697:	e8 24 76 ff ff       	call   0x40ecc0
41769c:	83 20 00             	andl   $0x0,(%eax)
41769f:	e8 2f 76 ff ff       	call   0x40ecd3
4176a4:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4176aa:	e8 67 75 ff ff       	call   0x40ec16
4176af:	83 c8 ff             	or     $0xffffffff,%eax
4176b2:	5e                   	pop    %esi
4176b3:	c9                   	leave
4176b4:	c3                   	ret
4176b5:	8b ff                	mov    %edi,%edi
4176b7:	55                   	push   %ebp
4176b8:	8b ec                	mov    %esp,%ebp
4176ba:	56                   	push   %esi
4176bb:	57                   	push   %edi
4176bc:	8b 7d 08             	mov    0x8(%ebp),%edi
4176bf:	57                   	push   %edi
4176c0:	e8 f9 8d ff ff       	call   0x4104be
4176c5:	59                   	pop    %ecx
4176c6:	83 f8 ff             	cmp    $0xffffffff,%eax
4176c9:	75 04                	jne    0x4176cf
4176cb:	33 f6                	xor    %esi,%esi
4176cd:	eb 4e                	jmp    0x41771d
4176cf:	a1 18 70 42 00       	mov    0x427018,%eax
4176d4:	83 ff 01             	cmp    $0x1,%edi
4176d7:	75 09                	jne    0x4176e2
4176d9:	f6 80 98 00 00 00 01 	testb  $0x1,0x98(%eax)
4176e0:	75 0b                	jne    0x4176ed
4176e2:	83 ff 02             	cmp    $0x2,%edi
4176e5:	75 1c                	jne    0x417703
4176e7:	f6 40 60 01          	testb  $0x1,0x60(%eax)
4176eb:	74 16                	je     0x417703
4176ed:	6a 02                	push   $0x2
4176ef:	e8 ca 8d ff ff       	call   0x4104be
4176f4:	6a 01                	push   $0x1
4176f6:	8b f0                	mov    %eax,%esi
4176f8:	e8 c1 8d ff ff       	call   0x4104be
4176fd:	59                   	pop    %ecx
4176fe:	59                   	pop    %ecx
4176ff:	3b c6                	cmp    %esi,%eax
417701:	74 c8                	je     0x4176cb
417703:	57                   	push   %edi
417704:	e8 b5 8d ff ff       	call   0x4104be
417709:	59                   	pop    %ecx
41770a:	50                   	push   %eax
41770b:	ff 15 00 c1 41 00    	call   *0x41c100
417711:	85 c0                	test   %eax,%eax
417713:	75 b6                	jne    0x4176cb
417715:	ff 15 48 c1 41 00    	call   *0x41c148
41771b:	8b f0                	mov    %eax,%esi
41771d:	57                   	push   %edi
41771e:	e8 0a 8d ff ff       	call   0x41042d
417723:	59                   	pop    %ecx
417724:	8b cf                	mov    %edi,%ecx
417726:	83 e7 3f             	and    $0x3f,%edi
417729:	c1 f9 06             	sar    $0x6,%ecx
41772c:	6b d7 38             	imul   $0x38,%edi,%edx
41772f:	8b 0c 8d 18 70 42 00 	mov    0x427018(,%ecx,4),%ecx
417736:	c6 44 11 28 00       	movb   $0x0,0x28(%ecx,%edx,1)
41773b:	85 f6                	test   %esi,%esi
41773d:	74 0c                	je     0x41774b
41773f:	56                   	push   %esi
417740:	e8 58 75 ff ff       	call   0x40ec9d
417745:	59                   	pop    %ecx
417746:	83 c8 ff             	or     $0xffffffff,%eax
417749:	eb 02                	jmp    0x41774d
41774b:	33 c0                	xor    %eax,%eax
41774d:	5f                   	pop    %edi
41774e:	5e                   	pop    %esi
41774f:	5d                   	pop    %ebp
417750:	c3                   	ret
417751:	8b ff                	mov    %edi,%edi
417753:	55                   	push   %ebp
417754:	8b ec                	mov    %esp,%ebp
417756:	8b 45 08             	mov    0x8(%ebp),%eax
417759:	33 c9                	xor    %ecx,%ecx
41775b:	89 08                	mov    %ecx,(%eax)
41775d:	8b 45 08             	mov    0x8(%ebp),%eax
417760:	89 48 04             	mov    %ecx,0x4(%eax)
417763:	8b 45 08             	mov    0x8(%ebp),%eax
417766:	89 48 08             	mov    %ecx,0x8(%eax)
417769:	8b 45 08             	mov    0x8(%ebp),%eax
41776c:	83 48 10 ff          	orl    $0xffffffff,0x10(%eax)
417770:	8b 45 08             	mov    0x8(%ebp),%eax
417773:	89 48 14             	mov    %ecx,0x14(%eax)
417776:	8b 45 08             	mov    0x8(%ebp),%eax
417779:	89 48 18             	mov    %ecx,0x18(%eax)
41777c:	8b 45 08             	mov    0x8(%ebp),%eax
41777f:	89 48 1c             	mov    %ecx,0x1c(%eax)
417782:	8b 45 08             	mov    0x8(%ebp),%eax
417785:	83 c0 0c             	add    $0xc,%eax
417788:	87 08                	xchg   %ecx,(%eax)
41778a:	5d                   	pop    %ebp
41778b:	c3                   	ret
41778c:	cc                   	int3
41778d:	cc                   	int3
41778e:	cc                   	int3
41778f:	cc                   	int3
417790:	6a 0a                	push   $0xa
417792:	ff 15 5c c1 41 00    	call   *0x41c15c
417798:	a3 28 74 42 00       	mov    %eax,0x427428
41779d:	33 c0                	xor    %eax,%eax
41779f:	c3                   	ret
4177a0:	55                   	push   %ebp
4177a1:	8b ec                	mov    %esp,%ebp
4177a3:	83 ec 08             	sub    $0x8,%esp
4177a6:	83 e4 f0             	and    $0xfffffff0,%esp
4177a9:	dd 1c 24             	fstpl  (%esp)
4177ac:	f3 0f 7e 04 24       	movq   (%esp),%xmm0
4177b1:	e8 08 00 00 00       	call   0x4177be
4177b6:	c9                   	leave
4177b7:	c3                   	ret
4177b8:	66 0f 12 44 24 04    	movlpd 0x4(%esp),%xmm0
4177be:	ba 00 00 00 00       	mov    $0x0,%edx
4177c3:	66 0f 28 e8          	movapd %xmm0,%xmm5
4177c7:	66 0f 14 c0          	unpcklpd %xmm0,%xmm0
4177cb:	66 0f 73 d5 34       	psrlq  $0x34,%xmm5
4177d0:	66 0f c5 cd 00       	pextrw $0x0,%xmm5,%ecx
4177d5:	66 0f 28 0d d0 05 42 	movapd 0x4205d0,%xmm1
4177dc:	00
4177dd:	66 0f 28 15 e0 05 42 	movapd 0x4205e0,%xmm2
4177e4:	00
4177e5:	66 0f 28 1d 40 06 42 	movapd 0x420640,%xmm3
4177ec:	00
4177ed:	66 0f 28 25 f0 05 42 	movapd 0x4205f0,%xmm4
4177f4:	00
4177f5:	66 0f 28 35 00 06 42 	movapd 0x420600,%xmm6
4177fc:	00
4177fd:	66 0f 54 c1          	andpd  %xmm1,%xmm0
417801:	66 0f 56 c3          	orpd   %xmm3,%xmm0
417805:	66 0f 58 e0          	addpd  %xmm0,%xmm4
417809:	66 0f c5 c4 00       	pextrw $0x0,%xmm4,%eax
41780e:	25 f0 07 00 00       	and    $0x7f0,%eax
417813:	66 0f 28 a0 00 0c 42 	movapd 0x420c00(%eax),%xmm4
41781a:	00
41781b:	66 0f 28 b8 f0 07 42 	movapd 0x4207f0(%eax),%xmm7
417822:	00
417823:	66 0f 54 f0          	andpd  %xmm0,%xmm6
417827:	66 0f 5c c6          	subpd  %xmm6,%xmm0
41782b:	66 0f 59 f4          	mulpd  %xmm4,%xmm6
41782f:	66 0f 5c f2          	subpd  %xmm2,%xmm6
417833:	f2 0f 58 fe          	addsd  %xmm6,%xmm7
417837:	66 0f 59 c4          	mulpd  %xmm4,%xmm0
41783b:	66 0f 28 e0          	movapd %xmm0,%xmm4
41783f:	66 0f 58 c6          	addpd  %xmm6,%xmm0
417843:	81 e1 ff 0f 00 00    	and    $0xfff,%ecx
417849:	83 e9 01             	sub    $0x1,%ecx
41784c:	81 f9 fd 07 00 00    	cmp    $0x7fd,%ecx
417852:	0f 87 be 00 00 00    	ja     0x417916
417858:	81 e9 fe 03 00 00    	sub    $0x3fe,%ecx
41785e:	03 ca                	add    %edx,%ecx
417860:	f2 0f 2a f1          	cvtsi2sd %ecx,%xmm6
417864:	66 0f 14 f6          	unpcklpd %xmm6,%xmm6
417868:	c1 e1 0a             	shl    $0xa,%ecx
41786b:	03 c1                	add    %ecx,%eax
41786d:	b9 10 00 00 00       	mov    $0x10,%ecx
417872:	ba 00 00 00 00       	mov    $0x0,%edx
417877:	83 f8 00             	cmp    $0x0,%eax
41787a:	0f 44 d1             	cmove  %ecx,%edx
41787d:	66 0f 28 0d 90 06 42 	movapd 0x420690,%xmm1
417884:	00
417885:	66 0f 28 d8          	movapd %xmm0,%xmm3
417889:	66 0f 28 15 a0 06 42 	movapd 0x4206a0,%xmm2
417890:	00
417891:	66 0f 59 c8          	mulpd  %xmm0,%xmm1
417895:	66 0f 59 db          	mulpd  %xmm3,%xmm3