466943:	8d 3c 85 0c 00 00 00 	lea    0xc(,%eax,4),%edi
46694a:	8b 46 0c             	mov    0xc(%esi),%eax
46694d:	33 c1                	xor    %ecx,%eax
46694f:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
466952:	89 04 37             	mov    %eax,(%edi,%esi,1)
466955:	8b 7d 88             	mov    -0x78(%ebp),%edi
466958:	8d 04 8d 00 00 00 00 	lea    0x0(,%ecx,4),%eax
46695f:	83 c0 10             	add    $0x10,%eax
466962:	8b 8f 18 01 00 00    	mov    0x118(%edi),%ecx
466968:	89 45 80             	mov    %eax,-0x80(%ebp)
46696b:	8b 87 1c 01 00 00    	mov    0x11c(%edi),%eax
466971:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
466974:	8b 45 80             	mov    -0x80(%ebp),%eax
466977:	03 c6                	add    %esi,%eax
466979:	3b c1                	cmp    %ecx,%eax
46697b:	0f 84 cc 00 00 00    	je     0x466a4d
466981:	8b 45 90             	mov    -0x70(%ebp),%eax
466984:	83 f8 18             	cmp    $0x18,%eax
466987:	75 19                	jne    0x4669a2
466989:	8b 46 24             	mov    0x24(%esi),%eax
46698c:	33 46 10             	xor    0x10(%esi),%eax
46698f:	8b 4e 14             	mov    0x14(%esi),%ecx
466992:	33 c8                	xor    %eax,%ecx
466994:	89 46 28             	mov    %eax,0x28(%esi)
466997:	89 4e 2c             	mov    %ecx,0x2c(%esi)
46699a:	66 0f 3a 22 c9 03    	pinsrd $0x3,%ecx,%xmm1
4669a0:	eb 45                	jmp    0x4669e7
4669a2:	83 f8 20             	cmp    $0x20,%eax
4669a5:	75 39                	jne    0x4669e0
4669a7:	66 0f 3a 22 4e 2c 03 	pinsrd $0x3,0x2c(%esi),%xmm1
4669ae:	8b 46 14             	mov    0x14(%esi),%eax
4669b1:	66 0f 3a df c1 00    	aeskeygenassist $0x0,%xmm1,%xmm0
4669b7:	66 0f 3a 16 c1 02    	pextrd $0x2,%xmm0,%ecx
4669bd:	33 4e 10             	xor    0x10(%esi),%ecx
4669c0:	33 c1                	xor    %ecx,%eax
4669c2:	89 4e 30             	mov    %ecx,0x30(%esi)
4669c5:	8b 4e 18             	mov    0x18(%esi),%ecx
4669c8:	33 c8                	xor    %eax,%ecx
4669ca:	89 46 34             	mov    %eax,0x34(%esi)
4669cd:	8b 46 1c             	mov    0x1c(%esi),%eax
4669d0:	33 c1                	xor    %ecx,%eax
4669d2:	89 4e 38             	mov    %ecx,0x38(%esi)
4669d5:	89 46 3c             	mov    %eax,0x3c(%esi)
4669d8:	66 0f 3a 22 c8 03    	pinsrd $0x3,%eax,%xmm1
4669de:	eb 07                	jmp    0x4669e7
4669e0:	66 0f 3a 22 4e 1c 03 	pinsrd $0x3,0x1c(%esi),%xmm1
4669e7:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
4669ea:	8b 7d 8c             	mov    -0x74(%ebp),%edi
4669ed:	66 0f 3a df c1 00    	aeskeygenassist $0x0,%xmm1,%xmm0
4669f3:	8d 04 8d 00 00 00 00 	lea    0x0(,%ecx,4),%eax
4669fa:	03 f0                	add    %eax,%esi
4669fc:	66 0f 3a 16 c1 03    	pextrd $0x3,%xmm0,%ecx
466a02:	33 0a                	xor    (%edx),%ecx
466a04:	83 c2 04             	add    $0x4,%edx
466a07:	33 0e                	xor    (%esi),%ecx
466a09:	89 0c 30             	mov    %ecx,(%eax,%esi,1)
466a0c:	8b 46 04             	mov    0x4(%esi),%eax
466a0f:	33 c1                	xor    %ecx,%eax
466a11:	8d 0c bd 00 00 00 00 	lea    0x0(,%edi,4),%ecx
466a18:	89 44 31 04          	mov    %eax,0x4(%ecx,%esi,1)
466a1c:	8b 4e 08             	mov    0x8(%esi),%ecx
466a1f:	33 c8                	xor    %eax,%ecx
466a21:	89 4c be 08          	mov    %ecx,0x8(%esi,%edi,4)
466a25:	8b 46 0c             	mov    0xc(%esi),%eax
466a28:	33 c1                	xor    %ecx,%eax
466a2a:	89 44 be 0c          	mov    %eax,0xc(%esi,%edi,4)
466a2e:	8b 7d 88             	mov    -0x78(%ebp),%edi
466a31:	8b 87 1c 01 00 00    	mov    0x11c(%edi),%eax
466a37:	8b 8f 18 01 00 00    	mov    0x118(%edi),%ecx
466a3d:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
466a40:	8b 45 80             	mov    -0x80(%ebp),%eax
466a43:	03 c6                	add    %esi,%eax
466a45:	3b c1                	cmp    %ecx,%eax
466a47:	0f 85 34 ff ff ff    	jne    0x466981
466a4d:	8b 47 04             	mov    0x4(%edi),%eax
466a50:	8b 70 1c             	mov    0x1c(%eax),%esi
466a53:	8b ce                	mov    %esi,%ecx
466a55:	ff 15 d4 e2 49 00    	call   *0x49e2d4
466a5b:	8d 4f 04             	lea    0x4(%edi),%ecx
466a5e:	ff d6                	call   *%esi
466a60:	84 c0                	test   %al,%al
466a62:	0f 85 f2 08 00 00    	jne    0x46735a
466a68:	8b 7d 88             	mov    -0x78(%ebp),%edi
466a6b:	b9 04 00 00 00       	mov    $0x4,%ecx
466a70:	8b 47 10             	mov    0x10(%edi),%eax
466a73:	8b 97 1c 01 00 00    	mov    0x11c(%edi),%edx
466a79:	03 c0                	add    %eax,%eax
466a7b:	0f 10 04 c2          	movups (%edx,%eax,8),%xmm0
466a7f:	0f 10 0a             	movups (%edx),%xmm1
466a82:	0f 11 02             	movups %xmm0,(%edx)
466a85:	0f 11 0c c2          	movups %xmm1,(%edx,%eax,8)
466a89:	8b 47 10             	mov    0x10(%edi),%eax
466a8c:	8d 04 85 fc ff ff ff 	lea    -0x4(,%eax,4),%eax
466a93:	3b c1                	cmp    %ecx,%eax
466a95:	76 27                	jbe    0x466abe
466a97:	66 0f 1f 84 00 00 00 	nopw   0x0(%eax,%eax,1)
466a9e:	00 00
466aa0:	66 0f 38 db 04 82    	aesimc (%edx,%eax,4),%xmm0
466aa6:	66 0f 38 db 0c 8a    	aesimc (%edx,%ecx,4),%xmm1
466aac:	0f 11 04 8a          	movups %xmm0,(%edx,%ecx,4)
466ab0:	83 c1 04             	add    $0x4,%ecx
466ab3:	0f 11 0c 82          	movups %xmm1,(%edx,%eax,4)
466ab7:	83 e8 04             	sub    $0x4,%eax
466aba:	3b c8                	cmp    %eax,%ecx
466abc:	72 e2                	jb     0x466aa0
466abe:	66 0f 38 db 04 8a    	aesimc (%edx,%ecx,4),%xmm0
466ac4:	0f 11 04 8a          	movups %xmm0,(%edx,%ecx,4)
466ac8:	e9 8d 08 00 00       	jmp    0x46735a
466acd:	8b 45 8c             	mov    -0x74(%ebp),%eax
466ad0:	8d 0c 85 00 00 00 00 	lea    0x0(,%eax,4),%ecx
466ad7:	89 4d 94             	mov    %ecx,-0x6c(%ebp)
466ada:	85 d2                	test   %edx,%edx
466adc:	74 68                	je     0x466b46
466ade:	85 f6                	test   %esi,%esi
466ae0:	75 0d                	jne    0x466aef
466ae2:	e8 4e 34 01 00       	call   0x479f35
466ae7:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
466aed:	eb 4c                	jmp    0x466b3b
466aef:	8b 45 80             	mov    -0x80(%ebp),%eax
466af2:	85 c0                	test   %eax,%eax
466af4:	74 11                	je     0x466b07
466af6:	3b ca                	cmp    %edx,%ecx
466af8:	72 0d                	jb     0x466b07
466afa:	52                   	push   %edx
466afb:	50                   	push   %eax
466afc:	56                   	push   %esi
466afd:	e8 1e 4b 00 00       	call   0x46b620
466b02:	83 c4 0c             	add    $0xc,%esp
466b05:	eb 39                	jmp    0x466b40
466b07:	51                   	push   %ecx
466b08:	6a 00                	push   $0x0
466b0a:	56                   	push   %esi
466b0b:	e8 a0 50 00 00       	call   0x46bbb0
466b10:	83 c4 0c             	add    $0xc,%esp
466b13:	83 7d 80 00          	cmpl   $0x0,-0x80(%ebp)
466b17:	75 0d                	jne    0x466b26
466b19:	e8 17 34 01 00       	call   0x479f35
466b1e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
466b24:	eb 15                	jmp    0x466b3b
466b26:	8b 55 90             	mov    -0x70(%ebp),%edx
466b29:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
466b2c:	3b ca                	cmp    %edx,%ecx
466b2e:	73 16                	jae    0x466b46
466b30:	e8 00 34 01 00       	call   0x479f35
466b35:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
466b3b:	e8 e1 2a 01 00       	call   0x479621
466b40:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
466b43:	8b 55 90             	mov    -0x70(%ebp),%edx
466b46:	2b ca                	sub    %edx,%ecx
466b48:	8d 04 32             	lea    (%edx,%esi,1),%eax
466b4b:	51                   	push   %ecx
466b4c:	6a 00                	push   $0x0
466b4e:	50                   	push   %eax
466b4f:	e8 5c 50 00 00       	call   0x46bbb0
466b54:	8b 45 90             	mov    -0x70(%ebp),%eax
466b57:	83 c4 0c             	add    $0xc,%esp
466b5a:	8d 48 03             	lea    0x3(%eax),%ecx
466b5d:	3b c8                	cmp    %eax,%ecx
466b5f:	0f 82 15 08 00 00    	jb     0x46737a
466b65:	83 e1 fc             	and    $0xfffffffc,%ecx
466b68:	8b d6                	mov    %esi,%edx
466b6a:	51                   	push   %ecx
466b6b:	8b ce                	mov    %esi,%ecx
466b6d:	e8 8e f6 fe ff       	call   0x456200
466b72:	8b 45 8c             	mov    -0x74(%ebp),%eax
466b75:	83 c4 04             	add    $0x4,%esp
466b78:	c1 e0 02             	shl    $0x2,%eax
466b7b:	89 45 94             	mov    %eax,-0x6c(%ebp)
466b7e:	c7 45 80 38 e8 4a 00 	movl   $0x4ae838,-0x80(%ebp)
466b85:	8b 4c 30 fc          	mov    -0x4(%eax,%esi,1),%ecx
466b89:	8b c1                	mov    %ecx,%eax
466b8b:	c1 e8 10             	shr    $0x10,%eax
466b8e:	0f b6 c0             	movzbl %al,%eax
466b91:	0f b6 90 60 e8 4a 00 	movzbl 0x4ae860(%eax),%edx
466b98:	8b c1                	mov    %ecx,%eax
466b9a:	c1 e8 08             	shr    $0x8,%eax
466b9d:	83 f2 01             	xor    $0x1,%edx
466ba0:	0f b6 c0             	movzbl %al,%eax
466ba3:	c1 e2 08             	shl    $0x8,%edx
466ba6:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466bad:	33 d0                	xor    %eax,%edx
466baf:	0f b6 c1             	movzbl %cl,%eax
466bb2:	c1 e9 18             	shr    $0x18,%ecx
466bb5:	c1 e2 08             	shl    $0x8,%edx
466bb8:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466bbf:	33 d0                	xor    %eax,%edx
466bc1:	0f b6 81 60 e8 4a 00 	movzbl 0x4ae860(%ecx),%eax
466bc8:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
466bcb:	c1 e2 08             	shl    $0x8,%edx
466bce:	33 d0                	xor    %eax,%edx
466bd0:	33 16                	xor    (%esi),%edx
466bd2:	89 14 31             	mov    %edx,(%ecx,%esi,1)
466bd5:	8b 46 04             	mov    0x4(%esi),%eax
466bd8:	33 c2                	xor    %edx,%eax
466bda:	8b d1                	mov    %ecx,%edx
466bdc:	89 44 32 04          	mov    %eax,0x4(%edx,%esi,1)
466be0:	8b 4e 08             	mov    0x8(%esi),%ecx
466be3:	33 c8                	xor    %eax,%ecx
466be5:	8b 45 8c             	mov    -0x74(%ebp),%eax
466be8:	8d 3c 85 08 00 00 00 	lea    0x8(,%eax,4),%edi
466bef:	89 4c 86 08          	mov    %ecx,0x8(%esi,%eax,4)
466bf3:	89 bd 7c ff ff ff    	mov    %edi,-0x84(%ebp)
466bf9:	8d 3c 85 0c 00 00 00 	lea    0xc(,%eax,4),%edi
466c00:	8b 46 0c             	mov    0xc(%esi),%eax
466c03:	33 c1                	xor    %ecx,%eax
466c05:	89 bd 78 ff ff ff    	mov    %edi,-0x88(%ebp)
466c0b:	89 04 37             	mov    %eax,(%edi,%esi,1)
466c0e:	8b 7d 88             	mov    -0x78(%ebp),%edi
466c11:	8b 8f 1c 01 00 00    	mov    0x11c(%edi),%ecx
466c17:	8b 87 18 01 00 00    	mov    0x118(%edi),%eax
466c1d:	89 4d 84             	mov    %ecx,-0x7c(%ebp)
466c20:	8d 0c 81             	lea    (%ecx,%eax,4),%ecx
466c23:	8d 42 10             	lea    0x10(%edx),%eax
466c26:	03 c6                	add    %esi,%eax
466c28:	3b c1                	cmp    %ecx,%eax
466c2a:	0f 84 27 01 00 00    	je     0x466d57
466c30:	8b 45 90             	mov    -0x70(%ebp),%eax
466c33:	83 f8 18             	cmp    $0x18,%eax
466c36:	75 13                	jne    0x466c4b
466c38:	8b 4e 24             	mov    0x24(%esi),%ecx
466c3b:	33 4e 10             	xor    0x10(%esi),%ecx
466c3e:	8b 46 14             	mov    0x14(%esi),%eax
466c41:	33 c1                	xor    %ecx,%eax
466c43:	89 4e 28             	mov    %ecx,0x28(%esi)
466c46:	89 46 2c             	mov    %eax,0x2c(%esi)
466c49:	eb 6c                	jmp    0x466cb7
466c4b:	83 f8 20             	cmp    $0x20,%eax
466c4e:	75 67                	jne    0x466cb7
466c50:	8b 4e 2c             	mov    0x2c(%esi),%ecx
466c53:	8b c1                	mov    %ecx,%eax
466c55:	c1 e8 18             	shr    $0x18,%eax
466c58:	0f b6 90 60 e8 4a 00 	movzbl 0x4ae860(%eax),%edx
466c5f:	8b c1                	mov    %ecx,%eax
466c61:	c1 e8 10             	shr    $0x10,%eax
466c64:	0f b6 c0             	movzbl %al,%eax
466c67:	c1 e2 08             	shl    $0x8,%edx
466c6a:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466c71:	33 d0                	xor    %eax,%edx
466c73:	8b c1                	mov    %ecx,%eax
466c75:	c1 e8 08             	shr    $0x8,%eax
466c78:	0f b6 c0             	movzbl %al,%eax
466c7b:	c1 e2 08             	shl    $0x8,%edx
466c7e:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466c85:	33 d0                	xor    %eax,%edx
466c87:	0f b6 c1             	movzbl %cl,%eax
466c8a:	8b 4e 18             	mov    0x18(%esi),%ecx
466c8d:	c1 e2 08             	shl    $0x8,%edx
466c90:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466c97:	33 d0                	xor    %eax,%edx
466c99:	8b 46 14             	mov    0x14(%esi),%eax
466c9c:	33 56 10             	xor    0x10(%esi),%edx
466c9f:	33 c2                	xor    %edx,%eax
466ca1:	89 56 30             	mov    %edx,0x30(%esi)
466ca4:	8b 55 94             	mov    -0x6c(%ebp),%edx
466ca7:	33 c8                	xor    %eax,%ecx
466ca9:	89 46 34             	mov    %eax,0x34(%esi)
466cac:	8b 46 1c             	mov    0x1c(%esi),%eax
466caf:	33 c1                	xor    %ecx,%eax
466cb1:	89 4e 38             	mov    %ecx,0x38(%esi)
466cb4:	89 46 3c             	mov    %eax,0x3c(%esi)
466cb7:	03 f2                	add    %edx,%esi
466cb9:	8b 4c 32 fc          	mov    -0x4(%edx,%esi,1),%ecx
466cbd:	8b c1                	mov    %ecx,%eax
466cbf:	c1 e8 10             	shr    $0x10,%eax
466cc2:	0f b6 c0             	movzbl %al,%eax
466cc5:	0f b6 90 60 e8 4a 00 	movzbl 0x4ae860(%eax),%edx
466ccc:	8b c1                	mov    %ecx,%eax
466cce:	c1 e8 08             	shr    $0x8,%eax
466cd1:	0f b6 c0             	movzbl %al,%eax
466cd4:	c1 e2 08             	shl    $0x8,%edx
466cd7:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466cde:	33 d0                	xor    %eax,%edx
466ce0:	0f b6 c1             	movzbl %cl,%eax
466ce3:	c1 e9 18             	shr    $0x18,%ecx
466ce6:	c1 e2 08             	shl    $0x8,%edx
466ce9:	0f b6 80 60 e8 4a 00 	movzbl 0x4ae860(%eax),%eax
466cf0:	33 d0                	xor    %eax,%edx
466cf2:	0f b6 81 60 e8 4a 00 	movzbl 0x4ae860(%ecx),%eax
466cf9:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
466cfc:	c1 e2 08             	shl    $0x8,%edx
466cff:	33 d0                	xor    %eax,%edx
466d01:	8b 45 80             	mov    -0x80(%ebp),%eax
466d04:	33 16                	xor    (%esi),%edx
466d06:	33 10                	xor    (%eax),%edx
466d08:	83 c0 04             	add    $0x4,%eax
466d0b:	89 14 31             	mov    %edx,(%ecx,%esi,1)
466d0e:	89 45 80             	mov    %eax,-0x80(%ebp)
466d11:	8b 46 04             	mov    0x4(%esi),%eax
466d14:	33 c2                	xor    %edx,%eax
466d16:	8b d1                	mov    %ecx,%edx
466d18:	89 44 32 04          	mov    %eax,0x4(%edx,%esi,1)
466d1c:	8b 4e 08             	mov    0x8(%esi),%ecx
466d1f:	33 c8                	xor    %eax,%ecx
466d21:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
466d27:	89 0c 30             	mov    %ecx,(%eax,%esi,1)
466d2a:	8b 46 0c             	mov    0xc(%esi),%eax
466d2d:	33 c1                	xor    %ecx,%eax
466d2f:	8b 8d 78 ff ff ff    	mov    -0x88(%ebp),%ecx
466d35:	89 04 31             	mov    %eax,(%ecx,%esi,1)
466d38:	8b 8f 1c 01 00 00    	mov    0x11c(%edi),%ecx
466d3e:	8b 87 18 01 00 00    	mov    0x118(%edi),%eax
466d44:	89 4d 84             	mov    %ecx,-0x7c(%ebp)
466d47:	8d 0c 81             	lea    (%ecx,%eax,4),%ecx
466d4a:	8d 42 10             	lea    0x10(%edx),%eax
466d4d:	03 c6                	add    %esi,%eax
466d4f:	3b c1                	cmp    %ecx,%eax
466d51:	0f 85 d9 fe ff ff    	jne    0x466c30
466d57:	8b 47 04             	mov    0x4(%edi),%eax
466d5a:	8b 70 1c             	mov    0x1c(%eax),%esi
466d5d:	8b ce                	mov    %esi,%ecx
466d5f:	ff 15 d4 e2 49 00    	call   *0x49e2d4
466d65:	8d 4f 04             	lea    0x4(%edi),%ecx
466d68:	ff d6                	call   *%esi
466d6a:	84 c0                	test   %al,%al
466d6c:	0f 84 a4 00 00 00    	je     0x466e16
466d72:	80 3d 48 9e 4c 00 00 	cmpb   $0x0,0x4c9e48
466d79:	75 6e                	jne    0x466de9
466d7b:	33 ff                	xor    %edi,%edi
466d7d:	0f 1f 00             	nopl   (%eax)
466d80:	0f b6 97 60 e8 4a 00 	movzbl 0x4ae860(%edi),%edx
466d87:	8b ca                	mov    %edx,%ecx
466d89:	8b c2                	mov    %edx,%eax
466d8b:	c1 e9 07             	shr    $0x7,%ecx
466d8e:	69 f1 00 00 00 1b    	imul   $0x1b000000,%ecx,%esi
466d94:	c1 e0 19             	shl    $0x19,%eax
466d97:	69 c9 1b 01 00 00    	imul   $0x11b,%ecx,%ecx
466d9d:	33 f0                	xor    %eax,%esi
466d9f:	8b c2                	mov    %edx,%eax
466da1:	c1 e0 08             	shl    $0x8,%eax
466da4:	0b c2                	or     %edx,%eax
466da6:	c1 e0 08             	shl    $0x8,%eax
466da9:	0b f0                	or     %eax,%esi
466dab:	8d 04 12             	lea    (%edx,%edx,1),%eax
466dae:	33 c8                	xor    %eax,%ecx
466db0:	33 c0                	xor    %eax,%eax
466db2:	33 ca                	xor    %edx,%ecx
466db4:	0b c6                	or     %esi,%eax
466db6:	0b ce                	or     %esi,%ecx
466db8:	89 04 fd b0 8c 4c 00 	mov    %eax,0x4c8cb0(,%edi,8)
466dbf:	89 0c fd b4 8c 4c 00 	mov    %ecx,0x4c8cb4(,%edi,8)
466dc6:	47                   	inc    %edi
466dc7:	81 ff 00 01 00 00    	cmp    $0x100,%edi
466dcd:	7c b1                	jl     0x466d80
466dcf:	0f 57 c0             	xorps  %xmm0,%xmm0
466dd2:	66 0f 13 05 b8 94 4c 	movlpd %xmm0,0x4c94b8
466dd9:	00
466dda:	66 0f 13 05 b0 94 4c 	movlpd %xmm0,0x4c94b0
466de1:	00
466de2:	c6 05 48 9e 4c 00 01 	movb   $0x1,0x4c9e48
466de9:	8b 75 84             	mov    -0x7c(%ebp),%esi