411685:	29 c1                	sub    %eax,%ecx
411687:	89 4b 04             	mov    %ecx,0x4(%ebx)
41168a:	0f 83 0e 01 00 00    	jae    0x41179e
411690:	8b 4e 08             	mov    0x8(%esi),%ecx
411693:	29 c1                	sub    %eax,%ecx
411695:	89 4b 08             	mov    %ecx,0x8(%ebx)
411698:	0f 83 06 01 00 00    	jae    0x4117a4
41169e:	8b 4e 0c             	mov    0xc(%esi),%ecx
4116a1:	29 c1                	sub    %eax,%ecx
4116a3:	89 4b 0c             	mov    %ecx,0xc(%ebx)
4116a6:	0f 83 fe 00 00 00    	jae    0x4117aa
4116ac:	8b 4e 10             	mov    0x10(%esi),%ecx
4116af:	29 c1                	sub    %eax,%ecx
4116b1:	89 4b 10             	mov    %ecx,0x10(%ebx)
4116b4:	0f 83 f6 00 00 00    	jae    0x4117b0
4116ba:	8b 4e 14             	mov    0x14(%esi),%ecx
4116bd:	29 c1                	sub    %eax,%ecx
4116bf:	89 4b 14             	mov    %ecx,0x14(%ebx)
4116c2:	0f 83 ee 00 00 00    	jae    0x4117b6
4116c8:	8b 4e 18             	mov    0x18(%esi),%ecx
4116cb:	29 c1                	sub    %eax,%ecx
4116cd:	89 4b 18             	mov    %ecx,0x18(%ebx)
4116d0:	0f 83 e6 00 00 00    	jae    0x4117bc
4116d6:	8b 4e 1c             	mov    0x1c(%esi),%ecx
4116d9:	29 c1                	sub    %eax,%ecx
4116db:	89 4b 1c             	mov    %ecx,0x1c(%ebx)
4116de:	0f 83 de 00 00 00    	jae    0x4117c2
4116e4:	83 c6 20             	add    $0x20,%esi
4116e7:	83 c3 20             	add    $0x20,%ebx
4116ea:	83 ed 08             	sub    $0x8,%ebp
4116ed:	0f 85 83 ff ff ff    	jne    0x411676
4116f3:	8b 6c 24 24          	mov    0x24(%esp),%ebp
4116f7:	83 e5 07             	and    $0x7,%ebp
4116fa:	0f 84 35 01 00 00    	je     0x411835
411700:	8b 0e                	mov    (%esi),%ecx
411702:	29 c1                	sub    %eax,%ecx
411704:	89 0b                	mov    %ecx,(%ebx)
411706:	0f 83 d6 00 00 00    	jae    0x4117e2
41170c:	4d                   	dec    %ebp
41170d:	0f 84 22 01 00 00    	je     0x411835
411713:	8b 4e 04             	mov    0x4(%esi),%ecx
411716:	29 c1                	sub    %eax,%ecx
411718:	89 4b 04             	mov    %ecx,0x4(%ebx)
41171b:	0f 83 ce 00 00 00    	jae    0x4117ef
411721:	4d                   	dec    %ebp
411722:	0f 84 0d 01 00 00    	je     0x411835
411728:	8b 4e 08             	mov    0x8(%esi),%ecx
41172b:	29 c1                	sub    %eax,%ecx
41172d:	89 4b 08             	mov    %ecx,0x8(%ebx)
411730:	0f 83 c6 00 00 00    	jae    0x4117fc
411736:	4d                   	dec    %ebp
411737:	0f 84 f8 00 00 00    	je     0x411835
41173d:	8b 4e 0c             	mov    0xc(%esi),%ecx
411740:	29 c1                	sub    %eax,%ecx
411742:	89 4b 0c             	mov    %ecx,0xc(%ebx)
411745:	0f 83 be 00 00 00    	jae    0x411809
41174b:	4d                   	dec    %ebp
41174c:	0f 84 e3 00 00 00    	je     0x411835
411752:	8b 4e 10             	mov    0x10(%esi),%ecx
411755:	29 c1                	sub    %eax,%ecx
411757:	89 4b 10             	mov    %ecx,0x10(%ebx)
41175a:	0f 83 b6 00 00 00    	jae    0x411816
411760:	4d                   	dec    %ebp
411761:	0f 84 ce 00 00 00    	je     0x411835
411767:	8b 4e 14             	mov    0x14(%esi),%ecx
41176a:	29 c1                	sub    %eax,%ecx
41176c:	89 4b 14             	mov    %ecx,0x14(%ebx)
41176f:	0f 83 ae 00 00 00    	jae    0x411823
411775:	4d                   	dec    %ebp
411776:	0f 84 b9 00 00 00    	je     0x411835
41177c:	8b 4e 18             	mov    0x18(%esi),%ecx
41177f:	29 c1                	sub    %eax,%ecx
411781:	89 4b 18             	mov    %ecx,0x18(%ebx)
411784:	0f 83 a6 00 00 00    	jae    0x411830
41178a:	b8 01 00 00 00       	mov    $0x1,%eax
41178f:	e9 a1 00 00 00       	jmp    0x411835
411794:	8b 0e                	mov    (%esi),%ecx
411796:	89 0b                	mov    %ecx,(%ebx)
411798:	8b 4e 04             	mov    0x4(%esi),%ecx
41179b:	89 4b 04             	mov    %ecx,0x4(%ebx)
41179e:	8b 4e 08             	mov    0x8(%esi),%ecx
4117a1:	89 4b 08             	mov    %ecx,0x8(%ebx)
4117a4:	8b 4e 0c             	mov    0xc(%esi),%ecx
4117a7:	89 4b 0c             	mov    %ecx,0xc(%ebx)
4117aa:	8b 4e 10             	mov    0x10(%esi),%ecx
4117ad:	89 4b 10             	mov    %ecx,0x10(%ebx)
4117b0:	8b 4e 14             	mov    0x14(%esi),%ecx
4117b3:	89 4b 14             	mov    %ecx,0x14(%ebx)
4117b6:	8b 4e 18             	mov    0x18(%esi),%ecx
4117b9:	89 4b 18             	mov    %ecx,0x18(%ebx)
4117bc:	8b 4e 1c             	mov    0x1c(%esi),%ecx
4117bf:	89 4b 1c             	mov    %ecx,0x1c(%ebx)
4117c2:	83 c6 20             	add    $0x20,%esi
4117c5:	83 c3 20             	add    $0x20,%ebx
4117c8:	83 ed 08             	sub    $0x8,%ebp
4117cb:	0f 85 c3 ff ff ff    	jne    0x411794
4117d1:	8b 6c 24 24          	mov    0x24(%esp),%ebp
4117d5:	83 e5 07             	and    $0x7,%ebp
4117d8:	0f 84 52 00 00 00    	je     0x411830
4117de:	8b 0e                	mov    (%esi),%ecx
4117e0:	89 0b                	mov    %ecx,(%ebx)
4117e2:	4d                   	dec    %ebp
4117e3:	0f 84 47 00 00 00    	je     0x411830
4117e9:	8b 4e 04             	mov    0x4(%esi),%ecx
4117ec:	89 4b 04             	mov    %ecx,0x4(%ebx)
4117ef:	4d                   	dec    %ebp
4117f0:	0f 84 3a 00 00 00    	je     0x411830
4117f6:	8b 4e 08             	mov    0x8(%esi),%ecx
4117f9:	89 4b 08             	mov    %ecx,0x8(%ebx)
4117fc:	4d                   	dec    %ebp
4117fd:	0f 84 2d 00 00 00    	je     0x411830
411803:	8b 4e 0c             	mov    0xc(%esi),%ecx
411806:	89 4b 0c             	mov    %ecx,0xc(%ebx)
411809:	4d                   	dec    %ebp
41180a:	0f 84 20 00 00 00    	je     0x411830
411810:	8b 4e 10             	mov    0x10(%esi),%ecx
411813:	89 4b 10             	mov    %ecx,0x10(%ebx)
411816:	4d                   	dec    %ebp
411817:	0f 84 13 00 00 00    	je     0x411830
41181d:	8b 4e 14             	mov    0x14(%esi),%ecx
411820:	89 4b 14             	mov    %ecx,0x14(%ebx)
411823:	4d                   	dec    %ebp
411824:	0f 84 06 00 00 00    	je     0x411830
41182a:	8b 4e 18             	mov    0x18(%esi),%ecx
41182d:	89 4b 18             	mov    %ecx,0x18(%ebx)
411830:	b8 00 00 00 00       	mov    $0x0,%eax
411835:	5f                   	pop    %edi
411836:	5e                   	pop    %esi
411837:	5b                   	pop    %ebx
411838:	5d                   	pop    %ebp
411839:	c3                   	ret
41183a:	cc                   	int3
41183b:	cc                   	int3
41183c:	cc                   	int3
41183d:	cc                   	int3
41183e:	cc                   	int3
41183f:	cc                   	int3
411840:	55                   	push   %ebp
411841:	53                   	push   %ebx
411842:	56                   	push   %esi
411843:	57                   	push   %edi
411844:	31 c0                	xor    %eax,%eax
411846:	8b 7c 24 28          	mov    0x28(%esp),%edi
41184a:	83 ff 04             	cmp    $0x4,%edi
41184d:	0f 8c c1 05 00 00    	jl     0x411e14
411853:	8d 74 24 14          	lea    0x14(%esp),%esi
411857:	8d 54 24 18          	lea    0x18(%esp),%edx
41185b:	83 c7 02             	add    $0x2,%edi
41185e:	f7 df                	neg    %edi
411860:	8d 6c bc e0          	lea    -0x20(%esp,%edi,4),%ebp
411864:	f7 df                	neg    %edi
411866:	89 e8                	mov    %ebp,%eax
411868:	29 d0                	sub    %edx,%eax
41186a:	25 ff 07 00 00       	and    $0x7ff,%eax
41186f:	29 c5                	sub    %eax,%ebp
411871:	31 ea                	xor    %ebp,%edx
411873:	81 e2 00 08 00 00    	and    $0x800,%edx
411879:	81 f2 00 08 00 00    	xor    $0x800,%edx
41187f:	29 d5                	sub    %edx,%ebp
411881:	83 e5 c0             	and    $0xffffffc0,%ebp
411884:	89 e0                	mov    %esp,%eax
411886:	29 e8                	sub    %ebp,%eax
411888:	25 00 f0 ff ff       	and    $0xfffff000,%eax
41188d:	89 e2                	mov    %esp,%edx
41188f:	8d 64 05 00          	lea    0x0(%ebp,%eax,1),%esp
411893:	8b 04 24             	mov    (%esp),%eax
411896:	39 ec                	cmp    %ebp,%esp
411898:	0f 87 12 00 00 00    	ja     0x4118b0
41189e:	e9 1f 00 00 00       	jmp    0x4118c2
4118a3:	90                   	nop
4118a4:	90                   	nop
4118a5:	90                   	nop
4118a6:	90                   	nop
4118a7:	90                   	nop
4118a8:	90                   	nop
4118a9:	90                   	nop
4118aa:	90                   	nop
4118ab:	90                   	nop
4118ac:	90                   	nop
4118ad:	90                   	nop
4118ae:	90                   	nop
4118af:	90                   	nop
4118b0:	8d a4 24 00 f0 ff ff 	lea    -0x1000(%esp),%esp
4118b7:	8b 04 24             	mov    (%esp),%eax
4118ba:	39 ec                	cmp    %ebp,%esp
4118bc:	0f 87 ee ff ff ff    	ja     0x4118b0
4118c2:	8b 06                	mov    (%esi),%eax
4118c4:	8b 5e 04             	mov    0x4(%esi),%ebx
4118c7:	8b 4e 08             	mov    0x8(%esi),%ecx
4118ca:	8b 6e 0c             	mov    0xc(%esi),%ebp
4118cd:	8b 76 10             	mov    0x10(%esi),%esi
4118d0:	8b 36                	mov    (%esi),%esi
4118d2:	89 44 24 04          	mov    %eax,0x4(%esp)
4118d6:	89 5c 24 08          	mov    %ebx,0x8(%esp)
4118da:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
4118de:	89 6c 24 10          	mov    %ebp,0x10(%esp)
4118e2:	89 74 24 14          	mov    %esi,0x14(%esp)
4118e6:	8d 5f fd             	lea    -0x3(%edi),%ebx
4118e9:	89 54 24 18          	mov    %edx,0x18(%esp)
4118ed:	8d 05 a0 73 71 00    	lea    0x7173a0,%eax
4118f3:	0f ba 20 1a          	btl    $0x1a,(%eax)
4118f7:	0f 83 83 01 00 00    	jae    0x411a80
4118fd:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
411902:	0f 6e f8             	movd   %eax,%mm7
411905:	8b 74 24 08          	mov    0x8(%esp),%esi
411909:	8b 7c 24 0c          	mov    0xc(%esp),%edi
41190d:	8b 6c 24 10          	mov    0x10(%esp),%ebp
411911:	31 d2                	xor    %edx,%edx
411913:	31 c9                	xor    %ecx,%ecx
411915:	0f 6e 27             	movd   (%edi),%mm4
411918:	0f 6e 2e             	movd   (%esi),%mm5
41191b:	0f 6e 5d 00          	movd   0x0(%ebp),%mm3
41191f:	0f f4 ec             	pmuludq %mm4,%mm5
411922:	0f 6f d5             	movq   %mm5,%mm2
411925:	0f 6f c5             	movq   %mm5,%mm0
411928:	0f db c7             	pand   %mm7,%mm0
41192b:	0f f4 6c 24 14       	pmuludq 0x14(%esp),%mm5
411930:	0f f4 dd             	pmuludq %mm5,%mm3
411933:	0f d4 d8             	paddq  %mm0,%mm3
411936:	0f 6e 4d 04          	movd   0x4(%ebp),%mm1
41193a:	0f 6e 46 04          	movd   0x4(%esi),%mm0
41193e:	0f 73 d2 20          	psrlq  $0x20,%mm2
411942:	0f 73 d3 20          	psrlq  $0x20,%mm3
411946:	41                   	inc    %ecx
411947:	90                   	nop
411948:	90                   	nop
411949:	90                   	nop
41194a:	90                   	nop
41194b:	90                   	nop
41194c:	90                   	nop
41194d:	90                   	nop
41194e:	90                   	nop
41194f:	90                   	nop
411950:	0f f4 c4             	pmuludq %mm4,%mm0
411953:	0f f4 cd             	pmuludq %mm5,%mm1
411956:	0f d4 d0             	paddq  %mm0,%mm2
411959:	0f d4 d9             	paddq  %mm1,%mm3
41195c:	0f 6f c2             	movq   %mm2,%mm0
41195f:	0f db c7             	pand   %mm7,%mm0
411962:	0f 6e 4c 8d 04       	movd   0x4(%ebp,%ecx,4),%mm1
411967:	0f d4 d8             	paddq  %mm0,%mm3
41196a:	0f 6e 44 8e 04       	movd   0x4(%esi,%ecx,4),%mm0
41196f:	0f 73 d2 20          	psrlq  $0x20,%mm2
411973:	0f 7e 5c 8c 1c       	movd   %mm3,0x1c(%esp,%ecx,4)
411978:	0f 73 d3 20          	psrlq  $0x20,%mm3
41197c:	8d 49 01             	lea    0x1(%ecx),%ecx
41197f:	39 d9                	cmp    %ebx,%ecx
411981:	0f 8c c9 ff ff ff    	jl     0x411950
411987:	0f f4 c4             	pmuludq %mm4,%mm0
41198a:	0f f4 cd             	pmuludq %mm5,%mm1
41198d:	0f d4 d0             	paddq  %mm0,%mm2
411990:	0f d4 d9             	paddq  %mm1,%mm3
411993:	0f 6f c2             	movq   %mm2,%mm0
411996:	0f db c7             	pand   %mm7,%mm0
411999:	0f d4 d8             	paddq  %mm0,%mm3
41199c:	0f 7e 5c 8c 1c       	movd   %mm3,0x1c(%esp,%ecx,4)
4119a1:	0f 73 d2 20          	psrlq  $0x20,%mm2
4119a5:	0f 73 d3 20          	psrlq  $0x20,%mm3
4119a9:	0f d4 da             	paddq  %mm2,%mm3
4119ac:	0f 7f 5c 9c 20       	movq   %mm3,0x20(%esp,%ebx,4)
4119b1:	42                   	inc    %edx
4119b2:	31 c9                	xor    %ecx,%ecx
4119b4:	0f 6e 24 97          	movd   (%edi,%edx,4),%mm4
4119b8:	0f 6e 2e             	movd   (%esi),%mm5
4119bb:	0f 6e 74 24 20       	movd   0x20(%esp),%mm6
4119c0:	0f 6e 5d 00          	movd   0x0(%ebp),%mm3
4119c4:	0f f4 ec             	pmuludq %mm4,%mm5
4119c7:	0f d4 ee             	paddq  %mm6,%mm5
4119ca:	0f 6f c5             	movq   %mm5,%mm0
4119cd:	0f 6f d5             	movq   %mm5,%mm2
4119d0:	0f db c7             	pand   %mm7,%mm0
4119d3:	0f f4 6c 24 14       	pmuludq 0x14(%esp),%mm5
4119d8:	0f f4 dd             	pmuludq %mm5,%mm3
4119db:	0f d4 d8             	paddq  %mm0,%mm3
4119de:	0f 6e 74 24 24       	movd   0x24(%esp),%mm6
4119e3:	0f 6e 4d 04          	movd   0x4(%ebp),%mm1
4119e7:	0f 6e 46 04          	movd   0x4(%esi),%mm0
4119eb:	0f 73 d2 20          	psrlq  $0x20,%mm2
4119ef:	0f 73 d3 20          	psrlq  $0x20,%mm3
4119f3:	0f d4 d6             	paddq  %mm6,%mm2
4119f6:	41                   	inc    %ecx
4119f7:	4b                   	dec    %ebx
4119f8:	0f f4 c4             	pmuludq %mm4,%mm0
4119fb:	0f f4 cd             	pmuludq %mm5,%mm1
4119fe:	0f d4 d0             	paddq  %mm0,%mm2
411a01:	0f d4 d9             	paddq  %mm1,%mm3
411a04:	0f 6f c2             	movq   %mm2,%mm0
411a07:	0f 6e 74 8c 24       	movd   0x24(%esp,%ecx,4),%mm6
411a0c:	0f db c7             	pand   %mm7,%mm0
411a0f:	0f 6e 4c 8d 04       	movd   0x4(%ebp,%ecx,4),%mm1
411a14:	0f d4 d8             	paddq  %mm0,%mm3
411a17:	0f 6e 44 8e 04       	movd   0x4(%esi,%ecx,4),%mm0
411a1c:	0f 73 d2 20          	psrlq  $0x20,%mm2
411a20:	0f 7e 5c 8c 1c       	movd   %mm3,0x1c(%esp,%ecx,4)
411a25:	0f 73 d3 20          	psrlq  $0x20,%mm3
411a29:	0f d4 d6             	paddq  %mm6,%mm2
411a2c:	4b                   	dec    %ebx
411a2d:	8d 49 01             	lea    0x1(%ecx),%ecx
411a30:	0f 85 c2 ff ff ff    	jne    0x4119f8
411a36:	89 cb                	mov    %ecx,%ebx
411a38:	0f f4 c4             	pmuludq %mm4,%mm0
411a3b:	0f f4 cd             	pmuludq %mm5,%mm1
411a3e:	0f d4 d0             	paddq  %mm0,%mm2
411a41:	0f d4 d9             	paddq  %mm1,%mm3
411a44:	0f 6f c2             	movq   %mm2,%mm0
411a47:	0f db c7             	pand   %mm7,%mm0
411a4a:	0f d4 d8             	paddq  %mm0,%mm3
411a4d:	0f 7e 5c 8c 1c       	movd   %mm3,0x1c(%esp,%ecx,4)
411a52:	0f 73 d2 20          	psrlq  $0x20,%mm2
411a56:	0f 73 d3 20          	psrlq  $0x20,%mm3
411a5a:	0f 6e 74 9c 24       	movd   0x24(%esp,%ebx,4),%mm6
411a5f:	0f d4 da             	paddq  %mm2,%mm3
411a62:	0f d4 de             	paddq  %mm6,%mm3
411a65:	0f 7f 5c 9c 20       	movq   %mm3,0x20(%esp,%ebx,4)
411a6a:	8d 52 01             	lea    0x1(%edx),%edx
411a6d:	39 da                	cmp    %ebx,%edx
411a6f:	0f 8e 3d ff ff ff    	jle    0x4119b2
411a75:	0f 77                	emms
411a77:	e9 24 03 00 00       	jmp    0x411da0
411a7c:	90                   	nop
411a7d:	90                   	nop
411a7e:	90                   	nop
411a7f:	90                   	nop
411a80:	8b 74 24 08          	mov    0x8(%esp),%esi
411a84:	8d 6b 01             	lea    0x1(%ebx),%ebp
411a87:	8b 7c 24 0c          	mov    0xc(%esp),%edi
411a8b:	31 c9                	xor    %ecx,%ecx
411a8d:	89 f2                	mov    %esi,%edx
411a8f:	83 e5 01             	and    $0x1,%ebp
411a92:	29 fa                	sub    %edi,%edx
411a94:	8d 44 9f 04          	lea    0x4(%edi,%ebx,4),%eax
411a98:	09 d5                	or     %edx,%ebp
411a9a:	8b 3f                	mov    (%edi),%edi
411a9c:	0f 84 4e 01 00 00    	je     0x411bf0
411aa2:	89 44 24 1c          	mov    %eax,0x1c(%esp)
411aa6:	8b 06                	mov    (%esi),%eax
411aa8:	31 d2                	xor    %edx,%edx
411aaa:	90                   	nop
411aab:	90                   	nop
411aac:	90                   	nop
411aad:	90                   	nop
411aae:	90                   	nop
411aaf:	90                   	nop
411ab0:	89 d5                	mov    %edx,%ebp
411ab2:	f7 e7                	mul    %edi
411ab4:	01 c5                	add    %eax,%ebp
411ab6:	8d 49 01             	lea    0x1(%ecx),%ecx
411ab9:	83 d2 00             	adc    $0x0,%edx
411abc:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
411abf:	39 d9                	cmp    %ebx,%ecx