5717be:	8b ce                	mov    %esi,%ecx
5717c0:	8d 7c 24 34          	lea    0x34(%esp),%edi
5717c4:	2b c8                	sub    %eax,%ecx
5717c6:	8d 6c 24 44          	lea    0x44(%esp),%ebp
5717ca:	2b fb                	sub    %ebx,%edi
5717cc:	8b c3                	mov    %ebx,%eax
5717ce:	2b eb                	sub    %ebx,%ebp
5717d0:	89 6c 24 18          	mov    %ebp,0x18(%esp)
5717d4:	8b 6c 24 14          	mov    0x14(%esp),%ebp
5717d8:	8b 5c 24 18          	mov    0x18(%esp),%ebx
5717dc:	0f 1f 40 00          	nopl   0x0(%eax)
5717e0:	0f 10 00             	movups (%eax),%xmm0
5717e3:	83 c2 20             	add    $0x20,%edx
5717e6:	8d 40 20             	lea    0x20(%eax),%eax
5717e9:	0f 10 4c 07 e0       	movups -0x20(%edi,%eax,1),%xmm1
5717ee:	66 0f ef c8          	pxor   %xmm0,%xmm1
5717f2:	0f 11 48 e0          	movups %xmm1,-0x20(%eax)
5717f6:	0f 10 40 f0          	movups -0x10(%eax),%xmm0
5717fa:	0f 10 4c 03 e0       	movups -0x20(%ebx,%eax,1),%xmm1
5717ff:	66 0f ef c8          	pxor   %xmm0,%xmm1
571803:	0f 11 48 f0          	movups %xmm1,-0x10(%eax)
571807:	3b d1                	cmp    %ecx,%edx
571809:	7c d5                	jl     0x5717e0
57180b:	8b 5c 24 10          	mov    0x10(%esp),%ebx
57180f:	3b d6                	cmp    %esi,%edx
571811:	7d 1b                	jge    0x57182e
571813:	8d 7c 24 34          	lea    0x34(%esp),%edi
571817:	2b fb                	sub    %ebx,%edi
571819:	8d 0c 1a             	lea    (%edx,%ebx,1),%ecx
57181c:	2b f2                	sub    %edx,%esi
57181e:	66 90                	xchg   %ax,%ax
571820:	8a 04 39             	mov    (%ecx,%edi,1),%al
571823:	8d 49 01             	lea    0x1(%ecx),%ecx
571826:	30 41 ff             	xor    %al,-0x1(%ecx)
571829:	83 ee 01             	sub    $0x1,%esi
57182c:	75 f2                	jne    0x571820
57182e:	55                   	push   %ebp
57182f:	e8 fc e8 f2 ff       	call   0x4a0130
571834:	83 c4 04             	add    $0x4,%esp
571837:	b8 01 00 00 00       	mov    $0x1,%eax
57183c:	5f                   	pop    %edi
57183d:	5e                   	pop    %esi
57183e:	5d                   	pop    %ebp
57183f:	5b                   	pop    %ebx
571840:	8b 4c 24 64          	mov    0x64(%esp),%ecx
571844:	33 cc                	xor    %esp,%ecx
571846:	e8 8f fc 06 00       	call   0x5e14da
57184b:	83 c4 68             	add    $0x68,%esp
57184e:	c3                   	ret
57184f:	55                   	push   %ebp
571850:	e8 db e8 f2 ff       	call   0x4a0130
571855:	83 c4 04             	add    $0x4,%esp
571858:	8b 4c 24 74          	mov    0x74(%esp),%ecx
57185c:	33 c0                	xor    %eax,%eax
57185e:	5f                   	pop    %edi
57185f:	5e                   	pop    %esi
571860:	5d                   	pop    %ebp
571861:	5b                   	pop    %ebx
571862:	33 cc                	xor    %esp,%ecx
571864:	e8 71 fc 06 00       	call   0x5e14da
571869:	83 c4 68             	add    $0x68,%esp
57186c:	c3                   	ret
57186d:	cc                   	int3
57186e:	cc                   	int3
57186f:	cc                   	int3
571870:	6a 00                	push   $0x0
571872:	6a 00                	push   $0x0
571874:	ff 74 24 24          	push   0x24(%esp)
571878:	ff 74 24 24          	push   0x24(%esp)
57187c:	ff 74 24 24          	push   0x24(%esp)
571880:	ff 74 24 24          	push   0x24(%esp)
571884:	ff 74 24 24          	push   0x24(%esp)
571888:	ff 74 24 24          	push   0x24(%esp)
57188c:	ff 74 24 24          	push   0x24(%esp)
571890:	e8 0b 00 00 00       	call   0x5718a0
571895:	83 c4 24             	add    $0x24,%esp
571898:	c3                   	ret
571899:	cc                   	int3
57189a:	cc                   	int3
57189b:	cc                   	int3
57189c:	cc                   	int3
57189d:	cc                   	int3
57189e:	cc                   	int3
57189f:	cc                   	int3
5718a0:	b8 b0 00 00 00       	mov    $0xb0,%eax
5718a5:	e8 46 fc 06 00       	call   0x5e14f0
5718aa:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5718af:	33 c4                	xor    %esp,%eax
5718b1:	89 84 24 ac 00 00 00 	mov    %eax,0xac(%esp)
5718b8:	8b 84 24 b4 00 00 00 	mov    0xb4(%esp),%eax
5718bf:	8b 8c 24 d0 00 00 00 	mov    0xd0(%esp),%ecx
5718c6:	53                   	push   %ebx
5718c7:	8b 9c 24 c4 00 00 00 	mov    0xc4(%esp),%ebx
5718ce:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5718d2:	8b 84 24 c0 00 00 00 	mov    0xc0(%esp),%eax
5718d9:	55                   	push   %ebp
5718da:	89 44 24 08          	mov    %eax,0x8(%esp)
5718de:	33 ed                	xor    %ebp,%ebp
5718e0:	8b 84 24 d0 00 00 00 	mov    0xd0(%esp),%eax
5718e7:	56                   	push   %esi
5718e8:	8b b4 24 d0 00 00 00 	mov    0xd0(%esp),%esi
5718ef:	89 44 24 30          	mov    %eax,0x30(%esp)
5718f3:	33 c0                	xor    %eax,%eax
5718f5:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
5718f9:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5718fd:	c7 44 24 24 00 00 00 	movl   $0x0,0x24(%esp)
571904:	00
571905:	89 44 24 18          	mov    %eax,0x18(%esp)
571909:	57                   	push   %edi
57190a:	8b bc 24 e4 00 00 00 	mov    0xe4(%esp),%edi
571911:	85 c9                	test   %ecx,%ecx
571913:	75 0b                	jne    0x571920
571915:	e8 c6 fe f3 ff       	call   0x4b17e0
57191a:	8b c8                	mov    %eax,%ecx
57191c:	89 44 24 18          	mov    %eax,0x18(%esp)
571920:	85 ff                	test   %edi,%edi
571922:	51                   	push   %ecx
571923:	0f 44 f9             	cmove  %ecx,%edi
571926:	89 7c 24 34          	mov    %edi,0x34(%esp)
57192a:	e8 c1 fb f1 ff       	call   0x4914f0
57192f:	83 c4 04             	add    $0x4,%esp
571932:	8b f8                	mov    %eax,%edi
571934:	89 7c 24 24          	mov    %edi,0x24(%esp)
571938:	39 ac 24 c8 00 00 00 	cmp    %ebp,0xc8(%esp)
57193f:	0f 8e 86 03 00 00    	jle    0x571ccb
571945:	85 db                	test   %ebx,%ebx
571947:	0f 8e 7e 03 00 00    	jle    0x571ccb
57194d:	3b f3                	cmp    %ebx,%esi
57194f:	0f 8c 04 03 00 00    	jl     0x571c59
571955:	8d 04 7d 02 00 00 00 	lea    0x2(,%edi,2),%eax
57195c:	3b f0                	cmp    %eax,%esi
57195e:	0f 8c f5 02 00 00    	jl     0x571c59
571964:	8b de                	mov    %esi,%ebx
571966:	68 9b 00 00 00       	push   $0x9b
57196b:	2b df                	sub    %edi,%ebx
57196d:	4b                   	dec    %ebx
57196e:	68 e8 c9 6b 00       	push   $0x6bc9e8
571973:	53                   	push   %ebx
571974:	89 5c 24 20          	mov    %ebx,0x20(%esp)
571978:	e8 33 e8 f2 ff       	call   0x4a01b0
57197d:	68 9c 00 00 00       	push   $0x9c
571982:	68 e8 c9 6b 00       	push   $0x6bc9e8
571987:	56                   	push   %esi
571988:	8b e8                	mov    %eax,%ebp
57198a:	e8 21 e8 f2 ff       	call   0x4a01b0
57198f:	83 c4 18             	add    $0x18,%esp
571992:	89 44 24 1c          	mov    %eax,0x1c(%esp)
571996:	85 ed                	test   %ebp,%ebp
571998:	0f 84 ed 02 00 00    	je     0x571c8b
57199e:	85 c0                	test   %eax,%eax
5719a0:	0f 84 e5 02 00 00    	je     0x571c8b
5719a6:	56                   	push   %esi
5719a7:	6a 00                	push   $0x0
5719a9:	50                   	push   %eax
5719aa:	e8 51 20 07 00       	call   0x5e3a00
5719af:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5719b3:	2b f0                	sub    %eax,%esi
5719b5:	03 74 24 28          	add    0x28(%esp),%esi
5719b9:	50                   	push   %eax
5719ba:	ff 74 24 20          	push   0x20(%esp)
5719be:	56                   	push   %esi
5719bf:	e8 3c 15 07 00       	call   0x5e2f00
5719c4:	8b 54 24 34          	mov    0x34(%esp),%edx
5719c8:	ff 74 24 48          	push   0x48(%esp)
5719cc:	53                   	push   %ebx
5719cd:	0f b6 02             	movzbl (%edx),%eax
5719d0:	8d 72 01             	lea    0x1(%edx),%esi
5719d3:	8d 48 ff             	lea    -0x1(%eax),%ecx
5719d6:	f7 d0                	not    %eax
5719d8:	c1 e8 1f             	shr    $0x1f,%eax
5719db:	c1 e9 1f             	shr    $0x1f,%ecx
5719de:	23 c8                	and    %eax,%ecx
5719e0:	8d 42 01             	lea    0x1(%edx),%eax
5719e3:	03 c7                	add    %edi,%eax
5719e5:	f7 d9                	neg    %ecx
5719e7:	50                   	push   %eax
5719e8:	89 44 24 44          	mov    %eax,0x44(%esp)
5719ec:	8d 44 24 60          	lea    0x60(%esp),%eax
5719f0:	57                   	push   %edi
5719f1:	50                   	push   %eax
5719f2:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
5719f6:	e8 45 f9 ff ff       	call   0x571340
5719fb:	83 c4 2c             	add    $0x2c,%esp
5719fe:	85 c0                	test   %eax,%eax
571a00:	0f 85 a0 02 00 00    	jne    0x571ca6
571a06:	33 d2                	xor    %edx,%edx
571a08:	85 ff                	test   %edi,%edi
571a0a:	0f 8e a0 00 00 00    	jle    0x571ab0
571a10:	83 ff 20             	cmp    $0x20,%edi
571a13:	72 7a                	jb     0x571a8f
571a15:	8d 46 ff             	lea    -0x1(%esi),%eax
571a18:	8d 5c 24 3c          	lea    0x3c(%esp),%ebx
571a1c:	03 c7                	add    %edi,%eax
571a1e:	3b d8                	cmp    %eax,%ebx
571a20:	8d 4c 3c 3b          	lea    0x3b(%esp,%edi,1),%ecx
571a24:	8b 5c 24 14          	mov    0x14(%esp),%ebx
571a28:	77 04                	ja     0x571a2e
571a2a:	3b ce                	cmp    %esi,%ecx
571a2c:	73 61                	jae    0x571a8f
571a2e:	8b c7                	mov    %edi,%eax
571a30:	25 1f 00 00 80       	and    $0x8000001f,%eax
571a35:	79 05                	jns    0x571a3c
571a37:	48                   	dec    %eax
571a38:	83 c8 e0             	or     $0xffffffe0,%eax
571a3b:	40                   	inc    %eax
571a3c:	8b cf                	mov    %edi,%ecx
571a3e:	8b fe                	mov    %esi,%edi
571a40:	2b c8                	sub    %eax,%ecx
571a42:	8d 44 24 3c          	lea    0x3c(%esp),%eax
571a46:	8b d8                	mov    %eax,%ebx
571a48:	2b fb                	sub    %ebx,%edi
571a4a:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
571a4e:	8b 7c 24 24          	mov    0x24(%esp),%edi
571a52:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
571a56:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%eax,%eax,1)
571a5d:	00 00 00
571a60:	0f 10 00             	movups (%eax),%xmm0
571a63:	8d 40 20             	lea    0x20(%eax),%eax
571a66:	0f 10 4c 03 e0       	movups -0x20(%ebx,%eax,1),%xmm1
571a6b:	66 0f ef c8          	pxor   %xmm0,%xmm1
571a6f:	0f 11 48 e0          	movups %xmm1,-0x20(%eax)
571a73:	0f 10 4c 16 10       	movups 0x10(%esi,%edx,1),%xmm1
571a78:	83 c2 20             	add    $0x20,%edx
571a7b:	0f 10 40 f0          	movups -0x10(%eax),%xmm0
571a7f:	66 0f ef c8          	pxor   %xmm0,%xmm1
571a83:	0f 11 48 f0          	movups %xmm1,-0x10(%eax)
571a87:	3b d1                	cmp    %ecx,%edx
571a89:	7c d5                	jl     0x571a60
571a8b:	8b 5c 24 14          	mov    0x14(%esp),%ebx
571a8f:	3b d7                	cmp    %edi,%edx
571a91:	7d 1d                	jge    0x571ab0
571a93:	8d 44 24 3c          	lea    0x3c(%esp),%eax
571a97:	2b f0                	sub    %eax,%esi
571a99:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
571aa0:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
571aa4:	03 ca                	add    %edx,%ecx
571aa6:	42                   	inc    %edx
571aa7:	8a 04 0e             	mov    (%esi,%ecx,1),%al
571aaa:	30 01                	xor    %al,(%ecx)
571aac:	3b d7                	cmp    %edi,%edx
571aae:	7c f0                	jl     0x571aa0
571ab0:	ff 74 24 30          	push   0x30(%esp)
571ab4:	8d 44 24 40          	lea    0x40(%esp),%eax
571ab8:	57                   	push   %edi
571ab9:	50                   	push   %eax
571aba:	53                   	push   %ebx
571abb:	55                   	push   %ebp
571abc:	e8 7f f8 ff ff       	call   0x571340
571ac1:	83 c4 14             	add    $0x14,%esp
571ac4:	85 c0                	test   %eax,%eax
571ac6:	0f 85 da 01 00 00    	jne    0x571ca6
571acc:	33 f6                	xor    %esi,%esi
571ace:	85 db                	test   %ebx,%ebx
571ad0:	0f 8e 9c 00 00 00    	jle    0x571b72
571ad6:	83 fb 20             	cmp    $0x20,%ebx
571ad9:	72 73                	jb     0x571b4e
571adb:	8b 4c 24 20          	mov    0x20(%esp),%ecx
571adf:	8d 55 ff             	lea    -0x1(%ebp),%edx
571ae2:	03 d3                	add    %ebx,%edx
571ae4:	8d 41 ff             	lea    -0x1(%ecx),%eax
571ae7:	03 c3                	add    %ebx,%eax
571ae9:	3b e8                	cmp    %eax,%ebp
571aeb:	77 04                	ja     0x571af1
571aed:	3b d1                	cmp    %ecx,%edx
571aef:	73 5d                	jae    0x571b4e
571af1:	8b c3                	mov    %ebx,%eax
571af3:	25 1f 00 00 80       	and    $0x8000001f,%eax
571af8:	79 05                	jns    0x571aff
571afa:	48                   	dec    %eax
571afb:	83 c8 e0             	or     $0xffffffe0,%eax
571afe:	40                   	inc    %eax
571aff:	89 4c 24 14          	mov    %ecx,0x14(%esp)
571b03:	8b d3                	mov    %ebx,%edx
571b05:	29 6c 24 14          	sub    %ebp,0x14(%esp)
571b09:	2b d0                	sub    %eax,%edx
571b0b:	83 c1 10             	add    $0x10,%ecx
571b0e:	8b c5                	mov    %ebp,%eax
571b10:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
571b14:	8b 4c 24 14          	mov    0x14(%esp),%ecx
571b18:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
571b1c:	0f 1f 40 00          	nopl   0x0(%eax)
571b20:	0f 10 00             	movups (%eax),%xmm0
571b23:	8d 40 20             	lea    0x20(%eax),%eax
571b26:	0f 10 4c 01 e0       	movups -0x20(%ecx,%eax,1),%xmm1
571b2b:	66 0f ef c8          	pxor   %xmm0,%xmm1
571b2f:	0f 11 48 e0          	movups %xmm1,-0x20(%eax)
571b33:	0f 10 0c 37          	movups (%edi,%esi,1),%xmm1
571b37:	83 c6 20             	add    $0x20,%esi
571b3a:	0f 10 40 f0          	movups -0x10(%eax),%xmm0
571b3e:	66 0f ef c8          	pxor   %xmm0,%xmm1
571b42:	0f 11 48 f0          	movups %xmm1,-0x10(%eax)
571b46:	3b f2                	cmp    %edx,%esi
571b48:	7c d6                	jl     0x571b20
571b4a:	8b 7c 24 24          	mov    0x24(%esp),%edi
571b4e:	3b f3                	cmp    %ebx,%esi
571b50:	7d 20                	jge    0x571b72
571b52:	8b 7c 24 20          	mov    0x20(%esp),%edi
571b56:	8d 0c 2e             	lea    (%esi,%ebp,1),%ecx
571b59:	8b d3                	mov    %ebx,%edx
571b5b:	2b fd                	sub    %ebp,%edi
571b5d:	2b d6                	sub    %esi,%edx
571b5f:	90                   	nop
571b60:	8a 04 39             	mov    (%ecx,%edi,1),%al
571b63:	8d 49 01             	lea    0x1(%ecx),%ecx
571b66:	30 41 ff             	xor    %al,-0x1(%ecx)
571b69:	83 ea 01             	sub    $0x1,%edx
571b6c:	75 f2                	jne    0x571b60
571b6e:	8b 7c 24 24          	mov    0x24(%esp),%edi
571b72:	6a 00                	push   $0x0
571b74:	ff 74 24 1c          	push   0x1c(%esp)
571b78:	8d 84 24 84 00 00 00 	lea    0x84(%esp),%eax
571b7f:	6a 00                	push   $0x0
571b81:	50                   	push   %eax
571b82:	ff b4 24 ec 00 00 00 	push   0xec(%esp)
571b89:	ff 74 24 48          	push   0x48(%esp)
571b8d:	e8 be f5 f3 ff       	call   0x4b1150
571b92:	83 c4 18             	add    $0x18,%esp
571b95:	85 c0                	test   %eax,%eax
571b97:	0f 84 09 01 00 00    	je     0x571ca6
571b9d:	57                   	push   %edi
571b9e:	8d 84 24 80 00 00 00 	lea    0x80(%esp),%eax
571ba5:	50                   	push   %eax
571ba6:	55                   	push   %ebp
571ba7:	e8 84 ea f2 ff       	call   0x4a0630
571bac:	8b 54 24 1c          	mov    0x1c(%esp),%edx
571bb0:	83 c4 0c             	add    $0xc,%esp
571bb3:	8d 48 ff             	lea    -0x1(%eax),%ecx
571bb6:	f7 d0                	not    %eax
571bb8:	c1 e9 1f             	shr    $0x1f,%ecx
571bbb:	c1 e8 1f             	shr    $0x1f,%eax
571bbe:	23 c8                	and    %eax,%ecx
571bc0:	f7 d9                	neg    %ecx
571bc2:	23 d1                	and    %ecx,%edx
571bc4:	33 c9                	xor    %ecx,%ecx
571bc6:	89 54 24 10          	mov    %edx,0x10(%esp)
571bca:	89 4c 24 18          	mov    %ecx,0x18(%esp)
571bce:	3b fb                	cmp    %ebx,%edi
571bd0:	7d 56                	jge    0x571c28
571bd2:	0f b6 34 2f          	movzbl (%edi,%ebp,1),%esi
571bd6:	f7 d1                	not    %ecx
571bd8:	8b c6                	mov    %esi,%eax
571bda:	83 f0 01             	xor    $0x1,%eax
571bdd:	8d 50 ff             	lea    -0x1(%eax),%edx
571be0:	f7 d0                	not    %eax
571be2:	c1 e8 1f             	shr    $0x1f,%eax
571be5:	c1 ea 1f             	shr    $0x1f,%edx
571be8:	23 d0                	and    %eax,%edx
571bea:	f7 da                	neg    %edx
571bec:	23 ca                	and    %edx,%ecx
571bee:	8b c1                	mov    %ecx,%eax