42b5e7:	33 f6                	xor    %esi,%esi
42b5e9:	8b 4d 10             	mov    0x10(%ebp),%ecx
42b5ec:	85 db                	test   %ebx,%ebx
42b5ee:	74 0d                	je     0x42b5fd
42b5f0:	33 c0                	xor    %eax,%eax
42b5f2:	85 c9                	test   %ecx,%ecx
42b5f4:	0f 84 72 01 00 00    	je     0x42b76c
42b5fa:	66 89 03             	mov    %ax,(%ebx)
42b5fd:	8b 55 0c             	mov    0xc(%ebp),%edx
42b600:	85 d2                	test   %edx,%edx
42b602:	75 24                	jne    0x42b628
42b604:	8b 45 14             	mov    0x14(%ebp),%eax
42b607:	50                   	push   %eax
42b608:	56                   	push   %esi
42b609:	56                   	push   %esi
42b60a:	56                   	push   %esi
42b60b:	56                   	push   %esi
42b60c:	56                   	push   %esi
42b60d:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
42b611:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
42b618:	e8 54 1d fe ff       	call   0x40d371
42b61d:	83 c4 18             	add    $0x18,%esp
42b620:	83 c8 ff             	or     $0xffffffff,%eax
42b623:	e9 44 01 00 00       	jmp    0x42b76c
42b628:	8b 7d 14             	mov    0x14(%ebp),%edi
42b62b:	80 7f 14 00          	cmpb   $0x0,0x14(%edi)
42b62f:	75 0d                	jne    0x42b63e
42b631:	8b cf                	mov    %edi,%ecx
42b633:	e8 88 62 fe ff       	call   0x4118c0
42b638:	8b 55 0c             	mov    0xc(%ebp),%edx
42b63b:	8b 4d 10             	mov    0x10(%ebp),%ecx
42b63e:	8b 47 0c             	mov    0xc(%edi),%eax
42b641:	81 78 08 e9 fd 00 00 	cmpl   $0xfde9,0x8(%eax)
42b648:	75 1e                	jne    0x42b668
42b64a:	57                   	push   %edi
42b64b:	8d 45 e8             	lea    -0x18(%ebp),%eax
42b64e:	89 75 e8             	mov    %esi,-0x18(%ebp)
42b651:	50                   	push   %eax
42b652:	51                   	push   %ecx
42b653:	8d 45 0c             	lea    0xc(%ebp),%eax
42b656:	89 75 ec             	mov    %esi,-0x14(%ebp)
42b659:	50                   	push   %eax
42b65a:	53                   	push   %ebx
42b65b:	e8 6d c7 ff ff       	call   0x427dcd
42b660:	83 c4 14             	add    $0x14,%esp
42b663:	e9 04 01 00 00       	jmp    0x42b76c
42b668:	8b 80 a8 00 00 00    	mov    0xa8(%eax),%eax
42b66e:	85 db                	test   %ebx,%ebx
42b670:	0f 84 b8 00 00 00    	je     0x42b72e
42b676:	85 c0                	test   %eax,%eax
42b678:	75 20                	jne    0x42b69a
42b67a:	85 c9                	test   %ecx,%ecx
42b67c:	74 15                	je     0x42b693
42b67e:	0f b6 04 16          	movzbl (%esi,%edx,1),%eax
42b682:	66 89 03             	mov    %ax,(%ebx)
42b685:	80 3c 16 00          	cmpb   $0x0,(%esi,%edx,1)
42b689:	74 08                	je     0x42b693
42b68b:	46                   	inc    %esi
42b68c:	83 c3 02             	add    $0x2,%ebx
42b68f:	3b f1                	cmp    %ecx,%esi
42b691:	72 eb                	jb     0x42b67e
42b693:	8b c6                	mov    %esi,%eax
42b695:	e9 d2 00 00 00       	jmp    0x42b76c
42b69a:	8b 47 0c             	mov    0xc(%edi),%eax
42b69d:	51                   	push   %ecx
42b69e:	53                   	push   %ebx
42b69f:	6a ff                	push   $0xffffffff
42b6a1:	52                   	push   %edx
42b6a2:	6a 09                	push   $0x9
42b6a4:	ff 70 08             	push   0x8(%eax)
42b6a7:	e8 fc 50 ff ff       	call   0x4207a8
42b6ac:	83 c4 18             	add    $0x18,%esp
42b6af:	85 c0                	test   %eax,%eax
42b6b1:	0f 85 b4 00 00 00    	jne    0x42b76b
42b6b7:	ff 15 08 11 43 00    	call   *0x431108
42b6bd:	83 f8 7a             	cmp    $0x7a,%eax
42b6c0:	74 15                	je     0x42b6d7
42b6c2:	c6 47 1c 01          	movb   $0x1,0x1c(%edi)
42b6c6:	33 c0                	xor    %eax,%eax
42b6c8:	c7 47 18 2a 00 00 00 	movl   $0x2a,0x18(%edi)
42b6cf:	66 89 03             	mov    %ax,(%ebx)
42b6d2:	e9 49 ff ff ff       	jmp    0x42b620
42b6d7:	8b 55 10             	mov    0x10(%ebp),%edx
42b6da:	8b ca                	mov    %edx,%ecx
42b6dc:	8b 45 0c             	mov    0xc(%ebp),%eax
42b6df:	85 d2                	test   %edx,%edx
42b6e1:	eb 27                	jmp    0x42b70a
42b6e3:	49                   	dec    %ecx
42b6e4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
42b6e7:	8a 08                	mov    (%eax),%cl
42b6e9:	84 c9                	test   %cl,%cl
42b6eb:	74 22                	je     0x42b70f
42b6ed:	8b 47 0c             	mov    0xc(%edi),%eax
42b6f0:	0f b6 c9             	movzbl %cl,%ecx
42b6f3:	8b 00                	mov    (%eax),%eax
42b6f5:	66 39 34 48          	cmp    %si,(%eax,%ecx,2)
42b6f9:	8b 45 f0             	mov    -0x10(%ebp),%eax
42b6fc:	7d 06                	jge    0x42b704
42b6fe:	40                   	inc    %eax
42b6ff:	80 38 00             	cmpb   $0x0,(%eax)
42b702:	74 be                	je     0x42b6c2
42b704:	8b 4d ec             	mov    -0x14(%ebp),%ecx
42b707:	40                   	inc    %eax
42b708:	85 c9                	test   %ecx,%ecx
42b70a:	89 45 f0             	mov    %eax,-0x10(%ebp)
42b70d:	75 d4                	jne    0x42b6e3
42b70f:	2b 45 0c             	sub    0xc(%ebp),%eax
42b712:	52                   	push   %edx
42b713:	53                   	push   %ebx
42b714:	50                   	push   %eax
42b715:	ff 75 0c             	push   0xc(%ebp)
42b718:	8b 47 0c             	mov    0xc(%edi),%eax
42b71b:	6a 01                	push   $0x1
42b71d:	ff 70 08             	push   0x8(%eax)
42b720:	e8 83 50 ff ff       	call   0x4207a8
42b725:	83 c4 18             	add    $0x18,%esp
42b728:	85 c0                	test   %eax,%eax
42b72a:	75 40                	jne    0x42b76c
42b72c:	eb 94                	jmp    0x42b6c2
42b72e:	85 c0                	test   %eax,%eax
42b730:	75 10                	jne    0x42b742
42b732:	8d 42 01             	lea    0x1(%edx),%eax
42b735:	8a 0a                	mov    (%edx),%cl
42b737:	42                   	inc    %edx
42b738:	84 c9                	test   %cl,%cl
42b73a:	75 f9                	jne    0x42b735
42b73c:	2b d0                	sub    %eax,%edx
42b73e:	8b c2                	mov    %edx,%eax
42b740:	eb 2a                	jmp    0x42b76c
42b742:	8b 47 0c             	mov    0xc(%edi),%eax
42b745:	56                   	push   %esi
42b746:	56                   	push   %esi
42b747:	6a ff                	push   $0xffffffff
42b749:	52                   	push   %edx
42b74a:	6a 09                	push   $0x9
42b74c:	ff 70 08             	push   0x8(%eax)
42b74f:	e8 54 50 ff ff       	call   0x4207a8
42b754:	83 c4 18             	add    $0x18,%esp
42b757:	85 c0                	test   %eax,%eax
42b759:	75 10                	jne    0x42b76b
42b75b:	c6 47 1c 01          	movb   $0x1,0x1c(%edi)
42b75f:	c7 47 18 2a 00 00 00 	movl   $0x2a,0x18(%edi)
42b766:	e9 b5 fe ff ff       	jmp    0x42b620
42b76b:	48                   	dec    %eax
42b76c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
42b76f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
42b776:	59                   	pop    %ecx
42b777:	5f                   	pop    %edi
42b778:	5e                   	pop    %esi
42b779:	5b                   	pop    %ebx
42b77a:	c9                   	leave
42b77b:	c3                   	ret
42b77c:	cc                   	int3
42b77d:	cc                   	int3
42b77e:	cc                   	int3
42b77f:	cc                   	int3
42b780:	cc                   	int3
42b781:	8b ff                	mov    %edi,%edi
42b783:	55                   	push   %ebp
42b784:	8b ec                	mov    %esp,%ebp
42b786:	83 ec 28             	sub    $0x28,%esp
42b789:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42b78c:	56                   	push   %esi
42b78d:	6a 00                	push   $0x0
42b78f:	e8 4e 19 fe ff       	call   0x40d0e2
42b794:	8d 45 d8             	lea    -0x28(%ebp),%eax
42b797:	50                   	push   %eax
42b798:	ff 75 18             	push   0x18(%ebp)
42b79b:	ff 75 14             	push   0x14(%ebp)
42b79e:	ff 75 10             	push   0x10(%ebp)
42b7a1:	ff 75 0c             	push   0xc(%ebp)
42b7a4:	ff 75 08             	push   0x8(%ebp)
42b7a7:	e8 32 fd ff ff       	call   0x42b4de
42b7ac:	83 c4 18             	add    $0x18,%esp
42b7af:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42b7b2:	8b f0                	mov    %eax,%esi
42b7b4:	e8 71 19 fe ff       	call   0x40d12a
42b7b9:	8b c6                	mov    %esi,%eax
42b7bb:	5e                   	pop    %esi
42b7bc:	c9                   	leave
42b7bd:	c3                   	ret
42b7be:	8b ff                	mov    %edi,%edi
42b7c0:	55                   	push   %ebp
42b7c1:	8b ec                	mov    %esp,%ebp
42b7c3:	56                   	push   %esi
42b7c4:	8b 75 14             	mov    0x14(%ebp),%esi
42b7c7:	85 f6                	test   %esi,%esi
42b7c9:	7e 0d                	jle    0x42b7d8
42b7cb:	56                   	push   %esi
42b7cc:	ff 75 10             	push   0x10(%ebp)
42b7cf:	e8 d2 0f ff ff       	call   0x41c7a6
42b7d4:	59                   	pop    %ecx
42b7d5:	59                   	pop    %ecx
42b7d6:	8b f0                	mov    %eax,%esi
42b7d8:	8b 45 1c             	mov    0x1c(%ebp),%eax
42b7db:	85 c0                	test   %eax,%eax
42b7dd:	7e 0b                	jle    0x42b7ea
42b7df:	50                   	push   %eax
42b7e0:	ff 75 18             	push   0x18(%ebp)
42b7e3:	e8 be 0f ff ff       	call   0x41c7a6
42b7e8:	59                   	pop    %ecx
42b7e9:	59                   	pop    %ecx
42b7ea:	85 f6                	test   %esi,%esi
42b7ec:	74 1e                	je     0x42b80c
42b7ee:	85 c0                	test   %eax,%eax
42b7f0:	74 1a                	je     0x42b80c
42b7f2:	33 c9                	xor    %ecx,%ecx
42b7f4:	51                   	push   %ecx
42b7f5:	51                   	push   %ecx
42b7f6:	51                   	push   %ecx
42b7f7:	50                   	push   %eax
42b7f8:	ff 75 18             	push   0x18(%ebp)
42b7fb:	56                   	push   %esi
42b7fc:	ff 75 10             	push   0x10(%ebp)
42b7ff:	ff 75 0c             	push   0xc(%ebp)
42b802:	ff 75 08             	push   0x8(%ebp)
42b805:	e8 93 2b ff ff       	call   0x41e39d
42b80a:	eb 14                	jmp    0x42b820
42b80c:	2b f0                	sub    %eax,%esi
42b80e:	75 05                	jne    0x42b815
42b810:	6a 02                	push   $0x2
42b812:	5e                   	pop    %esi
42b813:	eb 09                	jmp    0x42b81e
42b815:	c1 fe 1f             	sar    $0x1f,%esi
42b818:	83 e6 fe             	and    $0xfffffffe,%esi
42b81b:	83 c6 03             	add    $0x3,%esi
42b81e:	8b c6                	mov    %esi,%eax
42b820:	5e                   	pop    %esi
42b821:	5d                   	pop    %ebp
42b822:	c3                   	ret
42b823:	6a 0a                	push   $0xa
42b825:	ff 15 a4 11 43 00    	call   *0x4311a4
42b82b:	a3 cc ff 43 00       	mov    %eax,0x43ffcc
42b830:	33 c0                	xor    %eax,%eax
42b832:	c3                   	ret
42b833:	cc                   	int3
42b834:	cc                   	int3
42b835:	cc                   	int3
42b836:	cc                   	int3
42b837:	cc                   	int3
42b838:	cc                   	int3
42b839:	cc                   	int3
42b83a:	cc                   	int3
42b83b:	cc                   	int3
42b83c:	cc                   	int3
42b83d:	cc                   	int3
42b83e:	cc                   	int3
42b83f:	cc                   	int3
42b840:	55                   	push   %ebp
42b841:	8b ec                	mov    %esp,%ebp
42b843:	83 ec 08             	sub    $0x8,%esp
42b846:	83 e4 f0             	and    $0xfffffff0,%esp
42b849:	dd 1c 24             	fstpl  (%esp)
42b84c:	f3 0f 7e 04 24       	movq   (%esp),%xmm0
42b851:	e8 08 00 00 00       	call   0x42b85e
42b856:	c9                   	leave
42b857:	c3                   	ret
42b858:	66 0f 12 44 24 04    	movlpd 0x4(%esp),%xmm0
42b85e:	ba 00 00 00 00       	mov    $0x0,%edx
42b863:	66 0f 28 e8          	movapd %xmm0,%xmm5
42b867:	66 0f 14 c0          	unpcklpd %xmm0,%xmm0
42b86b:	66 0f 73 d5 34       	psrlq  $0x34,%xmm5
42b870:	66 0f c5 cd 00       	pextrw $0x0,%xmm5,%ecx
42b875:	66 0f 28 0d a0 78 43 	movapd 0x4378a0,%xmm1
42b87c:	00
42b87d:	66 0f 28 15 b0 78 43 	movapd 0x4378b0,%xmm2
42b884:	00
42b885:	66 0f 28 1d 10 79 43 	movapd 0x437910,%xmm3
42b88c:	00
42b88d:	66 0f 28 25 c0 78 43 	movapd 0x4378c0,%xmm4
42b894:	00
42b895:	66 0f 28 35 d0 78 43 	movapd 0x4378d0,%xmm6
42b89c:	00
42b89d:	66 0f 54 c1          	andpd  %xmm1,%xmm0
42b8a1:	66 0f 56 c3          	orpd   %xmm3,%xmm0
42b8a5:	66 0f 58 e0          	addpd  %xmm0,%xmm4
42b8a9:	66 0f c5 c4 00       	pextrw $0x0,%xmm4,%eax
42b8ae:	25 f0 07 00 00       	and    $0x7f0,%eax
42b8b3:	66 0f 28 a0 d0 7e 43 	movapd 0x437ed0(%eax),%xmm4
42b8ba:	00
42b8bb:	66 0f 28 b8 c0 7a 43 	movapd 0x437ac0(%eax),%xmm7
42b8c2:	00
42b8c3:	66 0f 54 f0          	andpd  %xmm0,%xmm6
42b8c7:	66 0f 5c c6          	subpd  %xmm6,%xmm0
42b8cb:	66 0f 59 f4          	mulpd  %xmm4,%xmm6
42b8cf:	66 0f 5c f2          	subpd  %xmm2,%xmm6
42b8d3:	f2 0f 58 fe          	addsd  %xmm6,%xmm7
42b8d7:	66 0f 59 c4          	mulpd  %xmm4,%xmm0
42b8db:	66 0f 28 e0          	movapd %xmm0,%xmm4
42b8df:	66 0f 58 c6          	addpd  %xmm6,%xmm0
42b8e3:	81 e1 ff 0f 00 00    	and    $0xfff,%ecx
42b8e9:	83 e9 01             	sub    $0x1,%ecx
42b8ec:	81 f9 fd 07 00 00    	cmp    $0x7fd,%ecx
42b8f2:	0f 87 be 00 00 00    	ja     0x42b9b6
42b8f8:	81 e9 fe 03 00 00    	sub    $0x3fe,%ecx
42b8fe:	03 ca                	add    %edx,%ecx
42b900:	f2 0f 2a f1          	cvtsi2sd %ecx,%xmm6
42b904:	66 0f 14 f6          	unpcklpd %xmm6,%xmm6
42b908:	c1 e1 0a             	shl    $0xa,%ecx
42b90b:	03 c1                	add    %ecx,%eax
42b90d:	b9 10 00 00 00       	mov    $0x10,%ecx
42b912:	ba 00 00 00 00       	mov    $0x0,%edx
42b917:	83 f8 00             	cmp    $0x0,%eax
42b91a:	0f 44 d1             	cmove  %ecx,%edx
42b91d:	66 0f 28 0d 60 79 43 	movapd 0x437960,%xmm1
42b924:	00
42b925:	66 0f 28 d8          	movapd %xmm0,%xmm3
42b929:	66 0f 28 15 70 79 43 	movapd 0x437970,%xmm2
42b930:	00
42b931:	66 0f 59 c8          	mulpd  %xmm0,%xmm1
42b935:	66 0f 59 db          	mulpd  %xmm3,%xmm3
42b939:	66 0f 58 ca          	addpd  %xmm2,%xmm1
42b93d:	66 0f 28 15 80 79 43 	movapd 0x437980,%xmm2
42b944:	00
42b945:	f2 0f 59 db          	mulsd  %xmm3,%xmm3
42b949:	66 0f 28 2d e0 78 43 	movapd 0x4378e0,%xmm5
42b950:	00
42b951:	66 0f 59 f5          	mulpd  %xmm5,%xmm6
42b955:	66 0f 28 aa f0 78 43 	movapd 0x4378f0(%edx),%xmm5
42b95c:	00
42b95d:	66 0f 54 e5          	andpd  %xmm5,%xmm4
42b961:	66 0f 58 fe          	addpd  %xmm6,%xmm7
42b965:	66 0f 58 fc          	addpd  %xmm4,%xmm7
42b969:	66 0f 59 c8          	mulpd  %xmm0,%xmm1
42b96d:	f2 0f 59 d8          	mulsd  %xmm0,%xmm3
42b971:	66 0f 58 ca          	addpd  %xmm2,%xmm1
42b975:	66 0f 28 15 90 79 43 	movapd 0x437990,%xmm2
42b97c:	00
42b97d:	66 0f 59 d0          	mulpd  %xmm0,%xmm2
42b981:	66 0f 28 f7          	movapd %xmm7,%xmm6
42b985:	66 0f 15 f6          	unpckhpd %xmm6,%xmm6
42b989:	66 0f 59 cb          	mulpd  %xmm3,%xmm1
42b98d:	83 ec 10             	sub    $0x10,%esp
42b990:	66 0f 28 c1          	movapd %xmm1,%xmm0
42b994:	66 0f 58 ca          	addpd  %xmm2,%xmm1
42b998:	66 0f 15 c0          	unpckhpd %xmm0,%xmm0
42b99c:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
42b9a0:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
42b9a4:	f2 0f 58 c7          	addsd  %xmm7,%xmm0
42b9a8:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
42b9ae:	dd 44 24 04          	fldl   0x4(%esp)
42b9b2:	83 c4 10             	add    $0x10,%esp
42b9b5:	c3                   	ret
42b9b6:	66 0f 12 44 24 04    	movlpd 0x4(%esp),%xmm0
42b9bc:	66 0f 28 0d 20 79 43 	movapd 0x437920,%xmm1
42b9c3:	00
42b9c4:	f2 0f c2 c8 00       	cmpeqsd %xmm0,%xmm1
42b9c9:	66 0f c5 c1 00       	pextrw $0x0,%xmm1,%eax
42b9ce:	83 f8 00             	cmp    $0x0,%eax
42b9d1:	77 48                	ja     0x42ba1b