40692b:	cc                   	int3
40692c:	cc                   	int3
40692d:	cc                   	int3
40692e:	cc                   	int3
40692f:	cc                   	int3
406930:	55                   	push   %ebp
406931:	8b ec                	mov    %esp,%ebp
406933:	51                   	push   %ecx
406934:	8b 45 08             	mov    0x8(%ebp),%eax
406937:	8d 4d 14             	lea    0x14(%ebp),%ecx
40693a:	51                   	push   %ecx
40693b:	6a 00                	push   $0x0
40693d:	ff 75 10             	push   0x10(%ebp)
406940:	ff 75 0c             	push   0xc(%ebp)
406943:	50                   	push   %eax
406944:	e8 a7 ff ff ff       	call   0x4068f0
406949:	83 c4 14             	add    $0x14,%esp
40694c:	59                   	pop    %ecx
40694d:	5d                   	pop    %ebp
40694e:	c3                   	ret
40694f:	cc                   	int3
406950:	55                   	push   %ebp
406951:	8b ec                	mov    %esp,%ebp
406953:	83 ec 28             	sub    $0x28,%esp
406956:	a1 14 50 45 00       	mov    0x455014,%eax
40695b:	33 c5                	xor    %ebp,%eax
40695d:	89 45 f8             	mov    %eax,-0x8(%ebp)
406960:	8b 55 10             	mov    0x10(%ebp),%edx
406963:	0f 57 c0             	xorps  %xmm0,%xmm0
406966:	53                   	push   %ebx
406967:	8b 5d 08             	mov    0x8(%ebp),%ebx
40696a:	8b cb                	mov    %ebx,%ecx
40696c:	56                   	push   %esi
40696d:	57                   	push   %edi
40696e:	89 5d e0             	mov    %ebx,-0x20(%ebp)
406971:	89 55 dc             	mov    %edx,-0x24(%ebp)
406974:	8d 71 01             	lea    0x1(%ecx),%esi
406977:	66 0f 13 45 ec       	movlpd %xmm0,-0x14(%ebp)
40697c:	0f 1f 40 00          	nopl   0x0(%eax)
406980:	8a 01                	mov    (%ecx),%al
406982:	41                   	inc    %ecx
406983:	84 c0                	test   %al,%al
406985:	75 f9                	jne    0x406980
406987:	2b ce                	sub    %esi,%ecx
406989:	33 f6                	xor    %esi,%esi
40698b:	8d 41 01             	lea    0x1(%ecx),%eax
40698e:	89 45 d8             	mov    %eax,-0x28(%ebp)
406991:	8b f8                	mov    %eax,%edi
406993:	85 c0                	test   %eax,%eax
406995:	74 24                	je     0x4069bb
406997:	52                   	push   %edx
406998:	8d 45 ec             	lea    -0x14(%ebp),%eax
40699b:	50                   	push   %eax
40699c:	57                   	push   %edi
40699d:	8d 45 f4             	lea    -0xc(%ebp),%eax
4069a0:	53                   	push   %ebx
4069a1:	50                   	push   %eax
4069a2:	e8 06 2b 01 00       	call   0x4194ad
4069a7:	83 c4 14             	add    $0x14,%esp
4069aa:	85 c0                	test   %eax,%eax
4069ac:	7e 0a                	jle    0x4069b8
4069ae:	8b 55 dc             	mov    -0x24(%ebp),%edx
4069b1:	03 d8                	add    %eax,%ebx
4069b3:	46                   	inc    %esi
4069b4:	2b f8                	sub    %eax,%edi
4069b6:	75 df                	jne    0x406997
4069b8:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4069bb:	46                   	inc    %esi
4069bc:	6a 02                	push   $0x2
4069be:	56                   	push   %esi
4069bf:	e8 e8 d9 01 00       	call   0x4243ac
4069c4:	83 c4 08             	add    $0x8,%esp
4069c7:	89 45 e0             	mov    %eax,-0x20(%ebp)
4069ca:	85 c0                	test   %eax,%eax
4069cc:	74 4d                	je     0x406a1b
4069ce:	0f 57 c0             	xorps  %xmm0,%xmm0
4069d1:	8b f8                	mov    %eax,%edi
4069d3:	66 0f 13 45 e4       	movlpd %xmm0,-0x1c(%ebp)
4069d8:	85 f6                	test   %esi,%esi
4069da:	74 29                	je     0x406a05
4069dc:	0f 1f 40 00          	nopl   0x0(%eax)
4069e0:	ff 75 dc             	push   -0x24(%ebp)
4069e3:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4069e6:	50                   	push   %eax
4069e7:	ff 75 d8             	push   -0x28(%ebp)
4069ea:	53                   	push   %ebx
4069eb:	57                   	push   %edi
4069ec:	e8 bc 2a 01 00       	call   0x4194ad
4069f1:	83 c4 14             	add    $0x14,%esp
4069f4:	85 c0                	test   %eax,%eax
4069f6:	7e 0a                	jle    0x406a02
4069f8:	03 d8                	add    %eax,%ebx
4069fa:	83 c7 02             	add    $0x2,%edi
4069fd:	83 ee 01             	sub    $0x1,%esi
406a00:	75 de                	jne    0x4069e0
406a02:	8b 45 e0             	mov    -0x20(%ebp),%eax
406a05:	33 c9                	xor    %ecx,%ecx
406a07:	66 89 0f             	mov    %cx,(%edi)
406a0a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
406a0d:	5f                   	pop    %edi
406a0e:	5e                   	pop    %esi
406a0f:	33 cd                	xor    %ebp,%ecx
406a11:	5b                   	pop    %ebx
406a12:	e8 93 31 01 00       	call   0x419baa
406a17:	8b e5                	mov    %ebp,%esp
406a19:	5d                   	pop    %ebp
406a1a:	c3                   	ret
406a1b:	e8 5d 24 01 00       	call   0x418e7d
406a20:	cc                   	int3
406a21:	cc                   	int3
406a22:	cc                   	int3
406a23:	cc                   	int3
406a24:	cc                   	int3
406a25:	cc                   	int3
406a26:	cc                   	int3
406a27:	cc                   	int3
406a28:	cc                   	int3
406a29:	cc                   	int3
406a2a:	cc                   	int3
406a2b:	cc                   	int3
406a2c:	cc                   	int3
406a2d:	cc                   	int3
406a2e:	cc                   	int3
406a2f:	cc                   	int3
406a30:	53                   	push   %ebx
406a31:	8b dc                	mov    %esp,%ebx
406a33:	83 ec 08             	sub    $0x8,%esp
406a36:	83 e4 f8             	and    $0xfffffff8,%esp
406a39:	83 c4 04             	add    $0x4,%esp
406a3c:	55                   	push   %ebp
406a3d:	8b 6b 04             	mov    0x4(%ebx),%ebp
406a40:	89 6c 24 04          	mov    %ebp,0x4(%esp)
406a44:	8b ec                	mov    %esp,%ebp
406a46:	6a ff                	push   $0xffffffff
406a48:	68 72 bd 43 00       	push   $0x43bd72
406a4d:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406a53:	50                   	push   %eax
406a54:	53                   	push   %ebx
406a55:	81 ec 80 00 00 00    	sub    $0x80,%esp
406a5b:	56                   	push   %esi
406a5c:	57                   	push   %edi
406a5d:	a1 14 50 45 00       	mov    0x455014,%eax
406a62:	33 c5                	xor    %ebp,%eax
406a64:	50                   	push   %eax
406a65:	8d 45 f4             	lea    -0xc(%ebp),%eax
406a68:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
406a6e:	8b 7b 08             	mov    0x8(%ebx),%edi
406a71:	85 ff                	test   %edi,%edi
406a73:	0f 84 9b 01 00 00    	je     0x406c14
406a79:	83 3f 00             	cmpl   $0x0,(%edi)
406a7c:	0f 85 92 01 00 00    	jne    0x406c14
406a82:	6a 44                	push   $0x44
406a84:	e8 3d 31 01 00       	call   0x419bc6
406a89:	83 c4 04             	add    $0x4,%esp
406a8c:	89 45 ec             	mov    %eax,-0x14(%ebp)
406a8f:	8b 4b 0c             	mov    0xc(%ebx),%ecx
406a92:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
406a99:	8b 49 04             	mov    0x4(%ecx),%ecx
406a9c:	85 c9                	test   %ecx,%ecx
406a9e:	74 0c                	je     0x406aac
406aa0:	8b 71 18             	mov    0x18(%ecx),%esi
406aa3:	85 f6                	test   %esi,%esi
406aa5:	75 0a                	jne    0x406ab1
406aa7:	8d 71 1c             	lea    0x1c(%ecx),%esi
406aaa:	eb 05                	jmp    0x406ab1
406aac:	be 67 ed 44 00       	mov    $0x44ed67,%esi
406ab1:	6a 00                	push   $0x0
406ab3:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
406ab9:	e8 69 24 01 00       	call   0x418f27
406abe:	c7 85 78 ff ff ff 00 	movl   $0x0,-0x88(%ebp)
406ac5:	00 00 00
406ac8:	c6 85 7c ff ff ff 00 	movb   $0x0,-0x84(%ebp)
406acf:	c7 45 80 00 00 00 00 	movl   $0x0,-0x80(%ebp)
406ad6:	c6 45 84 00          	movb   $0x0,-0x7c(%ebp)
406ada:	33 c0                	xor    %eax,%eax
406adc:	c7 45 88 00 00 00 00 	movl   $0x0,-0x78(%ebp)
406ae3:	66 89 45 8c          	mov    %ax,-0x74(%ebp)
406ae7:	89 45 90             	mov    %eax,-0x70(%ebp)
406aea:	66 89 45 94          	mov    %ax,-0x6c(%ebp)
406aee:	89 45 98             	mov    %eax,-0x68(%ebp)
406af1:	88 45 9c             	mov    %al,-0x64(%ebp)
406af4:	89 45 a0             	mov    %eax,-0x60(%ebp)
406af7:	88 45 a4             	mov    %al,-0x5c(%ebp)
406afa:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
406afe:	85 f6                	test   %esi,%esi
406b00:	0f 84 27 01 00 00    	je     0x406c2d
406b06:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
406b0c:	56                   	push   %esi
406b0d:	50                   	push   %eax
406b0e:	e8 01 27 01 00       	call   0x419214
406b13:	8b 75 ec             	mov    -0x14(%ebp),%esi
406b16:	8d 45 d8             	lea    -0x28(%ebp),%eax
406b19:	50                   	push   %eax
406b1a:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
406b21:	c7 06 78 f6 43 00    	movl   $0x43f678,(%esi)
406b27:	e8 16 29 01 00       	call   0x419442
406b2c:	83 c4 0c             	add    $0xc,%esp
406b2f:	0f 10 00             	movups (%eax),%xmm0
406b32:	8d 45 a8             	lea    -0x58(%ebp),%eax
406b35:	50                   	push   %eax
406b36:	0f 11 46 08          	movups %xmm0,0x8(%esi)
406b3a:	e8 96 2b 01 00       	call   0x4196d5
406b3f:	83 c4 04             	add    $0x4,%esp
406b42:	0f 10 00             	movups (%eax),%xmm0
406b45:	0f 11 46 18          	movups %xmm0,0x18(%esi)
406b49:	0f 10 40 10          	movups 0x10(%eax),%xmm0
406b4d:	0f 11 46 28          	movups %xmm0,0x28(%esi)
406b51:	f3 0f 7e 40 20       	movq   0x20(%eax),%xmm0
406b56:	66 0f d6 46 38       	movq   %xmm0,0x38(%esi)
406b5b:	8b 40 28             	mov    0x28(%eax),%eax
406b5e:	89 46 40             	mov    %eax,0x40(%esi)
406b61:	89 37                	mov    %esi,(%edi)
406b63:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
406b69:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
406b70:	50                   	push   %eax
406b71:	e8 e9 26 01 00       	call   0x41925f
406b76:	8b 45 a0             	mov    -0x60(%ebp),%eax
406b79:	83 c4 04             	add    $0x4,%esp
406b7c:	85 c0                	test   %eax,%eax
406b7e:	74 09                	je     0x406b89
406b80:	50                   	push   %eax
406b81:	e8 bd ce 01 00       	call   0x423a43
406b86:	83 c4 04             	add    $0x4,%esp
406b89:	8b 45 98             	mov    -0x68(%ebp),%eax
406b8c:	c7 45 a0 00 00 00 00 	movl   $0x0,-0x60(%ebp)
406b93:	85 c0                	test   %eax,%eax
406b95:	74 09                	je     0x406ba0
406b97:	50                   	push   %eax
406b98:	e8 a6 ce 01 00       	call   0x423a43
406b9d:	83 c4 04             	add    $0x4,%esp
406ba0:	8b 45 90             	mov    -0x70(%ebp),%eax
406ba3:	c7 45 98 00 00 00 00 	movl   $0x0,-0x68(%ebp)
406baa:	85 c0                	test   %eax,%eax
406bac:	74 09                	je     0x406bb7
406bae:	50                   	push   %eax
406baf:	e8 8f ce 01 00       	call   0x423a43
406bb4:	83 c4 04             	add    $0x4,%esp
406bb7:	8b 45 88             	mov    -0x78(%ebp),%eax
406bba:	c7 45 90 00 00 00 00 	movl   $0x0,-0x70(%ebp)
406bc1:	85 c0                	test   %eax,%eax
406bc3:	74 09                	je     0x406bce
406bc5:	50                   	push   %eax
406bc6:	e8 78 ce 01 00       	call   0x423a43
406bcb:	83 c4 04             	add    $0x4,%esp
406bce:	8b 45 80             	mov    -0x80(%ebp),%eax
406bd1:	c7 45 88 00 00 00 00 	movl   $0x0,-0x78(%ebp)
406bd8:	85 c0                	test   %eax,%eax
406bda:	74 09                	je     0x406be5
406bdc:	50                   	push   %eax
406bdd:	e8 61 ce 01 00       	call   0x423a43
406be2:	83 c4 04             	add    $0x4,%esp
406be5:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
406beb:	c7 45 80 00 00 00 00 	movl   $0x0,-0x80(%ebp)
406bf2:	85 c0                	test   %eax,%eax
406bf4:	74 09                	je     0x406bff
406bf6:	50                   	push   %eax
406bf7:	e8 47 ce 01 00       	call   0x423a43
406bfc:	83 c4 04             	add    $0x4,%esp
406bff:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
406c05:	c7 85 78 ff ff ff 00 	movl   $0x0,-0x88(%ebp)
406c0c:	00 00 00
406c0f:	e8 6b 23 01 00       	call   0x418f7f
406c14:	b8 02 00 00 00       	mov    $0x2,%eax
406c19:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406c1c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406c23:	59                   	pop    %ecx
406c24:	5f                   	pop    %edi
406c25:	5e                   	pop    %esi
406c26:	8b e5                	mov    %ebp,%esp
406c28:	5d                   	pop    %ebp
406c29:	8b e3                	mov    %ebx,%esp
406c2b:	5b                   	pop    %ebx
406c2c:	c3                   	ret
406c2d:	68 80 ed 44 00       	push   $0x44ed80
406c32:	e8 a3 22 01 00       	call   0x418eda
406c37:	cc                   	int3
406c38:	cc                   	int3
406c39:	cc                   	int3
406c3a:	cc                   	int3
406c3b:	cc                   	int3
406c3c:	cc                   	int3
406c3d:	cc                   	int3
406c3e:	cc                   	int3
406c3f:	cc                   	int3
406c40:	55                   	push   %ebp
406c41:	8b ec                	mov    %esp,%ebp
406c43:	8d 41 08             	lea    0x8(%ecx),%eax
406c46:	50                   	push   %eax
406c47:	ff 75 0c             	push   0xc(%ebp)
406c4a:	e8 e7 29 01 00       	call   0x419636
406c4f:	83 c4 08             	add    $0x8,%esp
406c52:	66 85 45 08          	test   %ax,0x8(%ebp)
406c56:	0f 95 c0             	setne  %al
406c59:	5d                   	pop    %ebp
406c5a:	c2 08 00             	ret    $0x8
406c5d:	cc                   	int3
406c5e:	cc                   	int3
406c5f:	cc                   	int3
406c60:	55                   	push   %ebp
406c61:	8b ec                	mov    %esp,%ebp
406c63:	8b 55 10             	mov    0x10(%ebp),%edx
406c66:	8d 41 08             	lea    0x8(%ecx),%eax
406c69:	56                   	push   %esi
406c6a:	8b 75 0c             	mov    0xc(%ebp),%esi
406c6d:	57                   	push   %edi
406c6e:	8b 7d 08             	mov    0x8(%ebp),%edi
406c71:	50                   	push   %eax
406c72:	52                   	push   %edx
406c73:	56                   	push   %esi
406c74:	57                   	push   %edi
406c75:	e8 dc 29 01 00       	call   0x419656
406c7a:	83 c4 10             	add    $0x10,%esp
406c7d:	5f                   	pop    %edi
406c7e:	5e                   	pop    %esi
406c7f:	5d                   	pop    %ebp
406c80:	c2 0c 00             	ret    $0xc
406c83:	cc                   	int3
406c84:	cc                   	int3
406c85:	cc                   	int3
406c86:	cc                   	int3
406c87:	cc                   	int3
406c88:	cc                   	int3
406c89:	cc                   	int3
406c8a:	cc                   	int3
406c8b:	cc                   	int3
406c8c:	cc                   	int3
406c8d:	cc                   	int3
406c8e:	cc                   	int3
406c8f:	cc                   	int3
406c90:	55                   	push   %ebp
406c91:	8b ec                	mov    %esp,%ebp
406c93:	51                   	push   %ecx
406c94:	53                   	push   %ebx
406c95:	8b 5d 10             	mov    0x10(%ebp),%ebx
406c98:	56                   	push   %esi
406c99:	8b 75 0c             	mov    0xc(%ebp),%esi
406c9c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
406c9f:	3b f3                	cmp    %ebx,%esi
406ca1:	74 33                	je     0x406cd6
406ca3:	57                   	push   %edi
406ca4:	8b 09                	mov    (%ecx),%ecx
406ca6:	0f b7 06             	movzwl (%esi),%eax
406ca9:	50                   	push   %eax
406caa:	ff 75 08             	push   0x8(%ebp)
406cad:	8b 79 10             	mov    0x10(%ecx),%edi
406cb0:	8b cf                	mov    %edi,%ecx
406cb2:	ff 15 5c e2 43 00    	call   *0x43e25c
406cb8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
406cbb:	ff d7                	call   *%edi
406cbd:	84 c0                	test   %al,%al