56d37a:	e8 81 5b 07 00       	call   0x5e2f00
56d37f:	83 c4 0c             	add    $0xc,%esp
56d382:	8d 53 14             	lea    0x14(%ebx),%edx
56d385:	bf 10 00 00 00       	mov    $0x10,%edi
56d38a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
56d390:	8a 4a 03             	mov    0x3(%edx),%cl
56d393:	8d 52 04             	lea    0x4(%edx),%edx
56d396:	0f b6 42 fc          	movzbl -0x4(%edx),%eax
56d39a:	88 42 ff             	mov    %al,-0x1(%edx)
56d39d:	0f b6 42 fd          	movzbl -0x3(%edx),%eax
56d3a1:	88 4a fc             	mov    %cl,-0x4(%edx)
56d3a4:	8a 4a fe             	mov    -0x2(%edx),%cl
56d3a7:	88 42 fe             	mov    %al,-0x2(%edx)
56d3aa:	88 4a fd             	mov    %cl,-0x3(%edx)
56d3ad:	83 ef 01             	sub    $0x1,%edi
56d3b0:	75 de                	jne    0x56d390
56d3b2:	8d 43 14             	lea    0x14(%ebx),%eax
56d3b5:	50                   	push   %eax
56d3b6:	53                   	push   %ebx
56d3b7:	e8 a4 00 00 00       	call   0x56d460
56d3bc:	8b 7d 10             	mov    0x10(%ebp),%edi
56d3bf:	83 c4 08             	add    $0x8,%esp
56d3c2:	03 75 fc             	add    -0x4(%ebp),%esi
56d3c5:	2b 7d fc             	sub    -0x4(%ebp),%edi
56d3c8:	eb 03                	jmp    0x56d3cd
56d3ca:	8b 75 0c             	mov    0xc(%ebp),%esi
56d3cd:	83 ff 40             	cmp    $0x40,%edi
56d3d0:	72 73                	jb     0x56d445
56d3d2:	83 c3 14             	add    $0x14,%ebx
56d3d5:	8b c7                	mov    %edi,%eax
56d3d7:	c1 e8 06             	shr    $0x6,%eax
56d3da:	89 5d fc             	mov    %ebx,-0x4(%ebp)
56d3dd:	89 45 10             	mov    %eax,0x10(%ebp)
56d3e0:	0f 10 06             	movups (%esi),%xmm0
56d3e3:	8b c3                	mov    %ebx,%eax
56d3e5:	0f 11 03             	movups %xmm0,(%ebx)
56d3e8:	0f 10 46 10          	movups 0x10(%esi),%xmm0
56d3ec:	0f 11 43 10          	movups %xmm0,0x10(%ebx)
56d3f0:	0f 10 46 20          	movups 0x20(%esi),%xmm0
56d3f4:	0f 11 43 20          	movups %xmm0,0x20(%ebx)
56d3f8:	0f 10 46 30          	movups 0x30(%esi),%xmm0
56d3fc:	0f 11 43 30          	movups %xmm0,0x30(%ebx)
56d400:	bb 10 00 00 00       	mov    $0x10,%ebx
56d405:	8a 50 03             	mov    0x3(%eax),%dl
56d408:	8d 40 04             	lea    0x4(%eax),%eax
56d40b:	0f b6 48 fc          	movzbl -0x4(%eax),%ecx
56d40f:	88 48 ff             	mov    %cl,-0x1(%eax)
56d412:	0f b6 48 fd          	movzbl -0x3(%eax),%ecx
56d416:	88 50 fc             	mov    %dl,-0x4(%eax)
56d419:	8a 50 fe             	mov    -0x2(%eax),%dl
56d41c:	88 48 fe             	mov    %cl,-0x2(%eax)
56d41f:	88 50 fd             	mov    %dl,-0x3(%eax)
56d422:	83 eb 01             	sub    $0x1,%ebx
56d425:	75 de                	jne    0x56d405
56d427:	8b 5d fc             	mov    -0x4(%ebp),%ebx
56d42a:	53                   	push   %ebx
56d42b:	ff 75 08             	push   0x8(%ebp)
56d42e:	e8 2d 00 00 00       	call   0x56d460
56d433:	83 c4 08             	add    $0x8,%esp
56d436:	83 c6 40             	add    $0x40,%esi
56d439:	83 ef 40             	sub    $0x40,%edi
56d43c:	83 6d 10 01          	subl   $0x1,0x10(%ebp)
56d440:	75 9e                	jne    0x56d3e0
56d442:	8b 5d 08             	mov    0x8(%ebp),%ebx
56d445:	85 ff                	test   %edi,%edi
56d447:	74 0e                	je     0x56d457
56d449:	57                   	push   %edi
56d44a:	8d 43 14             	lea    0x14(%ebx),%eax
56d44d:	56                   	push   %esi
56d44e:	50                   	push   %eax
56d44f:	e8 ac 5a 07 00       	call   0x5e2f00
56d454:	83 c4 0c             	add    $0xc,%esp
56d457:	5f                   	pop    %edi
56d458:	5e                   	pop    %esi
56d459:	5b                   	pop    %ebx
56d45a:	8b e5                	mov    %ebp,%esp
56d45c:	5d                   	pop    %ebp
56d45d:	c3                   	ret
56d45e:	cc                   	int3
56d45f:	cc                   	int3
56d460:	55                   	push   %ebp
56d461:	8b ec                	mov    %esp,%ebp
56d463:	83 ec 44             	sub    $0x44,%esp
56d466:	8b 4d 08             	mov    0x8(%ebp),%ecx
56d469:	53                   	push   %ebx
56d46a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
56d46d:	56                   	push   %esi
56d46e:	8b 71 0c             	mov    0xc(%ecx),%esi
56d471:	8b c6                	mov    %esi,%eax
56d473:	8b 11                	mov    (%ecx),%edx
56d475:	57                   	push   %edi
56d476:	8b 79 08             	mov    0x8(%ecx),%edi
56d479:	33 c7                	xor    %edi,%eax
56d47b:	8b 0b                	mov    (%ebx),%ecx
56d47d:	8b 5d 08             	mov    0x8(%ebp),%ebx
56d480:	89 4d fc             	mov    %ecx,-0x4(%ebp)
56d483:	23 43 04             	and    0x4(%ebx),%eax
56d486:	33 c6                	xor    %esi,%eax
56d488:	03 c1                	add    %ecx,%eax
56d48a:	8d 8a 78 a4 6a d7    	lea    -0x28955b88(%edx),%ecx
56d490:	03 c8                	add    %eax,%ecx
56d492:	8b d3                	mov    %ebx,%edx
56d494:	8b 5d 0c             	mov    0xc(%ebp),%ebx
56d497:	8b c7                	mov    %edi,%eax
56d499:	c1 c1 07             	rol    $0x7,%ecx
56d49c:	03 4a 04             	add    0x4(%edx),%ecx
56d49f:	8b 53 04             	mov    0x4(%ebx),%edx
56d4a2:	8b 5d 08             	mov    0x8(%ebp),%ebx
56d4a5:	89 55 e4             	mov    %edx,-0x1c(%ebp)
56d4a8:	33 43 04             	xor    0x4(%ebx),%eax
56d4ab:	8b 5d 0c             	mov    0xc(%ebp),%ebx
56d4ae:	23 c1                	and    %ecx,%eax
56d4b0:	33 c7                	xor    %edi,%eax
56d4b2:	03 c2                	add    %edx,%eax
56d4b4:	8d 96 56 b7 c7 e8    	lea    -0x173848aa(%esi),%edx
56d4ba:	03 d0                	add    %eax,%edx
56d4bc:	8b 73 08             	mov    0x8(%ebx),%esi
56d4bf:	8b 5d 08             	mov    0x8(%ebp),%ebx
56d4c2:	c1 c2 0c             	rol    $0xc,%edx
56d4c5:	03 d1                	add    %ecx,%edx
56d4c7:	89 75 cc             	mov    %esi,-0x34(%ebp)
56d4ca:	8b 43 04             	mov    0x4(%ebx),%eax
56d4cd:	33 c1                	xor    %ecx,%eax
56d4cf:	23 c2                	and    %edx,%eax
56d4d1:	33 43 04             	xor    0x4(%ebx),%eax
56d4d4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
56d4d7:	03 c6                	add    %esi,%eax
56d4d9:	8d b7 db 70 20 24    	lea    0x242070db(%edi),%esi
56d4df:	03 f0                	add    %eax,%esi
56d4e1:	8b c2                	mov    %edx,%eax
56d4e3:	33 c1                	xor    %ecx,%eax
56d4e5:	c1 ce 0f             	ror    $0xf,%esi
56d4e8:	8b 7b 0c             	mov    0xc(%ebx),%edi
56d4eb:	03 f2                	add    %edx,%esi
56d4ed:	8b 5d 08             	mov    0x8(%ebp),%ebx
56d4f0:	23 c6                	and    %esi,%eax
56d4f2:	33 c1                	xor    %ecx,%eax
56d4f4:	89 7d ec             	mov    %edi,-0x14(%ebp)
56d4f7:	03 c7                	add    %edi,%eax
56d4f9:	8b 7b 04             	mov    0x4(%ebx),%edi
56d4fc:	8b 5d 0c             	mov    0xc(%ebp),%ebx
56d4ff:	81 c7 ee ce bd c1    	add    $0xc1bdceee,%edi
56d505:	03 f8                	add    %eax,%edi
56d507:	c1 cf 0a             	ror    $0xa,%edi
56d50a:	03 fe                	add    %esi,%edi
56d50c:	8b 43 10             	mov    0x10(%ebx),%eax
56d50f:	89 45 d4             	mov    %eax,-0x2c(%ebp)
56d512:	8b c2                	mov    %edx,%eax
56d514:	33 c6                	xor    %esi,%eax
56d516:	23 c7                	and    %edi,%eax
56d518:	33 c2                	xor    %edx,%eax
56d51a:	05 af 0f 7c f5       	add    $0xf57c0faf,%eax
56d51f:	03 43 10             	add    0x10(%ebx),%eax
56d522:	03 c8                	add    %eax,%ecx
56d524:	8b 43 14             	mov    0x14(%ebx),%eax
56d527:	89 45 f4             	mov    %eax,-0xc(%ebp)
56d52a:	8b c6                	mov    %esi,%eax
56d52c:	c1 c1 07             	rol    $0x7,%ecx
56d52f:	33 c7                	xor    %edi,%eax
56d531:	03 cf                	add    %edi,%ecx
56d533:	23 c1                	and    %ecx,%eax
56d535:	33 c6                	xor    %esi,%eax
56d537:	05 2a c6 87 47       	add    $0x4787c62a,%eax
56d53c:	03 43 14             	add    0x14(%ebx),%eax
56d53f:	03 d0                	add    %eax,%edx
56d541:	8b 43 18             	mov    0x18(%ebx),%eax
56d544:	89 45 dc             	mov    %eax,-0x24(%ebp)
56d547:	8b c7                	mov    %edi,%eax
56d549:	33 c1                	xor    %ecx,%eax
56d54b:	c1 c2 0c             	rol    $0xc,%edx
56d54e:	03 d1                	add    %ecx,%edx
56d550:	23 c2                	and    %edx,%eax
56d552:	33 c7                	xor    %edi,%eax
56d554:	05 13 46 30 a8       	add    $0xa8304613,%eax
56d559:	03 43 18             	add    0x18(%ebx),%eax
56d55c:	03 f0                	add    %eax,%esi
56d55e:	8b 43 1c             	mov    0x1c(%ebx),%eax
56d561:	89 45 f8             	mov    %eax,-0x8(%ebp)
56d564:	8b c2                	mov    %edx,%eax
56d566:	33 c1                	xor    %ecx,%eax
56d568:	c1 ce 0f             	ror    $0xf,%esi
56d56b:	03 f2                	add    %edx,%esi
56d56d:	23 c6                	and    %esi,%eax
56d56f:	33 c1                	xor    %ecx,%eax
56d571:	05 01 95 46 fd       	add    $0xfd469501,%eax
56d576:	03 43 1c             	add    0x1c(%ebx),%eax
56d579:	03 f8                	add    %eax,%edi
56d57b:	8b 43 20             	mov    0x20(%ebx),%eax
56d57e:	89 45 e0             	mov    %eax,-0x20(%ebp)
56d581:	8b c2                	mov    %edx,%eax
56d583:	33 c6                	xor    %esi,%eax
56d585:	c1 cf 0a             	ror    $0xa,%edi
56d588:	03 fe                	add    %esi,%edi
56d58a:	23 c7                	and    %edi,%eax
56d58c:	33 c2                	xor    %edx,%eax
56d58e:	05 d8 98 80 69       	add    $0x698098d8,%eax
56d593:	03 43 20             	add    0x20(%ebx),%eax
56d596:	8b 5b 24             	mov    0x24(%ebx),%ebx
56d599:	03 c8                	add    %eax,%ecx
56d59b:	8b c6                	mov    %esi,%eax
56d59d:	c1 c1 07             	rol    $0x7,%ecx
56d5a0:	33 c7                	xor    %edi,%eax
56d5a2:	89 5d c8             	mov    %ebx,-0x38(%ebp)
56d5a5:	03 cf                	add    %edi,%ecx
56d5a7:	23 c1                	and    %ecx,%eax
56d5a9:	33 c6                	xor    %esi,%eax
56d5ab:	03 c3                	add    %ebx,%eax
56d5ad:	8d 9a af f7 44 8b    	lea    -0x74bb0851(%edx),%ebx
56d5b3:	8b 55 0c             	mov    0xc(%ebp),%edx
56d5b6:	03 d8                	add    %eax,%ebx
56d5b8:	c1 c3 0c             	rol    $0xc,%ebx
56d5bb:	03 d9                	add    %ecx,%ebx
56d5bd:	8b 42 28             	mov    0x28(%edx),%eax
56d5c0:	89 45 e8             	mov    %eax,-0x18(%ebp)
56d5c3:	8b c7                	mov    %edi,%eax
56d5c5:	33 c1                	xor    %ecx,%eax
56d5c7:	23 c3                	and    %ebx,%eax
56d5c9:	33 c7                	xor    %edi,%eax
56d5cb:	05 b1 5b ff ff       	add    $0xffff5bb1,%eax
56d5d0:	03 42 28             	add    0x28(%edx),%eax
56d5d3:	03 f0                	add    %eax,%esi
56d5d5:	8b 42 2c             	mov    0x2c(%edx),%eax
56d5d8:	89 45 d0             	mov    %eax,-0x30(%ebp)
56d5db:	8b c3                	mov    %ebx,%eax
56d5dd:	33 c1                	xor    %ecx,%eax
56d5df:	c1 ce 0f             	ror    $0xf,%esi
56d5e2:	03 f3                	add    %ebx,%esi
56d5e4:	23 c6                	and    %esi,%eax
56d5e6:	89 75 c0             	mov    %esi,-0x40(%ebp)
56d5e9:	33 c1                	xor    %ecx,%eax
56d5eb:	05 be d7 5c 89       	add    $0x895cd7be,%eax
56d5f0:	03 42 2c             	add    0x2c(%edx),%eax
56d5f3:	8b 52 30             	mov    0x30(%edx),%edx
56d5f6:	03 f8                	add    %eax,%edi
56d5f8:	c1 cf 0a             	ror    $0xa,%edi
56d5fb:	8b c3                	mov    %ebx,%eax
56d5fd:	33 c6                	xor    %esi,%eax
56d5ff:	89 55 f0             	mov    %edx,-0x10(%ebp)
56d602:	03 fe                	add    %esi,%edi
56d604:	23 c7                	and    %edi,%eax
56d606:	89 7d bc             	mov    %edi,-0x44(%ebp)
56d609:	33 c3                	xor    %ebx,%eax
56d60b:	03 c2                	add    %edx,%eax
56d60d:	8d 91 22 11 90 6b    	lea    0x6b901122(%ecx),%edx
56d613:	03 d0                	add    %eax,%edx
56d615:	8b 4d 0c             	mov    0xc(%ebp),%ecx
56d618:	c1 c2 07             	rol    $0x7,%edx
56d61b:	03 d7                	add    %edi,%edx
56d61d:	8b 41 34             	mov    0x34(%ecx),%eax
56d620:	89 45 d8             	mov    %eax,-0x28(%ebp)
56d623:	8b c6                	mov    %esi,%eax
56d625:	33 c7                	xor    %edi,%eax
56d627:	23 c2                	and    %edx,%eax
56d629:	33 c6                	xor    %esi,%eax
56d62b:	8d b3 93 71 98 fd    	lea    -0x2678e6d(%ebx),%esi
56d631:	03 41 34             	add    0x34(%ecx),%eax
56d634:	03 f0                	add    %eax,%esi
56d636:	8b 59 38             	mov    0x38(%ecx),%ebx
56d639:	8b c7                	mov    %edi,%eax
56d63b:	c1 c6 0c             	rol    $0xc,%esi
56d63e:	33 c2                	xor    %edx,%eax
56d640:	89 5d c4             	mov    %ebx,-0x3c(%ebp)
56d643:	03 f2                	add    %edx,%esi
56d645:	23 c6                	and    %esi,%eax
56d647:	33 c7                	xor    %edi,%eax
56d649:	8b 7d c0             	mov    -0x40(%ebp),%edi
56d64c:	03 c3                	add    %ebx,%eax
56d64e:	81 c7 8e 43 79 a6    	add    $0xa679438e,%edi
56d654:	03 f8                	add    %eax,%edi
56d656:	8b c1                	mov    %ecx,%eax
56d658:	c1 cf 0f             	ror    $0xf,%edi
56d65b:	03 fe                	add    %esi,%edi
56d65d:	8b 48 3c             	mov    0x3c(%eax),%ecx
56d660:	8b c6                	mov    %esi,%eax
56d662:	33 c2                	xor    %edx,%eax
56d664:	89 4d 0c             	mov    %ecx,0xc(%ebp)
56d667:	23 c7                	and    %edi,%eax
56d669:	33 c2                	xor    %edx,%eax
56d66b:	03 c1                	add    %ecx,%eax
56d66d:	8b 4d bc             	mov    -0x44(%ebp),%ecx
56d670:	81 c1 21 08 b4 49    	add    $0x49b40821,%ecx
56d676:	03 c8                	add    %eax,%ecx
56d678:	8b c7                	mov    %edi,%eax
56d67a:	c1 c9 0a             	ror    $0xa,%ecx
56d67d:	03 cf                	add    %edi,%ecx
56d67f:	33 c1                	xor    %ecx,%eax
56d681:	23 c6                	and    %esi,%eax
56d683:	33 c7                	xor    %edi,%eax
56d685:	05 62 25 1e f6       	add    $0xf61e2562,%eax
56d68a:	03 45 e4             	add    -0x1c(%ebp),%eax
56d68d:	03 d0                	add    %eax,%edx
56d68f:	8b c1                	mov    %ecx,%eax
56d691:	c1 c2 05             	rol    $0x5,%edx
56d694:	03 d1                	add    %ecx,%edx
56d696:	33 c2                	xor    %edx,%eax
56d698:	23 c7                	and    %edi,%eax
56d69a:	33 c1                	xor    %ecx,%eax
56d69c:	05 40 b3 40 c0       	add    $0xc040b340,%eax
56d6a1:	03 45 dc             	add    -0x24(%ebp),%eax
56d6a4:	03 f0                	add    %eax,%esi
56d6a6:	c1 c6 09             	rol    $0x9,%esi
56d6a9:	03 f2                	add    %edx,%esi
56d6ab:	8b c6                	mov    %esi,%eax
56d6ad:	33 c2                	xor    %edx,%eax
56d6af:	23 c1                	and    %ecx,%eax
56d6b1:	33 c2                	xor    %edx,%eax
56d6b3:	05 51 5a 5e 26       	add    $0x265e5a51,%eax
56d6b8:	03 45 d0             	add    -0x30(%ebp),%eax
56d6bb:	03 f8                	add    %eax,%edi
56d6bd:	8b c6                	mov    %esi,%eax
56d6bf:	c1 c7 0e             	rol    $0xe,%edi
56d6c2:	03 fe                	add    %esi,%edi
56d6c4:	33 c7                	xor    %edi,%eax
56d6c6:	23 c2                	and    %edx,%eax
56d6c8:	33 c6                	xor    %esi,%eax
56d6ca:	05 aa c7 b6 e9       	add    $0xe9b6c7aa,%eax
56d6cf:	03 45 fc             	add    -0x4(%ebp),%eax
56d6d2:	03 c8                	add    %eax,%ecx
56d6d4:	8b c7                	mov    %edi,%eax
56d6d6:	c1 c9 0c             	ror    $0xc,%ecx
56d6d9:	03 cf                	add    %edi,%ecx
56d6db:	33 c1                	xor    %ecx,%eax
56d6dd:	23 c6                	and    %esi,%eax
56d6df:	33 c7                	xor    %edi,%eax
56d6e1:	05 5d 10 2f d6       	add    $0xd62f105d,%eax
56d6e6:	03 45 f4             	add    -0xc(%ebp),%eax
56d6e9:	03 d0                	add    %eax,%edx
56d6eb:	8b c1                	mov    %ecx,%eax
56d6ed:	c1 c2 05             	rol    $0x5,%edx
56d6f0:	03 d1                	add    %ecx,%edx
56d6f2:	33 c2                	xor    %edx,%eax
56d6f4:	23 c7                	and    %edi,%eax
56d6f6:	33 c1                	xor    %ecx,%eax
56d6f8:	05 53 14 44 02       	add    $0x2441453,%eax
56d6fd:	03 45 e8             	add    -0x18(%ebp),%eax
56d700:	03 f0                	add    %eax,%esi
56d702:	c1 c6 09             	rol    $0x9,%esi
56d705:	03 f2                	add    %edx,%esi
56d707:	8b c6                	mov    %esi,%eax
56d709:	33 c2                	xor    %edx,%eax
56d70b:	23 c1                	and    %ecx,%eax
56d70d:	33 c2                	xor    %edx,%eax
56d70f:	05 81 e6 a1 d8       	add    $0xd8a1e681,%eax
56d714:	03 45 0c             	add    0xc(%ebp),%eax
56d717:	03 f8                	add    %eax,%edi
56d719:	8b c6                	mov    %esi,%eax
56d71b:	c1 c7 0e             	rol    $0xe,%edi
56d71e:	03 fe                	add    %esi,%edi
56d720:	33 c7                	xor    %edi,%eax
56d722:	23 c2                	and    %edx,%eax