51059d:	cc                   	int3
51059e:	cc                   	int3
51059f:	cc                   	int3
5105a0:	b8 08 00 00 00       	mov    $0x8,%eax
5105a5:	e8 06 12 0c 00       	call   0x5d17b0
5105aa:	53                   	push   %ebx
5105ab:	8b 5c 24 14          	mov    0x14(%esp),%ebx
5105af:	33 c9                	xor    %ecx,%ecx
5105b1:	57                   	push   %edi
5105b2:	8b 7c 24 20          	mov    0x20(%esp),%edi
5105b6:	c7 44 24 08 10 00 00 	movl   $0x10,0x8(%esp)
5105bd:	00
5105be:	85 ff                	test   %edi,%edi
5105c0:	0f 8e ad 00 00 00    	jle    0x510673
5105c6:	56                   	push   %esi
5105c7:	8b 74 24 20          	mov    0x20(%esp),%esi
5105cb:	83 ff 40             	cmp    $0x40,%edi
5105ce:	0f 82 87 00 00 00    	jb     0x51065b
5105d4:	8d 47 ff             	lea    -0x1(%edi),%eax
5105d7:	8d 57 ff             	lea    -0x1(%edi),%edx
5105da:	03 c6                	add    %esi,%eax
5105dc:	03 d3                	add    %ebx,%edx
5105de:	3b d8                	cmp    %eax,%ebx
5105e0:	77 04                	ja     0x5105e6
5105e2:	3b d6                	cmp    %esi,%edx
5105e4:	73 75                	jae    0x51065b
5105e6:	8b c7                	mov    %edi,%eax
5105e8:	8d 56 30             	lea    0x30(%esi),%edx
5105eb:	83 e0 c0             	and    $0xffffffc0,%eax
5105ee:	8b fe                	mov    %esi,%edi
5105f0:	89 44 24 10          	mov    %eax,0x10(%esp)
5105f4:	2b fb                	sub    %ebx,%edi
5105f6:	8d 43 10             	lea    0x10(%ebx),%eax
5105f9:	55                   	push   %ebp
5105fa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
510600:	0f 10 40 f0          	movups -0x10(%eax),%xmm0
510604:	83 c1 40             	add    $0x40,%ecx
510607:	8d 52 40             	lea    0x40(%edx),%edx
51060a:	8d 40 40             	lea    0x40(%eax),%eax
51060d:	8b e9                	mov    %ecx,%ebp
51060f:	0f 10 4a 90          	movups -0x70(%edx),%xmm1
510613:	66 0f ef c8          	pxor   %xmm0,%xmm1
510617:	0f 11 48 b0          	movups %xmm1,-0x50(%eax)
51061b:	0f 10 40 c0          	movups -0x40(%eax),%xmm0
51061f:	0f 10 4c 07 c0       	movups -0x40(%edi,%eax,1),%xmm1
510624:	66 0f ef c8          	pxor   %xmm0,%xmm1
510628:	0f 11 48 c0          	movups %xmm1,-0x40(%eax)
51062c:	0f 10 40 d0          	movups -0x30(%eax),%xmm0
510630:	0f 10 4a b0          	movups -0x50(%edx),%xmm1
510634:	66 0f ef c8          	pxor   %xmm0,%xmm1
510638:	0f 10 42 c0          	movups -0x40(%edx),%xmm0
51063c:	0f 11 48 d0          	movups %xmm1,-0x30(%eax)
510640:	0f 10 48 e0          	movups -0x20(%eax),%xmm1
510644:	66 0f ef c8          	pxor   %xmm0,%xmm1
510648:	0f 11 48 e0          	movups %xmm1,-0x20(%eax)
51064c:	3b 4c 24 14          	cmp    0x14(%esp),%ecx
510650:	7c ae                	jl     0x510600
510652:	8b 7c 24 28          	mov    0x28(%esp),%edi
510656:	3b ef                	cmp    %edi,%ebp
510658:	5d                   	pop    %ebp
510659:	7d 17                	jge    0x510672
51065b:	8b d7                	mov    %edi,%edx
51065d:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
510660:	2b f3                	sub    %ebx,%esi
510662:	2b d1                	sub    %ecx,%edx
510664:	8a 0c 30             	mov    (%eax,%esi,1),%cl
510667:	8d 40 01             	lea    0x1(%eax),%eax
51066a:	30 48 ff             	xor    %cl,-0x1(%eax)
51066d:	83 ea 01             	sub    $0x1,%edx
510670:	75 f2                	jne    0x510664
510672:	5e                   	pop    %esi
510673:	57                   	push   %edi
510674:	53                   	push   %ebx
510675:	8d 44 24 10          	lea    0x10(%esp),%eax
510679:	50                   	push   %eax
51067a:	8b 44 24 20          	mov    0x20(%esp),%eax
51067e:	53                   	push   %ebx
51067f:	ff 70 08             	push   0x8(%eax)
510682:	e8 e9 c2 fc ff       	call   0x4dc970
510687:	83 c4 14             	add    $0x14,%esp
51068a:	85 c0                	test   %eax,%eax
51068c:	74 11                	je     0x51069f
51068e:	39 7c 24 08          	cmp    %edi,0x8(%esp)
510692:	75 0b                	jne    0x51069f
510694:	5f                   	pop    %edi
510695:	b8 01 00 00 00       	mov    $0x1,%eax
51069a:	5b                   	pop    %ebx
51069b:	83 c4 08             	add    $0x8,%esp
51069e:	c3                   	ret
51069f:	5f                   	pop    %edi
5106a0:	33 c0                	xor    %eax,%eax
5106a2:	5b                   	pop    %ebx
5106a3:	83 c4 08             	add    $0x8,%esp
5106a6:	c3                   	ret
5106a7:	cc                   	int3
5106a8:	cc                   	int3
5106a9:	cc                   	int3
5106aa:	cc                   	int3
5106ab:	cc                   	int3
5106ac:	cc                   	int3
5106ad:	cc                   	int3
5106ae:	cc                   	int3
5106af:	cc                   	int3
5106b0:	b8 34 00 00 00       	mov    $0x34,%eax
5106b5:	e8 f6 10 0c 00       	call   0x5d17b0
5106ba:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5106bf:	33 c4                	xor    %esp,%eax
5106c1:	89 44 24 30          	mov    %eax,0x30(%esp)
5106c5:	8b 44 24 3c          	mov    0x3c(%esp),%eax
5106c9:	8b 4c 24 38          	mov    0x38(%esp),%ecx
5106cd:	0f 10 00             	movups (%eax),%xmm0
5106d0:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
5106d4:	0f 11 04 24          	movups %xmm0,(%esp)
5106d8:	0f 10 00             	movups (%eax),%xmm0
5106db:	0f 11 44 24 10       	movups %xmm0,0x10(%esp)
5106e0:	74 08                	je     0x5106ea
5106e2:	0f 10 00             	movups (%eax),%xmm0
5106e5:	0f 11 44 24 20       	movups %xmm0,0x20(%esp)
5106ea:	56                   	push   %esi
5106eb:	b8 30 00 00 00       	mov    $0x30,%eax
5106f0:	be 20 00 00 00       	mov    $0x20,%esi
5106f5:	0f 44 c6             	cmove  %esi,%eax
5106f8:	50                   	push   %eax
5106f9:	8d 44 24 08          	lea    0x8(%esp),%eax
5106fd:	50                   	push   %eax
5106fe:	8d 41 5c             	lea    0x5c(%ecx),%eax
510701:	50                   	push   %eax
510702:	51                   	push   %ecx
510703:	e8 98 fe ff ff       	call   0x5105a0
510708:	8b 4c 24 44          	mov    0x44(%esp),%ecx
51070c:	83 c4 10             	add    $0x10,%esp
51070f:	5e                   	pop    %esi
510710:	33 cc                	xor    %esp,%ecx
510712:	e8 0f 13 0c 00       	call   0x5d1a26
510717:	83 c4 34             	add    $0x34,%esp
51071a:	c3                   	ret
51071b:	cc                   	int3
51071c:	cc                   	int3
51071d:	cc                   	int3
51071e:	cc                   	int3
51071f:	cc                   	int3
510720:	b8 34 00 00 00       	mov    $0x34,%eax
510725:	e8 86 10 0c 00       	call   0x5d17b0
51072a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
51072f:	33 c4                	xor    %esp,%eax
510731:	89 44 24 30          	mov    %eax,0x30(%esp)
510735:	53                   	push   %ebx
510736:	8b 5c 24 3c          	mov    0x3c(%esp),%ebx
51073a:	55                   	push   %ebp
51073b:	56                   	push   %esi
51073c:	8b 74 24 48          	mov    0x48(%esp),%esi
510740:	57                   	push   %edi
510741:	85 f6                	test   %esi,%esi
510743:	0f 84 bc 00 00 00    	je     0x510805
510749:	8b 7c 24 50          	mov    0x50(%esp),%edi
51074d:	85 ff                	test   %edi,%edi
51074f:	0f 84 b0 00 00 00    	je     0x510805
510755:	8b 43 58             	mov    0x58(%ebx),%eax
510758:	85 c0                	test   %eax,%eax
51075a:	74 38                	je     0x510794
51075c:	bd 10 00 00 00       	mov    $0x10,%ebp
510761:	2b e8                	sub    %eax,%ebp
510763:	3b fd                	cmp    %ebp,%edi
510765:	72 2d                	jb     0x510794
510767:	55                   	push   %ebp
510768:	83 c0 48             	add    $0x48,%eax
51076b:	03 c3                	add    %ebx,%eax
51076d:	56                   	push   %esi
51076e:	50                   	push   %eax
51076f:	e8 5c 26 0c 00       	call   0x5d2dd0
510774:	8d 43 48             	lea    0x48(%ebx),%eax
510777:	50                   	push   %eax
510778:	53                   	push   %ebx
510779:	e8 32 ff ff ff       	call   0x5106b0
51077e:	83 c4 14             	add    $0x14,%esp
510781:	85 c0                	test   %eax,%eax
510783:	0f 84 94 00 00 00    	je     0x51081d
510789:	2b fd                	sub    %ebp,%edi
51078b:	c7 43 58 00 00 00 00 	movl   $0x0,0x58(%ebx)
510792:	03 f5                	add    %ebp,%esi
510794:	83 ff 10             	cmp    $0x10,%edi
510797:	72 52                	jb     0x5107eb
510799:	8d 6b 5c             	lea    0x5c(%ebx),%ebp
51079c:	ba 20 00 00 00       	mov    $0x20,%edx
5107a1:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
5107a5:	0f 10 06             	movups (%esi),%xmm0
5107a8:	0f 11 44 24 10       	movups %xmm0,0x10(%esp)
5107ad:	0f 10 06             	movups (%esi),%xmm0
5107b0:	0f 11 44 24 20       	movups %xmm0,0x20(%esp)
5107b5:	74 08                	je     0x5107bf
5107b7:	0f 10 06             	movups (%esi),%xmm0
5107ba:	0f 11 44 24 30       	movups %xmm0,0x30(%esp)
5107bf:	b8 30 00 00 00       	mov    $0x30,%eax
5107c4:	0f 44 c2             	cmove  %edx,%eax
5107c7:	50                   	push   %eax
5107c8:	8d 44 24 14          	lea    0x14(%esp),%eax
5107cc:	50                   	push   %eax
5107cd:	55                   	push   %ebp
5107ce:	53                   	push   %ebx
5107cf:	e8 cc fd ff ff       	call   0x5105a0
5107d4:	83 c4 10             	add    $0x10,%esp
5107d7:	85 c0                	test   %eax,%eax
5107d9:	74 42                	je     0x51081d
5107db:	83 ef 10             	sub    $0x10,%edi
5107de:	83 c6 10             	add    $0x10,%esi
5107e1:	ba 20 00 00 00       	mov    $0x20,%edx
5107e6:	83 ff 10             	cmp    $0x10,%edi
5107e9:	73 b6                	jae    0x5107a1
5107eb:	85 ff                	test   %edi,%edi
5107ed:	74 16                	je     0x510805
5107ef:	8b 43 58             	mov    0x58(%ebx),%eax
5107f2:	57                   	push   %edi
5107f3:	83 c0 48             	add    $0x48,%eax
5107f6:	03 c3                	add    %ebx,%eax
5107f8:	56                   	push   %esi
5107f9:	50                   	push   %eax
5107fa:	e8 d1 25 0c 00       	call   0x5d2dd0
5107ff:	83 c4 0c             	add    $0xc,%esp
510802:	01 7b 58             	add    %edi,0x58(%ebx)
510805:	5f                   	pop    %edi
510806:	5e                   	pop    %esi
510807:	5d                   	pop    %ebp
510808:	b8 01 00 00 00       	mov    $0x1,%eax
51080d:	5b                   	pop    %ebx
51080e:	8b 4c 24 30          	mov    0x30(%esp),%ecx
510812:	33 cc                	xor    %esp,%ecx
510814:	e8 0d 12 0c 00       	call   0x5d1a26
510819:	83 c4 34             	add    $0x34,%esp
51081c:	c3                   	ret
51081d:	8b 4c 24 40          	mov    0x40(%esp),%ecx
510821:	33 c0                	xor    %eax,%eax
510823:	5f                   	pop    %edi
510824:	5e                   	pop    %esi
510825:	5d                   	pop    %ebp
510826:	5b                   	pop    %ebx
510827:	33 cc                	xor    %esp,%ecx
510829:	e8 f8 11 0c 00       	call   0x5d1a26
51082e:	83 c4 34             	add    $0x34,%esp
510831:	c3                   	ret
510832:	cc                   	int3
510833:	cc                   	int3
510834:	cc                   	int3
510835:	cc                   	int3
510836:	cc                   	int3
510837:	cc                   	int3
510838:	cc                   	int3
510839:	cc                   	int3
51083a:	cc                   	int3
51083b:	cc                   	int3
51083c:	cc                   	int3
51083d:	cc                   	int3
51083e:	cc                   	int3
51083f:	cc                   	int3
510840:	55                   	push   %ebp
510841:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
510845:	85 ed                	test   %ebp,%ebp
510847:	74 6a                	je     0x5108b3
510849:	8b 54 24 10          	mov    0x10(%esp),%edx
51084d:	85 d2                	test   %edx,%edx
51084f:	74 62                	je     0x5108b3
510851:	53                   	push   %ebx
510852:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
510856:	57                   	push   %edi
510857:	8b 43 14             	mov    0x14(%ebx),%eax
51085a:	3b d0                	cmp    %eax,%edx
51085c:	8b f8                	mov    %eax,%edi
51085e:	0f 42 fa             	cmovb  %edx,%edi
510861:	85 ff                	test   %edi,%edi
510863:	74 1e                	je     0x510883
510865:	56                   	push   %esi
510866:	8b f5                	mov    %ebp,%esi
510868:	8d 4b 18             	lea    0x18(%ebx),%ecx
51086b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
510870:	8a 06                	mov    (%esi),%al
510872:	8d 76 01             	lea    0x1(%esi),%esi
510875:	30 01                	xor    %al,(%ecx)
510877:	8d 49 01             	lea    0x1(%ecx),%ecx
51087a:	83 ef 01             	sub    $0x1,%edi
51087d:	75 f1                	jne    0x510870
51087f:	8b 43 14             	mov    0x14(%ebx),%eax
510882:	5e                   	pop    %esi
510883:	3b d0                	cmp    %eax,%edx
510885:	76 2a                	jbe    0x5108b1
510887:	2b d0                	sub    %eax,%edx
510889:	83 fa 10             	cmp    $0x10,%edx
51088c:	76 07                	jbe    0x510895
51088e:	ba 10 00 00 00       	mov    $0x10,%edx
510893:	eb 04                	jmp    0x510899
510895:	85 d2                	test   %edx,%edx
510897:	74 18                	je     0x5108b1
510899:	33 c9                	xor    %ecx,%ecx
51089b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5108a0:	8b 43 14             	mov    0x14(%ebx),%eax
5108a3:	03 c1                	add    %ecx,%eax
5108a5:	8a 04 28             	mov    (%eax,%ebp,1),%al
5108a8:	30 44 0b 38          	xor    %al,0x38(%ebx,%ecx,1)
5108ac:	41                   	inc    %ecx
5108ad:	3b ca                	cmp    %edx,%ecx
5108af:	72 ef                	jb     0x5108a0
5108b1:	5f                   	pop    %edi
5108b2:	5b                   	pop    %ebx
5108b3:	5d                   	pop    %ebp
5108b4:	c3                   	ret
5108b5:	cc                   	int3
5108b6:	cc                   	int3
5108b7:	cc                   	int3
5108b8:	cc                   	int3
5108b9:	cc                   	int3
5108ba:	cc                   	int3
5108bb:	cc                   	int3
5108bc:	cc                   	int3
5108bd:	cc                   	int3
5108be:	cc                   	int3
5108bf:	cc                   	int3
5108c0:	b8 4c 00 00 00       	mov    $0x4c,%eax
5108c5:	e8 e6 0e 0c 00       	call   0x5d17b0
5108ca:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5108cf:	33 c4                	xor    %esp,%eax
5108d1:	89 44 24 48          	mov    %eax,0x48(%esp)
5108d5:	8b 44 24 54          	mov    0x54(%esp),%eax
5108d9:	53                   	push   %ebx
5108da:	55                   	push   %ebp
5108db:	56                   	push   %esi
5108dc:	8b 74 24 5c          	mov    0x5c(%esp),%esi
5108e0:	89 44 24 10          	mov    %eax,0x10(%esp)
5108e4:	8b 44 24 68          	mov    0x68(%esp),%eax
5108e8:	57                   	push   %edi
5108e9:	89 44 24 18          	mov    %eax,0x18(%esp)
5108ed:	8b 44 24 74          	mov    0x74(%esp),%eax
5108f1:	6a 30                	push   $0x30
5108f3:	89 44 24 20          	mov    %eax,0x20(%esp)
5108f7:	8d 44 24 2c          	lea    0x2c(%esp),%eax
5108fb:	6a 00                	push   $0x0
5108fd:	50                   	push   %eax
5108fe:	c7 44 24 1c 10 00 00 	movl   $0x10,0x1c(%esp)
510905:	00
510906:	e8 65 23 0c 00       	call   0x5d2c70
51090b:	6a 30                	push   $0x30
51090d:	8d 7e 5c             	lea    0x5c(%esi),%edi
510910:	6a 00                	push   $0x0
510912:	57                   	push   %edi
510913:	e8 58 23 0c 00       	call   0x5d2c70
510918:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
51091c:	bd 30 00 00 00       	mov    $0x30,%ebp
510921:	b9 20 00 00 00       	mov    $0x20,%ecx
510926:	c6 44 24 53 01       	movb   $0x1,0x53(%esp)
51092b:	8b c5                	mov    %ebp,%eax
51092d:	c6 44 24 63 02       	movb   $0x2,0x63(%esp)
510932:	0f 44 c1             	cmove  %ecx,%eax
510935:	50                   	push   %eax