55e832:	83 d2 00             	adc    $0x0,%edx
55e835:	83 c6 08             	add    $0x8,%esi
55e838:	33 ff                	xor    %edi,%edi
55e83a:	83 fe 38             	cmp    $0x38,%esi
55e83d:	72 d1                	jb     0x55e810
55e83f:	52                   	push   %edx
55e840:	68 14 24 65 00       	push   $0x652414
55e845:	8d 44 24 24          	lea    0x24(%esp),%eax
55e849:	68 14 24 65 00       	push   $0x652414
55e84e:	50                   	push   %eax
55e84f:	50                   	push   %eax
55e850:	e8 9b 03 00 00       	call   0x55ebf0
55e855:	83 c4 14             	add    $0x14,%esp
55e858:	85 ed                	test   %ebp,%ebp
55e85a:	0f 85 30 ff ff ff    	jne    0x55e790
55e860:	8b 7c 24 10          	mov    0x10(%esp),%edi
55e864:	0f 10 44 24 1c       	movups 0x1c(%esp),%xmm0
55e869:	8d 44 24 1c          	lea    0x1c(%esp),%eax
55e86d:	6a 38                	push   $0x38
55e86f:	0f 11 07             	movups %xmm0,(%edi)
55e872:	50                   	push   %eax
55e873:	0f 10 44 24 34       	movups 0x34(%esp),%xmm0
55e878:	0f 11 47 10          	movups %xmm0,0x10(%edi)
55e87c:	0f 10 44 24 44       	movups 0x44(%esp),%xmm0
55e881:	0f 11 47 20          	movups %xmm0,0x20(%edi)
55e885:	f3 0f 7e 44 24 54    	movq   0x54(%esp),%xmm0
55e88b:	66 0f d6 47 30       	movq   %xmm0,0x30(%edi)
55e890:	e8 4b 31 ea ff       	call   0x4019e0
55e895:	8d 44 24 5c          	lea    0x5c(%esp),%eax
55e899:	6a 38                	push   $0x38
55e89b:	50                   	push   %eax
55e89c:	e8 3f 31 ea ff       	call   0x4019e0
55e8a1:	83 c4 10             	add    $0x10,%esp
55e8a4:	8b 8c 24 8c 00 00 00 	mov    0x8c(%esp),%ecx
55e8ab:	5d                   	pop    %ebp
55e8ac:	5b                   	pop    %ebx
55e8ad:	5f                   	pop    %edi
55e8ae:	5e                   	pop    %esi
55e8af:	33 cc                	xor    %esp,%ecx
55e8b1:	e8 70 31 07 00       	call   0x5d1a26
55e8b6:	81 c4 80 00 00 00    	add    $0x80,%esp
55e8bc:	c3                   	ret
55e8bd:	cc                   	int3
55e8be:	cc                   	int3
55e8bf:	cc                   	int3
55e8c0:	6a 38                	push   $0x38
55e8c2:	ff 74 24 08          	push   0x8(%esp)
55e8c6:	e8 15 31 ea ff       	call   0x4019e0
55e8cb:	83 c4 08             	add    $0x8,%esp
55e8ce:	c3                   	ret
55e8cf:	cc                   	int3
55e8d0:	8b 44 24 04          	mov    0x4(%esp),%eax
55e8d4:	33 d2                	xor    %edx,%edx
55e8d6:	56                   	push   %esi
55e8d7:	8b 74 24 0c          	mov    0xc(%esp),%esi
55e8db:	83 c0 02             	add    $0x2,%eax
55e8de:	66 90                	xchg   %ax,%ax
55e8e0:	0f b6 0c 96          	movzbl (%esi,%edx,4),%ecx
55e8e4:	8d 40 04             	lea    0x4(%eax),%eax
55e8e7:	88 48 fa             	mov    %cl,-0x6(%eax)
55e8ea:	8b 0c 96             	mov    (%esi,%edx,4),%ecx
55e8ed:	c1 e9 08             	shr    $0x8,%ecx
55e8f0:	88 48 fb             	mov    %cl,-0x5(%eax)
55e8f3:	0f b6 4c 96 02       	movzbl 0x2(%esi,%edx,4),%ecx
55e8f8:	88 48 fc             	mov    %cl,-0x4(%eax)
55e8fb:	0f b6 4c 96 03       	movzbl 0x3(%esi,%edx,4),%ecx
55e900:	42                   	inc    %edx
55e901:	88 48 fd             	mov    %cl,-0x3(%eax)
55e904:	83 fa 0e             	cmp    $0xe,%edx
55e907:	72 d7                	jb     0x55e8e0
55e909:	5e                   	pop    %esi
55e90a:	c3                   	ret
55e90b:	cc                   	int3
55e90c:	cc                   	int3
55e90d:	cc                   	int3
55e90e:	cc                   	int3
55e90f:	cc                   	int3
55e910:	b8 18 00 00 00       	mov    $0x18,%eax
55e915:	e8 96 2e 07 00       	call   0x5d17b0
55e91a:	8b 54 24 20          	mov    0x20(%esp),%edx
55e91e:	0f 57 c0             	xorps  %xmm0,%xmm0
55e921:	53                   	push   %ebx
55e922:	55                   	push   %ebp
55e923:	56                   	push   %esi
55e924:	8b 02                	mov    (%edx),%eax
55e926:	83 e0 01             	and    $0x1,%eax
55e929:	66 0f 13 44 24 1c    	movlpd %xmm0,0x1c(%esp)
55e92f:	8b 5c 24 20          	mov    0x20(%esp),%ebx
55e933:	f7 d8                	neg    %eax
55e935:	8b 74 24 1c          	mov    0x1c(%esp),%esi
55e939:	89 44 24 0c          	mov    %eax,0xc(%esp)
55e93d:	8b c2                	mov    %edx,%eax
55e93f:	57                   	push   %edi
55e940:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
55e944:	2b c7                	sub    %edi,%eax
55e946:	89 44 24 18          	mov    %eax,0x18(%esp)
55e94a:	b8 14 24 65 00       	mov    $0x652414,%eax
55e94f:	2b c7                	sub    %edi,%eax
55e951:	c7 44 24 30 07 00 00 	movl   $0x7,0x30(%esp)
55e958:	00
55e959:	89 44 24 14          	mov    %eax,0x14(%esp)
55e95d:	b8 14 24 65 00       	mov    $0x652414,%eax
55e962:	2b c2                	sub    %edx,%eax
55e964:	8d 6f 04             	lea    0x4(%edi),%ebp
55e967:	8b 7c 24 10          	mov    0x10(%esp),%edi
55e96b:	89 44 24 1c          	mov    %eax,0x1c(%esp)
55e96f:	90                   	nop
55e970:	8b 0c 10             	mov    (%eax,%edx,1),%ecx
55e973:	8d 52 08             	lea    0x8(%edx),%edx
55e976:	33 c0                	xor    %eax,%eax
55e978:	8d 6d 08             	lea    0x8(%ebp),%ebp
55e97b:	23 cf                	and    %edi,%ecx
55e97d:	03 4a f8             	add    -0x8(%edx),%ecx
55e980:	13 c0                	adc    %eax,%eax
55e982:	03 f1                	add    %ecx,%esi
55e984:	8b 4c 24 18          	mov    0x18(%esp),%ecx
55e988:	13 d8                	adc    %eax,%ebx
55e98a:	89 75 f4             	mov    %esi,-0xc(%ebp)
55e98d:	8b 44 24 14          	mov    0x14(%esp),%eax
55e991:	33 f6                	xor    %esi,%esi
55e993:	8b 44 28 f8          	mov    -0x8(%eax,%ebp,1),%eax
55e997:	23 c7                	and    %edi,%eax
55e999:	03 44 29 f8          	add    -0x8(%ecx,%ebp,1),%eax
55e99d:	13 f6                	adc    %esi,%esi
55e99f:	03 c3                	add    %ebx,%eax
55e9a1:	89 45 f8             	mov    %eax,-0x8(%ebp)
55e9a4:	8b 44 24 1c          	mov    0x1c(%esp),%eax
55e9a8:	83 d6 00             	adc    $0x0,%esi
55e9ab:	33 db                	xor    %ebx,%ebx
55e9ad:	83 6c 24 30 01       	subl   $0x1,0x30(%esp)
55e9b2:	75 bc                	jne    0x55e970
55e9b4:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
55e9b8:	b9 1f 00 00 00       	mov    $0x1f,%ecx
55e9bd:	33 c0                	xor    %eax,%eax
55e9bf:	66 0f 6e d1          	movd   %ecx,%xmm2
55e9c3:	b9 01 00 00 00       	mov    $0x1,%ecx
55e9c8:	66 0f 6e d9          	movd   %ecx,%xmm3
55e9cc:	0f 1f 40 00          	nopl   0x0(%eax)
55e9d0:	0f 10 4c 87 04       	movups 0x4(%edi,%eax,4),%xmm1
55e9d5:	0f 10 04 87          	movups (%edi,%eax,4),%xmm0
55e9d9:	66 0f f2 ca          	pslld  %xmm2,%xmm1
55e9dd:	66 0f d2 c3          	psrld  %xmm3,%xmm0
55e9e1:	66 0f eb c8          	por    %xmm0,%xmm1
55e9e5:	0f 11 0c 87          	movups %xmm1,(%edi,%eax,4)
55e9e9:	83 c0 04             	add    $0x4,%eax
55e9ec:	83 f8 0c             	cmp    $0xc,%eax
55e9ef:	72 df                	jb     0x55e9d0
55e9f1:	83 f8 0d             	cmp    $0xd,%eax
55e9f4:	73 17                	jae    0x55ea0d
55e9f6:	8b 0c 87             	mov    (%edi,%eax,4),%ecx
55e9f9:	8b 54 87 04          	mov    0x4(%edi,%eax,4),%edx
55e9fd:	c1 e2 1f             	shl    $0x1f,%edx
55ea00:	d1 e9                	shr    $1,%ecx
55ea02:	0b d1                	or     %ecx,%edx
55ea04:	89 14 87             	mov    %edx,(%edi,%eax,4)
55ea07:	40                   	inc    %eax
55ea08:	83 f8 0d             	cmp    $0xd,%eax
55ea0b:	72 e9                	jb     0x55e9f6
55ea0d:	8d 0c 87             	lea    (%edi,%eax,4),%ecx
55ea10:	8b c3                	mov    %ebx,%eax
55ea12:	0f a4 f0 1f          	shld   $0x1f,%esi,%eax
55ea16:	8b 01                	mov    (%ecx),%eax
55ea18:	c1 e6 1f             	shl    $0x1f,%esi
55ea1b:	d1 e8                	shr    $1,%eax
55ea1d:	0b f0                	or     %eax,%esi
55ea1f:	5f                   	pop    %edi
55ea20:	89 31                	mov    %esi,(%ecx)
55ea22:	5e                   	pop    %esi
55ea23:	5d                   	pop    %ebp
55ea24:	5b                   	pop    %ebx
55ea25:	83 c4 18             	add    $0x18,%esp
55ea28:	c3                   	ret
55ea29:	cc                   	int3
55ea2a:	cc                   	int3
55ea2b:	cc                   	int3
55ea2c:	cc                   	int3
55ea2d:	cc                   	int3
55ea2e:	cc                   	int3
55ea2f:	cc                   	int3
55ea30:	56                   	push   %esi
55ea31:	ff 74 24 10          	push   0x10(%esp)
55ea35:	8b 74 24 0c          	mov    0xc(%esp),%esi
55ea39:	ff 74 24 10          	push   0x10(%esp)
55ea3d:	56                   	push   %esi
55ea3e:	e8 3d 00 00 00       	call   0x55ea80
55ea43:	68 4c 24 65 00       	push   $0x65244c
55ea48:	56                   	push   %esi
55ea49:	56                   	push   %esi
55ea4a:	e8 31 00 00 00       	call   0x55ea80
55ea4f:	83 c4 18             	add    $0x18,%esp
55ea52:	5e                   	pop    %esi
55ea53:	c3                   	ret
55ea54:	cc                   	int3
55ea55:	cc                   	int3
55ea56:	cc                   	int3
55ea57:	cc                   	int3
55ea58:	cc                   	int3
55ea59:	cc                   	int3
55ea5a:	cc                   	int3
55ea5b:	cc                   	int3
55ea5c:	cc                   	int3
55ea5d:	cc                   	int3
55ea5e:	cc                   	int3
55ea5f:	cc                   	int3
55ea60:	6a 00                	push   $0x0
55ea62:	68 14 24 65 00       	push   $0x652414
55ea67:	ff 74 24 14          	push   0x14(%esp)
55ea6b:	ff 74 24 14          	push   0x14(%esp)
55ea6f:	ff 74 24 14          	push   0x14(%esp)
55ea73:	e8 78 01 00 00       	call   0x55ebf0
55ea78:	83 c4 14             	add    $0x14,%esp
55ea7b:	c3                   	ret
55ea7c:	cc                   	int3
55ea7d:	cc                   	int3
55ea7e:	cc                   	int3
55ea7f:	cc                   	int3
55ea80:	b8 60 00 00 00       	mov    $0x60,%eax
55ea85:	e8 26 2d 07 00       	call   0x5d17b0
55ea8a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
55ea8f:	33 c4                	xor    %esp,%eax
55ea91:	89 44 24 5c          	mov    %eax,0x5c(%esp)
55ea95:	8b 44 24 64          	mov    0x64(%esp),%eax
55ea99:	53                   	push   %ebx
55ea9a:	55                   	push   %ebp
55ea9b:	56                   	push   %esi
55ea9c:	57                   	push   %edi
55ea9d:	6a 3c                	push   $0x3c
55ea9f:	89 44 24 30          	mov    %eax,0x30(%esp)
55eaa3:	8d 44 24 34          	lea    0x34(%esp),%eax
55eaa7:	6a 00                	push   $0x0
55eaa9:	50                   	push   %eax
55eaaa:	e8 c1 41 07 00       	call   0x5d2c70
55eaaf:	8b ac 24 88 00 00 00 	mov    0x88(%esp),%ebp
55eab6:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
55eaba:	2b cd                	sub    %ebp,%ecx
55eabc:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
55eac3:	00
55eac4:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
55eac8:	33 c0                	xor    %eax,%eax
55eaca:	8d 4c 24 40          	lea    0x40(%esp),%ecx
55eace:	89 44 24 24          	mov    %eax,0x24(%esp)
55ead2:	83 c4 0c             	add    $0xc,%esp
55ead5:	2b cd                	sub    %ebp,%ecx
55ead7:	89 4c 24 28          	mov    %ecx,0x28(%esp)
55eadb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
55eae0:	8b 4c 24 78          	mov    0x78(%esp),%ecx
55eae4:	0f 57 c0             	xorps  %xmm0,%xmm0
55eae7:	66 0f 13 44 24 1c    	movlpd %xmm0,0x1c(%esp)
55eaed:	8b f5                	mov    %ebp,%esi
55eaef:	8b 7c 24 20          	mov    0x20(%esp),%edi
55eaf3:	bd 07 00 00 00       	mov    $0x7,%ebp
55eaf8:	8b 1c 81             	mov    (%ecx,%eax,4),%ebx
55eafb:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
55eaff:	89 5c 24 24          	mov    %ebx,0x24(%esp)
55eb03:	8b c3                	mov    %ebx,%eax
55eb05:	8d 76 08             	lea    0x8(%esi),%esi
55eb08:	f7 66 f8             	mull   -0x8(%esi)
55eb0b:	8b 5c 24 10          	mov    0x10(%esp),%ebx
55eb0f:	03 44 33 f8          	add    -0x8(%ebx,%esi,1),%eax
55eb13:	83 d2 00             	adc    $0x0,%edx
55eb16:	03 c8                	add    %eax,%ecx
55eb18:	8b c3                	mov    %ebx,%eax
55eb1a:	8b 5c 24 24          	mov    0x24(%esp),%ebx
55eb1e:	13 fa                	adc    %edx,%edi
55eb20:	89 4c 30 f8          	mov    %ecx,-0x8(%eax,%esi,1)
55eb24:	8b c3                	mov    %ebx,%eax
55eb26:	f7 66 fc             	mull   -0x4(%esi)
55eb29:	8b ca                	mov    %edx,%ecx
55eb2b:	03 c7                	add    %edi,%eax
55eb2d:	8b 54 24 28          	mov    0x28(%esp),%edx
55eb31:	83 d1 00             	adc    $0x0,%ecx
55eb34:	01 44 32 f8          	add    %eax,-0x8(%edx,%esi,1)
55eb38:	83 d1 00             	adc    $0x0,%ecx
55eb3b:	33 ff                	xor    %edi,%edi
55eb3d:	83 ed 01             	sub    $0x1,%ebp
55eb40:	75 c1                	jne    0x55eb03
55eb42:	69 5c 24 30 c5 8b 91 	imul   $0xae918bc5,0x30(%esp),%ebx
55eb49:	ae
55eb4a:	0f 57 c0             	xorps  %xmm0,%xmm0
55eb4d:	66 0f 13 44 24 1c    	movlpd %xmm0,0x1c(%esp)
55eb53:	8b 7c 24 20          	mov    0x20(%esp),%edi
55eb57:	8b 74 24 1c          	mov    0x1c(%esp),%esi
55eb5b:	89 4c 24 68          	mov    %ecx,0x68(%esp)
55eb5f:	33 c9                	xor    %ecx,%ecx
55eb61:	8b c3                	mov    %ebx,%eax
55eb63:	f7 24 8d 14 24 65 00 	mull   0x652414(,%ecx,4)
55eb6a:	03 44 8c 30          	add    0x30(%esp,%ecx,4),%eax
55eb6e:	83 d2 00             	adc    $0x0,%edx
55eb71:	03 f0                	add    %eax,%esi
55eb73:	13 fa                	adc    %edx,%edi
55eb75:	85 c9                	test   %ecx,%ecx
55eb77:	74 04                	je     0x55eb7d
55eb79:	89 74 8c 2c          	mov    %esi,0x2c(%esp,%ecx,4)
55eb7d:	8b f7                	mov    %edi,%esi
55eb7f:	41                   	inc    %ecx
55eb80:	33 ff                	xor    %edi,%edi
55eb82:	83 f9 0e             	cmp    $0xe,%ecx
55eb85:	72 da                	jb     0x55eb61
55eb87:	8b 6c 24 7c          	mov    0x7c(%esp),%ebp
55eb8b:	8d 54 24 30          	lea    0x30(%esp),%edx
55eb8f:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
55eb92:	8d 14 8a             	lea    (%edx,%ecx,4),%edx
55eb95:	33 c9                	xor    %ecx,%ecx
55eb97:	03 44 24 14          	add    0x14(%esp),%eax
55eb9b:	13 c9                	adc    %ecx,%ecx
55eb9d:	03 f0                	add    %eax,%esi
55eb9f:	8b 44 24 18          	mov    0x18(%esp),%eax
55eba3:	13 f9                	adc    %ecx,%edi
55eba5:	89 72 fc             	mov    %esi,-0x4(%edx)
55eba8:	40                   	inc    %eax
55eba9:	8b d7                	mov    %edi,%edx
55ebab:	89 54 24 14          	mov    %edx,0x14(%esp)
55ebaf:	89 44 24 18          	mov    %eax,0x18(%esp)
55ebb3:	83 f8 0e             	cmp    $0xe,%eax
55ebb6:	0f 82 24 ff ff ff    	jb     0x55eae0
55ebbc:	52                   	push   %edx
55ebbd:	68 14 24 65 00       	push   $0x652414
55ebc2:	68 14 24 65 00       	push   $0x652414
55ebc7:	8d 44 24 3c          	lea    0x3c(%esp),%eax
55ebcb:	50                   	push   %eax
55ebcc:	ff 74 24 3c          	push   0x3c(%esp)
55ebd0:	e8 1b 00 00 00       	call   0x55ebf0
55ebd5:	8b 8c 24 80 00 00 00 	mov    0x80(%esp),%ecx
55ebdc:	83 c4 14             	add    $0x14,%esp
55ebdf:	5f                   	pop    %edi
55ebe0:	5e                   	pop    %esi
55ebe1:	5d                   	pop    %ebp
55ebe2:	5b                   	pop    %ebx
55ebe3:	33 cc                	xor    %esp,%ecx
55ebe5:	e8 3c 2e 07 00       	call   0x5d1a26
55ebea:	83 c4 60             	add    $0x60,%esp
55ebed:	c3                   	ret
55ebee:	cc                   	int3
55ebef:	cc                   	int3
55ebf0:	b8 14 00 00 00       	mov    $0x14,%eax
55ebf5:	e8 b6 2b 07 00       	call   0x5d17b0
55ebfa:	8b 44 24 20          	mov    0x20(%esp),%eax
55ebfe:	0f 57 c0             	xorps  %xmm0,%xmm0
55ec01:	8b 4c 24 18          	mov    0x18(%esp),%ecx
55ec05:	53                   	push   %ebx
55ec06:	55                   	push   %ebp
55ec07:	8b 6c 24 24          	mov    0x24(%esp),%ebp
55ec0b:	8b d9                	mov    %ecx,%ebx
55ec0d:	8b d5                	mov    %ebp,%edx
55ec0f:	66 0f 13 44 24 14    	movlpd %xmm0,0x14(%esp)
55ec15:	2b d0                	sub    %eax,%edx
55ec17:	c7 44 24 08 07 00 00 	movl   $0x7,0x8(%esp)
55ec1e:	00
55ec1f:	89 54 24 0c          	mov    %edx,0xc(%esp)
55ec23:	8b d1                	mov    %ecx,%edx