4683f8:	03 f7                	add    %edi,%esi
4683fa:	f7 da                	neg    %edx
4683fc:	03 f8                	add    %eax,%edi
4683fe:	89 54 24 18          	mov    %edx,0x18(%esp)
468402:	8b 44 24 1c          	mov    0x1c(%esp),%eax
468406:	f7 d8                	neg    %eax
468408:	89 44 24 1c          	mov    %eax,0x1c(%esp)
46840c:	8b 44 24 20          	mov    0x20(%esp),%eax
468410:	f7 d8                	neg    %eax
468412:	89 44 24 20          	mov    %eax,0x20(%esp)
468416:	8b 45 20             	mov    0x20(%ebp),%eax
468419:	eb 03                	jmp    0x46841e
46841b:	8b 7d 18             	mov    0x18(%ebp),%edi
46841e:	89 4c 24 14          	mov    %ecx,0x14(%esp)
468422:	a8 10                	test   $0x10,%al
468424:	0f 84 79 01 00 00    	je     0x4685a3
46842a:	8b 45 1c             	mov    0x1c(%ebp),%eax
46842d:	83 f8 40             	cmp    $0x40,%eax
468430:	0f 82 6a 01 00 00    	jb     0x4685a0
468436:	8b 55 20             	mov    0x20(%ebp),%edx
468439:	83 e2 01             	and    $0x1,%edx
46843c:	89 54 24 2c          	mov    %edx,0x2c(%esp)
468440:	8b 55 20             	mov    0x20(%ebp),%edx
468443:	83 e2 04             	and    $0x4,%edx
468446:	c1 e8 06             	shr    $0x6,%eax
468449:	89 54 24 24          	mov    %edx,0x24(%esp)
46844d:	8b 54 24 18          	mov    0x18(%esp),%edx
468451:	89 44 24 28          	mov    %eax,0x28(%esp)
468455:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%eax,%eax,1)
46845c:	00 00 00 00
468460:	83 7c 24 2c 00       	cmpl   $0x0,0x2c(%esp)
468465:	0f 10 29             	movups (%ecx),%xmm5
468468:	0f 29 6c 24 60       	movaps %xmm5,0x60(%esp)
46846d:	74 28                	je     0x468497
46846f:	0f 28 0d 20 e8 4a 00 	movaps 0x4ae820,%xmm1
468476:	0f 28 d5             	movaps %xmm5,%xmm2
468479:	66 0f fe d1          	paddd  %xmm1,%xmm2
46847d:	0f 28 da             	movaps %xmm2,%xmm3
468480:	66 0f fe d9          	paddd  %xmm1,%xmm3
468484:	0f 28 e3             	movaps %xmm3,%xmm4
468487:	66 0f fe e1          	paddd  %xmm1,%xmm4
46848b:	0f 28 c4             	movaps %xmm4,%xmm0
46848e:	66 0f fe c1          	paddd  %xmm1,%xmm0
468492:	0f 11 01             	movups %xmm0,(%ecx)
468495:	eb 19                	jmp    0x4684b0
468497:	8b 44 24 1c          	mov    0x1c(%esp),%eax
46849b:	03 c8                	add    %eax,%ecx
46849d:	0f 10 11             	movups (%ecx),%xmm2
4684a0:	03 c8                	add    %eax,%ecx
4684a2:	0f 10 19             	movups (%ecx),%xmm3
4684a5:	03 c8                	add    %eax,%ecx
4684a7:	0f 10 21             	movups (%ecx),%xmm4
4684aa:	03 c8                	add    %eax,%ecx
4684ac:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4684b0:	83 7c 24 24 00       	cmpl   $0x0,0x24(%esp)
4684b5:	0f 29 64 24 50       	movaps %xmm4,0x50(%esp)
4684ba:	0f 29 5c 24 40       	movaps %xmm3,0x40(%esp)
4684bf:	0f 29 54 24 30       	movaps %xmm2,0x30(%esp)
4684c4:	74 38                	je     0x4684fe
4684c6:	0f 10 06             	movups (%esi),%xmm0
4684c9:	03 f2                	add    %edx,%esi
4684cb:	66 0f ef c5          	pxor   %xmm5,%xmm0
4684cf:	0f 29 44 24 60       	movaps %xmm0,0x60(%esp)
4684d4:	0f 10 06             	movups (%esi),%xmm0
4684d7:	03 f2                	add    %edx,%esi
4684d9:	66 0f ef c2          	pxor   %xmm2,%xmm0
4684dd:	0f 29 44 24 30       	movaps %xmm0,0x30(%esp)
4684e2:	0f 10 06             	movups (%esi),%xmm0
4684e5:	03 f2                	add    %edx,%esi
4684e7:	66 0f ef c3          	pxor   %xmm3,%xmm0
4684eb:	0f 29 44 24 40       	movaps %xmm0,0x40(%esp)
4684f0:	0f 10 06             	movups (%esi),%xmm0
4684f3:	03 f2                	add    %edx,%esi
4684f5:	66 0f ef c4          	pxor   %xmm4,%xmm0
4684f9:	0f 29 44 24 50       	movaps %xmm0,0x50(%esp)
4684fe:	ff 75 0c             	push   0xc(%ebp)
468501:	8d 44 24 54          	lea    0x54(%esp),%eax
468505:	ff 75 08             	push   0x8(%ebp)
468508:	50                   	push   %eax
468509:	8d 44 24 4c          	lea    0x4c(%esp),%eax
46850d:	50                   	push   %eax
46850e:	8d 44 24 40          	lea    0x40(%esp),%eax
468512:	50                   	push   %eax
468513:	8d 44 24 74          	lea    0x74(%esp),%eax
468517:	50                   	push   %eax
468518:	e8 83 fb ff ff       	call   0x4680a0
46851d:	83 c4 18             	add    $0x18,%esp
468520:	85 f6                	test   %esi,%esi
468522:	74 39                	je     0x46855d
468524:	83 7c 24 24 00       	cmpl   $0x0,0x24(%esp)
468529:	75 32                	jne    0x46855d
46852b:	0f 10 06             	movups (%esi),%xmm0
46852e:	8b 54 24 18          	mov    0x18(%esp),%edx
468532:	03 f2                	add    %edx,%esi
468534:	66 0f ef 44 24 60    	pxor   0x60(%esp),%xmm0
46853a:	0f 10 0e             	movups (%esi),%xmm1
46853d:	03 f2                	add    %edx,%esi
46853f:	66 0f ef 4c 24 30    	pxor   0x30(%esp),%xmm1
468545:	0f 10 16             	movups (%esi),%xmm2
468548:	03 f2                	add    %edx,%esi
46854a:	66 0f ef 54 24 40    	pxor   0x40(%esp),%xmm2
468550:	0f 10 1e             	movups (%esi),%xmm3
468553:	03 f2                	add    %edx,%esi
468555:	66 0f ef 5c 24 50    	pxor   0x50(%esp),%xmm3
46855b:	eb 18                	jmp    0x468575
46855d:	0f 28 44 24 60       	movaps 0x60(%esp),%xmm0
468562:	0f 28 4c 24 30       	movaps 0x30(%esp),%xmm1
468567:	0f 28 54 24 40       	movaps 0x40(%esp),%xmm2
46856c:	0f 28 5c 24 50       	movaps 0x50(%esp),%xmm3
468571:	8b 54 24 18          	mov    0x18(%esp),%edx
468575:	8b 44 24 20          	mov    0x20(%esp),%eax
468579:	83 6d 1c 40          	subl   $0x40,0x1c(%ebp)
46857d:	8b 4c 24 14          	mov    0x14(%esp),%ecx
468581:	0f 11 07             	movups %xmm0,(%edi)
468584:	03 f8                	add    %eax,%edi
468586:	0f 11 0f             	movups %xmm1,(%edi)
468589:	03 f8                	add    %eax,%edi
46858b:	0f 11 17             	movups %xmm2,(%edi)
46858e:	03 f8                	add    %eax,%edi
468590:	0f 11 1f             	movups %xmm3,(%edi)
468593:	03 f8                	add    %eax,%edi
468595:	83 6c 24 28 01       	subl   $0x1,0x28(%esp)
46859a:	0f 85 c0 fe ff ff    	jne    0x468460
4685a0:	8b 45 20             	mov    0x20(%ebp),%eax
4685a3:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
4685a6:	83 f9 10             	cmp    $0x10,%ecx
4685a9:	0f 82 98 00 00 00    	jb     0x468647
4685af:	8b d0                	mov    %eax,%edx
4685b1:	83 e0 01             	and    $0x1,%eax
4685b4:	89 45 20             	mov    %eax,0x20(%ebp)
4685b7:	83 e2 04             	and    $0x4,%edx
4685ba:	8b c1                	mov    %ecx,%eax
4685bc:	89 54 24 28          	mov    %edx,0x28(%esp)
4685c0:	c1 e8 04             	shr    $0x4,%eax
4685c3:	89 44 24 24          	mov    %eax,0x24(%esp)
4685c7:	8b 44 24 14          	mov    0x14(%esp),%eax
4685cb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4685d0:	0f 10 08             	movups (%eax),%xmm1
4685d3:	0f 29 4c 24 60       	movaps %xmm1,0x60(%esp)
4685d8:	85 d2                	test   %edx,%edx
4685da:	74 0c                	je     0x4685e8
4685dc:	0f 10 06             	movups (%esi),%xmm0
4685df:	66 0f ef c1          	pxor   %xmm1,%xmm0
4685e3:	0f 29 44 24 60       	movaps %xmm0,0x60(%esp)
4685e8:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
4685ec:	74 03                	je     0x4685f1
4685ee:	fe 40 0f             	incb   0xf(%eax)
4685f1:	ff 75 0c             	push   0xc(%ebp)
4685f4:	8d 44 24 64          	lea    0x64(%esp),%eax
4685f8:	ff 75 08             	push   0x8(%ebp)
4685fb:	50                   	push   %eax
4685fc:	e8 2f fa ff ff       	call   0x468030
468601:	8b 54 24 34          	mov    0x34(%esp),%edx
468605:	83 c4 0c             	add    $0xc,%esp
468608:	85 f6                	test   %esi,%esi
46860a:	74 0f                	je     0x46861b
46860c:	85 d2                	test   %edx,%edx
46860e:	75 0b                	jne    0x46861b
468610:	0f 10 06             	movups (%esi),%xmm0
468613:	66 0f ef 44 24 60    	pxor   0x60(%esp),%xmm0
468619:	eb 05                	jmp    0x468620
46861b:	0f 28 44 24 60       	movaps 0x60(%esp),%xmm0
468620:	8b 44 24 14          	mov    0x14(%esp),%eax
468624:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
468627:	03 44 24 1c          	add    0x1c(%esp),%eax
46862b:	83 e9 10             	sub    $0x10,%ecx
46862e:	03 74 24 18          	add    0x18(%esp),%esi
468632:	0f 11 07             	movups %xmm0,(%edi)
468635:	03 7c 24 20          	add    0x20(%esp),%edi
468639:	83 6c 24 24 01       	subl   $0x1,0x24(%esp)
46863e:	89 44 24 14          	mov    %eax,0x14(%esp)
468642:	89 4d 1c             	mov    %ecx,0x1c(%ebp)
468645:	75 89                	jne    0x4685d0
468647:	5f                   	pop    %edi
468648:	8b c1                	mov    %ecx,%eax
46864a:	5e                   	pop    %esi
46864b:	8b e5                	mov    %ebp,%esp
46864d:	5d                   	pop    %ebp
46864e:	c3                   	ret
46864f:	cc                   	int3
468650:	55                   	push   %ebp
468651:	8b ec                	mov    %esp,%ebp
468653:	56                   	push   %esi
468654:	ff 75 08             	push   0x8(%ebp)
468657:	8b f1                	mov    %ecx,%esi
468659:	e8 32 8c f9 ff       	call   0x401290
46865e:	c7 06 c8 f8 49 00    	movl   $0x49f8c8,(%esi)
468664:	8b c6                	mov    %esi,%eax
468666:	5e                   	pop    %esi
468667:	5d                   	pop    %ebp
468668:	c2 04 00             	ret    $0x4
46866b:	55                   	push   %ebp
46866c:	8b ec                	mov    %esp,%ebp
46866e:	51                   	push   %ecx
46866f:	56                   	push   %esi
468670:	ff 75 08             	push   0x8(%ebp)
468673:	8b f1                	mov    %ecx,%esi
468675:	89 75 fc             	mov    %esi,-0x4(%ebp)
468678:	e8 c3 2c fa ff       	call   0x40b340
46867d:	c7 06 c8 f8 49 00    	movl   $0x49f8c8,(%esi)
468683:	8b c6                	mov    %esi,%eax
468685:	5e                   	pop    %esi
468686:	c9                   	leave
468687:	c2 04 00             	ret    $0x4
46868a:	cc                   	int3
46868b:	cc                   	int3
46868c:	cc                   	int3
46868d:	cc                   	int3
46868e:	cc                   	int3
46868f:	cc                   	int3
468690:	55                   	push   %ebp
468691:	8b ec                	mov    %esp,%ebp
468693:	56                   	push   %esi
468694:	ff 75 08             	push   0x8(%ebp)
468697:	8b f1                	mov    %ecx,%esi
468699:	e8 f2 8b f9 ff       	call   0x401290
46869e:	c7 06 d4 f8 49 00    	movl   $0x49f8d4,(%esi)
4686a4:	8b c6                	mov    %esi,%eax
4686a6:	5e                   	pop    %esi
4686a7:	5d                   	pop    %ebp
4686a8:	c2 04 00             	ret    $0x4
4686ab:	55                   	push   %ebp
4686ac:	8b ec                	mov    %esp,%ebp
4686ae:	51                   	push   %ecx
4686af:	56                   	push   %esi
4686b0:	ff 75 08             	push   0x8(%ebp)
4686b3:	8b f1                	mov    %ecx,%esi
4686b5:	89 75 fc             	mov    %esi,-0x4(%ebp)
4686b8:	e8 83 2c fa ff       	call   0x40b340
4686bd:	c7 06 d4 f8 49 00    	movl   $0x49f8d4,(%esi)
4686c3:	8b c6                	mov    %esi,%eax
4686c5:	5e                   	pop    %esi
4686c6:	c9                   	leave
4686c7:	c2 04 00             	ret    $0x4
4686ca:	55                   	push   %ebp
4686cb:	8b ec                	mov    %esp,%ebp
4686cd:	51                   	push   %ecx
4686ce:	56                   	push   %esi
4686cf:	ff 75 08             	push   0x8(%ebp)
4686d2:	8b f1                	mov    %ecx,%esi
4686d4:	89 75 fc             	mov    %esi,-0x4(%ebp)
4686d7:	e8 64 2c fa ff       	call   0x40b340
4686dc:	c7 06 e0 f8 49 00    	movl   $0x49f8e0,(%esi)
4686e2:	8b c6                	mov    %esi,%eax
4686e4:	5e                   	pop    %esi
4686e5:	c9                   	leave
4686e6:	c2 04 00             	ret    $0x4
4686e9:	cc                   	int3
4686ea:	cc                   	int3
4686eb:	cc                   	int3
4686ec:	cc                   	int3
4686ed:	cc                   	int3
4686ee:	cc                   	int3
4686ef:	cc                   	int3
4686f0:	55                   	push   %ebp
4686f1:	8b ec                	mov    %esp,%ebp
4686f3:	56                   	push   %esi
4686f4:	8b f1                	mov    %ecx,%esi
4686f6:	8d 46 04             	lea    0x4(%esi),%eax
4686f9:	c7 06 a4 f8 49 00    	movl   $0x49f8a4,(%esi)
4686ff:	50                   	push   %eax
468700:	e8 d9 26 00 00       	call   0x46adde
468705:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
468709:	59                   	pop    %ecx
46870a:	74 0a                	je     0x468716
46870c:	6a 0c                	push   $0xc
46870e:	56                   	push   %esi
46870f:	e8 f4 12 00 00       	call   0x469a08
468714:	59                   	pop    %ecx
468715:	59                   	pop    %ecx
468716:	8b c6                	mov    %esi,%eax
468718:	5e                   	pop    %esi
468719:	5d                   	pop    %ebp
46871a:	c2 04 00             	ret    $0x4
46871d:	55                   	push   %ebp
46871e:	8b ec                	mov    %esp,%ebp
468720:	83 ec 0c             	sub    $0xc,%esp
468723:	8d 4d f4             	lea    -0xc(%ebp),%ecx
468726:	e8 05 f6 fb ff       	call   0x427d30
46872b:	68 3c 20 4c 00       	push   $0x4c203c
468730:	8d 45 f4             	lea    -0xc(%ebp),%eax
468733:	50                   	push   %eax
468734:	e8 75 2e 00 00       	call   0x46b5ae
468739:	cc                   	int3
46873a:	55                   	push   %ebp
46873b:	8b ec                	mov    %esp,%ebp
46873d:	83 ec 0c             	sub    $0xc,%esp
468740:	8d 4d f4             	lea    -0xc(%ebp),%ecx
468743:	ff 75 08             	push   0x8(%ebp)
468746:	e8 20 ff ff ff       	call   0x46866b
46874b:	68 d0 13 4c 00       	push   $0x4c13d0
468750:	8d 45 f4             	lea    -0xc(%ebp),%eax
468753:	50                   	push   %eax
468754:	e8 55 2e 00 00       	call   0x46b5ae
468759:	cc                   	int3
46875a:	55                   	push   %ebp
46875b:	8b ec                	mov    %esp,%ebp
46875d:	83 ec 0c             	sub    $0xc,%esp
468760:	8d 4d f4             	lea    -0xc(%ebp),%ecx
468763:	ff 75 08             	push   0x8(%ebp)
468766:	e8 40 ff ff ff       	call   0x4686ab
46876b:	68 0c 14 4c 00       	push   $0x4c140c
468770:	8d 45 f4             	lea    -0xc(%ebp),%eax
468773:	50                   	push   %eax
468774:	e8 35 2e 00 00       	call   0x46b5ae
468779:	cc                   	int3
46877a:	55                   	push   %ebp
46877b:	8b ec                	mov    %esp,%ebp
46877d:	83 ec 0c             	sub    $0xc,%esp
468780:	8d 4d f4             	lea    -0xc(%ebp),%ecx
468783:	ff 75 08             	push   0x8(%ebp)
468786:	e8 3f ff ff ff       	call   0x4686ca
46878b:	68 48 14 4c 00       	push   $0x4c1448
468790:	8d 45 f4             	lea    -0xc(%ebp),%eax
468793:	50                   	push   %eax
468794:	e8 15 2e 00 00       	call   0x46b5ae
468799:	cc                   	int3
46879a:	33 c0                	xor    %eax,%eax
46879c:	57                   	push   %edi
46879d:	8b f9                	mov    %ecx,%edi
46879f:	40                   	inc    %eax
4687a0:	f0 0f c1 05 00 40 4c 	lock xadd %eax,0x4c4000
4687a7:	00
4687a8:	75 19                	jne    0x4687c3
4687aa:	56                   	push   %esi
4687ab:	be a8 7d 4c 00       	mov    $0x4c7da8,%esi
4687b0:	56                   	push   %esi
4687b1:	e8 7c 0e 00 00       	call   0x469632
4687b6:	83 c6 18             	add    $0x18,%esi
4687b9:	59                   	pop    %ecx
4687ba:	81 fe 68 7e 4c 00    	cmp    $0x4c7e68,%esi
4687c0:	75 ee                	jne    0x4687b0
4687c2:	5e                   	pop    %esi
4687c3:	8b c7                	mov    %edi,%eax
4687c5:	5f                   	pop    %edi
4687c6:	c3                   	ret
4687c7:	55                   	push   %ebp
4687c8:	8b ec                	mov    %esp,%ebp
4687ca:	8b 45 08             	mov    0x8(%ebp),%eax
4687cd:	56                   	push   %esi
4687ce:	8b f1                	mov    %ecx,%esi
4687d0:	89 06                	mov    %eax,(%esi)
4687d2:	85 c0                	test   %eax,%eax
4687d4:	75 07                	jne    0x4687dd
4687d6:	e8 ed 96 01 00       	call   0x481ec8
4687db:	eb 14                	jmp    0x4687f1
4687dd:	83 f8 08             	cmp    $0x8,%eax
4687e0:	7d 0f                	jge    0x4687f1
4687e2:	6b c0 18             	imul   $0x18,%eax,%eax
4687e5:	05 a8 7d 4c 00       	add    $0x4c7da8,%eax