Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Feb 2011 10:48:30 +0100
From:      Alexandre Martins <alexandre.martins@netasq.com>
To:        freebsd-current@freebsd.org
Subject:   OpenSSL 1.0.0d for Freebsd HEAD
Message-ID:  <201102141048.34294.alexandre.martins@netasq.com>
In-Reply-To: <201102141044.11144.alexandre.martins@netasq.com>
References:  <201102140935.22490.alexandre.martins@netasq.com> <201102141044.11144.alexandre.martins@netasq.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1429621.SlMcb6ZHAa
Content-Type: multipart/mixed;
  boundary="Boundary-01=_upPWNzFiu0QAi6n"
Content-Transfer-Encoding: 7bit


--Boundary-01=_upPWNzFiu0QAi6n
Content-Type: Text/Plain;
  charset="iso-8859-15"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Dears,

=46or those interested in testing, you can find a patch that add OpenSSL 1.=
0d
to head.

We use it successfully since several months.

This patch purpose to add some assembly optimizations for i386 and amd64
platform.

After apply this patch, you *MUST* extract the source code of openssl
1.0.0d in crypto/openssl directory

Regards

=2D-=20
Alexandre Martins
Research engineer
NETASQ

--Boundary-01=_upPWNzFiu0QAi6n
Content-Type: text/x-patch; charset="ISO-8859-1";
	name="patch-head20110211-openssl1.0.0d"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="patch-head20110211-openssl1.0.0d"

Index: secure/usr.bin/openssl/Makefile.man
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/usr.bin/openssl/Makefile.man	(revision 218560)
+++ secure/usr.bin/openssl/Makefile.man	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/usr.bin/openssl/Makefile.man,v 1.5.12.1 2010/02/10 =
00:26:20 kensmith Exp $
 # DO NOT EDIT: generated from man-makefile-update target
 MAN+=3D CA.pl.1
 MAN+=3D asn1parse.1
Index: secure/usr.bin/openssl/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/usr.bin/openssl/Makefile	(revision 218560)
+++ secure/usr.bin/openssl/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/usr.bin/openssl/Makefile,v 1.25.10.1 2010/02/10 00:=
26:20 kensmith Exp $
=20
 PROG=3D	openssl
=20
@@ -15,10 +15,11 @@
 SRCS+=3D	app_rand.c apps.c asn1pars.c ca.c ciphers.c cms.c crl.c crl2p7.c \
 	dgst.c dh.c dhparam.c dsa.c dsaparam.c ec.c ecparam.c enc.c \
 	engine.c errstr.c \
=2D	gendh.c gendsa.c genrsa.c nseq.c ocsp.c openssl.c passwd.c \
=2D	pkcs12.c pkcs7.c pkcs8.c prime.c rand.c req.c rsa.c rsautl.c s_cb.c \
+	gendh.c gendsa.c genpkey.c genrsa.c nseq.c ocsp.c openssl.c passwd.c \
+	pkcs12.c pkcs7.c pkcs8.c pkey.c pkeyparam.c pkeyutl.c prime.c \
+	rand.c req.c rsa.c rsautl.c s_cb.c \
 	s_client.c s_server.c s_socket.c s_time.c sess_id.c smime.c \
=2D	speed.c spkac.c verify.c version.c x509.c
+	speed.c spkac.c ts.c verify.c version.c x509.c
=20
 .include <bsd.prog.mk>
=20
Index: secure/lib/libcrypto/opensslconf-ia64.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/opensslconf-ia64.h	(revision 218560)
+++ secure/lib/libcrypto/opensslconf-ia64.h	(working copy)
@@ -1,4 +1,4 @@
=2D/* $FreeBSD$ */
+/* $FreeBSD: src/secure/lib/libcrypto/opensslconf-ia64.h,v 1.6.10.1 2010/0=
2/10 00:26:20 kensmith Exp $ */
 /* opensslconf.h */
 /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
=20
@@ -6,10 +6,6 @@
 #ifndef OPENSSL_DOING_MAKEDEPEND
=20
 /* Disabled by default in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_CAMELLIA
=2D# define OPENSSL_NO_CAMELLIA
=2D#endif
=2D/* Disabled by default in OpenSSL 0.9.8. */
 #ifndef OPENSSL_NO_CMS
 # define OPENSSL_NO_CMS
 #endif
@@ -21,6 +17,11 @@
 #ifndef OPENSSL_NO_JPAKE
 # define OPENSSL_NO_JPAKE
 #endif
+
+/* Disabled by default in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_CAMELLIA
+# define OPENSSL_NO_CAMELLIA
+#endif
 /* libgmp is not in the FreeBSD base system. */
 #ifndef OPENSSL_NO_GMP
 # define OPENSSL_NO_GMP
Index: secure/lib/libcrypto/obj_mac.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/obj_mac.h	(revision 0)
+++ secure/lib/libcrypto/obj_mac.h	(revision 0)
@@ -0,0 +1,3914 @@
+/* crypto/objects/obj_mac.h */
+
+/* THIS FILE IS GENERATED FROM objects.txt by objects.pl via the
+ * following command:
+ * perl objects.pl objects.txt obj_mac.num obj_mac.h
+ */
+
+/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com)
+ * All rights reserved.
+ *
+ * This package is an SSL implementation written
+ * by Eric Young (eay@cryptsoft.com).
+ * The implementation was written so as to conform with Netscapes SSL.
+ *=20
+ * This library is free for commercial and non-commercial use as long as
+ * the following conditions are aheared to.  The following conditions
+ * apply to all code found in this distribution, be it the RC4, RSA,
+ * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
+ * included with this distribution is covered by the same copyright terms
+ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
+ *=20
+ * Copyright remains Eric Young's, and as such any Copyright notices in
+ * the code are not to be removed.
+ * If this package is used in a product, Eric Young should be given attrib=
ution
+ * as the author of the parts of the library used.
+ * This can be in the form of a textual message at program startup or
+ * in documentation (online or textual) provided with the package.
+ *=20
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *    "This product includes cryptographic software written by
+ *     Eric Young (eay@cryptsoft.com)"
+ *    The word 'cryptographic' can be left out if the rouines from the lib=
rary
+ *    being used are not cryptographic related :-).
+ * 4. If you include any Windows specific code (or a derivative thereof) f=
rom=20
+ *    the apps directory (application code) you must include an acknowledg=
ement:
+ *    "This product includes software written by Tim Hudson (tjh@cryptsoft=
=2Ecom)"
+ *=20
+ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURP=
OSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENT=
IAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STR=
ICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY W=
AY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *=20
+ * The licence and distribution terms for any publically available version=
 or
+ * derivative of this code cannot be changed.  i.e. this code cannot simpl=
y be
+ * copied and put under another distribution licence
+ * [including the GNU Public Licence.]
+ */
+
+#define SN_undef			"UNDEF"
+#define LN_undef			"undefined"
+#define NID_undef			0
+#define OBJ_undef			0L
+
+#define SN_itu_t		"ITU-T"
+#define LN_itu_t		"itu-t"
+#define NID_itu_t		645
+#define OBJ_itu_t		0L
+
+#define NID_ccitt		404
+#define OBJ_ccitt		OBJ_itu_t
+
+#define SN_iso		"ISO"
+#define LN_iso		"iso"
+#define NID_iso		181
+#define OBJ_iso		1L
+
+#define SN_joint_iso_itu_t		"JOINT-ISO-ITU-T"
+#define LN_joint_iso_itu_t		"joint-iso-itu-t"
+#define NID_joint_iso_itu_t		646
+#define OBJ_joint_iso_itu_t		2L
+
+#define NID_joint_iso_ccitt		393
+#define OBJ_joint_iso_ccitt		OBJ_joint_iso_itu_t
+
+#define SN_member_body		"member-body"
+#define LN_member_body		"ISO Member Body"
+#define NID_member_body		182
+#define OBJ_member_body		OBJ_iso,2L
+
+#define SN_identified_organization		"identified-organization"
+#define NID_identified_organization		676
+#define OBJ_identified_organization		OBJ_iso,3L
+
+#define SN_hmac_md5		"HMAC-MD5"
+#define LN_hmac_md5		"hmac-md5"
+#define NID_hmac_md5		780
+#define OBJ_hmac_md5		OBJ_identified_organization,6L,1L,5L,5L,8L,1L,1L
+
+#define SN_hmac_sha1		"HMAC-SHA1"
+#define LN_hmac_sha1		"hmac-sha1"
+#define NID_hmac_sha1		781
+#define OBJ_hmac_sha1		OBJ_identified_organization,6L,1L,5L,5L,8L,1L,2L
+
+#define SN_certicom_arc		"certicom-arc"
+#define NID_certicom_arc		677
+#define OBJ_certicom_arc		OBJ_identified_organization,132L
+
+#define SN_international_organizations		"international-organizations"
+#define LN_international_organizations		"International Organizations"
+#define NID_international_organizations		647
+#define OBJ_international_organizations		OBJ_joint_iso_itu_t,23L
+
+#define SN_wap		"wap"
+#define NID_wap		678
+#define OBJ_wap		OBJ_international_organizations,43L
+
+#define SN_wap_wsg		"wap-wsg"
+#define NID_wap_wsg		679
+#define OBJ_wap_wsg		OBJ_wap,1L
+
+#define SN_selected_attribute_types		"selected-attribute-types"
+#define LN_selected_attribute_types		"Selected Attribute Types"
+#define NID_selected_attribute_types		394
+#define OBJ_selected_attribute_types		OBJ_joint_iso_itu_t,5L,1L,5L
+
+#define SN_clearance		"clearance"
+#define NID_clearance		395
+#define OBJ_clearance		OBJ_selected_attribute_types,55L
+
+#define SN_ISO_US		"ISO-US"
+#define LN_ISO_US		"ISO US Member Body"
+#define NID_ISO_US		183
+#define OBJ_ISO_US		OBJ_member_body,840L
+
+#define SN_X9_57		"X9-57"
+#define LN_X9_57		"X9.57"
+#define NID_X9_57		184
+#define OBJ_X9_57		OBJ_ISO_US,10040L
+
+#define SN_X9cm		"X9cm"
+#define LN_X9cm		"X9.57 CM ?"
+#define NID_X9cm		185
+#define OBJ_X9cm		OBJ_X9_57,4L
+
+#define SN_dsa		"DSA"
+#define LN_dsa		"dsaEncryption"
+#define NID_dsa		116
+#define OBJ_dsa		OBJ_X9cm,1L
+
+#define SN_dsaWithSHA1		"DSA-SHA1"
+#define LN_dsaWithSHA1		"dsaWithSHA1"
+#define NID_dsaWithSHA1		113
+#define OBJ_dsaWithSHA1		OBJ_X9cm,3L
+
+#define SN_ansi_X9_62		"ansi-X9-62"
+#define LN_ansi_X9_62		"ANSI X9.62"
+#define NID_ansi_X9_62		405
+#define OBJ_ansi_X9_62		OBJ_ISO_US,10045L
+
+#define OBJ_X9_62_id_fieldType		OBJ_ansi_X9_62,1L
+
+#define SN_X9_62_prime_field		"prime-field"
+#define NID_X9_62_prime_field		406
+#define OBJ_X9_62_prime_field		OBJ_X9_62_id_fieldType,1L
+
+#define SN_X9_62_characteristic_two_field		"characteristic-two-field"
+#define NID_X9_62_characteristic_two_field		407
+#define OBJ_X9_62_characteristic_two_field		OBJ_X9_62_id_fieldType,2L
+
+#define SN_X9_62_id_characteristic_two_basis		"id-characteristic-two-basis"
+#define NID_X9_62_id_characteristic_two_basis		680
+#define OBJ_X9_62_id_characteristic_two_basis		OBJ_X9_62_characteristic_tw=
o_field,3L
+
+#define SN_X9_62_onBasis		"onBasis"
+#define NID_X9_62_onBasis		681
+#define OBJ_X9_62_onBasis		OBJ_X9_62_id_characteristic_two_basis,1L
+
+#define SN_X9_62_tpBasis		"tpBasis"
+#define NID_X9_62_tpBasis		682
+#define OBJ_X9_62_tpBasis		OBJ_X9_62_id_characteristic_two_basis,2L
+
+#define SN_X9_62_ppBasis		"ppBasis"
+#define NID_X9_62_ppBasis		683
+#define OBJ_X9_62_ppBasis		OBJ_X9_62_id_characteristic_two_basis,3L
+
+#define OBJ_X9_62_id_publicKeyType		OBJ_ansi_X9_62,2L
+
+#define SN_X9_62_id_ecPublicKey		"id-ecPublicKey"
+#define NID_X9_62_id_ecPublicKey		408
+#define OBJ_X9_62_id_ecPublicKey		OBJ_X9_62_id_publicKeyType,1L
+
+#define OBJ_X9_62_ellipticCurve		OBJ_ansi_X9_62,3L
+
+#define OBJ_X9_62_c_TwoCurve		OBJ_X9_62_ellipticCurve,0L
+
+#define SN_X9_62_c2pnb163v1		"c2pnb163v1"
+#define NID_X9_62_c2pnb163v1		684
+#define OBJ_X9_62_c2pnb163v1		OBJ_X9_62_c_TwoCurve,1L
+
+#define SN_X9_62_c2pnb163v2		"c2pnb163v2"
+#define NID_X9_62_c2pnb163v2		685
+#define OBJ_X9_62_c2pnb163v2		OBJ_X9_62_c_TwoCurve,2L
+
+#define SN_X9_62_c2pnb163v3		"c2pnb163v3"
+#define NID_X9_62_c2pnb163v3		686
+#define OBJ_X9_62_c2pnb163v3		OBJ_X9_62_c_TwoCurve,3L
+
+#define SN_X9_62_c2pnb176v1		"c2pnb176v1"
+#define NID_X9_62_c2pnb176v1		687
+#define OBJ_X9_62_c2pnb176v1		OBJ_X9_62_c_TwoCurve,4L
+
+#define SN_X9_62_c2tnb191v1		"c2tnb191v1"
+#define NID_X9_62_c2tnb191v1		688
+#define OBJ_X9_62_c2tnb191v1		OBJ_X9_62_c_TwoCurve,5L
+
+#define SN_X9_62_c2tnb191v2		"c2tnb191v2"
+#define NID_X9_62_c2tnb191v2		689
+#define OBJ_X9_62_c2tnb191v2		OBJ_X9_62_c_TwoCurve,6L
+
+#define SN_X9_62_c2tnb191v3		"c2tnb191v3"
+#define NID_X9_62_c2tnb191v3		690
+#define OBJ_X9_62_c2tnb191v3		OBJ_X9_62_c_TwoCurve,7L
+
+#define SN_X9_62_c2onb191v4		"c2onb191v4"
+#define NID_X9_62_c2onb191v4		691
+#define OBJ_X9_62_c2onb191v4		OBJ_X9_62_c_TwoCurve,8L
+
+#define SN_X9_62_c2onb191v5		"c2onb191v5"
+#define NID_X9_62_c2onb191v5		692
+#define OBJ_X9_62_c2onb191v5		OBJ_X9_62_c_TwoCurve,9L
+
+#define SN_X9_62_c2pnb208w1		"c2pnb208w1"
+#define NID_X9_62_c2pnb208w1		693
+#define OBJ_X9_62_c2pnb208w1		OBJ_X9_62_c_TwoCurve,10L
+
+#define SN_X9_62_c2tnb239v1		"c2tnb239v1"
+#define NID_X9_62_c2tnb239v1		694
+#define OBJ_X9_62_c2tnb239v1		OBJ_X9_62_c_TwoCurve,11L
+
+#define SN_X9_62_c2tnb239v2		"c2tnb239v2"
+#define NID_X9_62_c2tnb239v2		695
+#define OBJ_X9_62_c2tnb239v2		OBJ_X9_62_c_TwoCurve,12L
+
+#define SN_X9_62_c2tnb239v3		"c2tnb239v3"
+#define NID_X9_62_c2tnb239v3		696
+#define OBJ_X9_62_c2tnb239v3		OBJ_X9_62_c_TwoCurve,13L
+
+#define SN_X9_62_c2onb239v4		"c2onb239v4"
+#define NID_X9_62_c2onb239v4		697
+#define OBJ_X9_62_c2onb239v4		OBJ_X9_62_c_TwoCurve,14L
+
+#define SN_X9_62_c2onb239v5		"c2onb239v5"
+#define NID_X9_62_c2onb239v5		698
+#define OBJ_X9_62_c2onb239v5		OBJ_X9_62_c_TwoCurve,15L
+
+#define SN_X9_62_c2pnb272w1		"c2pnb272w1"
+#define NID_X9_62_c2pnb272w1		699
+#define OBJ_X9_62_c2pnb272w1		OBJ_X9_62_c_TwoCurve,16L
+
+#define SN_X9_62_c2pnb304w1		"c2pnb304w1"
+#define NID_X9_62_c2pnb304w1		700
+#define OBJ_X9_62_c2pnb304w1		OBJ_X9_62_c_TwoCurve,17L
+
+#define SN_X9_62_c2tnb359v1		"c2tnb359v1"
+#define NID_X9_62_c2tnb359v1		701
+#define OBJ_X9_62_c2tnb359v1		OBJ_X9_62_c_TwoCurve,18L
+
+#define SN_X9_62_c2pnb368w1		"c2pnb368w1"
+#define NID_X9_62_c2pnb368w1		702
+#define OBJ_X9_62_c2pnb368w1		OBJ_X9_62_c_TwoCurve,19L
+
+#define SN_X9_62_c2tnb431r1		"c2tnb431r1"
+#define NID_X9_62_c2tnb431r1		703
+#define OBJ_X9_62_c2tnb431r1		OBJ_X9_62_c_TwoCurve,20L
+
+#define OBJ_X9_62_primeCurve		OBJ_X9_62_ellipticCurve,1L
+
+#define SN_X9_62_prime192v1		"prime192v1"
+#define NID_X9_62_prime192v1		409
+#define OBJ_X9_62_prime192v1		OBJ_X9_62_primeCurve,1L
+
+#define SN_X9_62_prime192v2		"prime192v2"
+#define NID_X9_62_prime192v2		410
+#define OBJ_X9_62_prime192v2		OBJ_X9_62_primeCurve,2L
+
+#define SN_X9_62_prime192v3		"prime192v3"
+#define NID_X9_62_prime192v3		411
+#define OBJ_X9_62_prime192v3		OBJ_X9_62_primeCurve,3L
+
+#define SN_X9_62_prime239v1		"prime239v1"
+#define NID_X9_62_prime239v1		412
+#define OBJ_X9_62_prime239v1		OBJ_X9_62_primeCurve,4L
+
+#define SN_X9_62_prime239v2		"prime239v2"
+#define NID_X9_62_prime239v2		413
+#define OBJ_X9_62_prime239v2		OBJ_X9_62_primeCurve,5L
+
+#define SN_X9_62_prime239v3		"prime239v3"
+#define NID_X9_62_prime239v3		414
+#define OBJ_X9_62_prime239v3		OBJ_X9_62_primeCurve,6L
+
+#define SN_X9_62_prime256v1		"prime256v1"
+#define NID_X9_62_prime256v1		415
+#define OBJ_X9_62_prime256v1		OBJ_X9_62_primeCurve,7L
+
+#define OBJ_X9_62_id_ecSigType		OBJ_ansi_X9_62,4L
+
+#define SN_ecdsa_with_SHA1		"ecdsa-with-SHA1"
+#define NID_ecdsa_with_SHA1		416
+#define OBJ_ecdsa_with_SHA1		OBJ_X9_62_id_ecSigType,1L
+
+#define SN_ecdsa_with_Recommended		"ecdsa-with-Recommended"
+#define NID_ecdsa_with_Recommended		791
+#define OBJ_ecdsa_with_Recommended		OBJ_X9_62_id_ecSigType,2L
+
+#define SN_ecdsa_with_Specified		"ecdsa-with-Specified"
+#define NID_ecdsa_with_Specified		792
+#define OBJ_ecdsa_with_Specified		OBJ_X9_62_id_ecSigType,3L
+
+#define SN_ecdsa_with_SHA224		"ecdsa-with-SHA224"
+#define NID_ecdsa_with_SHA224		793
+#define OBJ_ecdsa_with_SHA224		OBJ_ecdsa_with_Specified,1L
+
+#define SN_ecdsa_with_SHA256		"ecdsa-with-SHA256"
+#define NID_ecdsa_with_SHA256		794
+#define OBJ_ecdsa_with_SHA256		OBJ_ecdsa_with_Specified,2L
+
+#define SN_ecdsa_with_SHA384		"ecdsa-with-SHA384"
+#define NID_ecdsa_with_SHA384		795
+#define OBJ_ecdsa_with_SHA384		OBJ_ecdsa_with_Specified,3L
+
+#define SN_ecdsa_with_SHA512		"ecdsa-with-SHA512"
+#define NID_ecdsa_with_SHA512		796
+#define OBJ_ecdsa_with_SHA512		OBJ_ecdsa_with_Specified,4L
+
+#define OBJ_secg_ellipticCurve		OBJ_certicom_arc,0L
+
+#define SN_secp112r1		"secp112r1"
+#define NID_secp112r1		704
+#define OBJ_secp112r1		OBJ_secg_ellipticCurve,6L
+
+#define SN_secp112r2		"secp112r2"
+#define NID_secp112r2		705
+#define OBJ_secp112r2		OBJ_secg_ellipticCurve,7L
+
+#define SN_secp128r1		"secp128r1"
+#define NID_secp128r1		706
+#define OBJ_secp128r1		OBJ_secg_ellipticCurve,28L
+
+#define SN_secp128r2		"secp128r2"
+#define NID_secp128r2		707
+#define OBJ_secp128r2		OBJ_secg_ellipticCurve,29L
+
+#define SN_secp160k1		"secp160k1"
+#define NID_secp160k1		708
+#define OBJ_secp160k1		OBJ_secg_ellipticCurve,9L
+
+#define SN_secp160r1		"secp160r1"
+#define NID_secp160r1		709
+#define OBJ_secp160r1		OBJ_secg_ellipticCurve,8L
+
+#define SN_secp160r2		"secp160r2"
+#define NID_secp160r2		710
+#define OBJ_secp160r2		OBJ_secg_ellipticCurve,30L
+
+#define SN_secp192k1		"secp192k1"
+#define NID_secp192k1		711
+#define OBJ_secp192k1		OBJ_secg_ellipticCurve,31L
+
+#define SN_secp224k1		"secp224k1"
+#define NID_secp224k1		712
+#define OBJ_secp224k1		OBJ_secg_ellipticCurve,32L
+
+#define SN_secp224r1		"secp224r1"
+#define NID_secp224r1		713
+#define OBJ_secp224r1		OBJ_secg_ellipticCurve,33L
+
+#define SN_secp256k1		"secp256k1"
+#define NID_secp256k1		714
+#define OBJ_secp256k1		OBJ_secg_ellipticCurve,10L
+
+#define SN_secp384r1		"secp384r1"
+#define NID_secp384r1		715
+#define OBJ_secp384r1		OBJ_secg_ellipticCurve,34L
+
+#define SN_secp521r1		"secp521r1"
+#define NID_secp521r1		716
+#define OBJ_secp521r1		OBJ_secg_ellipticCurve,35L
+
+#define SN_sect113r1		"sect113r1"
+#define NID_sect113r1		717
+#define OBJ_sect113r1		OBJ_secg_ellipticCurve,4L
+
+#define SN_sect113r2		"sect113r2"
+#define NID_sect113r2		718
+#define OBJ_sect113r2		OBJ_secg_ellipticCurve,5L
+
+#define SN_sect131r1		"sect131r1"
+#define NID_sect131r1		719
+#define OBJ_sect131r1		OBJ_secg_ellipticCurve,22L
+
+#define SN_sect131r2		"sect131r2"
+#define NID_sect131r2		720
+#define OBJ_sect131r2		OBJ_secg_ellipticCurve,23L
+
+#define SN_sect163k1		"sect163k1"
+#define NID_sect163k1		721
+#define OBJ_sect163k1		OBJ_secg_ellipticCurve,1L
+
+#define SN_sect163r1		"sect163r1"
+#define NID_sect163r1		722
+#define OBJ_sect163r1		OBJ_secg_ellipticCurve,2L
+
+#define SN_sect163r2		"sect163r2"
+#define NID_sect163r2		723
+#define OBJ_sect163r2		OBJ_secg_ellipticCurve,15L
+
+#define SN_sect193r1		"sect193r1"
+#define NID_sect193r1		724
+#define OBJ_sect193r1		OBJ_secg_ellipticCurve,24L
+
+#define SN_sect193r2		"sect193r2"
+#define NID_sect193r2		725
+#define OBJ_sect193r2		OBJ_secg_ellipticCurve,25L
+
+#define SN_sect233k1		"sect233k1"
+#define NID_sect233k1		726
+#define OBJ_sect233k1		OBJ_secg_ellipticCurve,26L
+
+#define SN_sect233r1		"sect233r1"
+#define NID_sect233r1		727
+#define OBJ_sect233r1		OBJ_secg_ellipticCurve,27L
+
+#define SN_sect239k1		"sect239k1"
+#define NID_sect239k1		728
+#define OBJ_sect239k1		OBJ_secg_ellipticCurve,3L
+
+#define SN_sect283k1		"sect283k1"
+#define NID_sect283k1		729
+#define OBJ_sect283k1		OBJ_secg_ellipticCurve,16L
+
+#define SN_sect283r1		"sect283r1"
+#define NID_sect283r1		730
+#define OBJ_sect283r1		OBJ_secg_ellipticCurve,17L
+
+#define SN_sect409k1		"sect409k1"
+#define NID_sect409k1		731
+#define OBJ_sect409k1		OBJ_secg_ellipticCurve,36L
+
+#define SN_sect409r1		"sect409r1"
+#define NID_sect409r1		732
+#define OBJ_sect409r1		OBJ_secg_ellipticCurve,37L
+
+#define SN_sect571k1		"sect571k1"
+#define NID_sect571k1		733
+#define OBJ_sect571k1		OBJ_secg_ellipticCurve,38L
+
+#define SN_sect571r1		"sect571r1"
+#define NID_sect571r1		734
+#define OBJ_sect571r1		OBJ_secg_ellipticCurve,39L
+
+#define OBJ_wap_wsg_idm_ecid		OBJ_wap_wsg,4L
+
+#define SN_wap_wsg_idm_ecid_wtls1		"wap-wsg-idm-ecid-wtls1"
+#define NID_wap_wsg_idm_ecid_wtls1		735
+#define OBJ_wap_wsg_idm_ecid_wtls1		OBJ_wap_wsg_idm_ecid,1L
+
+#define SN_wap_wsg_idm_ecid_wtls3		"wap-wsg-idm-ecid-wtls3"
+#define NID_wap_wsg_idm_ecid_wtls3		736
+#define OBJ_wap_wsg_idm_ecid_wtls3		OBJ_wap_wsg_idm_ecid,3L
+
+#define SN_wap_wsg_idm_ecid_wtls4		"wap-wsg-idm-ecid-wtls4"
+#define NID_wap_wsg_idm_ecid_wtls4		737
+#define OBJ_wap_wsg_idm_ecid_wtls4		OBJ_wap_wsg_idm_ecid,4L
+
+#define SN_wap_wsg_idm_ecid_wtls5		"wap-wsg-idm-ecid-wtls5"
+#define NID_wap_wsg_idm_ecid_wtls5		738
+#define OBJ_wap_wsg_idm_ecid_wtls5		OBJ_wap_wsg_idm_ecid,5L
+
+#define SN_wap_wsg_idm_ecid_wtls6		"wap-wsg-idm-ecid-wtls6"
+#define NID_wap_wsg_idm_ecid_wtls6		739
+#define OBJ_wap_wsg_idm_ecid_wtls6		OBJ_wap_wsg_idm_ecid,6L
+
+#define SN_wap_wsg_idm_ecid_wtls7		"wap-wsg-idm-ecid-wtls7"
+#define NID_wap_wsg_idm_ecid_wtls7		740
+#define OBJ_wap_wsg_idm_ecid_wtls7		OBJ_wap_wsg_idm_ecid,7L
+
+#define SN_wap_wsg_idm_ecid_wtls8		"wap-wsg-idm-ecid-wtls8"
+#define NID_wap_wsg_idm_ecid_wtls8		741
+#define OBJ_wap_wsg_idm_ecid_wtls8		OBJ_wap_wsg_idm_ecid,8L
+
+#define SN_wap_wsg_idm_ecid_wtls9		"wap-wsg-idm-ecid-wtls9"
+#define NID_wap_wsg_idm_ecid_wtls9		742
+#define OBJ_wap_wsg_idm_ecid_wtls9		OBJ_wap_wsg_idm_ecid,9L
+
+#define SN_wap_wsg_idm_ecid_wtls10		"wap-wsg-idm-ecid-wtls10"
+#define NID_wap_wsg_idm_ecid_wtls10		743
+#define OBJ_wap_wsg_idm_ecid_wtls10		OBJ_wap_wsg_idm_ecid,10L
+
+#define SN_wap_wsg_idm_ecid_wtls11		"wap-wsg-idm-ecid-wtls11"
+#define NID_wap_wsg_idm_ecid_wtls11		744
+#define OBJ_wap_wsg_idm_ecid_wtls11		OBJ_wap_wsg_idm_ecid,11L
+
+#define SN_wap_wsg_idm_ecid_wtls12		"wap-wsg-idm-ecid-wtls12"
+#define NID_wap_wsg_idm_ecid_wtls12		745
+#define OBJ_wap_wsg_idm_ecid_wtls12		OBJ_wap_wsg_idm_ecid,12L
+
+#define SN_cast5_cbc		"CAST5-CBC"
+#define LN_cast5_cbc		"cast5-cbc"
+#define NID_cast5_cbc		108
+#define OBJ_cast5_cbc		OBJ_ISO_US,113533L,7L,66L,10L
+
+#define SN_cast5_ecb		"CAST5-ECB"
+#define LN_cast5_ecb		"cast5-ecb"
+#define NID_cast5_ecb		109
+
+#define SN_cast5_cfb64		"CAST5-CFB"
+#define LN_cast5_cfb64		"cast5-cfb"
+#define NID_cast5_cfb64		110
+
+#define SN_cast5_ofb64		"CAST5-OFB"
+#define LN_cast5_ofb64		"cast5-ofb"
+#define NID_cast5_ofb64		111
+
+#define LN_pbeWithMD5AndCast5_CBC		"pbeWithMD5AndCast5CBC"
+#define NID_pbeWithMD5AndCast5_CBC		112
+#define OBJ_pbeWithMD5AndCast5_CBC		OBJ_ISO_US,113533L,7L,66L,12L
+
+#define SN_id_PasswordBasedMAC		"id-PasswordBasedMAC"
+#define LN_id_PasswordBasedMAC		"password based MAC"
+#define NID_id_PasswordBasedMAC		782
+#define OBJ_id_PasswordBasedMAC		OBJ_ISO_US,113533L,7L,66L,13L
+
+#define SN_id_DHBasedMac		"id-DHBasedMac"
+#define LN_id_DHBasedMac		"Diffie-Hellman based MAC"
+#define NID_id_DHBasedMac		783
+#define OBJ_id_DHBasedMac		OBJ_ISO_US,113533L,7L,66L,30L
+
+#define SN_rsadsi		"rsadsi"
+#define LN_rsadsi		"RSA Data Security, Inc."
+#define NID_rsadsi		1
+#define OBJ_rsadsi		OBJ_ISO_US,113549L
+
+#define SN_pkcs		"pkcs"
+#define LN_pkcs		"RSA Data Security, Inc. PKCS"
+#define NID_pkcs		2
+#define OBJ_pkcs		OBJ_rsadsi,1L
+
+#define SN_pkcs1		"pkcs1"
+#define NID_pkcs1		186
+#define OBJ_pkcs1		OBJ_pkcs,1L
+
+#define LN_rsaEncryption		"rsaEncryption"
+#define NID_rsaEncryption		6
+#define OBJ_rsaEncryption		OBJ_pkcs1,1L
+
+#define SN_md2WithRSAEncryption		"RSA-MD2"
+#define LN_md2WithRSAEncryption		"md2WithRSAEncryption"
+#define NID_md2WithRSAEncryption		7
+#define OBJ_md2WithRSAEncryption		OBJ_pkcs1,2L
+
+#define SN_md4WithRSAEncryption		"RSA-MD4"
+#define LN_md4WithRSAEncryption		"md4WithRSAEncryption"
+#define NID_md4WithRSAEncryption		396
+#define OBJ_md4WithRSAEncryption		OBJ_pkcs1,3L
+
+#define SN_md5WithRSAEncryption		"RSA-MD5"
+#define LN_md5WithRSAEncryption		"md5WithRSAEncryption"
+#define NID_md5WithRSAEncryption		8
+#define OBJ_md5WithRSAEncryption		OBJ_pkcs1,4L
+
+#define SN_sha1WithRSAEncryption		"RSA-SHA1"
+#define LN_sha1WithRSAEncryption		"sha1WithRSAEncryption"
+#define NID_sha1WithRSAEncryption		65
+#define OBJ_sha1WithRSAEncryption		OBJ_pkcs1,5L
+
+#define SN_sha256WithRSAEncryption		"RSA-SHA256"
+#define LN_sha256WithRSAEncryption		"sha256WithRSAEncryption"
+#define NID_sha256WithRSAEncryption		668
+#define OBJ_sha256WithRSAEncryption		OBJ_pkcs1,11L
+
+#define SN_sha384WithRSAEncryption		"RSA-SHA384"
+#define LN_sha384WithRSAEncryption		"sha384WithRSAEncryption"
+#define NID_sha384WithRSAEncryption		669
+#define OBJ_sha384WithRSAEncryption		OBJ_pkcs1,12L
+
+#define SN_sha512WithRSAEncryption		"RSA-SHA512"
+#define LN_sha512WithRSAEncryption		"sha512WithRSAEncryption"
+#define NID_sha512WithRSAEncryption		670
+#define OBJ_sha512WithRSAEncryption		OBJ_pkcs1,13L
+
+#define SN_sha224WithRSAEncryption		"RSA-SHA224"
+#define LN_sha224WithRSAEncryption		"sha224WithRSAEncryption"
+#define NID_sha224WithRSAEncryption		671
+#define OBJ_sha224WithRSAEncryption		OBJ_pkcs1,14L
+
+#define SN_pkcs3		"pkcs3"
+#define NID_pkcs3		27
+#define OBJ_pkcs3		OBJ_pkcs,3L
+
+#define LN_dhKeyAgreement		"dhKeyAgreement"
+#define NID_dhKeyAgreement		28
+#define OBJ_dhKeyAgreement		OBJ_pkcs3,1L
+
+#define SN_pkcs5		"pkcs5"
+#define NID_pkcs5		187
+#define OBJ_pkcs5		OBJ_pkcs,5L
+
+#define SN_pbeWithMD2AndDES_CBC		"PBE-MD2-DES"
+#define LN_pbeWithMD2AndDES_CBC		"pbeWithMD2AndDES-CBC"
+#define NID_pbeWithMD2AndDES_CBC		9
+#define OBJ_pbeWithMD2AndDES_CBC		OBJ_pkcs5,1L
+
+#define SN_pbeWithMD5AndDES_CBC		"PBE-MD5-DES"
+#define LN_pbeWithMD5AndDES_CBC		"pbeWithMD5AndDES-CBC"
+#define NID_pbeWithMD5AndDES_CBC		10
+#define OBJ_pbeWithMD5AndDES_CBC		OBJ_pkcs5,3L
+
+#define SN_pbeWithMD2AndRC2_CBC		"PBE-MD2-RC2-64"
+#define LN_pbeWithMD2AndRC2_CBC		"pbeWithMD2AndRC2-CBC"
+#define NID_pbeWithMD2AndRC2_CBC		168
+#define OBJ_pbeWithMD2AndRC2_CBC		OBJ_pkcs5,4L
+
+#define SN_pbeWithMD5AndRC2_CBC		"PBE-MD5-RC2-64"
+#define LN_pbeWithMD5AndRC2_CBC		"pbeWithMD5AndRC2-CBC"
+#define NID_pbeWithMD5AndRC2_CBC		169
+#define OBJ_pbeWithMD5AndRC2_CBC		OBJ_pkcs5,6L
+
+#define SN_pbeWithSHA1AndDES_CBC		"PBE-SHA1-DES"
+#define LN_pbeWithSHA1AndDES_CBC		"pbeWithSHA1AndDES-CBC"
+#define NID_pbeWithSHA1AndDES_CBC		170
+#define OBJ_pbeWithSHA1AndDES_CBC		OBJ_pkcs5,10L
+
+#define SN_pbeWithSHA1AndRC2_CBC		"PBE-SHA1-RC2-64"
+#define LN_pbeWithSHA1AndRC2_CBC		"pbeWithSHA1AndRC2-CBC"
+#define NID_pbeWithSHA1AndRC2_CBC		68
+#define OBJ_pbeWithSHA1AndRC2_CBC		OBJ_pkcs5,11L
+
+#define LN_id_pbkdf2		"PBKDF2"
+#define NID_id_pbkdf2		69
+#define OBJ_id_pbkdf2		OBJ_pkcs5,12L
+
+#define LN_pbes2		"PBES2"
+#define NID_pbes2		161
+#define OBJ_pbes2		OBJ_pkcs5,13L
+
+#define LN_pbmac1		"PBMAC1"
+#define NID_pbmac1		162
+#define OBJ_pbmac1		OBJ_pkcs5,14L
+
+#define SN_pkcs7		"pkcs7"
+#define NID_pkcs7		20
+#define OBJ_pkcs7		OBJ_pkcs,7L
+
+#define LN_pkcs7_data		"pkcs7-data"
+#define NID_pkcs7_data		21
+#define OBJ_pkcs7_data		OBJ_pkcs7,1L
+
+#define LN_pkcs7_signed		"pkcs7-signedData"
+#define NID_pkcs7_signed		22
+#define OBJ_pkcs7_signed		OBJ_pkcs7,2L
+
+#define LN_pkcs7_enveloped		"pkcs7-envelopedData"
+#define NID_pkcs7_enveloped		23
+#define OBJ_pkcs7_enveloped		OBJ_pkcs7,3L
+
+#define LN_pkcs7_signedAndEnveloped		"pkcs7-signedAndEnvelopedData"
+#define NID_pkcs7_signedAndEnveloped		24
+#define OBJ_pkcs7_signedAndEnveloped		OBJ_pkcs7,4L
+
+#define LN_pkcs7_digest		"pkcs7-digestData"
+#define NID_pkcs7_digest		25
+#define OBJ_pkcs7_digest		OBJ_pkcs7,5L
+
+#define LN_pkcs7_encrypted		"pkcs7-encryptedData"
+#define NID_pkcs7_encrypted		26
+#define OBJ_pkcs7_encrypted		OBJ_pkcs7,6L
+
+#define SN_pkcs9		"pkcs9"
+#define NID_pkcs9		47
+#define OBJ_pkcs9		OBJ_pkcs,9L
+
+#define LN_pkcs9_emailAddress		"emailAddress"
+#define NID_pkcs9_emailAddress		48
+#define OBJ_pkcs9_emailAddress		OBJ_pkcs9,1L
+
+#define LN_pkcs9_unstructuredName		"unstructuredName"
+#define NID_pkcs9_unstructuredName		49
+#define OBJ_pkcs9_unstructuredName		OBJ_pkcs9,2L
+
+#define LN_pkcs9_contentType		"contentType"
+#define NID_pkcs9_contentType		50
+#define OBJ_pkcs9_contentType		OBJ_pkcs9,3L
+
+#define LN_pkcs9_messageDigest		"messageDigest"
+#define NID_pkcs9_messageDigest		51
+#define OBJ_pkcs9_messageDigest		OBJ_pkcs9,4L
+
+#define LN_pkcs9_signingTime		"signingTime"
+#define NID_pkcs9_signingTime		52
+#define OBJ_pkcs9_signingTime		OBJ_pkcs9,5L
+
+#define LN_pkcs9_countersignature		"countersignature"
+#define NID_pkcs9_countersignature		53
+#define OBJ_pkcs9_countersignature		OBJ_pkcs9,6L
+
+#define LN_pkcs9_challengePassword		"challengePassword"
+#define NID_pkcs9_challengePassword		54
+#define OBJ_pkcs9_challengePassword		OBJ_pkcs9,7L
+
+#define LN_pkcs9_unstructuredAddress		"unstructuredAddress"
+#define NID_pkcs9_unstructuredAddress		55
+#define OBJ_pkcs9_unstructuredAddress		OBJ_pkcs9,8L
+
+#define LN_pkcs9_extCertAttributes		"extendedCertificateAttributes"
+#define NID_pkcs9_extCertAttributes		56
+#define OBJ_pkcs9_extCertAttributes		OBJ_pkcs9,9L
+
+#define SN_ext_req		"extReq"
+#define LN_ext_req		"Extension Request"
+#define NID_ext_req		172
+#define OBJ_ext_req		OBJ_pkcs9,14L
+
+#define SN_SMIMECapabilities		"SMIME-CAPS"
+#define LN_SMIMECapabilities		"S/MIME Capabilities"
+#define NID_SMIMECapabilities		167
+#define OBJ_SMIMECapabilities		OBJ_pkcs9,15L
+
+#define SN_SMIME		"SMIME"
+#define LN_SMIME		"S/MIME"
+#define NID_SMIME		188
+#define OBJ_SMIME		OBJ_pkcs9,16L
+
+#define SN_id_smime_mod		"id-smime-mod"
+#define NID_id_smime_mod		189
+#define OBJ_id_smime_mod		OBJ_SMIME,0L
+
+#define SN_id_smime_ct		"id-smime-ct"
+#define NID_id_smime_ct		190
+#define OBJ_id_smime_ct		OBJ_SMIME,1L
+
+#define SN_id_smime_aa		"id-smime-aa"
+#define NID_id_smime_aa		191
+#define OBJ_id_smime_aa		OBJ_SMIME,2L
+
+#define SN_id_smime_alg		"id-smime-alg"
+#define NID_id_smime_alg		192
+#define OBJ_id_smime_alg		OBJ_SMIME,3L
+
+#define SN_id_smime_cd		"id-smime-cd"
+#define NID_id_smime_cd		193
+#define OBJ_id_smime_cd		OBJ_SMIME,4L
+
+#define SN_id_smime_spq		"id-smime-spq"
+#define NID_id_smime_spq		194
+#define OBJ_id_smime_spq		OBJ_SMIME,5L
+
+#define SN_id_smime_cti		"id-smime-cti"
+#define NID_id_smime_cti		195
+#define OBJ_id_smime_cti		OBJ_SMIME,6L
+
+#define SN_id_smime_mod_cms		"id-smime-mod-cms"
+#define NID_id_smime_mod_cms		196
+#define OBJ_id_smime_mod_cms		OBJ_id_smime_mod,1L
+
+#define SN_id_smime_mod_ess		"id-smime-mod-ess"
+#define NID_id_smime_mod_ess		197
+#define OBJ_id_smime_mod_ess		OBJ_id_smime_mod,2L
+
+#define SN_id_smime_mod_oid		"id-smime-mod-oid"
+#define NID_id_smime_mod_oid		198
+#define OBJ_id_smime_mod_oid		OBJ_id_smime_mod,3L
+
+#define SN_id_smime_mod_msg_v3		"id-smime-mod-msg-v3"
+#define NID_id_smime_mod_msg_v3		199
+#define OBJ_id_smime_mod_msg_v3		OBJ_id_smime_mod,4L
+
+#define SN_id_smime_mod_ets_eSignature_88		"id-smime-mod-ets-eSignature-88"
+#define NID_id_smime_mod_ets_eSignature_88		200
+#define OBJ_id_smime_mod_ets_eSignature_88		OBJ_id_smime_mod,5L
+
+#define SN_id_smime_mod_ets_eSignature_97		"id-smime-mod-ets-eSignature-97"
+#define NID_id_smime_mod_ets_eSignature_97		201
+#define OBJ_id_smime_mod_ets_eSignature_97		OBJ_id_smime_mod,6L
+
+#define SN_id_smime_mod_ets_eSigPolicy_88		"id-smime-mod-ets-eSigPolicy-88"
+#define NID_id_smime_mod_ets_eSigPolicy_88		202
+#define OBJ_id_smime_mod_ets_eSigPolicy_88		OBJ_id_smime_mod,7L
+
+#define SN_id_smime_mod_ets_eSigPolicy_97		"id-smime-mod-ets-eSigPolicy-97"
+#define NID_id_smime_mod_ets_eSigPolicy_97		203
+#define OBJ_id_smime_mod_ets_eSigPolicy_97		OBJ_id_smime_mod,8L
+
+#define SN_id_smime_ct_receipt		"id-smime-ct-receipt"
+#define NID_id_smime_ct_receipt		204
+#define OBJ_id_smime_ct_receipt		OBJ_id_smime_ct,1L
+
+#define SN_id_smime_ct_authData		"id-smime-ct-authData"
+#define NID_id_smime_ct_authData		205
+#define OBJ_id_smime_ct_authData		OBJ_id_smime_ct,2L
+
+#define SN_id_smime_ct_publishCert		"id-smime-ct-publishCert"
+#define NID_id_smime_ct_publishCert		206
+#define OBJ_id_smime_ct_publishCert		OBJ_id_smime_ct,3L
+
+#define SN_id_smime_ct_TSTInfo		"id-smime-ct-TSTInfo"
+#define NID_id_smime_ct_TSTInfo		207
+#define OBJ_id_smime_ct_TSTInfo		OBJ_id_smime_ct,4L
+
+#define SN_id_smime_ct_TDTInfo		"id-smime-ct-TDTInfo"
+#define NID_id_smime_ct_TDTInfo		208
+#define OBJ_id_smime_ct_TDTInfo		OBJ_id_smime_ct,5L
+
+#define SN_id_smime_ct_contentInfo		"id-smime-ct-contentInfo"
+#define NID_id_smime_ct_contentInfo		209
+#define OBJ_id_smime_ct_contentInfo		OBJ_id_smime_ct,6L
+
+#define SN_id_smime_ct_DVCSRequestData		"id-smime-ct-DVCSRequestData"
+#define NID_id_smime_ct_DVCSRequestData		210
+#define OBJ_id_smime_ct_DVCSRequestData		OBJ_id_smime_ct,7L
+
+#define SN_id_smime_ct_DVCSResponseData		"id-smime-ct-DVCSResponseData"
+#define NID_id_smime_ct_DVCSResponseData		211
+#define OBJ_id_smime_ct_DVCSResponseData		OBJ_id_smime_ct,8L
+
+#define SN_id_smime_ct_compressedData		"id-smime-ct-compressedData"
+#define NID_id_smime_ct_compressedData		786
+#define OBJ_id_smime_ct_compressedData		OBJ_id_smime_ct,9L
+
+#define SN_id_ct_asciiTextWithCRLF		"id-ct-asciiTextWithCRLF"
+#define NID_id_ct_asciiTextWithCRLF		787
+#define OBJ_id_ct_asciiTextWithCRLF		OBJ_id_smime_ct,27L
+
+#define SN_id_smime_aa_receiptRequest		"id-smime-aa-receiptRequest"
+#define NID_id_smime_aa_receiptRequest		212
+#define OBJ_id_smime_aa_receiptRequest		OBJ_id_smime_aa,1L
+
+#define SN_id_smime_aa_securityLabel		"id-smime-aa-securityLabel"
+#define NID_id_smime_aa_securityLabel		213
+#define OBJ_id_smime_aa_securityLabel		OBJ_id_smime_aa,2L
+
+#define SN_id_smime_aa_mlExpandHistory		"id-smime-aa-mlExpandHistory"
+#define NID_id_smime_aa_mlExpandHistory		214
+#define OBJ_id_smime_aa_mlExpandHistory		OBJ_id_smime_aa,3L
+
+#define SN_id_smime_aa_contentHint		"id-smime-aa-contentHint"
+#define NID_id_smime_aa_contentHint		215
+#define OBJ_id_smime_aa_contentHint		OBJ_id_smime_aa,4L
+
+#define SN_id_smime_aa_msgSigDigest		"id-smime-aa-msgSigDigest"
+#define NID_id_smime_aa_msgSigDigest		216
+#define OBJ_id_smime_aa_msgSigDigest		OBJ_id_smime_aa,5L
+
+#define SN_id_smime_aa_encapContentType		"id-smime-aa-encapContentType"
+#define NID_id_smime_aa_encapContentType		217
+#define OBJ_id_smime_aa_encapContentType		OBJ_id_smime_aa,6L
+
+#define SN_id_smime_aa_contentIdentifier		"id-smime-aa-contentIdentifier"
+#define NID_id_smime_aa_contentIdentifier		218
+#define OBJ_id_smime_aa_contentIdentifier		OBJ_id_smime_aa,7L
+
+#define SN_id_smime_aa_macValue		"id-smime-aa-macValue"
+#define NID_id_smime_aa_macValue		219
+#define OBJ_id_smime_aa_macValue		OBJ_id_smime_aa,8L
+
+#define SN_id_smime_aa_equivalentLabels		"id-smime-aa-equivalentLabels"
+#define NID_id_smime_aa_equivalentLabels		220
+#define OBJ_id_smime_aa_equivalentLabels		OBJ_id_smime_aa,9L
+
+#define SN_id_smime_aa_contentReference		"id-smime-aa-contentReference"
+#define NID_id_smime_aa_contentReference		221
+#define OBJ_id_smime_aa_contentReference		OBJ_id_smime_aa,10L
+
+#define SN_id_smime_aa_encrypKeyPref		"id-smime-aa-encrypKeyPref"
+#define NID_id_smime_aa_encrypKeyPref		222
+#define OBJ_id_smime_aa_encrypKeyPref		OBJ_id_smime_aa,11L
+
+#define SN_id_smime_aa_signingCertificate		"id-smime-aa-signingCertificate"
+#define NID_id_smime_aa_signingCertificate		223
+#define OBJ_id_smime_aa_signingCertificate		OBJ_id_smime_aa,12L
+
+#define SN_id_smime_aa_smimeEncryptCerts		"id-smime-aa-smimeEncryptCerts"
+#define NID_id_smime_aa_smimeEncryptCerts		224
+#define OBJ_id_smime_aa_smimeEncryptCerts		OBJ_id_smime_aa,13L
+
+#define SN_id_smime_aa_timeStampToken		"id-smime-aa-timeStampToken"
+#define NID_id_smime_aa_timeStampToken		225
+#define OBJ_id_smime_aa_timeStampToken		OBJ_id_smime_aa,14L
+
+#define SN_id_smime_aa_ets_sigPolicyId		"id-smime-aa-ets-sigPolicyId"
+#define NID_id_smime_aa_ets_sigPolicyId		226
+#define OBJ_id_smime_aa_ets_sigPolicyId		OBJ_id_smime_aa,15L
+
+#define SN_id_smime_aa_ets_commitmentType		"id-smime-aa-ets-commitmentType"
+#define NID_id_smime_aa_ets_commitmentType		227
+#define OBJ_id_smime_aa_ets_commitmentType		OBJ_id_smime_aa,16L
+
+#define SN_id_smime_aa_ets_signerLocation		"id-smime-aa-ets-signerLocation"
+#define NID_id_smime_aa_ets_signerLocation		228
+#define OBJ_id_smime_aa_ets_signerLocation		OBJ_id_smime_aa,17L
+
+#define SN_id_smime_aa_ets_signerAttr		"id-smime-aa-ets-signerAttr"
+#define NID_id_smime_aa_ets_signerAttr		229
+#define OBJ_id_smime_aa_ets_signerAttr		OBJ_id_smime_aa,18L
+
+#define SN_id_smime_aa_ets_otherSigCert		"id-smime-aa-ets-otherSigCert"
+#define NID_id_smime_aa_ets_otherSigCert		230
+#define OBJ_id_smime_aa_ets_otherSigCert		OBJ_id_smime_aa,19L
+
+#define SN_id_smime_aa_ets_contentTimestamp		"id-smime-aa-ets-contentTimes=
tamp"
+#define NID_id_smime_aa_ets_contentTimestamp		231
+#define OBJ_id_smime_aa_ets_contentTimestamp		OBJ_id_smime_aa,20L
+
+#define SN_id_smime_aa_ets_CertificateRefs		"id-smime-aa-ets-CertificateRe=
fs"
+#define NID_id_smime_aa_ets_CertificateRefs		232
+#define OBJ_id_smime_aa_ets_CertificateRefs		OBJ_id_smime_aa,21L
+
+#define SN_id_smime_aa_ets_RevocationRefs		"id-smime-aa-ets-RevocationRefs"
+#define NID_id_smime_aa_ets_RevocationRefs		233
+#define OBJ_id_smime_aa_ets_RevocationRefs		OBJ_id_smime_aa,22L
+
+#define SN_id_smime_aa_ets_certValues		"id-smime-aa-ets-certValues"
+#define NID_id_smime_aa_ets_certValues		234
+#define OBJ_id_smime_aa_ets_certValues		OBJ_id_smime_aa,23L
+
+#define SN_id_smime_aa_ets_revocationValues		"id-smime-aa-ets-revocationVa=
lues"
+#define NID_id_smime_aa_ets_revocationValues		235
+#define OBJ_id_smime_aa_ets_revocationValues		OBJ_id_smime_aa,24L
+
+#define SN_id_smime_aa_ets_escTimeStamp		"id-smime-aa-ets-escTimeStamp"
+#define NID_id_smime_aa_ets_escTimeStamp		236
+#define OBJ_id_smime_aa_ets_escTimeStamp		OBJ_id_smime_aa,25L
+
+#define SN_id_smime_aa_ets_certCRLTimestamp		"id-smime-aa-ets-certCRLTimes=
tamp"
+#define NID_id_smime_aa_ets_certCRLTimestamp		237
+#define OBJ_id_smime_aa_ets_certCRLTimestamp		OBJ_id_smime_aa,26L
+
+#define SN_id_smime_aa_ets_archiveTimeStamp		"id-smime-aa-ets-archiveTimeS=
tamp"
+#define NID_id_smime_aa_ets_archiveTimeStamp		238
+#define OBJ_id_smime_aa_ets_archiveTimeStamp		OBJ_id_smime_aa,27L
+
+#define SN_id_smime_aa_signatureType		"id-smime-aa-signatureType"
+#define NID_id_smime_aa_signatureType		239
+#define OBJ_id_smime_aa_signatureType		OBJ_id_smime_aa,28L
+
+#define SN_id_smime_aa_dvcs_dvc		"id-smime-aa-dvcs-dvc"
+#define NID_id_smime_aa_dvcs_dvc		240
+#define OBJ_id_smime_aa_dvcs_dvc		OBJ_id_smime_aa,29L
+
+#define SN_id_smime_alg_ESDHwith3DES		"id-smime-alg-ESDHwith3DES"
+#define NID_id_smime_alg_ESDHwith3DES		241
+#define OBJ_id_smime_alg_ESDHwith3DES		OBJ_id_smime_alg,1L
+
+#define SN_id_smime_alg_ESDHwithRC2		"id-smime-alg-ESDHwithRC2"
+#define NID_id_smime_alg_ESDHwithRC2		242
+#define OBJ_id_smime_alg_ESDHwithRC2		OBJ_id_smime_alg,2L
+
+#define SN_id_smime_alg_3DESwrap		"id-smime-alg-3DESwrap"
+#define NID_id_smime_alg_3DESwrap		243
+#define OBJ_id_smime_alg_3DESwrap		OBJ_id_smime_alg,3L
+
+#define SN_id_smime_alg_RC2wrap		"id-smime-alg-RC2wrap"
+#define NID_id_smime_alg_RC2wrap		244
+#define OBJ_id_smime_alg_RC2wrap		OBJ_id_smime_alg,4L
+
+#define SN_id_smime_alg_ESDH		"id-smime-alg-ESDH"
+#define NID_id_smime_alg_ESDH		245
+#define OBJ_id_smime_alg_ESDH		OBJ_id_smime_alg,5L
+
+#define SN_id_smime_alg_CMS3DESwrap		"id-smime-alg-CMS3DESwrap"
+#define NID_id_smime_alg_CMS3DESwrap		246
+#define OBJ_id_smime_alg_CMS3DESwrap		OBJ_id_smime_alg,6L
+
+#define SN_id_smime_alg_CMSRC2wrap		"id-smime-alg-CMSRC2wrap"
+#define NID_id_smime_alg_CMSRC2wrap		247
+#define OBJ_id_smime_alg_CMSRC2wrap		OBJ_id_smime_alg,7L
+
+#define SN_id_smime_cd_ldap		"id-smime-cd-ldap"
+#define NID_id_smime_cd_ldap		248
+#define OBJ_id_smime_cd_ldap		OBJ_id_smime_cd,1L
+
+#define SN_id_smime_spq_ets_sqt_uri		"id-smime-spq-ets-sqt-uri"
+#define NID_id_smime_spq_ets_sqt_uri		249
+#define OBJ_id_smime_spq_ets_sqt_uri		OBJ_id_smime_spq,1L
+
+#define SN_id_smime_spq_ets_sqt_unotice		"id-smime-spq-ets-sqt-unotice"
+#define NID_id_smime_spq_ets_sqt_unotice		250
+#define OBJ_id_smime_spq_ets_sqt_unotice		OBJ_id_smime_spq,2L
+
+#define SN_id_smime_cti_ets_proofOfOrigin		"id-smime-cti-ets-proofOfOrigin"
+#define NID_id_smime_cti_ets_proofOfOrigin		251
+#define OBJ_id_smime_cti_ets_proofOfOrigin		OBJ_id_smime_cti,1L
+
+#define SN_id_smime_cti_ets_proofOfReceipt		"id-smime-cti-ets-proofOfRecei=
pt"
+#define NID_id_smime_cti_ets_proofOfReceipt		252
+#define OBJ_id_smime_cti_ets_proofOfReceipt		OBJ_id_smime_cti,2L
+
+#define SN_id_smime_cti_ets_proofOfDelivery		"id-smime-cti-ets-proofOfDeli=
very"
+#define NID_id_smime_cti_ets_proofOfDelivery		253
+#define OBJ_id_smime_cti_ets_proofOfDelivery		OBJ_id_smime_cti,3L
+
+#define SN_id_smime_cti_ets_proofOfSender		"id-smime-cti-ets-proofOfSender"
+#define NID_id_smime_cti_ets_proofOfSender		254
+#define OBJ_id_smime_cti_ets_proofOfSender		OBJ_id_smime_cti,4L
+
+#define SN_id_smime_cti_ets_proofOfApproval		"id-smime-cti-ets-proofOfAppr=
oval"
+#define NID_id_smime_cti_ets_proofOfApproval		255
+#define OBJ_id_smime_cti_ets_proofOfApproval		OBJ_id_smime_cti,5L
+
+#define SN_id_smime_cti_ets_proofOfCreation		"id-smime-cti-ets-proofOfCrea=
tion"
+#define NID_id_smime_cti_ets_proofOfCreation		256
+#define OBJ_id_smime_cti_ets_proofOfCreation		OBJ_id_smime_cti,6L
+
+#define LN_friendlyName		"friendlyName"
+#define NID_friendlyName		156
+#define OBJ_friendlyName		OBJ_pkcs9,20L
+
+#define LN_localKeyID		"localKeyID"
+#define NID_localKeyID		157
+#define OBJ_localKeyID		OBJ_pkcs9,21L
+
+#define SN_ms_csp_name		"CSPName"
+#define LN_ms_csp_name		"Microsoft CSP Name"
+#define NID_ms_csp_name		417
+#define OBJ_ms_csp_name		1L,3L,6L,1L,4L,1L,311L,17L,1L
+
+#define SN_LocalKeySet		"LocalKeySet"
+#define LN_LocalKeySet		"Microsoft Local Key set"
+#define NID_LocalKeySet		856
+#define OBJ_LocalKeySet		1L,3L,6L,1L,4L,1L,311L,17L,2L
+
+#define OBJ_certTypes		OBJ_pkcs9,22L
+
+#define LN_x509Certificate		"x509Certificate"
+#define NID_x509Certificate		158
+#define OBJ_x509Certificate		OBJ_certTypes,1L
+
+#define LN_sdsiCertificate		"sdsiCertificate"
+#define NID_sdsiCertificate		159
+#define OBJ_sdsiCertificate		OBJ_certTypes,2L
+
+#define OBJ_crlTypes		OBJ_pkcs9,23L
+
+#define LN_x509Crl		"x509Crl"
+#define NID_x509Crl		160
+#define OBJ_x509Crl		OBJ_crlTypes,1L
+
+#define OBJ_pkcs12		OBJ_pkcs,12L
+
+#define OBJ_pkcs12_pbeids		OBJ_pkcs12,1L
+
+#define SN_pbe_WithSHA1And128BitRC4		"PBE-SHA1-RC4-128"
+#define LN_pbe_WithSHA1And128BitRC4		"pbeWithSHA1And128BitRC4"
+#define NID_pbe_WithSHA1And128BitRC4		144
+#define OBJ_pbe_WithSHA1And128BitRC4		OBJ_pkcs12_pbeids,1L
+
+#define SN_pbe_WithSHA1And40BitRC4		"PBE-SHA1-RC4-40"
+#define LN_pbe_WithSHA1And40BitRC4		"pbeWithSHA1And40BitRC4"
+#define NID_pbe_WithSHA1And40BitRC4		145
+#define OBJ_pbe_WithSHA1And40BitRC4		OBJ_pkcs12_pbeids,2L
+
+#define SN_pbe_WithSHA1And3_Key_TripleDES_CBC		"PBE-SHA1-3DES"
+#define LN_pbe_WithSHA1And3_Key_TripleDES_CBC		"pbeWithSHA1And3-KeyTripleD=
ES-CBC"
+#define NID_pbe_WithSHA1And3_Key_TripleDES_CBC		146
+#define OBJ_pbe_WithSHA1And3_Key_TripleDES_CBC		OBJ_pkcs12_pbeids,3L
+
+#define SN_pbe_WithSHA1And2_Key_TripleDES_CBC		"PBE-SHA1-2DES"
+#define LN_pbe_WithSHA1And2_Key_TripleDES_CBC		"pbeWithSHA1And2-KeyTripleD=
ES-CBC"
+#define NID_pbe_WithSHA1And2_Key_TripleDES_CBC		147
+#define OBJ_pbe_WithSHA1And2_Key_TripleDES_CBC		OBJ_pkcs12_pbeids,4L
+
+#define SN_pbe_WithSHA1And128BitRC2_CBC		"PBE-SHA1-RC2-128"
+#define LN_pbe_WithSHA1And128BitRC2_CBC		"pbeWithSHA1And128BitRC2-CBC"
+#define NID_pbe_WithSHA1And128BitRC2_CBC		148
+#define OBJ_pbe_WithSHA1And128BitRC2_CBC		OBJ_pkcs12_pbeids,5L
+
+#define SN_pbe_WithSHA1And40BitRC2_CBC		"PBE-SHA1-RC2-40"
+#define LN_pbe_WithSHA1And40BitRC2_CBC		"pbeWithSHA1And40BitRC2-CBC"
+#define NID_pbe_WithSHA1And40BitRC2_CBC		149
+#define OBJ_pbe_WithSHA1And40BitRC2_CBC		OBJ_pkcs12_pbeids,6L
+
+#define OBJ_pkcs12_Version1		OBJ_pkcs12,10L
+
+#define OBJ_pkcs12_BagIds		OBJ_pkcs12_Version1,1L
+
+#define LN_keyBag		"keyBag"
+#define NID_keyBag		150
+#define OBJ_keyBag		OBJ_pkcs12_BagIds,1L
+
+#define LN_pkcs8ShroudedKeyBag		"pkcs8ShroudedKeyBag"
+#define NID_pkcs8ShroudedKeyBag		151
+#define OBJ_pkcs8ShroudedKeyBag		OBJ_pkcs12_BagIds,2L
+
+#define LN_certBag		"certBag"
+#define NID_certBag		152
+#define OBJ_certBag		OBJ_pkcs12_BagIds,3L
+
+#define LN_crlBag		"crlBag"
+#define NID_crlBag		153
+#define OBJ_crlBag		OBJ_pkcs12_BagIds,4L
+
+#define LN_secretBag		"secretBag"
+#define NID_secretBag		154
+#define OBJ_secretBag		OBJ_pkcs12_BagIds,5L
+
+#define LN_safeContentsBag		"safeContentsBag"
+#define NID_safeContentsBag		155
+#define OBJ_safeContentsBag		OBJ_pkcs12_BagIds,6L
+
+#define SN_md2		"MD2"
+#define LN_md2		"md2"
+#define NID_md2		3
+#define OBJ_md2		OBJ_rsadsi,2L,2L
+
+#define SN_md4		"MD4"
+#define LN_md4		"md4"
+#define NID_md4		257
+#define OBJ_md4		OBJ_rsadsi,2L,4L
+
+#define SN_md5		"MD5"
+#define LN_md5		"md5"
+#define NID_md5		4
+#define OBJ_md5		OBJ_rsadsi,2L,5L
+
+#define SN_md5_sha1		"MD5-SHA1"
+#define LN_md5_sha1		"md5-sha1"
+#define NID_md5_sha1		114
+
+#define LN_hmacWithMD5		"hmacWithMD5"
+#define NID_hmacWithMD5		797
+#define OBJ_hmacWithMD5		OBJ_rsadsi,2L,6L
+
+#define LN_hmacWithSHA1		"hmacWithSHA1"
+#define NID_hmacWithSHA1		163
+#define OBJ_hmacWithSHA1		OBJ_rsadsi,2L,7L
+
+#define LN_hmacWithSHA224		"hmacWithSHA224"
+#define NID_hmacWithSHA224		798
+#define OBJ_hmacWithSHA224		OBJ_rsadsi,2L,8L
+
+#define LN_hmacWithSHA256		"hmacWithSHA256"
+#define NID_hmacWithSHA256		799
+#define OBJ_hmacWithSHA256		OBJ_rsadsi,2L,9L
+
+#define LN_hmacWithSHA384		"hmacWithSHA384"
+#define NID_hmacWithSHA384		800
+#define OBJ_hmacWithSHA384		OBJ_rsadsi,2L,10L
+
+#define LN_hmacWithSHA512		"hmacWithSHA512"
+#define NID_hmacWithSHA512		801
+#define OBJ_hmacWithSHA512		OBJ_rsadsi,2L,11L
+
+#define SN_rc2_cbc		"RC2-CBC"
+#define LN_rc2_cbc		"rc2-cbc"
+#define NID_rc2_cbc		37
+#define OBJ_rc2_cbc		OBJ_rsadsi,3L,2L
+
+#define SN_rc2_ecb		"RC2-ECB"
+#define LN_rc2_ecb		"rc2-ecb"
+#define NID_rc2_ecb		38
+
+#define SN_rc2_cfb64		"RC2-CFB"
+#define LN_rc2_cfb64		"rc2-cfb"
+#define NID_rc2_cfb64		39
+
+#define SN_rc2_ofb64		"RC2-OFB"
+#define LN_rc2_ofb64		"rc2-ofb"
+#define NID_rc2_ofb64		40
+
+#define SN_rc2_40_cbc		"RC2-40-CBC"
+#define LN_rc2_40_cbc		"rc2-40-cbc"
+#define NID_rc2_40_cbc		98
+
+#define SN_rc2_64_cbc		"RC2-64-CBC"
+#define LN_rc2_64_cbc		"rc2-64-cbc"
+#define NID_rc2_64_cbc		166
+
+#define SN_rc4		"RC4"
+#define LN_rc4		"rc4"
+#define NID_rc4		5
+#define OBJ_rc4		OBJ_rsadsi,3L,4L
+
+#define SN_rc4_40		"RC4-40"
+#define LN_rc4_40		"rc4-40"
+#define NID_rc4_40		97
+
+#define SN_des_ede3_cbc		"DES-EDE3-CBC"
+#define LN_des_ede3_cbc		"des-ede3-cbc"
+#define NID_des_ede3_cbc		44
+#define OBJ_des_ede3_cbc		OBJ_rsadsi,3L,7L
+
+#define SN_rc5_cbc		"RC5-CBC"
+#define LN_rc5_cbc		"rc5-cbc"
+#define NID_rc5_cbc		120
+#define OBJ_rc5_cbc		OBJ_rsadsi,3L,8L
+
+#define SN_rc5_ecb		"RC5-ECB"
+#define LN_rc5_ecb		"rc5-ecb"
+#define NID_rc5_ecb		121
+
+#define SN_rc5_cfb64		"RC5-CFB"
+#define LN_rc5_cfb64		"rc5-cfb"
+#define NID_rc5_cfb64		122
+
+#define SN_rc5_ofb64		"RC5-OFB"
+#define LN_rc5_ofb64		"rc5-ofb"
+#define NID_rc5_ofb64		123
+
+#define SN_ms_ext_req		"msExtReq"
+#define LN_ms_ext_req		"Microsoft Extension Request"
+#define NID_ms_ext_req		171
+#define OBJ_ms_ext_req		1L,3L,6L,1L,4L,1L,311L,2L,1L,14L
+
+#define SN_ms_code_ind		"msCodeInd"
+#define LN_ms_code_ind		"Microsoft Individual Code Signing"
+#define NID_ms_code_ind		134
+#define OBJ_ms_code_ind		1L,3L,6L,1L,4L,1L,311L,2L,1L,21L
+
+#define SN_ms_code_com		"msCodeCom"
+#define LN_ms_code_com		"Microsoft Commercial Code Signing"
+#define NID_ms_code_com		135
+#define OBJ_ms_code_com		1L,3L,6L,1L,4L,1L,311L,2L,1L,22L
+
+#define SN_ms_ctl_sign		"msCTLSign"
+#define LN_ms_ctl_sign		"Microsoft Trust List Signing"
+#define NID_ms_ctl_sign		136
+#define OBJ_ms_ctl_sign		1L,3L,6L,1L,4L,1L,311L,10L,3L,1L
+
+#define SN_ms_sgc		"msSGC"
+#define LN_ms_sgc		"Microsoft Server Gated Crypto"
+#define NID_ms_sgc		137
+#define OBJ_ms_sgc		1L,3L,6L,1L,4L,1L,311L,10L,3L,3L
+
+#define SN_ms_efs		"msEFS"
+#define LN_ms_efs		"Microsoft Encrypted File System"
+#define NID_ms_efs		138
+#define OBJ_ms_efs		1L,3L,6L,1L,4L,1L,311L,10L,3L,4L
+
+#define SN_ms_smartcard_login		"msSmartcardLogin"
+#define LN_ms_smartcard_login		"Microsoft Smartcardlogin"
+#define NID_ms_smartcard_login		648
+#define OBJ_ms_smartcard_login		1L,3L,6L,1L,4L,1L,311L,20L,2L,2L
+
+#define SN_ms_upn		"msUPN"
+#define LN_ms_upn		"Microsoft Universal Principal Name"
+#define NID_ms_upn		649
+#define OBJ_ms_upn		1L,3L,6L,1L,4L,1L,311L,20L,2L,3L
+
+#define SN_idea_cbc		"IDEA-CBC"
+#define LN_idea_cbc		"idea-cbc"
+#define NID_idea_cbc		34
+#define OBJ_idea_cbc		1L,3L,6L,1L,4L,1L,188L,7L,1L,1L,2L
+
+#define SN_idea_ecb		"IDEA-ECB"
+#define LN_idea_ecb		"idea-ecb"
+#define NID_idea_ecb		36
+
+#define SN_idea_cfb64		"IDEA-CFB"
+#define LN_idea_cfb64		"idea-cfb"
+#define NID_idea_cfb64		35
+
+#define SN_idea_ofb64		"IDEA-OFB"
+#define LN_idea_ofb64		"idea-ofb"
+#define NID_idea_ofb64		46
+
+#define SN_bf_cbc		"BF-CBC"
+#define LN_bf_cbc		"bf-cbc"
+#define NID_bf_cbc		91
+#define OBJ_bf_cbc		1L,3L,6L,1L,4L,1L,3029L,1L,2L
+
+#define SN_bf_ecb		"BF-ECB"
+#define LN_bf_ecb		"bf-ecb"
+#define NID_bf_ecb		92
+
+#define SN_bf_cfb64		"BF-CFB"
+#define LN_bf_cfb64		"bf-cfb"
+#define NID_bf_cfb64		93
+
+#define SN_bf_ofb64		"BF-OFB"
+#define LN_bf_ofb64		"bf-ofb"
+#define NID_bf_ofb64		94
+
+#define SN_id_pkix		"PKIX"
+#define NID_id_pkix		127
+#define OBJ_id_pkix		1L,3L,6L,1L,5L,5L,7L
+
+#define SN_id_pkix_mod		"id-pkix-mod"
+#define NID_id_pkix_mod		258
+#define OBJ_id_pkix_mod		OBJ_id_pkix,0L
+
+#define SN_id_pe		"id-pe"
+#define NID_id_pe		175
+#define OBJ_id_pe		OBJ_id_pkix,1L
+
+#define SN_id_qt		"id-qt"
+#define NID_id_qt		259
+#define OBJ_id_qt		OBJ_id_pkix,2L
+
+#define SN_id_kp		"id-kp"
+#define NID_id_kp		128
+#define OBJ_id_kp		OBJ_id_pkix,3L
+
+#define SN_id_it		"id-it"
+#define NID_id_it		260
+#define OBJ_id_it		OBJ_id_pkix,4L
+
+#define SN_id_pkip		"id-pkip"
+#define NID_id_pkip		261
+#define OBJ_id_pkip		OBJ_id_pkix,5L
+
+#define SN_id_alg		"id-alg"
+#define NID_id_alg		262
+#define OBJ_id_alg		OBJ_id_pkix,6L
+
+#define SN_id_cmc		"id-cmc"
+#define NID_id_cmc		263
+#define OBJ_id_cmc		OBJ_id_pkix,7L
+
+#define SN_id_on		"id-on"
+#define NID_id_on		264
+#define OBJ_id_on		OBJ_id_pkix,8L
+
+#define SN_id_pda		"id-pda"
+#define NID_id_pda		265
+#define OBJ_id_pda		OBJ_id_pkix,9L
+
+#define SN_id_aca		"id-aca"
+#define NID_id_aca		266
+#define OBJ_id_aca		OBJ_id_pkix,10L
+
+#define SN_id_qcs		"id-qcs"
+#define NID_id_qcs		267
+#define OBJ_id_qcs		OBJ_id_pkix,11L
+
+#define SN_id_cct		"id-cct"
+#define NID_id_cct		268
+#define OBJ_id_cct		OBJ_id_pkix,12L
+
+#define SN_id_ppl		"id-ppl"
+#define NID_id_ppl		662
+#define OBJ_id_ppl		OBJ_id_pkix,21L
+
+#define SN_id_ad		"id-ad"
+#define NID_id_ad		176
+#define OBJ_id_ad		OBJ_id_pkix,48L
+
+#define SN_id_pkix1_explicit_88		"id-pkix1-explicit-88"
+#define NID_id_pkix1_explicit_88		269
+#define OBJ_id_pkix1_explicit_88		OBJ_id_pkix_mod,1L
+
+#define SN_id_pkix1_implicit_88		"id-pkix1-implicit-88"
+#define NID_id_pkix1_implicit_88		270
+#define OBJ_id_pkix1_implicit_88		OBJ_id_pkix_mod,2L
+
+#define SN_id_pkix1_explicit_93		"id-pkix1-explicit-93"
+#define NID_id_pkix1_explicit_93		271
+#define OBJ_id_pkix1_explicit_93		OBJ_id_pkix_mod,3L
+
+#define SN_id_pkix1_implicit_93		"id-pkix1-implicit-93"
+#define NID_id_pkix1_implicit_93		272
+#define OBJ_id_pkix1_implicit_93		OBJ_id_pkix_mod,4L
+
+#define SN_id_mod_crmf		"id-mod-crmf"
+#define NID_id_mod_crmf		273
+#define OBJ_id_mod_crmf		OBJ_id_pkix_mod,5L
+
+#define SN_id_mod_cmc		"id-mod-cmc"
+#define NID_id_mod_cmc		274
+#define OBJ_id_mod_cmc		OBJ_id_pkix_mod,6L
+
+#define SN_id_mod_kea_profile_88		"id-mod-kea-profile-88"
+#define NID_id_mod_kea_profile_88		275
+#define OBJ_id_mod_kea_profile_88		OBJ_id_pkix_mod,7L
+
+#define SN_id_mod_kea_profile_93		"id-mod-kea-profile-93"
+#define NID_id_mod_kea_profile_93		276
+#define OBJ_id_mod_kea_profile_93		OBJ_id_pkix_mod,8L
+
+#define SN_id_mod_cmp		"id-mod-cmp"
+#define NID_id_mod_cmp		277
+#define OBJ_id_mod_cmp		OBJ_id_pkix_mod,9L
+
+#define SN_id_mod_qualified_cert_88		"id-mod-qualified-cert-88"
+#define NID_id_mod_qualified_cert_88		278
+#define OBJ_id_mod_qualified_cert_88		OBJ_id_pkix_mod,10L
+
+#define SN_id_mod_qualified_cert_93		"id-mod-qualified-cert-93"
+#define NID_id_mod_qualified_cert_93		279
+#define OBJ_id_mod_qualified_cert_93		OBJ_id_pkix_mod,11L
+
+#define SN_id_mod_attribute_cert		"id-mod-attribute-cert"
+#define NID_id_mod_attribute_cert		280
+#define OBJ_id_mod_attribute_cert		OBJ_id_pkix_mod,12L
+
+#define SN_id_mod_timestamp_protocol		"id-mod-timestamp-protocol"
+#define NID_id_mod_timestamp_protocol		281
+#define OBJ_id_mod_timestamp_protocol		OBJ_id_pkix_mod,13L
+
+#define SN_id_mod_ocsp		"id-mod-ocsp"
+#define NID_id_mod_ocsp		282
+#define OBJ_id_mod_ocsp		OBJ_id_pkix_mod,14L
+
+#define SN_id_mod_dvcs		"id-mod-dvcs"
+#define NID_id_mod_dvcs		283
+#define OBJ_id_mod_dvcs		OBJ_id_pkix_mod,15L
+
+#define SN_id_mod_cmp2000		"id-mod-cmp2000"
+#define NID_id_mod_cmp2000		284
+#define OBJ_id_mod_cmp2000		OBJ_id_pkix_mod,16L
+
+#define SN_info_access		"authorityInfoAccess"
+#define LN_info_access		"Authority Information Access"
+#define NID_info_access		177
+#define OBJ_info_access		OBJ_id_pe,1L
+
+#define SN_biometricInfo		"biometricInfo"
+#define LN_biometricInfo		"Biometric Info"
+#define NID_biometricInfo		285
+#define OBJ_biometricInfo		OBJ_id_pe,2L
+
+#define SN_qcStatements		"qcStatements"
+#define NID_qcStatements		286
+#define OBJ_qcStatements		OBJ_id_pe,3L
+
+#define SN_ac_auditEntity		"ac-auditEntity"
+#define NID_ac_auditEntity		287
+#define OBJ_ac_auditEntity		OBJ_id_pe,4L
+
+#define SN_ac_targeting		"ac-targeting"
+#define NID_ac_targeting		288
+#define OBJ_ac_targeting		OBJ_id_pe,5L
+
+#define SN_aaControls		"aaControls"
+#define NID_aaControls		289
+#define OBJ_aaControls		OBJ_id_pe,6L
+
+#define SN_sbgp_ipAddrBlock		"sbgp-ipAddrBlock"
+#define NID_sbgp_ipAddrBlock		290
+#define OBJ_sbgp_ipAddrBlock		OBJ_id_pe,7L
+
+#define SN_sbgp_autonomousSysNum		"sbgp-autonomousSysNum"
+#define NID_sbgp_autonomousSysNum		291
+#define OBJ_sbgp_autonomousSysNum		OBJ_id_pe,8L
+
+#define SN_sbgp_routerIdentifier		"sbgp-routerIdentifier"
+#define NID_sbgp_routerIdentifier		292
+#define OBJ_sbgp_routerIdentifier		OBJ_id_pe,9L
+
+#define SN_ac_proxying		"ac-proxying"
+#define NID_ac_proxying		397
+#define OBJ_ac_proxying		OBJ_id_pe,10L
+
+#define SN_sinfo_access		"subjectInfoAccess"
+#define LN_sinfo_access		"Subject Information Access"
+#define NID_sinfo_access		398
+#define OBJ_sinfo_access		OBJ_id_pe,11L
+
+#define SN_proxyCertInfo		"proxyCertInfo"
+#define LN_proxyCertInfo		"Proxy Certificate Information"
+#define NID_proxyCertInfo		663
+#define OBJ_proxyCertInfo		OBJ_id_pe,14L
+
+#define SN_id_qt_cps		"id-qt-cps"
+#define LN_id_qt_cps		"Policy Qualifier CPS"
+#define NID_id_qt_cps		164
+#define OBJ_id_qt_cps		OBJ_id_qt,1L
+
+#define SN_id_qt_unotice		"id-qt-unotice"
+#define LN_id_qt_unotice		"Policy Qualifier User Notice"
+#define NID_id_qt_unotice		165
+#define OBJ_id_qt_unotice		OBJ_id_qt,2L
+
+#define SN_textNotice		"textNotice"
+#define NID_textNotice		293
+#define OBJ_textNotice		OBJ_id_qt,3L
+
+#define SN_server_auth		"serverAuth"
+#define LN_server_auth		"TLS Web Server Authentication"
+#define NID_server_auth		129
+#define OBJ_server_auth		OBJ_id_kp,1L
+
+#define SN_client_auth		"clientAuth"
+#define LN_client_auth		"TLS Web Client Authentication"
+#define NID_client_auth		130
+#define OBJ_client_auth		OBJ_id_kp,2L
+
+#define SN_code_sign		"codeSigning"
+#define LN_code_sign		"Code Signing"
+#define NID_code_sign		131
+#define OBJ_code_sign		OBJ_id_kp,3L
+
+#define SN_email_protect		"emailProtection"
+#define LN_email_protect		"E-mail Protection"
+#define NID_email_protect		132
+#define OBJ_email_protect		OBJ_id_kp,4L
+
+#define SN_ipsecEndSystem		"ipsecEndSystem"
+#define LN_ipsecEndSystem		"IPSec End System"
+#define NID_ipsecEndSystem		294
+#define OBJ_ipsecEndSystem		OBJ_id_kp,5L
+
+#define SN_ipsecTunnel		"ipsecTunnel"
+#define LN_ipsecTunnel		"IPSec Tunnel"
+#define NID_ipsecTunnel		295
+#define OBJ_ipsecTunnel		OBJ_id_kp,6L
+
+#define SN_ipsecUser		"ipsecUser"
+#define LN_ipsecUser		"IPSec User"
+#define NID_ipsecUser		296
+#define OBJ_ipsecUser		OBJ_id_kp,7L
+
+#define SN_time_stamp		"timeStamping"
+#define LN_time_stamp		"Time Stamping"
+#define NID_time_stamp		133
+#define OBJ_time_stamp		OBJ_id_kp,8L
+
+#define SN_OCSP_sign		"OCSPSigning"
+#define LN_OCSP_sign		"OCSP Signing"
+#define NID_OCSP_sign		180
+#define OBJ_OCSP_sign		OBJ_id_kp,9L
+
+#define SN_dvcs		"DVCS"
+#define LN_dvcs		"dvcs"
+#define NID_dvcs		297
+#define OBJ_dvcs		OBJ_id_kp,10L
+
+#define SN_id_it_caProtEncCert		"id-it-caProtEncCert"
+#define NID_id_it_caProtEncCert		298
+#define OBJ_id_it_caProtEncCert		OBJ_id_it,1L
+
+#define SN_id_it_signKeyPairTypes		"id-it-signKeyPairTypes"
+#define NID_id_it_signKeyPairTypes		299
+#define OBJ_id_it_signKeyPairTypes		OBJ_id_it,2L
+
+#define SN_id_it_encKeyPairTypes		"id-it-encKeyPairTypes"
+#define NID_id_it_encKeyPairTypes		300
+#define OBJ_id_it_encKeyPairTypes		OBJ_id_it,3L
+
+#define SN_id_it_preferredSymmAlg		"id-it-preferredSymmAlg"
+#define NID_id_it_preferredSymmAlg		301
+#define OBJ_id_it_preferredSymmAlg		OBJ_id_it,4L
+
+#define SN_id_it_caKeyUpdateInfo		"id-it-caKeyUpdateInfo"
+#define NID_id_it_caKeyUpdateInfo		302
+#define OBJ_id_it_caKeyUpdateInfo		OBJ_id_it,5L
+
+#define SN_id_it_currentCRL		"id-it-currentCRL"
+#define NID_id_it_currentCRL		303
+#define OBJ_id_it_currentCRL		OBJ_id_it,6L
+
+#define SN_id_it_unsupportedOIDs		"id-it-unsupportedOIDs"
+#define NID_id_it_unsupportedOIDs		304
+#define OBJ_id_it_unsupportedOIDs		OBJ_id_it,7L
+
+#define SN_id_it_subscriptionRequest		"id-it-subscriptionRequest"
+#define NID_id_it_subscriptionRequest		305
+#define OBJ_id_it_subscriptionRequest		OBJ_id_it,8L
+
+#define SN_id_it_subscriptionResponse		"id-it-subscriptionResponse"
+#define NID_id_it_subscriptionResponse		306
+#define OBJ_id_it_subscriptionResponse		OBJ_id_it,9L
+
+#define SN_id_it_keyPairParamReq		"id-it-keyPairParamReq"
+#define NID_id_it_keyPairParamReq		307
+#define OBJ_id_it_keyPairParamReq		OBJ_id_it,10L
+
+#define SN_id_it_keyPairParamRep		"id-it-keyPairParamRep"
+#define NID_id_it_keyPairParamRep		308
+#define OBJ_id_it_keyPairParamRep		OBJ_id_it,11L
+
+#define SN_id_it_revPassphrase		"id-it-revPassphrase"
+#define NID_id_it_revPassphrase		309
+#define OBJ_id_it_revPassphrase		OBJ_id_it,12L
+
+#define SN_id_it_implicitConfirm		"id-it-implicitConfirm"
+#define NID_id_it_implicitConfirm		310
+#define OBJ_id_it_implicitConfirm		OBJ_id_it,13L
+
+#define SN_id_it_confirmWaitTime		"id-it-confirmWaitTime"
+#define NID_id_it_confirmWaitTime		311
+#define OBJ_id_it_confirmWaitTime		OBJ_id_it,14L
+
+#define SN_id_it_origPKIMessage		"id-it-origPKIMessage"
+#define NID_id_it_origPKIMessage		312
+#define OBJ_id_it_origPKIMessage		OBJ_id_it,15L
+
+#define SN_id_it_suppLangTags		"id-it-suppLangTags"
+#define NID_id_it_suppLangTags		784
+#define OBJ_id_it_suppLangTags		OBJ_id_it,16L
+
+#define SN_id_regCtrl		"id-regCtrl"
+#define NID_id_regCtrl		313
+#define OBJ_id_regCtrl		OBJ_id_pkip,1L
+
+#define SN_id_regInfo		"id-regInfo"
+#define NID_id_regInfo		314
+#define OBJ_id_regInfo		OBJ_id_pkip,2L
+
+#define SN_id_regCtrl_regToken		"id-regCtrl-regToken"
+#define NID_id_regCtrl_regToken		315
+#define OBJ_id_regCtrl_regToken		OBJ_id_regCtrl,1L
+
+#define SN_id_regCtrl_authenticator		"id-regCtrl-authenticator"
+#define NID_id_regCtrl_authenticator		316
+#define OBJ_id_regCtrl_authenticator		OBJ_id_regCtrl,2L
+
+#define SN_id_regCtrl_pkiPublicationInfo		"id-regCtrl-pkiPublicationInfo"
+#define NID_id_regCtrl_pkiPublicationInfo		317
+#define OBJ_id_regCtrl_pkiPublicationInfo		OBJ_id_regCtrl,3L
+
+#define SN_id_regCtrl_pkiArchiveOptions		"id-regCtrl-pkiArchiveOptions"
+#define NID_id_regCtrl_pkiArchiveOptions		318
+#define OBJ_id_regCtrl_pkiArchiveOptions		OBJ_id_regCtrl,4L
+
+#define SN_id_regCtrl_oldCertID		"id-regCtrl-oldCertID"
+#define NID_id_regCtrl_oldCertID		319
+#define OBJ_id_regCtrl_oldCertID		OBJ_id_regCtrl,5L
+
+#define SN_id_regCtrl_protocolEncrKey		"id-regCtrl-protocolEncrKey"
+#define NID_id_regCtrl_protocolEncrKey		320
+#define OBJ_id_regCtrl_protocolEncrKey		OBJ_id_regCtrl,6L
+
+#define SN_id_regInfo_utf8Pairs		"id-regInfo-utf8Pairs"
+#define NID_id_regInfo_utf8Pairs		321
+#define OBJ_id_regInfo_utf8Pairs		OBJ_id_regInfo,1L
+
+#define SN_id_regInfo_certReq		"id-regInfo-certReq"
+#define NID_id_regInfo_certReq		322
+#define OBJ_id_regInfo_certReq		OBJ_id_regInfo,2L
+
+#define SN_id_alg_des40		"id-alg-des40"
+#define NID_id_alg_des40		323
+#define OBJ_id_alg_des40		OBJ_id_alg,1L
+
+#define SN_id_alg_noSignature		"id-alg-noSignature"
+#define NID_id_alg_noSignature		324
+#define OBJ_id_alg_noSignature		OBJ_id_alg,2L
+
+#define SN_id_alg_dh_sig_hmac_sha1		"id-alg-dh-sig-hmac-sha1"
+#define NID_id_alg_dh_sig_hmac_sha1		325
+#define OBJ_id_alg_dh_sig_hmac_sha1		OBJ_id_alg,3L
+
+#define SN_id_alg_dh_pop		"id-alg-dh-pop"
+#define NID_id_alg_dh_pop		326
+#define OBJ_id_alg_dh_pop		OBJ_id_alg,4L
+
+#define SN_id_cmc_statusInfo		"id-cmc-statusInfo"
+#define NID_id_cmc_statusInfo		327
+#define OBJ_id_cmc_statusInfo		OBJ_id_cmc,1L
+
+#define SN_id_cmc_identification		"id-cmc-identification"
+#define NID_id_cmc_identification		328
+#define OBJ_id_cmc_identification		OBJ_id_cmc,2L
+
+#define SN_id_cmc_identityProof		"id-cmc-identityProof"
+#define NID_id_cmc_identityProof		329
+#define OBJ_id_cmc_identityProof		OBJ_id_cmc,3L
+
+#define SN_id_cmc_dataReturn		"id-cmc-dataReturn"
+#define NID_id_cmc_dataReturn		330
+#define OBJ_id_cmc_dataReturn		OBJ_id_cmc,4L
+
+#define SN_id_cmc_transactionId		"id-cmc-transactionId"
+#define NID_id_cmc_transactionId		331
+#define OBJ_id_cmc_transactionId		OBJ_id_cmc,5L
+
+#define SN_id_cmc_senderNonce		"id-cmc-senderNonce"
+#define NID_id_cmc_senderNonce		332
+#define OBJ_id_cmc_senderNonce		OBJ_id_cmc,6L
+
+#define SN_id_cmc_recipientNonce		"id-cmc-recipientNonce"
+#define NID_id_cmc_recipientNonce		333
+#define OBJ_id_cmc_recipientNonce		OBJ_id_cmc,7L
+
+#define SN_id_cmc_addExtensions		"id-cmc-addExtensions"
+#define NID_id_cmc_addExtensions		334
+#define OBJ_id_cmc_addExtensions		OBJ_id_cmc,8L
+
+#define SN_id_cmc_encryptedPOP		"id-cmc-encryptedPOP"
+#define NID_id_cmc_encryptedPOP		335
+#define OBJ_id_cmc_encryptedPOP		OBJ_id_cmc,9L
+
+#define SN_id_cmc_decryptedPOP		"id-cmc-decryptedPOP"
+#define NID_id_cmc_decryptedPOP		336
+#define OBJ_id_cmc_decryptedPOP		OBJ_id_cmc,10L
+
+#define SN_id_cmc_lraPOPWitness		"id-cmc-lraPOPWitness"
+#define NID_id_cmc_lraPOPWitness		337
+#define OBJ_id_cmc_lraPOPWitness		OBJ_id_cmc,11L
+
+#define SN_id_cmc_getCert		"id-cmc-getCert"
+#define NID_id_cmc_getCert		338
+#define OBJ_id_cmc_getCert		OBJ_id_cmc,15L
+
+#define SN_id_cmc_getCRL		"id-cmc-getCRL"
+#define NID_id_cmc_getCRL		339
+#define OBJ_id_cmc_getCRL		OBJ_id_cmc,16L
+
+#define SN_id_cmc_revokeRequest		"id-cmc-revokeRequest"
+#define NID_id_cmc_revokeRequest		340
+#define OBJ_id_cmc_revokeRequest		OBJ_id_cmc,17L
+
+#define SN_id_cmc_regInfo		"id-cmc-regInfo"
+#define NID_id_cmc_regInfo		341
+#define OBJ_id_cmc_regInfo		OBJ_id_cmc,18L
+
+#define SN_id_cmc_responseInfo		"id-cmc-responseInfo"
+#define NID_id_cmc_responseInfo		342
+#define OBJ_id_cmc_responseInfo		OBJ_id_cmc,19L
+
+#define SN_id_cmc_queryPending		"id-cmc-queryPending"
+#define NID_id_cmc_queryPending		343
+#define OBJ_id_cmc_queryPending		OBJ_id_cmc,21L
+
+#define SN_id_cmc_popLinkRandom		"id-cmc-popLinkRandom"
+#define NID_id_cmc_popLinkRandom		344
+#define OBJ_id_cmc_popLinkRandom		OBJ_id_cmc,22L
+
+#define SN_id_cmc_popLinkWitness		"id-cmc-popLinkWitness"
+#define NID_id_cmc_popLinkWitness		345
+#define OBJ_id_cmc_popLinkWitness		OBJ_id_cmc,23L
+
+#define SN_id_cmc_confirmCertAcceptance		"id-cmc-confirmCertAcceptance"
+#define NID_id_cmc_confirmCertAcceptance		346
+#define OBJ_id_cmc_confirmCertAcceptance		OBJ_id_cmc,24L
+
+#define SN_id_on_personalData		"id-on-personalData"
+#define NID_id_on_personalData		347
+#define OBJ_id_on_personalData		OBJ_id_on,1L
+
+#define SN_id_on_permanentIdentifier		"id-on-permanentIdentifier"
+#define LN_id_on_permanentIdentifier		"Permanent Identifier"
+#define NID_id_on_permanentIdentifier		858
+#define OBJ_id_on_permanentIdentifier		OBJ_id_on,3L
+
+#define SN_id_pda_dateOfBirth		"id-pda-dateOfBirth"
+#define NID_id_pda_dateOfBirth		348
+#define OBJ_id_pda_dateOfBirth		OBJ_id_pda,1L
+
+#define SN_id_pda_placeOfBirth		"id-pda-placeOfBirth"
+#define NID_id_pda_placeOfBirth		349
+#define OBJ_id_pda_placeOfBirth		OBJ_id_pda,2L
+
+#define SN_id_pda_gender		"id-pda-gender"
+#define NID_id_pda_gender		351
+#define OBJ_id_pda_gender		OBJ_id_pda,3L
+
+#define SN_id_pda_countryOfCitizenship		"id-pda-countryOfCitizenship"
+#define NID_id_pda_countryOfCitizenship		352
+#define OBJ_id_pda_countryOfCitizenship		OBJ_id_pda,4L
+
+#define SN_id_pda_countryOfResidence		"id-pda-countryOfResidence"
+#define NID_id_pda_countryOfResidence		353
+#define OBJ_id_pda_countryOfResidence		OBJ_id_pda,5L
+
+#define SN_id_aca_authenticationInfo		"id-aca-authenticationInfo"
+#define NID_id_aca_authenticationInfo		354
+#define OBJ_id_aca_authenticationInfo		OBJ_id_aca,1L
+
+#define SN_id_aca_accessIdentity		"id-aca-accessIdentity"
+#define NID_id_aca_accessIdentity		355
+#define OBJ_id_aca_accessIdentity		OBJ_id_aca,2L
+
+#define SN_id_aca_chargingIdentity		"id-aca-chargingIdentity"
+#define NID_id_aca_chargingIdentity		356
+#define OBJ_id_aca_chargingIdentity		OBJ_id_aca,3L
+
+#define SN_id_aca_group		"id-aca-group"
+#define NID_id_aca_group		357
+#define OBJ_id_aca_group		OBJ_id_aca,4L
+
+#define SN_id_aca_role		"id-aca-role"
+#define NID_id_aca_role		358
+#define OBJ_id_aca_role		OBJ_id_aca,5L
+
+#define SN_id_aca_encAttrs		"id-aca-encAttrs"
+#define NID_id_aca_encAttrs		399
+#define OBJ_id_aca_encAttrs		OBJ_id_aca,6L
+
+#define SN_id_qcs_pkixQCSyntax_v1		"id-qcs-pkixQCSyntax-v1"
+#define NID_id_qcs_pkixQCSyntax_v1		359
+#define OBJ_id_qcs_pkixQCSyntax_v1		OBJ_id_qcs,1L
+
+#define SN_id_cct_crs		"id-cct-crs"
+#define NID_id_cct_crs		360
+#define OBJ_id_cct_crs		OBJ_id_cct,1L
+
+#define SN_id_cct_PKIData		"id-cct-PKIData"
+#define NID_id_cct_PKIData		361
+#define OBJ_id_cct_PKIData		OBJ_id_cct,2L
+
+#define SN_id_cct_PKIResponse		"id-cct-PKIResponse"
+#define NID_id_cct_PKIResponse		362
+#define OBJ_id_cct_PKIResponse		OBJ_id_cct,3L
+
+#define SN_id_ppl_anyLanguage		"id-ppl-anyLanguage"
+#define LN_id_ppl_anyLanguage		"Any language"
+#define NID_id_ppl_anyLanguage		664
+#define OBJ_id_ppl_anyLanguage		OBJ_id_ppl,0L
+
+#define SN_id_ppl_inheritAll		"id-ppl-inheritAll"
+#define LN_id_ppl_inheritAll		"Inherit all"
+#define NID_id_ppl_inheritAll		665
+#define OBJ_id_ppl_inheritAll		OBJ_id_ppl,1L
+
+#define SN_Independent		"id-ppl-independent"
+#define LN_Independent		"Independent"
+#define NID_Independent		667
+#define OBJ_Independent		OBJ_id_ppl,2L
+
+#define SN_ad_OCSP		"OCSP"
+#define LN_ad_OCSP		"OCSP"
+#define NID_ad_OCSP		178
+#define OBJ_ad_OCSP		OBJ_id_ad,1L
+
+#define SN_ad_ca_issuers		"caIssuers"
+#define LN_ad_ca_issuers		"CA Issuers"
+#define NID_ad_ca_issuers		179
+#define OBJ_ad_ca_issuers		OBJ_id_ad,2L
+
+#define SN_ad_timeStamping		"ad_timestamping"
+#define LN_ad_timeStamping		"AD Time Stamping"
+#define NID_ad_timeStamping		363
+#define OBJ_ad_timeStamping		OBJ_id_ad,3L
+
+#define SN_ad_dvcs		"AD_DVCS"
+#define LN_ad_dvcs		"ad dvcs"
+#define NID_ad_dvcs		364
+#define OBJ_ad_dvcs		OBJ_id_ad,4L
+
+#define SN_caRepository		"caRepository"
+#define LN_caRepository		"CA Repository"
+#define NID_caRepository		785
+#define OBJ_caRepository		OBJ_id_ad,5L
+
+#define OBJ_id_pkix_OCSP		OBJ_ad_OCSP
+
+#define SN_id_pkix_OCSP_basic		"basicOCSPResponse"
+#define LN_id_pkix_OCSP_basic		"Basic OCSP Response"
+#define NID_id_pkix_OCSP_basic		365
+#define OBJ_id_pkix_OCSP_basic		OBJ_id_pkix_OCSP,1L
+
+#define SN_id_pkix_OCSP_Nonce		"Nonce"
+#define LN_id_pkix_OCSP_Nonce		"OCSP Nonce"
+#define NID_id_pkix_OCSP_Nonce		366
+#define OBJ_id_pkix_OCSP_Nonce		OBJ_id_pkix_OCSP,2L
+
+#define SN_id_pkix_OCSP_CrlID		"CrlID"
+#define LN_id_pkix_OCSP_CrlID		"OCSP CRL ID"
+#define NID_id_pkix_OCSP_CrlID		367
+#define OBJ_id_pkix_OCSP_CrlID		OBJ_id_pkix_OCSP,3L
+
+#define SN_id_pkix_OCSP_acceptableResponses		"acceptableResponses"
+#define LN_id_pkix_OCSP_acceptableResponses		"Acceptable OCSP Responses"
+#define NID_id_pkix_OCSP_acceptableResponses		368
+#define OBJ_id_pkix_OCSP_acceptableResponses		OBJ_id_pkix_OCSP,4L
+
+#define SN_id_pkix_OCSP_noCheck		"noCheck"
+#define LN_id_pkix_OCSP_noCheck		"OCSP No Check"
+#define NID_id_pkix_OCSP_noCheck		369
+#define OBJ_id_pkix_OCSP_noCheck		OBJ_id_pkix_OCSP,5L
+
+#define SN_id_pkix_OCSP_archiveCutoff		"archiveCutoff"
+#define LN_id_pkix_OCSP_archiveCutoff		"OCSP Archive Cutoff"
+#define NID_id_pkix_OCSP_archiveCutoff		370
+#define OBJ_id_pkix_OCSP_archiveCutoff		OBJ_id_pkix_OCSP,6L
+
+#define SN_id_pkix_OCSP_serviceLocator		"serviceLocator"
+#define LN_id_pkix_OCSP_serviceLocator		"OCSP Service Locator"
+#define NID_id_pkix_OCSP_serviceLocator		371
+#define OBJ_id_pkix_OCSP_serviceLocator		OBJ_id_pkix_OCSP,7L
+
+#define SN_id_pkix_OCSP_extendedStatus		"extendedStatus"
+#define LN_id_pkix_OCSP_extendedStatus		"Extended OCSP Status"
+#define NID_id_pkix_OCSP_extendedStatus		372
+#define OBJ_id_pkix_OCSP_extendedStatus		OBJ_id_pkix_OCSP,8L
+
+#define SN_id_pkix_OCSP_valid		"valid"
+#define NID_id_pkix_OCSP_valid		373
+#define OBJ_id_pkix_OCSP_valid		OBJ_id_pkix_OCSP,9L
+
+#define SN_id_pkix_OCSP_path		"path"
+#define NID_id_pkix_OCSP_path		374
+#define OBJ_id_pkix_OCSP_path		OBJ_id_pkix_OCSP,10L
+
+#define SN_id_pkix_OCSP_trustRoot		"trustRoot"
+#define LN_id_pkix_OCSP_trustRoot		"Trust Root"
+#define NID_id_pkix_OCSP_trustRoot		375
+#define OBJ_id_pkix_OCSP_trustRoot		OBJ_id_pkix_OCSP,11L
+
+#define SN_algorithm		"algorithm"
+#define LN_algorithm		"algorithm"
+#define NID_algorithm		376
+#define OBJ_algorithm		1L,3L,14L,3L,2L
+
+#define SN_md5WithRSA		"RSA-NP-MD5"
+#define LN_md5WithRSA		"md5WithRSA"
+#define NID_md5WithRSA		104
+#define OBJ_md5WithRSA		OBJ_algorithm,3L
+
+#define SN_des_ecb		"DES-ECB"
+#define LN_des_ecb		"des-ecb"
+#define NID_des_ecb		29
+#define OBJ_des_ecb		OBJ_algorithm,6L
+
+#define SN_des_cbc		"DES-CBC"
+#define LN_des_cbc		"des-cbc"
+#define NID_des_cbc		31
+#define OBJ_des_cbc		OBJ_algorithm,7L
+
+#define SN_des_ofb64		"DES-OFB"
+#define LN_des_ofb64		"des-ofb"
+#define NID_des_ofb64		45
+#define OBJ_des_ofb64		OBJ_algorithm,8L
+
+#define SN_des_cfb64		"DES-CFB"
+#define LN_des_cfb64		"des-cfb"
+#define NID_des_cfb64		30
+#define OBJ_des_cfb64		OBJ_algorithm,9L
+
+#define SN_rsaSignature		"rsaSignature"
+#define NID_rsaSignature		377
+#define OBJ_rsaSignature		OBJ_algorithm,11L
+
+#define SN_dsa_2		"DSA-old"
+#define LN_dsa_2		"dsaEncryption-old"
+#define NID_dsa_2		67
+#define OBJ_dsa_2		OBJ_algorithm,12L
+
+#define SN_dsaWithSHA		"DSA-SHA"
+#define LN_dsaWithSHA		"dsaWithSHA"
+#define NID_dsaWithSHA		66
+#define OBJ_dsaWithSHA		OBJ_algorithm,13L
+
+#define SN_shaWithRSAEncryption		"RSA-SHA"
+#define LN_shaWithRSAEncryption		"shaWithRSAEncryption"
+#define NID_shaWithRSAEncryption		42
+#define OBJ_shaWithRSAEncryption		OBJ_algorithm,15L
+
+#define SN_des_ede_ecb		"DES-EDE"
+#define LN_des_ede_ecb		"des-ede"
+#define NID_des_ede_ecb		32
+#define OBJ_des_ede_ecb		OBJ_algorithm,17L
+
+#define SN_des_ede3_ecb		"DES-EDE3"
+#define LN_des_ede3_ecb		"des-ede3"
+#define NID_des_ede3_ecb		33
+
+#define SN_des_ede_cbc		"DES-EDE-CBC"
+#define LN_des_ede_cbc		"des-ede-cbc"
+#define NID_des_ede_cbc		43
+
+#define SN_des_ede_cfb64		"DES-EDE-CFB"
+#define LN_des_ede_cfb64		"des-ede-cfb"
+#define NID_des_ede_cfb64		60
+
+#define SN_des_ede3_cfb64		"DES-EDE3-CFB"
+#define LN_des_ede3_cfb64		"des-ede3-cfb"
+#define NID_des_ede3_cfb64		61
+
+#define SN_des_ede_ofb64		"DES-EDE-OFB"
+#define LN_des_ede_ofb64		"des-ede-ofb"
+#define NID_des_ede_ofb64		62
+
+#define SN_des_ede3_ofb64		"DES-EDE3-OFB"
+#define LN_des_ede3_ofb64		"des-ede3-ofb"
+#define NID_des_ede3_ofb64		63
+
+#define SN_desx_cbc		"DESX-CBC"
+#define LN_desx_cbc		"desx-cbc"
+#define NID_desx_cbc		80
+
+#define SN_sha		"SHA"
+#define LN_sha		"sha"
+#define NID_sha		41
+#define OBJ_sha		OBJ_algorithm,18L
+
+#define SN_sha1		"SHA1"
+#define LN_sha1		"sha1"
+#define NID_sha1		64
+#define OBJ_sha1		OBJ_algorithm,26L
+
+#define SN_dsaWithSHA1_2		"DSA-SHA1-old"
+#define LN_dsaWithSHA1_2		"dsaWithSHA1-old"
+#define NID_dsaWithSHA1_2		70
+#define OBJ_dsaWithSHA1_2		OBJ_algorithm,27L
+
+#define SN_sha1WithRSA		"RSA-SHA1-2"
+#define LN_sha1WithRSA		"sha1WithRSA"
+#define NID_sha1WithRSA		115
+#define OBJ_sha1WithRSA		OBJ_algorithm,29L
+
+#define SN_ripemd160		"RIPEMD160"
+#define LN_ripemd160		"ripemd160"
+#define NID_ripemd160		117
+#define OBJ_ripemd160		1L,3L,36L,3L,2L,1L
+
+#define SN_ripemd160WithRSA		"RSA-RIPEMD160"
+#define LN_ripemd160WithRSA		"ripemd160WithRSA"
+#define NID_ripemd160WithRSA		119
+#define OBJ_ripemd160WithRSA		1L,3L,36L,3L,3L,1L,2L
+
+#define SN_sxnet		"SXNetID"
+#define LN_sxnet		"Strong Extranet ID"
+#define NID_sxnet		143
+#define OBJ_sxnet		1L,3L,101L,1L,4L,1L
+
+#define SN_X500		"X500"
+#define LN_X500		"directory services (X.500)"
+#define NID_X500		11
+#define OBJ_X500		2L,5L
+
+#define SN_X509		"X509"
+#define NID_X509		12
+#define OBJ_X509		OBJ_X500,4L
+
+#define SN_commonName		"CN"
+#define LN_commonName		"commonName"
+#define NID_commonName		13
+#define OBJ_commonName		OBJ_X509,3L
+
+#define SN_surname		"SN"
+#define LN_surname		"surname"
+#define NID_surname		100
+#define OBJ_surname		OBJ_X509,4L
+
+#define LN_serialNumber		"serialNumber"
+#define NID_serialNumber		105
+#define OBJ_serialNumber		OBJ_X509,5L
+
+#define SN_countryName		"C"
+#define LN_countryName		"countryName"
+#define NID_countryName		14
+#define OBJ_countryName		OBJ_X509,6L
+
+#define SN_localityName		"L"
+#define LN_localityName		"localityName"
+#define NID_localityName		15
+#define OBJ_localityName		OBJ_X509,7L
+
+#define SN_stateOrProvinceName		"ST"
+#define LN_stateOrProvinceName		"stateOrProvinceName"
+#define NID_stateOrProvinceName		16
+#define OBJ_stateOrProvinceName		OBJ_X509,8L
+
+#define SN_streetAddress		"street"
+#define LN_streetAddress		"streetAddress"
+#define NID_streetAddress		660
+#define OBJ_streetAddress		OBJ_X509,9L
+
+#define SN_organizationName		"O"
+#define LN_organizationName		"organizationName"
+#define NID_organizationName		17
+#define OBJ_organizationName		OBJ_X509,10L
+
+#define SN_organizationalUnitName		"OU"
+#define LN_organizationalUnitName		"organizationalUnitName"
+#define NID_organizationalUnitName		18
+#define OBJ_organizationalUnitName		OBJ_X509,11L
+
+#define SN_title		"title"
+#define LN_title		"title"
+#define NID_title		106
+#define OBJ_title		OBJ_X509,12L
+
+#define LN_description		"description"
+#define NID_description		107
+#define OBJ_description		OBJ_X509,13L
+
+#define LN_searchGuide		"searchGuide"
+#define NID_searchGuide		859
+#define OBJ_searchGuide		OBJ_X509,14L
+
+#define LN_businessCategory		"businessCategory"
+#define NID_businessCategory		860
+#define OBJ_businessCategory		OBJ_X509,15L
+
+#define LN_postalAddress		"postalAddress"
+#define NID_postalAddress		861
+#define OBJ_postalAddress		OBJ_X509,16L
+
+#define LN_postalCode		"postalCode"
+#define NID_postalCode		661
+#define OBJ_postalCode		OBJ_X509,17L
+
+#define LN_postOfficeBox		"postOfficeBox"
+#define NID_postOfficeBox		862
+#define OBJ_postOfficeBox		OBJ_X509,18L
+
+#define LN_physicalDeliveryOfficeName		"physicalDeliveryOfficeName"
+#define NID_physicalDeliveryOfficeName		863
+#define OBJ_physicalDeliveryOfficeName		OBJ_X509,19L
+
+#define LN_telephoneNumber		"telephoneNumber"
+#define NID_telephoneNumber		864
+#define OBJ_telephoneNumber		OBJ_X509,20L
+
+#define LN_telexNumber		"telexNumber"
+#define NID_telexNumber		865
+#define OBJ_telexNumber		OBJ_X509,21L
+
+#define LN_teletexTerminalIdentifier		"teletexTerminalIdentifier"
+#define NID_teletexTerminalIdentifier		866
+#define OBJ_teletexTerminalIdentifier		OBJ_X509,22L
+
+#define LN_facsimileTelephoneNumber		"facsimileTelephoneNumber"
+#define NID_facsimileTelephoneNumber		867
+#define OBJ_facsimileTelephoneNumber		OBJ_X509,23L
+
+#define LN_x121Address		"x121Address"
+#define NID_x121Address		868
+#define OBJ_x121Address		OBJ_X509,24L
+
+#define LN_internationaliSDNNumber		"internationaliSDNNumber"
+#define NID_internationaliSDNNumber		869
+#define OBJ_internationaliSDNNumber		OBJ_X509,25L
+
+#define LN_registeredAddress		"registeredAddress"
+#define NID_registeredAddress		870
+#define OBJ_registeredAddress		OBJ_X509,26L
+
+#define LN_destinationIndicator		"destinationIndicator"
+#define NID_destinationIndicator		871
+#define OBJ_destinationIndicator		OBJ_X509,27L
+
+#define LN_preferredDeliveryMethod		"preferredDeliveryMethod"
+#define NID_preferredDeliveryMethod		872
+#define OBJ_preferredDeliveryMethod		OBJ_X509,28L
+
+#define LN_presentationAddress		"presentationAddress"
+#define NID_presentationAddress		873
+#define OBJ_presentationAddress		OBJ_X509,29L
+
+#define LN_supportedApplicationContext		"supportedApplicationContext"
+#define NID_supportedApplicationContext		874
+#define OBJ_supportedApplicationContext		OBJ_X509,30L
+
+#define SN_member		"member"
+#define NID_member		875
+#define OBJ_member		OBJ_X509,31L
+
+#define SN_owner		"owner"
+#define NID_owner		876
+#define OBJ_owner		OBJ_X509,32L
+
+#define LN_roleOccupant		"roleOccupant"
+#define NID_roleOccupant		877
+#define OBJ_roleOccupant		OBJ_X509,33L
+
+#define SN_seeAlso		"seeAlso"
+#define NID_seeAlso		878
+#define OBJ_seeAlso		OBJ_X509,34L
+
+#define LN_userPassword		"userPassword"
+#define NID_userPassword		879
+#define OBJ_userPassword		OBJ_X509,35L
+
+#define LN_userCertificate		"userCertificate"
+#define NID_userCertificate		880
+#define OBJ_userCertificate		OBJ_X509,36L
+
+#define LN_cACertificate		"cACertificate"
+#define NID_cACertificate		881
+#define OBJ_cACertificate		OBJ_X509,37L
+
+#define LN_authorityRevocationList		"authorityRevocationList"
+#define NID_authorityRevocationList		882
+#define OBJ_authorityRevocationList		OBJ_X509,38L
+
+#define LN_certificateRevocationList		"certificateRevocationList"
+#define NID_certificateRevocationList		883
+#define OBJ_certificateRevocationList		OBJ_X509,39L
+
+#define LN_crossCertificatePair		"crossCertificatePair"
+#define NID_crossCertificatePair		884
+#define OBJ_crossCertificatePair		OBJ_X509,40L
+
+#define SN_name		"name"
+#define LN_name		"name"
+#define NID_name		173
+#define OBJ_name		OBJ_X509,41L
+
+#define SN_givenName		"GN"
+#define LN_givenName		"givenName"
+#define NID_givenName		99
+#define OBJ_givenName		OBJ_X509,42L
+
+#define SN_initials		"initials"
+#define LN_initials		"initials"
+#define NID_initials		101
+#define OBJ_initials		OBJ_X509,43L
+
+#define LN_generationQualifier		"generationQualifier"
+#define NID_generationQualifier		509
+#define OBJ_generationQualifier		OBJ_X509,44L
+
+#define LN_x500UniqueIdentifier		"x500UniqueIdentifier"
+#define NID_x500UniqueIdentifier		503
+#define OBJ_x500UniqueIdentifier		OBJ_X509,45L
+
+#define SN_dnQualifier		"dnQualifier"
+#define LN_dnQualifier		"dnQualifier"
+#define NID_dnQualifier		174
+#define OBJ_dnQualifier		OBJ_X509,46L
+
+#define LN_enhancedSearchGuide		"enhancedSearchGuide"
+#define NID_enhancedSearchGuide		885
+#define OBJ_enhancedSearchGuide		OBJ_X509,47L
+
+#define LN_protocolInformation		"protocolInformation"
+#define NID_protocolInformation		886
+#define OBJ_protocolInformation		OBJ_X509,48L
+
+#define LN_distinguishedName		"distinguishedName"
+#define NID_distinguishedName		887
+#define OBJ_distinguishedName		OBJ_X509,49L
+
+#define LN_uniqueMember		"uniqueMember"
+#define NID_uniqueMember		888
+#define OBJ_uniqueMember		OBJ_X509,50L
+
+#define LN_houseIdentifier		"houseIdentifier"
+#define NID_houseIdentifier		889
+#define OBJ_houseIdentifier		OBJ_X509,51L
+
+#define LN_supportedAlgorithms		"supportedAlgorithms"
+#define NID_supportedAlgorithms		890
+#define OBJ_supportedAlgorithms		OBJ_X509,52L
+
+#define LN_deltaRevocationList		"deltaRevocationList"
+#define NID_deltaRevocationList		891
+#define OBJ_deltaRevocationList		OBJ_X509,53L
+
+#define SN_dmdName		"dmdName"
+#define NID_dmdName		892
+#define OBJ_dmdName		OBJ_X509,54L
+
+#define LN_pseudonym		"pseudonym"
+#define NID_pseudonym		510
+#define OBJ_pseudonym		OBJ_X509,65L
+
+#define SN_role		"role"
+#define LN_role		"role"
+#define NID_role		400
+#define OBJ_role		OBJ_X509,72L
+
+#define SN_X500algorithms		"X500algorithms"
+#define LN_X500algorithms		"directory services - algorithms"
+#define NID_X500algorithms		378
+#define OBJ_X500algorithms		OBJ_X500,8L
+
+#define SN_rsa		"RSA"
+#define LN_rsa		"rsa"
+#define NID_rsa		19
+#define OBJ_rsa		OBJ_X500algorithms,1L,1L
+
+#define SN_mdc2WithRSA		"RSA-MDC2"
+#define LN_mdc2WithRSA		"mdc2WithRSA"
+#define NID_mdc2WithRSA		96
+#define OBJ_mdc2WithRSA		OBJ_X500algorithms,3L,100L
+
+#define SN_mdc2		"MDC2"
+#define LN_mdc2		"mdc2"
+#define NID_mdc2		95
+#define OBJ_mdc2		OBJ_X500algorithms,3L,101L
+
+#define SN_id_ce		"id-ce"
+#define NID_id_ce		81
+#define OBJ_id_ce		OBJ_X500,29L
+
+#define SN_subject_directory_attributes		"subjectDirectoryAttributes"
+#define LN_subject_directory_attributes		"X509v3 Subject Directory Attribu=
tes"
+#define NID_subject_directory_attributes		769
+#define OBJ_subject_directory_attributes		OBJ_id_ce,9L
+
+#define SN_subject_key_identifier		"subjectKeyIdentifier"
+#define LN_subject_key_identifier		"X509v3 Subject Key Identifier"
+#define NID_subject_key_identifier		82
+#define OBJ_subject_key_identifier		OBJ_id_ce,14L
+
+#define SN_key_usage		"keyUsage"
+#define LN_key_usage		"X509v3 Key Usage"
+#define NID_key_usage		83
+#define OBJ_key_usage		OBJ_id_ce,15L
+
+#define SN_private_key_usage_period		"privateKeyUsagePeriod"
+#define LN_private_key_usage_period		"X509v3 Private Key Usage Period"
+#define NID_private_key_usage_period		84
+#define OBJ_private_key_usage_period		OBJ_id_ce,16L
+
+#define SN_subject_alt_name		"subjectAltName"
+#define LN_subject_alt_name		"X509v3 Subject Alternative Name"
+#define NID_subject_alt_name		85
+#define OBJ_subject_alt_name		OBJ_id_ce,17L
+
+#define SN_issuer_alt_name		"issuerAltName"
+#define LN_issuer_alt_name		"X509v3 Issuer Alternative Name"
+#define NID_issuer_alt_name		86
+#define OBJ_issuer_alt_name		OBJ_id_ce,18L
+
+#define SN_basic_constraints		"basicConstraints"
+#define LN_basic_constraints		"X509v3 Basic Constraints"
+#define NID_basic_constraints		87
+#define OBJ_basic_constraints		OBJ_id_ce,19L
+
+#define SN_crl_number		"crlNumber"
+#define LN_crl_number		"X509v3 CRL Number"
+#define NID_crl_number		88
+#define OBJ_crl_number		OBJ_id_ce,20L
+
+#define SN_crl_reason		"CRLReason"
+#define LN_crl_reason		"X509v3 CRL Reason Code"
+#define NID_crl_reason		141
+#define OBJ_crl_reason		OBJ_id_ce,21L
+
+#define SN_invalidity_date		"invalidityDate"
+#define LN_invalidity_date		"Invalidity Date"
+#define NID_invalidity_date		142
+#define OBJ_invalidity_date		OBJ_id_ce,24L
+
+#define SN_delta_crl		"deltaCRL"
+#define LN_delta_crl		"X509v3 Delta CRL Indicator"
+#define NID_delta_crl		140
+#define OBJ_delta_crl		OBJ_id_ce,27L
+
+#define SN_issuing_distribution_point		"issuingDistributionPoint"
+#define LN_issuing_distribution_point		"X509v3 Issuing Distrubution Point"
+#define NID_issuing_distribution_point		770
+#define OBJ_issuing_distribution_point		OBJ_id_ce,28L
+
+#define SN_certificate_issuer		"certificateIssuer"
+#define LN_certificate_issuer		"X509v3 Certificate Issuer"
+#define NID_certificate_issuer		771
+#define OBJ_certificate_issuer		OBJ_id_ce,29L
+
+#define SN_name_constraints		"nameConstraints"
+#define LN_name_constraints		"X509v3 Name Constraints"
+#define NID_name_constraints		666
+#define OBJ_name_constraints		OBJ_id_ce,30L
+
+#define SN_crl_distribution_points		"crlDistributionPoints"
+#define LN_crl_distribution_points		"X509v3 CRL Distribution Points"
+#define NID_crl_distribution_points		103
+#define OBJ_crl_distribution_points		OBJ_id_ce,31L
+
+#define SN_certificate_policies		"certificatePolicies"
+#define LN_certificate_policies		"X509v3 Certificate Policies"
+#define NID_certificate_policies		89
+#define OBJ_certificate_policies		OBJ_id_ce,32L
+
+#define SN_any_policy		"anyPolicy"
+#define LN_any_policy		"X509v3 Any Policy"
+#define NID_any_policy		746
+#define OBJ_any_policy		OBJ_certificate_policies,0L
+
+#define SN_policy_mappings		"policyMappings"
+#define LN_policy_mappings		"X509v3 Policy Mappings"
+#define NID_policy_mappings		747
+#define OBJ_policy_mappings		OBJ_id_ce,33L
+
+#define SN_authority_key_identifier		"authorityKeyIdentifier"
+#define LN_authority_key_identifier		"X509v3 Authority Key Identifier"
+#define NID_authority_key_identifier		90
+#define OBJ_authority_key_identifier		OBJ_id_ce,35L
+
+#define SN_policy_constraints		"policyConstraints"
+#define LN_policy_constraints		"X509v3 Policy Constraints"
+#define NID_policy_constraints		401
+#define OBJ_policy_constraints		OBJ_id_ce,36L
+
+#define SN_ext_key_usage		"extendedKeyUsage"
+#define LN_ext_key_usage		"X509v3 Extended Key Usage"
+#define NID_ext_key_usage		126
+#define OBJ_ext_key_usage		OBJ_id_ce,37L
+
+#define SN_freshest_crl		"freshestCRL"
+#define LN_freshest_crl		"X509v3 Freshest CRL"
+#define NID_freshest_crl		857
+#define OBJ_freshest_crl		OBJ_id_ce,46L
+
+#define SN_inhibit_any_policy		"inhibitAnyPolicy"
+#define LN_inhibit_any_policy		"X509v3 Inhibit Any Policy"
+#define NID_inhibit_any_policy		748
+#define OBJ_inhibit_any_policy		OBJ_id_ce,54L
+
+#define SN_target_information		"targetInformation"
+#define LN_target_information		"X509v3 AC Targeting"
+#define NID_target_information		402
+#define OBJ_target_information		OBJ_id_ce,55L
+
+#define SN_no_rev_avail		"noRevAvail"
+#define LN_no_rev_avail		"X509v3 No Revocation Available"
+#define NID_no_rev_avail		403
+#define OBJ_no_rev_avail		OBJ_id_ce,56L
+
+#define SN_netscape		"Netscape"
+#define LN_netscape		"Netscape Communications Corp."
+#define NID_netscape		57
+#define OBJ_netscape		2L,16L,840L,1L,113730L
+
+#define SN_netscape_cert_extension		"nsCertExt"
+#define LN_netscape_cert_extension		"Netscape Certificate Extension"
+#define NID_netscape_cert_extension		58
+#define OBJ_netscape_cert_extension		OBJ_netscape,1L
+
+#define SN_netscape_data_type		"nsDataType"
+#define LN_netscape_data_type		"Netscape Data Type"
+#define NID_netscape_data_type		59
+#define OBJ_netscape_data_type		OBJ_netscape,2L
+
+#define SN_netscape_cert_type		"nsCertType"
+#define LN_netscape_cert_type		"Netscape Cert Type"
+#define NID_netscape_cert_type		71
+#define OBJ_netscape_cert_type		OBJ_netscape_cert_extension,1L
+
+#define SN_netscape_base_url		"nsBaseUrl"
+#define LN_netscape_base_url		"Netscape Base Url"
+#define NID_netscape_base_url		72
+#define OBJ_netscape_base_url		OBJ_netscape_cert_extension,2L
+
+#define SN_netscape_revocation_url		"nsRevocationUrl"
+#define LN_netscape_revocation_url		"Netscape Revocation Url"
+#define NID_netscape_revocation_url		73
+#define OBJ_netscape_revocation_url		OBJ_netscape_cert_extension,3L
+
+#define SN_netscape_ca_revocation_url		"nsCaRevocationUrl"
+#define LN_netscape_ca_revocation_url		"Netscape CA Revocation Url"
+#define NID_netscape_ca_revocation_url		74
+#define OBJ_netscape_ca_revocation_url		OBJ_netscape_cert_extension,4L
+
+#define SN_netscape_renewal_url		"nsRenewalUrl"
+#define LN_netscape_renewal_url		"Netscape Renewal Url"
+#define NID_netscape_renewal_url		75
+#define OBJ_netscape_renewal_url		OBJ_netscape_cert_extension,7L
+
+#define SN_netscape_ca_policy_url		"nsCaPolicyUrl"
+#define LN_netscape_ca_policy_url		"Netscape CA Policy Url"
+#define NID_netscape_ca_policy_url		76
+#define OBJ_netscape_ca_policy_url		OBJ_netscape_cert_extension,8L
+
+#define SN_netscape_ssl_server_name		"nsSslServerName"
+#define LN_netscape_ssl_server_name		"Netscape SSL Server Name"
+#define NID_netscape_ssl_server_name		77
+#define OBJ_netscape_ssl_server_name		OBJ_netscape_cert_extension,12L
+
+#define SN_netscape_comment		"nsComment"
+#define LN_netscape_comment		"Netscape Comment"
+#define NID_netscape_comment		78
+#define OBJ_netscape_comment		OBJ_netscape_cert_extension,13L
+
+#define SN_netscape_cert_sequence		"nsCertSequence"
+#define LN_netscape_cert_sequence		"Netscape Certificate Sequence"
+#define NID_netscape_cert_sequence		79
+#define OBJ_netscape_cert_sequence		OBJ_netscape_data_type,5L
+
+#define SN_ns_sgc		"nsSGC"
+#define LN_ns_sgc		"Netscape Server Gated Crypto"
+#define NID_ns_sgc		139
+#define OBJ_ns_sgc		OBJ_netscape,4L,1L
+
+#define SN_org		"ORG"
+#define LN_org		"org"
+#define NID_org		379
+#define OBJ_org		OBJ_iso,3L
+
+#define SN_dod		"DOD"
+#define LN_dod		"dod"
+#define NID_dod		380
+#define OBJ_dod		OBJ_org,6L
+
+#define SN_iana		"IANA"
+#define LN_iana		"iana"
+#define NID_iana		381
+#define OBJ_iana		OBJ_dod,1L
+
+#define OBJ_internet		OBJ_iana
+
+#define SN_Directory		"directory"
+#define LN_Directory		"Directory"
+#define NID_Directory		382
+#define OBJ_Directory		OBJ_internet,1L
+
+#define SN_Management		"mgmt"
+#define LN_Management		"Management"
+#define NID_Management		383
+#define OBJ_Management		OBJ_internet,2L
+
+#define SN_Experimental		"experimental"
+#define LN_Experimental		"Experimental"
+#define NID_Experimental		384
+#define OBJ_Experimental		OBJ_internet,3L
+
+#define SN_Private		"private"
+#define LN_Private		"Private"
+#define NID_Private		385
+#define OBJ_Private		OBJ_internet,4L
+
+#define SN_Security		"security"
+#define LN_Security		"Security"
+#define NID_Security		386
+#define OBJ_Security		OBJ_internet,5L
+
+#define SN_SNMPv2		"snmpv2"
+#define LN_SNMPv2		"SNMPv2"
+#define NID_SNMPv2		387
+#define OBJ_SNMPv2		OBJ_internet,6L
+
+#define LN_Mail		"Mail"
+#define NID_Mail		388
+#define OBJ_Mail		OBJ_internet,7L
+
+#define SN_Enterprises		"enterprises"
+#define LN_Enterprises		"Enterprises"
+#define NID_Enterprises		389
+#define OBJ_Enterprises		OBJ_Private,1L
+
+#define SN_dcObject		"dcobject"
+#define LN_dcObject		"dcObject"
+#define NID_dcObject		390
+#define OBJ_dcObject		OBJ_Enterprises,1466L,344L
+
+#define SN_mime_mhs		"mime-mhs"
+#define LN_mime_mhs		"MIME MHS"
+#define NID_mime_mhs		504
+#define OBJ_mime_mhs		OBJ_Mail,1L
+
+#define SN_mime_mhs_headings		"mime-mhs-headings"
+#define LN_mime_mhs_headings		"mime-mhs-headings"
+#define NID_mime_mhs_headings		505
+#define OBJ_mime_mhs_headings		OBJ_mime_mhs,1L
+
+#define SN_mime_mhs_bodies		"mime-mhs-bodies"
+#define LN_mime_mhs_bodies		"mime-mhs-bodies"
+#define NID_mime_mhs_bodies		506
+#define OBJ_mime_mhs_bodies		OBJ_mime_mhs,2L
+
+#define SN_id_hex_partial_message		"id-hex-partial-message"
+#define LN_id_hex_partial_message		"id-hex-partial-message"
+#define NID_id_hex_partial_message		507
+#define OBJ_id_hex_partial_message		OBJ_mime_mhs_headings,1L
+
+#define SN_id_hex_multipart_message		"id-hex-multipart-message"
+#define LN_id_hex_multipart_message		"id-hex-multipart-message"
+#define NID_id_hex_multipart_message		508
+#define OBJ_id_hex_multipart_message		OBJ_mime_mhs_headings,2L
+
+#define SN_rle_compression		"RLE"
+#define LN_rle_compression		"run length compression"
+#define NID_rle_compression		124
+#define OBJ_rle_compression		1L,1L,1L,1L,666L,1L
+
+#define SN_zlib_compression		"ZLIB"
+#define LN_zlib_compression		"zlib compression"
+#define NID_zlib_compression		125
+#define OBJ_zlib_compression		OBJ_id_smime_alg,8L
+
+#define OBJ_csor		2L,16L,840L,1L,101L,3L
+
+#define OBJ_nistAlgorithms		OBJ_csor,4L
+
+#define OBJ_aes		OBJ_nistAlgorithms,1L
+
+#define SN_aes_128_ecb		"AES-128-ECB"
+#define LN_aes_128_ecb		"aes-128-ecb"
+#define NID_aes_128_ecb		418
+#define OBJ_aes_128_ecb		OBJ_aes,1L
+
+#define SN_aes_128_cbc		"AES-128-CBC"
+#define LN_aes_128_cbc		"aes-128-cbc"
+#define NID_aes_128_cbc		419
+#define OBJ_aes_128_cbc		OBJ_aes,2L
+
+#define SN_aes_128_ofb128		"AES-128-OFB"
+#define LN_aes_128_ofb128		"aes-128-ofb"
+#define NID_aes_128_ofb128		420
+#define OBJ_aes_128_ofb128		OBJ_aes,3L
+
+#define SN_aes_128_cfb128		"AES-128-CFB"
+#define LN_aes_128_cfb128		"aes-128-cfb"
+#define NID_aes_128_cfb128		421
+#define OBJ_aes_128_cfb128		OBJ_aes,4L
+
+#define SN_aes_192_ecb		"AES-192-ECB"
+#define LN_aes_192_ecb		"aes-192-ecb"
+#define NID_aes_192_ecb		422
+#define OBJ_aes_192_ecb		OBJ_aes,21L
+
+#define SN_aes_192_cbc		"AES-192-CBC"
+#define LN_aes_192_cbc		"aes-192-cbc"
+#define NID_aes_192_cbc		423
+#define OBJ_aes_192_cbc		OBJ_aes,22L
+
+#define SN_aes_192_ofb128		"AES-192-OFB"
+#define LN_aes_192_ofb128		"aes-192-ofb"
+#define NID_aes_192_ofb128		424
+#define OBJ_aes_192_ofb128		OBJ_aes,23L
+
+#define SN_aes_192_cfb128		"AES-192-CFB"
+#define LN_aes_192_cfb128		"aes-192-cfb"
+#define NID_aes_192_cfb128		425
+#define OBJ_aes_192_cfb128		OBJ_aes,24L
+
+#define SN_aes_256_ecb		"AES-256-ECB"
+#define LN_aes_256_ecb		"aes-256-ecb"
+#define NID_aes_256_ecb		426
+#define OBJ_aes_256_ecb		OBJ_aes,41L
+
+#define SN_aes_256_cbc		"AES-256-CBC"
+#define LN_aes_256_cbc		"aes-256-cbc"
+#define NID_aes_256_cbc		427
+#define OBJ_aes_256_cbc		OBJ_aes,42L
+
+#define SN_aes_256_ofb128		"AES-256-OFB"
+#define LN_aes_256_ofb128		"aes-256-ofb"
+#define NID_aes_256_ofb128		428
+#define OBJ_aes_256_ofb128		OBJ_aes,43L
+
+#define SN_aes_256_cfb128		"AES-256-CFB"
+#define LN_aes_256_cfb128		"aes-256-cfb"
+#define NID_aes_256_cfb128		429
+#define OBJ_aes_256_cfb128		OBJ_aes,44L
+
+#define SN_aes_128_cfb1		"AES-128-CFB1"
+#define LN_aes_128_cfb1		"aes-128-cfb1"
+#define NID_aes_128_cfb1		650
+
+#define SN_aes_192_cfb1		"AES-192-CFB1"
+#define LN_aes_192_cfb1		"aes-192-cfb1"
+#define NID_aes_192_cfb1		651
+
+#define SN_aes_256_cfb1		"AES-256-CFB1"
+#define LN_aes_256_cfb1		"aes-256-cfb1"
+#define NID_aes_256_cfb1		652
+
+#define SN_aes_128_cfb8		"AES-128-CFB8"
+#define LN_aes_128_cfb8		"aes-128-cfb8"
+#define NID_aes_128_cfb8		653
+
+#define SN_aes_192_cfb8		"AES-192-CFB8"
+#define LN_aes_192_cfb8		"aes-192-cfb8"
+#define NID_aes_192_cfb8		654
+
+#define SN_aes_256_cfb8		"AES-256-CFB8"
+#define LN_aes_256_cfb8		"aes-256-cfb8"
+#define NID_aes_256_cfb8		655
+
+#define SN_des_cfb1		"DES-CFB1"
+#define LN_des_cfb1		"des-cfb1"
+#define NID_des_cfb1		656
+
+#define SN_des_cfb8		"DES-CFB8"
+#define LN_des_cfb8		"des-cfb8"
+#define NID_des_cfb8		657
+
+#define SN_des_ede3_cfb1		"DES-EDE3-CFB1"
+#define LN_des_ede3_cfb1		"des-ede3-cfb1"
+#define NID_des_ede3_cfb1		658
+
+#define SN_des_ede3_cfb8		"DES-EDE3-CFB8"
+#define LN_des_ede3_cfb8		"des-ede3-cfb8"
+#define NID_des_ede3_cfb8		659
+
+#define SN_id_aes128_wrap		"id-aes128-wrap"
+#define NID_id_aes128_wrap		788
+#define OBJ_id_aes128_wrap		OBJ_aes,5L
+
+#define SN_id_aes192_wrap		"id-aes192-wrap"
+#define NID_id_aes192_wrap		789
+#define OBJ_id_aes192_wrap		OBJ_aes,25L
+
+#define SN_id_aes256_wrap		"id-aes256-wrap"
+#define NID_id_aes256_wrap		790
+#define OBJ_id_aes256_wrap		OBJ_aes,45L
+
+#define OBJ_nist_hashalgs		OBJ_nistAlgorithms,2L
+
+#define SN_sha256		"SHA256"
+#define LN_sha256		"sha256"
+#define NID_sha256		672
+#define OBJ_sha256		OBJ_nist_hashalgs,1L
+
+#define SN_sha384		"SHA384"
+#define LN_sha384		"sha384"
+#define NID_sha384		673
+#define OBJ_sha384		OBJ_nist_hashalgs,2L
+
+#define SN_sha512		"SHA512"
+#define LN_sha512		"sha512"
+#define NID_sha512		674
+#define OBJ_sha512		OBJ_nist_hashalgs,3L
+
+#define SN_sha224		"SHA224"
+#define LN_sha224		"sha224"
+#define NID_sha224		675
+#define OBJ_sha224		OBJ_nist_hashalgs,4L
+
+#define OBJ_dsa_with_sha2		OBJ_nistAlgorithms,3L
+
+#define SN_dsa_with_SHA224		"dsa_with_SHA224"
+#define NID_dsa_with_SHA224		802
+#define OBJ_dsa_with_SHA224		OBJ_dsa_with_sha2,1L
+
+#define SN_dsa_with_SHA256		"dsa_with_SHA256"
+#define NID_dsa_with_SHA256		803
+#define OBJ_dsa_with_SHA256		OBJ_dsa_with_sha2,2L
+
+#define SN_hold_instruction_code		"holdInstructionCode"
+#define LN_hold_instruction_code		"Hold Instruction Code"
+#define NID_hold_instruction_code		430
+#define OBJ_hold_instruction_code		OBJ_id_ce,23L
+
+#define OBJ_holdInstruction		OBJ_X9_57,2L
+
+#define SN_hold_instruction_none		"holdInstructionNone"
+#define LN_hold_instruction_none		"Hold Instruction None"
+#define NID_hold_instruction_none		431
+#define OBJ_hold_instruction_none		OBJ_holdInstruction,1L
+
+#define SN_hold_instruction_call_issuer		"holdInstructionCallIssuer"
+#define LN_hold_instruction_call_issuer		"Hold Instruction Call Issuer"
+#define NID_hold_instruction_call_issuer		432
+#define OBJ_hold_instruction_call_issuer		OBJ_holdInstruction,2L
+
+#define SN_hold_instruction_reject		"holdInstructionReject"
+#define LN_hold_instruction_reject		"Hold Instruction Reject"
+#define NID_hold_instruction_reject		433
+#define OBJ_hold_instruction_reject		OBJ_holdInstruction,3L
+
+#define SN_data		"data"
+#define NID_data		434
+#define OBJ_data		OBJ_itu_t,9L
+
+#define SN_pss		"pss"
+#define NID_pss		435
+#define OBJ_pss		OBJ_data,2342L
+
+#define SN_ucl		"ucl"
+#define NID_ucl		436
+#define OBJ_ucl		OBJ_pss,19200300L
+
+#define SN_pilot		"pilot"
+#define NID_pilot		437
+#define OBJ_pilot		OBJ_ucl,100L
+
+#define LN_pilotAttributeType		"pilotAttributeType"
+#define NID_pilotAttributeType		438
+#define OBJ_pilotAttributeType		OBJ_pilot,1L
+
+#define LN_pilotAttributeSyntax		"pilotAttributeSyntax"
+#define NID_pilotAttributeSyntax		439
+#define OBJ_pilotAttributeSyntax		OBJ_pilot,3L
+
+#define LN_pilotObjectClass		"pilotObjectClass"
+#define NID_pilotObjectClass		440
+#define OBJ_pilotObjectClass		OBJ_pilot,4L
+
+#define LN_pilotGroups		"pilotGroups"
+#define NID_pilotGroups		441
+#define OBJ_pilotGroups		OBJ_pilot,10L
+
+#define LN_iA5StringSyntax		"iA5StringSyntax"
+#define NID_iA5StringSyntax		442
+#define OBJ_iA5StringSyntax		OBJ_pilotAttributeSyntax,4L
+
+#define LN_caseIgnoreIA5StringSyntax		"caseIgnoreIA5StringSyntax"
+#define NID_caseIgnoreIA5StringSyntax		443
+#define OBJ_caseIgnoreIA5StringSyntax		OBJ_pilotAttributeSyntax,5L
+
+#define LN_pilotObject		"pilotObject"
+#define NID_pilotObject		444
+#define OBJ_pilotObject		OBJ_pilotObjectClass,3L
+
+#define LN_pilotPerson		"pilotPerson"
+#define NID_pilotPerson		445
+#define OBJ_pilotPerson		OBJ_pilotObjectClass,4L
+
+#define SN_account		"account"
+#define NID_account		446
+#define OBJ_account		OBJ_pilotObjectClass,5L
+
+#define SN_document		"document"
+#define NID_document		447
+#define OBJ_document		OBJ_pilotObjectClass,6L
+
+#define SN_room		"room"
+#define NID_room		448
+#define OBJ_room		OBJ_pilotObjectClass,7L
+
+#define LN_documentSeries		"documentSeries"
+#define NID_documentSeries		449
+#define OBJ_documentSeries		OBJ_pilotObjectClass,9L
+
+#define SN_Domain		"domain"
+#define LN_Domain		"Domain"
+#define NID_Domain		392
+#define OBJ_Domain		OBJ_pilotObjectClass,13L
+
+#define LN_rFC822localPart		"rFC822localPart"
+#define NID_rFC822localPart		450
+#define OBJ_rFC822localPart		OBJ_pilotObjectClass,14L
+
+#define LN_dNSDomain		"dNSDomain"
+#define NID_dNSDomain		451
+#define OBJ_dNSDomain		OBJ_pilotObjectClass,15L
+
+#define LN_domainRelatedObject		"domainRelatedObject"
+#define NID_domainRelatedObject		452
+#define OBJ_domainRelatedObject		OBJ_pilotObjectClass,17L
+
+#define LN_friendlyCountry		"friendlyCountry"
+#define NID_friendlyCountry		453
+#define OBJ_friendlyCountry		OBJ_pilotObjectClass,18L
+
+#define LN_simpleSecurityObject		"simpleSecurityObject"
+#define NID_simpleSecurityObject		454
+#define OBJ_simpleSecurityObject		OBJ_pilotObjectClass,19L
+
+#define LN_pilotOrganization		"pilotOrganization"
+#define NID_pilotOrganization		455
+#define OBJ_pilotOrganization		OBJ_pilotObjectClass,20L
+
+#define LN_pilotDSA		"pilotDSA"
+#define NID_pilotDSA		456
+#define OBJ_pilotDSA		OBJ_pilotObjectClass,21L
+
+#define LN_qualityLabelledData		"qualityLabelledData"
+#define NID_qualityLabelledData		457
+#define OBJ_qualityLabelledData		OBJ_pilotObjectClass,22L
+
+#define SN_userId		"UID"
+#define LN_userId		"userId"
+#define NID_userId		458
+#define OBJ_userId		OBJ_pilotAttributeType,1L
+
+#define LN_textEncodedORAddress		"textEncodedORAddress"
+#define NID_textEncodedORAddress		459
+#define OBJ_textEncodedORAddress		OBJ_pilotAttributeType,2L
+
+#define SN_rfc822Mailbox		"mail"
+#define LN_rfc822Mailbox		"rfc822Mailbox"
+#define NID_rfc822Mailbox		460
+#define OBJ_rfc822Mailbox		OBJ_pilotAttributeType,3L
+
+#define SN_info		"info"
+#define NID_info		461
+#define OBJ_info		OBJ_pilotAttributeType,4L
+
+#define LN_favouriteDrink		"favouriteDrink"
+#define NID_favouriteDrink		462
+#define OBJ_favouriteDrink		OBJ_pilotAttributeType,5L
+
+#define LN_roomNumber		"roomNumber"
+#define NID_roomNumber		463
+#define OBJ_roomNumber		OBJ_pilotAttributeType,6L
+
+#define SN_photo		"photo"
+#define NID_photo		464
+#define OBJ_photo		OBJ_pilotAttributeType,7L
+
+#define LN_userClass		"userClass"
+#define NID_userClass		465
+#define OBJ_userClass		OBJ_pilotAttributeType,8L
+
+#define SN_host		"host"
+#define NID_host		466
+#define OBJ_host		OBJ_pilotAttributeType,9L
+
+#define SN_manager		"manager"
+#define NID_manager		467
+#define OBJ_manager		OBJ_pilotAttributeType,10L
+
+#define LN_documentIdentifier		"documentIdentifier"
+#define NID_documentIdentifier		468
+#define OBJ_documentIdentifier		OBJ_pilotAttributeType,11L
+
+#define LN_documentTitle		"documentTitle"
+#define NID_documentTitle		469
+#define OBJ_documentTitle		OBJ_pilotAttributeType,12L
+
+#define LN_documentVersion		"documentVersion"
+#define NID_documentVersion		470
+#define OBJ_documentVersion		OBJ_pilotAttributeType,13L
+
+#define LN_documentAuthor		"documentAuthor"
+#define NID_documentAuthor		471
+#define OBJ_documentAuthor		OBJ_pilotAttributeType,14L
+
+#define LN_documentLocation		"documentLocation"
+#define NID_documentLocation		472
+#define OBJ_documentLocation		OBJ_pilotAttributeType,15L
+
+#define LN_homeTelephoneNumber		"homeTelephoneNumber"
+#define NID_homeTelephoneNumber		473
+#define OBJ_homeTelephoneNumber		OBJ_pilotAttributeType,20L
+
+#define SN_secretary		"secretary"
+#define NID_secretary		474
+#define OBJ_secretary		OBJ_pilotAttributeType,21L
+
+#define LN_otherMailbox		"otherMailbox"
+#define NID_otherMailbox		475
+#define OBJ_otherMailbox		OBJ_pilotAttributeType,22L
+
+#define LN_lastModifiedTime		"lastModifiedTime"
+#define NID_lastModifiedTime		476
+#define OBJ_lastModifiedTime		OBJ_pilotAttributeType,23L
+
+#define LN_lastModifiedBy		"lastModifiedBy"
+#define NID_lastModifiedBy		477
+#define OBJ_lastModifiedBy		OBJ_pilotAttributeType,24L
+
+#define SN_domainComponent		"DC"
+#define LN_domainComponent		"domainComponent"
+#define NID_domainComponent		391
+#define OBJ_domainComponent		OBJ_pilotAttributeType,25L
+
+#define LN_aRecord		"aRecord"
+#define NID_aRecord		478
+#define OBJ_aRecord		OBJ_pilotAttributeType,26L
+
+#define LN_pilotAttributeType27		"pilotAttributeType27"
+#define NID_pilotAttributeType27		479
+#define OBJ_pilotAttributeType27		OBJ_pilotAttributeType,27L
+
+#define LN_mXRecord		"mXRecord"
+#define NID_mXRecord		480
+#define OBJ_mXRecord		OBJ_pilotAttributeType,28L
+
+#define LN_nSRecord		"nSRecord"
+#define NID_nSRecord		481
+#define OBJ_nSRecord		OBJ_pilotAttributeType,29L
+
+#define LN_sOARecord		"sOARecord"
+#define NID_sOARecord		482
+#define OBJ_sOARecord		OBJ_pilotAttributeType,30L
+
+#define LN_cNAMERecord		"cNAMERecord"
+#define NID_cNAMERecord		483
+#define OBJ_cNAMERecord		OBJ_pilotAttributeType,31L
+
+#define LN_associatedDomain		"associatedDomain"
+#define NID_associatedDomain		484
+#define OBJ_associatedDomain		OBJ_pilotAttributeType,37L
+
+#define LN_associatedName		"associatedName"
+#define NID_associatedName		485
+#define OBJ_associatedName		OBJ_pilotAttributeType,38L
+
+#define LN_homePostalAddress		"homePostalAddress"
+#define NID_homePostalAddress		486
+#define OBJ_homePostalAddress		OBJ_pilotAttributeType,39L
+
+#define LN_personalTitle		"personalTitle"
+#define NID_personalTitle		487
+#define OBJ_personalTitle		OBJ_pilotAttributeType,40L
+
+#define LN_mobileTelephoneNumber		"mobileTelephoneNumber"
+#define NID_mobileTelephoneNumber		488
+#define OBJ_mobileTelephoneNumber		OBJ_pilotAttributeType,41L
+
+#define LN_pagerTelephoneNumber		"pagerTelephoneNumber"
+#define NID_pagerTelephoneNumber		489
+#define OBJ_pagerTelephoneNumber		OBJ_pilotAttributeType,42L
+
+#define LN_friendlyCountryName		"friendlyCountryName"
+#define NID_friendlyCountryName		490
+#define OBJ_friendlyCountryName		OBJ_pilotAttributeType,43L
+
+#define LN_organizationalStatus		"organizationalStatus"
+#define NID_organizationalStatus		491
+#define OBJ_organizationalStatus		OBJ_pilotAttributeType,45L
+
+#define LN_janetMailbox		"janetMailbox"
+#define NID_janetMailbox		492
+#define OBJ_janetMailbox		OBJ_pilotAttributeType,46L
+
+#define LN_mailPreferenceOption		"mailPreferenceOption"
+#define NID_mailPreferenceOption		493
+#define OBJ_mailPreferenceOption		OBJ_pilotAttributeType,47L
+
+#define LN_buildingName		"buildingName"
+#define NID_buildingName		494
+#define OBJ_buildingName		OBJ_pilotAttributeType,48L
+
+#define LN_dSAQuality		"dSAQuality"
+#define NID_dSAQuality		495
+#define OBJ_dSAQuality		OBJ_pilotAttributeType,49L
+
+#define LN_singleLevelQuality		"singleLevelQuality"
+#define NID_singleLevelQuality		496
+#define OBJ_singleLevelQuality		OBJ_pilotAttributeType,50L
+
+#define LN_subtreeMinimumQuality		"subtreeMinimumQuality"
+#define NID_subtreeMinimumQuality		497
+#define OBJ_subtreeMinimumQuality		OBJ_pilotAttributeType,51L
+
+#define LN_subtreeMaximumQuality		"subtreeMaximumQuality"
+#define NID_subtreeMaximumQuality		498
+#define OBJ_subtreeMaximumQuality		OBJ_pilotAttributeType,52L
+
+#define LN_personalSignature		"personalSignature"
+#define NID_personalSignature		499
+#define OBJ_personalSignature		OBJ_pilotAttributeType,53L
+
+#define LN_dITRedirect		"dITRedirect"
+#define NID_dITRedirect		500
+#define OBJ_dITRedirect		OBJ_pilotAttributeType,54L
+
+#define SN_audio		"audio"
+#define NID_audio		501
+#define OBJ_audio		OBJ_pilotAttributeType,55L
+
+#define LN_documentPublisher		"documentPublisher"
+#define NID_documentPublisher		502
+#define OBJ_documentPublisher		OBJ_pilotAttributeType,56L
+
+#define SN_id_set		"id-set"
+#define LN_id_set		"Secure Electronic Transactions"
+#define NID_id_set		512
+#define OBJ_id_set		OBJ_international_organizations,42L
+
+#define SN_set_ctype		"set-ctype"
+#define LN_set_ctype		"content types"
+#define NID_set_ctype		513
+#define OBJ_set_ctype		OBJ_id_set,0L
+
+#define SN_set_msgExt		"set-msgExt"
+#define LN_set_msgExt		"message extensions"
+#define NID_set_msgExt		514
+#define OBJ_set_msgExt		OBJ_id_set,1L
+
+#define SN_set_attr		"set-attr"
+#define NID_set_attr		515
+#define OBJ_set_attr		OBJ_id_set,3L
+
+#define SN_set_policy		"set-policy"
+#define NID_set_policy		516
+#define OBJ_set_policy		OBJ_id_set,5L
+
+#define SN_set_certExt		"set-certExt"
+#define LN_set_certExt		"certificate extensions"
+#define NID_set_certExt		517
+#define OBJ_set_certExt		OBJ_id_set,7L
+
+#define SN_set_brand		"set-brand"
+#define NID_set_brand		518
+#define OBJ_set_brand		OBJ_id_set,8L
+
+#define SN_setct_PANData		"setct-PANData"
+#define NID_setct_PANData		519
+#define OBJ_setct_PANData		OBJ_set_ctype,0L
+
+#define SN_setct_PANToken		"setct-PANToken"
+#define NID_setct_PANToken		520
+#define OBJ_setct_PANToken		OBJ_set_ctype,1L
+
+#define SN_setct_PANOnly		"setct-PANOnly"
+#define NID_setct_PANOnly		521
+#define OBJ_setct_PANOnly		OBJ_set_ctype,2L
+
+#define SN_setct_OIData		"setct-OIData"
+#define NID_setct_OIData		522
+#define OBJ_setct_OIData		OBJ_set_ctype,3L
+
+#define SN_setct_PI		"setct-PI"
+#define NID_setct_PI		523
+#define OBJ_setct_PI		OBJ_set_ctype,4L
+
+#define SN_setct_PIData		"setct-PIData"
+#define NID_setct_PIData		524
+#define OBJ_setct_PIData		OBJ_set_ctype,5L
+
+#define SN_setct_PIDataUnsigned		"setct-PIDataUnsigned"
+#define NID_setct_PIDataUnsigned		525
+#define OBJ_setct_PIDataUnsigned		OBJ_set_ctype,6L
+
+#define SN_setct_HODInput		"setct-HODInput"
+#define NID_setct_HODInput		526
+#define OBJ_setct_HODInput		OBJ_set_ctype,7L
+
+#define SN_setct_AuthResBaggage		"setct-AuthResBaggage"
+#define NID_setct_AuthResBaggage		527
+#define OBJ_setct_AuthResBaggage		OBJ_set_ctype,8L
+
+#define SN_setct_AuthRevReqBaggage		"setct-AuthRevReqBaggage"
+#define NID_setct_AuthRevReqBaggage		528
+#define OBJ_setct_AuthRevReqBaggage		OBJ_set_ctype,9L
+
+#define SN_setct_AuthRevResBaggage		"setct-AuthRevResBaggage"
+#define NID_setct_AuthRevResBaggage		529
+#define OBJ_setct_AuthRevResBaggage		OBJ_set_ctype,10L
+
+#define SN_setct_CapTokenSeq		"setct-CapTokenSeq"
+#define NID_setct_CapTokenSeq		530
+#define OBJ_setct_CapTokenSeq		OBJ_set_ctype,11L
+
+#define SN_setct_PInitResData		"setct-PInitResData"
+#define NID_setct_PInitResData		531
+#define OBJ_setct_PInitResData		OBJ_set_ctype,12L
+
+#define SN_setct_PI_TBS		"setct-PI-TBS"
+#define NID_setct_PI_TBS		532
+#define OBJ_setct_PI_TBS		OBJ_set_ctype,13L
+
+#define SN_setct_PResData		"setct-PResData"
+#define NID_setct_PResData		533
+#define OBJ_setct_PResData		OBJ_set_ctype,14L
+
+#define SN_setct_AuthReqTBS		"setct-AuthReqTBS"
+#define NID_setct_AuthReqTBS		534
+#define OBJ_setct_AuthReqTBS		OBJ_set_ctype,16L
+
+#define SN_setct_AuthResTBS		"setct-AuthResTBS"
+#define NID_setct_AuthResTBS		535
+#define OBJ_setct_AuthResTBS		OBJ_set_ctype,17L
+
+#define SN_setct_AuthResTBSX		"setct-AuthResTBSX"
+#define NID_setct_AuthResTBSX		536
+#define OBJ_setct_AuthResTBSX		OBJ_set_ctype,18L
+
+#define SN_setct_AuthTokenTBS		"setct-AuthTokenTBS"
+#define NID_setct_AuthTokenTBS		537
+#define OBJ_setct_AuthTokenTBS		OBJ_set_ctype,19L
+
+#define SN_setct_CapTokenData		"setct-CapTokenData"
+#define NID_setct_CapTokenData		538
+#define OBJ_setct_CapTokenData		OBJ_set_ctype,20L
+
+#define SN_setct_CapTokenTBS		"setct-CapTokenTBS"
+#define NID_setct_CapTokenTBS		539
+#define OBJ_setct_CapTokenTBS		OBJ_set_ctype,21L
+
+#define SN_setct_AcqCardCodeMsg		"setct-AcqCardCodeMsg"
+#define NID_setct_AcqCardCodeMsg		540
+#define OBJ_setct_AcqCardCodeMsg		OBJ_set_ctype,22L
+
+#define SN_setct_AuthRevReqTBS		"setct-AuthRevReqTBS"
+#define NID_setct_AuthRevReqTBS		541
+#define OBJ_setct_AuthRevReqTBS		OBJ_set_ctype,23L
+
+#define SN_setct_AuthRevResData		"setct-AuthRevResData"
+#define NID_setct_AuthRevResData		542
+#define OBJ_setct_AuthRevResData		OBJ_set_ctype,24L
+
+#define SN_setct_AuthRevResTBS		"setct-AuthRevResTBS"
+#define NID_setct_AuthRevResTBS		543
+#define OBJ_setct_AuthRevResTBS		OBJ_set_ctype,25L
+
+#define SN_setct_CapReqTBS		"setct-CapReqTBS"
+#define NID_setct_CapReqTBS		544
+#define OBJ_setct_CapReqTBS		OBJ_set_ctype,26L
+
+#define SN_setct_CapReqTBSX		"setct-CapReqTBSX"
+#define NID_setct_CapReqTBSX		545
+#define OBJ_setct_CapReqTBSX		OBJ_set_ctype,27L
+
+#define SN_setct_CapResData		"setct-CapResData"
+#define NID_setct_CapResData		546
+#define OBJ_setct_CapResData		OBJ_set_ctype,28L
+
+#define SN_setct_CapRevReqTBS		"setct-CapRevReqTBS"
+#define NID_setct_CapRevReqTBS		547
+#define OBJ_setct_CapRevReqTBS		OBJ_set_ctype,29L
+
+#define SN_setct_CapRevReqTBSX		"setct-CapRevReqTBSX"
+#define NID_setct_CapRevReqTBSX		548
+#define OBJ_setct_CapRevReqTBSX		OBJ_set_ctype,30L
+
+#define SN_setct_CapRevResData		"setct-CapRevResData"
+#define NID_setct_CapRevResData		549
+#define OBJ_setct_CapRevResData		OBJ_set_ctype,31L
+
+#define SN_setct_CredReqTBS		"setct-CredReqTBS"
+#define NID_setct_CredReqTBS		550
+#define OBJ_setct_CredReqTBS		OBJ_set_ctype,32L
+
+#define SN_setct_CredReqTBSX		"setct-CredReqTBSX"
+#define NID_setct_CredReqTBSX		551
+#define OBJ_setct_CredReqTBSX		OBJ_set_ctype,33L
+
+#define SN_setct_CredResData		"setct-CredResData"
+#define NID_setct_CredResData		552
+#define OBJ_setct_CredResData		OBJ_set_ctype,34L
+
+#define SN_setct_CredRevReqTBS		"setct-CredRevReqTBS"
+#define NID_setct_CredRevReqTBS		553
+#define OBJ_setct_CredRevReqTBS		OBJ_set_ctype,35L
+
+#define SN_setct_CredRevReqTBSX		"setct-CredRevReqTBSX"
+#define NID_setct_CredRevReqTBSX		554
+#define OBJ_setct_CredRevReqTBSX		OBJ_set_ctype,36L
+
+#define SN_setct_CredRevResData		"setct-CredRevResData"
+#define NID_setct_CredRevResData		555
+#define OBJ_setct_CredRevResData		OBJ_set_ctype,37L
+
+#define SN_setct_PCertReqData		"setct-PCertReqData"
+#define NID_setct_PCertReqData		556
+#define OBJ_setct_PCertReqData		OBJ_set_ctype,38L
+
+#define SN_setct_PCertResTBS		"setct-PCertResTBS"
+#define NID_setct_PCertResTBS		557
+#define OBJ_setct_PCertResTBS		OBJ_set_ctype,39L
+
+#define SN_setct_BatchAdminReqData		"setct-BatchAdminReqData"
+#define NID_setct_BatchAdminReqData		558
+#define OBJ_setct_BatchAdminReqData		OBJ_set_ctype,40L
+
+#define SN_setct_BatchAdminResData		"setct-BatchAdminResData"
+#define NID_setct_BatchAdminResData		559
+#define OBJ_setct_BatchAdminResData		OBJ_set_ctype,41L
+
+#define SN_setct_CardCInitResTBS		"setct-CardCInitResTBS"
+#define NID_setct_CardCInitResTBS		560
+#define OBJ_setct_CardCInitResTBS		OBJ_set_ctype,42L
+
+#define SN_setct_MeAqCInitResTBS		"setct-MeAqCInitResTBS"
+#define NID_setct_MeAqCInitResTBS		561
+#define OBJ_setct_MeAqCInitResTBS		OBJ_set_ctype,43L
+
+#define SN_setct_RegFormResTBS		"setct-RegFormResTBS"
+#define NID_setct_RegFormResTBS		562
+#define OBJ_setct_RegFormResTBS		OBJ_set_ctype,44L
+
+#define SN_setct_CertReqData		"setct-CertReqData"
+#define NID_setct_CertReqData		563
+#define OBJ_setct_CertReqData		OBJ_set_ctype,45L
+
+#define SN_setct_CertReqTBS		"setct-CertReqTBS"
+#define NID_setct_CertReqTBS		564
+#define OBJ_setct_CertReqTBS		OBJ_set_ctype,46L
+
+#define SN_setct_CertResData		"setct-CertResData"
+#define NID_setct_CertResData		565
+#define OBJ_setct_CertResData		OBJ_set_ctype,47L
+
+#define SN_setct_CertInqReqTBS		"setct-CertInqReqTBS"
+#define NID_setct_CertInqReqTBS		566
+#define OBJ_setct_CertInqReqTBS		OBJ_set_ctype,48L
+
+#define SN_setct_ErrorTBS		"setct-ErrorTBS"
+#define NID_setct_ErrorTBS		567
+#define OBJ_setct_ErrorTBS		OBJ_set_ctype,49L
+
+#define SN_setct_PIDualSignedTBE		"setct-PIDualSignedTBE"
+#define NID_setct_PIDualSignedTBE		568
+#define OBJ_setct_PIDualSignedTBE		OBJ_set_ctype,50L
+
+#define SN_setct_PIUnsignedTBE		"setct-PIUnsignedTBE"
+#define NID_setct_PIUnsignedTBE		569
+#define OBJ_setct_PIUnsignedTBE		OBJ_set_ctype,51L
+
+#define SN_setct_AuthReqTBE		"setct-AuthReqTBE"
+#define NID_setct_AuthReqTBE		570
+#define OBJ_setct_AuthReqTBE		OBJ_set_ctype,52L
+
+#define SN_setct_AuthResTBE		"setct-AuthResTBE"
+#define NID_setct_AuthResTBE		571
+#define OBJ_setct_AuthResTBE		OBJ_set_ctype,53L
+
+#define SN_setct_AuthResTBEX		"setct-AuthResTBEX"
+#define NID_setct_AuthResTBEX		572
+#define OBJ_setct_AuthResTBEX		OBJ_set_ctype,54L
+
+#define SN_setct_AuthTokenTBE		"setct-AuthTokenTBE"
+#define NID_setct_AuthTokenTBE		573
+#define OBJ_setct_AuthTokenTBE		OBJ_set_ctype,55L
+
+#define SN_setct_CapTokenTBE		"setct-CapTokenTBE"
+#define NID_setct_CapTokenTBE		574
+#define OBJ_setct_CapTokenTBE		OBJ_set_ctype,56L
+
+#define SN_setct_CapTokenTBEX		"setct-CapTokenTBEX"
+#define NID_setct_CapTokenTBEX		575
+#define OBJ_setct_CapTokenTBEX		OBJ_set_ctype,57L
+
+#define SN_setct_AcqCardCodeMsgTBE		"setct-AcqCardCodeMsgTBE"
+#define NID_setct_AcqCardCodeMsgTBE		576
+#define OBJ_setct_AcqCardCodeMsgTBE		OBJ_set_ctype,58L
+
+#define SN_setct_AuthRevReqTBE		"setct-AuthRevReqTBE"
+#define NID_setct_AuthRevReqTBE		577
+#define OBJ_setct_AuthRevReqTBE		OBJ_set_ctype,59L
+
+#define SN_setct_AuthRevResTBE		"setct-AuthRevResTBE"
+#define NID_setct_AuthRevResTBE		578
+#define OBJ_setct_AuthRevResTBE		OBJ_set_ctype,60L
+
+#define SN_setct_AuthRevResTBEB		"setct-AuthRevResTBEB"
+#define NID_setct_AuthRevResTBEB		579
+#define OBJ_setct_AuthRevResTBEB		OBJ_set_ctype,61L
+
+#define SN_setct_CapReqTBE		"setct-CapReqTBE"
+#define NID_setct_CapReqTBE		580
+#define OBJ_setct_CapReqTBE		OBJ_set_ctype,62L
+
+#define SN_setct_CapReqTBEX		"setct-CapReqTBEX"
+#define NID_setct_CapReqTBEX		581
+#define OBJ_setct_CapReqTBEX		OBJ_set_ctype,63L
+
+#define SN_setct_CapResTBE		"setct-CapResTBE"
+#define NID_setct_CapResTBE		582
+#define OBJ_setct_CapResTBE		OBJ_set_ctype,64L
+
+#define SN_setct_CapRevReqTBE		"setct-CapRevReqTBE"
+#define NID_setct_CapRevReqTBE		583
+#define OBJ_setct_CapRevReqTBE		OBJ_set_ctype,65L
+
+#define SN_setct_CapRevReqTBEX		"setct-CapRevReqTBEX"
+#define NID_setct_CapRevReqTBEX		584
+#define OBJ_setct_CapRevReqTBEX		OBJ_set_ctype,66L
+
+#define SN_setct_CapRevResTBE		"setct-CapRevResTBE"
+#define NID_setct_CapRevResTBE		585
+#define OBJ_setct_CapRevResTBE		OBJ_set_ctype,67L
+
+#define SN_setct_CredReqTBE		"setct-CredReqTBE"
+#define NID_setct_CredReqTBE		586
+#define OBJ_setct_CredReqTBE		OBJ_set_ctype,68L
+
+#define SN_setct_CredReqTBEX		"setct-CredReqTBEX"
+#define NID_setct_CredReqTBEX		587
+#define OBJ_setct_CredReqTBEX		OBJ_set_ctype,69L
+
+#define SN_setct_CredResTBE		"setct-CredResTBE"
+#define NID_setct_CredResTBE		588
+#define OBJ_setct_CredResTBE		OBJ_set_ctype,70L
+
+#define SN_setct_CredRevReqTBE		"setct-CredRevReqTBE"
+#define NID_setct_CredRevReqTBE		589
+#define OBJ_setct_CredRevReqTBE		OBJ_set_ctype,71L
+
+#define SN_setct_CredRevReqTBEX		"setct-CredRevReqTBEX"
+#define NID_setct_CredRevReqTBEX		590
+#define OBJ_setct_CredRevReqTBEX		OBJ_set_ctype,72L
+
+#define SN_setct_CredRevResTBE		"setct-CredRevResTBE"
+#define NID_setct_CredRevResTBE		591
+#define OBJ_setct_CredRevResTBE		OBJ_set_ctype,73L
+
+#define SN_setct_BatchAdminReqTBE		"setct-BatchAdminReqTBE"
+#define NID_setct_BatchAdminReqTBE		592
+#define OBJ_setct_BatchAdminReqTBE		OBJ_set_ctype,74L
+
+#define SN_setct_BatchAdminResTBE		"setct-BatchAdminResTBE"
+#define NID_setct_BatchAdminResTBE		593
+#define OBJ_setct_BatchAdminResTBE		OBJ_set_ctype,75L
+
+#define SN_setct_RegFormReqTBE		"setct-RegFormReqTBE"
+#define NID_setct_RegFormReqTBE		594
+#define OBJ_setct_RegFormReqTBE		OBJ_set_ctype,76L
+
+#define SN_setct_CertReqTBE		"setct-CertReqTBE"
+#define NID_setct_CertReqTBE		595
+#define OBJ_setct_CertReqTBE		OBJ_set_ctype,77L
+
+#define SN_setct_CertReqTBEX		"setct-CertReqTBEX"
+#define NID_setct_CertReqTBEX		596
+#define OBJ_setct_CertReqTBEX		OBJ_set_ctype,78L
+
+#define SN_setct_CertResTBE		"setct-CertResTBE"
+#define NID_setct_CertResTBE		597
+#define OBJ_setct_CertResTBE		OBJ_set_ctype,79L
+
+#define SN_setct_CRLNotificationTBS		"setct-CRLNotificationTBS"
+#define NID_setct_CRLNotificationTBS		598
+#define OBJ_setct_CRLNotificationTBS		OBJ_set_ctype,80L
+
+#define SN_setct_CRLNotificationResTBS		"setct-CRLNotificationResTBS"
+#define NID_setct_CRLNotificationResTBS		599
+#define OBJ_setct_CRLNotificationResTBS		OBJ_set_ctype,81L
+
+#define SN_setct_BCIDistributionTBS		"setct-BCIDistributionTBS"
+#define NID_setct_BCIDistributionTBS		600
+#define OBJ_setct_BCIDistributionTBS		OBJ_set_ctype,82L
+
+#define SN_setext_genCrypt		"setext-genCrypt"
+#define LN_setext_genCrypt		"generic cryptogram"
+#define NID_setext_genCrypt		601
+#define OBJ_setext_genCrypt		OBJ_set_msgExt,1L
+
+#define SN_setext_miAuth		"setext-miAuth"
+#define LN_setext_miAuth		"merchant initiated auth"
+#define NID_setext_miAuth		602
+#define OBJ_setext_miAuth		OBJ_set_msgExt,3L
+
+#define SN_setext_pinSecure		"setext-pinSecure"
+#define NID_setext_pinSecure		603
+#define OBJ_setext_pinSecure		OBJ_set_msgExt,4L
+
+#define SN_setext_pinAny		"setext-pinAny"
+#define NID_setext_pinAny		604
+#define OBJ_setext_pinAny		OBJ_set_msgExt,5L
+
+#define SN_setext_track2		"setext-track2"
+#define NID_setext_track2		605
+#define OBJ_setext_track2		OBJ_set_msgExt,7L
+
+#define SN_setext_cv		"setext-cv"
+#define LN_setext_cv		"additional verification"
+#define NID_setext_cv		606
+#define OBJ_setext_cv		OBJ_set_msgExt,8L
+
+#define SN_set_policy_root		"set-policy-root"
+#define NID_set_policy_root		607
+#define OBJ_set_policy_root		OBJ_set_policy,0L
+
+#define SN_setCext_hashedRoot		"setCext-hashedRoot"
+#define NID_setCext_hashedRoot		608
+#define OBJ_setCext_hashedRoot		OBJ_set_certExt,0L
+
+#define SN_setCext_certType		"setCext-certType"
+#define NID_setCext_certType		609
+#define OBJ_setCext_certType		OBJ_set_certExt,1L
+
+#define SN_setCext_merchData		"setCext-merchData"
+#define NID_setCext_merchData		610
+#define OBJ_setCext_merchData		OBJ_set_certExt,2L
+
+#define SN_setCext_cCertRequired		"setCext-cCertRequired"
+#define NID_setCext_cCertRequired		611
+#define OBJ_setCext_cCertRequired		OBJ_set_certExt,3L
+
+#define SN_setCext_tunneling		"setCext-tunneling"
+#define NID_setCext_tunneling		612
+#define OBJ_setCext_tunneling		OBJ_set_certExt,4L
+
+#define SN_setCext_setExt		"setCext-setExt"
+#define NID_setCext_setExt		613
+#define OBJ_setCext_setExt		OBJ_set_certExt,5L
+
+#define SN_setCext_setQualf		"setCext-setQualf"
+#define NID_setCext_setQualf		614
+#define OBJ_setCext_setQualf		OBJ_set_certExt,6L
+
+#define SN_setCext_PGWYcapabilities		"setCext-PGWYcapabilities"
+#define NID_setCext_PGWYcapabilities		615
+#define OBJ_setCext_PGWYcapabilities		OBJ_set_certExt,7L
+
+#define SN_setCext_TokenIdentifier		"setCext-TokenIdentifier"
+#define NID_setCext_TokenIdentifier		616
+#define OBJ_setCext_TokenIdentifier		OBJ_set_certExt,8L
+
+#define SN_setCext_Track2Data		"setCext-Track2Data"
+#define NID_setCext_Track2Data		617
+#define OBJ_setCext_Track2Data		OBJ_set_certExt,9L
+
+#define SN_setCext_TokenType		"setCext-TokenType"
+#define NID_setCext_TokenType		618
+#define OBJ_setCext_TokenType		OBJ_set_certExt,10L
+
+#define SN_setCext_IssuerCapabilities		"setCext-IssuerCapabilities"
+#define NID_setCext_IssuerCapabilities		619
+#define OBJ_setCext_IssuerCapabilities		OBJ_set_certExt,11L
+
+#define SN_setAttr_Cert		"setAttr-Cert"
+#define NID_setAttr_Cert		620
+#define OBJ_setAttr_Cert		OBJ_set_attr,0L
+
+#define SN_setAttr_PGWYcap		"setAttr-PGWYcap"
+#define LN_setAttr_PGWYcap		"payment gateway capabilities"
+#define NID_setAttr_PGWYcap		621
+#define OBJ_setAttr_PGWYcap		OBJ_set_attr,1L
+
+#define SN_setAttr_TokenType		"setAttr-TokenType"
+#define NID_setAttr_TokenType		622
+#define OBJ_setAttr_TokenType		OBJ_set_attr,2L
+
+#define SN_setAttr_IssCap		"setAttr-IssCap"
+#define LN_setAttr_IssCap		"issuer capabilities"
+#define NID_setAttr_IssCap		623
+#define OBJ_setAttr_IssCap		OBJ_set_attr,3L
+
+#define SN_set_rootKeyThumb		"set-rootKeyThumb"
+#define NID_set_rootKeyThumb		624
+#define OBJ_set_rootKeyThumb		OBJ_setAttr_Cert,0L
+
+#define SN_set_addPolicy		"set-addPolicy"
+#define NID_set_addPolicy		625
+#define OBJ_set_addPolicy		OBJ_setAttr_Cert,1L
+
+#define SN_setAttr_Token_EMV		"setAttr-Token-EMV"
+#define NID_setAttr_Token_EMV		626
+#define OBJ_setAttr_Token_EMV		OBJ_setAttr_TokenType,1L
+
+#define SN_setAttr_Token_B0Prime		"setAttr-Token-B0Prime"
+#define NID_setAttr_Token_B0Prime		627
+#define OBJ_setAttr_Token_B0Prime		OBJ_setAttr_TokenType,2L
+
+#define SN_setAttr_IssCap_CVM		"setAttr-IssCap-CVM"
+#define NID_setAttr_IssCap_CVM		628
+#define OBJ_setAttr_IssCap_CVM		OBJ_setAttr_IssCap,3L
+
+#define SN_setAttr_IssCap_T2		"setAttr-IssCap-T2"
+#define NID_setAttr_IssCap_T2		629
+#define OBJ_setAttr_IssCap_T2		OBJ_setAttr_IssCap,4L
+
+#define SN_setAttr_IssCap_Sig		"setAttr-IssCap-Sig"
+#define NID_setAttr_IssCap_Sig		630
+#define OBJ_setAttr_IssCap_Sig		OBJ_setAttr_IssCap,5L
+
+#define SN_setAttr_GenCryptgrm		"setAttr-GenCryptgrm"
+#define LN_setAttr_GenCryptgrm		"generate cryptogram"
+#define NID_setAttr_GenCryptgrm		631
+#define OBJ_setAttr_GenCryptgrm		OBJ_setAttr_IssCap_CVM,1L
+
+#define SN_setAttr_T2Enc		"setAttr-T2Enc"
+#define LN_setAttr_T2Enc		"encrypted track 2"
+#define NID_setAttr_T2Enc		632
+#define OBJ_setAttr_T2Enc		OBJ_setAttr_IssCap_T2,1L
+
+#define SN_setAttr_T2cleartxt		"setAttr-T2cleartxt"
+#define LN_setAttr_T2cleartxt		"cleartext track 2"
+#define NID_setAttr_T2cleartxt		633
+#define OBJ_setAttr_T2cleartxt		OBJ_setAttr_IssCap_T2,2L
+
+#define SN_setAttr_TokICCsig		"setAttr-TokICCsig"
+#define LN_setAttr_TokICCsig		"ICC or token signature"
+#define NID_setAttr_TokICCsig		634
+#define OBJ_setAttr_TokICCsig		OBJ_setAttr_IssCap_Sig,1L
+
+#define SN_setAttr_SecDevSig		"setAttr-SecDevSig"
+#define LN_setAttr_SecDevSig		"secure device signature"
+#define NID_setAttr_SecDevSig		635
+#define OBJ_setAttr_SecDevSig		OBJ_setAttr_IssCap_Sig,2L
+
+#define SN_set_brand_IATA_ATA		"set-brand-IATA-ATA"
+#define NID_set_brand_IATA_ATA		636
+#define OBJ_set_brand_IATA_ATA		OBJ_set_brand,1L
+
+#define SN_set_brand_Diners		"set-brand-Diners"
+#define NID_set_brand_Diners		637
+#define OBJ_set_brand_Diners		OBJ_set_brand,30L
+
+#define SN_set_brand_AmericanExpress		"set-brand-AmericanExpress"
+#define NID_set_brand_AmericanExpress		638
+#define OBJ_set_brand_AmericanExpress		OBJ_set_brand,34L
+
+#define SN_set_brand_JCB		"set-brand-JCB"
+#define NID_set_brand_JCB		639
+#define OBJ_set_brand_JCB		OBJ_set_brand,35L
+
+#define SN_set_brand_Visa		"set-brand-Visa"
+#define NID_set_brand_Visa		640
+#define OBJ_set_brand_Visa		OBJ_set_brand,4L
+
+#define SN_set_brand_MasterCard		"set-brand-MasterCard"
+#define NID_set_brand_MasterCard		641
+#define OBJ_set_brand_MasterCard		OBJ_set_brand,5L
+
+#define SN_set_brand_Novus		"set-brand-Novus"
+#define NID_set_brand_Novus		642
+#define OBJ_set_brand_Novus		OBJ_set_brand,6011L
+
+#define SN_des_cdmf		"DES-CDMF"
+#define LN_des_cdmf		"des-cdmf"
+#define NID_des_cdmf		643
+#define OBJ_des_cdmf		OBJ_rsadsi,3L,10L
+
+#define SN_rsaOAEPEncryptionSET		"rsaOAEPEncryptionSET"
+#define NID_rsaOAEPEncryptionSET		644
+#define OBJ_rsaOAEPEncryptionSET		OBJ_rsadsi,1L,1L,6L
+
+#define SN_ipsec3		"Oakley-EC2N-3"
+#define LN_ipsec3		"ipsec3"
+#define NID_ipsec3		749
+
+#define SN_ipsec4		"Oakley-EC2N-4"
+#define LN_ipsec4		"ipsec4"
+#define NID_ipsec4		750
+
+#define SN_whirlpool		"whirlpool"
+#define NID_whirlpool		804
+#define OBJ_whirlpool		OBJ_iso,0L,10118L,3L,0L,55L
+
+#define SN_cryptopro		"cryptopro"
+#define NID_cryptopro		805
+#define OBJ_cryptopro		OBJ_member_body,643L,2L,2L
+
+#define SN_cryptocom		"cryptocom"
+#define NID_cryptocom		806
+#define OBJ_cryptocom		OBJ_member_body,643L,2L,9L
+
+#define SN_id_GostR3411_94_with_GostR3410_2001		"id-GostR3411-94-with-Gost=
R3410-2001"
+#define LN_id_GostR3411_94_with_GostR3410_2001		"GOST R 34.11-94 with GOST=
 R 34.10-2001"
+#define NID_id_GostR3411_94_with_GostR3410_2001		807
+#define OBJ_id_GostR3411_94_with_GostR3410_2001		OBJ_cryptopro,3L
+
+#define SN_id_GostR3411_94_with_GostR3410_94		"id-GostR3411-94-with-GostR3=
410-94"
+#define LN_id_GostR3411_94_with_GostR3410_94		"GOST R 34.11-94 with GOST R=
 34.10-94"
+#define NID_id_GostR3411_94_with_GostR3410_94		808
+#define OBJ_id_GostR3411_94_with_GostR3410_94		OBJ_cryptopro,4L
+
+#define SN_id_GostR3411_94		"md_gost94"
+#define LN_id_GostR3411_94		"GOST R 34.11-94"
+#define NID_id_GostR3411_94		809
+#define OBJ_id_GostR3411_94		OBJ_cryptopro,9L
+
+#define SN_id_HMACGostR3411_94		"id-HMACGostR3411-94"
+#define LN_id_HMACGostR3411_94		"HMAC GOST 34.11-94"
+#define NID_id_HMACGostR3411_94		810
+#define OBJ_id_HMACGostR3411_94		OBJ_cryptopro,10L
+
+#define SN_id_GostR3410_2001		"gost2001"
+#define LN_id_GostR3410_2001		"GOST R 34.10-2001"
+#define NID_id_GostR3410_2001		811
+#define OBJ_id_GostR3410_2001		OBJ_cryptopro,19L
+
+#define SN_id_GostR3410_94		"gost94"
+#define LN_id_GostR3410_94		"GOST R 34.10-94"
+#define NID_id_GostR3410_94		812
+#define OBJ_id_GostR3410_94		OBJ_cryptopro,20L
+
+#define SN_id_Gost28147_89		"gost89"
+#define LN_id_Gost28147_89		"GOST 28147-89"
+#define NID_id_Gost28147_89		813
+#define OBJ_id_Gost28147_89		OBJ_cryptopro,21L
+
+#define SN_gost89_cnt		"gost89-cnt"
+#define NID_gost89_cnt		814
+
+#define SN_id_Gost28147_89_MAC		"gost-mac"
+#define LN_id_Gost28147_89_MAC		"GOST 28147-89 MAC"
+#define NID_id_Gost28147_89_MAC		815
+#define OBJ_id_Gost28147_89_MAC		OBJ_cryptopro,22L
+
+#define SN_id_GostR3411_94_prf		"prf-gostr3411-94"
+#define LN_id_GostR3411_94_prf		"GOST R 34.11-94 PRF"
+#define NID_id_GostR3411_94_prf		816
+#define OBJ_id_GostR3411_94_prf		OBJ_cryptopro,23L
+
+#define SN_id_GostR3410_2001DH		"id-GostR3410-2001DH"
+#define LN_id_GostR3410_2001DH		"GOST R 34.10-2001 DH"
+#define NID_id_GostR3410_2001DH		817
+#define OBJ_id_GostR3410_2001DH		OBJ_cryptopro,98L
+
+#define SN_id_GostR3410_94DH		"id-GostR3410-94DH"
+#define LN_id_GostR3410_94DH		"GOST R 34.10-94 DH"
+#define NID_id_GostR3410_94DH		818
+#define OBJ_id_GostR3410_94DH		OBJ_cryptopro,99L
+
+#define SN_id_Gost28147_89_CryptoPro_KeyMeshing		"id-Gost28147-89-CryptoPr=
o-KeyMeshing"
+#define NID_id_Gost28147_89_CryptoPro_KeyMeshing		819
+#define OBJ_id_Gost28147_89_CryptoPro_KeyMeshing		OBJ_cryptopro,14L,1L
+
+#define SN_id_Gost28147_89_None_KeyMeshing		"id-Gost28147-89-None-KeyMeshi=
ng"
+#define NID_id_Gost28147_89_None_KeyMeshing		820
+#define OBJ_id_Gost28147_89_None_KeyMeshing		OBJ_cryptopro,14L,0L
+
+#define SN_id_GostR3411_94_TestParamSet		"id-GostR3411-94-TestParamSet"
+#define NID_id_GostR3411_94_TestParamSet		821
+#define OBJ_id_GostR3411_94_TestParamSet		OBJ_cryptopro,30L,0L
+
+#define SN_id_GostR3411_94_CryptoProParamSet		"id-GostR3411-94-CryptoProPa=
ramSet"
+#define NID_id_GostR3411_94_CryptoProParamSet		822
+#define OBJ_id_GostR3411_94_CryptoProParamSet		OBJ_cryptopro,30L,1L
+
+#define SN_id_Gost28147_89_TestParamSet		"id-Gost28147-89-TestParamSet"
+#define NID_id_Gost28147_89_TestParamSet		823
+#define OBJ_id_Gost28147_89_TestParamSet		OBJ_cryptopro,31L,0L
+
+#define SN_id_Gost28147_89_CryptoPro_A_ParamSet		"id-Gost28147-89-CryptoPr=
o-A-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_A_ParamSet		824
+#define OBJ_id_Gost28147_89_CryptoPro_A_ParamSet		OBJ_cryptopro,31L,1L
+
+#define SN_id_Gost28147_89_CryptoPro_B_ParamSet		"id-Gost28147-89-CryptoPr=
o-B-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_B_ParamSet		825
+#define OBJ_id_Gost28147_89_CryptoPro_B_ParamSet		OBJ_cryptopro,31L,2L
+
+#define SN_id_Gost28147_89_CryptoPro_C_ParamSet		"id-Gost28147-89-CryptoPr=
o-C-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_C_ParamSet		826
+#define OBJ_id_Gost28147_89_CryptoPro_C_ParamSet		OBJ_cryptopro,31L,3L
+
+#define SN_id_Gost28147_89_CryptoPro_D_ParamSet		"id-Gost28147-89-CryptoPr=
o-D-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_D_ParamSet		827
+#define OBJ_id_Gost28147_89_CryptoPro_D_ParamSet		OBJ_cryptopro,31L,4L
+
+#define SN_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet		"id-Gost28147-89-=
CryptoPro-Oscar-1-1-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet		828
+#define OBJ_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet		OBJ_cryptopro,31=
L,5L
+
+#define SN_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet		"id-Gost28147-89-=
CryptoPro-Oscar-1-0-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet		829
+#define OBJ_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet		OBJ_cryptopro,31=
L,6L
+
+#define SN_id_Gost28147_89_CryptoPro_RIC_1_ParamSet		"id-Gost28147-89-Cryp=
toPro-RIC-1-ParamSet"
+#define NID_id_Gost28147_89_CryptoPro_RIC_1_ParamSet		830
+#define OBJ_id_Gost28147_89_CryptoPro_RIC_1_ParamSet		OBJ_cryptopro,31L,7L
+
+#define SN_id_GostR3410_94_TestParamSet		"id-GostR3410-94-TestParamSet"
+#define NID_id_GostR3410_94_TestParamSet		831
+#define OBJ_id_GostR3410_94_TestParamSet		OBJ_cryptopro,32L,0L
+
+#define SN_id_GostR3410_94_CryptoPro_A_ParamSet		"id-GostR3410-94-CryptoPr=
o-A-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_A_ParamSet		832
+#define OBJ_id_GostR3410_94_CryptoPro_A_ParamSet		OBJ_cryptopro,32L,2L
+
+#define SN_id_GostR3410_94_CryptoPro_B_ParamSet		"id-GostR3410-94-CryptoPr=
o-B-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_B_ParamSet		833
+#define OBJ_id_GostR3410_94_CryptoPro_B_ParamSet		OBJ_cryptopro,32L,3L
+
+#define SN_id_GostR3410_94_CryptoPro_C_ParamSet		"id-GostR3410-94-CryptoPr=
o-C-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_C_ParamSet		834
+#define OBJ_id_GostR3410_94_CryptoPro_C_ParamSet		OBJ_cryptopro,32L,4L
+
+#define SN_id_GostR3410_94_CryptoPro_D_ParamSet		"id-GostR3410-94-CryptoPr=
o-D-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_D_ParamSet		835
+#define OBJ_id_GostR3410_94_CryptoPro_D_ParamSet		OBJ_cryptopro,32L,5L
+
+#define SN_id_GostR3410_94_CryptoPro_XchA_ParamSet		"id-GostR3410-94-Crypt=
oPro-XchA-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_XchA_ParamSet		836
+#define OBJ_id_GostR3410_94_CryptoPro_XchA_ParamSet		OBJ_cryptopro,33L,1L
+
+#define SN_id_GostR3410_94_CryptoPro_XchB_ParamSet		"id-GostR3410-94-Crypt=
oPro-XchB-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_XchB_ParamSet		837
+#define OBJ_id_GostR3410_94_CryptoPro_XchB_ParamSet		OBJ_cryptopro,33L,2L
+
+#define SN_id_GostR3410_94_CryptoPro_XchC_ParamSet		"id-GostR3410-94-Crypt=
oPro-XchC-ParamSet"
+#define NID_id_GostR3410_94_CryptoPro_XchC_ParamSet		838
+#define OBJ_id_GostR3410_94_CryptoPro_XchC_ParamSet		OBJ_cryptopro,33L,3L
+
+#define SN_id_GostR3410_2001_TestParamSet		"id-GostR3410-2001-TestParamSet"
+#define NID_id_GostR3410_2001_TestParamSet		839
+#define OBJ_id_GostR3410_2001_TestParamSet		OBJ_cryptopro,35L,0L
+
+#define SN_id_GostR3410_2001_CryptoPro_A_ParamSet		"id-GostR3410-2001-Cryp=
toPro-A-ParamSet"
+#define NID_id_GostR3410_2001_CryptoPro_A_ParamSet		840
+#define OBJ_id_GostR3410_2001_CryptoPro_A_ParamSet		OBJ_cryptopro,35L,1L
+
+#define SN_id_GostR3410_2001_CryptoPro_B_ParamSet		"id-GostR3410-2001-Cryp=
toPro-B-ParamSet"
+#define NID_id_GostR3410_2001_CryptoPro_B_ParamSet		841
+#define OBJ_id_GostR3410_2001_CryptoPro_B_ParamSet		OBJ_cryptopro,35L,2L
+
+#define SN_id_GostR3410_2001_CryptoPro_C_ParamSet		"id-GostR3410-2001-Cryp=
toPro-C-ParamSet"
+#define NID_id_GostR3410_2001_CryptoPro_C_ParamSet		842
+#define OBJ_id_GostR3410_2001_CryptoPro_C_ParamSet		OBJ_cryptopro,35L,3L
+
+#define SN_id_GostR3410_2001_CryptoPro_XchA_ParamSet		"id-GostR3410-2001-C=
ryptoPro-XchA-ParamSet"
+#define NID_id_GostR3410_2001_CryptoPro_XchA_ParamSet		843
+#define OBJ_id_GostR3410_2001_CryptoPro_XchA_ParamSet		OBJ_cryptopro,36L,0L
+
+#define SN_id_GostR3410_2001_CryptoPro_XchB_ParamSet		"id-GostR3410-2001-C=
ryptoPro-XchB-ParamSet"
+#define NID_id_GostR3410_2001_CryptoPro_XchB_ParamSet		844
+#define OBJ_id_GostR3410_2001_CryptoPro_XchB_ParamSet		OBJ_cryptopro,36L,1L
+
+#define SN_id_GostR3410_94_a		"id-GostR3410-94-a"
+#define NID_id_GostR3410_94_a		845
+#define OBJ_id_GostR3410_94_a		OBJ_id_GostR3410_94,1L
+
+#define SN_id_GostR3410_94_aBis		"id-GostR3410-94-aBis"
+#define NID_id_GostR3410_94_aBis		846
+#define OBJ_id_GostR3410_94_aBis		OBJ_id_GostR3410_94,2L
+
+#define SN_id_GostR3410_94_b		"id-GostR3410-94-b"
+#define NID_id_GostR3410_94_b		847
+#define OBJ_id_GostR3410_94_b		OBJ_id_GostR3410_94,3L
+
+#define SN_id_GostR3410_94_bBis		"id-GostR3410-94-bBis"
+#define NID_id_GostR3410_94_bBis		848
+#define OBJ_id_GostR3410_94_bBis		OBJ_id_GostR3410_94,4L
+
+#define SN_id_Gost28147_89_cc		"id-Gost28147-89-cc"
+#define LN_id_Gost28147_89_cc		"GOST 28147-89 Cryptocom ParamSet"
+#define NID_id_Gost28147_89_cc		849
+#define OBJ_id_Gost28147_89_cc		OBJ_cryptocom,1L,6L,1L
+
+#define SN_id_GostR3410_94_cc		"gost94cc"
+#define LN_id_GostR3410_94_cc		"GOST 34.10-94 Cryptocom"
+#define NID_id_GostR3410_94_cc		850
+#define OBJ_id_GostR3410_94_cc		OBJ_cryptocom,1L,5L,3L
+
+#define SN_id_GostR3410_2001_cc		"gost2001cc"
+#define LN_id_GostR3410_2001_cc		"GOST 34.10-2001 Cryptocom"
+#define NID_id_GostR3410_2001_cc		851
+#define OBJ_id_GostR3410_2001_cc		OBJ_cryptocom,1L,5L,4L
+
+#define SN_id_GostR3411_94_with_GostR3410_94_cc		"id-GostR3411-94-with-Gos=
tR3410-94-cc"
+#define LN_id_GostR3411_94_with_GostR3410_94_cc		"GOST R 34.11-94 with GOS=
T R 34.10-94 Cryptocom"
+#define NID_id_GostR3411_94_with_GostR3410_94_cc		852
+#define OBJ_id_GostR3411_94_with_GostR3410_94_cc		OBJ_cryptocom,1L,3L,3L
+
+#define SN_id_GostR3411_94_with_GostR3410_2001_cc		"id-GostR3411-94-with-G=
ostR3410-2001-cc"
+#define LN_id_GostR3411_94_with_GostR3410_2001_cc		"GOST R 34.11-94 with G=
OST R 34.10-2001 Cryptocom"
+#define NID_id_GostR3411_94_with_GostR3410_2001_cc		853
+#define OBJ_id_GostR3411_94_with_GostR3410_2001_cc		OBJ_cryptocom,1L,3L,4L
+
+#define SN_id_GostR3410_2001_ParamSet_cc		"id-GostR3410-2001-ParamSet-cc"
+#define LN_id_GostR3410_2001_ParamSet_cc		"GOST R 3410-2001 Parameter Set =
Cryptocom"
+#define NID_id_GostR3410_2001_ParamSet_cc		854
+#define OBJ_id_GostR3410_2001_ParamSet_cc		OBJ_cryptocom,1L,8L,1L
+
+#define SN_camellia_128_cbc		"CAMELLIA-128-CBC"
+#define LN_camellia_128_cbc		"camellia-128-cbc"
+#define NID_camellia_128_cbc		751
+#define OBJ_camellia_128_cbc		1L,2L,392L,200011L,61L,1L,1L,1L,2L
+
+#define SN_camellia_192_cbc		"CAMELLIA-192-CBC"
+#define LN_camellia_192_cbc		"camellia-192-cbc"
+#define NID_camellia_192_cbc		752
+#define OBJ_camellia_192_cbc		1L,2L,392L,200011L,61L,1L,1L,1L,3L
+
+#define SN_camellia_256_cbc		"CAMELLIA-256-CBC"
+#define LN_camellia_256_cbc		"camellia-256-cbc"
+#define NID_camellia_256_cbc		753
+#define OBJ_camellia_256_cbc		1L,2L,392L,200011L,61L,1L,1L,1L,4L
+
+#define OBJ_ntt_ds		0L,3L,4401L,5L
+
+#define OBJ_camellia		OBJ_ntt_ds,3L,1L,9L
+
+#define SN_camellia_128_ecb		"CAMELLIA-128-ECB"
+#define LN_camellia_128_ecb		"camellia-128-ecb"
+#define NID_camellia_128_ecb		754
+#define OBJ_camellia_128_ecb		OBJ_camellia,1L
+
+#define SN_camellia_128_ofb128		"CAMELLIA-128-OFB"
+#define LN_camellia_128_ofb128		"camellia-128-ofb"
+#define NID_camellia_128_ofb128		766
+#define OBJ_camellia_128_ofb128		OBJ_camellia,3L
+
+#define SN_camellia_128_cfb128		"CAMELLIA-128-CFB"
+#define LN_camellia_128_cfb128		"camellia-128-cfb"
+#define NID_camellia_128_cfb128		757
+#define OBJ_camellia_128_cfb128		OBJ_camellia,4L
+
+#define SN_camellia_192_ecb		"CAMELLIA-192-ECB"
+#define LN_camellia_192_ecb		"camellia-192-ecb"
+#define NID_camellia_192_ecb		755
+#define OBJ_camellia_192_ecb		OBJ_camellia,21L
+
+#define SN_camellia_192_ofb128		"CAMELLIA-192-OFB"
+#define LN_camellia_192_ofb128		"camellia-192-ofb"
+#define NID_camellia_192_ofb128		767
+#define OBJ_camellia_192_ofb128		OBJ_camellia,23L
+
+#define SN_camellia_192_cfb128		"CAMELLIA-192-CFB"
+#define LN_camellia_192_cfb128		"camellia-192-cfb"
+#define NID_camellia_192_cfb128		758
+#define OBJ_camellia_192_cfb128		OBJ_camellia,24L
+
+#define SN_camellia_256_ecb		"CAMELLIA-256-ECB"
+#define LN_camellia_256_ecb		"camellia-256-ecb"
+#define NID_camellia_256_ecb		756
+#define OBJ_camellia_256_ecb		OBJ_camellia,41L
+
+#define SN_camellia_256_ofb128		"CAMELLIA-256-OFB"
+#define LN_camellia_256_ofb128		"camellia-256-ofb"
+#define NID_camellia_256_ofb128		768
+#define OBJ_camellia_256_ofb128		OBJ_camellia,43L
+
+#define SN_camellia_256_cfb128		"CAMELLIA-256-CFB"
+#define LN_camellia_256_cfb128		"camellia-256-cfb"
+#define NID_camellia_256_cfb128		759
+#define OBJ_camellia_256_cfb128		OBJ_camellia,44L
+
+#define SN_camellia_128_cfb1		"CAMELLIA-128-CFB1"
+#define LN_camellia_128_cfb1		"camellia-128-cfb1"
+#define NID_camellia_128_cfb1		760
+
+#define SN_camellia_192_cfb1		"CAMELLIA-192-CFB1"
+#define LN_camellia_192_cfb1		"camellia-192-cfb1"
+#define NID_camellia_192_cfb1		761
+
+#define SN_camellia_256_cfb1		"CAMELLIA-256-CFB1"
+#define LN_camellia_256_cfb1		"camellia-256-cfb1"
+#define NID_camellia_256_cfb1		762
+
+#define SN_camellia_128_cfb8		"CAMELLIA-128-CFB8"
+#define LN_camellia_128_cfb8		"camellia-128-cfb8"
+#define NID_camellia_128_cfb8		763
+
+#define SN_camellia_192_cfb8		"CAMELLIA-192-CFB8"
+#define LN_camellia_192_cfb8		"camellia-192-cfb8"
+#define NID_camellia_192_cfb8		764
+
+#define SN_camellia_256_cfb8		"CAMELLIA-256-CFB8"
+#define LN_camellia_256_cfb8		"camellia-256-cfb8"
+#define NID_camellia_256_cfb8		765
+
+#define SN_kisa		"KISA"
+#define LN_kisa		"kisa"
+#define NID_kisa		773
+#define OBJ_kisa		OBJ_member_body,410L,200004L
+
+#define SN_seed_ecb		"SEED-ECB"
+#define LN_seed_ecb		"seed-ecb"
+#define NID_seed_ecb		776
+#define OBJ_seed_ecb		OBJ_kisa,1L,3L
+
+#define SN_seed_cbc		"SEED-CBC"
+#define LN_seed_cbc		"seed-cbc"
+#define NID_seed_cbc		777
+#define OBJ_seed_cbc		OBJ_kisa,1L,4L
+
+#define SN_seed_cfb128		"SEED-CFB"
+#define LN_seed_cfb128		"seed-cfb"
+#define NID_seed_cfb128		779
+#define OBJ_seed_cfb128		OBJ_kisa,1L,5L
+
+#define SN_seed_ofb128		"SEED-OFB"
+#define LN_seed_ofb128		"seed-ofb"
+#define NID_seed_ofb128		778
+#define OBJ_seed_ofb128		OBJ_kisa,1L,6L
+
+#define SN_hmac		"HMAC"
+#define LN_hmac		"hmac"
+#define NID_hmac		855
+
Index: secure/lib/libcrypto/obj_xref.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/obj_xref.h	(revision 0)
+++ secure/lib/libcrypto/obj_xref.h	(revision 0)
@@ -0,0 +1,75 @@
+/* AUTOGENERATED BY objxref.pl, DO NOT EDIT */
+
+typedef struct
+	{
+	int sign_id;
+	int hash_id;
+	int pkey_id;
+	} nid_triple;
+
+static const nid_triple sigoid_srt[] =3D
+	{
+	{NID_md2WithRSAEncryption, NID_md2, NID_rsaEncryption},
+	{NID_md5WithRSAEncryption, NID_md5, NID_rsaEncryption},
+	{NID_shaWithRSAEncryption, NID_sha, NID_rsaEncryption},
+	{NID_sha1WithRSAEncryption, NID_sha1, NID_rsaEncryption},
+	{NID_dsaWithSHA, NID_sha, NID_dsa},
+	{NID_dsaWithSHA1_2, NID_sha1, NID_dsa_2},
+	{NID_mdc2WithRSA, NID_mdc2, NID_rsaEncryption},
+	{NID_md5WithRSA, NID_md5, NID_rsa},
+	{NID_dsaWithSHA1, NID_sha1, NID_dsa},
+	{NID_sha1WithRSA, NID_sha1, NID_rsa},
+	{NID_ripemd160WithRSA, NID_ripemd160, NID_rsaEncryption},
+	{NID_md4WithRSAEncryption, NID_md4, NID_rsaEncryption},
+	{NID_ecdsa_with_SHA1, NID_sha1, NID_X9_62_id_ecPublicKey},
+	{NID_sha256WithRSAEncryption, NID_sha256, NID_rsaEncryption},
+	{NID_sha384WithRSAEncryption, NID_sha384, NID_rsaEncryption},
+	{NID_sha512WithRSAEncryption, NID_sha512, NID_rsaEncryption},
+	{NID_sha224WithRSAEncryption, NID_sha224, NID_rsaEncryption},
+	{NID_ecdsa_with_Recommended, NID_undef, NID_X9_62_id_ecPublicKey},
+	{NID_ecdsa_with_Specified, NID_undef, NID_X9_62_id_ecPublicKey},
+	{NID_ecdsa_with_SHA224, NID_sha224, NID_X9_62_id_ecPublicKey},
+	{NID_ecdsa_with_SHA256, NID_sha256, NID_X9_62_id_ecPublicKey},
+	{NID_ecdsa_with_SHA384, NID_sha384, NID_X9_62_id_ecPublicKey},
+	{NID_ecdsa_with_SHA512, NID_sha512, NID_X9_62_id_ecPublicKey},
+	{NID_dsa_with_SHA224, NID_sha224, NID_dsa},
+	{NID_dsa_with_SHA256, NID_sha256, NID_dsa},
+	{NID_id_GostR3411_94_with_GostR3410_2001, NID_id_GostR3411_94, NID_id_Gos=
tR3410_2001},
+	{NID_id_GostR3411_94_with_GostR3410_94, NID_id_GostR3411_94, NID_id_GostR=
3410_94},
+	{NID_id_GostR3411_94_with_GostR3410_94_cc, NID_id_GostR3411_94, NID_id_Go=
stR3410_94_cc},
+	{NID_id_GostR3411_94_with_GostR3410_2001_cc, NID_id_GostR3411_94, NID_id_=
GostR3410_2001_cc},
+	};
+
+static const nid_triple * const sigoid_srt_xref[] =3D
+	{
+	&sigoid_srt[17],
+	&sigoid_srt[18],
+	&sigoid_srt[0],
+	&sigoid_srt[1],
+	&sigoid_srt[7],
+	&sigoid_srt[2],
+	&sigoid_srt[4],
+	&sigoid_srt[3],
+	&sigoid_srt[9],
+	&sigoid_srt[5],
+	&sigoid_srt[8],
+	&sigoid_srt[12],
+	&sigoid_srt[6],
+	&sigoid_srt[10],
+	&sigoid_srt[11],
+	&sigoid_srt[13],
+	&sigoid_srt[24],
+	&sigoid_srt[20],
+	&sigoid_srt[14],
+	&sigoid_srt[21],
+	&sigoid_srt[15],
+	&sigoid_srt[22],
+	&sigoid_srt[16],
+	&sigoid_srt[23],
+	&sigoid_srt[19],
+	&sigoid_srt[25],
+	&sigoid_srt[26],
+	&sigoid_srt[27],
+	&sigoid_srt[28],
+	};
+
Index: secure/lib/libcrypto/Makefile.inc
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/Makefile.inc	(revision 218560)
+++ secure/lib/libcrypto/Makefile.inc	(working copy)
@@ -1,16 +1,16 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/Makefile.inc,v 1.47.10.1 2010/02/10 0=
0:26:20 kensmith Exp $
=20
 .include <bsd.own.mk>
=20
 # OpenSSL version used for manual page generation
=2DOPENSSL_VER=3D	0.9.8q
=2DOPENSSL_DATE=3D	2010-12-02
+OPENSSL_VER=3D  1.0.0d
+OPENSSL_DATE=3D 2011-02-08
=20
 LCRYPTO_SRC=3D	${.CURDIR}/../../../crypto/openssl
 LCRYPTO_DOC=3D	${.CURDIR}/../../../crypto/openssl/doc
=20
 CFLAGS+=3D	-DTERMIOS -DANSI_SOURCE
=2DCFLAGS+=3D	-I${LCRYPTO_SRC} -I${LCRYPTO_SRC}/crypto -I${.OBJDIR}
+CFLAGS+=3D	-I${LCRYPTO_SRC} -I${LCRYPTO_SRC}/crypto -I${LCRYPTO_SRC}/crypt=
o/asn1 -I${LCRYPTO_SRC}/crypto/evp -I${.OBJDIR}
 CFLAGS+=3D	-DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H
=20
 .if ${MK_IDEA} =3D=3D "no"
@@ -21,6 +21,15 @@
 CFLAGS+=3D -DL_ENDIAN
 .endif
=20
+# OpenSSL Assembly flags
+.if ${MACHINE_ARCH} =3D=3D "i386"
+CFLAGS+=3D	-DAES_ASM -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DM=
D5_ASM -DRMD160_ASM
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+CFLAGS+=3D	-DAES_ASM -DOPENSSL_BN_ASM_MONT -DMD5_ASM -DWHIRLPOOL_ASM
+.endif
+
+
+
 MANDIR=3D	${SHAREDIR}/openssl/man/man
=20
 .if defined(LIB)
@@ -39,7 +48,7 @@
 	pod=3D${manpage:R}.pod; \
 	cp ${LCRYPTO_DOC}/${_docs}/$$pod .; \
 	pod2man --section=3D$$sec --release=3D"${OPENSSL_VER}" \
=2D	  --date=3D"${OPENSSL_DATE}" --center=3D"OpenSSL"  \
+	  --date=3D"${OPENSSL_DATE}" --center=3D"OpenSSL" \
 	  $$pod > ${.CURDIR}/man/${manpage}; \
 	rm -f $$pod; \
 	${ECHO} ${manpage})
Index: secure/lib/libcrypto/Makefile.man
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/Makefile.man	(revision 218560)
+++ secure/lib/libcrypto/Makefile.man	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/Makefile.man,v 1.6.12.1 2010/02/10 00=
:26:20 kensmith Exp $
 # DO NOT EDIT: generated from man-makefile-update target
 MAN+=3D ASN1_OBJECT_new.3
 MAN+=3D ASN1_STRING_length.3
@@ -708,72 +708,6 @@
 MLINKS+=3D mdc2.3 MDC2_Update.3
 MLINKS+=3D mdc2.3 MDC2_Final.3
 MLINKS+=3D pem.3 PEM.3
=2DMLINKS+=3D pem.3 PEM_read_bio_PrivateKey.3
=2DMLINKS+=3D pem.3 PEM_read_PrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_bio_PrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_PrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_bio_PKCS8PrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_PKCS8PrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_bio_PKCS8PrivateKey_nid.3
=2DMLINKS+=3D pem.3 PEM_write_PKCS8PrivateKey_nid.3
=2DMLINKS+=3D pem.3 PEM_read_bio_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_read_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_write_bio_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_write_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_read_bio_RSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_read_RSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_bio_RSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_RSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_read_bio_RSAPublicKey.3
=2DMLINKS+=3D pem.3 PEM_read_RSAPublicKey.3
=2DMLINKS+=3D pem.3 PEM_write_bio_RSAPublicKey.3
=2DMLINKS+=3D pem.3 PEM_write_RSAPublicKey.3
=2DMLINKS+=3D pem.3 PEM_read_bio_RSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_read_RSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_write_bio_RSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_write_RSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_read_bio_DSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_read_DSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_bio_DSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_write_DSAPrivateKey.3
=2DMLINKS+=3D pem.3 PEM_read_bio_DSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_read_DSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_write_bio_DSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_write_DSA_PUBKEY.3
=2DMLINKS+=3D pem.3 PEM_read_bio_DSAparams.3
=2DMLINKS+=3D pem.3 PEM_read_DSAparams.3
=2DMLINKS+=3D pem.3 PEM_write_bio_DSAparams.3
=2DMLINKS+=3D pem.3 PEM_write_DSAparams.3
=2DMLINKS+=3D pem.3 PEM_read_bio_DHparams.3
=2DMLINKS+=3D pem.3 PEM_read_DHparams.3
=2DMLINKS+=3D pem.3 PEM_write_bio_DHparams.3
=2DMLINKS+=3D pem.3 PEM_write_DHparams.3
=2DMLINKS+=3D pem.3 PEM_read_bio_X509.3
=2DMLINKS+=3D pem.3 PEM_read_X509.3
=2DMLINKS+=3D pem.3 PEM_write_bio_X509.3
=2DMLINKS+=3D pem.3 PEM_write_X509.3
=2DMLINKS+=3D pem.3 PEM_read_bio_X509_AUX.3
=2DMLINKS+=3D pem.3 PEM_read_X509_AUX.3
=2DMLINKS+=3D pem.3 PEM_write_bio_X509_AUX.3
=2DMLINKS+=3D pem.3 PEM_write_X509_AUX.3
=2DMLINKS+=3D pem.3 PEM_read_bio_X509_REQ.3
=2DMLINKS+=3D pem.3 PEM_read_X509_REQ.3
=2DMLINKS+=3D pem.3 PEM_write_bio_X509_REQ.3
=2DMLINKS+=3D pem.3 PEM_write_X509_REQ.3
=2DMLINKS+=3D pem.3 PEM_write_bio_X509_REQ_NEW.3
=2DMLINKS+=3D pem.3 PEM_write_X509_REQ_NEW.3
=2DMLINKS+=3D pem.3 PEM_read_bio_X509_CRL.3
=2DMLINKS+=3D pem.3 PEM_read_X509_CRL.3
=2DMLINKS+=3D pem.3 PEM_write_bio_X509_CRL.3
=2DMLINKS+=3D pem.3 PEM_write_X509_CRL.3
=2DMLINKS+=3D pem.3 PEM_read_bio_PKCS7.3
=2DMLINKS+=3D pem.3 PEM_read_PKCS7.3
=2DMLINKS+=3D pem.3 PEM_write_bio_PKCS7.3
=2DMLINKS+=3D pem.3 PEM_write_PKCS7.3
=2DMLINKS+=3D pem.3 PEM_read_bio_NETSCAPE_CERT_SEQUENCE.3
=2DMLINKS+=3D pem.3 PEM_read_NETSCAPE_CERT_SEQUENCE.3
=2DMLINKS+=3D pem.3 PEM_write_bio_NETSCAPE_CERT_SEQUENCE.3
=2DMLINKS+=3D pem.3 PEM_write_NETSCAPE_CERT_SEQUENCE.3
 MLINKS+=3D rc4.3 RC4_set_key.3
 MLINKS+=3D rc4.3 RC4.3
 MLINKS+=3D ripemd.3 RIPEMD160.3
Index: secure/lib/libcrypto/obj_dat.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/obj_dat.h	(revision 0)
+++ secure/lib/libcrypto/obj_dat.h	(revision 0)
@@ -0,0 +1,4976 @@
+/* crypto/objects/obj_dat.h */
+
+/* THIS FILE IS GENERATED FROM objects.h by obj_dat.pl via the
+ * following command:
+ * perl obj_dat.pl obj_mac.h obj_dat.h
+ */
+
+/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com)
+ * All rights reserved.
+ *
+ * This package is an SSL implementation written
+ * by Eric Young (eay@cryptsoft.com).
+ * The implementation was written so as to conform with Netscapes SSL.
+ *=20
+ * This library is free for commercial and non-commercial use as long as
+ * the following conditions are aheared to.  The following conditions
+ * apply to all code found in this distribution, be it the RC4, RSA,
+ * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
+ * included with this distribution is covered by the same copyright terms
+ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
+ *=20
+ * Copyright remains Eric Young's, and as such any Copyright notices in
+ * the code are not to be removed.
+ * If this package is used in a product, Eric Young should be given attrib=
ution
+ * as the author of the parts of the library used.
+ * This can be in the form of a textual message at program startup or
+ * in documentation (online or textual) provided with the package.
+ *=20
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *    "This product includes cryptographic software written by
+ *     Eric Young (eay@cryptsoft.com)"
+ *    The word 'cryptographic' can be left out if the rouines from the lib=
rary
+ *    being used are not cryptographic related :-).
+ * 4. If you include any Windows specific code (or a derivative thereof) f=
rom=20
+ *    the apps directory (application code) you must include an acknowledg=
ement:
+ *    "This product includes software written by Tim Hudson (tjh@cryptsoft=
=2Ecom)"
+ *=20
+ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURP=
OSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENT=
IAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STR=
ICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY W=
AY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *=20
+ * The licence and distribution terms for any publically available version=
 or
+ * derivative of this code cannot be changed.  i.e. this code cannot simpl=
y be
+ * copied and put under another distribution licence
+ * [including the GNU Public Licence.]
+ */
+
+#define NUM_NID 893
+#define NUM_SN 886
+#define NUM_LN 886
+#define NUM_OBJ 840
+
+static const unsigned char lvalues[5824]=3D{
+0x00,                                        /* [  0] OBJ_undef */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,               /* [  1] OBJ_rsadsi */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,          /* [  7] OBJ_pkcs */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x02,     /* [ 14] OBJ_md2 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x05,     /* [ 22] OBJ_md5 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x03,0x04,     /* [ 30] OBJ_rc4 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x01,/* [ 38] OBJ_rsaEncryption */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x02,/* [ 47] OBJ_md2WithRSAEncryp=
tion */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x04,/* [ 56] OBJ_md5WithRSAEncryp=
tion */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x01,/* [ 65] OBJ_pbeWithMD2AndDES=
_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x03,/* [ 74] OBJ_pbeWithMD5AndDES=
_CBC */
+0x55,                                        /* [ 83] OBJ_X500 */
+0x55,0x04,                                   /* [ 84] OBJ_X509 */
+0x55,0x04,0x03,                              /* [ 86] OBJ_commonName */
+0x55,0x04,0x06,                              /* [ 89] OBJ_countryName */
+0x55,0x04,0x07,                              /* [ 92] OBJ_localityName */
+0x55,0x04,0x08,                              /* [ 95] OBJ_stateOrProvinceN=
ame */
+0x55,0x04,0x0A,                              /* [ 98] OBJ_organizationName=
 */
+0x55,0x04,0x0B,                              /* [101] OBJ_organizationalUn=
itName */
+0x55,0x08,0x01,0x01,                         /* [104] OBJ_rsa */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,     /* [108] OBJ_pkcs7 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,0x01,/* [116] OBJ_pkcs7_data */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,0x02,/* [125] OBJ_pkcs7_signed */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,0x03,/* [134] OBJ_pkcs7_enveloped =
*/
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,0x04,/* [143] OBJ_pkcs7_signedAndE=
nveloped */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,0x05,/* [152] OBJ_pkcs7_digest */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x07,0x06,/* [161] OBJ_pkcs7_encrypted =
*/
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x03,     /* [170] OBJ_pkcs3 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x03,0x01,/* [178] OBJ_dhKeyAgreement */
+0x2B,0x0E,0x03,0x02,0x06,                    /* [187] OBJ_des_ecb */
+0x2B,0x0E,0x03,0x02,0x09,                    /* [192] OBJ_des_cfb64 */
+0x2B,0x0E,0x03,0x02,0x07,                    /* [197] OBJ_des_cbc */
+0x2B,0x0E,0x03,0x02,0x11,                    /* [202] OBJ_des_ede_ecb */
+0x2B,0x06,0x01,0x04,0x01,0x81,0x3C,0x07,0x01,0x01,0x02,/* [207] OBJ_idea_c=
bc */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x03,0x02,     /* [218] OBJ_rc2_cbc */
+0x2B,0x0E,0x03,0x02,0x12,                    /* [226] OBJ_sha */
+0x2B,0x0E,0x03,0x02,0x0F,                    /* [231] OBJ_shaWithRSAEncryp=
tion */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x03,0x07,     /* [236] OBJ_des_ede3_cbc */
+0x2B,0x0E,0x03,0x02,0x08,                    /* [244] OBJ_des_ofb64 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,     /* [249] OBJ_pkcs9 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x01,/* [257] OBJ_pkcs9_emailAddre=
ss */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x02,/* [266] OBJ_pkcs9_unstructur=
edName */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x03,/* [275] OBJ_pkcs9_contentTyp=
e */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x04,/* [284] OBJ_pkcs9_messageDig=
est */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x05,/* [293] OBJ_pkcs9_signingTim=
e */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x06,/* [302] OBJ_pkcs9_countersig=
nature */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x07,/* [311] OBJ_pkcs9_challengeP=
assword */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x08,/* [320] OBJ_pkcs9_unstructur=
edAddress */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x09,/* [329] OBJ_pkcs9_extCertAtt=
ributes */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,          /* [338] OBJ_netscape */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,     /* [345] OBJ_netscape_cert_ex=
tension */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x02,     /* [353] OBJ_netscape_data_ty=
pe */
+0x2B,0x0E,0x03,0x02,0x1A,                    /* [361] OBJ_sha1 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x05,/* [366] OBJ_sha1WithRSAEncry=
ption */
+0x2B,0x0E,0x03,0x02,0x0D,                    /* [375] OBJ_dsaWithSHA */
+0x2B,0x0E,0x03,0x02,0x0C,                    /* [380] OBJ_dsa_2 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x0B,/* [385] OBJ_pbeWithSHA1AndRC=
2_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x0C,/* [394] OBJ_id_pbkdf2 */
+0x2B,0x0E,0x03,0x02,0x1B,                    /* [403] OBJ_dsaWithSHA1_2 */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x01,/* [408] OBJ_netscape_cert_ty=
pe */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x02,/* [417] OBJ_netscape_base_ur=
l */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x03,/* [426] OBJ_netscape_revocat=
ion_url */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x04,/* [435] OBJ_netscape_ca_revo=
cation_url */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x07,/* [444] OBJ_netscape_renewal=
_url */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x08,/* [453] OBJ_netscape_ca_poli=
cy_url */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x0C,/* [462] OBJ_netscape_ssl_ser=
ver_name */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x01,0x0D,/* [471] OBJ_netscape_comment=
 */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x02,0x05,/* [480] OBJ_netscape_cert_se=
quence */
+0x55,0x1D,                                   /* [489] OBJ_id_ce */
+0x55,0x1D,0x0E,                              /* [491] OBJ_subject_key_iden=
tifier */
+0x55,0x1D,0x0F,                              /* [494] OBJ_key_usage */
+0x55,0x1D,0x10,                              /* [497] OBJ_private_key_usag=
e_period */
+0x55,0x1D,0x11,                              /* [500] OBJ_subject_alt_name=
 */
+0x55,0x1D,0x12,                              /* [503] OBJ_issuer_alt_name =
*/
+0x55,0x1D,0x13,                              /* [506] OBJ_basic_constraint=
s */
+0x55,0x1D,0x14,                              /* [509] OBJ_crl_number */
+0x55,0x1D,0x20,                              /* [512] OBJ_certificate_poli=
cies */
+0x55,0x1D,0x23,                              /* [515] OBJ_authority_key_id=
entifier */
+0x2B,0x06,0x01,0x04,0x01,0x97,0x55,0x01,0x02,/* [518] OBJ_bf_cbc */
+0x55,0x08,0x03,0x65,                         /* [527] OBJ_mdc2 */
+0x55,0x08,0x03,0x64,                         /* [531] OBJ_mdc2WithRSA */
+0x55,0x04,0x2A,                              /* [535] OBJ_givenName */
+0x55,0x04,0x04,                              /* [538] OBJ_surname */
+0x55,0x04,0x2B,                              /* [541] OBJ_initials */
+0x55,0x1D,0x1F,                              /* [544] OBJ_crl_distribution=
_points */
+0x2B,0x0E,0x03,0x02,0x03,                    /* [547] OBJ_md5WithRSA */
+0x55,0x04,0x05,                              /* [552] OBJ_serialNumber */
+0x55,0x04,0x0C,                              /* [555] OBJ_title */
+0x55,0x04,0x0D,                              /* [558] OBJ_description */
+0x2A,0x86,0x48,0x86,0xF6,0x7D,0x07,0x42,0x0A,/* [561] OBJ_cast5_cbc */
+0x2A,0x86,0x48,0x86,0xF6,0x7D,0x07,0x42,0x0C,/* [570] OBJ_pbeWithMD5AndCas=
t5_CBC */
+0x2A,0x86,0x48,0xCE,0x38,0x04,0x03,          /* [579] OBJ_dsaWithSHA1 */
+0x2B,0x0E,0x03,0x02,0x1D,                    /* [586] OBJ_sha1WithRSA */
+0x2A,0x86,0x48,0xCE,0x38,0x04,0x01,          /* [591] OBJ_dsa */
+0x2B,0x24,0x03,0x02,0x01,                    /* [598] OBJ_ripemd160 */
+0x2B,0x24,0x03,0x03,0x01,0x02,               /* [603] OBJ_ripemd160WithRSA=
 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x03,0x08,     /* [609] OBJ_rc5_cbc */
+0x29,0x01,0x01,0x85,0x1A,0x01,               /* [617] OBJ_rle_compression =
*/
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x08,/* [623] OBJ_zlib_c=
ompression */
+0x55,0x1D,0x25,                              /* [634] OBJ_ext_key_usage */
+0x2B,0x06,0x01,0x05,0x05,0x07,               /* [637] OBJ_id_pkix */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,          /* [643] OBJ_id_kp */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x01,     /* [650] OBJ_server_auth */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x02,     /* [658] OBJ_client_auth */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x03,     /* [666] OBJ_code_sign */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x04,     /* [674] OBJ_email_protect */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x08,     /* [682] OBJ_time_stamp */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x02,0x01,0x15,/* [690] OBJ_ms_code_ind=
 */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x02,0x01,0x16,/* [700] OBJ_ms_code_com=
 */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x0A,0x03,0x01,/* [710] OBJ_ms_ctl_sign=
 */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x0A,0x03,0x03,/* [720] OBJ_ms_sgc */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x0A,0x03,0x04,/* [730] OBJ_ms_efs */
+0x60,0x86,0x48,0x01,0x86,0xF8,0x42,0x04,0x01,/* [740] OBJ_ns_sgc */
+0x55,0x1D,0x1B,                              /* [749] OBJ_delta_crl */
+0x55,0x1D,0x15,                              /* [752] OBJ_crl_reason */
+0x55,0x1D,0x18,                              /* [755] OBJ_invalidity_date =
*/
+0x2B,0x65,0x01,0x04,0x01,                    /* [758] OBJ_sxnet */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x01,0x01,/* [763] OBJ_pbe_WithSHA=
1And128BitRC4 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x01,0x02,/* [773] OBJ_pbe_WithSHA=
1And40BitRC4 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x01,0x03,/* [783] OBJ_pbe_WithSHA=
1And3_Key_TripleDES_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x01,0x04,/* [793] OBJ_pbe_WithSHA=
1And2_Key_TripleDES_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x01,0x05,/* [803] OBJ_pbe_WithSHA=
1And128BitRC2_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x01,0x06,/* [813] OBJ_pbe_WithSHA=
1And40BitRC2_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x0A,0x01,0x01,/* [823] OBJ_keyBag=
 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x0A,0x01,0x02,/* [834] OBJ_pkcs8S=
hroudedKeyBag */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x0A,0x01,0x03,/* [845] OBJ_certBa=
g */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x0A,0x01,0x04,/* [856] OBJ_crlBag=
 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x0A,0x01,0x05,/* [867] OBJ_secret=
Bag */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x0C,0x0A,0x01,0x06,/* [878] OBJ_safeCo=
ntentsBag */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x14,/* [889] OBJ_friendlyName */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x15,/* [898] OBJ_localKeyID */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x16,0x01,/* [907] OBJ_x509Certifi=
cate */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x16,0x02,/* [917] OBJ_sdsiCertifi=
cate */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x17,0x01,/* [927] OBJ_x509Crl */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x0D,/* [937] OBJ_pbes2 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x0E,/* [946] OBJ_pbmac1 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x07,     /* [955] OBJ_hmacWithSHA1 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x02,0x01,     /* [963] OBJ_id_qt_cps */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x02,0x02,     /* [971] OBJ_id_qt_unotice */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x0F,/* [979] OBJ_SMIMECapabilitie=
s */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x04,/* [988] OBJ_pbeWithMD2AndRC2=
_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x06,/* [997] OBJ_pbeWithMD5AndRC2=
_CBC */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,0x0A,/* [1006] OBJ_pbeWithSHA1AndD=
ES_CBC */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x02,0x01,0x0E,/* [1015] OBJ_ms_ext_req=
 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x0E,/* [1025] OBJ_ext_req */
+0x55,0x04,0x29,                              /* [1034] OBJ_name */
+0x55,0x04,0x2E,                              /* [1037] OBJ_dnQualifier */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,          /* [1040] OBJ_id_pe */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,          /* [1047] OBJ_id_ad */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x01,     /* [1054] OBJ_info_access */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,     /* [1062] OBJ_ad_OCSP */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x02,     /* [1070] OBJ_ad_ca_issuers */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x09,     /* [1078] OBJ_OCSP_sign */
+0x28,                                        /* [1086] OBJ_iso */
+0x2A,                                        /* [1087] OBJ_member_body */
+0x2A,0x86,0x48,                              /* [1088] OBJ_ISO_US */
+0x2A,0x86,0x48,0xCE,0x38,                    /* [1091] OBJ_X9_57 */
+0x2A,0x86,0x48,0xCE,0x38,0x04,               /* [1096] OBJ_X9cm */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,     /* [1102] OBJ_pkcs1 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x05,     /* [1110] OBJ_pkcs5 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,/* [1118] OBJ_SMIME */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,/* [1127] OBJ_id_smime_m=
od */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,/* [1137] OBJ_id_smime_c=
t */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,/* [1147] OBJ_id_smime_a=
a */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,/* [1157] OBJ_id_smime_a=
lg */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x04,/* [1167] OBJ_id_smime_c=
d */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x05,/* [1177] OBJ_id_smime_s=
pq */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,/* [1187] OBJ_id_smime_c=
ti */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x01,/* [1197] OBJ_id_sm=
ime_mod_cms */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x02,/* [1208] OBJ_id_sm=
ime_mod_ess */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x03,/* [1219] OBJ_id_sm=
ime_mod_oid */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x04,/* [1230] OBJ_id_sm=
ime_mod_msg_v3 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x05,/* [1241] OBJ_id_sm=
ime_mod_ets_eSignature_88 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x06,/* [1252] OBJ_id_sm=
ime_mod_ets_eSignature_97 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x07,/* [1263] OBJ_id_sm=
ime_mod_ets_eSigPolicy_88 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x00,0x08,/* [1274] OBJ_id_sm=
ime_mod_ets_eSigPolicy_97 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x01,/* [1285] OBJ_id_sm=
ime_ct_receipt */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x02,/* [1296] OBJ_id_sm=
ime_ct_authData */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x03,/* [1307] OBJ_id_sm=
ime_ct_publishCert */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x04,/* [1318] OBJ_id_sm=
ime_ct_TSTInfo */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x05,/* [1329] OBJ_id_sm=
ime_ct_TDTInfo */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x06,/* [1340] OBJ_id_sm=
ime_ct_contentInfo */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x07,/* [1351] OBJ_id_sm=
ime_ct_DVCSRequestData */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x08,/* [1362] OBJ_id_sm=
ime_ct_DVCSResponseData */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x01,/* [1373] OBJ_id_sm=
ime_aa_receiptRequest */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x02,/* [1384] OBJ_id_sm=
ime_aa_securityLabel */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x03,/* [1395] OBJ_id_sm=
ime_aa_mlExpandHistory */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x04,/* [1406] OBJ_id_sm=
ime_aa_contentHint */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x05,/* [1417] OBJ_id_sm=
ime_aa_msgSigDigest */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x06,/* [1428] OBJ_id_sm=
ime_aa_encapContentType */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x07,/* [1439] OBJ_id_sm=
ime_aa_contentIdentifier */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x08,/* [1450] OBJ_id_sm=
ime_aa_macValue */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x09,/* [1461] OBJ_id_sm=
ime_aa_equivalentLabels */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x0A,/* [1472] OBJ_id_sm=
ime_aa_contentReference */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x0B,/* [1483] OBJ_id_sm=
ime_aa_encrypKeyPref */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x0C,/* [1494] OBJ_id_sm=
ime_aa_signingCertificate */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x0D,/* [1505] OBJ_id_sm=
ime_aa_smimeEncryptCerts */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x0E,/* [1516] OBJ_id_sm=
ime_aa_timeStampToken */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x0F,/* [1527] OBJ_id_sm=
ime_aa_ets_sigPolicyId */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x10,/* [1538] OBJ_id_sm=
ime_aa_ets_commitmentType */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x11,/* [1549] OBJ_id_sm=
ime_aa_ets_signerLocation */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x12,/* [1560] OBJ_id_sm=
ime_aa_ets_signerAttr */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x13,/* [1571] OBJ_id_sm=
ime_aa_ets_otherSigCert */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x14,/* [1582] OBJ_id_sm=
ime_aa_ets_contentTimestamp */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x15,/* [1593] OBJ_id_sm=
ime_aa_ets_CertificateRefs */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x16,/* [1604] OBJ_id_sm=
ime_aa_ets_RevocationRefs */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x17,/* [1615] OBJ_id_sm=
ime_aa_ets_certValues */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x18,/* [1626] OBJ_id_sm=
ime_aa_ets_revocationValues */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x19,/* [1637] OBJ_id_sm=
ime_aa_ets_escTimeStamp */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x1A,/* [1648] OBJ_id_sm=
ime_aa_ets_certCRLTimestamp */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x1B,/* [1659] OBJ_id_sm=
ime_aa_ets_archiveTimeStamp */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x1C,/* [1670] OBJ_id_sm=
ime_aa_signatureType */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x02,0x1D,/* [1681] OBJ_id_sm=
ime_aa_dvcs_dvc */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x01,/* [1692] OBJ_id_sm=
ime_alg_ESDHwith3DES */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x02,/* [1703] OBJ_id_sm=
ime_alg_ESDHwithRC2 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x03,/* [1714] OBJ_id_sm=
ime_alg_3DESwrap */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x04,/* [1725] OBJ_id_sm=
ime_alg_RC2wrap */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x05,/* [1736] OBJ_id_sm=
ime_alg_ESDH */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x06,/* [1747] OBJ_id_sm=
ime_alg_CMS3DESwrap */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x03,0x07,/* [1758] OBJ_id_sm=
ime_alg_CMSRC2wrap */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x04,0x01,/* [1769] OBJ_id_sm=
ime_cd_ldap */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x05,0x01,/* [1780] OBJ_id_sm=
ime_spq_ets_sqt_uri */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x05,0x02,/* [1791] OBJ_id_sm=
ime_spq_ets_sqt_unotice */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,0x01,/* [1802] OBJ_id_sm=
ime_cti_ets_proofOfOrigin */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,0x02,/* [1813] OBJ_id_sm=
ime_cti_ets_proofOfReceipt */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,0x03,/* [1824] OBJ_id_sm=
ime_cti_ets_proofOfDelivery */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,0x04,/* [1835] OBJ_id_sm=
ime_cti_ets_proofOfSender */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,0x05,/* [1846] OBJ_id_sm=
ime_cti_ets_proofOfApproval */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x06,0x06,/* [1857] OBJ_id_sm=
ime_cti_ets_proofOfCreation */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x04,     /* [1868] OBJ_md4 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,          /* [1876] OBJ_id_pkix_mod */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x02,          /* [1883] OBJ_id_qt */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,          /* [1890] OBJ_id_it */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,          /* [1897] OBJ_id_pkip */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x06,          /* [1904] OBJ_id_alg */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,          /* [1911] OBJ_id_cmc */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x08,          /* [1918] OBJ_id_on */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x09,          /* [1925] OBJ_id_pda */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,          /* [1932] OBJ_id_aca */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0B,          /* [1939] OBJ_id_qcs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,          /* [1946] OBJ_id_cct */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x01,     /* [1953] OBJ_id_pkix1_explic=
it_88 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x02,     /* [1961] OBJ_id_pkix1_implic=
it_88 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x03,     /* [1969] OBJ_id_pkix1_explic=
it_93 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x04,     /* [1977] OBJ_id_pkix1_implic=
it_93 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x05,     /* [1985] OBJ_id_mod_crmf */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x06,     /* [1993] OBJ_id_mod_cmc */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x07,     /* [2001] OBJ_id_mod_kea_prof=
ile_88 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x08,     /* [2009] OBJ_id_mod_kea_prof=
ile_93 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x09,     /* [2017] OBJ_id_mod_cmp */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x0A,     /* [2025] OBJ_id_mod_qualifie=
d_cert_88 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x0B,     /* [2033] OBJ_id_mod_qualifie=
d_cert_93 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x0C,     /* [2041] OBJ_id_mod_attribut=
e_cert */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x0D,     /* [2049] OBJ_id_mod_timestam=
p_protocol */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x0E,     /* [2057] OBJ_id_mod_ocsp */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x0F,     /* [2065] OBJ_id_mod_dvcs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x00,0x10,     /* [2073] OBJ_id_mod_cmp2000 =
*/
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x02,     /* [2081] OBJ_biometricInfo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x03,     /* [2089] OBJ_qcStatements */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x04,     /* [2097] OBJ_ac_auditEntity =
*/
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x05,     /* [2105] OBJ_ac_targeting */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x06,     /* [2113] OBJ_aaControls */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x07,     /* [2121] OBJ_sbgp_ipAddrBloc=
k */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x08,     /* [2129] OBJ_sbgp_autonomous=
SysNum */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x09,     /* [2137] OBJ_sbgp_routerIden=
tifier */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x02,0x03,     /* [2145] OBJ_textNotice */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x05,     /* [2153] OBJ_ipsecEndSystem =
*/
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x06,     /* [2161] OBJ_ipsecTunnel */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x07,     /* [2169] OBJ_ipsecUser */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x03,0x0A,     /* [2177] OBJ_dvcs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x01,     /* [2185] OBJ_id_it_caProtEnc=
Cert */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x02,     /* [2193] OBJ_id_it_signKeyPa=
irTypes */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x03,     /* [2201] OBJ_id_it_encKeyPai=
rTypes */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x04,     /* [2209] OBJ_id_it_preferred=
SymmAlg */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x05,     /* [2217] OBJ_id_it_caKeyUpda=
teInfo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x06,     /* [2225] OBJ_id_it_currentCR=
L */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x07,     /* [2233] OBJ_id_it_unsupport=
edOIDs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x08,     /* [2241] OBJ_id_it_subscript=
ionRequest */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x09,     /* [2249] OBJ_id_it_subscript=
ionResponse */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x0A,     /* [2257] OBJ_id_it_keyPairPa=
ramReq */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x0B,     /* [2265] OBJ_id_it_keyPairPa=
ramRep */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x0C,     /* [2273] OBJ_id_it_revPassph=
rase */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x0D,     /* [2281] OBJ_id_it_implicitC=
onfirm */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x0E,     /* [2289] OBJ_id_it_confirmWa=
itTime */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x0F,     /* [2297] OBJ_id_it_origPKIMe=
ssage */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,     /* [2305] OBJ_id_regCtrl */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x02,     /* [2313] OBJ_id_regInfo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,0x01,/* [2321] OBJ_id_regCtrl_regT=
oken */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,0x02,/* [2330] OBJ_id_regCtrl_auth=
enticator */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,0x03,/* [2339] OBJ_id_regCtrl_pkiP=
ublicationInfo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,0x04,/* [2348] OBJ_id_regCtrl_pkiA=
rchiveOptions */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,0x05,/* [2357] OBJ_id_regCtrl_oldC=
ertID */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x01,0x06,/* [2366] OBJ_id_regCtrl_prot=
ocolEncrKey */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x02,0x01,/* [2375] OBJ_id_regInfo_utf8=
Pairs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x05,0x02,0x02,/* [2384] OBJ_id_regInfo_cert=
Req */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x06,0x01,     /* [2393] OBJ_id_alg_des40 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x06,0x02,     /* [2401] OBJ_id_alg_noSignat=
ure */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x06,0x03,     /* [2409] OBJ_id_alg_dh_sig_h=
mac_sha1 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x06,0x04,     /* [2417] OBJ_id_alg_dh_pop */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x01,     /* [2425] OBJ_id_cmc_statusIn=
fo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x02,     /* [2433] OBJ_id_cmc_identifi=
cation */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x03,     /* [2441] OBJ_id_cmc_identity=
Proof */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x04,     /* [2449] OBJ_id_cmc_dataRetu=
rn */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x05,     /* [2457] OBJ_id_cmc_transact=
ionId */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x06,     /* [2465] OBJ_id_cmc_senderNo=
nce */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x07,     /* [2473] OBJ_id_cmc_recipien=
tNonce */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x08,     /* [2481] OBJ_id_cmc_addExten=
sions */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x09,     /* [2489] OBJ_id_cmc_encrypte=
dPOP */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x0A,     /* [2497] OBJ_id_cmc_decrypte=
dPOP */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x0B,     /* [2505] OBJ_id_cmc_lraPOPWi=
tness */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x0F,     /* [2513] OBJ_id_cmc_getCert =
*/
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x10,     /* [2521] OBJ_id_cmc_getCRL */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x11,     /* [2529] OBJ_id_cmc_revokeRe=
quest */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x12,     /* [2537] OBJ_id_cmc_regInfo =
*/
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x13,     /* [2545] OBJ_id_cmc_response=
Info */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x15,     /* [2553] OBJ_id_cmc_queryPen=
ding */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x16,     /* [2561] OBJ_id_cmc_popLinkR=
andom */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x17,     /* [2569] OBJ_id_cmc_popLinkW=
itness */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x07,0x18,     /* [2577] OBJ_id_cmc_confirmC=
ertAcceptance */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x08,0x01,     /* [2585] OBJ_id_on_personalD=
ata */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x01,     /* [2593] OBJ_id_pda_dateOfBi=
rth */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x02,     /* [2601] OBJ_id_pda_placeOfB=
irth */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x03,     /* [2609] OBJ_id_pda_gender */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x04,     /* [2617] OBJ_id_pda_countryO=
fCitizenship */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x05,     /* [2625] OBJ_id_pda_countryO=
fResidence */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x01,     /* [2633] OBJ_id_aca_authenti=
cationInfo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x02,     /* [2641] OBJ_id_aca_accessId=
entity */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x03,     /* [2649] OBJ_id_aca_charging=
Identity */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x04,     /* [2657] OBJ_id_aca_group */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x05,     /* [2665] OBJ_id_aca_role */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0B,0x01,     /* [2673] OBJ_id_qcs_pkixQCSy=
ntax_v1 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x01,     /* [2681] OBJ_id_cct_crs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x02,     /* [2689] OBJ_id_cct_PKIData =
*/
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x03,     /* [2697] OBJ_id_cct_PKIRespo=
nse */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x03,     /* [2705] OBJ_ad_timeStamping=
 */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x04,     /* [2713] OBJ_ad_dvcs */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x01,/* [2721] OBJ_id_pkix_OCSP_ba=
sic */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x02,/* [2730] OBJ_id_pkix_OCSP_No=
nce */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x03,/* [2739] OBJ_id_pkix_OCSP_Cr=
lID */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x04,/* [2748] OBJ_id_pkix_OCSP_ac=
ceptableResponses */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x05,/* [2757] OBJ_id_pkix_OCSP_no=
Check */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x06,/* [2766] OBJ_id_pkix_OCSP_ar=
chiveCutoff */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x07,/* [2775] OBJ_id_pkix_OCSP_se=
rviceLocator */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x08,/* [2784] OBJ_id_pkix_OCSP_ex=
tendedStatus */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x09,/* [2793] OBJ_id_pkix_OCSP_va=
lid */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x0A,/* [2802] OBJ_id_pkix_OCSP_pa=
th */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x0B,/* [2811] OBJ_id_pkix_OCSP_tr=
ustRoot */
+0x2B,0x0E,0x03,0x02,                         /* [2820] OBJ_algorithm */
+0x2B,0x0E,0x03,0x02,0x0B,                    /* [2824] OBJ_rsaSignature */
+0x55,0x08,                                   /* [2829] OBJ_X500algorithms =
*/
+0x2B,                                        /* [2831] OBJ_org */
+0x2B,0x06,                                   /* [2832] OBJ_dod */
+0x2B,0x06,0x01,                              /* [2834] OBJ_iana */
+0x2B,0x06,0x01,0x01,                         /* [2837] OBJ_Directory */
+0x2B,0x06,0x01,0x02,                         /* [2841] OBJ_Management */
+0x2B,0x06,0x01,0x03,                         /* [2845] OBJ_Experimental */
+0x2B,0x06,0x01,0x04,                         /* [2849] OBJ_Private */
+0x2B,0x06,0x01,0x05,                         /* [2853] OBJ_Security */
+0x2B,0x06,0x01,0x06,                         /* [2857] OBJ_SNMPv2 */
+0x2B,0x06,0x01,0x07,                         /* [2861] OBJ_Mail */
+0x2B,0x06,0x01,0x04,0x01,                    /* [2865] OBJ_Enterprises */
+0x2B,0x06,0x01,0x04,0x01,0x8B,0x3A,0x82,0x58,/* [2870] OBJ_dcObject */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x19,/* [2879] OBJ_domainComp=
onent */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x0D,/* [2889] OBJ_Domain */
+0x00,                                        /* [2899] OBJ_joint_iso_ccitt=
 */
+0x55,0x01,0x05,                              /* [2900] OBJ_selected_attrib=
ute_types */
+0x55,0x01,0x05,0x37,                         /* [2903] OBJ_clearance */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x03,/* [2907] OBJ_md4WithRSAEncry=
ption */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0A,     /* [2916] OBJ_ac_proxying */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0B,     /* [2924] OBJ_sinfo_access */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x06,     /* [2932] OBJ_id_aca_encAttrs=
 */
+0x55,0x04,0x48,                              /* [2940] OBJ_role */
+0x55,0x1D,0x24,                              /* [2943] OBJ_policy_constrai=
nts */
+0x55,0x1D,0x37,                              /* [2946] OBJ_target_informat=
ion */
+0x55,0x1D,0x38,                              /* [2949] OBJ_no_rev_avail */
+0x00,                                        /* [2952] OBJ_ccitt */
+0x2A,0x86,0x48,0xCE,0x3D,                    /* [2953] OBJ_ansi_X9_62 */
+0x2A,0x86,0x48,0xCE,0x3D,0x01,0x01,          /* [2958] OBJ_X9_62_prime_fie=
ld */
+0x2A,0x86,0x48,0xCE,0x3D,0x01,0x02,          /* [2965] OBJ_X9_62_character=
istic_two_field */
+0x2A,0x86,0x48,0xCE,0x3D,0x02,0x01,          /* [2972] OBJ_X9_62_id_ecPubl=
icKey */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x01,     /* [2979] OBJ_X9_62_prime192v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x02,     /* [2987] OBJ_X9_62_prime192v=
2 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x03,     /* [2995] OBJ_X9_62_prime192v=
3 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x04,     /* [3003] OBJ_X9_62_prime239v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x05,     /* [3011] OBJ_X9_62_prime239v=
2 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x06,     /* [3019] OBJ_X9_62_prime239v=
3 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x01,0x07,     /* [3027] OBJ_X9_62_prime256v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x01,          /* [3035] OBJ_ecdsa_with_SHA1=
 */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x11,0x01,/* [3042] OBJ_ms_csp_name */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x01,/* [3051] OBJ_aes_128_ecb */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x02,/* [3060] OBJ_aes_128_cbc */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x03,/* [3069] OBJ_aes_128_ofb128 =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x04,/* [3078] OBJ_aes_128_cfb128 =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x15,/* [3087] OBJ_aes_192_ecb */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x16,/* [3096] OBJ_aes_192_cbc */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x17,/* [3105] OBJ_aes_192_ofb128 =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x18,/* [3114] OBJ_aes_192_cfb128 =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x29,/* [3123] OBJ_aes_256_ecb */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x2A,/* [3132] OBJ_aes_256_cbc */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x2B,/* [3141] OBJ_aes_256_ofb128 =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x2C,/* [3150] OBJ_aes_256_cfb128 =
*/
+0x55,0x1D,0x17,                              /* [3159] OBJ_hold_instructio=
n_code */
+0x2A,0x86,0x48,0xCE,0x38,0x02,0x01,          /* [3162] OBJ_hold_instructio=
n_none */
+0x2A,0x86,0x48,0xCE,0x38,0x02,0x02,          /* [3169] OBJ_hold_instructio=
n_call_issuer */
+0x2A,0x86,0x48,0xCE,0x38,0x02,0x03,          /* [3176] OBJ_hold_instructio=
n_reject */
+0x09,                                        /* [3183] OBJ_data */
+0x09,0x92,0x26,                              /* [3184] OBJ_pss */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,          /* [3187] OBJ_ucl */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,     /* [3194] OBJ_pilot */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,/* [3202] OBJ_pilotAttributeT=
ype */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x03,/* [3211] OBJ_pilotAttributeS=
yntax */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,/* [3220] OBJ_pilotObjectClas=
s */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x0A,/* [3229] OBJ_pilotGroups */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x03,0x04,/* [3238] OBJ_iA5StringS=
yntax */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x03,0x05,/* [3248] OBJ_caseIgnore=
IA5StringSyntax */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x03,/* [3258] OBJ_pilotObjec=
t */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x04,/* [3268] OBJ_pilotPerso=
n */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x05,/* [3278] OBJ_account */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x06,/* [3288] OBJ_document */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x07,/* [3298] OBJ_room */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x09,/* [3308] OBJ_documentSe=
ries */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x0E,/* [3318] OBJ_rFC822loca=
lPart */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x0F,/* [3328] OBJ_dNSDomain =
*/
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x11,/* [3338] OBJ_domainRela=
tedObject */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x12,/* [3348] OBJ_friendlyCo=
untry */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x13,/* [3358] OBJ_simpleSecu=
rityObject */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x14,/* [3368] OBJ_pilotOrgan=
ization */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x15,/* [3378] OBJ_pilotDSA */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x16,/* [3388] OBJ_qualityLab=
elledData */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x01,/* [3398] OBJ_userId */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x02,/* [3408] OBJ_textEncode=
dORAddress */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x03,/* [3418] OBJ_rfc822Mail=
box */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x04,/* [3428] OBJ_info */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x05,/* [3438] OBJ_favouriteD=
rink */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x06,/* [3448] OBJ_roomNumber=
 */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x07,/* [3458] OBJ_photo */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x08,/* [3468] OBJ_userClass =
*/
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x09,/* [3478] OBJ_host */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x0A,/* [3488] OBJ_manager */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x0B,/* [3498] OBJ_documentId=
entifier */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x0C,/* [3508] OBJ_documentTi=
tle */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x0D,/* [3518] OBJ_documentVe=
rsion */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x0E,/* [3528] OBJ_documentAu=
thor */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x0F,/* [3538] OBJ_documentLo=
cation */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x14,/* [3548] OBJ_homeTeleph=
oneNumber */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x15,/* [3558] OBJ_secretary =
*/
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x16,/* [3568] OBJ_otherMailb=
ox */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x17,/* [3578] OBJ_lastModifi=
edTime */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x18,/* [3588] OBJ_lastModifi=
edBy */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x1A,/* [3598] OBJ_aRecord */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x1B,/* [3608] OBJ_pilotAttri=
buteType27 */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x1C,/* [3618] OBJ_mXRecord */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x1D,/* [3628] OBJ_nSRecord */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x1E,/* [3638] OBJ_sOARecord =
*/
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x1F,/* [3648] OBJ_cNAMERecor=
d */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x25,/* [3658] OBJ_associated=
Domain */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x26,/* [3668] OBJ_associated=
Name */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x27,/* [3678] OBJ_homePostal=
Address */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x28,/* [3688] OBJ_personalTi=
tle */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x29,/* [3698] OBJ_mobileTele=
phoneNumber */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x2A,/* [3708] OBJ_pagerTelep=
honeNumber */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x2B,/* [3718] OBJ_friendlyCo=
untryName */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x2D,/* [3728] OBJ_organizati=
onalStatus */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x2E,/* [3738] OBJ_janetMailb=
ox */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x2F,/* [3748] OBJ_mailPrefer=
enceOption */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x30,/* [3758] OBJ_buildingNa=
me */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x31,/* [3768] OBJ_dSAQuality=
 */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x32,/* [3778] OBJ_singleLeve=
lQuality */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x33,/* [3788] OBJ_subtreeMin=
imumQuality */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x34,/* [3798] OBJ_subtreeMax=
imumQuality */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x35,/* [3808] OBJ_personalSi=
gnature */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x36,/* [3818] OBJ_dITRedirec=
t */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x37,/* [3828] OBJ_audio */
+0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x38,/* [3838] OBJ_documentPu=
blisher */
+0x55,0x04,0x2D,                              /* [3848] OBJ_x500UniqueIdent=
ifier */
+0x2B,0x06,0x01,0x07,0x01,                    /* [3851] OBJ_mime_mhs */
+0x2B,0x06,0x01,0x07,0x01,0x01,               /* [3856] OBJ_mime_mhs_headin=
gs */
+0x2B,0x06,0x01,0x07,0x01,0x02,               /* [3862] OBJ_mime_mhs_bodies=
 */
+0x2B,0x06,0x01,0x07,0x01,0x01,0x01,          /* [3868] OBJ_id_hex_partial_=
message */
+0x2B,0x06,0x01,0x07,0x01,0x01,0x02,          /* [3875] OBJ_id_hex_multipar=
t_message */
+0x55,0x04,0x2C,                              /* [3882] OBJ_generationQuali=
fier */
+0x55,0x04,0x41,                              /* [3885] OBJ_pseudonym */
+0x67,0x2A,                                   /* [3888] OBJ_id_set */
+0x67,0x2A,0x00,                              /* [3890] OBJ_set_ctype */
+0x67,0x2A,0x01,                              /* [3893] OBJ_set_msgExt */
+0x67,0x2A,0x03,                              /* [3896] OBJ_set_attr */
+0x67,0x2A,0x05,                              /* [3899] OBJ_set_policy */
+0x67,0x2A,0x07,                              /* [3902] OBJ_set_certExt */
+0x67,0x2A,0x08,                              /* [3905] OBJ_set_brand */
+0x67,0x2A,0x00,0x00,                         /* [3908] OBJ_setct_PANData */
+0x67,0x2A,0x00,0x01,                         /* [3912] OBJ_setct_PANToken =
*/
+0x67,0x2A,0x00,0x02,                         /* [3916] OBJ_setct_PANOnly */
+0x67,0x2A,0x00,0x03,                         /* [3920] OBJ_setct_OIData */
+0x67,0x2A,0x00,0x04,                         /* [3924] OBJ_setct_PI */
+0x67,0x2A,0x00,0x05,                         /* [3928] OBJ_setct_PIData */
+0x67,0x2A,0x00,0x06,                         /* [3932] OBJ_setct_PIDataUns=
igned */
+0x67,0x2A,0x00,0x07,                         /* [3936] OBJ_setct_HODInput =
*/
+0x67,0x2A,0x00,0x08,                         /* [3940] OBJ_setct_AuthResBa=
ggage */
+0x67,0x2A,0x00,0x09,                         /* [3944] OBJ_setct_AuthRevRe=
qBaggage */
+0x67,0x2A,0x00,0x0A,                         /* [3948] OBJ_setct_AuthRevRe=
sBaggage */
+0x67,0x2A,0x00,0x0B,                         /* [3952] OBJ_setct_CapTokenS=
eq */
+0x67,0x2A,0x00,0x0C,                         /* [3956] OBJ_setct_PInitResD=
ata */
+0x67,0x2A,0x00,0x0D,                         /* [3960] OBJ_setct_PI_TBS */
+0x67,0x2A,0x00,0x0E,                         /* [3964] OBJ_setct_PResData =
*/
+0x67,0x2A,0x00,0x10,                         /* [3968] OBJ_setct_AuthReqTB=
S */
+0x67,0x2A,0x00,0x11,                         /* [3972] OBJ_setct_AuthResTB=
S */
+0x67,0x2A,0x00,0x12,                         /* [3976] OBJ_setct_AuthResTB=
SX */
+0x67,0x2A,0x00,0x13,                         /* [3980] OBJ_setct_AuthToken=
TBS */
+0x67,0x2A,0x00,0x14,                         /* [3984] OBJ_setct_CapTokenD=
ata */
+0x67,0x2A,0x00,0x15,                         /* [3988] OBJ_setct_CapTokenT=
BS */
+0x67,0x2A,0x00,0x16,                         /* [3992] OBJ_setct_AcqCardCo=
deMsg */
+0x67,0x2A,0x00,0x17,                         /* [3996] OBJ_setct_AuthRevRe=
qTBS */
+0x67,0x2A,0x00,0x18,                         /* [4000] OBJ_setct_AuthRevRe=
sData */
+0x67,0x2A,0x00,0x19,                         /* [4004] OBJ_setct_AuthRevRe=
sTBS */
+0x67,0x2A,0x00,0x1A,                         /* [4008] OBJ_setct_CapReqTBS=
 */
+0x67,0x2A,0x00,0x1B,                         /* [4012] OBJ_setct_CapReqTBS=
X */
+0x67,0x2A,0x00,0x1C,                         /* [4016] OBJ_setct_CapResDat=
a */
+0x67,0x2A,0x00,0x1D,                         /* [4020] OBJ_setct_CapRevReq=
TBS */
+0x67,0x2A,0x00,0x1E,                         /* [4024] OBJ_setct_CapRevReq=
TBSX */
+0x67,0x2A,0x00,0x1F,                         /* [4028] OBJ_setct_CapRevRes=
Data */
+0x67,0x2A,0x00,0x20,                         /* [4032] OBJ_setct_CredReqTB=
S */
+0x67,0x2A,0x00,0x21,                         /* [4036] OBJ_setct_CredReqTB=
SX */
+0x67,0x2A,0x00,0x22,                         /* [4040] OBJ_setct_CredResDa=
ta */
+0x67,0x2A,0x00,0x23,                         /* [4044] OBJ_setct_CredRevRe=
qTBS */
+0x67,0x2A,0x00,0x24,                         /* [4048] OBJ_setct_CredRevRe=
qTBSX */
+0x67,0x2A,0x00,0x25,                         /* [4052] OBJ_setct_CredRevRe=
sData */
+0x67,0x2A,0x00,0x26,                         /* [4056] OBJ_setct_PCertReqD=
ata */
+0x67,0x2A,0x00,0x27,                         /* [4060] OBJ_setct_PCertResT=
BS */
+0x67,0x2A,0x00,0x28,                         /* [4064] OBJ_setct_BatchAdmi=
nReqData */
+0x67,0x2A,0x00,0x29,                         /* [4068] OBJ_setct_BatchAdmi=
nResData */
+0x67,0x2A,0x00,0x2A,                         /* [4072] OBJ_setct_CardCInit=
ResTBS */
+0x67,0x2A,0x00,0x2B,                         /* [4076] OBJ_setct_MeAqCInit=
ResTBS */
+0x67,0x2A,0x00,0x2C,                         /* [4080] OBJ_setct_RegFormRe=
sTBS */
+0x67,0x2A,0x00,0x2D,                         /* [4084] OBJ_setct_CertReqDa=
ta */
+0x67,0x2A,0x00,0x2E,                         /* [4088] OBJ_setct_CertReqTB=
S */
+0x67,0x2A,0x00,0x2F,                         /* [4092] OBJ_setct_CertResDa=
ta */
+0x67,0x2A,0x00,0x30,                         /* [4096] OBJ_setct_CertInqRe=
qTBS */
+0x67,0x2A,0x00,0x31,                         /* [4100] OBJ_setct_ErrorTBS =
*/
+0x67,0x2A,0x00,0x32,                         /* [4104] OBJ_setct_PIDualSig=
nedTBE */
+0x67,0x2A,0x00,0x33,                         /* [4108] OBJ_setct_PIUnsigne=
dTBE */
+0x67,0x2A,0x00,0x34,                         /* [4112] OBJ_setct_AuthReqTB=
E */
+0x67,0x2A,0x00,0x35,                         /* [4116] OBJ_setct_AuthResTB=
E */
+0x67,0x2A,0x00,0x36,                         /* [4120] OBJ_setct_AuthResTB=
EX */
+0x67,0x2A,0x00,0x37,                         /* [4124] OBJ_setct_AuthToken=
TBE */
+0x67,0x2A,0x00,0x38,                         /* [4128] OBJ_setct_CapTokenT=
BE */
+0x67,0x2A,0x00,0x39,                         /* [4132] OBJ_setct_CapTokenT=
BEX */
+0x67,0x2A,0x00,0x3A,                         /* [4136] OBJ_setct_AcqCardCo=
deMsgTBE */
+0x67,0x2A,0x00,0x3B,                         /* [4140] OBJ_setct_AuthRevRe=
qTBE */
+0x67,0x2A,0x00,0x3C,                         /* [4144] OBJ_setct_AuthRevRe=
sTBE */
+0x67,0x2A,0x00,0x3D,                         /* [4148] OBJ_setct_AuthRevRe=
sTBEB */
+0x67,0x2A,0x00,0x3E,                         /* [4152] OBJ_setct_CapReqTBE=
 */
+0x67,0x2A,0x00,0x3F,                         /* [4156] OBJ_setct_CapReqTBE=
X */
+0x67,0x2A,0x00,0x40,                         /* [4160] OBJ_setct_CapResTBE=
 */
+0x67,0x2A,0x00,0x41,                         /* [4164] OBJ_setct_CapRevReq=
TBE */
+0x67,0x2A,0x00,0x42,                         /* [4168] OBJ_setct_CapRevReq=
TBEX */
+0x67,0x2A,0x00,0x43,                         /* [4172] OBJ_setct_CapRevRes=
TBE */
+0x67,0x2A,0x00,0x44,                         /* [4176] OBJ_setct_CredReqTB=
E */
+0x67,0x2A,0x00,0x45,                         /* [4180] OBJ_setct_CredReqTB=
EX */
+0x67,0x2A,0x00,0x46,                         /* [4184] OBJ_setct_CredResTB=
E */
+0x67,0x2A,0x00,0x47,                         /* [4188] OBJ_setct_CredRevRe=
qTBE */
+0x67,0x2A,0x00,0x48,                         /* [4192] OBJ_setct_CredRevRe=
qTBEX */
+0x67,0x2A,0x00,0x49,                         /* [4196] OBJ_setct_CredRevRe=
sTBE */
+0x67,0x2A,0x00,0x4A,                         /* [4200] OBJ_setct_BatchAdmi=
nReqTBE */
+0x67,0x2A,0x00,0x4B,                         /* [4204] OBJ_setct_BatchAdmi=
nResTBE */
+0x67,0x2A,0x00,0x4C,                         /* [4208] OBJ_setct_RegFormRe=
qTBE */
+0x67,0x2A,0x00,0x4D,                         /* [4212] OBJ_setct_CertReqTB=
E */
+0x67,0x2A,0x00,0x4E,                         /* [4216] OBJ_setct_CertReqTB=
EX */
+0x67,0x2A,0x00,0x4F,                         /* [4220] OBJ_setct_CertResTB=
E */
+0x67,0x2A,0x00,0x50,                         /* [4224] OBJ_setct_CRLNotifi=
cationTBS */
+0x67,0x2A,0x00,0x51,                         /* [4228] OBJ_setct_CRLNotifi=
cationResTBS */
+0x67,0x2A,0x00,0x52,                         /* [4232] OBJ_setct_BCIDistri=
butionTBS */
+0x67,0x2A,0x01,0x01,                         /* [4236] OBJ_setext_genCrypt=
 */
+0x67,0x2A,0x01,0x03,                         /* [4240] OBJ_setext_miAuth */
+0x67,0x2A,0x01,0x04,                         /* [4244] OBJ_setext_pinSecur=
e */
+0x67,0x2A,0x01,0x05,                         /* [4248] OBJ_setext_pinAny */
+0x67,0x2A,0x01,0x07,                         /* [4252] OBJ_setext_track2 */
+0x67,0x2A,0x01,0x08,                         /* [4256] OBJ_setext_cv */
+0x67,0x2A,0x05,0x00,                         /* [4260] OBJ_set_policy_root=
 */
+0x67,0x2A,0x07,0x00,                         /* [4264] OBJ_setCext_hashedR=
oot */
+0x67,0x2A,0x07,0x01,                         /* [4268] OBJ_setCext_certTyp=
e */
+0x67,0x2A,0x07,0x02,                         /* [4272] OBJ_setCext_merchDa=
ta */
+0x67,0x2A,0x07,0x03,                         /* [4276] OBJ_setCext_cCertRe=
quired */
+0x67,0x2A,0x07,0x04,                         /* [4280] OBJ_setCext_tunneli=
ng */
+0x67,0x2A,0x07,0x05,                         /* [4284] OBJ_setCext_setExt =
*/
+0x67,0x2A,0x07,0x06,                         /* [4288] OBJ_setCext_setQual=
f */
+0x67,0x2A,0x07,0x07,                         /* [4292] OBJ_setCext_PGWYcap=
abilities */
+0x67,0x2A,0x07,0x08,                         /* [4296] OBJ_setCext_TokenId=
entifier */
+0x67,0x2A,0x07,0x09,                         /* [4300] OBJ_setCext_Track2D=
ata */
+0x67,0x2A,0x07,0x0A,                         /* [4304] OBJ_setCext_TokenTy=
pe */
+0x67,0x2A,0x07,0x0B,                         /* [4308] OBJ_setCext_IssuerC=
apabilities */
+0x67,0x2A,0x03,0x00,                         /* [4312] OBJ_setAttr_Cert */
+0x67,0x2A,0x03,0x01,                         /* [4316] OBJ_setAttr_PGWYcap=
 */
+0x67,0x2A,0x03,0x02,                         /* [4320] OBJ_setAttr_TokenTy=
pe */
+0x67,0x2A,0x03,0x03,                         /* [4324] OBJ_setAttr_IssCap =
*/
+0x67,0x2A,0x03,0x00,0x00,                    /* [4328] OBJ_set_rootKeyThum=
b */
+0x67,0x2A,0x03,0x00,0x01,                    /* [4333] OBJ_set_addPolicy */
+0x67,0x2A,0x03,0x02,0x01,                    /* [4338] OBJ_setAttr_Token_E=
MV */
+0x67,0x2A,0x03,0x02,0x02,                    /* [4343] OBJ_setAttr_Token_B=
0Prime */
+0x67,0x2A,0x03,0x03,0x03,                    /* [4348] OBJ_setAttr_IssCap_=
CVM */
+0x67,0x2A,0x03,0x03,0x04,                    /* [4353] OBJ_setAttr_IssCap_=
T2 */
+0x67,0x2A,0x03,0x03,0x05,                    /* [4358] OBJ_setAttr_IssCap_=
Sig */
+0x67,0x2A,0x03,0x03,0x03,0x01,               /* [4363] OBJ_setAttr_GenCryp=
tgrm */
+0x67,0x2A,0x03,0x03,0x04,0x01,               /* [4369] OBJ_setAttr_T2Enc */
+0x67,0x2A,0x03,0x03,0x04,0x02,               /* [4375] OBJ_setAttr_T2clear=
txt */
+0x67,0x2A,0x03,0x03,0x05,0x01,               /* [4381] OBJ_setAttr_TokICCs=
ig */
+0x67,0x2A,0x03,0x03,0x05,0x02,               /* [4387] OBJ_setAttr_SecDevS=
ig */
+0x67,0x2A,0x08,0x01,                         /* [4393] OBJ_set_brand_IATA_=
ATA */
+0x67,0x2A,0x08,0x1E,                         /* [4397] OBJ_set_brand_Diner=
s */
+0x67,0x2A,0x08,0x22,                         /* [4401] OBJ_set_brand_Ameri=
canExpress */
+0x67,0x2A,0x08,0x23,                         /* [4405] OBJ_set_brand_JCB */
+0x67,0x2A,0x08,0x04,                         /* [4409] OBJ_set_brand_Visa =
*/
+0x67,0x2A,0x08,0x05,                         /* [4413] OBJ_set_brand_Maste=
rCard */
+0x67,0x2A,0x08,0xAE,0x7B,                    /* [4417] OBJ_set_brand_Novus=
 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x03,0x0A,     /* [4422] OBJ_des_cdmf */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x06,/* [4430] OBJ_rsaOAEPEncrypti=
onSET */
+0x00,                                        /* [4439] OBJ_itu_t */
+0x50,                                        /* [4440] OBJ_joint_iso_itu_t=
 */
+0x67,                                        /* [4441] OBJ_international_o=
rganizations */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x14,0x02,0x02,/* [4442] OBJ_ms_smartca=
rd_login */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x14,0x02,0x03,/* [4452] OBJ_ms_upn */
+0x55,0x04,0x09,                              /* [4462] OBJ_streetAddress */
+0x55,0x04,0x11,                              /* [4465] OBJ_postalCode */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x15,          /* [4468] OBJ_id_ppl */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0E,     /* [4475] OBJ_proxyCertInfo */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x15,0x00,     /* [4483] OBJ_id_ppl_anyLangu=
age */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x15,0x01,     /* [4491] OBJ_id_ppl_inheritA=
ll */
+0x55,0x1D,0x1E,                              /* [4499] OBJ_name_constraint=
s */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x15,0x02,     /* [4502] OBJ_Independent */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0B,/* [4510] OBJ_sha256WithRSAEn=
cryption */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0C,/* [4519] OBJ_sha384WithRSAEn=
cryption */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0D,/* [4528] OBJ_sha512WithRSAEn=
cryption */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x0E,/* [4537] OBJ_sha224WithRSAEn=
cryption */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x01,/* [4546] OBJ_sha256 */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x02,/* [4555] OBJ_sha384 */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x03,/* [4564] OBJ_sha512 */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x04,/* [4573] OBJ_sha224 */
+0x2B,                                        /* [4582] OBJ_identified_orga=
nization */
+0x2B,0x81,0x04,                              /* [4583] OBJ_certicom_arc */
+0x67,0x2B,                                   /* [4586] OBJ_wap */
+0x67,0x2B,0x01,                              /* [4588] OBJ_wap_wsg */
+0x2A,0x86,0x48,0xCE,0x3D,0x01,0x02,0x03,     /* [4591] OBJ_X9_62_id_charac=
teristic_two_basis */
+0x2A,0x86,0x48,0xCE,0x3D,0x01,0x02,0x03,0x01,/* [4599] OBJ_X9_62_onBasis */
+0x2A,0x86,0x48,0xCE,0x3D,0x01,0x02,0x03,0x02,/* [4608] OBJ_X9_62_tpBasis */
+0x2A,0x86,0x48,0xCE,0x3D,0x01,0x02,0x03,0x03,/* [4617] OBJ_X9_62_ppBasis */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x01,     /* [4626] OBJ_X9_62_c2pnb163v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x02,     /* [4634] OBJ_X9_62_c2pnb163v=
2 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x03,     /* [4642] OBJ_X9_62_c2pnb163v=
3 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x04,     /* [4650] OBJ_X9_62_c2pnb176v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x05,     /* [4658] OBJ_X9_62_c2tnb191v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x06,     /* [4666] OBJ_X9_62_c2tnb191v=
2 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x07,     /* [4674] OBJ_X9_62_c2tnb191v=
3 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x08,     /* [4682] OBJ_X9_62_c2onb191v=
4 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x09,     /* [4690] OBJ_X9_62_c2onb191v=
5 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x0A,     /* [4698] OBJ_X9_62_c2pnb208w=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x0B,     /* [4706] OBJ_X9_62_c2tnb239v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x0C,     /* [4714] OBJ_X9_62_c2tnb239v=
2 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x0D,     /* [4722] OBJ_X9_62_c2tnb239v=
3 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x0E,     /* [4730] OBJ_X9_62_c2onb239v=
4 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x0F,     /* [4738] OBJ_X9_62_c2onb239v=
5 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x10,     /* [4746] OBJ_X9_62_c2pnb272w=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x11,     /* [4754] OBJ_X9_62_c2pnb304w=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x12,     /* [4762] OBJ_X9_62_c2tnb359v=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x13,     /* [4770] OBJ_X9_62_c2pnb368w=
1 */
+0x2A,0x86,0x48,0xCE,0x3D,0x03,0x00,0x14,     /* [4778] OBJ_X9_62_c2tnb431r=
1 */
+0x2B,0x81,0x04,0x00,0x06,                    /* [4786] OBJ_secp112r1 */
+0x2B,0x81,0x04,0x00,0x07,                    /* [4791] OBJ_secp112r2 */
+0x2B,0x81,0x04,0x00,0x1C,                    /* [4796] OBJ_secp128r1 */
+0x2B,0x81,0x04,0x00,0x1D,                    /* [4801] OBJ_secp128r2 */
+0x2B,0x81,0x04,0x00,0x09,                    /* [4806] OBJ_secp160k1 */
+0x2B,0x81,0x04,0x00,0x08,                    /* [4811] OBJ_secp160r1 */
+0x2B,0x81,0x04,0x00,0x1E,                    /* [4816] OBJ_secp160r2 */
+0x2B,0x81,0x04,0x00,0x1F,                    /* [4821] OBJ_secp192k1 */
+0x2B,0x81,0x04,0x00,0x20,                    /* [4826] OBJ_secp224k1 */
+0x2B,0x81,0x04,0x00,0x21,                    /* [4831] OBJ_secp224r1 */
+0x2B,0x81,0x04,0x00,0x0A,                    /* [4836] OBJ_secp256k1 */
+0x2B,0x81,0x04,0x00,0x22,                    /* [4841] OBJ_secp384r1 */
+0x2B,0x81,0x04,0x00,0x23,                    /* [4846] OBJ_secp521r1 */
+0x2B,0x81,0x04,0x00,0x04,                    /* [4851] OBJ_sect113r1 */
+0x2B,0x81,0x04,0x00,0x05,                    /* [4856] OBJ_sect113r2 */
+0x2B,0x81,0x04,0x00,0x16,                    /* [4861] OBJ_sect131r1 */
+0x2B,0x81,0x04,0x00,0x17,                    /* [4866] OBJ_sect131r2 */
+0x2B,0x81,0x04,0x00,0x01,                    /* [4871] OBJ_sect163k1 */
+0x2B,0x81,0x04,0x00,0x02,                    /* [4876] OBJ_sect163r1 */
+0x2B,0x81,0x04,0x00,0x0F,                    /* [4881] OBJ_sect163r2 */
+0x2B,0x81,0x04,0x00,0x18,                    /* [4886] OBJ_sect193r1 */
+0x2B,0x81,0x04,0x00,0x19,                    /* [4891] OBJ_sect193r2 */
+0x2B,0x81,0x04,0x00,0x1A,                    /* [4896] OBJ_sect233k1 */
+0x2B,0x81,0x04,0x00,0x1B,                    /* [4901] OBJ_sect233r1 */
+0x2B,0x81,0x04,0x00,0x03,                    /* [4906] OBJ_sect239k1 */
+0x2B,0x81,0x04,0x00,0x10,                    /* [4911] OBJ_sect283k1 */
+0x2B,0x81,0x04,0x00,0x11,                    /* [4916] OBJ_sect283r1 */
+0x2B,0x81,0x04,0x00,0x24,                    /* [4921] OBJ_sect409k1 */
+0x2B,0x81,0x04,0x00,0x25,                    /* [4926] OBJ_sect409r1 */
+0x2B,0x81,0x04,0x00,0x26,                    /* [4931] OBJ_sect571k1 */
+0x2B,0x81,0x04,0x00,0x27,                    /* [4936] OBJ_sect571r1 */
+0x67,0x2B,0x01,0x04,0x01,                    /* [4941] OBJ_wap_wsg_idm_eci=
d_wtls1 */
+0x67,0x2B,0x01,0x04,0x03,                    /* [4946] OBJ_wap_wsg_idm_eci=
d_wtls3 */
+0x67,0x2B,0x01,0x04,0x04,                    /* [4951] OBJ_wap_wsg_idm_eci=
d_wtls4 */
+0x67,0x2B,0x01,0x04,0x05,                    /* [4956] OBJ_wap_wsg_idm_eci=
d_wtls5 */
+0x67,0x2B,0x01,0x04,0x06,                    /* [4961] OBJ_wap_wsg_idm_eci=
d_wtls6 */
+0x67,0x2B,0x01,0x04,0x07,                    /* [4966] OBJ_wap_wsg_idm_eci=
d_wtls7 */
+0x67,0x2B,0x01,0x04,0x08,                    /* [4971] OBJ_wap_wsg_idm_eci=
d_wtls8 */
+0x67,0x2B,0x01,0x04,0x09,                    /* [4976] OBJ_wap_wsg_idm_eci=
d_wtls9 */
+0x67,0x2B,0x01,0x04,0x0A,                    /* [4981] OBJ_wap_wsg_idm_eci=
d_wtls10 */
+0x67,0x2B,0x01,0x04,0x0B,                    /* [4986] OBJ_wap_wsg_idm_eci=
d_wtls11 */
+0x67,0x2B,0x01,0x04,0x0C,                    /* [4991] OBJ_wap_wsg_idm_eci=
d_wtls12 */
+0x55,0x1D,0x20,0x00,                         /* [4996] OBJ_any_policy */
+0x55,0x1D,0x21,                              /* [5000] OBJ_policy_mappings=
 */
+0x55,0x1D,0x36,                              /* [5003] OBJ_inhibit_any_pol=
icy */
+0x2A,0x83,0x08,0x8C,0x9A,0x4B,0x3D,0x01,0x01,0x01,0x02,/* [5006] OBJ_camel=
lia_128_cbc */
+0x2A,0x83,0x08,0x8C,0x9A,0x4B,0x3D,0x01,0x01,0x01,0x03,/* [5017] OBJ_camel=
lia_192_cbc */
+0x2A,0x83,0x08,0x8C,0x9A,0x4B,0x3D,0x01,0x01,0x01,0x04,/* [5028] OBJ_camel=
lia_256_cbc */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x01,     /* [5039] OBJ_camellia_128_ec=
b */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x15,     /* [5047] OBJ_camellia_192_ec=
b */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x29,     /* [5055] OBJ_camellia_256_ec=
b */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x04,     /* [5063] OBJ_camellia_128_cf=
b128 */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x18,     /* [5071] OBJ_camellia_192_cf=
b128 */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x2C,     /* [5079] OBJ_camellia_256_cf=
b128 */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x03,     /* [5087] OBJ_camellia_128_of=
b128 */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x17,     /* [5095] OBJ_camellia_192_of=
b128 */
+0x03,0xA2,0x31,0x05,0x03,0x01,0x09,0x2B,     /* [5103] OBJ_camellia_256_of=
b128 */
+0x55,0x1D,0x09,                              /* [5111] OBJ_subject_directo=
ry_attributes */
+0x55,0x1D,0x1C,                              /* [5114] OBJ_issuing_distrib=
ution_point */
+0x55,0x1D,0x1D,                              /* [5117] OBJ_certificate_iss=
uer */
+0x2A,0x83,0x1A,0x8C,0x9A,0x44,               /* [5120] OBJ_kisa */
+0x2A,0x83,0x1A,0x8C,0x9A,0x44,0x01,0x03,     /* [5126] OBJ_seed_ecb */
+0x2A,0x83,0x1A,0x8C,0x9A,0x44,0x01,0x04,     /* [5134] OBJ_seed_cbc */
+0x2A,0x83,0x1A,0x8C,0x9A,0x44,0x01,0x06,     /* [5142] OBJ_seed_ofb128 */
+0x2A,0x83,0x1A,0x8C,0x9A,0x44,0x01,0x05,     /* [5150] OBJ_seed_cfb128 */
+0x2B,0x06,0x01,0x05,0x05,0x08,0x01,0x01,     /* [5158] OBJ_hmac_md5 */
+0x2B,0x06,0x01,0x05,0x05,0x08,0x01,0x02,     /* [5166] OBJ_hmac_sha1 */
+0x2A,0x86,0x48,0x86,0xF6,0x7D,0x07,0x42,0x0D,/* [5174] OBJ_id_PasswordBase=
dMAC */
+0x2A,0x86,0x48,0x86,0xF6,0x7D,0x07,0x42,0x1E,/* [5183] OBJ_id_DHBasedMac */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x10,     /* [5192] OBJ_id_it_suppLangT=
ags */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x05,     /* [5200] OBJ_caRepository */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x09,/* [5208] OBJ_id_sm=
ime_ct_compressedData */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x09,0x10,0x01,0x1B,/* [5219] OBJ_id_ct=
_asciiTextWithCRLF */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x05,/* [5230] OBJ_id_aes128_wrap =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x19,/* [5239] OBJ_id_aes192_wrap =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x01,0x2D,/* [5248] OBJ_id_aes256_wrap =
*/
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x02,          /* [5257] OBJ_ecdsa_with_Reco=
mmended */
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x03,          /* [5264] OBJ_ecdsa_with_Spec=
ified */
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x03,0x01,     /* [5271] OBJ_ecdsa_with_SHA2=
24 */
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x03,0x02,     /* [5279] OBJ_ecdsa_with_SHA2=
56 */
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x03,0x03,     /* [5287] OBJ_ecdsa_with_SHA3=
84 */
+0x2A,0x86,0x48,0xCE,0x3D,0x04,0x03,0x04,     /* [5295] OBJ_ecdsa_with_SHA5=
12 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x06,     /* [5303] OBJ_hmacWithMD5 */
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x08,     /* [5311] OBJ_hmacWithSHA224 =
*/
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x09,     /* [5319] OBJ_hmacWithSHA256 =
*/
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x0A,     /* [5327] OBJ_hmacWithSHA384 =
*/
+0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x0B,     /* [5335] OBJ_hmacWithSHA512 =
*/
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x01,/* [5343] OBJ_dsa_with_SHA224=
 */
+0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x02,/* [5352] OBJ_dsa_with_SHA256=
 */
+0x28,0xCF,0x06,0x03,0x00,0x37,               /* [5361] OBJ_whirlpool */
+0x2A,0x85,0x03,0x02,0x02,                    /* [5367] OBJ_cryptopro */
+0x2A,0x85,0x03,0x02,0x09,                    /* [5372] OBJ_cryptocom */
+0x2A,0x85,0x03,0x02,0x02,0x03,               /* [5377] OBJ_id_GostR3411_94=
_with_GostR3410_2001 */
+0x2A,0x85,0x03,0x02,0x02,0x04,               /* [5383] OBJ_id_GostR3411_94=
_with_GostR3410_94 */
+0x2A,0x85,0x03,0x02,0x02,0x09,               /* [5389] OBJ_id_GostR3411_94=
 */
+0x2A,0x85,0x03,0x02,0x02,0x0A,               /* [5395] OBJ_id_HMACGostR341=
1_94 */
+0x2A,0x85,0x03,0x02,0x02,0x13,               /* [5401] OBJ_id_GostR3410_20=
01 */
+0x2A,0x85,0x03,0x02,0x02,0x14,               /* [5407] OBJ_id_GostR3410_94=
 */
+0x2A,0x85,0x03,0x02,0x02,0x15,               /* [5413] OBJ_id_Gost28147_89=
 */
+0x2A,0x85,0x03,0x02,0x02,0x16,               /* [5419] OBJ_id_Gost28147_89=
_MAC */
+0x2A,0x85,0x03,0x02,0x02,0x17,               /* [5425] OBJ_id_GostR3411_94=
_prf */
+0x2A,0x85,0x03,0x02,0x02,0x62,               /* [5431] OBJ_id_GostR3410_20=
01DH */
+0x2A,0x85,0x03,0x02,0x02,0x63,               /* [5437] OBJ_id_GostR3410_94=
DH */
+0x2A,0x85,0x03,0x02,0x02,0x0E,0x01,          /* [5443] OBJ_id_Gost28147_89=
_CryptoPro_KeyMeshing */
+0x2A,0x85,0x03,0x02,0x02,0x0E,0x00,          /* [5450] OBJ_id_Gost28147_89=
_None_KeyMeshing */
+0x2A,0x85,0x03,0x02,0x02,0x1E,0x00,          /* [5457] OBJ_id_GostR3411_94=
_TestParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1E,0x01,          /* [5464] OBJ_id_GostR3411_94=
_CryptoProParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x00,          /* [5471] OBJ_id_Gost28147_89=
_TestParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x01,          /* [5478] OBJ_id_Gost28147_89=
_CryptoPro_A_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x02,          /* [5485] OBJ_id_Gost28147_89=
_CryptoPro_B_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x03,          /* [5492] OBJ_id_Gost28147_89=
_CryptoPro_C_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x04,          /* [5499] OBJ_id_Gost28147_89=
_CryptoPro_D_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x05,          /* [5506] OBJ_id_Gost28147_89=
_CryptoPro_Oscar_1_1_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x06,          /* [5513] OBJ_id_Gost28147_89=
_CryptoPro_Oscar_1_0_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x1F,0x07,          /* [5520] OBJ_id_Gost28147_89=
_CryptoPro_RIC_1_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x20,0x00,          /* [5527] OBJ_id_GostR3410_94=
_TestParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x20,0x02,          /* [5534] OBJ_id_GostR3410_94=
_CryptoPro_A_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x20,0x03,          /* [5541] OBJ_id_GostR3410_94=
_CryptoPro_B_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x20,0x04,          /* [5548] OBJ_id_GostR3410_94=
_CryptoPro_C_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x20,0x05,          /* [5555] OBJ_id_GostR3410_94=
_CryptoPro_D_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x21,0x01,          /* [5562] OBJ_id_GostR3410_94=
_CryptoPro_XchA_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x21,0x02,          /* [5569] OBJ_id_GostR3410_94=
_CryptoPro_XchB_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x21,0x03,          /* [5576] OBJ_id_GostR3410_94=
_CryptoPro_XchC_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x23,0x00,          /* [5583] OBJ_id_GostR3410_20=
01_TestParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x23,0x01,          /* [5590] OBJ_id_GostR3410_20=
01_CryptoPro_A_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x23,0x02,          /* [5597] OBJ_id_GostR3410_20=
01_CryptoPro_B_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x23,0x03,          /* [5604] OBJ_id_GostR3410_20=
01_CryptoPro_C_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x24,0x00,          /* [5611] OBJ_id_GostR3410_20=
01_CryptoPro_XchA_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x24,0x01,          /* [5618] OBJ_id_GostR3410_20=
01_CryptoPro_XchB_ParamSet */
+0x2A,0x85,0x03,0x02,0x02,0x14,0x01,          /* [5625] OBJ_id_GostR3410_94=
_a */
+0x2A,0x85,0x03,0x02,0x02,0x14,0x02,          /* [5632] OBJ_id_GostR3410_94=
_aBis */
+0x2A,0x85,0x03,0x02,0x02,0x14,0x03,          /* [5639] OBJ_id_GostR3410_94=
_b */
+0x2A,0x85,0x03,0x02,0x02,0x14,0x04,          /* [5646] OBJ_id_GostR3410_94=
_bBis */
+0x2A,0x85,0x03,0x02,0x09,0x01,0x06,0x01,     /* [5653] OBJ_id_Gost28147_89=
_cc */
+0x2A,0x85,0x03,0x02,0x09,0x01,0x05,0x03,     /* [5661] OBJ_id_GostR3410_94=
_cc */
+0x2A,0x85,0x03,0x02,0x09,0x01,0x05,0x04,     /* [5669] OBJ_id_GostR3410_20=
01_cc */
+0x2A,0x85,0x03,0x02,0x09,0x01,0x03,0x03,     /* [5677] OBJ_id_GostR3411_94=
_with_GostR3410_94_cc */
+0x2A,0x85,0x03,0x02,0x09,0x01,0x03,0x04,     /* [5685] OBJ_id_GostR3411_94=
_with_GostR3410_2001_cc */
+0x2A,0x85,0x03,0x02,0x09,0x01,0x08,0x01,     /* [5693] OBJ_id_GostR3410_20=
01_ParamSet_cc */
+0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x11,0x02,/* [5701] OBJ_LocalKeySet */
+0x55,0x1D,0x2E,                              /* [5710] OBJ_freshest_crl */
+0x2B,0x06,0x01,0x05,0x05,0x07,0x08,0x03,     /* [5713] OBJ_id_on_permanent=
Identifier */
+0x55,0x04,0x0E,                              /* [5721] OBJ_searchGuide */
+0x55,0x04,0x0F,                              /* [5724] OBJ_businessCategor=
y */
+0x55,0x04,0x10,                              /* [5727] OBJ_postalAddress */
+0x55,0x04,0x12,                              /* [5730] OBJ_postOfficeBox */
+0x55,0x04,0x13,                              /* [5733] OBJ_physicalDeliver=
yOfficeName */
+0x55,0x04,0x14,                              /* [5736] OBJ_telephoneNumber=
 */
+0x55,0x04,0x15,                              /* [5739] OBJ_telexNumber */
+0x55,0x04,0x16,                              /* [5742] OBJ_teletexTerminal=
Identifier */
+0x55,0x04,0x17,                              /* [5745] OBJ_facsimileTeleph=
oneNumber */
+0x55,0x04,0x18,                              /* [5748] OBJ_x121Address */
+0x55,0x04,0x19,                              /* [5751] OBJ_internationaliS=
DNNumber */
+0x55,0x04,0x1A,                              /* [5754] OBJ_registeredAddre=
ss */
+0x55,0x04,0x1B,                              /* [5757] OBJ_destinationIndi=
cator */
+0x55,0x04,0x1C,                              /* [5760] OBJ_preferredDelive=
ryMethod */
+0x55,0x04,0x1D,                              /* [5763] OBJ_presentationAdd=
ress */
+0x55,0x04,0x1E,                              /* [5766] OBJ_supportedApplic=
ationContext */
+0x55,0x04,0x1F,                              /* [5769] OBJ_member */
+0x55,0x04,0x20,                              /* [5772] OBJ_owner */
+0x55,0x04,0x21,                              /* [5775] OBJ_roleOccupant */
+0x55,0x04,0x22,                              /* [5778] OBJ_seeAlso */
+0x55,0x04,0x23,                              /* [5781] OBJ_userPassword */
+0x55,0x04,0x24,                              /* [5784] OBJ_userCertificate=
 */
+0x55,0x04,0x25,                              /* [5787] OBJ_cACertificate */
+0x55,0x04,0x26,                              /* [5790] OBJ_authorityRevoca=
tionList */
+0x55,0x04,0x27,                              /* [5793] OBJ_certificateRevo=
cationList */
+0x55,0x04,0x28,                              /* [5796] OBJ_crossCertificat=
ePair */
+0x55,0x04,0x2F,                              /* [5799] OBJ_enhancedSearchG=
uide */
+0x55,0x04,0x30,                              /* [5802] OBJ_protocolInforma=
tion */
+0x55,0x04,0x31,                              /* [5805] OBJ_distinguishedNa=
me */
+0x55,0x04,0x32,                              /* [5808] OBJ_uniqueMember */
+0x55,0x04,0x33,                              /* [5811] OBJ_houseIdentifier=
 */
+0x55,0x04,0x34,                              /* [5814] OBJ_supportedAlgori=
thms */
+0x55,0x04,0x35,                              /* [5817] OBJ_deltaRevocation=
List */
+0x55,0x04,0x36,                              /* [5820] OBJ_dmdName */
+};
+
+static const ASN1_OBJECT nid_objs[NUM_NID]=3D{
+{"UNDEF","undefined",NID_undef,1,&(lvalues[0]),0},
+{"rsadsi","RSA Data Security, Inc.",NID_rsadsi,6,&(lvalues[1]),0},
+{"pkcs","RSA Data Security, Inc. PKCS",NID_pkcs,7,&(lvalues[7]),0},
+{"MD2","md2",NID_md2,8,&(lvalues[14]),0},
+{"MD5","md5",NID_md5,8,&(lvalues[22]),0},
+{"RC4","rc4",NID_rc4,8,&(lvalues[30]),0},
+{"rsaEncryption","rsaEncryption",NID_rsaEncryption,9,&(lvalues[38]),0},
+{"RSA-MD2","md2WithRSAEncryption",NID_md2WithRSAEncryption,9,
+	&(lvalues[47]),0},
+{"RSA-MD5","md5WithRSAEncryption",NID_md5WithRSAEncryption,9,
+	&(lvalues[56]),0},
+{"PBE-MD2-DES","pbeWithMD2AndDES-CBC",NID_pbeWithMD2AndDES_CBC,9,
+	&(lvalues[65]),0},
+{"PBE-MD5-DES","pbeWithMD5AndDES-CBC",NID_pbeWithMD5AndDES_CBC,9,
+	&(lvalues[74]),0},
+{"X500","directory services (X.500)",NID_X500,1,&(lvalues[83]),0},
+{"X509","X509",NID_X509,2,&(lvalues[84]),0},
+{"CN","commonName",NID_commonName,3,&(lvalues[86]),0},
+{"C","countryName",NID_countryName,3,&(lvalues[89]),0},
+{"L","localityName",NID_localityName,3,&(lvalues[92]),0},
+{"ST","stateOrProvinceName",NID_stateOrProvinceName,3,&(lvalues[95]),0},
+{"O","organizationName",NID_organizationName,3,&(lvalues[98]),0},
+{"OU","organizationalUnitName",NID_organizationalUnitName,3,
+	&(lvalues[101]),0},
+{"RSA","rsa",NID_rsa,4,&(lvalues[104]),0},
+{"pkcs7","pkcs7",NID_pkcs7,8,&(lvalues[108]),0},
+{"pkcs7-data","pkcs7-data",NID_pkcs7_data,9,&(lvalues[116]),0},
+{"pkcs7-signedData","pkcs7-signedData",NID_pkcs7_signed,9,
+	&(lvalues[125]),0},
+{"pkcs7-envelopedData","pkcs7-envelopedData",NID_pkcs7_enveloped,9,
+	&(lvalues[134]),0},
+{"pkcs7-signedAndEnvelopedData","pkcs7-signedAndEnvelopedData",
+	NID_pkcs7_signedAndEnveloped,9,&(lvalues[143]),0},
+{"pkcs7-digestData","pkcs7-digestData",NID_pkcs7_digest,9,
+	&(lvalues[152]),0},
+{"pkcs7-encryptedData","pkcs7-encryptedData",NID_pkcs7_encrypted,9,
+	&(lvalues[161]),0},
+{"pkcs3","pkcs3",NID_pkcs3,8,&(lvalues[170]),0},
+{"dhKeyAgreement","dhKeyAgreement",NID_dhKeyAgreement,9,
+	&(lvalues[178]),0},
+{"DES-ECB","des-ecb",NID_des_ecb,5,&(lvalues[187]),0},
+{"DES-CFB","des-cfb",NID_des_cfb64,5,&(lvalues[192]),0},
+{"DES-CBC","des-cbc",NID_des_cbc,5,&(lvalues[197]),0},
+{"DES-EDE","des-ede",NID_des_ede_ecb,5,&(lvalues[202]),0},
+{"DES-EDE3","des-ede3",NID_des_ede3_ecb,0,NULL,0},
+{"IDEA-CBC","idea-cbc",NID_idea_cbc,11,&(lvalues[207]),0},
+{"IDEA-CFB","idea-cfb",NID_idea_cfb64,0,NULL,0},
+{"IDEA-ECB","idea-ecb",NID_idea_ecb,0,NULL,0},
+{"RC2-CBC","rc2-cbc",NID_rc2_cbc,8,&(lvalues[218]),0},
+{"RC2-ECB","rc2-ecb",NID_rc2_ecb,0,NULL,0},
+{"RC2-CFB","rc2-cfb",NID_rc2_cfb64,0,NULL,0},
+{"RC2-OFB","rc2-ofb",NID_rc2_ofb64,0,NULL,0},
+{"SHA","sha",NID_sha,5,&(lvalues[226]),0},
+{"RSA-SHA","shaWithRSAEncryption",NID_shaWithRSAEncryption,5,
+	&(lvalues[231]),0},
+{"DES-EDE-CBC","des-ede-cbc",NID_des_ede_cbc,0,NULL,0},
+{"DES-EDE3-CBC","des-ede3-cbc",NID_des_ede3_cbc,8,&(lvalues[236]),0},
+{"DES-OFB","des-ofb",NID_des_ofb64,5,&(lvalues[244]),0},
+{"IDEA-OFB","idea-ofb",NID_idea_ofb64,0,NULL,0},
+{"pkcs9","pkcs9",NID_pkcs9,8,&(lvalues[249]),0},
+{"emailAddress","emailAddress",NID_pkcs9_emailAddress,9,
+	&(lvalues[257]),0},
+{"unstructuredName","unstructuredName",NID_pkcs9_unstructuredName,9,
+	&(lvalues[266]),0},
+{"contentType","contentType",NID_pkcs9_contentType,9,&(lvalues[275]),0},
+{"messageDigest","messageDigest",NID_pkcs9_messageDigest,9,
+	&(lvalues[284]),0},
+{"signingTime","signingTime",NID_pkcs9_signingTime,9,&(lvalues[293]),0},
+{"countersignature","countersignature",NID_pkcs9_countersignature,9,
+	&(lvalues[302]),0},
+{"challengePassword","challengePassword",NID_pkcs9_challengePassword,
+	9,&(lvalues[311]),0},
+{"unstructuredAddress","unstructuredAddress",
+	NID_pkcs9_unstructuredAddress,9,&(lvalues[320]),0},
+{"extendedCertificateAttributes","extendedCertificateAttributes",
+	NID_pkcs9_extCertAttributes,9,&(lvalues[329]),0},
+{"Netscape","Netscape Communications Corp.",NID_netscape,7,
+	&(lvalues[338]),0},
+{"nsCertExt","Netscape Certificate Extension",
+	NID_netscape_cert_extension,8,&(lvalues[345]),0},
+{"nsDataType","Netscape Data Type",NID_netscape_data_type,8,
+	&(lvalues[353]),0},
+{"DES-EDE-CFB","des-ede-cfb",NID_des_ede_cfb64,0,NULL,0},
+{"DES-EDE3-CFB","des-ede3-cfb",NID_des_ede3_cfb64,0,NULL,0},
+{"DES-EDE-OFB","des-ede-ofb",NID_des_ede_ofb64,0,NULL,0},
+{"DES-EDE3-OFB","des-ede3-ofb",NID_des_ede3_ofb64,0,NULL,0},
+{"SHA1","sha1",NID_sha1,5,&(lvalues[361]),0},
+{"RSA-SHA1","sha1WithRSAEncryption",NID_sha1WithRSAEncryption,9,
+	&(lvalues[366]),0},
+{"DSA-SHA","dsaWithSHA",NID_dsaWithSHA,5,&(lvalues[375]),0},
+{"DSA-old","dsaEncryption-old",NID_dsa_2,5,&(lvalues[380]),0},
+{"PBE-SHA1-RC2-64","pbeWithSHA1AndRC2-CBC",NID_pbeWithSHA1AndRC2_CBC,
+	9,&(lvalues[385]),0},
+{"PBKDF2","PBKDF2",NID_id_pbkdf2,9,&(lvalues[394]),0},
+{"DSA-SHA1-old","dsaWithSHA1-old",NID_dsaWithSHA1_2,5,&(lvalues[403]),0},
+{"nsCertType","Netscape Cert Type",NID_netscape_cert_type,9,
+	&(lvalues[408]),0},
+{"nsBaseUrl","Netscape Base Url",NID_netscape_base_url,9,
+	&(lvalues[417]),0},
+{"nsRevocationUrl","Netscape Revocation Url",
+	NID_netscape_revocation_url,9,&(lvalues[426]),0},
+{"nsCaRevocationUrl","Netscape CA Revocation Url",
+	NID_netscape_ca_revocation_url,9,&(lvalues[435]),0},
+{"nsRenewalUrl","Netscape Renewal Url",NID_netscape_renewal_url,9,
+	&(lvalues[444]),0},
+{"nsCaPolicyUrl","Netscape CA Policy Url",NID_netscape_ca_policy_url,
+	9,&(lvalues[453]),0},
+{"nsSslServerName","Netscape SSL Server Name",
+	NID_netscape_ssl_server_name,9,&(lvalues[462]),0},
+{"nsComment","Netscape Comment",NID_netscape_comment,9,&(lvalues[471]),0},
+{"nsCertSequence","Netscape Certificate Sequence",
+	NID_netscape_cert_sequence,9,&(lvalues[480]),0},
+{"DESX-CBC","desx-cbc",NID_desx_cbc,0,NULL,0},
+{"id-ce","id-ce",NID_id_ce,2,&(lvalues[489]),0},
+{"subjectKeyIdentifier","X509v3 Subject Key Identifier",
+	NID_subject_key_identifier,3,&(lvalues[491]),0},
+{"keyUsage","X509v3 Key Usage",NID_key_usage,3,&(lvalues[494]),0},
+{"privateKeyUsagePeriod","X509v3 Private Key Usage Period",
+	NID_private_key_usage_period,3,&(lvalues[497]),0},
+{"subjectAltName","X509v3 Subject Alternative Name",
+	NID_subject_alt_name,3,&(lvalues[500]),0},
+{"issuerAltName","X509v3 Issuer Alternative Name",NID_issuer_alt_name,
+	3,&(lvalues[503]),0},
+{"basicConstraints","X509v3 Basic Constraints",NID_basic_constraints,
+	3,&(lvalues[506]),0},
+{"crlNumber","X509v3 CRL Number",NID_crl_number,3,&(lvalues[509]),0},
+{"certificatePolicies","X509v3 Certificate Policies",
+	NID_certificate_policies,3,&(lvalues[512]),0},
+{"authorityKeyIdentifier","X509v3 Authority Key Identifier",
+	NID_authority_key_identifier,3,&(lvalues[515]),0},
+{"BF-CBC","bf-cbc",NID_bf_cbc,9,&(lvalues[518]),0},
+{"BF-ECB","bf-ecb",NID_bf_ecb,0,NULL,0},
+{"BF-CFB","bf-cfb",NID_bf_cfb64,0,NULL,0},
+{"BF-OFB","bf-ofb",NID_bf_ofb64,0,NULL,0},
+{"MDC2","mdc2",NID_mdc2,4,&(lvalues[527]),0},
+{"RSA-MDC2","mdc2WithRSA",NID_mdc2WithRSA,4,&(lvalues[531]),0},
+{"RC4-40","rc4-40",NID_rc4_40,0,NULL,0},
+{"RC2-40-CBC","rc2-40-cbc",NID_rc2_40_cbc,0,NULL,0},
+{"GN","givenName",NID_givenName,3,&(lvalues[535]),0},
+{"SN","surname",NID_surname,3,&(lvalues[538]),0},
+{"initials","initials",NID_initials,3,&(lvalues[541]),0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{"crlDistributionPoints","X509v3 CRL Distribution Points",
+	NID_crl_distribution_points,3,&(lvalues[544]),0},
+{"RSA-NP-MD5","md5WithRSA",NID_md5WithRSA,5,&(lvalues[547]),0},
+{"serialNumber","serialNumber",NID_serialNumber,3,&(lvalues[552]),0},
+{"title","title",NID_title,3,&(lvalues[555]),0},
+{"description","description",NID_description,3,&(lvalues[558]),0},
+{"CAST5-CBC","cast5-cbc",NID_cast5_cbc,9,&(lvalues[561]),0},
+{"CAST5-ECB","cast5-ecb",NID_cast5_ecb,0,NULL,0},
+{"CAST5-CFB","cast5-cfb",NID_cast5_cfb64,0,NULL,0},
+{"CAST5-OFB","cast5-ofb",NID_cast5_ofb64,0,NULL,0},
+{"pbeWithMD5AndCast5CBC","pbeWithMD5AndCast5CBC",
+	NID_pbeWithMD5AndCast5_CBC,9,&(lvalues[570]),0},
+{"DSA-SHA1","dsaWithSHA1",NID_dsaWithSHA1,7,&(lvalues[579]),0},
+{"MD5-SHA1","md5-sha1",NID_md5_sha1,0,NULL,0},
+{"RSA-SHA1-2","sha1WithRSA",NID_sha1WithRSA,5,&(lvalues[586]),0},
+{"DSA","dsaEncryption",NID_dsa,7,&(lvalues[591]),0},
+{"RIPEMD160","ripemd160",NID_ripemd160,5,&(lvalues[598]),0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{"RSA-RIPEMD160","ripemd160WithRSA",NID_ripemd160WithRSA,6,
+	&(lvalues[603]),0},
+{"RC5-CBC","rc5-cbc",NID_rc5_cbc,8,&(lvalues[609]),0},
+{"RC5-ECB","rc5-ecb",NID_rc5_ecb,0,NULL,0},
+{"RC5-CFB","rc5-cfb",NID_rc5_cfb64,0,NULL,0},
+{"RC5-OFB","rc5-ofb",NID_rc5_ofb64,0,NULL,0},
+{"RLE","run length compression",NID_rle_compression,6,&(lvalues[617]),0},
+{"ZLIB","zlib compression",NID_zlib_compression,11,&(lvalues[623]),0},
+{"extendedKeyUsage","X509v3 Extended Key Usage",NID_ext_key_usage,3,
+	&(lvalues[634]),0},
+{"PKIX","PKIX",NID_id_pkix,6,&(lvalues[637]),0},
+{"id-kp","id-kp",NID_id_kp,7,&(lvalues[643]),0},
+{"serverAuth","TLS Web Server Authentication",NID_server_auth,8,
+	&(lvalues[650]),0},
+{"clientAuth","TLS Web Client Authentication",NID_client_auth,8,
+	&(lvalues[658]),0},
+{"codeSigning","Code Signing",NID_code_sign,8,&(lvalues[666]),0},
+{"emailProtection","E-mail Protection",NID_email_protect,8,
+	&(lvalues[674]),0},
+{"timeStamping","Time Stamping",NID_time_stamp,8,&(lvalues[682]),0},
+{"msCodeInd","Microsoft Individual Code Signing",NID_ms_code_ind,10,
+	&(lvalues[690]),0},
+{"msCodeCom","Microsoft Commercial Code Signing",NID_ms_code_com,10,
+	&(lvalues[700]),0},
+{"msCTLSign","Microsoft Trust List Signing",NID_ms_ctl_sign,10,
+	&(lvalues[710]),0},
+{"msSGC","Microsoft Server Gated Crypto",NID_ms_sgc,10,&(lvalues[720]),0},
+{"msEFS","Microsoft Encrypted File System",NID_ms_efs,10,
+	&(lvalues[730]),0},
+{"nsSGC","Netscape Server Gated Crypto",NID_ns_sgc,9,&(lvalues[740]),0},
+{"deltaCRL","X509v3 Delta CRL Indicator",NID_delta_crl,3,
+	&(lvalues[749]),0},
+{"CRLReason","X509v3 CRL Reason Code",NID_crl_reason,3,&(lvalues[752]),0},
+{"invalidityDate","Invalidity Date",NID_invalidity_date,3,
+	&(lvalues[755]),0},
+{"SXNetID","Strong Extranet ID",NID_sxnet,5,&(lvalues[758]),0},
+{"PBE-SHA1-RC4-128","pbeWithSHA1And128BitRC4",
+	NID_pbe_WithSHA1And128BitRC4,10,&(lvalues[763]),0},
+{"PBE-SHA1-RC4-40","pbeWithSHA1And40BitRC4",
+	NID_pbe_WithSHA1And40BitRC4,10,&(lvalues[773]),0},
+{"PBE-SHA1-3DES","pbeWithSHA1And3-KeyTripleDES-CBC",
+	NID_pbe_WithSHA1And3_Key_TripleDES_CBC,10,&(lvalues[783]),0},
+{"PBE-SHA1-2DES","pbeWithSHA1And2-KeyTripleDES-CBC",
+	NID_pbe_WithSHA1And2_Key_TripleDES_CBC,10,&(lvalues[793]),0},
+{"PBE-SHA1-RC2-128","pbeWithSHA1And128BitRC2-CBC",
+	NID_pbe_WithSHA1And128BitRC2_CBC,10,&(lvalues[803]),0},
+{"PBE-SHA1-RC2-40","pbeWithSHA1And40BitRC2-CBC",
+	NID_pbe_WithSHA1And40BitRC2_CBC,10,&(lvalues[813]),0},
+{"keyBag","keyBag",NID_keyBag,11,&(lvalues[823]),0},
+{"pkcs8ShroudedKeyBag","pkcs8ShroudedKeyBag",NID_pkcs8ShroudedKeyBag,
+	11,&(lvalues[834]),0},
+{"certBag","certBag",NID_certBag,11,&(lvalues[845]),0},
+{"crlBag","crlBag",NID_crlBag,11,&(lvalues[856]),0},
+{"secretBag","secretBag",NID_secretBag,11,&(lvalues[867]),0},
+{"safeContentsBag","safeContentsBag",NID_safeContentsBag,11,
+	&(lvalues[878]),0},
+{"friendlyName","friendlyName",NID_friendlyName,9,&(lvalues[889]),0},
+{"localKeyID","localKeyID",NID_localKeyID,9,&(lvalues[898]),0},
+{"x509Certificate","x509Certificate",NID_x509Certificate,10,
+	&(lvalues[907]),0},
+{"sdsiCertificate","sdsiCertificate",NID_sdsiCertificate,10,
+	&(lvalues[917]),0},
+{"x509Crl","x509Crl",NID_x509Crl,10,&(lvalues[927]),0},
+{"PBES2","PBES2",NID_pbes2,9,&(lvalues[937]),0},
+{"PBMAC1","PBMAC1",NID_pbmac1,9,&(lvalues[946]),0},
+{"hmacWithSHA1","hmacWithSHA1",NID_hmacWithSHA1,8,&(lvalues[955]),0},
+{"id-qt-cps","Policy Qualifier CPS",NID_id_qt_cps,8,&(lvalues[963]),0},
+{"id-qt-unotice","Policy Qualifier User Notice",NID_id_qt_unotice,8,
+	&(lvalues[971]),0},
+{"RC2-64-CBC","rc2-64-cbc",NID_rc2_64_cbc,0,NULL,0},
+{"SMIME-CAPS","S/MIME Capabilities",NID_SMIMECapabilities,9,
+	&(lvalues[979]),0},
+{"PBE-MD2-RC2-64","pbeWithMD2AndRC2-CBC",NID_pbeWithMD2AndRC2_CBC,9,
+	&(lvalues[988]),0},
+{"PBE-MD5-RC2-64","pbeWithMD5AndRC2-CBC",NID_pbeWithMD5AndRC2_CBC,9,
+	&(lvalues[997]),0},
+{"PBE-SHA1-DES","pbeWithSHA1AndDES-CBC",NID_pbeWithSHA1AndDES_CBC,9,
+	&(lvalues[1006]),0},
+{"msExtReq","Microsoft Extension Request",NID_ms_ext_req,10,
+	&(lvalues[1015]),0},
+{"extReq","Extension Request",NID_ext_req,9,&(lvalues[1025]),0},
+{"name","name",NID_name,3,&(lvalues[1034]),0},
+{"dnQualifier","dnQualifier",NID_dnQualifier,3,&(lvalues[1037]),0},
+{"id-pe","id-pe",NID_id_pe,7,&(lvalues[1040]),0},
+{"id-ad","id-ad",NID_id_ad,7,&(lvalues[1047]),0},
+{"authorityInfoAccess","Authority Information Access",NID_info_access,
+	8,&(lvalues[1054]),0},
+{"OCSP","OCSP",NID_ad_OCSP,8,&(lvalues[1062]),0},
+{"caIssuers","CA Issuers",NID_ad_ca_issuers,8,&(lvalues[1070]),0},
+{"OCSPSigning","OCSP Signing",NID_OCSP_sign,8,&(lvalues[1078]),0},
+{"ISO","iso",NID_iso,1,&(lvalues[1086]),0},
+{"member-body","ISO Member Body",NID_member_body,1,&(lvalues[1087]),0},
+{"ISO-US","ISO US Member Body",NID_ISO_US,3,&(lvalues[1088]),0},
+{"X9-57","X9.57",NID_X9_57,5,&(lvalues[1091]),0},
+{"X9cm","X9.57 CM ?",NID_X9cm,6,&(lvalues[1096]),0},
+{"pkcs1","pkcs1",NID_pkcs1,8,&(lvalues[1102]),0},
+{"pkcs5","pkcs5",NID_pkcs5,8,&(lvalues[1110]),0},
+{"SMIME","S/MIME",NID_SMIME,9,&(lvalues[1118]),0},
+{"id-smime-mod","id-smime-mod",NID_id_smime_mod,10,&(lvalues[1127]),0},
+{"id-smime-ct","id-smime-ct",NID_id_smime_ct,10,&(lvalues[1137]),0},
+{"id-smime-aa","id-smime-aa",NID_id_smime_aa,10,&(lvalues[1147]),0},
+{"id-smime-alg","id-smime-alg",NID_id_smime_alg,10,&(lvalues[1157]),0},
+{"id-smime-cd","id-smime-cd",NID_id_smime_cd,10,&(lvalues[1167]),0},
+{"id-smime-spq","id-smime-spq",NID_id_smime_spq,10,&(lvalues[1177]),0},
+{"id-smime-cti","id-smime-cti",NID_id_smime_cti,10,&(lvalues[1187]),0},
+{"id-smime-mod-cms","id-smime-mod-cms",NID_id_smime_mod_cms,11,
+	&(lvalues[1197]),0},
+{"id-smime-mod-ess","id-smime-mod-ess",NID_id_smime_mod_ess,11,
+	&(lvalues[1208]),0},
+{"id-smime-mod-oid","id-smime-mod-oid",NID_id_smime_mod_oid,11,
+	&(lvalues[1219]),0},
+{"id-smime-mod-msg-v3","id-smime-mod-msg-v3",NID_id_smime_mod_msg_v3,
+	11,&(lvalues[1230]),0},
+{"id-smime-mod-ets-eSignature-88","id-smime-mod-ets-eSignature-88",
+	NID_id_smime_mod_ets_eSignature_88,11,&(lvalues[1241]),0},
+{"id-smime-mod-ets-eSignature-97","id-smime-mod-ets-eSignature-97",
+	NID_id_smime_mod_ets_eSignature_97,11,&(lvalues[1252]),0},
+{"id-smime-mod-ets-eSigPolicy-88","id-smime-mod-ets-eSigPolicy-88",
+	NID_id_smime_mod_ets_eSigPolicy_88,11,&(lvalues[1263]),0},
+{"id-smime-mod-ets-eSigPolicy-97","id-smime-mod-ets-eSigPolicy-97",
+	NID_id_smime_mod_ets_eSigPolicy_97,11,&(lvalues[1274]),0},
+{"id-smime-ct-receipt","id-smime-ct-receipt",NID_id_smime_ct_receipt,
+	11,&(lvalues[1285]),0},
+{"id-smime-ct-authData","id-smime-ct-authData",
+	NID_id_smime_ct_authData,11,&(lvalues[1296]),0},
+{"id-smime-ct-publishCert","id-smime-ct-publishCert",
+	NID_id_smime_ct_publishCert,11,&(lvalues[1307]),0},
+{"id-smime-ct-TSTInfo","id-smime-ct-TSTInfo",NID_id_smime_ct_TSTInfo,
+	11,&(lvalues[1318]),0},
+{"id-smime-ct-TDTInfo","id-smime-ct-TDTInfo",NID_id_smime_ct_TDTInfo,
+	11,&(lvalues[1329]),0},
+{"id-smime-ct-contentInfo","id-smime-ct-contentInfo",
+	NID_id_smime_ct_contentInfo,11,&(lvalues[1340]),0},
+{"id-smime-ct-DVCSRequestData","id-smime-ct-DVCSRequestData",
+	NID_id_smime_ct_DVCSRequestData,11,&(lvalues[1351]),0},
+{"id-smime-ct-DVCSResponseData","id-smime-ct-DVCSResponseData",
+	NID_id_smime_ct_DVCSResponseData,11,&(lvalues[1362]),0},
+{"id-smime-aa-receiptRequest","id-smime-aa-receiptRequest",
+	NID_id_smime_aa_receiptRequest,11,&(lvalues[1373]),0},
+{"id-smime-aa-securityLabel","id-smime-aa-securityLabel",
+	NID_id_smime_aa_securityLabel,11,&(lvalues[1384]),0},
+{"id-smime-aa-mlExpandHistory","id-smime-aa-mlExpandHistory",
+	NID_id_smime_aa_mlExpandHistory,11,&(lvalues[1395]),0},
+{"id-smime-aa-contentHint","id-smime-aa-contentHint",
+	NID_id_smime_aa_contentHint,11,&(lvalues[1406]),0},
+{"id-smime-aa-msgSigDigest","id-smime-aa-msgSigDigest",
+	NID_id_smime_aa_msgSigDigest,11,&(lvalues[1417]),0},
+{"id-smime-aa-encapContentType","id-smime-aa-encapContentType",
+	NID_id_smime_aa_encapContentType,11,&(lvalues[1428]),0},
+{"id-smime-aa-contentIdentifier","id-smime-aa-contentIdentifier",
+	NID_id_smime_aa_contentIdentifier,11,&(lvalues[1439]),0},
+{"id-smime-aa-macValue","id-smime-aa-macValue",
+	NID_id_smime_aa_macValue,11,&(lvalues[1450]),0},
+{"id-smime-aa-equivalentLabels","id-smime-aa-equivalentLabels",
+	NID_id_smime_aa_equivalentLabels,11,&(lvalues[1461]),0},
+{"id-smime-aa-contentReference","id-smime-aa-contentReference",
+	NID_id_smime_aa_contentReference,11,&(lvalues[1472]),0},
+{"id-smime-aa-encrypKeyPref","id-smime-aa-encrypKeyPref",
+	NID_id_smime_aa_encrypKeyPref,11,&(lvalues[1483]),0},
+{"id-smime-aa-signingCertificate","id-smime-aa-signingCertificate",
+	NID_id_smime_aa_signingCertificate,11,&(lvalues[1494]),0},
+{"id-smime-aa-smimeEncryptCerts","id-smime-aa-smimeEncryptCerts",
+	NID_id_smime_aa_smimeEncryptCerts,11,&(lvalues[1505]),0},
+{"id-smime-aa-timeStampToken","id-smime-aa-timeStampToken",
+	NID_id_smime_aa_timeStampToken,11,&(lvalues[1516]),0},
+{"id-smime-aa-ets-sigPolicyId","id-smime-aa-ets-sigPolicyId",
+	NID_id_smime_aa_ets_sigPolicyId,11,&(lvalues[1527]),0},
+{"id-smime-aa-ets-commitmentType","id-smime-aa-ets-commitmentType",
+	NID_id_smime_aa_ets_commitmentType,11,&(lvalues[1538]),0},
+{"id-smime-aa-ets-signerLocation","id-smime-aa-ets-signerLocation",
+	NID_id_smime_aa_ets_signerLocation,11,&(lvalues[1549]),0},
+{"id-smime-aa-ets-signerAttr","id-smime-aa-ets-signerAttr",
+	NID_id_smime_aa_ets_signerAttr,11,&(lvalues[1560]),0},
+{"id-smime-aa-ets-otherSigCert","id-smime-aa-ets-otherSigCert",
+	NID_id_smime_aa_ets_otherSigCert,11,&(lvalues[1571]),0},
+{"id-smime-aa-ets-contentTimestamp",
+	"id-smime-aa-ets-contentTimestamp",
+	NID_id_smime_aa_ets_contentTimestamp,11,&(lvalues[1582]),0},
+{"id-smime-aa-ets-CertificateRefs","id-smime-aa-ets-CertificateRefs",
+	NID_id_smime_aa_ets_CertificateRefs,11,&(lvalues[1593]),0},
+{"id-smime-aa-ets-RevocationRefs","id-smime-aa-ets-RevocationRefs",
+	NID_id_smime_aa_ets_RevocationRefs,11,&(lvalues[1604]),0},
+{"id-smime-aa-ets-certValues","id-smime-aa-ets-certValues",
+	NID_id_smime_aa_ets_certValues,11,&(lvalues[1615]),0},
+{"id-smime-aa-ets-revocationValues",
+	"id-smime-aa-ets-revocationValues",
+	NID_id_smime_aa_ets_revocationValues,11,&(lvalues[1626]),0},
+{"id-smime-aa-ets-escTimeStamp","id-smime-aa-ets-escTimeStamp",
+	NID_id_smime_aa_ets_escTimeStamp,11,&(lvalues[1637]),0},
+{"id-smime-aa-ets-certCRLTimestamp",
+	"id-smime-aa-ets-certCRLTimestamp",
+	NID_id_smime_aa_ets_certCRLTimestamp,11,&(lvalues[1648]),0},
+{"id-smime-aa-ets-archiveTimeStamp",
+	"id-smime-aa-ets-archiveTimeStamp",
+	NID_id_smime_aa_ets_archiveTimeStamp,11,&(lvalues[1659]),0},
+{"id-smime-aa-signatureType","id-smime-aa-signatureType",
+	NID_id_smime_aa_signatureType,11,&(lvalues[1670]),0},
+{"id-smime-aa-dvcs-dvc","id-smime-aa-dvcs-dvc",
+	NID_id_smime_aa_dvcs_dvc,11,&(lvalues[1681]),0},
+{"id-smime-alg-ESDHwith3DES","id-smime-alg-ESDHwith3DES",
+	NID_id_smime_alg_ESDHwith3DES,11,&(lvalues[1692]),0},
+{"id-smime-alg-ESDHwithRC2","id-smime-alg-ESDHwithRC2",
+	NID_id_smime_alg_ESDHwithRC2,11,&(lvalues[1703]),0},
+{"id-smime-alg-3DESwrap","id-smime-alg-3DESwrap",
+	NID_id_smime_alg_3DESwrap,11,&(lvalues[1714]),0},
+{"id-smime-alg-RC2wrap","id-smime-alg-RC2wrap",
+	NID_id_smime_alg_RC2wrap,11,&(lvalues[1725]),0},
+{"id-smime-alg-ESDH","id-smime-alg-ESDH",NID_id_smime_alg_ESDH,11,
+	&(lvalues[1736]),0},
+{"id-smime-alg-CMS3DESwrap","id-smime-alg-CMS3DESwrap",
+	NID_id_smime_alg_CMS3DESwrap,11,&(lvalues[1747]),0},
+{"id-smime-alg-CMSRC2wrap","id-smime-alg-CMSRC2wrap",
+	NID_id_smime_alg_CMSRC2wrap,11,&(lvalues[1758]),0},
+{"id-smime-cd-ldap","id-smime-cd-ldap",NID_id_smime_cd_ldap,11,
+	&(lvalues[1769]),0},
+{"id-smime-spq-ets-sqt-uri","id-smime-spq-ets-sqt-uri",
+	NID_id_smime_spq_ets_sqt_uri,11,&(lvalues[1780]),0},
+{"id-smime-spq-ets-sqt-unotice","id-smime-spq-ets-sqt-unotice",
+	NID_id_smime_spq_ets_sqt_unotice,11,&(lvalues[1791]),0},
+{"id-smime-cti-ets-proofOfOrigin","id-smime-cti-ets-proofOfOrigin",
+	NID_id_smime_cti_ets_proofOfOrigin,11,&(lvalues[1802]),0},
+{"id-smime-cti-ets-proofOfReceipt","id-smime-cti-ets-proofOfReceipt",
+	NID_id_smime_cti_ets_proofOfReceipt,11,&(lvalues[1813]),0},
+{"id-smime-cti-ets-proofOfDelivery",
+	"id-smime-cti-ets-proofOfDelivery",
+	NID_id_smime_cti_ets_proofOfDelivery,11,&(lvalues[1824]),0},
+{"id-smime-cti-ets-proofOfSender","id-smime-cti-ets-proofOfSender",
+	NID_id_smime_cti_ets_proofOfSender,11,&(lvalues[1835]),0},
+{"id-smime-cti-ets-proofOfApproval",
+	"id-smime-cti-ets-proofOfApproval",
+	NID_id_smime_cti_ets_proofOfApproval,11,&(lvalues[1846]),0},
+{"id-smime-cti-ets-proofOfCreation",
+	"id-smime-cti-ets-proofOfCreation",
+	NID_id_smime_cti_ets_proofOfCreation,11,&(lvalues[1857]),0},
+{"MD4","md4",NID_md4,8,&(lvalues[1868]),0},
+{"id-pkix-mod","id-pkix-mod",NID_id_pkix_mod,7,&(lvalues[1876]),0},
+{"id-qt","id-qt",NID_id_qt,7,&(lvalues[1883]),0},
+{"id-it","id-it",NID_id_it,7,&(lvalues[1890]),0},
+{"id-pkip","id-pkip",NID_id_pkip,7,&(lvalues[1897]),0},
+{"id-alg","id-alg",NID_id_alg,7,&(lvalues[1904]),0},
+{"id-cmc","id-cmc",NID_id_cmc,7,&(lvalues[1911]),0},
+{"id-on","id-on",NID_id_on,7,&(lvalues[1918]),0},
+{"id-pda","id-pda",NID_id_pda,7,&(lvalues[1925]),0},
+{"id-aca","id-aca",NID_id_aca,7,&(lvalues[1932]),0},
+{"id-qcs","id-qcs",NID_id_qcs,7,&(lvalues[1939]),0},
+{"id-cct","id-cct",NID_id_cct,7,&(lvalues[1946]),0},
+{"id-pkix1-explicit-88","id-pkix1-explicit-88",
+	NID_id_pkix1_explicit_88,8,&(lvalues[1953]),0},
+{"id-pkix1-implicit-88","id-pkix1-implicit-88",
+	NID_id_pkix1_implicit_88,8,&(lvalues[1961]),0},
+{"id-pkix1-explicit-93","id-pkix1-explicit-93",
+	NID_id_pkix1_explicit_93,8,&(lvalues[1969]),0},
+{"id-pkix1-implicit-93","id-pkix1-implicit-93",
+	NID_id_pkix1_implicit_93,8,&(lvalues[1977]),0},
+{"id-mod-crmf","id-mod-crmf",NID_id_mod_crmf,8,&(lvalues[1985]),0},
+{"id-mod-cmc","id-mod-cmc",NID_id_mod_cmc,8,&(lvalues[1993]),0},
+{"id-mod-kea-profile-88","id-mod-kea-profile-88",
+	NID_id_mod_kea_profile_88,8,&(lvalues[2001]),0},
+{"id-mod-kea-profile-93","id-mod-kea-profile-93",
+	NID_id_mod_kea_profile_93,8,&(lvalues[2009]),0},
+{"id-mod-cmp","id-mod-cmp",NID_id_mod_cmp,8,&(lvalues[2017]),0},
+{"id-mod-qualified-cert-88","id-mod-qualified-cert-88",
+	NID_id_mod_qualified_cert_88,8,&(lvalues[2025]),0},
+{"id-mod-qualified-cert-93","id-mod-qualified-cert-93",
+	NID_id_mod_qualified_cert_93,8,&(lvalues[2033]),0},
+{"id-mod-attribute-cert","id-mod-attribute-cert",
+	NID_id_mod_attribute_cert,8,&(lvalues[2041]),0},
+{"id-mod-timestamp-protocol","id-mod-timestamp-protocol",
+	NID_id_mod_timestamp_protocol,8,&(lvalues[2049]),0},
+{"id-mod-ocsp","id-mod-ocsp",NID_id_mod_ocsp,8,&(lvalues[2057]),0},
+{"id-mod-dvcs","id-mod-dvcs",NID_id_mod_dvcs,8,&(lvalues[2065]),0},
+{"id-mod-cmp2000","id-mod-cmp2000",NID_id_mod_cmp2000,8,
+	&(lvalues[2073]),0},
+{"biometricInfo","Biometric Info",NID_biometricInfo,8,&(lvalues[2081]),0},
+{"qcStatements","qcStatements",NID_qcStatements,8,&(lvalues[2089]),0},
+{"ac-auditEntity","ac-auditEntity",NID_ac_auditEntity,8,
+	&(lvalues[2097]),0},
+{"ac-targeting","ac-targeting",NID_ac_targeting,8,&(lvalues[2105]),0},
+{"aaControls","aaControls",NID_aaControls,8,&(lvalues[2113]),0},
+{"sbgp-ipAddrBlock","sbgp-ipAddrBlock",NID_sbgp_ipAddrBlock,8,
+	&(lvalues[2121]),0},
+{"sbgp-autonomousSysNum","sbgp-autonomousSysNum",
+	NID_sbgp_autonomousSysNum,8,&(lvalues[2129]),0},
+{"sbgp-routerIdentifier","sbgp-routerIdentifier",
+	NID_sbgp_routerIdentifier,8,&(lvalues[2137]),0},
+{"textNotice","textNotice",NID_textNotice,8,&(lvalues[2145]),0},
+{"ipsecEndSystem","IPSec End System",NID_ipsecEndSystem,8,
+	&(lvalues[2153]),0},
+{"ipsecTunnel","IPSec Tunnel",NID_ipsecTunnel,8,&(lvalues[2161]),0},
+{"ipsecUser","IPSec User",NID_ipsecUser,8,&(lvalues[2169]),0},
+{"DVCS","dvcs",NID_dvcs,8,&(lvalues[2177]),0},
+{"id-it-caProtEncCert","id-it-caProtEncCert",NID_id_it_caProtEncCert,
+	8,&(lvalues[2185]),0},
+{"id-it-signKeyPairTypes","id-it-signKeyPairTypes",
+	NID_id_it_signKeyPairTypes,8,&(lvalues[2193]),0},
+{"id-it-encKeyPairTypes","id-it-encKeyPairTypes",
+	NID_id_it_encKeyPairTypes,8,&(lvalues[2201]),0},
+{"id-it-preferredSymmAlg","id-it-preferredSymmAlg",
+	NID_id_it_preferredSymmAlg,8,&(lvalues[2209]),0},
+{"id-it-caKeyUpdateInfo","id-it-caKeyUpdateInfo",
+	NID_id_it_caKeyUpdateInfo,8,&(lvalues[2217]),0},
+{"id-it-currentCRL","id-it-currentCRL",NID_id_it_currentCRL,8,
+	&(lvalues[2225]),0},
+{"id-it-unsupportedOIDs","id-it-unsupportedOIDs",
+	NID_id_it_unsupportedOIDs,8,&(lvalues[2233]),0},
+{"id-it-subscriptionRequest","id-it-subscriptionRequest",
+	NID_id_it_subscriptionRequest,8,&(lvalues[2241]),0},
+{"id-it-subscriptionResponse","id-it-subscriptionResponse",
+	NID_id_it_subscriptionResponse,8,&(lvalues[2249]),0},
+{"id-it-keyPairParamReq","id-it-keyPairParamReq",
+	NID_id_it_keyPairParamReq,8,&(lvalues[2257]),0},
+{"id-it-keyPairParamRep","id-it-keyPairParamRep",
+	NID_id_it_keyPairParamRep,8,&(lvalues[2265]),0},
+{"id-it-revPassphrase","id-it-revPassphrase",NID_id_it_revPassphrase,
+	8,&(lvalues[2273]),0},
+{"id-it-implicitConfirm","id-it-implicitConfirm",
+	NID_id_it_implicitConfirm,8,&(lvalues[2281]),0},
+{"id-it-confirmWaitTime","id-it-confirmWaitTime",
+	NID_id_it_confirmWaitTime,8,&(lvalues[2289]),0},
+{"id-it-origPKIMessage","id-it-origPKIMessage",
+	NID_id_it_origPKIMessage,8,&(lvalues[2297]),0},
+{"id-regCtrl","id-regCtrl",NID_id_regCtrl,8,&(lvalues[2305]),0},
+{"id-regInfo","id-regInfo",NID_id_regInfo,8,&(lvalues[2313]),0},
+{"id-regCtrl-regToken","id-regCtrl-regToken",NID_id_regCtrl_regToken,
+	9,&(lvalues[2321]),0},
+{"id-regCtrl-authenticator","id-regCtrl-authenticator",
+	NID_id_regCtrl_authenticator,9,&(lvalues[2330]),0},
+{"id-regCtrl-pkiPublicationInfo","id-regCtrl-pkiPublicationInfo",
+	NID_id_regCtrl_pkiPublicationInfo,9,&(lvalues[2339]),0},
+{"id-regCtrl-pkiArchiveOptions","id-regCtrl-pkiArchiveOptions",
+	NID_id_regCtrl_pkiArchiveOptions,9,&(lvalues[2348]),0},
+{"id-regCtrl-oldCertID","id-regCtrl-oldCertID",
+	NID_id_regCtrl_oldCertID,9,&(lvalues[2357]),0},
+{"id-regCtrl-protocolEncrKey","id-regCtrl-protocolEncrKey",
+	NID_id_regCtrl_protocolEncrKey,9,&(lvalues[2366]),0},
+{"id-regInfo-utf8Pairs","id-regInfo-utf8Pairs",
+	NID_id_regInfo_utf8Pairs,9,&(lvalues[2375]),0},
+{"id-regInfo-certReq","id-regInfo-certReq",NID_id_regInfo_certReq,9,
+	&(lvalues[2384]),0},
+{"id-alg-des40","id-alg-des40",NID_id_alg_des40,8,&(lvalues[2393]),0},
+{"id-alg-noSignature","id-alg-noSignature",NID_id_alg_noSignature,8,
+	&(lvalues[2401]),0},
+{"id-alg-dh-sig-hmac-sha1","id-alg-dh-sig-hmac-sha1",
+	NID_id_alg_dh_sig_hmac_sha1,8,&(lvalues[2409]),0},
+{"id-alg-dh-pop","id-alg-dh-pop",NID_id_alg_dh_pop,8,&(lvalues[2417]),0},
+{"id-cmc-statusInfo","id-cmc-statusInfo",NID_id_cmc_statusInfo,8,
+	&(lvalues[2425]),0},
+{"id-cmc-identification","id-cmc-identification",
+	NID_id_cmc_identification,8,&(lvalues[2433]),0},
+{"id-cmc-identityProof","id-cmc-identityProof",
+	NID_id_cmc_identityProof,8,&(lvalues[2441]),0},
+{"id-cmc-dataReturn","id-cmc-dataReturn",NID_id_cmc_dataReturn,8,
+	&(lvalues[2449]),0},
+{"id-cmc-transactionId","id-cmc-transactionId",
+	NID_id_cmc_transactionId,8,&(lvalues[2457]),0},
+{"id-cmc-senderNonce","id-cmc-senderNonce",NID_id_cmc_senderNonce,8,
+	&(lvalues[2465]),0},
+{"id-cmc-recipientNonce","id-cmc-recipientNonce",
+	NID_id_cmc_recipientNonce,8,&(lvalues[2473]),0},
+{"id-cmc-addExtensions","id-cmc-addExtensions",
+	NID_id_cmc_addExtensions,8,&(lvalues[2481]),0},
+{"id-cmc-encryptedPOP","id-cmc-encryptedPOP",NID_id_cmc_encryptedPOP,
+	8,&(lvalues[2489]),0},
+{"id-cmc-decryptedPOP","id-cmc-decryptedPOP",NID_id_cmc_decryptedPOP,
+	8,&(lvalues[2497]),0},
+{"id-cmc-lraPOPWitness","id-cmc-lraPOPWitness",
+	NID_id_cmc_lraPOPWitness,8,&(lvalues[2505]),0},
+{"id-cmc-getCert","id-cmc-getCert",NID_id_cmc_getCert,8,
+	&(lvalues[2513]),0},
+{"id-cmc-getCRL","id-cmc-getCRL",NID_id_cmc_getCRL,8,&(lvalues[2521]),0},
+{"id-cmc-revokeRequest","id-cmc-revokeRequest",
+	NID_id_cmc_revokeRequest,8,&(lvalues[2529]),0},
+{"id-cmc-regInfo","id-cmc-regInfo",NID_id_cmc_regInfo,8,
+	&(lvalues[2537]),0},
+{"id-cmc-responseInfo","id-cmc-responseInfo",NID_id_cmc_responseInfo,
+	8,&(lvalues[2545]),0},
+{"id-cmc-queryPending","id-cmc-queryPending",NID_id_cmc_queryPending,
+	8,&(lvalues[2553]),0},
+{"id-cmc-popLinkRandom","id-cmc-popLinkRandom",
+	NID_id_cmc_popLinkRandom,8,&(lvalues[2561]),0},
+{"id-cmc-popLinkWitness","id-cmc-popLinkWitness",
+	NID_id_cmc_popLinkWitness,8,&(lvalues[2569]),0},
+{"id-cmc-confirmCertAcceptance","id-cmc-confirmCertAcceptance",
+	NID_id_cmc_confirmCertAcceptance,8,&(lvalues[2577]),0},
+{"id-on-personalData","id-on-personalData",NID_id_on_personalData,8,
+	&(lvalues[2585]),0},
+{"id-pda-dateOfBirth","id-pda-dateOfBirth",NID_id_pda_dateOfBirth,8,
+	&(lvalues[2593]),0},
+{"id-pda-placeOfBirth","id-pda-placeOfBirth",NID_id_pda_placeOfBirth,
+	8,&(lvalues[2601]),0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{"id-pda-gender","id-pda-gender",NID_id_pda_gender,8,&(lvalues[2609]),0},
+{"id-pda-countryOfCitizenship","id-pda-countryOfCitizenship",
+	NID_id_pda_countryOfCitizenship,8,&(lvalues[2617]),0},
+{"id-pda-countryOfResidence","id-pda-countryOfResidence",
+	NID_id_pda_countryOfResidence,8,&(lvalues[2625]),0},
+{"id-aca-authenticationInfo","id-aca-authenticationInfo",
+	NID_id_aca_authenticationInfo,8,&(lvalues[2633]),0},
+{"id-aca-accessIdentity","id-aca-accessIdentity",
+	NID_id_aca_accessIdentity,8,&(lvalues[2641]),0},
+{"id-aca-chargingIdentity","id-aca-chargingIdentity",
+	NID_id_aca_chargingIdentity,8,&(lvalues[2649]),0},
+{"id-aca-group","id-aca-group",NID_id_aca_group,8,&(lvalues[2657]),0},
+{"id-aca-role","id-aca-role",NID_id_aca_role,8,&(lvalues[2665]),0},
+{"id-qcs-pkixQCSyntax-v1","id-qcs-pkixQCSyntax-v1",
+	NID_id_qcs_pkixQCSyntax_v1,8,&(lvalues[2673]),0},
+{"id-cct-crs","id-cct-crs",NID_id_cct_crs,8,&(lvalues[2681]),0},
+{"id-cct-PKIData","id-cct-PKIData",NID_id_cct_PKIData,8,
+	&(lvalues[2689]),0},
+{"id-cct-PKIResponse","id-cct-PKIResponse",NID_id_cct_PKIResponse,8,
+	&(lvalues[2697]),0},
+{"ad_timestamping","AD Time Stamping",NID_ad_timeStamping,8,
+	&(lvalues[2705]),0},
+{"AD_DVCS","ad dvcs",NID_ad_dvcs,8,&(lvalues[2713]),0},
+{"basicOCSPResponse","Basic OCSP Response",NID_id_pkix_OCSP_basic,9,
+	&(lvalues[2721]),0},
+{"Nonce","OCSP Nonce",NID_id_pkix_OCSP_Nonce,9,&(lvalues[2730]),0},
+{"CrlID","OCSP CRL ID",NID_id_pkix_OCSP_CrlID,9,&(lvalues[2739]),0},
+{"acceptableResponses","Acceptable OCSP Responses",
+	NID_id_pkix_OCSP_acceptableResponses,9,&(lvalues[2748]),0},
+{"noCheck","OCSP No Check",NID_id_pkix_OCSP_noCheck,9,&(lvalues[2757]),0},
+{"archiveCutoff","OCSP Archive Cutoff",NID_id_pkix_OCSP_archiveCutoff,
+	9,&(lvalues[2766]),0},
+{"serviceLocator","OCSP Service Locator",
+	NID_id_pkix_OCSP_serviceLocator,9,&(lvalues[2775]),0},
+{"extendedStatus","Extended OCSP Status",
+	NID_id_pkix_OCSP_extendedStatus,9,&(lvalues[2784]),0},
+{"valid","valid",NID_id_pkix_OCSP_valid,9,&(lvalues[2793]),0},
+{"path","path",NID_id_pkix_OCSP_path,9,&(lvalues[2802]),0},
+{"trustRoot","Trust Root",NID_id_pkix_OCSP_trustRoot,9,
+	&(lvalues[2811]),0},
+{"algorithm","algorithm",NID_algorithm,4,&(lvalues[2820]),0},
+{"rsaSignature","rsaSignature",NID_rsaSignature,5,&(lvalues[2824]),0},
+{"X500algorithms","directory services - algorithms",
+	NID_X500algorithms,2,&(lvalues[2829]),0},
+{"ORG","org",NID_org,1,&(lvalues[2831]),0},
+{"DOD","dod",NID_dod,2,&(lvalues[2832]),0},
+{"IANA","iana",NID_iana,3,&(lvalues[2834]),0},
+{"directory","Directory",NID_Directory,4,&(lvalues[2837]),0},
+{"mgmt","Management",NID_Management,4,&(lvalues[2841]),0},
+{"experimental","Experimental",NID_Experimental,4,&(lvalues[2845]),0},
+{"private","Private",NID_Private,4,&(lvalues[2849]),0},
+{"security","Security",NID_Security,4,&(lvalues[2853]),0},
+{"snmpv2","SNMPv2",NID_SNMPv2,4,&(lvalues[2857]),0},
+{"Mail","Mail",NID_Mail,4,&(lvalues[2861]),0},
+{"enterprises","Enterprises",NID_Enterprises,5,&(lvalues[2865]),0},
+{"dcobject","dcObject",NID_dcObject,9,&(lvalues[2870]),0},
+{"DC","domainComponent",NID_domainComponent,10,&(lvalues[2879]),0},
+{"domain","Domain",NID_Domain,10,&(lvalues[2889]),0},
+{"NULL","NULL",NID_joint_iso_ccitt,1,&(lvalues[2899]),0},
+{"selected-attribute-types","Selected Attribute Types",
+	NID_selected_attribute_types,3,&(lvalues[2900]),0},
+{"clearance","clearance",NID_clearance,4,&(lvalues[2903]),0},
+{"RSA-MD4","md4WithRSAEncryption",NID_md4WithRSAEncryption,9,
+	&(lvalues[2907]),0},
+{"ac-proxying","ac-proxying",NID_ac_proxying,8,&(lvalues[2916]),0},
+{"subjectInfoAccess","Subject Information Access",NID_sinfo_access,8,
+	&(lvalues[2924]),0},
+{"id-aca-encAttrs","id-aca-encAttrs",NID_id_aca_encAttrs,8,
+	&(lvalues[2932]),0},
+{"role","role",NID_role,3,&(lvalues[2940]),0},
+{"policyConstraints","X509v3 Policy Constraints",
+	NID_policy_constraints,3,&(lvalues[2943]),0},
+{"targetInformation","X509v3 AC Targeting",NID_target_information,3,
+	&(lvalues[2946]),0},
+{"noRevAvail","X509v3 No Revocation Available",NID_no_rev_avail,3,
+	&(lvalues[2949]),0},
+{"NULL","NULL",NID_ccitt,1,&(lvalues[2952]),0},
+{"ansi-X9-62","ANSI X9.62",NID_ansi_X9_62,5,&(lvalues[2953]),0},
+{"prime-field","prime-field",NID_X9_62_prime_field,7,&(lvalues[2958]),0},
+{"characteristic-two-field","characteristic-two-field",
+	NID_X9_62_characteristic_two_field,7,&(lvalues[2965]),0},
+{"id-ecPublicKey","id-ecPublicKey",NID_X9_62_id_ecPublicKey,7,
+	&(lvalues[2972]),0},
+{"prime192v1","prime192v1",NID_X9_62_prime192v1,8,&(lvalues[2979]),0},
+{"prime192v2","prime192v2",NID_X9_62_prime192v2,8,&(lvalues[2987]),0},
+{"prime192v3","prime192v3",NID_X9_62_prime192v3,8,&(lvalues[2995]),0},
+{"prime239v1","prime239v1",NID_X9_62_prime239v1,8,&(lvalues[3003]),0},
+{"prime239v2","prime239v2",NID_X9_62_prime239v2,8,&(lvalues[3011]),0},
+{"prime239v3","prime239v3",NID_X9_62_prime239v3,8,&(lvalues[3019]),0},
+{"prime256v1","prime256v1",NID_X9_62_prime256v1,8,&(lvalues[3027]),0},
+{"ecdsa-with-SHA1","ecdsa-with-SHA1",NID_ecdsa_with_SHA1,7,
+	&(lvalues[3035]),0},
+{"CSPName","Microsoft CSP Name",NID_ms_csp_name,9,&(lvalues[3042]),0},
+{"AES-128-ECB","aes-128-ecb",NID_aes_128_ecb,9,&(lvalues[3051]),0},
+{"AES-128-CBC","aes-128-cbc",NID_aes_128_cbc,9,&(lvalues[3060]),0},
+{"AES-128-OFB","aes-128-ofb",NID_aes_128_ofb128,9,&(lvalues[3069]),0},
+{"AES-128-CFB","aes-128-cfb",NID_aes_128_cfb128,9,&(lvalues[3078]),0},
+{"AES-192-ECB","aes-192-ecb",NID_aes_192_ecb,9,&(lvalues[3087]),0},
+{"AES-192-CBC","aes-192-cbc",NID_aes_192_cbc,9,&(lvalues[3096]),0},
+{"AES-192-OFB","aes-192-ofb",NID_aes_192_ofb128,9,&(lvalues[3105]),0},
+{"AES-192-CFB","aes-192-cfb",NID_aes_192_cfb128,9,&(lvalues[3114]),0},
+{"AES-256-ECB","aes-256-ecb",NID_aes_256_ecb,9,&(lvalues[3123]),0},
+{"AES-256-CBC","aes-256-cbc",NID_aes_256_cbc,9,&(lvalues[3132]),0},
+{"AES-256-OFB","aes-256-ofb",NID_aes_256_ofb128,9,&(lvalues[3141]),0},
+{"AES-256-CFB","aes-256-cfb",NID_aes_256_cfb128,9,&(lvalues[3150]),0},
+{"holdInstructionCode","Hold Instruction Code",
+	NID_hold_instruction_code,3,&(lvalues[3159]),0},
+{"holdInstructionNone","Hold Instruction None",
+	NID_hold_instruction_none,7,&(lvalues[3162]),0},
+{"holdInstructionCallIssuer","Hold Instruction Call Issuer",
+	NID_hold_instruction_call_issuer,7,&(lvalues[3169]),0},
+{"holdInstructionReject","Hold Instruction Reject",
+	NID_hold_instruction_reject,7,&(lvalues[3176]),0},
+{"data","data",NID_data,1,&(lvalues[3183]),0},
+{"pss","pss",NID_pss,3,&(lvalues[3184]),0},
+{"ucl","ucl",NID_ucl,7,&(lvalues[3187]),0},
+{"pilot","pilot",NID_pilot,8,&(lvalues[3194]),0},
+{"pilotAttributeType","pilotAttributeType",NID_pilotAttributeType,9,
+	&(lvalues[3202]),0},
+{"pilotAttributeSyntax","pilotAttributeSyntax",
+	NID_pilotAttributeSyntax,9,&(lvalues[3211]),0},
+{"pilotObjectClass","pilotObjectClass",NID_pilotObjectClass,9,
+	&(lvalues[3220]),0},
+{"pilotGroups","pilotGroups",NID_pilotGroups,9,&(lvalues[3229]),0},
+{"iA5StringSyntax","iA5StringSyntax",NID_iA5StringSyntax,10,
+	&(lvalues[3238]),0},
+{"caseIgnoreIA5StringSyntax","caseIgnoreIA5StringSyntax",
+	NID_caseIgnoreIA5StringSyntax,10,&(lvalues[3248]),0},
+{"pilotObject","pilotObject",NID_pilotObject,10,&(lvalues[3258]),0},
+{"pilotPerson","pilotPerson",NID_pilotPerson,10,&(lvalues[3268]),0},
+{"account","account",NID_account,10,&(lvalues[3278]),0},
+{"document","document",NID_document,10,&(lvalues[3288]),0},
+{"room","room",NID_room,10,&(lvalues[3298]),0},
+{"documentSeries","documentSeries",NID_documentSeries,10,
+	&(lvalues[3308]),0},
+{"rFC822localPart","rFC822localPart",NID_rFC822localPart,10,
+	&(lvalues[3318]),0},
+{"dNSDomain","dNSDomain",NID_dNSDomain,10,&(lvalues[3328]),0},
+{"domainRelatedObject","domainRelatedObject",NID_domainRelatedObject,
+	10,&(lvalues[3338]),0},
+{"friendlyCountry","friendlyCountry",NID_friendlyCountry,10,
+	&(lvalues[3348]),0},
+{"simpleSecurityObject","simpleSecurityObject",
+	NID_simpleSecurityObject,10,&(lvalues[3358]),0},
+{"pilotOrganization","pilotOrganization",NID_pilotOrganization,10,
+	&(lvalues[3368]),0},
+{"pilotDSA","pilotDSA",NID_pilotDSA,10,&(lvalues[3378]),0},
+{"qualityLabelledData","qualityLabelledData",NID_qualityLabelledData,
+	10,&(lvalues[3388]),0},
+{"UID","userId",NID_userId,10,&(lvalues[3398]),0},
+{"textEncodedORAddress","textEncodedORAddress",
+	NID_textEncodedORAddress,10,&(lvalues[3408]),0},
+{"mail","rfc822Mailbox",NID_rfc822Mailbox,10,&(lvalues[3418]),0},
+{"info","info",NID_info,10,&(lvalues[3428]),0},
+{"favouriteDrink","favouriteDrink",NID_favouriteDrink,10,
+	&(lvalues[3438]),0},
+{"roomNumber","roomNumber",NID_roomNumber,10,&(lvalues[3448]),0},
+{"photo","photo",NID_photo,10,&(lvalues[3458]),0},
+{"userClass","userClass",NID_userClass,10,&(lvalues[3468]),0},
+{"host","host",NID_host,10,&(lvalues[3478]),0},
+{"manager","manager",NID_manager,10,&(lvalues[3488]),0},
+{"documentIdentifier","documentIdentifier",NID_documentIdentifier,10,
+	&(lvalues[3498]),0},
+{"documentTitle","documentTitle",NID_documentTitle,10,&(lvalues[3508]),0},
+{"documentVersion","documentVersion",NID_documentVersion,10,
+	&(lvalues[3518]),0},
+{"documentAuthor","documentAuthor",NID_documentAuthor,10,
+	&(lvalues[3528]),0},
+{"documentLocation","documentLocation",NID_documentLocation,10,
+	&(lvalues[3538]),0},
+{"homeTelephoneNumber","homeTelephoneNumber",NID_homeTelephoneNumber,
+	10,&(lvalues[3548]),0},
+{"secretary","secretary",NID_secretary,10,&(lvalues[3558]),0},
+{"otherMailbox","otherMailbox",NID_otherMailbox,10,&(lvalues[3568]),0},
+{"lastModifiedTime","lastModifiedTime",NID_lastModifiedTime,10,
+	&(lvalues[3578]),0},
+{"lastModifiedBy","lastModifiedBy",NID_lastModifiedBy,10,
+	&(lvalues[3588]),0},
+{"aRecord","aRecord",NID_aRecord,10,&(lvalues[3598]),0},
+{"pilotAttributeType27","pilotAttributeType27",
+	NID_pilotAttributeType27,10,&(lvalues[3608]),0},
+{"mXRecord","mXRecord",NID_mXRecord,10,&(lvalues[3618]),0},
+{"nSRecord","nSRecord",NID_nSRecord,10,&(lvalues[3628]),0},
+{"sOARecord","sOARecord",NID_sOARecord,10,&(lvalues[3638]),0},
+{"cNAMERecord","cNAMERecord",NID_cNAMERecord,10,&(lvalues[3648]),0},
+{"associatedDomain","associatedDomain",NID_associatedDomain,10,
+	&(lvalues[3658]),0},
+{"associatedName","associatedName",NID_associatedName,10,
+	&(lvalues[3668]),0},
+{"homePostalAddress","homePostalAddress",NID_homePostalAddress,10,
+	&(lvalues[3678]),0},
+{"personalTitle","personalTitle",NID_personalTitle,10,&(lvalues[3688]),0},
+{"mobileTelephoneNumber","mobileTelephoneNumber",
+	NID_mobileTelephoneNumber,10,&(lvalues[3698]),0},
+{"pagerTelephoneNumber","pagerTelephoneNumber",
+	NID_pagerTelephoneNumber,10,&(lvalues[3708]),0},
+{"friendlyCountryName","friendlyCountryName",NID_friendlyCountryName,
+	10,&(lvalues[3718]),0},
+{"organizationalStatus","organizationalStatus",
+	NID_organizationalStatus,10,&(lvalues[3728]),0},
+{"janetMailbox","janetMailbox",NID_janetMailbox,10,&(lvalues[3738]),0},
+{"mailPreferenceOption","mailPreferenceOption",
+	NID_mailPreferenceOption,10,&(lvalues[3748]),0},
+{"buildingName","buildingName",NID_buildingName,10,&(lvalues[3758]),0},
+{"dSAQuality","dSAQuality",NID_dSAQuality,10,&(lvalues[3768]),0},
+{"singleLevelQuality","singleLevelQuality",NID_singleLevelQuality,10,
+	&(lvalues[3778]),0},
+{"subtreeMinimumQuality","subtreeMinimumQuality",
+	NID_subtreeMinimumQuality,10,&(lvalues[3788]),0},
+{"subtreeMaximumQuality","subtreeMaximumQuality",
+	NID_subtreeMaximumQuality,10,&(lvalues[3798]),0},
+{"personalSignature","personalSignature",NID_personalSignature,10,
+	&(lvalues[3808]),0},
+{"dITRedirect","dITRedirect",NID_dITRedirect,10,&(lvalues[3818]),0},
+{"audio","audio",NID_audio,10,&(lvalues[3828]),0},
+{"documentPublisher","documentPublisher",NID_documentPublisher,10,
+	&(lvalues[3838]),0},
+{"x500UniqueIdentifier","x500UniqueIdentifier",
+	NID_x500UniqueIdentifier,3,&(lvalues[3848]),0},
+{"mime-mhs","MIME MHS",NID_mime_mhs,5,&(lvalues[3851]),0},
+{"mime-mhs-headings","mime-mhs-headings",NID_mime_mhs_headings,6,
+	&(lvalues[3856]),0},
+{"mime-mhs-bodies","mime-mhs-bodies",NID_mime_mhs_bodies,6,
+	&(lvalues[3862]),0},
+{"id-hex-partial-message","id-hex-partial-message",
+	NID_id_hex_partial_message,7,&(lvalues[3868]),0},
+{"id-hex-multipart-message","id-hex-multipart-message",
+	NID_id_hex_multipart_message,7,&(lvalues[3875]),0},
+{"generationQualifier","generationQualifier",NID_generationQualifier,
+	3,&(lvalues[3882]),0},
+{"pseudonym","pseudonym",NID_pseudonym,3,&(lvalues[3885]),0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{"id-set","Secure Electronic Transactions",NID_id_set,2,
+	&(lvalues[3888]),0},
+{"set-ctype","content types",NID_set_ctype,3,&(lvalues[3890]),0},
+{"set-msgExt","message extensions",NID_set_msgExt,3,&(lvalues[3893]),0},
+{"set-attr","set-attr",NID_set_attr,3,&(lvalues[3896]),0},
+{"set-policy","set-policy",NID_set_policy,3,&(lvalues[3899]),0},
+{"set-certExt","certificate extensions",NID_set_certExt,3,
+	&(lvalues[3902]),0},
+{"set-brand","set-brand",NID_set_brand,3,&(lvalues[3905]),0},
+{"setct-PANData","setct-PANData",NID_setct_PANData,4,&(lvalues[3908]),0},
+{"setct-PANToken","setct-PANToken",NID_setct_PANToken,4,
+	&(lvalues[3912]),0},
+{"setct-PANOnly","setct-PANOnly",NID_setct_PANOnly,4,&(lvalues[3916]),0},
+{"setct-OIData","setct-OIData",NID_setct_OIData,4,&(lvalues[3920]),0},
+{"setct-PI","setct-PI",NID_setct_PI,4,&(lvalues[3924]),0},
+{"setct-PIData","setct-PIData",NID_setct_PIData,4,&(lvalues[3928]),0},
+{"setct-PIDataUnsigned","setct-PIDataUnsigned",
+	NID_setct_PIDataUnsigned,4,&(lvalues[3932]),0},
+{"setct-HODInput","setct-HODInput",NID_setct_HODInput,4,
+	&(lvalues[3936]),0},
+{"setct-AuthResBaggage","setct-AuthResBaggage",
+	NID_setct_AuthResBaggage,4,&(lvalues[3940]),0},
+{"setct-AuthRevReqBaggage","setct-AuthRevReqBaggage",
+	NID_setct_AuthRevReqBaggage,4,&(lvalues[3944]),0},
+{"setct-AuthRevResBaggage","setct-AuthRevResBaggage",
+	NID_setct_AuthRevResBaggage,4,&(lvalues[3948]),0},
+{"setct-CapTokenSeq","setct-CapTokenSeq",NID_setct_CapTokenSeq,4,
+	&(lvalues[3952]),0},
+{"setct-PInitResData","setct-PInitResData",NID_setct_PInitResData,4,
+	&(lvalues[3956]),0},
+{"setct-PI-TBS","setct-PI-TBS",NID_setct_PI_TBS,4,&(lvalues[3960]),0},
+{"setct-PResData","setct-PResData",NID_setct_PResData,4,
+	&(lvalues[3964]),0},
+{"setct-AuthReqTBS","setct-AuthReqTBS",NID_setct_AuthReqTBS,4,
+	&(lvalues[3968]),0},
+{"setct-AuthResTBS","setct-AuthResTBS",NID_setct_AuthResTBS,4,
+	&(lvalues[3972]),0},
+{"setct-AuthResTBSX","setct-AuthResTBSX",NID_setct_AuthResTBSX,4,
+	&(lvalues[3976]),0},
+{"setct-AuthTokenTBS","setct-AuthTokenTBS",NID_setct_AuthTokenTBS,4,
+	&(lvalues[3980]),0},
+{"setct-CapTokenData","setct-CapTokenData",NID_setct_CapTokenData,4,
+	&(lvalues[3984]),0},
+{"setct-CapTokenTBS","setct-CapTokenTBS",NID_setct_CapTokenTBS,4,
+	&(lvalues[3988]),0},
+{"setct-AcqCardCodeMsg","setct-AcqCardCodeMsg",
+	NID_setct_AcqCardCodeMsg,4,&(lvalues[3992]),0},
+{"setct-AuthRevReqTBS","setct-AuthRevReqTBS",NID_setct_AuthRevReqTBS,
+	4,&(lvalues[3996]),0},
+{"setct-AuthRevResData","setct-AuthRevResData",
+	NID_setct_AuthRevResData,4,&(lvalues[4000]),0},
+{"setct-AuthRevResTBS","setct-AuthRevResTBS",NID_setct_AuthRevResTBS,
+	4,&(lvalues[4004]),0},
+{"setct-CapReqTBS","setct-CapReqTBS",NID_setct_CapReqTBS,4,
+	&(lvalues[4008]),0},
+{"setct-CapReqTBSX","setct-CapReqTBSX",NID_setct_CapReqTBSX,4,
+	&(lvalues[4012]),0},
+{"setct-CapResData","setct-CapResData",NID_setct_CapResData,4,
+	&(lvalues[4016]),0},
+{"setct-CapRevReqTBS","setct-CapRevReqTBS",NID_setct_CapRevReqTBS,4,
+	&(lvalues[4020]),0},
+{"setct-CapRevReqTBSX","setct-CapRevReqTBSX",NID_setct_CapRevReqTBSX,
+	4,&(lvalues[4024]),0},
+{"setct-CapRevResData","setct-CapRevResData",NID_setct_CapRevResData,
+	4,&(lvalues[4028]),0},
+{"setct-CredReqTBS","setct-CredReqTBS",NID_setct_CredReqTBS,4,
+	&(lvalues[4032]),0},
+{"setct-CredReqTBSX","setct-CredReqTBSX",NID_setct_CredReqTBSX,4,
+	&(lvalues[4036]),0},
+{"setct-CredResData","setct-CredResData",NID_setct_CredResData,4,
+	&(lvalues[4040]),0},
+{"setct-CredRevReqTBS","setct-CredRevReqTBS",NID_setct_CredRevReqTBS,
+	4,&(lvalues[4044]),0},
+{"setct-CredRevReqTBSX","setct-CredRevReqTBSX",
+	NID_setct_CredRevReqTBSX,4,&(lvalues[4048]),0},
+{"setct-CredRevResData","setct-CredRevResData",
+	NID_setct_CredRevResData,4,&(lvalues[4052]),0},
+{"setct-PCertReqData","setct-PCertReqData",NID_setct_PCertReqData,4,
+	&(lvalues[4056]),0},
+{"setct-PCertResTBS","setct-PCertResTBS",NID_setct_PCertResTBS,4,
+	&(lvalues[4060]),0},
+{"setct-BatchAdminReqData","setct-BatchAdminReqData",
+	NID_setct_BatchAdminReqData,4,&(lvalues[4064]),0},
+{"setct-BatchAdminResData","setct-BatchAdminResData",
+	NID_setct_BatchAdminResData,4,&(lvalues[4068]),0},
+{"setct-CardCInitResTBS","setct-CardCInitResTBS",
+	NID_setct_CardCInitResTBS,4,&(lvalues[4072]),0},
+{"setct-MeAqCInitResTBS","setct-MeAqCInitResTBS",
+	NID_setct_MeAqCInitResTBS,4,&(lvalues[4076]),0},
+{"setct-RegFormResTBS","setct-RegFormResTBS",NID_setct_RegFormResTBS,
+	4,&(lvalues[4080]),0},
+{"setct-CertReqData","setct-CertReqData",NID_setct_CertReqData,4,
+	&(lvalues[4084]),0},
+{"setct-CertReqTBS","setct-CertReqTBS",NID_setct_CertReqTBS,4,
+	&(lvalues[4088]),0},
+{"setct-CertResData","setct-CertResData",NID_setct_CertResData,4,
+	&(lvalues[4092]),0},
+{"setct-CertInqReqTBS","setct-CertInqReqTBS",NID_setct_CertInqReqTBS,
+	4,&(lvalues[4096]),0},
+{"setct-ErrorTBS","setct-ErrorTBS",NID_setct_ErrorTBS,4,
+	&(lvalues[4100]),0},
+{"setct-PIDualSignedTBE","setct-PIDualSignedTBE",
+	NID_setct_PIDualSignedTBE,4,&(lvalues[4104]),0},
+{"setct-PIUnsignedTBE","setct-PIUnsignedTBE",NID_setct_PIUnsignedTBE,
+	4,&(lvalues[4108]),0},
+{"setct-AuthReqTBE","setct-AuthReqTBE",NID_setct_AuthReqTBE,4,
+	&(lvalues[4112]),0},
+{"setct-AuthResTBE","setct-AuthResTBE",NID_setct_AuthResTBE,4,
+	&(lvalues[4116]),0},
+{"setct-AuthResTBEX","setct-AuthResTBEX",NID_setct_AuthResTBEX,4,
+	&(lvalues[4120]),0},
+{"setct-AuthTokenTBE","setct-AuthTokenTBE",NID_setct_AuthTokenTBE,4,
+	&(lvalues[4124]),0},
+{"setct-CapTokenTBE","setct-CapTokenTBE",NID_setct_CapTokenTBE,4,
+	&(lvalues[4128]),0},
+{"setct-CapTokenTBEX","setct-CapTokenTBEX",NID_setct_CapTokenTBEX,4,
+	&(lvalues[4132]),0},
+{"setct-AcqCardCodeMsgTBE","setct-AcqCardCodeMsgTBE",
+	NID_setct_AcqCardCodeMsgTBE,4,&(lvalues[4136]),0},
+{"setct-AuthRevReqTBE","setct-AuthRevReqTBE",NID_setct_AuthRevReqTBE,
+	4,&(lvalues[4140]),0},
+{"setct-AuthRevResTBE","setct-AuthRevResTBE",NID_setct_AuthRevResTBE,
+	4,&(lvalues[4144]),0},
+{"setct-AuthRevResTBEB","setct-AuthRevResTBEB",
+	NID_setct_AuthRevResTBEB,4,&(lvalues[4148]),0},
+{"setct-CapReqTBE","setct-CapReqTBE",NID_setct_CapReqTBE,4,
+	&(lvalues[4152]),0},
+{"setct-CapReqTBEX","setct-CapReqTBEX",NID_setct_CapReqTBEX,4,
+	&(lvalues[4156]),0},
+{"setct-CapResTBE","setct-CapResTBE",NID_setct_CapResTBE,4,
+	&(lvalues[4160]),0},
+{"setct-CapRevReqTBE","setct-CapRevReqTBE",NID_setct_CapRevReqTBE,4,
+	&(lvalues[4164]),0},
+{"setct-CapRevReqTBEX","setct-CapRevReqTBEX",NID_setct_CapRevReqTBEX,
+	4,&(lvalues[4168]),0},
+{"setct-CapRevResTBE","setct-CapRevResTBE",NID_setct_CapRevResTBE,4,
+	&(lvalues[4172]),0},
+{"setct-CredReqTBE","setct-CredReqTBE",NID_setct_CredReqTBE,4,
+	&(lvalues[4176]),0},
+{"setct-CredReqTBEX","setct-CredReqTBEX",NID_setct_CredReqTBEX,4,
+	&(lvalues[4180]),0},
+{"setct-CredResTBE","setct-CredResTBE",NID_setct_CredResTBE,4,
+	&(lvalues[4184]),0},
+{"setct-CredRevReqTBE","setct-CredRevReqTBE",NID_setct_CredRevReqTBE,
+	4,&(lvalues[4188]),0},
+{"setct-CredRevReqTBEX","setct-CredRevReqTBEX",
+	NID_setct_CredRevReqTBEX,4,&(lvalues[4192]),0},
+{"setct-CredRevResTBE","setct-CredRevResTBE",NID_setct_CredRevResTBE,
+	4,&(lvalues[4196]),0},
+{"setct-BatchAdminReqTBE","setct-BatchAdminReqTBE",
+	NID_setct_BatchAdminReqTBE,4,&(lvalues[4200]),0},
+{"setct-BatchAdminResTBE","setct-BatchAdminResTBE",
+	NID_setct_BatchAdminResTBE,4,&(lvalues[4204]),0},
+{"setct-RegFormReqTBE","setct-RegFormReqTBE",NID_setct_RegFormReqTBE,
+	4,&(lvalues[4208]),0},
+{"setct-CertReqTBE","setct-CertReqTBE",NID_setct_CertReqTBE,4,
+	&(lvalues[4212]),0},
+{"setct-CertReqTBEX","setct-CertReqTBEX",NID_setct_CertReqTBEX,4,
+	&(lvalues[4216]),0},
+{"setct-CertResTBE","setct-CertResTBE",NID_setct_CertResTBE,4,
+	&(lvalues[4220]),0},
+{"setct-CRLNotificationTBS","setct-CRLNotificationTBS",
+	NID_setct_CRLNotificationTBS,4,&(lvalues[4224]),0},
+{"setct-CRLNotificationResTBS","setct-CRLNotificationResTBS",
+	NID_setct_CRLNotificationResTBS,4,&(lvalues[4228]),0},
+{"setct-BCIDistributionTBS","setct-BCIDistributionTBS",
+	NID_setct_BCIDistributionTBS,4,&(lvalues[4232]),0},
+{"setext-genCrypt","generic cryptogram",NID_setext_genCrypt,4,
+	&(lvalues[4236]),0},
+{"setext-miAuth","merchant initiated auth",NID_setext_miAuth,4,
+	&(lvalues[4240]),0},
+{"setext-pinSecure","setext-pinSecure",NID_setext_pinSecure,4,
+	&(lvalues[4244]),0},
+{"setext-pinAny","setext-pinAny",NID_setext_pinAny,4,&(lvalues[4248]),0},
+{"setext-track2","setext-track2",NID_setext_track2,4,&(lvalues[4252]),0},
+{"setext-cv","additional verification",NID_setext_cv,4,
+	&(lvalues[4256]),0},
+{"set-policy-root","set-policy-root",NID_set_policy_root,4,
+	&(lvalues[4260]),0},
+{"setCext-hashedRoot","setCext-hashedRoot",NID_setCext_hashedRoot,4,
+	&(lvalues[4264]),0},
+{"setCext-certType","setCext-certType",NID_setCext_certType,4,
+	&(lvalues[4268]),0},
+{"setCext-merchData","setCext-merchData",NID_setCext_merchData,4,
+	&(lvalues[4272]),0},
+{"setCext-cCertRequired","setCext-cCertRequired",
+	NID_setCext_cCertRequired,4,&(lvalues[4276]),0},
+{"setCext-tunneling","setCext-tunneling",NID_setCext_tunneling,4,
+	&(lvalues[4280]),0},
+{"setCext-setExt","setCext-setExt",NID_setCext_setExt,4,
+	&(lvalues[4284]),0},
+{"setCext-setQualf","setCext-setQualf",NID_setCext_setQualf,4,
+	&(lvalues[4288]),0},
+{"setCext-PGWYcapabilities","setCext-PGWYcapabilities",
+	NID_setCext_PGWYcapabilities,4,&(lvalues[4292]),0},
+{"setCext-TokenIdentifier","setCext-TokenIdentifier",
+	NID_setCext_TokenIdentifier,4,&(lvalues[4296]),0},
+{"setCext-Track2Data","setCext-Track2Data",NID_setCext_Track2Data,4,
+	&(lvalues[4300]),0},
+{"setCext-TokenType","setCext-TokenType",NID_setCext_TokenType,4,
+	&(lvalues[4304]),0},
+{"setCext-IssuerCapabilities","setCext-IssuerCapabilities",
+	NID_setCext_IssuerCapabilities,4,&(lvalues[4308]),0},
+{"setAttr-Cert","setAttr-Cert",NID_setAttr_Cert,4,&(lvalues[4312]),0},
+{"setAttr-PGWYcap","payment gateway capabilities",NID_setAttr_PGWYcap,
+	4,&(lvalues[4316]),0},
+{"setAttr-TokenType","setAttr-TokenType",NID_setAttr_TokenType,4,
+	&(lvalues[4320]),0},
+{"setAttr-IssCap","issuer capabilities",NID_setAttr_IssCap,4,
+	&(lvalues[4324]),0},
+{"set-rootKeyThumb","set-rootKeyThumb",NID_set_rootKeyThumb,5,
+	&(lvalues[4328]),0},
+{"set-addPolicy","set-addPolicy",NID_set_addPolicy,5,&(lvalues[4333]),0},
+{"setAttr-Token-EMV","setAttr-Token-EMV",NID_setAttr_Token_EMV,5,
+	&(lvalues[4338]),0},
+{"setAttr-Token-B0Prime","setAttr-Token-B0Prime",
+	NID_setAttr_Token_B0Prime,5,&(lvalues[4343]),0},
+{"setAttr-IssCap-CVM","setAttr-IssCap-CVM",NID_setAttr_IssCap_CVM,5,
+	&(lvalues[4348]),0},
+{"setAttr-IssCap-T2","setAttr-IssCap-T2",NID_setAttr_IssCap_T2,5,
+	&(lvalues[4353]),0},
+{"setAttr-IssCap-Sig","setAttr-IssCap-Sig",NID_setAttr_IssCap_Sig,5,
+	&(lvalues[4358]),0},
+{"setAttr-GenCryptgrm","generate cryptogram",NID_setAttr_GenCryptgrm,
+	6,&(lvalues[4363]),0},
+{"setAttr-T2Enc","encrypted track 2",NID_setAttr_T2Enc,6,
+	&(lvalues[4369]),0},
+{"setAttr-T2cleartxt","cleartext track 2",NID_setAttr_T2cleartxt,6,
+	&(lvalues[4375]),0},
+{"setAttr-TokICCsig","ICC or token signature",NID_setAttr_TokICCsig,6,
+	&(lvalues[4381]),0},
+{"setAttr-SecDevSig","secure device signature",NID_setAttr_SecDevSig,
+	6,&(lvalues[4387]),0},
+{"set-brand-IATA-ATA","set-brand-IATA-ATA",NID_set_brand_IATA_ATA,4,
+	&(lvalues[4393]),0},
+{"set-brand-Diners","set-brand-Diners",NID_set_brand_Diners,4,
+	&(lvalues[4397]),0},
+{"set-brand-AmericanExpress","set-brand-AmericanExpress",
+	NID_set_brand_AmericanExpress,4,&(lvalues[4401]),0},
+{"set-brand-JCB","set-brand-JCB",NID_set_brand_JCB,4,&(lvalues[4405]),0},
+{"set-brand-Visa","set-brand-Visa",NID_set_brand_Visa,4,
+	&(lvalues[4409]),0},
+{"set-brand-MasterCard","set-brand-MasterCard",
+	NID_set_brand_MasterCard,4,&(lvalues[4413]),0},
+{"set-brand-Novus","set-brand-Novus",NID_set_brand_Novus,5,
+	&(lvalues[4417]),0},
+{"DES-CDMF","des-cdmf",NID_des_cdmf,8,&(lvalues[4422]),0},
+{"rsaOAEPEncryptionSET","rsaOAEPEncryptionSET",
+	NID_rsaOAEPEncryptionSET,9,&(lvalues[4430]),0},
+{"ITU-T","itu-t",NID_itu_t,1,&(lvalues[4439]),0},
+{"JOINT-ISO-ITU-T","joint-iso-itu-t",NID_joint_iso_itu_t,1,
+	&(lvalues[4440]),0},
+{"international-organizations","International Organizations",
+	NID_international_organizations,1,&(lvalues[4441]),0},
+{"msSmartcardLogin","Microsoft Smartcardlogin",NID_ms_smartcard_login,
+	10,&(lvalues[4442]),0},
+{"msUPN","Microsoft Universal Principal Name",NID_ms_upn,10,
+	&(lvalues[4452]),0},
+{"AES-128-CFB1","aes-128-cfb1",NID_aes_128_cfb1,0,NULL,0},
+{"AES-192-CFB1","aes-192-cfb1",NID_aes_192_cfb1,0,NULL,0},
+{"AES-256-CFB1","aes-256-cfb1",NID_aes_256_cfb1,0,NULL,0},
+{"AES-128-CFB8","aes-128-cfb8",NID_aes_128_cfb8,0,NULL,0},
+{"AES-192-CFB8","aes-192-cfb8",NID_aes_192_cfb8,0,NULL,0},
+{"AES-256-CFB8","aes-256-cfb8",NID_aes_256_cfb8,0,NULL,0},
+{"DES-CFB1","des-cfb1",NID_des_cfb1,0,NULL,0},
+{"DES-CFB8","des-cfb8",NID_des_cfb8,0,NULL,0},
+{"DES-EDE3-CFB1","des-ede3-cfb1",NID_des_ede3_cfb1,0,NULL,0},
+{"DES-EDE3-CFB8","des-ede3-cfb8",NID_des_ede3_cfb8,0,NULL,0},
+{"street","streetAddress",NID_streetAddress,3,&(lvalues[4462]),0},
+{"postalCode","postalCode",NID_postalCode,3,&(lvalues[4465]),0},
+{"id-ppl","id-ppl",NID_id_ppl,7,&(lvalues[4468]),0},
+{"proxyCertInfo","Proxy Certificate Information",NID_proxyCertInfo,8,
+	&(lvalues[4475]),0},
+{"id-ppl-anyLanguage","Any language",NID_id_ppl_anyLanguage,8,
+	&(lvalues[4483]),0},
+{"id-ppl-inheritAll","Inherit all",NID_id_ppl_inheritAll,8,
+	&(lvalues[4491]),0},
+{"nameConstraints","X509v3 Name Constraints",NID_name_constraints,3,
+	&(lvalues[4499]),0},
+{"id-ppl-independent","Independent",NID_Independent,8,&(lvalues[4502]),0},
+{"RSA-SHA256","sha256WithRSAEncryption",NID_sha256WithRSAEncryption,9,
+	&(lvalues[4510]),0},
+{"RSA-SHA384","sha384WithRSAEncryption",NID_sha384WithRSAEncryption,9,
+	&(lvalues[4519]),0},
+{"RSA-SHA512","sha512WithRSAEncryption",NID_sha512WithRSAEncryption,9,
+	&(lvalues[4528]),0},
+{"RSA-SHA224","sha224WithRSAEncryption",NID_sha224WithRSAEncryption,9,
+	&(lvalues[4537]),0},
+{"SHA256","sha256",NID_sha256,9,&(lvalues[4546]),0},
+{"SHA384","sha384",NID_sha384,9,&(lvalues[4555]),0},
+{"SHA512","sha512",NID_sha512,9,&(lvalues[4564]),0},
+{"SHA224","sha224",NID_sha224,9,&(lvalues[4573]),0},
+{"identified-organization","identified-organization",
+	NID_identified_organization,1,&(lvalues[4582]),0},
+{"certicom-arc","certicom-arc",NID_certicom_arc,3,&(lvalues[4583]),0},
+{"wap","wap",NID_wap,2,&(lvalues[4586]),0},
+{"wap-wsg","wap-wsg",NID_wap_wsg,3,&(lvalues[4588]),0},
+{"id-characteristic-two-basis","id-characteristic-two-basis",
+	NID_X9_62_id_characteristic_two_basis,8,&(lvalues[4591]),0},
+{"onBasis","onBasis",NID_X9_62_onBasis,9,&(lvalues[4599]),0},
+{"tpBasis","tpBasis",NID_X9_62_tpBasis,9,&(lvalues[4608]),0},
+{"ppBasis","ppBasis",NID_X9_62_ppBasis,9,&(lvalues[4617]),0},
+{"c2pnb163v1","c2pnb163v1",NID_X9_62_c2pnb163v1,8,&(lvalues[4626]),0},
+{"c2pnb163v2","c2pnb163v2",NID_X9_62_c2pnb163v2,8,&(lvalues[4634]),0},
+{"c2pnb163v3","c2pnb163v3",NID_X9_62_c2pnb163v3,8,&(lvalues[4642]),0},
+{"c2pnb176v1","c2pnb176v1",NID_X9_62_c2pnb176v1,8,&(lvalues[4650]),0},
+{"c2tnb191v1","c2tnb191v1",NID_X9_62_c2tnb191v1,8,&(lvalues[4658]),0},
+{"c2tnb191v2","c2tnb191v2",NID_X9_62_c2tnb191v2,8,&(lvalues[4666]),0},
+{"c2tnb191v3","c2tnb191v3",NID_X9_62_c2tnb191v3,8,&(lvalues[4674]),0},
+{"c2onb191v4","c2onb191v4",NID_X9_62_c2onb191v4,8,&(lvalues[4682]),0},
+{"c2onb191v5","c2onb191v5",NID_X9_62_c2onb191v5,8,&(lvalues[4690]),0},
+{"c2pnb208w1","c2pnb208w1",NID_X9_62_c2pnb208w1,8,&(lvalues[4698]),0},
+{"c2tnb239v1","c2tnb239v1",NID_X9_62_c2tnb239v1,8,&(lvalues[4706]),0},
+{"c2tnb239v2","c2tnb239v2",NID_X9_62_c2tnb239v2,8,&(lvalues[4714]),0},
+{"c2tnb239v3","c2tnb239v3",NID_X9_62_c2tnb239v3,8,&(lvalues[4722]),0},
+{"c2onb239v4","c2onb239v4",NID_X9_62_c2onb239v4,8,&(lvalues[4730]),0},
+{"c2onb239v5","c2onb239v5",NID_X9_62_c2onb239v5,8,&(lvalues[4738]),0},
+{"c2pnb272w1","c2pnb272w1",NID_X9_62_c2pnb272w1,8,&(lvalues[4746]),0},
+{"c2pnb304w1","c2pnb304w1",NID_X9_62_c2pnb304w1,8,&(lvalues[4754]),0},
+{"c2tnb359v1","c2tnb359v1",NID_X9_62_c2tnb359v1,8,&(lvalues[4762]),0},
+{"c2pnb368w1","c2pnb368w1",NID_X9_62_c2pnb368w1,8,&(lvalues[4770]),0},
+{"c2tnb431r1","c2tnb431r1",NID_X9_62_c2tnb431r1,8,&(lvalues[4778]),0},
+{"secp112r1","secp112r1",NID_secp112r1,5,&(lvalues[4786]),0},
+{"secp112r2","secp112r2",NID_secp112r2,5,&(lvalues[4791]),0},
+{"secp128r1","secp128r1",NID_secp128r1,5,&(lvalues[4796]),0},
+{"secp128r2","secp128r2",NID_secp128r2,5,&(lvalues[4801]),0},
+{"secp160k1","secp160k1",NID_secp160k1,5,&(lvalues[4806]),0},
+{"secp160r1","secp160r1",NID_secp160r1,5,&(lvalues[4811]),0},
+{"secp160r2","secp160r2",NID_secp160r2,5,&(lvalues[4816]),0},
+{"secp192k1","secp192k1",NID_secp192k1,5,&(lvalues[4821]),0},
+{"secp224k1","secp224k1",NID_secp224k1,5,&(lvalues[4826]),0},
+{"secp224r1","secp224r1",NID_secp224r1,5,&(lvalues[4831]),0},
+{"secp256k1","secp256k1",NID_secp256k1,5,&(lvalues[4836]),0},
+{"secp384r1","secp384r1",NID_secp384r1,5,&(lvalues[4841]),0},
+{"secp521r1","secp521r1",NID_secp521r1,5,&(lvalues[4846]),0},
+{"sect113r1","sect113r1",NID_sect113r1,5,&(lvalues[4851]),0},
+{"sect113r2","sect113r2",NID_sect113r2,5,&(lvalues[4856]),0},
+{"sect131r1","sect131r1",NID_sect131r1,5,&(lvalues[4861]),0},
+{"sect131r2","sect131r2",NID_sect131r2,5,&(lvalues[4866]),0},
+{"sect163k1","sect163k1",NID_sect163k1,5,&(lvalues[4871]),0},
+{"sect163r1","sect163r1",NID_sect163r1,5,&(lvalues[4876]),0},
+{"sect163r2","sect163r2",NID_sect163r2,5,&(lvalues[4881]),0},
+{"sect193r1","sect193r1",NID_sect193r1,5,&(lvalues[4886]),0},
+{"sect193r2","sect193r2",NID_sect193r2,5,&(lvalues[4891]),0},
+{"sect233k1","sect233k1",NID_sect233k1,5,&(lvalues[4896]),0},
+{"sect233r1","sect233r1",NID_sect233r1,5,&(lvalues[4901]),0},
+{"sect239k1","sect239k1",NID_sect239k1,5,&(lvalues[4906]),0},
+{"sect283k1","sect283k1",NID_sect283k1,5,&(lvalues[4911]),0},
+{"sect283r1","sect283r1",NID_sect283r1,5,&(lvalues[4916]),0},
+{"sect409k1","sect409k1",NID_sect409k1,5,&(lvalues[4921]),0},
+{"sect409r1","sect409r1",NID_sect409r1,5,&(lvalues[4926]),0},
+{"sect571k1","sect571k1",NID_sect571k1,5,&(lvalues[4931]),0},
+{"sect571r1","sect571r1",NID_sect571r1,5,&(lvalues[4936]),0},
+{"wap-wsg-idm-ecid-wtls1","wap-wsg-idm-ecid-wtls1",
+	NID_wap_wsg_idm_ecid_wtls1,5,&(lvalues[4941]),0},
+{"wap-wsg-idm-ecid-wtls3","wap-wsg-idm-ecid-wtls3",
+	NID_wap_wsg_idm_ecid_wtls3,5,&(lvalues[4946]),0},
+{"wap-wsg-idm-ecid-wtls4","wap-wsg-idm-ecid-wtls4",
+	NID_wap_wsg_idm_ecid_wtls4,5,&(lvalues[4951]),0},
+{"wap-wsg-idm-ecid-wtls5","wap-wsg-idm-ecid-wtls5",
+	NID_wap_wsg_idm_ecid_wtls5,5,&(lvalues[4956]),0},
+{"wap-wsg-idm-ecid-wtls6","wap-wsg-idm-ecid-wtls6",
+	NID_wap_wsg_idm_ecid_wtls6,5,&(lvalues[4961]),0},
+{"wap-wsg-idm-ecid-wtls7","wap-wsg-idm-ecid-wtls7",
+	NID_wap_wsg_idm_ecid_wtls7,5,&(lvalues[4966]),0},
+{"wap-wsg-idm-ecid-wtls8","wap-wsg-idm-ecid-wtls8",
+	NID_wap_wsg_idm_ecid_wtls8,5,&(lvalues[4971]),0},
+{"wap-wsg-idm-ecid-wtls9","wap-wsg-idm-ecid-wtls9",
+	NID_wap_wsg_idm_ecid_wtls9,5,&(lvalues[4976]),0},
+{"wap-wsg-idm-ecid-wtls10","wap-wsg-idm-ecid-wtls10",
+	NID_wap_wsg_idm_ecid_wtls10,5,&(lvalues[4981]),0},
+{"wap-wsg-idm-ecid-wtls11","wap-wsg-idm-ecid-wtls11",
+	NID_wap_wsg_idm_ecid_wtls11,5,&(lvalues[4986]),0},
+{"wap-wsg-idm-ecid-wtls12","wap-wsg-idm-ecid-wtls12",
+	NID_wap_wsg_idm_ecid_wtls12,5,&(lvalues[4991]),0},
+{"anyPolicy","X509v3 Any Policy",NID_any_policy,4,&(lvalues[4996]),0},
+{"policyMappings","X509v3 Policy Mappings",NID_policy_mappings,3,
+	&(lvalues[5000]),0},
+{"inhibitAnyPolicy","X509v3 Inhibit Any Policy",
+	NID_inhibit_any_policy,3,&(lvalues[5003]),0},
+{"Oakley-EC2N-3","ipsec3",NID_ipsec3,0,NULL,0},
+{"Oakley-EC2N-4","ipsec4",NID_ipsec4,0,NULL,0},
+{"CAMELLIA-128-CBC","camellia-128-cbc",NID_camellia_128_cbc,11,
+	&(lvalues[5006]),0},
+{"CAMELLIA-192-CBC","camellia-192-cbc",NID_camellia_192_cbc,11,
+	&(lvalues[5017]),0},
+{"CAMELLIA-256-CBC","camellia-256-cbc",NID_camellia_256_cbc,11,
+	&(lvalues[5028]),0},
+{"CAMELLIA-128-ECB","camellia-128-ecb",NID_camellia_128_ecb,8,
+	&(lvalues[5039]),0},
+{"CAMELLIA-192-ECB","camellia-192-ecb",NID_camellia_192_ecb,8,
+	&(lvalues[5047]),0},
+{"CAMELLIA-256-ECB","camellia-256-ecb",NID_camellia_256_ecb,8,
+	&(lvalues[5055]),0},
+{"CAMELLIA-128-CFB","camellia-128-cfb",NID_camellia_128_cfb128,8,
+	&(lvalues[5063]),0},
+{"CAMELLIA-192-CFB","camellia-192-cfb",NID_camellia_192_cfb128,8,
+	&(lvalues[5071]),0},
+{"CAMELLIA-256-CFB","camellia-256-cfb",NID_camellia_256_cfb128,8,
+	&(lvalues[5079]),0},
+{"CAMELLIA-128-CFB1","camellia-128-cfb1",NID_camellia_128_cfb1,0,NULL,0},
+{"CAMELLIA-192-CFB1","camellia-192-cfb1",NID_camellia_192_cfb1,0,NULL,0},
+{"CAMELLIA-256-CFB1","camellia-256-cfb1",NID_camellia_256_cfb1,0,NULL,0},
+{"CAMELLIA-128-CFB8","camellia-128-cfb8",NID_camellia_128_cfb8,0,NULL,0},
+{"CAMELLIA-192-CFB8","camellia-192-cfb8",NID_camellia_192_cfb8,0,NULL,0},
+{"CAMELLIA-256-CFB8","camellia-256-cfb8",NID_camellia_256_cfb8,0,NULL,0},
+{"CAMELLIA-128-OFB","camellia-128-ofb",NID_camellia_128_ofb128,8,
+	&(lvalues[5087]),0},
+{"CAMELLIA-192-OFB","camellia-192-ofb",NID_camellia_192_ofb128,8,
+	&(lvalues[5095]),0},
+{"CAMELLIA-256-OFB","camellia-256-ofb",NID_camellia_256_ofb128,8,
+	&(lvalues[5103]),0},
+{"subjectDirectoryAttributes","X509v3 Subject Directory Attributes",
+	NID_subject_directory_attributes,3,&(lvalues[5111]),0},
+{"issuingDistributionPoint","X509v3 Issuing Distrubution Point",
+	NID_issuing_distribution_point,3,&(lvalues[5114]),0},
+{"certificateIssuer","X509v3 Certificate Issuer",
+	NID_certificate_issuer,3,&(lvalues[5117]),0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{"KISA","kisa",NID_kisa,6,&(lvalues[5120]),0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{NULL,NULL,NID_undef,0,NULL,0},
+{"SEED-ECB","seed-ecb",NID_seed_ecb,8,&(lvalues[5126]),0},
+{"SEED-CBC","seed-cbc",NID_seed_cbc,8,&(lvalues[5134]),0},
+{"SEED-OFB","seed-ofb",NID_seed_ofb128,8,&(lvalues[5142]),0},
+{"SEED-CFB","seed-cfb",NID_seed_cfb128,8,&(lvalues[5150]),0},
+{"HMAC-MD5","hmac-md5",NID_hmac_md5,8,&(lvalues[5158]),0},
+{"HMAC-SHA1","hmac-sha1",NID_hmac_sha1,8,&(lvalues[5166]),0},
+{"id-PasswordBasedMAC","password based MAC",NID_id_PasswordBasedMAC,9,
+	&(lvalues[5174]),0},
+{"id-DHBasedMac","Diffie-Hellman based MAC",NID_id_DHBasedMac,9,
+	&(lvalues[5183]),0},
+{"id-it-suppLangTags","id-it-suppLangTags",NID_id_it_suppLangTags,8,
+	&(lvalues[5192]),0},
+{"caRepository","CA Repository",NID_caRepository,8,&(lvalues[5200]),0},
+{"id-smime-ct-compressedData","id-smime-ct-compressedData",
+	NID_id_smime_ct_compressedData,11,&(lvalues[5208]),0},
+{"id-ct-asciiTextWithCRLF","id-ct-asciiTextWithCRLF",
+	NID_id_ct_asciiTextWithCRLF,11,&(lvalues[5219]),0},
+{"id-aes128-wrap","id-aes128-wrap",NID_id_aes128_wrap,9,
+	&(lvalues[5230]),0},
+{"id-aes192-wrap","id-aes192-wrap",NID_id_aes192_wrap,9,
+	&(lvalues[5239]),0},
+{"id-aes256-wrap","id-aes256-wrap",NID_id_aes256_wrap,9,
+	&(lvalues[5248]),0},
+{"ecdsa-with-Recommended","ecdsa-with-Recommended",
+	NID_ecdsa_with_Recommended,7,&(lvalues[5257]),0},
+{"ecdsa-with-Specified","ecdsa-with-Specified",
+	NID_ecdsa_with_Specified,7,&(lvalues[5264]),0},
+{"ecdsa-with-SHA224","ecdsa-with-SHA224",NID_ecdsa_with_SHA224,8,
+	&(lvalues[5271]),0},
+{"ecdsa-with-SHA256","ecdsa-with-SHA256",NID_ecdsa_with_SHA256,8,
+	&(lvalues[5279]),0},
+{"ecdsa-with-SHA384","ecdsa-with-SHA384",NID_ecdsa_with_SHA384,8,
+	&(lvalues[5287]),0},
+{"ecdsa-with-SHA512","ecdsa-with-SHA512",NID_ecdsa_with_SHA512,8,
+	&(lvalues[5295]),0},
+{"hmacWithMD5","hmacWithMD5",NID_hmacWithMD5,8,&(lvalues[5303]),0},
+{"hmacWithSHA224","hmacWithSHA224",NID_hmacWithSHA224,8,
+	&(lvalues[5311]),0},
+{"hmacWithSHA256","hmacWithSHA256",NID_hmacWithSHA256,8,
+	&(lvalues[5319]),0},
+{"hmacWithSHA384","hmacWithSHA384",NID_hmacWithSHA384,8,
+	&(lvalues[5327]),0},
+{"hmacWithSHA512","hmacWithSHA512",NID_hmacWithSHA512,8,
+	&(lvalues[5335]),0},
+{"dsa_with_SHA224","dsa_with_SHA224",NID_dsa_with_SHA224,9,
+	&(lvalues[5343]),0},
+{"dsa_with_SHA256","dsa_with_SHA256",NID_dsa_with_SHA256,9,
+	&(lvalues[5352]),0},
+{"whirlpool","whirlpool",NID_whirlpool,6,&(lvalues[5361]),0},
+{"cryptopro","cryptopro",NID_cryptopro,5,&(lvalues[5367]),0},
+{"cryptocom","cryptocom",NID_cryptocom,5,&(lvalues[5372]),0},
+{"id-GostR3411-94-with-GostR3410-2001",
+	"GOST R 34.11-94 with GOST R 34.10-2001",
+	NID_id_GostR3411_94_with_GostR3410_2001,6,&(lvalues[5377]),0},
+{"id-GostR3411-94-with-GostR3410-94",
+	"GOST R 34.11-94 with GOST R 34.10-94",
+	NID_id_GostR3411_94_with_GostR3410_94,6,&(lvalues[5383]),0},
+{"md_gost94","GOST R 34.11-94",NID_id_GostR3411_94,6,&(lvalues[5389]),0},
+{"id-HMACGostR3411-94","HMAC GOST 34.11-94",NID_id_HMACGostR3411_94,6,
+	&(lvalues[5395]),0},
+{"gost2001","GOST R 34.10-2001",NID_id_GostR3410_2001,6,
+	&(lvalues[5401]),0},
+{"gost94","GOST R 34.10-94",NID_id_GostR3410_94,6,&(lvalues[5407]),0},
+{"gost89","GOST 28147-89",NID_id_Gost28147_89,6,&(lvalues[5413]),0},
+{"gost89-cnt","gost89-cnt",NID_gost89_cnt,0,NULL,0},
+{"gost-mac","GOST 28147-89 MAC",NID_id_Gost28147_89_MAC,6,
+	&(lvalues[5419]),0},
+{"prf-gostr3411-94","GOST R 34.11-94 PRF",NID_id_GostR3411_94_prf,6,
+	&(lvalues[5425]),0},
+{"id-GostR3410-2001DH","GOST R 34.10-2001 DH",NID_id_GostR3410_2001DH,
+	6,&(lvalues[5431]),0},
+{"id-GostR3410-94DH","GOST R 34.10-94 DH",NID_id_GostR3410_94DH,6,
+	&(lvalues[5437]),0},
+{"id-Gost28147-89-CryptoPro-KeyMeshing",
+	"id-Gost28147-89-CryptoPro-KeyMeshing",
+	NID_id_Gost28147_89_CryptoPro_KeyMeshing,7,&(lvalues[5443]),0},
+{"id-Gost28147-89-None-KeyMeshing","id-Gost28147-89-None-KeyMeshing",
+	NID_id_Gost28147_89_None_KeyMeshing,7,&(lvalues[5450]),0},
+{"id-GostR3411-94-TestParamSet","id-GostR3411-94-TestParamSet",
+	NID_id_GostR3411_94_TestParamSet,7,&(lvalues[5457]),0},
+{"id-GostR3411-94-CryptoProParamSet",
+	"id-GostR3411-94-CryptoProParamSet",
+	NID_id_GostR3411_94_CryptoProParamSet,7,&(lvalues[5464]),0},
+{"id-Gost28147-89-TestParamSet","id-Gost28147-89-TestParamSet",
+	NID_id_Gost28147_89_TestParamSet,7,&(lvalues[5471]),0},
+{"id-Gost28147-89-CryptoPro-A-ParamSet",
+	"id-Gost28147-89-CryptoPro-A-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_A_ParamSet,7,&(lvalues[5478]),0},
+{"id-Gost28147-89-CryptoPro-B-ParamSet",
+	"id-Gost28147-89-CryptoPro-B-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_B_ParamSet,7,&(lvalues[5485]),0},
+{"id-Gost28147-89-CryptoPro-C-ParamSet",
+	"id-Gost28147-89-CryptoPro-C-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_C_ParamSet,7,&(lvalues[5492]),0},
+{"id-Gost28147-89-CryptoPro-D-ParamSet",
+	"id-Gost28147-89-CryptoPro-D-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_D_ParamSet,7,&(lvalues[5499]),0},
+{"id-Gost28147-89-CryptoPro-Oscar-1-1-ParamSet",
+	"id-Gost28147-89-CryptoPro-Oscar-1-1-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet,7,&(lvalues[5506]),
+	0},
+{"id-Gost28147-89-CryptoPro-Oscar-1-0-ParamSet",
+	"id-Gost28147-89-CryptoPro-Oscar-1-0-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet,7,&(lvalues[5513]),
+	0},
+{"id-Gost28147-89-CryptoPro-RIC-1-ParamSet",
+	"id-Gost28147-89-CryptoPro-RIC-1-ParamSet",
+	NID_id_Gost28147_89_CryptoPro_RIC_1_ParamSet,7,&(lvalues[5520]),0},
+{"id-GostR3410-94-TestParamSet","id-GostR3410-94-TestParamSet",
+	NID_id_GostR3410_94_TestParamSet,7,&(lvalues[5527]),0},
+{"id-GostR3410-94-CryptoPro-A-ParamSet",
+	"id-GostR3410-94-CryptoPro-A-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_A_ParamSet,7,&(lvalues[5534]),0},
+{"id-GostR3410-94-CryptoPro-B-ParamSet",
+	"id-GostR3410-94-CryptoPro-B-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_B_ParamSet,7,&(lvalues[5541]),0},
+{"id-GostR3410-94-CryptoPro-C-ParamSet",
+	"id-GostR3410-94-CryptoPro-C-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_C_ParamSet,7,&(lvalues[5548]),0},
+{"id-GostR3410-94-CryptoPro-D-ParamSet",
+	"id-GostR3410-94-CryptoPro-D-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_D_ParamSet,7,&(lvalues[5555]),0},
+{"id-GostR3410-94-CryptoPro-XchA-ParamSet",
+	"id-GostR3410-94-CryptoPro-XchA-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_XchA_ParamSet,7,&(lvalues[5562]),0},
+{"id-GostR3410-94-CryptoPro-XchB-ParamSet",
+	"id-GostR3410-94-CryptoPro-XchB-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_XchB_ParamSet,7,&(lvalues[5569]),0},
+{"id-GostR3410-94-CryptoPro-XchC-ParamSet",
+	"id-GostR3410-94-CryptoPro-XchC-ParamSet",
+	NID_id_GostR3410_94_CryptoPro_XchC_ParamSet,7,&(lvalues[5576]),0},
+{"id-GostR3410-2001-TestParamSet","id-GostR3410-2001-TestParamSet",
+	NID_id_GostR3410_2001_TestParamSet,7,&(lvalues[5583]),0},
+{"id-GostR3410-2001-CryptoPro-A-ParamSet",
+	"id-GostR3410-2001-CryptoPro-A-ParamSet",
+	NID_id_GostR3410_2001_CryptoPro_A_ParamSet,7,&(lvalues[5590]),0},
+{"id-GostR3410-2001-CryptoPro-B-ParamSet",
+	"id-GostR3410-2001-CryptoPro-B-ParamSet",
+	NID_id_GostR3410_2001_CryptoPro_B_ParamSet,7,&(lvalues[5597]),0},
+{"id-GostR3410-2001-CryptoPro-C-ParamSet",
+	"id-GostR3410-2001-CryptoPro-C-ParamSet",
+	NID_id_GostR3410_2001_CryptoPro_C_ParamSet,7,&(lvalues[5604]),0},
+{"id-GostR3410-2001-CryptoPro-XchA-ParamSet",
+	"id-GostR3410-2001-CryptoPro-XchA-ParamSet",
+	NID_id_GostR3410_2001_CryptoPro_XchA_ParamSet,7,&(lvalues[5611]),0},
+=09
+{"id-GostR3410-2001-CryptoPro-XchB-ParamSet",
+	"id-GostR3410-2001-CryptoPro-XchB-ParamSet",
+	NID_id_GostR3410_2001_CryptoPro_XchB_ParamSet,7,&(lvalues[5618]),0},
+=09
+{"id-GostR3410-94-a","id-GostR3410-94-a",NID_id_GostR3410_94_a,7,
+	&(lvalues[5625]),0},
+{"id-GostR3410-94-aBis","id-GostR3410-94-aBis",
+	NID_id_GostR3410_94_aBis,7,&(lvalues[5632]),0},
+{"id-GostR3410-94-b","id-GostR3410-94-b",NID_id_GostR3410_94_b,7,
+	&(lvalues[5639]),0},
+{"id-GostR3410-94-bBis","id-GostR3410-94-bBis",
+	NID_id_GostR3410_94_bBis,7,&(lvalues[5646]),0},
+{"id-Gost28147-89-cc","GOST 28147-89 Cryptocom ParamSet",
+	NID_id_Gost28147_89_cc,8,&(lvalues[5653]),0},
+{"gost94cc","GOST 34.10-94 Cryptocom",NID_id_GostR3410_94_cc,8,
+	&(lvalues[5661]),0},
+{"gost2001cc","GOST 34.10-2001 Cryptocom",NID_id_GostR3410_2001_cc,8,
+	&(lvalues[5669]),0},
+{"id-GostR3411-94-with-GostR3410-94-cc",
+	"GOST R 34.11-94 with GOST R 34.10-94 Cryptocom",
+	NID_id_GostR3411_94_with_GostR3410_94_cc,8,&(lvalues[5677]),0},
+{"id-GostR3411-94-with-GostR3410-2001-cc",
+	"GOST R 34.11-94 with GOST R 34.10-2001 Cryptocom",
+	NID_id_GostR3411_94_with_GostR3410_2001_cc,8,&(lvalues[5685]),0},
+{"id-GostR3410-2001-ParamSet-cc",
+	"GOST R 3410-2001 Parameter Set Cryptocom",
+	NID_id_GostR3410_2001_ParamSet_cc,8,&(lvalues[5693]),0},
+{"HMAC","hmac",NID_hmac,0,NULL,0},
+{"LocalKeySet","Microsoft Local Key set",NID_LocalKeySet,9,
+	&(lvalues[5701]),0},
+{"freshestCRL","X509v3 Freshest CRL",NID_freshest_crl,3,
+	&(lvalues[5710]),0},
+{"id-on-permanentIdentifier","Permanent Identifier",
+	NID_id_on_permanentIdentifier,8,&(lvalues[5713]),0},
+{"searchGuide","searchGuide",NID_searchGuide,3,&(lvalues[5721]),0},
+{"businessCategory","businessCategory",NID_businessCategory,3,
+	&(lvalues[5724]),0},
+{"postalAddress","postalAddress",NID_postalAddress,3,&(lvalues[5727]),0},
+{"postOfficeBox","postOfficeBox",NID_postOfficeBox,3,&(lvalues[5730]),0},
+{"physicalDeliveryOfficeName","physicalDeliveryOfficeName",
+	NID_physicalDeliveryOfficeName,3,&(lvalues[5733]),0},
+{"telephoneNumber","telephoneNumber",NID_telephoneNumber,3,
+	&(lvalues[5736]),0},
+{"telexNumber","telexNumber",NID_telexNumber,3,&(lvalues[5739]),0},
+{"teletexTerminalIdentifier","teletexTerminalIdentifier",
+	NID_teletexTerminalIdentifier,3,&(lvalues[5742]),0},
+{"facsimileTelephoneNumber","facsimileTelephoneNumber",
+	NID_facsimileTelephoneNumber,3,&(lvalues[5745]),0},
+{"x121Address","x121Address",NID_x121Address,3,&(lvalues[5748]),0},
+{"internationaliSDNNumber","internationaliSDNNumber",
+	NID_internationaliSDNNumber,3,&(lvalues[5751]),0},
+{"registeredAddress","registeredAddress",NID_registeredAddress,3,
+	&(lvalues[5754]),0},
+{"destinationIndicator","destinationIndicator",
+	NID_destinationIndicator,3,&(lvalues[5757]),0},
+{"preferredDeliveryMethod","preferredDeliveryMethod",
+	NID_preferredDeliveryMethod,3,&(lvalues[5760]),0},
+{"presentationAddress","presentationAddress",NID_presentationAddress,
+	3,&(lvalues[5763]),0},
+{"supportedApplicationContext","supportedApplicationContext",
+	NID_supportedApplicationContext,3,&(lvalues[5766]),0},
+{"member","member",NID_member,3,&(lvalues[5769]),0},
+{"owner","owner",NID_owner,3,&(lvalues[5772]),0},
+{"roleOccupant","roleOccupant",NID_roleOccupant,3,&(lvalues[5775]),0},
+{"seeAlso","seeAlso",NID_seeAlso,3,&(lvalues[5778]),0},
+{"userPassword","userPassword",NID_userPassword,3,&(lvalues[5781]),0},
+{"userCertificate","userCertificate",NID_userCertificate,3,
+	&(lvalues[5784]),0},
+{"cACertificate","cACertificate",NID_cACertificate,3,&(lvalues[5787]),0},
+{"authorityRevocationList","authorityRevocationList",
+	NID_authorityRevocationList,3,&(lvalues[5790]),0},
+{"certificateRevocationList","certificateRevocationList",
+	NID_certificateRevocationList,3,&(lvalues[5793]),0},
+{"crossCertificatePair","crossCertificatePair",
+	NID_crossCertificatePair,3,&(lvalues[5796]),0},
+{"enhancedSearchGuide","enhancedSearchGuide",NID_enhancedSearchGuide,
+	3,&(lvalues[5799]),0},
+{"protocolInformation","protocolInformation",NID_protocolInformation,
+	3,&(lvalues[5802]),0},
+{"distinguishedName","distinguishedName",NID_distinguishedName,3,
+	&(lvalues[5805]),0},
+{"uniqueMember","uniqueMember",NID_uniqueMember,3,&(lvalues[5808]),0},
+{"houseIdentifier","houseIdentifier",NID_houseIdentifier,3,
+	&(lvalues[5811]),0},
+{"supportedAlgorithms","supportedAlgorithms",NID_supportedAlgorithms,
+	3,&(lvalues[5814]),0},
+{"deltaRevocationList","deltaRevocationList",NID_deltaRevocationList,
+	3,&(lvalues[5817]),0},
+{"dmdName","dmdName",NID_dmdName,3,&(lvalues[5820]),0},
+};
+
+static const unsigned int sn_objs[NUM_SN]=3D{
+364,	/* "AD_DVCS" */
+419,	/* "AES-128-CBC" */
+421,	/* "AES-128-CFB" */
+650,	/* "AES-128-CFB1" */
+653,	/* "AES-128-CFB8" */
+418,	/* "AES-128-ECB" */
+420,	/* "AES-128-OFB" */
+423,	/* "AES-192-CBC" */
+425,	/* "AES-192-CFB" */
+651,	/* "AES-192-CFB1" */
+654,	/* "AES-192-CFB8" */
+422,	/* "AES-192-ECB" */
+424,	/* "AES-192-OFB" */
+427,	/* "AES-256-CBC" */
+429,	/* "AES-256-CFB" */
+652,	/* "AES-256-CFB1" */
+655,	/* "AES-256-CFB8" */
+426,	/* "AES-256-ECB" */
+428,	/* "AES-256-OFB" */
+91,	/* "BF-CBC" */
+93,	/* "BF-CFB" */
+92,	/* "BF-ECB" */
+94,	/* "BF-OFB" */
+14,	/* "C" */
+751,	/* "CAMELLIA-128-CBC" */
+757,	/* "CAMELLIA-128-CFB" */
+760,	/* "CAMELLIA-128-CFB1" */
+763,	/* "CAMELLIA-128-CFB8" */
+754,	/* "CAMELLIA-128-ECB" */
+766,	/* "CAMELLIA-128-OFB" */
+752,	/* "CAMELLIA-192-CBC" */
+758,	/* "CAMELLIA-192-CFB" */
+761,	/* "CAMELLIA-192-CFB1" */
+764,	/* "CAMELLIA-192-CFB8" */
+755,	/* "CAMELLIA-192-ECB" */
+767,	/* "CAMELLIA-192-OFB" */
+753,	/* "CAMELLIA-256-CBC" */
+759,	/* "CAMELLIA-256-CFB" */
+762,	/* "CAMELLIA-256-CFB1" */
+765,	/* "CAMELLIA-256-CFB8" */
+756,	/* "CAMELLIA-256-ECB" */
+768,	/* "CAMELLIA-256-OFB" */
+108,	/* "CAST5-CBC" */
+110,	/* "CAST5-CFB" */
+109,	/* "CAST5-ECB" */
+111,	/* "CAST5-OFB" */
+13,	/* "CN" */
+141,	/* "CRLReason" */
+417,	/* "CSPName" */
+367,	/* "CrlID" */
+391,	/* "DC" */
+31,	/* "DES-CBC" */
+643,	/* "DES-CDMF" */
+30,	/* "DES-CFB" */
+656,	/* "DES-CFB1" */
+657,	/* "DES-CFB8" */
+29,	/* "DES-ECB" */
+32,	/* "DES-EDE" */
+43,	/* "DES-EDE-CBC" */
+60,	/* "DES-EDE-CFB" */
+62,	/* "DES-EDE-OFB" */
+33,	/* "DES-EDE3" */
+44,	/* "DES-EDE3-CBC" */
+61,	/* "DES-EDE3-CFB" */
+658,	/* "DES-EDE3-CFB1" */
+659,	/* "DES-EDE3-CFB8" */
+63,	/* "DES-EDE3-OFB" */
+45,	/* "DES-OFB" */
+80,	/* "DESX-CBC" */
+380,	/* "DOD" */
+116,	/* "DSA" */
+66,	/* "DSA-SHA" */
+113,	/* "DSA-SHA1" */
+70,	/* "DSA-SHA1-old" */
+67,	/* "DSA-old" */
+297,	/* "DVCS" */
+99,	/* "GN" */
+855,	/* "HMAC" */
+780,	/* "HMAC-MD5" */
+781,	/* "HMAC-SHA1" */
+381,	/* "IANA" */
+34,	/* "IDEA-CBC" */
+35,	/* "IDEA-CFB" */
+36,	/* "IDEA-ECB" */
+46,	/* "IDEA-OFB" */
+181,	/* "ISO" */
+183,	/* "ISO-US" */
+645,	/* "ITU-T" */
+646,	/* "JOINT-ISO-ITU-T" */
+773,	/* "KISA" */
+15,	/* "L" */
+856,	/* "LocalKeySet" */
+ 3,	/* "MD2" */
+257,	/* "MD4" */
+ 4,	/* "MD5" */
+114,	/* "MD5-SHA1" */
+95,	/* "MDC2" */
+388,	/* "Mail" */
+393,	/* "NULL" */
+404,	/* "NULL" */
+57,	/* "Netscape" */
+366,	/* "Nonce" */
+17,	/* "O" */
+178,	/* "OCSP" */
+180,	/* "OCSPSigning" */
+379,	/* "ORG" */
+18,	/* "OU" */
+749,	/* "Oakley-EC2N-3" */
+750,	/* "Oakley-EC2N-4" */
+ 9,	/* "PBE-MD2-DES" */
+168,	/* "PBE-MD2-RC2-64" */
+10,	/* "PBE-MD5-DES" */
+169,	/* "PBE-MD5-RC2-64" */
+147,	/* "PBE-SHA1-2DES" */
+146,	/* "PBE-SHA1-3DES" */
+170,	/* "PBE-SHA1-DES" */
+148,	/* "PBE-SHA1-RC2-128" */
+149,	/* "PBE-SHA1-RC2-40" */
+68,	/* "PBE-SHA1-RC2-64" */
+144,	/* "PBE-SHA1-RC4-128" */
+145,	/* "PBE-SHA1-RC4-40" */
+161,	/* "PBES2" */
+69,	/* "PBKDF2" */
+162,	/* "PBMAC1" */
+127,	/* "PKIX" */
+98,	/* "RC2-40-CBC" */
+166,	/* "RC2-64-CBC" */
+37,	/* "RC2-CBC" */
+39,	/* "RC2-CFB" */
+38,	/* "RC2-ECB" */
+40,	/* "RC2-OFB" */
+ 5,	/* "RC4" */
+97,	/* "RC4-40" */
+120,	/* "RC5-CBC" */
+122,	/* "RC5-CFB" */
+121,	/* "RC5-ECB" */
+123,	/* "RC5-OFB" */
+117,	/* "RIPEMD160" */
+124,	/* "RLE" */
+19,	/* "RSA" */
+ 7,	/* "RSA-MD2" */
+396,	/* "RSA-MD4" */
+ 8,	/* "RSA-MD5" */
+96,	/* "RSA-MDC2" */
+104,	/* "RSA-NP-MD5" */
+119,	/* "RSA-RIPEMD160" */
+42,	/* "RSA-SHA" */
+65,	/* "RSA-SHA1" */
+115,	/* "RSA-SHA1-2" */
+671,	/* "RSA-SHA224" */
+668,	/* "RSA-SHA256" */
+669,	/* "RSA-SHA384" */
+670,	/* "RSA-SHA512" */
+777,	/* "SEED-CBC" */
+779,	/* "SEED-CFB" */
+776,	/* "SEED-ECB" */
+778,	/* "SEED-OFB" */
+41,	/* "SHA" */
+64,	/* "SHA1" */
+675,	/* "SHA224" */
+672,	/* "SHA256" */
+673,	/* "SHA384" */
+674,	/* "SHA512" */
+188,	/* "SMIME" */
+167,	/* "SMIME-CAPS" */
+100,	/* "SN" */
+16,	/* "ST" */
+143,	/* "SXNetID" */
+458,	/* "UID" */
+ 0,	/* "UNDEF" */
+11,	/* "X500" */
+378,	/* "X500algorithms" */
+12,	/* "X509" */
+184,	/* "X9-57" */
+185,	/* "X9cm" */
+125,	/* "ZLIB" */
+478,	/* "aRecord" */
+289,	/* "aaControls" */
+287,	/* "ac-auditEntity" */
+397,	/* "ac-proxying" */
+288,	/* "ac-targeting" */
+368,	/* "acceptableResponses" */
+446,	/* "account" */
+363,	/* "ad_timestamping" */
+376,	/* "algorithm" */
+405,	/* "ansi-X9-62" */
+746,	/* "anyPolicy" */
+370,	/* "archiveCutoff" */
+484,	/* "associatedDomain" */
+485,	/* "associatedName" */
+501,	/* "audio" */
+177,	/* "authorityInfoAccess" */
+90,	/* "authorityKeyIdentifier" */
+882,	/* "authorityRevocationList" */
+87,	/* "basicConstraints" */
+365,	/* "basicOCSPResponse" */
+285,	/* "biometricInfo" */
+494,	/* "buildingName" */
+860,	/* "businessCategory" */
+691,	/* "c2onb191v4" */
+692,	/* "c2onb191v5" */
+697,	/* "c2onb239v4" */
+698,	/* "c2onb239v5" */
+684,	/* "c2pnb163v1" */
+685,	/* "c2pnb163v2" */
+686,	/* "c2pnb163v3" */
+687,	/* "c2pnb176v1" */
+693,	/* "c2pnb208w1" */
+699,	/* "c2pnb272w1" */
+700,	/* "c2pnb304w1" */
+702,	/* "c2pnb368w1" */
+688,	/* "c2tnb191v1" */
+689,	/* "c2tnb191v2" */
+690,	/* "c2tnb191v3" */
+694,	/* "c2tnb239v1" */
+695,	/* "c2tnb239v2" */
+696,	/* "c2tnb239v3" */
+701,	/* "c2tnb359v1" */
+703,	/* "c2tnb431r1" */
+881,	/* "cACertificate" */
+483,	/* "cNAMERecord" */
+179,	/* "caIssuers" */
+785,	/* "caRepository" */
+443,	/* "caseIgnoreIA5StringSyntax" */
+152,	/* "certBag" */
+677,	/* "certicom-arc" */
+771,	/* "certificateIssuer" */
+89,	/* "certificatePolicies" */
+883,	/* "certificateRevocationList" */
+54,	/* "challengePassword" */
+407,	/* "characteristic-two-field" */
+395,	/* "clearance" */
+130,	/* "clientAuth" */
+131,	/* "codeSigning" */
+50,	/* "contentType" */
+53,	/* "countersignature" */
+153,	/* "crlBag" */
+103,	/* "crlDistributionPoints" */
+88,	/* "crlNumber" */
+884,	/* "crossCertificatePair" */
+806,	/* "cryptocom" */
+805,	/* "cryptopro" */
+500,	/* "dITRedirect" */
+451,	/* "dNSDomain" */
+495,	/* "dSAQuality" */
+434,	/* "data" */
+390,	/* "dcobject" */
+140,	/* "deltaCRL" */
+891,	/* "deltaRevocationList" */
+107,	/* "description" */
+871,	/* "destinationIndicator" */
+28,	/* "dhKeyAgreement" */
+382,	/* "directory" */
+887,	/* "distinguishedName" */
+892,	/* "dmdName" */
+174,	/* "dnQualifier" */
+447,	/* "document" */
+471,	/* "documentAuthor" */
+468,	/* "documentIdentifier" */
+472,	/* "documentLocation" */
+502,	/* "documentPublisher" */
+449,	/* "documentSeries" */
+469,	/* "documentTitle" */
+470,	/* "documentVersion" */
+392,	/* "domain" */
+452,	/* "domainRelatedObject" */
+802,	/* "dsa_with_SHA224" */
+803,	/* "dsa_with_SHA256" */
+791,	/* "ecdsa-with-Recommended" */
+416,	/* "ecdsa-with-SHA1" */
+793,	/* "ecdsa-with-SHA224" */
+794,	/* "ecdsa-with-SHA256" */
+795,	/* "ecdsa-with-SHA384" */
+796,	/* "ecdsa-with-SHA512" */
+792,	/* "ecdsa-with-Specified" */
+48,	/* "emailAddress" */
+132,	/* "emailProtection" */
+885,	/* "enhancedSearchGuide" */
+389,	/* "enterprises" */
+384,	/* "experimental" */
+172,	/* "extReq" */
+56,	/* "extendedCertificateAttributes" */
+126,	/* "extendedKeyUsage" */
+372,	/* "extendedStatus" */
+867,	/* "facsimileTelephoneNumber" */
+462,	/* "favouriteDrink" */
+857,	/* "freshestCRL" */
+453,	/* "friendlyCountry" */
+490,	/* "friendlyCountryName" */
+156,	/* "friendlyName" */
+509,	/* "generationQualifier" */
+815,	/* "gost-mac" */
+811,	/* "gost2001" */
+851,	/* "gost2001cc" */
+813,	/* "gost89" */
+814,	/* "gost89-cnt" */
+812,	/* "gost94" */
+850,	/* "gost94cc" */
+797,	/* "hmacWithMD5" */
+163,	/* "hmacWithSHA1" */
+798,	/* "hmacWithSHA224" */
+799,	/* "hmacWithSHA256" */
+800,	/* "hmacWithSHA384" */
+801,	/* "hmacWithSHA512" */
+432,	/* "holdInstructionCallIssuer" */
+430,	/* "holdInstructionCode" */
+431,	/* "holdInstructionNone" */
+433,	/* "holdInstructionReject" */
+486,	/* "homePostalAddress" */
+473,	/* "homeTelephoneNumber" */
+466,	/* "host" */
+889,	/* "houseIdentifier" */
+442,	/* "iA5StringSyntax" */
+783,	/* "id-DHBasedMac" */
+824,	/* "id-Gost28147-89-CryptoPro-A-ParamSet" */
+825,	/* "id-Gost28147-89-CryptoPro-B-ParamSet" */
+826,	/* "id-Gost28147-89-CryptoPro-C-ParamSet" */
+827,	/* "id-Gost28147-89-CryptoPro-D-ParamSet" */
+819,	/* "id-Gost28147-89-CryptoPro-KeyMeshing" */
+829,	/* "id-Gost28147-89-CryptoPro-Oscar-1-0-ParamSet" */
+828,	/* "id-Gost28147-89-CryptoPro-Oscar-1-1-ParamSet" */
+830,	/* "id-Gost28147-89-CryptoPro-RIC-1-ParamSet" */
+820,	/* "id-Gost28147-89-None-KeyMeshing" */
+823,	/* "id-Gost28147-89-TestParamSet" */
+849,	/* "id-Gost28147-89-cc" */
+840,	/* "id-GostR3410-2001-CryptoPro-A-ParamSet" */
+841,	/* "id-GostR3410-2001-CryptoPro-B-ParamSet" */
+842,	/* "id-GostR3410-2001-CryptoPro-C-ParamSet" */
+843,	/* "id-GostR3410-2001-CryptoPro-XchA-ParamSet" */
+844,	/* "id-GostR3410-2001-CryptoPro-XchB-ParamSet" */
+854,	/* "id-GostR3410-2001-ParamSet-cc" */
+839,	/* "id-GostR3410-2001-TestParamSet" */
+817,	/* "id-GostR3410-2001DH" */
+832,	/* "id-GostR3410-94-CryptoPro-A-ParamSet" */
+833,	/* "id-GostR3410-94-CryptoPro-B-ParamSet" */
+834,	/* "id-GostR3410-94-CryptoPro-C-ParamSet" */
+835,	/* "id-GostR3410-94-CryptoPro-D-ParamSet" */
+836,	/* "id-GostR3410-94-CryptoPro-XchA-ParamSet" */
+837,	/* "id-GostR3410-94-CryptoPro-XchB-ParamSet" */
+838,	/* "id-GostR3410-94-CryptoPro-XchC-ParamSet" */
+831,	/* "id-GostR3410-94-TestParamSet" */
+845,	/* "id-GostR3410-94-a" */
+846,	/* "id-GostR3410-94-aBis" */
+847,	/* "id-GostR3410-94-b" */
+848,	/* "id-GostR3410-94-bBis" */
+818,	/* "id-GostR3410-94DH" */
+822,	/* "id-GostR3411-94-CryptoProParamSet" */
+821,	/* "id-GostR3411-94-TestParamSet" */
+807,	/* "id-GostR3411-94-with-GostR3410-2001" */
+853,	/* "id-GostR3411-94-with-GostR3410-2001-cc" */
+808,	/* "id-GostR3411-94-with-GostR3410-94" */
+852,	/* "id-GostR3411-94-with-GostR3410-94-cc" */
+810,	/* "id-HMACGostR3411-94" */
+782,	/* "id-PasswordBasedMAC" */
+266,	/* "id-aca" */
+355,	/* "id-aca-accessIdentity" */
+354,	/* "id-aca-authenticationInfo" */
+356,	/* "id-aca-chargingIdentity" */
+399,	/* "id-aca-encAttrs" */
+357,	/* "id-aca-group" */
+358,	/* "id-aca-role" */
+176,	/* "id-ad" */
+788,	/* "id-aes128-wrap" */
+789,	/* "id-aes192-wrap" */
+790,	/* "id-aes256-wrap" */
+262,	/* "id-alg" */
+323,	/* "id-alg-des40" */
+326,	/* "id-alg-dh-pop" */
+325,	/* "id-alg-dh-sig-hmac-sha1" */
+324,	/* "id-alg-noSignature" */
+268,	/* "id-cct" */
+361,	/* "id-cct-PKIData" */
+362,	/* "id-cct-PKIResponse" */
+360,	/* "id-cct-crs" */
+81,	/* "id-ce" */
+680,	/* "id-characteristic-two-basis" */
+263,	/* "id-cmc" */
+334,	/* "id-cmc-addExtensions" */
+346,	/* "id-cmc-confirmCertAcceptance" */
+330,	/* "id-cmc-dataReturn" */
+336,	/* "id-cmc-decryptedPOP" */
+335,	/* "id-cmc-encryptedPOP" */
+339,	/* "id-cmc-getCRL" */
+338,	/* "id-cmc-getCert" */
+328,	/* "id-cmc-identification" */
+329,	/* "id-cmc-identityProof" */
+337,	/* "id-cmc-lraPOPWitness" */
+344,	/* "id-cmc-popLinkRandom" */
+345,	/* "id-cmc-popLinkWitness" */
+343,	/* "id-cmc-queryPending" */
+333,	/* "id-cmc-recipientNonce" */
+341,	/* "id-cmc-regInfo" */
+342,	/* "id-cmc-responseInfo" */
+340,	/* "id-cmc-revokeRequest" */
+332,	/* "id-cmc-senderNonce" */
+327,	/* "id-cmc-statusInfo" */
+331,	/* "id-cmc-transactionId" */
+787,	/* "id-ct-asciiTextWithCRLF" */
+408,	/* "id-ecPublicKey" */
+508,	/* "id-hex-multipart-message" */
+507,	/* "id-hex-partial-message" */
+260,	/* "id-it" */
+302,	/* "id-it-caKeyUpdateInfo" */
+298,	/* "id-it-caProtEncCert" */
+311,	/* "id-it-confirmWaitTime" */
+303,	/* "id-it-currentCRL" */
+300,	/* "id-it-encKeyPairTypes" */
+310,	/* "id-it-implicitConfirm" */
+308,	/* "id-it-keyPairParamRep" */
+307,	/* "id-it-keyPairParamReq" */
+312,	/* "id-it-origPKIMessage" */
+301,	/* "id-it-preferredSymmAlg" */
+309,	/* "id-it-revPassphrase" */
+299,	/* "id-it-signKeyPairTypes" */
+305,	/* "id-it-subscriptionRequest" */
+306,	/* "id-it-subscriptionResponse" */
+784,	/* "id-it-suppLangTags" */
+304,	/* "id-it-unsupportedOIDs" */
+128,	/* "id-kp" */
+280,	/* "id-mod-attribute-cert" */
+274,	/* "id-mod-cmc" */
+277,	/* "id-mod-cmp" */
+284,	/* "id-mod-cmp2000" */
+273,	/* "id-mod-crmf" */
+283,	/* "id-mod-dvcs" */
+275,	/* "id-mod-kea-profile-88" */
+276,	/* "id-mod-kea-profile-93" */
+282,	/* "id-mod-ocsp" */
+278,	/* "id-mod-qualified-cert-88" */
+279,	/* "id-mod-qualified-cert-93" */
+281,	/* "id-mod-timestamp-protocol" */
+264,	/* "id-on" */
+858,	/* "id-on-permanentIdentifier" */
+347,	/* "id-on-personalData" */
+265,	/* "id-pda" */
+352,	/* "id-pda-countryOfCitizenship" */
+353,	/* "id-pda-countryOfResidence" */
+348,	/* "id-pda-dateOfBirth" */
+351,	/* "id-pda-gender" */
+349,	/* "id-pda-placeOfBirth" */
+175,	/* "id-pe" */
+261,	/* "id-pkip" */
+258,	/* "id-pkix-mod" */
+269,	/* "id-pkix1-explicit-88" */
+271,	/* "id-pkix1-explicit-93" */
+270,	/* "id-pkix1-implicit-88" */
+272,	/* "id-pkix1-implicit-93" */
+662,	/* "id-ppl" */
+664,	/* "id-ppl-anyLanguage" */
+667,	/* "id-ppl-independent" */
+665,	/* "id-ppl-inheritAll" */
+267,	/* "id-qcs" */
+359,	/* "id-qcs-pkixQCSyntax-v1" */
+259,	/* "id-qt" */
+164,	/* "id-qt-cps" */
+165,	/* "id-qt-unotice" */
+313,	/* "id-regCtrl" */
+316,	/* "id-regCtrl-authenticator" */
+319,	/* "id-regCtrl-oldCertID" */
+318,	/* "id-regCtrl-pkiArchiveOptions" */
+317,	/* "id-regCtrl-pkiPublicationInfo" */
+320,	/* "id-regCtrl-protocolEncrKey" */
+315,	/* "id-regCtrl-regToken" */
+314,	/* "id-regInfo" */
+322,	/* "id-regInfo-certReq" */
+321,	/* "id-regInfo-utf8Pairs" */
+512,	/* "id-set" */
+191,	/* "id-smime-aa" */
+215,	/* "id-smime-aa-contentHint" */
+218,	/* "id-smime-aa-contentIdentifier" */
+221,	/* "id-smime-aa-contentReference" */
+240,	/* "id-smime-aa-dvcs-dvc" */
+217,	/* "id-smime-aa-encapContentType" */
+222,	/* "id-smime-aa-encrypKeyPref" */
+220,	/* "id-smime-aa-equivalentLabels" */
+232,	/* "id-smime-aa-ets-CertificateRefs" */
+233,	/* "id-smime-aa-ets-RevocationRefs" */
+238,	/* "id-smime-aa-ets-archiveTimeStamp" */
+237,	/* "id-smime-aa-ets-certCRLTimestamp" */
+234,	/* "id-smime-aa-ets-certValues" */
+227,	/* "id-smime-aa-ets-commitmentType" */
+231,	/* "id-smime-aa-ets-contentTimestamp" */
+236,	/* "id-smime-aa-ets-escTimeStamp" */
+230,	/* "id-smime-aa-ets-otherSigCert" */
+235,	/* "id-smime-aa-ets-revocationValues" */
+226,	/* "id-smime-aa-ets-sigPolicyId" */
+229,	/* "id-smime-aa-ets-signerAttr" */
+228,	/* "id-smime-aa-ets-signerLocation" */
+219,	/* "id-smime-aa-macValue" */
+214,	/* "id-smime-aa-mlExpandHistory" */
+216,	/* "id-smime-aa-msgSigDigest" */
+212,	/* "id-smime-aa-receiptRequest" */
+213,	/* "id-smime-aa-securityLabel" */
+239,	/* "id-smime-aa-signatureType" */
+223,	/* "id-smime-aa-signingCertificate" */
+224,	/* "id-smime-aa-smimeEncryptCerts" */
+225,	/* "id-smime-aa-timeStampToken" */
+192,	/* "id-smime-alg" */
+243,	/* "id-smime-alg-3DESwrap" */
+246,	/* "id-smime-alg-CMS3DESwrap" */
+247,	/* "id-smime-alg-CMSRC2wrap" */
+245,	/* "id-smime-alg-ESDH" */
+241,	/* "id-smime-alg-ESDHwith3DES" */
+242,	/* "id-smime-alg-ESDHwithRC2" */
+244,	/* "id-smime-alg-RC2wrap" */
+193,	/* "id-smime-cd" */
+248,	/* "id-smime-cd-ldap" */
+190,	/* "id-smime-ct" */
+210,	/* "id-smime-ct-DVCSRequestData" */
+211,	/* "id-smime-ct-DVCSResponseData" */
+208,	/* "id-smime-ct-TDTInfo" */
+207,	/* "id-smime-ct-TSTInfo" */
+205,	/* "id-smime-ct-authData" */
+786,	/* "id-smime-ct-compressedData" */
+209,	/* "id-smime-ct-contentInfo" */
+206,	/* "id-smime-ct-publishCert" */
+204,	/* "id-smime-ct-receipt" */
+195,	/* "id-smime-cti" */
+255,	/* "id-smime-cti-ets-proofOfApproval" */
+256,	/* "id-smime-cti-ets-proofOfCreation" */
+253,	/* "id-smime-cti-ets-proofOfDelivery" */
+251,	/* "id-smime-cti-ets-proofOfOrigin" */
+252,	/* "id-smime-cti-ets-proofOfReceipt" */
+254,	/* "id-smime-cti-ets-proofOfSender" */
+189,	/* "id-smime-mod" */
+196,	/* "id-smime-mod-cms" */
+197,	/* "id-smime-mod-ess" */
+202,	/* "id-smime-mod-ets-eSigPolicy-88" */
+203,	/* "id-smime-mod-ets-eSigPolicy-97" */
+200,	/* "id-smime-mod-ets-eSignature-88" */
+201,	/* "id-smime-mod-ets-eSignature-97" */
+199,	/* "id-smime-mod-msg-v3" */
+198,	/* "id-smime-mod-oid" */
+194,	/* "id-smime-spq" */
+250,	/* "id-smime-spq-ets-sqt-unotice" */
+249,	/* "id-smime-spq-ets-sqt-uri" */
+676,	/* "identified-organization" */
+461,	/* "info" */
+748,	/* "inhibitAnyPolicy" */
+101,	/* "initials" */
+647,	/* "international-organizations" */
+869,	/* "internationaliSDNNumber" */
+142,	/* "invalidityDate" */
+294,	/* "ipsecEndSystem" */
+295,	/* "ipsecTunnel" */
+296,	/* "ipsecUser" */
+86,	/* "issuerAltName" */
+770,	/* "issuingDistributionPoint" */
+492,	/* "janetMailbox" */
+150,	/* "keyBag" */
+83,	/* "keyUsage" */
+477,	/* "lastModifiedBy" */
+476,	/* "lastModifiedTime" */
+157,	/* "localKeyID" */
+480,	/* "mXRecord" */
+460,	/* "mail" */
+493,	/* "mailPreferenceOption" */
+467,	/* "manager" */
+809,	/* "md_gost94" */
+875,	/* "member" */
+182,	/* "member-body" */
+51,	/* "messageDigest" */
+383,	/* "mgmt" */
+504,	/* "mime-mhs" */
+506,	/* "mime-mhs-bodies" */
+505,	/* "mime-mhs-headings" */
+488,	/* "mobileTelephoneNumber" */
+136,	/* "msCTLSign" */
+135,	/* "msCodeCom" */
+134,	/* "msCodeInd" */
+138,	/* "msEFS" */
+171,	/* "msExtReq" */
+137,	/* "msSGC" */
+648,	/* "msSmartcardLogin" */
+649,	/* "msUPN" */
+481,	/* "nSRecord" */
+173,	/* "name" */
+666,	/* "nameConstraints" */
+369,	/* "noCheck" */
+403,	/* "noRevAvail" */
+72,	/* "nsBaseUrl" */
+76,	/* "nsCaPolicyUrl" */
+74,	/* "nsCaRevocationUrl" */
+58,	/* "nsCertExt" */
+79,	/* "nsCertSequence" */
+71,	/* "nsCertType" */
+78,	/* "nsComment" */
+59,	/* "nsDataType" */
+75,	/* "nsRenewalUrl" */
+73,	/* "nsRevocationUrl" */
+139,	/* "nsSGC" */
+77,	/* "nsSslServerName" */
+681,	/* "onBasis" */
+491,	/* "organizationalStatus" */
+475,	/* "otherMailbox" */
+876,	/* "owner" */
+489,	/* "pagerTelephoneNumber" */
+374,	/* "path" */
+112,	/* "pbeWithMD5AndCast5CBC" */
+499,	/* "personalSignature" */
+487,	/* "personalTitle" */
+464,	/* "photo" */
+863,	/* "physicalDeliveryOfficeName" */
+437,	/* "pilot" */
+439,	/* "pilotAttributeSyntax" */
+438,	/* "pilotAttributeType" */
+479,	/* "pilotAttributeType27" */
+456,	/* "pilotDSA" */
+441,	/* "pilotGroups" */
+444,	/* "pilotObject" */
+440,	/* "pilotObjectClass" */
+455,	/* "pilotOrganization" */
+445,	/* "pilotPerson" */
+ 2,	/* "pkcs" */
+186,	/* "pkcs1" */
+27,	/* "pkcs3" */
+187,	/* "pkcs5" */
+20,	/* "pkcs7" */
+21,	/* "pkcs7-data" */
+25,	/* "pkcs7-digestData" */
+26,	/* "pkcs7-encryptedData" */
+23,	/* "pkcs7-envelopedData" */
+24,	/* "pkcs7-signedAndEnvelopedData" */
+22,	/* "pkcs7-signedData" */
+151,	/* "pkcs8ShroudedKeyBag" */
+47,	/* "pkcs9" */
+401,	/* "policyConstraints" */
+747,	/* "policyMappings" */
+862,	/* "postOfficeBox" */
+861,	/* "postalAddress" */
+661,	/* "postalCode" */
+683,	/* "ppBasis" */
+872,	/* "preferredDeliveryMethod" */
+873,	/* "presentationAddress" */
+816,	/* "prf-gostr3411-94" */
+406,	/* "prime-field" */
+409,	/* "prime192v1" */
+410,	/* "prime192v2" */
+411,	/* "prime192v3" */
+412,	/* "prime239v1" */
+413,	/* "prime239v2" */
+414,	/* "prime239v3" */
+415,	/* "prime256v1" */
+385,	/* "private" */
+84,	/* "privateKeyUsagePeriod" */
+886,	/* "protocolInformation" */
+663,	/* "proxyCertInfo" */
+510,	/* "pseudonym" */
+435,	/* "pss" */
+286,	/* "qcStatements" */
+457,	/* "qualityLabelledData" */
+450,	/* "rFC822localPart" */
+870,	/* "registeredAddress" */
+400,	/* "role" */
+877,	/* "roleOccupant" */
+448,	/* "room" */
+463,	/* "roomNumber" */
+ 6,	/* "rsaEncryption" */
+644,	/* "rsaOAEPEncryptionSET" */
+377,	/* "rsaSignature" */
+ 1,	/* "rsadsi" */
+482,	/* "sOARecord" */
+155,	/* "safeContentsBag" */
+291,	/* "sbgp-autonomousSysNum" */
+290,	/* "sbgp-ipAddrBlock" */
+292,	/* "sbgp-routerIdentifier" */
+159,	/* "sdsiCertificate" */
+859,	/* "searchGuide" */
+704,	/* "secp112r1" */
+705,	/* "secp112r2" */
+706,	/* "secp128r1" */
+707,	/* "secp128r2" */
+708,	/* "secp160k1" */
+709,	/* "secp160r1" */
+710,	/* "secp160r2" */
+711,	/* "secp192k1" */
+712,	/* "secp224k1" */
+713,	/* "secp224r1" */
+714,	/* "secp256k1" */
+715,	/* "secp384r1" */
+716,	/* "secp521r1" */
+154,	/* "secretBag" */
+474,	/* "secretary" */
+717,	/* "sect113r1" */
+718,	/* "sect113r2" */
+719,	/* "sect131r1" */
+720,	/* "sect131r2" */
+721,	/* "sect163k1" */
+722,	/* "sect163r1" */
+723,	/* "sect163r2" */
+724,	/* "sect193r1" */
+725,	/* "sect193r2" */
+726,	/* "sect233k1" */
+727,	/* "sect233r1" */
+728,	/* "sect239k1" */
+729,	/* "sect283k1" */
+730,	/* "sect283r1" */
+731,	/* "sect409k1" */
+732,	/* "sect409r1" */
+733,	/* "sect571k1" */
+734,	/* "sect571r1" */
+386,	/* "security" */
+878,	/* "seeAlso" */
+394,	/* "selected-attribute-types" */
+105,	/* "serialNumber" */
+129,	/* "serverAuth" */
+371,	/* "serviceLocator" */
+625,	/* "set-addPolicy" */
+515,	/* "set-attr" */
+518,	/* "set-brand" */
+638,	/* "set-brand-AmericanExpress" */
+637,	/* "set-brand-Diners" */
+636,	/* "set-brand-IATA-ATA" */
+639,	/* "set-brand-JCB" */
+641,	/* "set-brand-MasterCard" */
+642,	/* "set-brand-Novus" */
+640,	/* "set-brand-Visa" */
+517,	/* "set-certExt" */
+513,	/* "set-ctype" */
+514,	/* "set-msgExt" */
+516,	/* "set-policy" */
+607,	/* "set-policy-root" */
+624,	/* "set-rootKeyThumb" */
+620,	/* "setAttr-Cert" */
+631,	/* "setAttr-GenCryptgrm" */
+623,	/* "setAttr-IssCap" */
+628,	/* "setAttr-IssCap-CVM" */
+630,	/* "setAttr-IssCap-Sig" */
+629,	/* "setAttr-IssCap-T2" */
+621,	/* "setAttr-PGWYcap" */
+635,	/* "setAttr-SecDevSig" */
+632,	/* "setAttr-T2Enc" */
+633,	/* "setAttr-T2cleartxt" */
+634,	/* "setAttr-TokICCsig" */
+627,	/* "setAttr-Token-B0Prime" */
+626,	/* "setAttr-Token-EMV" */
+622,	/* "setAttr-TokenType" */
+619,	/* "setCext-IssuerCapabilities" */
+615,	/* "setCext-PGWYcapabilities" */
+616,	/* "setCext-TokenIdentifier" */
+618,	/* "setCext-TokenType" */
+617,	/* "setCext-Track2Data" */
+611,	/* "setCext-cCertRequired" */
+609,	/* "setCext-certType" */
+608,	/* "setCext-hashedRoot" */
+610,	/* "setCext-merchData" */
+613,	/* "setCext-setExt" */
+614,	/* "setCext-setQualf" */
+612,	/* "setCext-tunneling" */
+540,	/* "setct-AcqCardCodeMsg" */
+576,	/* "setct-AcqCardCodeMsgTBE" */
+570,	/* "setct-AuthReqTBE" */
+534,	/* "setct-AuthReqTBS" */
+527,	/* "setct-AuthResBaggage" */
+571,	/* "setct-AuthResTBE" */
+572,	/* "setct-AuthResTBEX" */
+535,	/* "setct-AuthResTBS" */
+536,	/* "setct-AuthResTBSX" */
+528,	/* "setct-AuthRevReqBaggage" */
+577,	/* "setct-AuthRevReqTBE" */
+541,	/* "setct-AuthRevReqTBS" */
+529,	/* "setct-AuthRevResBaggage" */
+542,	/* "setct-AuthRevResData" */
+578,	/* "setct-AuthRevResTBE" */
+579,	/* "setct-AuthRevResTBEB" */
+543,	/* "setct-AuthRevResTBS" */
+573,	/* "setct-AuthTokenTBE" */
+537,	/* "setct-AuthTokenTBS" */
+600,	/* "setct-BCIDistributionTBS" */
+558,	/* "setct-BatchAdminReqData" */
+592,	/* "setct-BatchAdminReqTBE" */
+559,	/* "setct-BatchAdminResData" */
+593,	/* "setct-BatchAdminResTBE" */
+599,	/* "setct-CRLNotificationResTBS" */
+598,	/* "setct-CRLNotificationTBS" */
+580,	/* "setct-CapReqTBE" */
+581,	/* "setct-CapReqTBEX" */
+544,	/* "setct-CapReqTBS" */
+545,	/* "setct-CapReqTBSX" */
+546,	/* "setct-CapResData" */
+582,	/* "setct-CapResTBE" */
+583,	/* "setct-CapRevReqTBE" */
+584,	/* "setct-CapRevReqTBEX" */
+547,	/* "setct-CapRevReqTBS" */
+548,	/* "setct-CapRevReqTBSX" */
+549,	/* "setct-CapRevResData" */
+585,	/* "setct-CapRevResTBE" */
+538,	/* "setct-CapTokenData" */
+530,	/* "setct-CapTokenSeq" */
+574,	/* "setct-CapTokenTBE" */
+575,	/* "setct-CapTokenTBEX" */
+539,	/* "setct-CapTokenTBS" */
+560,	/* "setct-CardCInitResTBS" */
+566,	/* "setct-CertInqReqTBS" */
+563,	/* "setct-CertReqData" */
+595,	/* "setct-CertReqTBE" */
+596,	/* "setct-CertReqTBEX" */
+564,	/* "setct-CertReqTBS" */
+565,	/* "setct-CertResData" */
+597,	/* "setct-CertResTBE" */
+586,	/* "setct-CredReqTBE" */
+587,	/* "setct-CredReqTBEX" */
+550,	/* "setct-CredReqTBS" */
+551,	/* "setct-CredReqTBSX" */
+552,	/* "setct-CredResData" */
+588,	/* "setct-CredResTBE" */
+589,	/* "setct-CredRevReqTBE" */
+590,	/* "setct-CredRevReqTBEX" */
+553,	/* "setct-CredRevReqTBS" */
+554,	/* "setct-CredRevReqTBSX" */
+555,	/* "setct-CredRevResData" */
+591,	/* "setct-CredRevResTBE" */
+567,	/* "setct-ErrorTBS" */
+526,	/* "setct-HODInput" */
+561,	/* "setct-MeAqCInitResTBS" */
+522,	/* "setct-OIData" */
+519,	/* "setct-PANData" */
+521,	/* "setct-PANOnly" */
+520,	/* "setct-PANToken" */
+556,	/* "setct-PCertReqData" */
+557,	/* "setct-PCertResTBS" */
+523,	/* "setct-PI" */
+532,	/* "setct-PI-TBS" */
+524,	/* "setct-PIData" */
+525,	/* "setct-PIDataUnsigned" */
+568,	/* "setct-PIDualSignedTBE" */
+569,	/* "setct-PIUnsignedTBE" */
+531,	/* "setct-PInitResData" */
+533,	/* "setct-PResData" */
+594,	/* "setct-RegFormReqTBE" */
+562,	/* "setct-RegFormResTBS" */
+606,	/* "setext-cv" */
+601,	/* "setext-genCrypt" */
+602,	/* "setext-miAuth" */
+604,	/* "setext-pinAny" */
+603,	/* "setext-pinSecure" */
+605,	/* "setext-track2" */
+52,	/* "signingTime" */
+454,	/* "simpleSecurityObject" */
+496,	/* "singleLevelQuality" */
+387,	/* "snmpv2" */
+660,	/* "street" */
+85,	/* "subjectAltName" */
+769,	/* "subjectDirectoryAttributes" */
+398,	/* "subjectInfoAccess" */
+82,	/* "subjectKeyIdentifier" */
+498,	/* "subtreeMaximumQuality" */
+497,	/* "subtreeMinimumQuality" */
+890,	/* "supportedAlgorithms" */
+874,	/* "supportedApplicationContext" */
+402,	/* "targetInformation" */
+864,	/* "telephoneNumber" */
+866,	/* "teletexTerminalIdentifier" */
+865,	/* "telexNumber" */
+459,	/* "textEncodedORAddress" */
+293,	/* "textNotice" */
+133,	/* "timeStamping" */
+106,	/* "title" */
+682,	/* "tpBasis" */
+375,	/* "trustRoot" */
+436,	/* "ucl" */
+888,	/* "uniqueMember" */
+55,	/* "unstructuredAddress" */
+49,	/* "unstructuredName" */
+880,	/* "userCertificate" */
+465,	/* "userClass" */
+879,	/* "userPassword" */
+373,	/* "valid" */
+678,	/* "wap" */
+679,	/* "wap-wsg" */
+735,	/* "wap-wsg-idm-ecid-wtls1" */
+743,	/* "wap-wsg-idm-ecid-wtls10" */
+744,	/* "wap-wsg-idm-ecid-wtls11" */
+745,	/* "wap-wsg-idm-ecid-wtls12" */
+736,	/* "wap-wsg-idm-ecid-wtls3" */
+737,	/* "wap-wsg-idm-ecid-wtls4" */
+738,	/* "wap-wsg-idm-ecid-wtls5" */
+739,	/* "wap-wsg-idm-ecid-wtls6" */
+740,	/* "wap-wsg-idm-ecid-wtls7" */
+741,	/* "wap-wsg-idm-ecid-wtls8" */
+742,	/* "wap-wsg-idm-ecid-wtls9" */
+804,	/* "whirlpool" */
+868,	/* "x121Address" */
+503,	/* "x500UniqueIdentifier" */
+158,	/* "x509Certificate" */
+160,	/* "x509Crl" */
+};
+
+static const unsigned int ln_objs[NUM_LN]=3D{
+363,	/* "AD Time Stamping" */
+405,	/* "ANSI X9.62" */
+368,	/* "Acceptable OCSP Responses" */
+664,	/* "Any language" */
+177,	/* "Authority Information Access" */
+365,	/* "Basic OCSP Response" */
+285,	/* "Biometric Info" */
+179,	/* "CA Issuers" */
+785,	/* "CA Repository" */
+131,	/* "Code Signing" */
+783,	/* "Diffie-Hellman based MAC" */
+382,	/* "Directory" */
+392,	/* "Domain" */
+132,	/* "E-mail Protection" */
+389,	/* "Enterprises" */
+384,	/* "Experimental" */
+372,	/* "Extended OCSP Status" */
+172,	/* "Extension Request" */
+813,	/* "GOST 28147-89" */
+849,	/* "GOST 28147-89 Cryptocom ParamSet" */
+815,	/* "GOST 28147-89 MAC" */
+851,	/* "GOST 34.10-2001 Cryptocom" */
+850,	/* "GOST 34.10-94 Cryptocom" */
+811,	/* "GOST R 34.10-2001" */
+817,	/* "GOST R 34.10-2001 DH" */
+812,	/* "GOST R 34.10-94" */
+818,	/* "GOST R 34.10-94 DH" */
+809,	/* "GOST R 34.11-94" */
+816,	/* "GOST R 34.11-94 PRF" */
+807,	/* "GOST R 34.11-94 with GOST R 34.10-2001" */
+853,	/* "GOST R 34.11-94 with GOST R 34.10-2001 Cryptocom" */
+808,	/* "GOST R 34.11-94 with GOST R 34.10-94" */
+852,	/* "GOST R 34.11-94 with GOST R 34.10-94 Cryptocom" */
+854,	/* "GOST R 3410-2001 Parameter Set Cryptocom" */
+810,	/* "HMAC GOST 34.11-94" */
+432,	/* "Hold Instruction Call Issuer" */
+430,	/* "Hold Instruction Code" */
+431,	/* "Hold Instruction None" */
+433,	/* "Hold Instruction Reject" */
+634,	/* "ICC or token signature" */
+294,	/* "IPSec End System" */
+295,	/* "IPSec Tunnel" */
+296,	/* "IPSec User" */
+182,	/* "ISO Member Body" */
+183,	/* "ISO US Member Body" */
+667,	/* "Independent" */
+665,	/* "Inherit all" */
+647,	/* "International Organizations" */
+142,	/* "Invalidity Date" */
+504,	/* "MIME MHS" */
+388,	/* "Mail" */
+383,	/* "Management" */
+417,	/* "Microsoft CSP Name" */
+135,	/* "Microsoft Commercial Code Signing" */
+138,	/* "Microsoft Encrypted File System" */
+171,	/* "Microsoft Extension Request" */
+134,	/* "Microsoft Individual Code Signing" */
+856,	/* "Microsoft Local Key set" */
+137,	/* "Microsoft Server Gated Crypto" */
+648,	/* "Microsoft Smartcardlogin" */
+136,	/* "Microsoft Trust List Signing" */
+649,	/* "Microsoft Universal Principal Name" */
+393,	/* "NULL" */
+404,	/* "NULL" */
+72,	/* "Netscape Base Url" */
+76,	/* "Netscape CA Policy Url" */
+74,	/* "Netscape CA Revocation Url" */
+71,	/* "Netscape Cert Type" */
+58,	/* "Netscape Certificate Extension" */
+79,	/* "Netscape Certificate Sequence" */
+78,	/* "Netscape Comment" */
+57,	/* "Netscape Communications Corp." */
+59,	/* "Netscape Data Type" */
+75,	/* "Netscape Renewal Url" */
+73,	/* "Netscape Revocation Url" */
+77,	/* "Netscape SSL Server Name" */
+139,	/* "Netscape Server Gated Crypto" */
+178,	/* "OCSP" */
+370,	/* "OCSP Archive Cutoff" */
+367,	/* "OCSP CRL ID" */
+369,	/* "OCSP No Check" */
+366,	/* "OCSP Nonce" */
+371,	/* "OCSP Service Locator" */
+180,	/* "OCSP Signing" */
+161,	/* "PBES2" */
+69,	/* "PBKDF2" */
+162,	/* "PBMAC1" */
+127,	/* "PKIX" */
+858,	/* "Permanent Identifier" */
+164,	/* "Policy Qualifier CPS" */
+165,	/* "Policy Qualifier User Notice" */
+385,	/* "Private" */
+663,	/* "Proxy Certificate Information" */
+ 1,	/* "RSA Data Security, Inc." */
+ 2,	/* "RSA Data Security, Inc. PKCS" */
+188,	/* "S/MIME" */
+167,	/* "S/MIME Capabilities" */
+387,	/* "SNMPv2" */
+512,	/* "Secure Electronic Transactions" */
+386,	/* "Security" */
+394,	/* "Selected Attribute Types" */
+143,	/* "Strong Extranet ID" */
+398,	/* "Subject Information Access" */
+130,	/* "TLS Web Client Authentication" */
+129,	/* "TLS Web Server Authentication" */
+133,	/* "Time Stamping" */
+375,	/* "Trust Root" */
+12,	/* "X509" */
+402,	/* "X509v3 AC Targeting" */
+746,	/* "X509v3 Any Policy" */
+90,	/* "X509v3 Authority Key Identifier" */
+87,	/* "X509v3 Basic Constraints" */
+103,	/* "X509v3 CRL Distribution Points" */
+88,	/* "X509v3 CRL Number" */
+141,	/* "X509v3 CRL Reason Code" */
+771,	/* "X509v3 Certificate Issuer" */
+89,	/* "X509v3 Certificate Policies" */
+140,	/* "X509v3 Delta CRL Indicator" */
+126,	/* "X509v3 Extended Key Usage" */
+857,	/* "X509v3 Freshest CRL" */
+748,	/* "X509v3 Inhibit Any Policy" */
+86,	/* "X509v3 Issuer Alternative Name" */
+770,	/* "X509v3 Issuing Distrubution Point" */
+83,	/* "X509v3 Key Usage" */
+666,	/* "X509v3 Name Constraints" */
+403,	/* "X509v3 No Revocation Available" */
+401,	/* "X509v3 Policy Constraints" */
+747,	/* "X509v3 Policy Mappings" */
+84,	/* "X509v3 Private Key Usage Period" */
+85,	/* "X509v3 Subject Alternative Name" */
+769,	/* "X509v3 Subject Directory Attributes" */
+82,	/* "X509v3 Subject Key Identifier" */
+184,	/* "X9.57" */
+185,	/* "X9.57 CM ?" */
+478,	/* "aRecord" */
+289,	/* "aaControls" */
+287,	/* "ac-auditEntity" */
+397,	/* "ac-proxying" */
+288,	/* "ac-targeting" */
+446,	/* "account" */
+364,	/* "ad dvcs" */
+606,	/* "additional verification" */
+419,	/* "aes-128-cbc" */
+421,	/* "aes-128-cfb" */
+650,	/* "aes-128-cfb1" */
+653,	/* "aes-128-cfb8" */
+418,	/* "aes-128-ecb" */
+420,	/* "aes-128-ofb" */
+423,	/* "aes-192-cbc" */
+425,	/* "aes-192-cfb" */
+651,	/* "aes-192-cfb1" */
+654,	/* "aes-192-cfb8" */
+422,	/* "aes-192-ecb" */
+424,	/* "aes-192-ofb" */
+427,	/* "aes-256-cbc" */
+429,	/* "aes-256-cfb" */
+652,	/* "aes-256-cfb1" */
+655,	/* "aes-256-cfb8" */
+426,	/* "aes-256-ecb" */
+428,	/* "aes-256-ofb" */
+376,	/* "algorithm" */
+484,	/* "associatedDomain" */
+485,	/* "associatedName" */
+501,	/* "audio" */
+882,	/* "authorityRevocationList" */
+91,	/* "bf-cbc" */
+93,	/* "bf-cfb" */
+92,	/* "bf-ecb" */
+94,	/* "bf-ofb" */
+494,	/* "buildingName" */
+860,	/* "businessCategory" */
+691,	/* "c2onb191v4" */
+692,	/* "c2onb191v5" */
+697,	/* "c2onb239v4" */
+698,	/* "c2onb239v5" */
+684,	/* "c2pnb163v1" */
+685,	/* "c2pnb163v2" */
+686,	/* "c2pnb163v3" */
+687,	/* "c2pnb176v1" */
+693,	/* "c2pnb208w1" */
+699,	/* "c2pnb272w1" */
+700,	/* "c2pnb304w1" */
+702,	/* "c2pnb368w1" */
+688,	/* "c2tnb191v1" */
+689,	/* "c2tnb191v2" */
+690,	/* "c2tnb191v3" */
+694,	/* "c2tnb239v1" */
+695,	/* "c2tnb239v2" */
+696,	/* "c2tnb239v3" */
+701,	/* "c2tnb359v1" */
+703,	/* "c2tnb431r1" */
+881,	/* "cACertificate" */
+483,	/* "cNAMERecord" */
+751,	/* "camellia-128-cbc" */
+757,	/* "camellia-128-cfb" */
+760,	/* "camellia-128-cfb1" */
+763,	/* "camellia-128-cfb8" */
+754,	/* "camellia-128-ecb" */
+766,	/* "camellia-128-ofb" */
+752,	/* "camellia-192-cbc" */
+758,	/* "camellia-192-cfb" */
+761,	/* "camellia-192-cfb1" */
+764,	/* "camellia-192-cfb8" */
+755,	/* "camellia-192-ecb" */
+767,	/* "camellia-192-ofb" */
+753,	/* "camellia-256-cbc" */
+759,	/* "camellia-256-cfb" */
+762,	/* "camellia-256-cfb1" */
+765,	/* "camellia-256-cfb8" */
+756,	/* "camellia-256-ecb" */
+768,	/* "camellia-256-ofb" */
+443,	/* "caseIgnoreIA5StringSyntax" */
+108,	/* "cast5-cbc" */
+110,	/* "cast5-cfb" */
+109,	/* "cast5-ecb" */
+111,	/* "cast5-ofb" */
+152,	/* "certBag" */
+677,	/* "certicom-arc" */
+517,	/* "certificate extensions" */
+883,	/* "certificateRevocationList" */
+54,	/* "challengePassword" */
+407,	/* "characteristic-two-field" */
+395,	/* "clearance" */
+633,	/* "cleartext track 2" */
+13,	/* "commonName" */
+513,	/* "content types" */
+50,	/* "contentType" */
+53,	/* "countersignature" */
+14,	/* "countryName" */
+153,	/* "crlBag" */
+884,	/* "crossCertificatePair" */
+806,	/* "cryptocom" */
+805,	/* "cryptopro" */
+500,	/* "dITRedirect" */
+451,	/* "dNSDomain" */
+495,	/* "dSAQuality" */
+434,	/* "data" */
+390,	/* "dcObject" */
+891,	/* "deltaRevocationList" */
+31,	/* "des-cbc" */
+643,	/* "des-cdmf" */
+30,	/* "des-cfb" */
+656,	/* "des-cfb1" */
+657,	/* "des-cfb8" */
+29,	/* "des-ecb" */
+32,	/* "des-ede" */
+43,	/* "des-ede-cbc" */
+60,	/* "des-ede-cfb" */
+62,	/* "des-ede-ofb" */
+33,	/* "des-ede3" */
+44,	/* "des-ede3-cbc" */
+61,	/* "des-ede3-cfb" */
+658,	/* "des-ede3-cfb1" */
+659,	/* "des-ede3-cfb8" */
+63,	/* "des-ede3-ofb" */
+45,	/* "des-ofb" */
+107,	/* "description" */
+871,	/* "destinationIndicator" */
+80,	/* "desx-cbc" */
+28,	/* "dhKeyAgreement" */
+11,	/* "directory services (X.500)" */
+378,	/* "directory services - algorithms" */
+887,	/* "distinguishedName" */
+892,	/* "dmdName" */
+174,	/* "dnQualifier" */
+447,	/* "document" */
+471,	/* "documentAuthor" */
+468,	/* "documentIdentifier" */
+472,	/* "documentLocation" */
+502,	/* "documentPublisher" */
+449,	/* "documentSeries" */
+469,	/* "documentTitle" */
+470,	/* "documentVersion" */
+380,	/* "dod" */
+391,	/* "domainComponent" */
+452,	/* "domainRelatedObject" */
+116,	/* "dsaEncryption" */
+67,	/* "dsaEncryption-old" */
+66,	/* "dsaWithSHA" */
+113,	/* "dsaWithSHA1" */
+70,	/* "dsaWithSHA1-old" */
+802,	/* "dsa_with_SHA224" */
+803,	/* "dsa_with_SHA256" */
+297,	/* "dvcs" */
+791,	/* "ecdsa-with-Recommended" */
+416,	/* "ecdsa-with-SHA1" */
+793,	/* "ecdsa-with-SHA224" */
+794,	/* "ecdsa-with-SHA256" */
+795,	/* "ecdsa-with-SHA384" */
+796,	/* "ecdsa-with-SHA512" */
+792,	/* "ecdsa-with-Specified" */
+48,	/* "emailAddress" */
+632,	/* "encrypted track 2" */
+885,	/* "enhancedSearchGuide" */
+56,	/* "extendedCertificateAttributes" */
+867,	/* "facsimileTelephoneNumber" */
+462,	/* "favouriteDrink" */
+453,	/* "friendlyCountry" */
+490,	/* "friendlyCountryName" */
+156,	/* "friendlyName" */
+631,	/* "generate cryptogram" */
+509,	/* "generationQualifier" */
+601,	/* "generic cryptogram" */
+99,	/* "givenName" */
+814,	/* "gost89-cnt" */
+855,	/* "hmac" */
+780,	/* "hmac-md5" */
+781,	/* "hmac-sha1" */
+797,	/* "hmacWithMD5" */
+163,	/* "hmacWithSHA1" */
+798,	/* "hmacWithSHA224" */
+799,	/* "hmacWithSHA256" */
+800,	/* "hmacWithSHA384" */
+801,	/* "hmacWithSHA512" */
+486,	/* "homePostalAddress" */
+473,	/* "homeTelephoneNumber" */
+466,	/* "host" */
+889,	/* "houseIdentifier" */
+442,	/* "iA5StringSyntax" */
+381,	/* "iana" */
+824,	/* "id-Gost28147-89-CryptoPro-A-ParamSet" */
+825,	/* "id-Gost28147-89-CryptoPro-B-ParamSet" */
+826,	/* "id-Gost28147-89-CryptoPro-C-ParamSet" */
+827,	/* "id-Gost28147-89-CryptoPro-D-ParamSet" */
+819,	/* "id-Gost28147-89-CryptoPro-KeyMeshing" */
+829,	/* "id-Gost28147-89-CryptoPro-Oscar-1-0-ParamSet" */
+828,	/* "id-Gost28147-89-CryptoPro-Oscar-1-1-ParamSet" */
+830,	/* "id-Gost28147-89-CryptoPro-RIC-1-ParamSet" */
+820,	/* "id-Gost28147-89-None-KeyMeshing" */
+823,	/* "id-Gost28147-89-TestParamSet" */
+840,	/* "id-GostR3410-2001-CryptoPro-A-ParamSet" */
+841,	/* "id-GostR3410-2001-CryptoPro-B-ParamSet" */
+842,	/* "id-GostR3410-2001-CryptoPro-C-ParamSet" */
+843,	/* "id-GostR3410-2001-CryptoPro-XchA-ParamSet" */
+844,	/* "id-GostR3410-2001-CryptoPro-XchB-ParamSet" */
+839,	/* "id-GostR3410-2001-TestParamSet" */
+832,	/* "id-GostR3410-94-CryptoPro-A-ParamSet" */
+833,	/* "id-GostR3410-94-CryptoPro-B-ParamSet" */
+834,	/* "id-GostR3410-94-CryptoPro-C-ParamSet" */
+835,	/* "id-GostR3410-94-CryptoPro-D-ParamSet" */
+836,	/* "id-GostR3410-94-CryptoPro-XchA-ParamSet" */
+837,	/* "id-GostR3410-94-CryptoPro-XchB-ParamSet" */
+838,	/* "id-GostR3410-94-CryptoPro-XchC-ParamSet" */
+831,	/* "id-GostR3410-94-TestParamSet" */
+845,	/* "id-GostR3410-94-a" */
+846,	/* "id-GostR3410-94-aBis" */
+847,	/* "id-GostR3410-94-b" */
+848,	/* "id-GostR3410-94-bBis" */
+822,	/* "id-GostR3411-94-CryptoProParamSet" */
+821,	/* "id-GostR3411-94-TestParamSet" */
+266,	/* "id-aca" */
+355,	/* "id-aca-accessIdentity" */
+354,	/* "id-aca-authenticationInfo" */
+356,	/* "id-aca-chargingIdentity" */
+399,	/* "id-aca-encAttrs" */
+357,	/* "id-aca-group" */
+358,	/* "id-aca-role" */
+176,	/* "id-ad" */
+788,	/* "id-aes128-wrap" */
+789,	/* "id-aes192-wrap" */
+790,	/* "id-aes256-wrap" */
+262,	/* "id-alg" */
+323,	/* "id-alg-des40" */
+326,	/* "id-alg-dh-pop" */
+325,	/* "id-alg-dh-sig-hmac-sha1" */
+324,	/* "id-alg-noSignature" */
+268,	/* "id-cct" */
+361,	/* "id-cct-PKIData" */
+362,	/* "id-cct-PKIResponse" */
+360,	/* "id-cct-crs" */
+81,	/* "id-ce" */
+680,	/* "id-characteristic-two-basis" */
+263,	/* "id-cmc" */
+334,	/* "id-cmc-addExtensions" */
+346,	/* "id-cmc-confirmCertAcceptance" */
+330,	/* "id-cmc-dataReturn" */
+336,	/* "id-cmc-decryptedPOP" */
+335,	/* "id-cmc-encryptedPOP" */
+339,	/* "id-cmc-getCRL" */
+338,	/* "id-cmc-getCert" */
+328,	/* "id-cmc-identification" */
+329,	/* "id-cmc-identityProof" */
+337,	/* "id-cmc-lraPOPWitness" */
+344,	/* "id-cmc-popLinkRandom" */
+345,	/* "id-cmc-popLinkWitness" */
+343,	/* "id-cmc-queryPending" */
+333,	/* "id-cmc-recipientNonce" */
+341,	/* "id-cmc-regInfo" */
+342,	/* "id-cmc-responseInfo" */
+340,	/* "id-cmc-revokeRequest" */
+332,	/* "id-cmc-senderNonce" */
+327,	/* "id-cmc-statusInfo" */
+331,	/* "id-cmc-transactionId" */
+787,	/* "id-ct-asciiTextWithCRLF" */
+408,	/* "id-ecPublicKey" */
+508,	/* "id-hex-multipart-message" */
+507,	/* "id-hex-partial-message" */
+260,	/* "id-it" */
+302,	/* "id-it-caKeyUpdateInfo" */
+298,	/* "id-it-caProtEncCert" */
+311,	/* "id-it-confirmWaitTime" */
+303,	/* "id-it-currentCRL" */
+300,	/* "id-it-encKeyPairTypes" */
+310,	/* "id-it-implicitConfirm" */
+308,	/* "id-it-keyPairParamRep" */
+307,	/* "id-it-keyPairParamReq" */
+312,	/* "id-it-origPKIMessage" */
+301,	/* "id-it-preferredSymmAlg" */
+309,	/* "id-it-revPassphrase" */
+299,	/* "id-it-signKeyPairTypes" */
+305,	/* "id-it-subscriptionRequest" */
+306,	/* "id-it-subscriptionResponse" */
+784,	/* "id-it-suppLangTags" */
+304,	/* "id-it-unsupportedOIDs" */
+128,	/* "id-kp" */
+280,	/* "id-mod-attribute-cert" */
+274,	/* "id-mod-cmc" */
+277,	/* "id-mod-cmp" */
+284,	/* "id-mod-cmp2000" */
+273,	/* "id-mod-crmf" */
+283,	/* "id-mod-dvcs" */
+275,	/* "id-mod-kea-profile-88" */
+276,	/* "id-mod-kea-profile-93" */
+282,	/* "id-mod-ocsp" */
+278,	/* "id-mod-qualified-cert-88" */
+279,	/* "id-mod-qualified-cert-93" */
+281,	/* "id-mod-timestamp-protocol" */
+264,	/* "id-on" */
+347,	/* "id-on-personalData" */
+265,	/* "id-pda" */
+352,	/* "id-pda-countryOfCitizenship" */
+353,	/* "id-pda-countryOfResidence" */
+348,	/* "id-pda-dateOfBirth" */
+351,	/* "id-pda-gender" */
+349,	/* "id-pda-placeOfBirth" */
+175,	/* "id-pe" */
+261,	/* "id-pkip" */
+258,	/* "id-pkix-mod" */
+269,	/* "id-pkix1-explicit-88" */
+271,	/* "id-pkix1-explicit-93" */
+270,	/* "id-pkix1-implicit-88" */
+272,	/* "id-pkix1-implicit-93" */
+662,	/* "id-ppl" */
+267,	/* "id-qcs" */
+359,	/* "id-qcs-pkixQCSyntax-v1" */
+259,	/* "id-qt" */
+313,	/* "id-regCtrl" */
+316,	/* "id-regCtrl-authenticator" */
+319,	/* "id-regCtrl-oldCertID" */
+318,	/* "id-regCtrl-pkiArchiveOptions" */
+317,	/* "id-regCtrl-pkiPublicationInfo" */
+320,	/* "id-regCtrl-protocolEncrKey" */
+315,	/* "id-regCtrl-regToken" */
+314,	/* "id-regInfo" */
+322,	/* "id-regInfo-certReq" */
+321,	/* "id-regInfo-utf8Pairs" */
+191,	/* "id-smime-aa" */
+215,	/* "id-smime-aa-contentHint" */
+218,	/* "id-smime-aa-contentIdentifier" */
+221,	/* "id-smime-aa-contentReference" */
+240,	/* "id-smime-aa-dvcs-dvc" */
+217,	/* "id-smime-aa-encapContentType" */
+222,	/* "id-smime-aa-encrypKeyPref" */
+220,	/* "id-smime-aa-equivalentLabels" */
+232,	/* "id-smime-aa-ets-CertificateRefs" */
+233,	/* "id-smime-aa-ets-RevocationRefs" */
+238,	/* "id-smime-aa-ets-archiveTimeStamp" */
+237,	/* "id-smime-aa-ets-certCRLTimestamp" */
+234,	/* "id-smime-aa-ets-certValues" */
+227,	/* "id-smime-aa-ets-commitmentType" */
+231,	/* "id-smime-aa-ets-contentTimestamp" */
+236,	/* "id-smime-aa-ets-escTimeStamp" */
+230,	/* "id-smime-aa-ets-otherSigCert" */
+235,	/* "id-smime-aa-ets-revocationValues" */
+226,	/* "id-smime-aa-ets-sigPolicyId" */
+229,	/* "id-smime-aa-ets-signerAttr" */
+228,	/* "id-smime-aa-ets-signerLocation" */
+219,	/* "id-smime-aa-macValue" */
+214,	/* "id-smime-aa-mlExpandHistory" */
+216,	/* "id-smime-aa-msgSigDigest" */
+212,	/* "id-smime-aa-receiptRequest" */
+213,	/* "id-smime-aa-securityLabel" */
+239,	/* "id-smime-aa-signatureType" */
+223,	/* "id-smime-aa-signingCertificate" */
+224,	/* "id-smime-aa-smimeEncryptCerts" */
+225,	/* "id-smime-aa-timeStampToken" */
+192,	/* "id-smime-alg" */
+243,	/* "id-smime-alg-3DESwrap" */
+246,	/* "id-smime-alg-CMS3DESwrap" */
+247,	/* "id-smime-alg-CMSRC2wrap" */
+245,	/* "id-smime-alg-ESDH" */
+241,	/* "id-smime-alg-ESDHwith3DES" */
+242,	/* "id-smime-alg-ESDHwithRC2" */
+244,	/* "id-smime-alg-RC2wrap" */
+193,	/* "id-smime-cd" */
+248,	/* "id-smime-cd-ldap" */
+190,	/* "id-smime-ct" */
+210,	/* "id-smime-ct-DVCSRequestData" */
+211,	/* "id-smime-ct-DVCSResponseData" */
+208,	/* "id-smime-ct-TDTInfo" */
+207,	/* "id-smime-ct-TSTInfo" */
+205,	/* "id-smime-ct-authData" */
+786,	/* "id-smime-ct-compressedData" */
+209,	/* "id-smime-ct-contentInfo" */
+206,	/* "id-smime-ct-publishCert" */
+204,	/* "id-smime-ct-receipt" */
+195,	/* "id-smime-cti" */
+255,	/* "id-smime-cti-ets-proofOfApproval" */
+256,	/* "id-smime-cti-ets-proofOfCreation" */
+253,	/* "id-smime-cti-ets-proofOfDelivery" */
+251,	/* "id-smime-cti-ets-proofOfOrigin" */
+252,	/* "id-smime-cti-ets-proofOfReceipt" */
+254,	/* "id-smime-cti-ets-proofOfSender" */
+189,	/* "id-smime-mod" */
+196,	/* "id-smime-mod-cms" */
+197,	/* "id-smime-mod-ess" */
+202,	/* "id-smime-mod-ets-eSigPolicy-88" */
+203,	/* "id-smime-mod-ets-eSigPolicy-97" */
+200,	/* "id-smime-mod-ets-eSignature-88" */
+201,	/* "id-smime-mod-ets-eSignature-97" */
+199,	/* "id-smime-mod-msg-v3" */
+198,	/* "id-smime-mod-oid" */
+194,	/* "id-smime-spq" */
+250,	/* "id-smime-spq-ets-sqt-unotice" */
+249,	/* "id-smime-spq-ets-sqt-uri" */
+34,	/* "idea-cbc" */
+35,	/* "idea-cfb" */
+36,	/* "idea-ecb" */
+46,	/* "idea-ofb" */
+676,	/* "identified-organization" */
+461,	/* "info" */
+101,	/* "initials" */
+869,	/* "internationaliSDNNumber" */
+749,	/* "ipsec3" */
+750,	/* "ipsec4" */
+181,	/* "iso" */
+623,	/* "issuer capabilities" */
+645,	/* "itu-t" */
+492,	/* "janetMailbox" */
+646,	/* "joint-iso-itu-t" */
+150,	/* "keyBag" */
+773,	/* "kisa" */
+477,	/* "lastModifiedBy" */
+476,	/* "lastModifiedTime" */
+157,	/* "localKeyID" */
+15,	/* "localityName" */
+480,	/* "mXRecord" */
+493,	/* "mailPreferenceOption" */
+467,	/* "manager" */
+ 3,	/* "md2" */
+ 7,	/* "md2WithRSAEncryption" */
+257,	/* "md4" */
+396,	/* "md4WithRSAEncryption" */
+ 4,	/* "md5" */
+114,	/* "md5-sha1" */
+104,	/* "md5WithRSA" */
+ 8,	/* "md5WithRSAEncryption" */
+95,	/* "mdc2" */
+96,	/* "mdc2WithRSA" */
+875,	/* "member" */
+602,	/* "merchant initiated auth" */
+514,	/* "message extensions" */
+51,	/* "messageDigest" */
+506,	/* "mime-mhs-bodies" */
+505,	/* "mime-mhs-headings" */
+488,	/* "mobileTelephoneNumber" */
+481,	/* "nSRecord" */
+173,	/* "name" */
+681,	/* "onBasis" */
+379,	/* "org" */
+17,	/* "organizationName" */
+491,	/* "organizationalStatus" */
+18,	/* "organizationalUnitName" */
+475,	/* "otherMailbox" */
+876,	/* "owner" */
+489,	/* "pagerTelephoneNumber" */
+782,	/* "password based MAC" */
+374,	/* "path" */
+621,	/* "payment gateway capabilities" */
+ 9,	/* "pbeWithMD2AndDES-CBC" */
+168,	/* "pbeWithMD2AndRC2-CBC" */
+112,	/* "pbeWithMD5AndCast5CBC" */
+10,	/* "pbeWithMD5AndDES-CBC" */
+169,	/* "pbeWithMD5AndRC2-CBC" */
+148,	/* "pbeWithSHA1And128BitRC2-CBC" */
+144,	/* "pbeWithSHA1And128BitRC4" */
+147,	/* "pbeWithSHA1And2-KeyTripleDES-CBC" */
+146,	/* "pbeWithSHA1And3-KeyTripleDES-CBC" */
+149,	/* "pbeWithSHA1And40BitRC2-CBC" */
+145,	/* "pbeWithSHA1And40BitRC4" */
+170,	/* "pbeWithSHA1AndDES-CBC" */
+68,	/* "pbeWithSHA1AndRC2-CBC" */
+499,	/* "personalSignature" */
+487,	/* "personalTitle" */
+464,	/* "photo" */
+863,	/* "physicalDeliveryOfficeName" */
+437,	/* "pilot" */
+439,	/* "pilotAttributeSyntax" */
+438,	/* "pilotAttributeType" */
+479,	/* "pilotAttributeType27" */
+456,	/* "pilotDSA" */
+441,	/* "pilotGroups" */
+444,	/* "pilotObject" */
+440,	/* "pilotObjectClass" */
+455,	/* "pilotOrganization" */
+445,	/* "pilotPerson" */
+186,	/* "pkcs1" */
+27,	/* "pkcs3" */
+187,	/* "pkcs5" */
+20,	/* "pkcs7" */
+21,	/* "pkcs7-data" */
+25,	/* "pkcs7-digestData" */
+26,	/* "pkcs7-encryptedData" */
+23,	/* "pkcs7-envelopedData" */
+24,	/* "pkcs7-signedAndEnvelopedData" */
+22,	/* "pkcs7-signedData" */
+151,	/* "pkcs8ShroudedKeyBag" */
+47,	/* "pkcs9" */
+862,	/* "postOfficeBox" */
+861,	/* "postalAddress" */
+661,	/* "postalCode" */
+683,	/* "ppBasis" */
+872,	/* "preferredDeliveryMethod" */
+873,	/* "presentationAddress" */
+406,	/* "prime-field" */
+409,	/* "prime192v1" */
+410,	/* "prime192v2" */
+411,	/* "prime192v3" */
+412,	/* "prime239v1" */
+413,	/* "prime239v2" */
+414,	/* "prime239v3" */
+415,	/* "prime256v1" */
+886,	/* "protocolInformation" */
+510,	/* "pseudonym" */
+435,	/* "pss" */
+286,	/* "qcStatements" */
+457,	/* "qualityLabelledData" */
+450,	/* "rFC822localPart" */
+98,	/* "rc2-40-cbc" */
+166,	/* "rc2-64-cbc" */
+37,	/* "rc2-cbc" */
+39,	/* "rc2-cfb" */
+38,	/* "rc2-ecb" */
+40,	/* "rc2-ofb" */
+ 5,	/* "rc4" */
+97,	/* "rc4-40" */
+120,	/* "rc5-cbc" */
+122,	/* "rc5-cfb" */
+121,	/* "rc5-ecb" */
+123,	/* "rc5-ofb" */
+870,	/* "registeredAddress" */
+460,	/* "rfc822Mailbox" */
+117,	/* "ripemd160" */
+119,	/* "ripemd160WithRSA" */
+400,	/* "role" */
+877,	/* "roleOccupant" */
+448,	/* "room" */
+463,	/* "roomNumber" */
+19,	/* "rsa" */
+ 6,	/* "rsaEncryption" */
+644,	/* "rsaOAEPEncryptionSET" */
+377,	/* "rsaSignature" */
+124,	/* "run length compression" */
+482,	/* "sOARecord" */
+155,	/* "safeContentsBag" */
+291,	/* "sbgp-autonomousSysNum" */
+290,	/* "sbgp-ipAddrBlock" */
+292,	/* "sbgp-routerIdentifier" */
+159,	/* "sdsiCertificate" */
+859,	/* "searchGuide" */
+704,	/* "secp112r1" */
+705,	/* "secp112r2" */
+706,	/* "secp128r1" */
+707,	/* "secp128r2" */
+708,	/* "secp160k1" */
+709,	/* "secp160r1" */
+710,	/* "secp160r2" */
+711,	/* "secp192k1" */
+712,	/* "secp224k1" */
+713,	/* "secp224r1" */
+714,	/* "secp256k1" */
+715,	/* "secp384r1" */
+716,	/* "secp521r1" */
+154,	/* "secretBag" */
+474,	/* "secretary" */
+717,	/* "sect113r1" */
+718,	/* "sect113r2" */
+719,	/* "sect131r1" */
+720,	/* "sect131r2" */
+721,	/* "sect163k1" */
+722,	/* "sect163r1" */
+723,	/* "sect163r2" */
+724,	/* "sect193r1" */
+725,	/* "sect193r2" */
+726,	/* "sect233k1" */
+727,	/* "sect233r1" */
+728,	/* "sect239k1" */
+729,	/* "sect283k1" */
+730,	/* "sect283r1" */
+731,	/* "sect409k1" */
+732,	/* "sect409r1" */
+733,	/* "sect571k1" */
+734,	/* "sect571r1" */
+635,	/* "secure device signature" */
+878,	/* "seeAlso" */
+777,	/* "seed-cbc" */
+779,	/* "seed-cfb" */
+776,	/* "seed-ecb" */
+778,	/* "seed-ofb" */
+105,	/* "serialNumber" */
+625,	/* "set-addPolicy" */
+515,	/* "set-attr" */
+518,	/* "set-brand" */
+638,	/* "set-brand-AmericanExpress" */
+637,	/* "set-brand-Diners" */
+636,	/* "set-brand-IATA-ATA" */
+639,	/* "set-brand-JCB" */
+641,	/* "set-brand-MasterCard" */
+642,	/* "set-brand-Novus" */
+640,	/* "set-brand-Visa" */
+516,	/* "set-policy" */
+607,	/* "set-policy-root" */
+624,	/* "set-rootKeyThumb" */
+620,	/* "setAttr-Cert" */
+628,	/* "setAttr-IssCap-CVM" */
+630,	/* "setAttr-IssCap-Sig" */
+629,	/* "setAttr-IssCap-T2" */
+627,	/* "setAttr-Token-B0Prime" */
+626,	/* "setAttr-Token-EMV" */
+622,	/* "setAttr-TokenType" */
+619,	/* "setCext-IssuerCapabilities" */
+615,	/* "setCext-PGWYcapabilities" */
+616,	/* "setCext-TokenIdentifier" */
+618,	/* "setCext-TokenType" */
+617,	/* "setCext-Track2Data" */
+611,	/* "setCext-cCertRequired" */
+609,	/* "setCext-certType" */
+608,	/* "setCext-hashedRoot" */
+610,	/* "setCext-merchData" */
+613,	/* "setCext-setExt" */
+614,	/* "setCext-setQualf" */
+612,	/* "setCext-tunneling" */
+540,	/* "setct-AcqCardCodeMsg" */
+576,	/* "setct-AcqCardCodeMsgTBE" */
+570,	/* "setct-AuthReqTBE" */
+534,	/* "setct-AuthReqTBS" */
+527,	/* "setct-AuthResBaggage" */
+571,	/* "setct-AuthResTBE" */
+572,	/* "setct-AuthResTBEX" */
+535,	/* "setct-AuthResTBS" */
+536,	/* "setct-AuthResTBSX" */
+528,	/* "setct-AuthRevReqBaggage" */
+577,	/* "setct-AuthRevReqTBE" */
+541,	/* "setct-AuthRevReqTBS" */
+529,	/* "setct-AuthRevResBaggage" */
+542,	/* "setct-AuthRevResData" */
+578,	/* "setct-AuthRevResTBE" */
+579,	/* "setct-AuthRevResTBEB" */
+543,	/* "setct-AuthRevResTBS" */
+573,	/* "setct-AuthTokenTBE" */
+537,	/* "setct-AuthTokenTBS" */
+600,	/* "setct-BCIDistributionTBS" */
+558,	/* "setct-BatchAdminReqData" */
+592,	/* "setct-BatchAdminReqTBE" */
+559,	/* "setct-BatchAdminResData" */
+593,	/* "setct-BatchAdminResTBE" */
+599,	/* "setct-CRLNotificationResTBS" */
+598,	/* "setct-CRLNotificationTBS" */
+580,	/* "setct-CapReqTBE" */
+581,	/* "setct-CapReqTBEX" */
+544,	/* "setct-CapReqTBS" */
+545,	/* "setct-CapReqTBSX" */
+546,	/* "setct-CapResData" */
+582,	/* "setct-CapResTBE" */
+583,	/* "setct-CapRevReqTBE" */
+584,	/* "setct-CapRevReqTBEX" */
+547,	/* "setct-CapRevReqTBS" */
+548,	/* "setct-CapRevReqTBSX" */
+549,	/* "setct-CapRevResData" */
+585,	/* "setct-CapRevResTBE" */
+538,	/* "setct-CapTokenData" */
+530,	/* "setct-CapTokenSeq" */
+574,	/* "setct-CapTokenTBE" */
+575,	/* "setct-CapTokenTBEX" */
+539,	/* "setct-CapTokenTBS" */
+560,	/* "setct-CardCInitResTBS" */
+566,	/* "setct-CertInqReqTBS" */
+563,	/* "setct-CertReqData" */
+595,	/* "setct-CertReqTBE" */
+596,	/* "setct-CertReqTBEX" */
+564,	/* "setct-CertReqTBS" */
+565,	/* "setct-CertResData" */
+597,	/* "setct-CertResTBE" */
+586,	/* "setct-CredReqTBE" */
+587,	/* "setct-CredReqTBEX" */
+550,	/* "setct-CredReqTBS" */
+551,	/* "setct-CredReqTBSX" */
+552,	/* "setct-CredResData" */
+588,	/* "setct-CredResTBE" */
+589,	/* "setct-CredRevReqTBE" */
+590,	/* "setct-CredRevReqTBEX" */
+553,	/* "setct-CredRevReqTBS" */
+554,	/* "setct-CredRevReqTBSX" */
+555,	/* "setct-CredRevResData" */
+591,	/* "setct-CredRevResTBE" */
+567,	/* "setct-ErrorTBS" */
+526,	/* "setct-HODInput" */
+561,	/* "setct-MeAqCInitResTBS" */
+522,	/* "setct-OIData" */
+519,	/* "setct-PANData" */
+521,	/* "setct-PANOnly" */
+520,	/* "setct-PANToken" */
+556,	/* "setct-PCertReqData" */
+557,	/* "setct-PCertResTBS" */
+523,	/* "setct-PI" */
+532,	/* "setct-PI-TBS" */
+524,	/* "setct-PIData" */
+525,	/* "setct-PIDataUnsigned" */
+568,	/* "setct-PIDualSignedTBE" */
+569,	/* "setct-PIUnsignedTBE" */
+531,	/* "setct-PInitResData" */
+533,	/* "setct-PResData" */
+594,	/* "setct-RegFormReqTBE" */
+562,	/* "setct-RegFormResTBS" */
+604,	/* "setext-pinAny" */
+603,	/* "setext-pinSecure" */
+605,	/* "setext-track2" */
+41,	/* "sha" */
+64,	/* "sha1" */
+115,	/* "sha1WithRSA" */
+65,	/* "sha1WithRSAEncryption" */
+675,	/* "sha224" */
+671,	/* "sha224WithRSAEncryption" */
+672,	/* "sha256" */
+668,	/* "sha256WithRSAEncryption" */
+673,	/* "sha384" */
+669,	/* "sha384WithRSAEncryption" */
+674,	/* "sha512" */
+670,	/* "sha512WithRSAEncryption" */
+42,	/* "shaWithRSAEncryption" */
+52,	/* "signingTime" */
+454,	/* "simpleSecurityObject" */
+496,	/* "singleLevelQuality" */
+16,	/* "stateOrProvinceName" */
+660,	/* "streetAddress" */
+498,	/* "subtreeMaximumQuality" */
+497,	/* "subtreeMinimumQuality" */
+890,	/* "supportedAlgorithms" */
+874,	/* "supportedApplicationContext" */
+100,	/* "surname" */
+864,	/* "telephoneNumber" */
+866,	/* "teletexTerminalIdentifier" */
+865,	/* "telexNumber" */
+459,	/* "textEncodedORAddress" */
+293,	/* "textNotice" */
+106,	/* "title" */
+682,	/* "tpBasis" */
+436,	/* "ucl" */
+ 0,	/* "undefined" */
+888,	/* "uniqueMember" */
+55,	/* "unstructuredAddress" */
+49,	/* "unstructuredName" */
+880,	/* "userCertificate" */
+465,	/* "userClass" */
+458,	/* "userId" */
+879,	/* "userPassword" */
+373,	/* "valid" */
+678,	/* "wap" */
+679,	/* "wap-wsg" */
+735,	/* "wap-wsg-idm-ecid-wtls1" */
+743,	/* "wap-wsg-idm-ecid-wtls10" */
+744,	/* "wap-wsg-idm-ecid-wtls11" */
+745,	/* "wap-wsg-idm-ecid-wtls12" */
+736,	/* "wap-wsg-idm-ecid-wtls3" */
+737,	/* "wap-wsg-idm-ecid-wtls4" */
+738,	/* "wap-wsg-idm-ecid-wtls5" */
+739,	/* "wap-wsg-idm-ecid-wtls6" */
+740,	/* "wap-wsg-idm-ecid-wtls7" */
+741,	/* "wap-wsg-idm-ecid-wtls8" */
+742,	/* "wap-wsg-idm-ecid-wtls9" */
+804,	/* "whirlpool" */
+868,	/* "x121Address" */
+503,	/* "x500UniqueIdentifier" */
+158,	/* "x509Certificate" */
+160,	/* "x509Crl" */
+125,	/* "zlib compression" */
+};
+
+static const unsigned int obj_objs[NUM_OBJ]=3D{
+ 0,	/* OBJ_undef                        0 */
+393,	/* OBJ_joint_iso_ccitt              OBJ_joint_iso_itu_t */
+404,	/* OBJ_ccitt                        OBJ_itu_t */
+645,	/* OBJ_itu_t                        0 */
+434,	/* OBJ_data                         0 9 */
+181,	/* OBJ_iso                          1 */
+182,	/* OBJ_member_body                  1 2 */
+379,	/* OBJ_org                          1 3 */
+676,	/* OBJ_identified_organization      1 3 */
+646,	/* OBJ_joint_iso_itu_t              2 */
+11,	/* OBJ_X500                         2 5 */
+647,	/* OBJ_international_organizations  2 23 */
+380,	/* OBJ_dod                          1 3 6 */
+12,	/* OBJ_X509                         2 5 4 */
+378,	/* OBJ_X500algorithms               2 5 8 */
+81,	/* OBJ_id_ce                        2 5 29 */
+512,	/* OBJ_id_set                       2 23 42 */
+678,	/* OBJ_wap                          2 23 43 */
+435,	/* OBJ_pss                          0 9 2342 */
+183,	/* OBJ_ISO_US                       1 2 840 */
+381,	/* OBJ_iana                         1 3 6 1 */
+677,	/* OBJ_certicom_arc                 1 3 132 */
+394,	/* OBJ_selected_attribute_types     2 5 1 5 */
+13,	/* OBJ_commonName                   2 5 4 3 */
+100,	/* OBJ_surname                      2 5 4 4 */
+105,	/* OBJ_serialNumber                 2 5 4 5 */
+14,	/* OBJ_countryName                  2 5 4 6 */
+15,	/* OBJ_localityName                 2 5 4 7 */
+16,	/* OBJ_stateOrProvinceName          2 5 4 8 */
+660,	/* OBJ_streetAddress                2 5 4 9 */
+17,	/* OBJ_organizationName             2 5 4 10 */
+18,	/* OBJ_organizationalUnitName       2 5 4 11 */
+106,	/* OBJ_title                        2 5 4 12 */
+107,	/* OBJ_description                  2 5 4 13 */
+859,	/* OBJ_searchGuide                  2 5 4 14 */
+860,	/* OBJ_businessCategory             2 5 4 15 */
+861,	/* OBJ_postalAddress                2 5 4 16 */
+661,	/* OBJ_postalCode                   2 5 4 17 */
+862,	/* OBJ_postOfficeBox                2 5 4 18 */
+863,	/* OBJ_physicalDeliveryOfficeName   2 5 4 19 */
+864,	/* OBJ_telephoneNumber              2 5 4 20 */
+865,	/* OBJ_telexNumber                  2 5 4 21 */
+866,	/* OBJ_teletexTerminalIdentifier    2 5 4 22 */
+867,	/* OBJ_facsimileTelephoneNumber     2 5 4 23 */
+868,	/* OBJ_x121Address                  2 5 4 24 */
+869,	/* OBJ_internationaliSDNNumber      2 5 4 25 */
+870,	/* OBJ_registeredAddress            2 5 4 26 */
+871,	/* OBJ_destinationIndicator         2 5 4 27 */
+872,	/* OBJ_preferredDeliveryMethod      2 5 4 28 */
+873,	/* OBJ_presentationAddress          2 5 4 29 */
+874,	/* OBJ_supportedApplicationContext  2 5 4 30 */
+875,	/* OBJ_member                       2 5 4 31 */
+876,	/* OBJ_owner                        2 5 4 32 */
+877,	/* OBJ_roleOccupant                 2 5 4 33 */
+878,	/* OBJ_seeAlso                      2 5 4 34 */
+879,	/* OBJ_userPassword                 2 5 4 35 */
+880,	/* OBJ_userCertificate              2 5 4 36 */
+881,	/* OBJ_cACertificate                2 5 4 37 */
+882,	/* OBJ_authorityRevocationList      2 5 4 38 */
+883,	/* OBJ_certificateRevocationList    2 5 4 39 */
+884,	/* OBJ_crossCertificatePair         2 5 4 40 */
+173,	/* OBJ_name                         2 5 4 41 */
+99,	/* OBJ_givenName                    2 5 4 42 */
+101,	/* OBJ_initials                     2 5 4 43 */
+509,	/* OBJ_generationQualifier          2 5 4 44 */
+503,	/* OBJ_x500UniqueIdentifier         2 5 4 45 */
+174,	/* OBJ_dnQualifier                  2 5 4 46 */
+885,	/* OBJ_enhancedSearchGuide          2 5 4 47 */
+886,	/* OBJ_protocolInformation          2 5 4 48 */
+887,	/* OBJ_distinguishedName            2 5 4 49 */
+888,	/* OBJ_uniqueMember                 2 5 4 50 */
+889,	/* OBJ_houseIdentifier              2 5 4 51 */
+890,	/* OBJ_supportedAlgorithms          2 5 4 52 */
+891,	/* OBJ_deltaRevocationList          2 5 4 53 */
+892,	/* OBJ_dmdName                      2 5 4 54 */
+510,	/* OBJ_pseudonym                    2 5 4 65 */
+400,	/* OBJ_role                         2 5 4 72 */
+769,	/* OBJ_subject_directory_attributes 2 5 29 9 */
+82,	/* OBJ_subject_key_identifier       2 5 29 14 */
+83,	/* OBJ_key_usage                    2 5 29 15 */
+84,	/* OBJ_private_key_usage_period     2 5 29 16 */
+85,	/* OBJ_subject_alt_name             2 5 29 17 */
+86,	/* OBJ_issuer_alt_name              2 5 29 18 */
+87,	/* OBJ_basic_constraints            2 5 29 19 */
+88,	/* OBJ_crl_number                   2 5 29 20 */
+141,	/* OBJ_crl_reason                   2 5 29 21 */
+430,	/* OBJ_hold_instruction_code        2 5 29 23 */
+142,	/* OBJ_invalidity_date              2 5 29 24 */
+140,	/* OBJ_delta_crl                    2 5 29 27 */
+770,	/* OBJ_issuing_distribution_point   2 5 29 28 */
+771,	/* OBJ_certificate_issuer           2 5 29 29 */
+666,	/* OBJ_name_constraints             2 5 29 30 */
+103,	/* OBJ_crl_distribution_points      2 5 29 31 */
+89,	/* OBJ_certificate_policies         2 5 29 32 */
+747,	/* OBJ_policy_mappings              2 5 29 33 */
+90,	/* OBJ_authority_key_identifier     2 5 29 35 */
+401,	/* OBJ_policy_constraints           2 5 29 36 */
+126,	/* OBJ_ext_key_usage                2 5 29 37 */
+857,	/* OBJ_freshest_crl                 2 5 29 46 */
+748,	/* OBJ_inhibit_any_policy           2 5 29 54 */
+402,	/* OBJ_target_information           2 5 29 55 */
+403,	/* OBJ_no_rev_avail                 2 5 29 56 */
+513,	/* OBJ_set_ctype                    2 23 42 0 */
+514,	/* OBJ_set_msgExt                   2 23 42 1 */
+515,	/* OBJ_set_attr                     2 23 42 3 */
+516,	/* OBJ_set_policy                   2 23 42 5 */
+517,	/* OBJ_set_certExt                  2 23 42 7 */
+518,	/* OBJ_set_brand                    2 23 42 8 */
+679,	/* OBJ_wap_wsg                      2 23 43 1 */
+382,	/* OBJ_Directory                    1 3 6 1 1 */
+383,	/* OBJ_Management                   1 3 6 1 2 */
+384,	/* OBJ_Experimental                 1 3 6 1 3 */
+385,	/* OBJ_Private                      1 3 6 1 4 */
+386,	/* OBJ_Security                     1 3 6 1 5 */
+387,	/* OBJ_SNMPv2                       1 3 6 1 6 */
+388,	/* OBJ_Mail                         1 3 6 1 7 */
+376,	/* OBJ_algorithm                    1 3 14 3 2 */
+395,	/* OBJ_clearance                    2 5 1 5 55 */
+19,	/* OBJ_rsa                          2 5 8 1 1 */
+96,	/* OBJ_mdc2WithRSA                  2 5 8 3 100 */
+95,	/* OBJ_mdc2                         2 5 8 3 101 */
+746,	/* OBJ_any_policy                   2 5 29 32 0 */
+519,	/* OBJ_setct_PANData                2 23 42 0 0 */
+520,	/* OBJ_setct_PANToken               2 23 42 0 1 */
+521,	/* OBJ_setct_PANOnly                2 23 42 0 2 */
+522,	/* OBJ_setct_OIData                 2 23 42 0 3 */
+523,	/* OBJ_setct_PI                     2 23 42 0 4 */
+524,	/* OBJ_setct_PIData                 2 23 42 0 5 */
+525,	/* OBJ_setct_PIDataUnsigned         2 23 42 0 6 */
+526,	/* OBJ_setct_HODInput               2 23 42 0 7 */
+527,	/* OBJ_setct_AuthResBaggage         2 23 42 0 8 */
+528,	/* OBJ_setct_AuthRevReqBaggage      2 23 42 0 9 */
+529,	/* OBJ_setct_AuthRevResBaggage      2 23 42 0 10 */
+530,	/* OBJ_setct_CapTokenSeq            2 23 42 0 11 */
+531,	/* OBJ_setct_PInitResData           2 23 42 0 12 */
+532,	/* OBJ_setct_PI_TBS                 2 23 42 0 13 */
+533,	/* OBJ_setct_PResData               2 23 42 0 14 */
+534,	/* OBJ_setct_AuthReqTBS             2 23 42 0 16 */
+535,	/* OBJ_setct_AuthResTBS             2 23 42 0 17 */
+536,	/* OBJ_setct_AuthResTBSX            2 23 42 0 18 */
+537,	/* OBJ_setct_AuthTokenTBS           2 23 42 0 19 */
+538,	/* OBJ_setct_CapTokenData           2 23 42 0 20 */
+539,	/* OBJ_setct_CapTokenTBS            2 23 42 0 21 */
+540,	/* OBJ_setct_AcqCardCodeMsg         2 23 42 0 22 */
+541,	/* OBJ_setct_AuthRevReqTBS          2 23 42 0 23 */
+542,	/* OBJ_setct_AuthRevResData         2 23 42 0 24 */
+543,	/* OBJ_setct_AuthRevResTBS          2 23 42 0 25 */
+544,	/* OBJ_setct_CapReqTBS              2 23 42 0 26 */
+545,	/* OBJ_setct_CapReqTBSX             2 23 42 0 27 */
+546,	/* OBJ_setct_CapResData             2 23 42 0 28 */
+547,	/* OBJ_setct_CapRevReqTBS           2 23 42 0 29 */
+548,	/* OBJ_setct_CapRevReqTBSX          2 23 42 0 30 */
+549,	/* OBJ_setct_CapRevResData          2 23 42 0 31 */
+550,	/* OBJ_setct_CredReqTBS             2 23 42 0 32 */
+551,	/* OBJ_setct_CredReqTBSX            2 23 42 0 33 */
+552,	/* OBJ_setct_CredResData            2 23 42 0 34 */
+553,	/* OBJ_setct_CredRevReqTBS          2 23 42 0 35 */
+554,	/* OBJ_setct_CredRevReqTBSX         2 23 42 0 36 */
+555,	/* OBJ_setct_CredRevResData         2 23 42 0 37 */
+556,	/* OBJ_setct_PCertReqData           2 23 42 0 38 */
+557,	/* OBJ_setct_PCertResTBS            2 23 42 0 39 */
+558,	/* OBJ_setct_BatchAdminReqData      2 23 42 0 40 */
+559,	/* OBJ_setct_BatchAdminResData      2 23 42 0 41 */
+560,	/* OBJ_setct_CardCInitResTBS        2 23 42 0 42 */
+561,	/* OBJ_setct_MeAqCInitResTBS        2 23 42 0 43 */
+562,	/* OBJ_setct_RegFormResTBS          2 23 42 0 44 */
+563,	/* OBJ_setct_CertReqData            2 23 42 0 45 */
+564,	/* OBJ_setct_CertReqTBS             2 23 42 0 46 */
+565,	/* OBJ_setct_CertResData            2 23 42 0 47 */
+566,	/* OBJ_setct_CertInqReqTBS          2 23 42 0 48 */
+567,	/* OBJ_setct_ErrorTBS               2 23 42 0 49 */
+568,	/* OBJ_setct_PIDualSignedTBE        2 23 42 0 50 */
+569,	/* OBJ_setct_PIUnsignedTBE          2 23 42 0 51 */
+570,	/* OBJ_setct_AuthReqTBE             2 23 42 0 52 */
+571,	/* OBJ_setct_AuthResTBE             2 23 42 0 53 */
+572,	/* OBJ_setct_AuthResTBEX            2 23 42 0 54 */
+573,	/* OBJ_setct_AuthTokenTBE           2 23 42 0 55 */
+574,	/* OBJ_setct_CapTokenTBE            2 23 42 0 56 */
+575,	/* OBJ_setct_CapTokenTBEX           2 23 42 0 57 */
+576,	/* OBJ_setct_AcqCardCodeMsgTBE      2 23 42 0 58 */
+577,	/* OBJ_setct_AuthRevReqTBE          2 23 42 0 59 */
+578,	/* OBJ_setct_AuthRevResTBE          2 23 42 0 60 */
+579,	/* OBJ_setct_AuthRevResTBEB         2 23 42 0 61 */
+580,	/* OBJ_setct_CapReqTBE              2 23 42 0 62 */
+581,	/* OBJ_setct_CapReqTBEX             2 23 42 0 63 */
+582,	/* OBJ_setct_CapResTBE              2 23 42 0 64 */
+583,	/* OBJ_setct_CapRevReqTBE           2 23 42 0 65 */
+584,	/* OBJ_setct_CapRevReqTBEX          2 23 42 0 66 */
+585,	/* OBJ_setct_CapRevResTBE           2 23 42 0 67 */
+586,	/* OBJ_setct_CredReqTBE             2 23 42 0 68 */
+587,	/* OBJ_setct_CredReqTBEX            2 23 42 0 69 */
+588,	/* OBJ_setct_CredResTBE             2 23 42 0 70 */
+589,	/* OBJ_setct_CredRevReqTBE          2 23 42 0 71 */
+590,	/* OBJ_setct_CredRevReqTBEX         2 23 42 0 72 */
+591,	/* OBJ_setct_CredRevResTBE          2 23 42 0 73 */
+592,	/* OBJ_setct_BatchAdminReqTBE       2 23 42 0 74 */
+593,	/* OBJ_setct_BatchAdminResTBE       2 23 42 0 75 */
+594,	/* OBJ_setct_RegFormReqTBE          2 23 42 0 76 */
+595,	/* OBJ_setct_CertReqTBE             2 23 42 0 77 */
+596,	/* OBJ_setct_CertReqTBEX            2 23 42 0 78 */
+597,	/* OBJ_setct_CertResTBE             2 23 42 0 79 */
+598,	/* OBJ_setct_CRLNotificationTBS     2 23 42 0 80 */
+599,	/* OBJ_setct_CRLNotificationResTBS  2 23 42 0 81 */
+600,	/* OBJ_setct_BCIDistributionTBS     2 23 42 0 82 */
+601,	/* OBJ_setext_genCrypt              2 23 42 1 1 */
+602,	/* OBJ_setext_miAuth                2 23 42 1 3 */
+603,	/* OBJ_setext_pinSecure             2 23 42 1 4 */
+604,	/* OBJ_setext_pinAny                2 23 42 1 5 */
+605,	/* OBJ_setext_track2                2 23 42 1 7 */
+606,	/* OBJ_setext_cv                    2 23 42 1 8 */
+620,	/* OBJ_setAttr_Cert                 2 23 42 3 0 */
+621,	/* OBJ_setAttr_PGWYcap              2 23 42 3 1 */
+622,	/* OBJ_setAttr_TokenType            2 23 42 3 2 */
+623,	/* OBJ_setAttr_IssCap               2 23 42 3 3 */
+607,	/* OBJ_set_policy_root              2 23 42 5 0 */
+608,	/* OBJ_setCext_hashedRoot           2 23 42 7 0 */
+609,	/* OBJ_setCext_certType             2 23 42 7 1 */
+610,	/* OBJ_setCext_merchData            2 23 42 7 2 */
+611,	/* OBJ_setCext_cCertRequired        2 23 42 7 3 */
+612,	/* OBJ_setCext_tunneling            2 23 42 7 4 */
+613,	/* OBJ_setCext_setExt               2 23 42 7 5 */
+614,	/* OBJ_setCext_setQualf             2 23 42 7 6 */
+615,	/* OBJ_setCext_PGWYcapabilities     2 23 42 7 7 */
+616,	/* OBJ_setCext_TokenIdentifier      2 23 42 7 8 */
+617,	/* OBJ_setCext_Track2Data           2 23 42 7 9 */
+618,	/* OBJ_setCext_TokenType            2 23 42 7 10 */
+619,	/* OBJ_setCext_IssuerCapabilities   2 23 42 7 11 */
+636,	/* OBJ_set_brand_IATA_ATA           2 23 42 8 1 */
+640,	/* OBJ_set_brand_Visa               2 23 42 8 4 */
+641,	/* OBJ_set_brand_MasterCard         2 23 42 8 5 */
+637,	/* OBJ_set_brand_Diners             2 23 42 8 30 */
+638,	/* OBJ_set_brand_AmericanExpress    2 23 42 8 34 */
+639,	/* OBJ_set_brand_JCB                2 23 42 8 35 */
+805,	/* OBJ_cryptopro                    1 2 643 2 2 */
+806,	/* OBJ_cryptocom                    1 2 643 2 9 */
+184,	/* OBJ_X9_57                        1 2 840 10040 */
+405,	/* OBJ_ansi_X9_62                   1 2 840 10045 */
+389,	/* OBJ_Enterprises                  1 3 6 1 4 1 */
+504,	/* OBJ_mime_mhs                     1 3 6 1 7 1 */
+104,	/* OBJ_md5WithRSA                   1 3 14 3 2 3 */
+29,	/* OBJ_des_ecb                      1 3 14 3 2 6 */
+31,	/* OBJ_des_cbc                      1 3 14 3 2 7 */
+45,	/* OBJ_des_ofb64                    1 3 14 3 2 8 */
+30,	/* OBJ_des_cfb64                    1 3 14 3 2 9 */
+377,	/* OBJ_rsaSignature                 1 3 14 3 2 11 */
+67,	/* OBJ_dsa_2                        1 3 14 3 2 12 */
+66,	/* OBJ_dsaWithSHA                   1 3 14 3 2 13 */
+42,	/* OBJ_shaWithRSAEncryption         1 3 14 3 2 15 */
+32,	/* OBJ_des_ede_ecb                  1 3 14 3 2 17 */
+41,	/* OBJ_sha                          1 3 14 3 2 18 */
+64,	/* OBJ_sha1                         1 3 14 3 2 26 */
+70,	/* OBJ_dsaWithSHA1_2                1 3 14 3 2 27 */
+115,	/* OBJ_sha1WithRSA                  1 3 14 3 2 29 */
+117,	/* OBJ_ripemd160                    1 3 36 3 2 1 */
+143,	/* OBJ_sxnet                        1 3 101 1 4 1 */
+721,	/* OBJ_sect163k1                    1 3 132 0 1 */
+722,	/* OBJ_sect163r1                    1 3 132 0 2 */
+728,	/* OBJ_sect239k1                    1 3 132 0 3 */
+717,	/* OBJ_sect113r1                    1 3 132 0 4 */
+718,	/* OBJ_sect113r2                    1 3 132 0 5 */
+704,	/* OBJ_secp112r1                    1 3 132 0 6 */
+705,	/* OBJ_secp112r2                    1 3 132 0 7 */
+709,	/* OBJ_secp160r1                    1 3 132 0 8 */
+708,	/* OBJ_secp160k1                    1 3 132 0 9 */
+714,	/* OBJ_secp256k1                    1 3 132 0 10 */
+723,	/* OBJ_sect163r2                    1 3 132 0 15 */
+729,	/* OBJ_sect283k1                    1 3 132 0 16 */
+730,	/* OBJ_sect283r1                    1 3 132 0 17 */
+719,	/* OBJ_sect131r1                    1 3 132 0 22 */
+720,	/* OBJ_sect131r2                    1 3 132 0 23 */
+724,	/* OBJ_sect193r1                    1 3 132 0 24 */
+725,	/* OBJ_sect193r2                    1 3 132 0 25 */
+726,	/* OBJ_sect233k1                    1 3 132 0 26 */
+727,	/* OBJ_sect233r1                    1 3 132 0 27 */
+706,	/* OBJ_secp128r1                    1 3 132 0 28 */
+707,	/* OBJ_secp128r2                    1 3 132 0 29 */
+710,	/* OBJ_secp160r2                    1 3 132 0 30 */
+711,	/* OBJ_secp192k1                    1 3 132 0 31 */
+712,	/* OBJ_secp224k1                    1 3 132 0 32 */
+713,	/* OBJ_secp224r1                    1 3 132 0 33 */
+715,	/* OBJ_secp384r1                    1 3 132 0 34 */
+716,	/* OBJ_secp521r1                    1 3 132 0 35 */
+731,	/* OBJ_sect409k1                    1 3 132 0 36 */
+732,	/* OBJ_sect409r1                    1 3 132 0 37 */
+733,	/* OBJ_sect571k1                    1 3 132 0 38 */
+734,	/* OBJ_sect571r1                    1 3 132 0 39 */
+624,	/* OBJ_set_rootKeyThumb             2 23 42 3 0 0 */
+625,	/* OBJ_set_addPolicy                2 23 42 3 0 1 */
+626,	/* OBJ_setAttr_Token_EMV            2 23 42 3 2 1 */
+627,	/* OBJ_setAttr_Token_B0Prime        2 23 42 3 2 2 */
+628,	/* OBJ_setAttr_IssCap_CVM           2 23 42 3 3 3 */
+629,	/* OBJ_setAttr_IssCap_T2            2 23 42 3 3 4 */
+630,	/* OBJ_setAttr_IssCap_Sig           2 23 42 3 3 5 */
+642,	/* OBJ_set_brand_Novus              2 23 42 8 6011 */
+735,	/* OBJ_wap_wsg_idm_ecid_wtls1       2 23 43 1 4 1 */
+736,	/* OBJ_wap_wsg_idm_ecid_wtls3       2 23 43 1 4 3 */
+737,	/* OBJ_wap_wsg_idm_ecid_wtls4       2 23 43 1 4 4 */
+738,	/* OBJ_wap_wsg_idm_ecid_wtls5       2 23 43 1 4 5 */
+739,	/* OBJ_wap_wsg_idm_ecid_wtls6       2 23 43 1 4 6 */
+740,	/* OBJ_wap_wsg_idm_ecid_wtls7       2 23 43 1 4 7 */
+741,	/* OBJ_wap_wsg_idm_ecid_wtls8       2 23 43 1 4 8 */
+742,	/* OBJ_wap_wsg_idm_ecid_wtls9       2 23 43 1 4 9 */
+743,	/* OBJ_wap_wsg_idm_ecid_wtls10      2 23 43 1 4 10 */
+744,	/* OBJ_wap_wsg_idm_ecid_wtls11      2 23 43 1 4 11 */
+745,	/* OBJ_wap_wsg_idm_ecid_wtls12      2 23 43 1 4 12 */
+804,	/* OBJ_whirlpool                    1 0 10118 3 0 55 */
+124,	/* OBJ_rle_compression              1 1 1 1 666 1 */
+773,	/* OBJ_kisa                         1 2 410 200004 */
+807,	/* OBJ_id_GostR3411_94_with_GostR3410_2001 1 2 643 2 2 3 */
+808,	/* OBJ_id_GostR3411_94_with_GostR3410_94 1 2 643 2 2 4 */
+809,	/* OBJ_id_GostR3411_94              1 2 643 2 2 9 */
+810,	/* OBJ_id_HMACGostR3411_94          1 2 643 2 2 10 */
+811,	/* OBJ_id_GostR3410_2001            1 2 643 2 2 19 */
+812,	/* OBJ_id_GostR3410_94              1 2 643 2 2 20 */
+813,	/* OBJ_id_Gost28147_89              1 2 643 2 2 21 */
+815,	/* OBJ_id_Gost28147_89_MAC          1 2 643 2 2 22 */
+816,	/* OBJ_id_GostR3411_94_prf          1 2 643 2 2 23 */
+817,	/* OBJ_id_GostR3410_2001DH          1 2 643 2 2 98 */
+818,	/* OBJ_id_GostR3410_94DH            1 2 643 2 2 99 */
+ 1,	/* OBJ_rsadsi                       1 2 840 113549 */
+185,	/* OBJ_X9cm                         1 2 840 10040 4 */
+127,	/* OBJ_id_pkix                      1 3 6 1 5 5 7 */
+505,	/* OBJ_mime_mhs_headings            1 3 6 1 7 1 1 */
+506,	/* OBJ_mime_mhs_bodies              1 3 6 1 7 1 2 */
+119,	/* OBJ_ripemd160WithRSA             1 3 36 3 3 1 2 */
+631,	/* OBJ_setAttr_GenCryptgrm          2 23 42 3 3 3 1 */
+632,	/* OBJ_setAttr_T2Enc                2 23 42 3 3 4 1 */
+633,	/* OBJ_setAttr_T2cleartxt           2 23 42 3 3 4 2 */
+634,	/* OBJ_setAttr_TokICCsig            2 23 42 3 3 5 1 */
+635,	/* OBJ_setAttr_SecDevSig            2 23 42 3 3 5 2 */
+436,	/* OBJ_ucl                          0 9 2342 19200300 */
+820,	/* OBJ_id_Gost28147_89_None_KeyMeshing 1 2 643 2 2 14 0 */
+819,	/* OBJ_id_Gost28147_89_CryptoPro_KeyMeshing 1 2 643 2 2 14 1 */
+845,	/* OBJ_id_GostR3410_94_a            1 2 643 2 2 20 1 */
+846,	/* OBJ_id_GostR3410_94_aBis         1 2 643 2 2 20 2 */
+847,	/* OBJ_id_GostR3410_94_b            1 2 643 2 2 20 3 */
+848,	/* OBJ_id_GostR3410_94_bBis         1 2 643 2 2 20 4 */
+821,	/* OBJ_id_GostR3411_94_TestParamSet 1 2 643 2 2 30 0 */
+822,	/* OBJ_id_GostR3411_94_CryptoProParamSet 1 2 643 2 2 30 1 */
+823,	/* OBJ_id_Gost28147_89_TestParamSet 1 2 643 2 2 31 0 */
+824,	/* OBJ_id_Gost28147_89_CryptoPro_A_ParamSet 1 2 643 2 2 31 1 */
+825,	/* OBJ_id_Gost28147_89_CryptoPro_B_ParamSet 1 2 643 2 2 31 2 */
+826,	/* OBJ_id_Gost28147_89_CryptoPro_C_ParamSet 1 2 643 2 2 31 3 */
+827,	/* OBJ_id_Gost28147_89_CryptoPro_D_ParamSet 1 2 643 2 2 31 4 */
+828,	/* OBJ_id_Gost28147_89_CryptoPro_Oscar_1_1_ParamSet 1 2 643 2 2 31 5 =
*/
+829,	/* OBJ_id_Gost28147_89_CryptoPro_Oscar_1_0_ParamSet 1 2 643 2 2 31 6 =
*/
+830,	/* OBJ_id_Gost28147_89_CryptoPro_RIC_1_ParamSet 1 2 643 2 2 31 7 */
+831,	/* OBJ_id_GostR3410_94_TestParamSet 1 2 643 2 2 32 0 */
+832,	/* OBJ_id_GostR3410_94_CryptoPro_A_ParamSet 1 2 643 2 2 32 2 */
+833,	/* OBJ_id_GostR3410_94_CryptoPro_B_ParamSet 1 2 643 2 2 32 3 */
+834,	/* OBJ_id_GostR3410_94_CryptoPro_C_ParamSet 1 2 643 2 2 32 4 */
+835,	/* OBJ_id_GostR3410_94_CryptoPro_D_ParamSet 1 2 643 2 2 32 5 */
+836,	/* OBJ_id_GostR3410_94_CryptoPro_XchA_ParamSet 1 2 643 2 2 33 1 */
+837,	/* OBJ_id_GostR3410_94_CryptoPro_XchB_ParamSet 1 2 643 2 2 33 2 */
+838,	/* OBJ_id_GostR3410_94_CryptoPro_XchC_ParamSet 1 2 643 2 2 33 3 */
+839,	/* OBJ_id_GostR3410_2001_TestParamSet 1 2 643 2 2 35 0 */
+840,	/* OBJ_id_GostR3410_2001_CryptoPro_A_ParamSet 1 2 643 2 2 35 1 */
+841,	/* OBJ_id_GostR3410_2001_CryptoPro_B_ParamSet 1 2 643 2 2 35 2 */
+842,	/* OBJ_id_GostR3410_2001_CryptoPro_C_ParamSet 1 2 643 2 2 35 3 */
+843,	/* OBJ_id_GostR3410_2001_CryptoPro_XchA_ParamSet 1 2 643 2 2 36 0 */
+844,	/* OBJ_id_GostR3410_2001_CryptoPro_XchB_ParamSet 1 2 643 2 2 36 1 */
+ 2,	/* OBJ_pkcs                         1 2 840 113549 1 */
+431,	/* OBJ_hold_instruction_none        1 2 840 10040 2 1 */
+432,	/* OBJ_hold_instruction_call_issuer 1 2 840 10040 2 2 */
+433,	/* OBJ_hold_instruction_reject      1 2 840 10040 2 3 */
+116,	/* OBJ_dsa                          1 2 840 10040 4 1 */
+113,	/* OBJ_dsaWithSHA1                  1 2 840 10040 4 3 */
+406,	/* OBJ_X9_62_prime_field            1 2 840 10045 1 1 */
+407,	/* OBJ_X9_62_characteristic_two_field 1 2 840 10045 1 2 */
+408,	/* OBJ_X9_62_id_ecPublicKey         1 2 840 10045 2 1 */
+416,	/* OBJ_ecdsa_with_SHA1              1 2 840 10045 4 1 */
+791,	/* OBJ_ecdsa_with_Recommended       1 2 840 10045 4 2 */
+792,	/* OBJ_ecdsa_with_Specified         1 2 840 10045 4 3 */
+258,	/* OBJ_id_pkix_mod                  1 3 6 1 5 5 7 0 */
+175,	/* OBJ_id_pe                        1 3 6 1 5 5 7 1 */
+259,	/* OBJ_id_qt                        1 3 6 1 5 5 7 2 */
+128,	/* OBJ_id_kp                        1 3 6 1 5 5 7 3 */
+260,	/* OBJ_id_it                        1 3 6 1 5 5 7 4 */
+261,	/* OBJ_id_pkip                      1 3 6 1 5 5 7 5 */
+262,	/* OBJ_id_alg                       1 3 6 1 5 5 7 6 */
+263,	/* OBJ_id_cmc                       1 3 6 1 5 5 7 7 */
+264,	/* OBJ_id_on                        1 3 6 1 5 5 7 8 */
+265,	/* OBJ_id_pda                       1 3 6 1 5 5 7 9 */
+266,	/* OBJ_id_aca                       1 3 6 1 5 5 7 10 */
+267,	/* OBJ_id_qcs                       1 3 6 1 5 5 7 11 */
+268,	/* OBJ_id_cct                       1 3 6 1 5 5 7 12 */
+662,	/* OBJ_id_ppl                       1 3 6 1 5 5 7 21 */
+176,	/* OBJ_id_ad                        1 3 6 1 5 5 7 48 */
+507,	/* OBJ_id_hex_partial_message       1 3 6 1 7 1 1 1 */
+508,	/* OBJ_id_hex_multipart_message     1 3 6 1 7 1 1 2 */
+57,	/* OBJ_netscape                     2 16 840 1 113730 */
+754,	/* OBJ_camellia_128_ecb             0 3 4401 5 3 1 9 1 */
+766,	/* OBJ_camellia_128_ofb128          0 3 4401 5 3 1 9 3 */
+757,	/* OBJ_camellia_128_cfb128          0 3 4401 5 3 1 9 4 */
+755,	/* OBJ_camellia_192_ecb             0 3 4401 5 3 1 9 21 */
+767,	/* OBJ_camellia_192_ofb128          0 3 4401 5 3 1 9 23 */
+758,	/* OBJ_camellia_192_cfb128          0 3 4401 5 3 1 9 24 */
+756,	/* OBJ_camellia_256_ecb             0 3 4401 5 3 1 9 41 */
+768,	/* OBJ_camellia_256_ofb128          0 3 4401 5 3 1 9 43 */
+759,	/* OBJ_camellia_256_cfb128          0 3 4401 5 3 1 9 44 */
+437,	/* OBJ_pilot                        0 9 2342 19200300 100 */
+776,	/* OBJ_seed_ecb                     1 2 410 200004 1 3 */
+777,	/* OBJ_seed_cbc                     1 2 410 200004 1 4 */
+779,	/* OBJ_seed_cfb128                  1 2 410 200004 1 5 */
+778,	/* OBJ_seed_ofb128                  1 2 410 200004 1 6 */
+852,	/* OBJ_id_GostR3411_94_with_GostR3410_94_cc 1 2 643 2 9 1 3 3 */
+853,	/* OBJ_id_GostR3411_94_with_GostR3410_2001_cc 1 2 643 2 9 1 3 4 */
+850,	/* OBJ_id_GostR3410_94_cc           1 2 643 2 9 1 5 3 */
+851,	/* OBJ_id_GostR3410_2001_cc         1 2 643 2 9 1 5 4 */
+849,	/* OBJ_id_Gost28147_89_cc           1 2 643 2 9 1 6 1 */
+854,	/* OBJ_id_GostR3410_2001_ParamSet_cc 1 2 643 2 9 1 8 1 */
+186,	/* OBJ_pkcs1                        1 2 840 113549 1 1 */
+27,	/* OBJ_pkcs3                        1 2 840 113549 1 3 */
+187,	/* OBJ_pkcs5                        1 2 840 113549 1 5 */
+20,	/* OBJ_pkcs7                        1 2 840 113549 1 7 */
+47,	/* OBJ_pkcs9                        1 2 840 113549 1 9 */
+ 3,	/* OBJ_md2                          1 2 840 113549 2 2 */
+257,	/* OBJ_md4                          1 2 840 113549 2 4 */
+ 4,	/* OBJ_md5                          1 2 840 113549 2 5 */
+797,	/* OBJ_hmacWithMD5                  1 2 840 113549 2 6 */
+163,	/* OBJ_hmacWithSHA1                 1 2 840 113549 2 7 */
+798,	/* OBJ_hmacWithSHA224               1 2 840 113549 2 8 */
+799,	/* OBJ_hmacWithSHA256               1 2 840 113549 2 9 */
+800,	/* OBJ_hmacWithSHA384               1 2 840 113549 2 10 */
+801,	/* OBJ_hmacWithSHA512               1 2 840 113549 2 11 */
+37,	/* OBJ_rc2_cbc                      1 2 840 113549 3 2 */
+ 5,	/* OBJ_rc4                          1 2 840 113549 3 4 */
+44,	/* OBJ_des_ede3_cbc                 1 2 840 113549 3 7 */
+120,	/* OBJ_rc5_cbc                      1 2 840 113549 3 8 */
+643,	/* OBJ_des_cdmf                     1 2 840 113549 3 10 */
+680,	/* OBJ_X9_62_id_characteristic_two_basis 1 2 840 10045 1 2 3 */
+684,	/* OBJ_X9_62_c2pnb163v1             1 2 840 10045 3 0 1 */
+685,	/* OBJ_X9_62_c2pnb163v2             1 2 840 10045 3 0 2 */
+686,	/* OBJ_X9_62_c2pnb163v3             1 2 840 10045 3 0 3 */
+687,	/* OBJ_X9_62_c2pnb176v1             1 2 840 10045 3 0 4 */
+688,	/* OBJ_X9_62_c2tnb191v1             1 2 840 10045 3 0 5 */
+689,	/* OBJ_X9_62_c2tnb191v2             1 2 840 10045 3 0 6 */
+690,	/* OBJ_X9_62_c2tnb191v3             1 2 840 10045 3 0 7 */
+691,	/* OBJ_X9_62_c2onb191v4             1 2 840 10045 3 0 8 */
+692,	/* OBJ_X9_62_c2onb191v5             1 2 840 10045 3 0 9 */
+693,	/* OBJ_X9_62_c2pnb208w1             1 2 840 10045 3 0 10 */
+694,	/* OBJ_X9_62_c2tnb239v1             1 2 840 10045 3 0 11 */
+695,	/* OBJ_X9_62_c2tnb239v2             1 2 840 10045 3 0 12 */
+696,	/* OBJ_X9_62_c2tnb239v3             1 2 840 10045 3 0 13 */
+697,	/* OBJ_X9_62_c2onb239v4             1 2 840 10045 3 0 14 */
+698,	/* OBJ_X9_62_c2onb239v5             1 2 840 10045 3 0 15 */
+699,	/* OBJ_X9_62_c2pnb272w1             1 2 840 10045 3 0 16 */
+700,	/* OBJ_X9_62_c2pnb304w1             1 2 840 10045 3 0 17 */
+701,	/* OBJ_X9_62_c2tnb359v1             1 2 840 10045 3 0 18 */
+702,	/* OBJ_X9_62_c2pnb368w1             1 2 840 10045 3 0 19 */
+703,	/* OBJ_X9_62_c2tnb431r1             1 2 840 10045 3 0 20 */
+409,	/* OBJ_X9_62_prime192v1             1 2 840 10045 3 1 1 */
+410,	/* OBJ_X9_62_prime192v2             1 2 840 10045 3 1 2 */
+411,	/* OBJ_X9_62_prime192v3             1 2 840 10045 3 1 3 */
+412,	/* OBJ_X9_62_prime239v1             1 2 840 10045 3 1 4 */
+413,	/* OBJ_X9_62_prime239v2             1 2 840 10045 3 1 5 */
+414,	/* OBJ_X9_62_prime239v3             1 2 840 10045 3 1 6 */
+415,	/* OBJ_X9_62_prime256v1             1 2 840 10045 3 1 7 */
+793,	/* OBJ_ecdsa_with_SHA224            1 2 840 10045 4 3 1 */
+794,	/* OBJ_ecdsa_with_SHA256            1 2 840 10045 4 3 2 */
+795,	/* OBJ_ecdsa_with_SHA384            1 2 840 10045 4 3 3 */
+796,	/* OBJ_ecdsa_with_SHA512            1 2 840 10045 4 3 4 */
+269,	/* OBJ_id_pkix1_explicit_88         1 3 6 1 5 5 7 0 1 */
+270,	/* OBJ_id_pkix1_implicit_88         1 3 6 1 5 5 7 0 2 */
+271,	/* OBJ_id_pkix1_explicit_93         1 3 6 1 5 5 7 0 3 */
+272,	/* OBJ_id_pkix1_implicit_93         1 3 6 1 5 5 7 0 4 */
+273,	/* OBJ_id_mod_crmf                  1 3 6 1 5 5 7 0 5 */
+274,	/* OBJ_id_mod_cmc                   1 3 6 1 5 5 7 0 6 */
+275,	/* OBJ_id_mod_kea_profile_88        1 3 6 1 5 5 7 0 7 */
+276,	/* OBJ_id_mod_kea_profile_93        1 3 6 1 5 5 7 0 8 */
+277,	/* OBJ_id_mod_cmp                   1 3 6 1 5 5 7 0 9 */
+278,	/* OBJ_id_mod_qualified_cert_88     1 3 6 1 5 5 7 0 10 */
+279,	/* OBJ_id_mod_qualified_cert_93     1 3 6 1 5 5 7 0 11 */
+280,	/* OBJ_id_mod_attribute_cert        1 3 6 1 5 5 7 0 12 */
+281,	/* OBJ_id_mod_timestamp_protocol    1 3 6 1 5 5 7 0 13 */
+282,	/* OBJ_id_mod_ocsp                  1 3 6 1 5 5 7 0 14 */
+283,	/* OBJ_id_mod_dvcs                  1 3 6 1 5 5 7 0 15 */
+284,	/* OBJ_id_mod_cmp2000               1 3 6 1 5 5 7 0 16 */
+177,	/* OBJ_info_access                  1 3 6 1 5 5 7 1 1 */
+285,	/* OBJ_biometricInfo                1 3 6 1 5 5 7 1 2 */
+286,	/* OBJ_qcStatements                 1 3 6 1 5 5 7 1 3 */
+287,	/* OBJ_ac_auditEntity               1 3 6 1 5 5 7 1 4 */
+288,	/* OBJ_ac_targeting                 1 3 6 1 5 5 7 1 5 */
+289,	/* OBJ_aaControls                   1 3 6 1 5 5 7 1 6 */
+290,	/* OBJ_sbgp_ipAddrBlock             1 3 6 1 5 5 7 1 7 */
+291,	/* OBJ_sbgp_autonomousSysNum        1 3 6 1 5 5 7 1 8 */
+292,	/* OBJ_sbgp_routerIdentifier        1 3 6 1 5 5 7 1 9 */
+397,	/* OBJ_ac_proxying                  1 3 6 1 5 5 7 1 10 */
+398,	/* OBJ_sinfo_access                 1 3 6 1 5 5 7 1 11 */
+663,	/* OBJ_proxyCertInfo                1 3 6 1 5 5 7 1 14 */
+164,	/* OBJ_id_qt_cps                    1 3 6 1 5 5 7 2 1 */
+165,	/* OBJ_id_qt_unotice                1 3 6 1 5 5 7 2 2 */
+293,	/* OBJ_textNotice                   1 3 6 1 5 5 7 2 3 */
+129,	/* OBJ_server_auth                  1 3 6 1 5 5 7 3 1 */
+130,	/* OBJ_client_auth                  1 3 6 1 5 5 7 3 2 */
+131,	/* OBJ_code_sign                    1 3 6 1 5 5 7 3 3 */
+132,	/* OBJ_email_protect                1 3 6 1 5 5 7 3 4 */
+294,	/* OBJ_ipsecEndSystem               1 3 6 1 5 5 7 3 5 */
+295,	/* OBJ_ipsecTunnel                  1 3 6 1 5 5 7 3 6 */
+296,	/* OBJ_ipsecUser                    1 3 6 1 5 5 7 3 7 */
+133,	/* OBJ_time_stamp                   1 3 6 1 5 5 7 3 8 */
+180,	/* OBJ_OCSP_sign                    1 3 6 1 5 5 7 3 9 */
+297,	/* OBJ_dvcs                         1 3 6 1 5 5 7 3 10 */
+298,	/* OBJ_id_it_caProtEncCert          1 3 6 1 5 5 7 4 1 */
+299,	/* OBJ_id_it_signKeyPairTypes       1 3 6 1 5 5 7 4 2 */
+300,	/* OBJ_id_it_encKeyPairTypes        1 3 6 1 5 5 7 4 3 */
+301,	/* OBJ_id_it_preferredSymmAlg       1 3 6 1 5 5 7 4 4 */
+302,	/* OBJ_id_it_caKeyUpdateInfo        1 3 6 1 5 5 7 4 5 */
+303,	/* OBJ_id_it_currentCRL             1 3 6 1 5 5 7 4 6 */
+304,	/* OBJ_id_it_unsupportedOIDs        1 3 6 1 5 5 7 4 7 */
+305,	/* OBJ_id_it_subscriptionRequest    1 3 6 1 5 5 7 4 8 */
+306,	/* OBJ_id_it_subscriptionResponse   1 3 6 1 5 5 7 4 9 */
+307,	/* OBJ_id_it_keyPairParamReq        1 3 6 1 5 5 7 4 10 */
+308,	/* OBJ_id_it_keyPairParamRep        1 3 6 1 5 5 7 4 11 */
+309,	/* OBJ_id_it_revPassphrase          1 3 6 1 5 5 7 4 12 */
+310,	/* OBJ_id_it_implicitConfirm        1 3 6 1 5 5 7 4 13 */
+311,	/* OBJ_id_it_confirmWaitTime        1 3 6 1 5 5 7 4 14 */
+312,	/* OBJ_id_it_origPKIMessage         1 3 6 1 5 5 7 4 15 */
+784,	/* OBJ_id_it_suppLangTags           1 3 6 1 5 5 7 4 16 */
+313,	/* OBJ_id_regCtrl                   1 3 6 1 5 5 7 5 1 */
+314,	/* OBJ_id_regInfo                   1 3 6 1 5 5 7 5 2 */
+323,	/* OBJ_id_alg_des40                 1 3 6 1 5 5 7 6 1 */
+324,	/* OBJ_id_alg_noSignature           1 3 6 1 5 5 7 6 2 */
+325,	/* OBJ_id_alg_dh_sig_hmac_sha1      1 3 6 1 5 5 7 6 3 */
+326,	/* OBJ_id_alg_dh_pop                1 3 6 1 5 5 7 6 4 */
+327,	/* OBJ_id_cmc_statusInfo            1 3 6 1 5 5 7 7 1 */
+328,	/* OBJ_id_cmc_identification        1 3 6 1 5 5 7 7 2 */
+329,	/* OBJ_id_cmc_identityProof         1 3 6 1 5 5 7 7 3 */
+330,	/* OBJ_id_cmc_dataReturn            1 3 6 1 5 5 7 7 4 */
+331,	/* OBJ_id_cmc_transactionId         1 3 6 1 5 5 7 7 5 */
+332,	/* OBJ_id_cmc_senderNonce           1 3 6 1 5 5 7 7 6 */
+333,	/* OBJ_id_cmc_recipientNonce        1 3 6 1 5 5 7 7 7 */
+334,	/* OBJ_id_cmc_addExtensions         1 3 6 1 5 5 7 7 8 */
+335,	/* OBJ_id_cmc_encryptedPOP          1 3 6 1 5 5 7 7 9 */
+336,	/* OBJ_id_cmc_decryptedPOP          1 3 6 1 5 5 7 7 10 */
+337,	/* OBJ_id_cmc_lraPOPWitness         1 3 6 1 5 5 7 7 11 */
+338,	/* OBJ_id_cmc_getCert               1 3 6 1 5 5 7 7 15 */
+339,	/* OBJ_id_cmc_getCRL                1 3 6 1 5 5 7 7 16 */
+340,	/* OBJ_id_cmc_revokeRequest         1 3 6 1 5 5 7 7 17 */
+341,	/* OBJ_id_cmc_regInfo               1 3 6 1 5 5 7 7 18 */
+342,	/* OBJ_id_cmc_responseInfo          1 3 6 1 5 5 7 7 19 */
+343,	/* OBJ_id_cmc_queryPending          1 3 6 1 5 5 7 7 21 */
+344,	/* OBJ_id_cmc_popLinkRandom         1 3 6 1 5 5 7 7 22 */
+345,	/* OBJ_id_cmc_popLinkWitness        1 3 6 1 5 5 7 7 23 */
+346,	/* OBJ_id_cmc_confirmCertAcceptance 1 3 6 1 5 5 7 7 24 */
+347,	/* OBJ_id_on_personalData           1 3 6 1 5 5 7 8 1 */
+858,	/* OBJ_id_on_permanentIdentifier    1 3 6 1 5 5 7 8 3 */
+348,	/* OBJ_id_pda_dateOfBirth           1 3 6 1 5 5 7 9 1 */
+349,	/* OBJ_id_pda_placeOfBirth          1 3 6 1 5 5 7 9 2 */
+351,	/* OBJ_id_pda_gender                1 3 6 1 5 5 7 9 3 */
+352,	/* OBJ_id_pda_countryOfCitizenship  1 3 6 1 5 5 7 9 4 */
+353,	/* OBJ_id_pda_countryOfResidence    1 3 6 1 5 5 7 9 5 */
+354,	/* OBJ_id_aca_authenticationInfo    1 3 6 1 5 5 7 10 1 */
+355,	/* OBJ_id_aca_accessIdentity        1 3 6 1 5 5 7 10 2 */
+356,	/* OBJ_id_aca_chargingIdentity      1 3 6 1 5 5 7 10 3 */
+357,	/* OBJ_id_aca_group                 1 3 6 1 5 5 7 10 4 */
+358,	/* OBJ_id_aca_role                  1 3 6 1 5 5 7 10 5 */
+399,	/* OBJ_id_aca_encAttrs              1 3 6 1 5 5 7 10 6 */
+359,	/* OBJ_id_qcs_pkixQCSyntax_v1       1 3 6 1 5 5 7 11 1 */
+360,	/* OBJ_id_cct_crs                   1 3 6 1 5 5 7 12 1 */
+361,	/* OBJ_id_cct_PKIData               1 3 6 1 5 5 7 12 2 */
+362,	/* OBJ_id_cct_PKIResponse           1 3 6 1 5 5 7 12 3 */
+664,	/* OBJ_id_ppl_anyLanguage           1 3 6 1 5 5 7 21 0 */
+665,	/* OBJ_id_ppl_inheritAll            1 3 6 1 5 5 7 21 1 */
+667,	/* OBJ_Independent                  1 3 6 1 5 5 7 21 2 */
+178,	/* OBJ_ad_OCSP                      1 3 6 1 5 5 7 48 1 */
+179,	/* OBJ_ad_ca_issuers                1 3 6 1 5 5 7 48 2 */
+363,	/* OBJ_ad_timeStamping              1 3 6 1 5 5 7 48 3 */
+364,	/* OBJ_ad_dvcs                      1 3 6 1 5 5 7 48 4 */
+785,	/* OBJ_caRepository                 1 3 6 1 5 5 7 48 5 */
+780,	/* OBJ_hmac_md5                     1 3 6 1 5 5 8 1 1 */
+781,	/* OBJ_hmac_sha1                    1 3 6 1 5 5 8 1 2 */
+58,	/* OBJ_netscape_cert_extension      2 16 840 1 113730 1 */
+59,	/* OBJ_netscape_data_type           2 16 840 1 113730 2 */
+438,	/* OBJ_pilotAttributeType           0 9 2342 19200300 100 1 */
+439,	/* OBJ_pilotAttributeSyntax         0 9 2342 19200300 100 3 */
+440,	/* OBJ_pilotObjectClass             0 9 2342 19200300 100 4 */
+441,	/* OBJ_pilotGroups                  0 9 2342 19200300 100 10 */
+108,	/* OBJ_cast5_cbc                    1 2 840 113533 7 66 10 */
+112,	/* OBJ_pbeWithMD5AndCast5_CBC       1 2 840 113533 7 66 12 */
+782,	/* OBJ_id_PasswordBasedMAC          1 2 840 113533 7 66 13 */
+783,	/* OBJ_id_DHBasedMac                1 2 840 113533 7 66 30 */
+ 6,	/* OBJ_rsaEncryption                1 2 840 113549 1 1 1 */
+ 7,	/* OBJ_md2WithRSAEncryption         1 2 840 113549 1 1 2 */
+396,	/* OBJ_md4WithRSAEncryption         1 2 840 113549 1 1 3 */
+ 8,	/* OBJ_md5WithRSAEncryption         1 2 840 113549 1 1 4 */
+65,	/* OBJ_sha1WithRSAEncryption        1 2 840 113549 1 1 5 */
+644,	/* OBJ_rsaOAEPEncryptionSET         1 2 840 113549 1 1 6 */
+668,	/* OBJ_sha256WithRSAEncryption      1 2 840 113549 1 1 11 */
+669,	/* OBJ_sha384WithRSAEncryption      1 2 840 113549 1 1 12 */
+670,	/* OBJ_sha512WithRSAEncryption      1 2 840 113549 1 1 13 */
+671,	/* OBJ_sha224WithRSAEncryption      1 2 840 113549 1 1 14 */
+28,	/* OBJ_dhKeyAgreement               1 2 840 113549 1 3 1 */
+ 9,	/* OBJ_pbeWithMD2AndDES_CBC         1 2 840 113549 1 5 1 */
+10,	/* OBJ_pbeWithMD5AndDES_CBC         1 2 840 113549 1 5 3 */
+168,	/* OBJ_pbeWithMD2AndRC2_CBC         1 2 840 113549 1 5 4 */
+169,	/* OBJ_pbeWithMD5AndRC2_CBC         1 2 840 113549 1 5 6 */
+170,	/* OBJ_pbeWithSHA1AndDES_CBC        1 2 840 113549 1 5 10 */
+68,	/* OBJ_pbeWithSHA1AndRC2_CBC        1 2 840 113549 1 5 11 */
+69,	/* OBJ_id_pbkdf2                    1 2 840 113549 1 5 12 */
+161,	/* OBJ_pbes2                        1 2 840 113549 1 5 13 */
+162,	/* OBJ_pbmac1                       1 2 840 113549 1 5 14 */
+21,	/* OBJ_pkcs7_data                   1 2 840 113549 1 7 1 */
+22,	/* OBJ_pkcs7_signed                 1 2 840 113549 1 7 2 */
+23,	/* OBJ_pkcs7_enveloped              1 2 840 113549 1 7 3 */
+24,	/* OBJ_pkcs7_signedAndEnveloped     1 2 840 113549 1 7 4 */
+25,	/* OBJ_pkcs7_digest                 1 2 840 113549 1 7 5 */
+26,	/* OBJ_pkcs7_encrypted              1 2 840 113549 1 7 6 */
+48,	/* OBJ_pkcs9_emailAddress           1 2 840 113549 1 9 1 */
+49,	/* OBJ_pkcs9_unstructuredName       1 2 840 113549 1 9 2 */
+50,	/* OBJ_pkcs9_contentType            1 2 840 113549 1 9 3 */
+51,	/* OBJ_pkcs9_messageDigest          1 2 840 113549 1 9 4 */
+52,	/* OBJ_pkcs9_signingTime            1 2 840 113549 1 9 5 */
+53,	/* OBJ_pkcs9_countersignature       1 2 840 113549 1 9 6 */
+54,	/* OBJ_pkcs9_challengePassword      1 2 840 113549 1 9 7 */
+55,	/* OBJ_pkcs9_unstructuredAddress    1 2 840 113549 1 9 8 */
+56,	/* OBJ_pkcs9_extCertAttributes      1 2 840 113549 1 9 9 */
+172,	/* OBJ_ext_req                      1 2 840 113549 1 9 14 */
+167,	/* OBJ_SMIMECapabilities            1 2 840 113549 1 9 15 */
+188,	/* OBJ_SMIME                        1 2 840 113549 1 9 16 */
+156,	/* OBJ_friendlyName                 1 2 840 113549 1 9 20 */
+157,	/* OBJ_localKeyID                   1 2 840 113549 1 9 21 */
+681,	/* OBJ_X9_62_onBasis                1 2 840 10045 1 2 3 1 */
+682,	/* OBJ_X9_62_tpBasis                1 2 840 10045 1 2 3 2 */
+683,	/* OBJ_X9_62_ppBasis                1 2 840 10045 1 2 3 3 */
+417,	/* OBJ_ms_csp_name                  1 3 6 1 4 1 311 17 1 */
+856,	/* OBJ_LocalKeySet                  1 3 6 1 4 1 311 17 2 */
+390,	/* OBJ_dcObject                     1 3 6 1 4 1 1466 344 */
+91,	/* OBJ_bf_cbc                       1 3 6 1 4 1 3029 1 2 */
+315,	/* OBJ_id_regCtrl_regToken          1 3 6 1 5 5 7 5 1 1 */
+316,	/* OBJ_id_regCtrl_authenticator     1 3 6 1 5 5 7 5 1 2 */
+317,	/* OBJ_id_regCtrl_pkiPublicationInfo 1 3 6 1 5 5 7 5 1 3 */
+318,	/* OBJ_id_regCtrl_pkiArchiveOptions 1 3 6 1 5 5 7 5 1 4 */
+319,	/* OBJ_id_regCtrl_oldCertID         1 3 6 1 5 5 7 5 1 5 */
+320,	/* OBJ_id_regCtrl_protocolEncrKey   1 3 6 1 5 5 7 5 1 6 */
+321,	/* OBJ_id_regInfo_utf8Pairs         1 3 6 1 5 5 7 5 2 1 */
+322,	/* OBJ_id_regInfo_certReq           1 3 6 1 5 5 7 5 2 2 */
+365,	/* OBJ_id_pkix_OCSP_basic           1 3 6 1 5 5 7 48 1 1 */
+366,	/* OBJ_id_pkix_OCSP_Nonce           1 3 6 1 5 5 7 48 1 2 */
+367,	/* OBJ_id_pkix_OCSP_CrlID           1 3 6 1 5 5 7 48 1 3 */
+368,	/* OBJ_id_pkix_OCSP_acceptableResponses 1 3 6 1 5 5 7 48 1 4 */
+369,	/* OBJ_id_pkix_OCSP_noCheck         1 3 6 1 5 5 7 48 1 5 */
+370,	/* OBJ_id_pkix_OCSP_archiveCutoff   1 3 6 1 5 5 7 48 1 6 */
+371,	/* OBJ_id_pkix_OCSP_serviceLocator  1 3 6 1 5 5 7 48 1 7 */
+372,	/* OBJ_id_pkix_OCSP_extendedStatus  1 3 6 1 5 5 7 48 1 8 */
+373,	/* OBJ_id_pkix_OCSP_valid           1 3 6 1 5 5 7 48 1 9 */
+374,	/* OBJ_id_pkix_OCSP_path            1 3 6 1 5 5 7 48 1 10 */
+375,	/* OBJ_id_pkix_OCSP_trustRoot       1 3 6 1 5 5 7 48 1 11 */
+418,	/* OBJ_aes_128_ecb                  2 16 840 1 101 3 4 1 1 */
+419,	/* OBJ_aes_128_cbc                  2 16 840 1 101 3 4 1 2 */
+420,	/* OBJ_aes_128_ofb128               2 16 840 1 101 3 4 1 3 */
+421,	/* OBJ_aes_128_cfb128               2 16 840 1 101 3 4 1 4 */
+788,	/* OBJ_id_aes128_wrap               2 16 840 1 101 3 4 1 5 */
+422,	/* OBJ_aes_192_ecb                  2 16 840 1 101 3 4 1 21 */
+423,	/* OBJ_aes_192_cbc                  2 16 840 1 101 3 4 1 22 */
+424,	/* OBJ_aes_192_ofb128               2 16 840 1 101 3 4 1 23 */
+425,	/* OBJ_aes_192_cfb128               2 16 840 1 101 3 4 1 24 */
+789,	/* OBJ_id_aes192_wrap               2 16 840 1 101 3 4 1 25 */
+426,	/* OBJ_aes_256_ecb                  2 16 840 1 101 3 4 1 41 */
+427,	/* OBJ_aes_256_cbc                  2 16 840 1 101 3 4 1 42 */
+428,	/* OBJ_aes_256_ofb128               2 16 840 1 101 3 4 1 43 */
+429,	/* OBJ_aes_256_cfb128               2 16 840 1 101 3 4 1 44 */
+790,	/* OBJ_id_aes256_wrap               2 16 840 1 101 3 4 1 45 */
+672,	/* OBJ_sha256                       2 16 840 1 101 3 4 2 1 */
+673,	/* OBJ_sha384                       2 16 840 1 101 3 4 2 2 */
+674,	/* OBJ_sha512                       2 16 840 1 101 3 4 2 3 */
+675,	/* OBJ_sha224                       2 16 840 1 101 3 4 2 4 */
+802,	/* OBJ_dsa_with_SHA224              2 16 840 1 101 3 4 3 1 */
+803,	/* OBJ_dsa_with_SHA256              2 16 840 1 101 3 4 3 2 */
+71,	/* OBJ_netscape_cert_type           2 16 840 1 113730 1 1 */
+72,	/* OBJ_netscape_base_url            2 16 840 1 113730 1 2 */
+73,	/* OBJ_netscape_revocation_url      2 16 840 1 113730 1 3 */
+74,	/* OBJ_netscape_ca_revocation_url   2 16 840 1 113730 1 4 */
+75,	/* OBJ_netscape_renewal_url         2 16 840 1 113730 1 7 */
+76,	/* OBJ_netscape_ca_policy_url       2 16 840 1 113730 1 8 */
+77,	/* OBJ_netscape_ssl_server_name     2 16 840 1 113730 1 12 */
+78,	/* OBJ_netscape_comment             2 16 840 1 113730 1 13 */
+79,	/* OBJ_netscape_cert_sequence       2 16 840 1 113730 2 5 */
+139,	/* OBJ_ns_sgc                       2 16 840 1 113730 4 1 */
+458,	/* OBJ_userId                       0 9 2342 19200300 100 1 1 */
+459,	/* OBJ_textEncodedORAddress         0 9 2342 19200300 100 1 2 */
+460,	/* OBJ_rfc822Mailbox                0 9 2342 19200300 100 1 3 */
+461,	/* OBJ_info                         0 9 2342 19200300 100 1 4 */
+462,	/* OBJ_favouriteDrink               0 9 2342 19200300 100 1 5 */
+463,	/* OBJ_roomNumber                   0 9 2342 19200300 100 1 6 */
+464,	/* OBJ_photo                        0 9 2342 19200300 100 1 7 */
+465,	/* OBJ_userClass                    0 9 2342 19200300 100 1 8 */
+466,	/* OBJ_host                         0 9 2342 19200300 100 1 9 */
+467,	/* OBJ_manager                      0 9 2342 19200300 100 1 10 */
+468,	/* OBJ_documentIdentifier           0 9 2342 19200300 100 1 11 */
+469,	/* OBJ_documentTitle                0 9 2342 19200300 100 1 12 */
+470,	/* OBJ_documentVersion              0 9 2342 19200300 100 1 13 */
+471,	/* OBJ_documentAuthor               0 9 2342 19200300 100 1 14 */
+472,	/* OBJ_documentLocation             0 9 2342 19200300 100 1 15 */
+473,	/* OBJ_homeTelephoneNumber          0 9 2342 19200300 100 1 20 */
+474,	/* OBJ_secretary                    0 9 2342 19200300 100 1 21 */
+475,	/* OBJ_otherMailbox                 0 9 2342 19200300 100 1 22 */
+476,	/* OBJ_lastModifiedTime             0 9 2342 19200300 100 1 23 */
+477,	/* OBJ_lastModifiedBy               0 9 2342 19200300 100 1 24 */
+391,	/* OBJ_domainComponent              0 9 2342 19200300 100 1 25 */
+478,	/* OBJ_aRecord                      0 9 2342 19200300 100 1 26 */
+479,	/* OBJ_pilotAttributeType27         0 9 2342 19200300 100 1 27 */
+480,	/* OBJ_mXRecord                     0 9 2342 19200300 100 1 28 */
+481,	/* OBJ_nSRecord                     0 9 2342 19200300 100 1 29 */
+482,	/* OBJ_sOARecord                    0 9 2342 19200300 100 1 30 */
+483,	/* OBJ_cNAMERecord                  0 9 2342 19200300 100 1 31 */
+484,	/* OBJ_associatedDomain             0 9 2342 19200300 100 1 37 */
+485,	/* OBJ_associatedName               0 9 2342 19200300 100 1 38 */
+486,	/* OBJ_homePostalAddress            0 9 2342 19200300 100 1 39 */
+487,	/* OBJ_personalTitle                0 9 2342 19200300 100 1 40 */
+488,	/* OBJ_mobileTelephoneNumber        0 9 2342 19200300 100 1 41 */
+489,	/* OBJ_pagerTelephoneNumber         0 9 2342 19200300 100 1 42 */
+490,	/* OBJ_friendlyCountryName          0 9 2342 19200300 100 1 43 */
+491,	/* OBJ_organizationalStatus         0 9 2342 19200300 100 1 45 */
+492,	/* OBJ_janetMailbox                 0 9 2342 19200300 100 1 46 */
+493,	/* OBJ_mailPreferenceOption         0 9 2342 19200300 100 1 47 */
+494,	/* OBJ_buildingName                 0 9 2342 19200300 100 1 48 */
+495,	/* OBJ_dSAQuality                   0 9 2342 19200300 100 1 49 */
+496,	/* OBJ_singleLevelQuality           0 9 2342 19200300 100 1 50 */
+497,	/* OBJ_subtreeMinimumQuality        0 9 2342 19200300 100 1 51 */
+498,	/* OBJ_subtreeMaximumQuality        0 9 2342 19200300 100 1 52 */
+499,	/* OBJ_personalSignature            0 9 2342 19200300 100 1 53 */
+500,	/* OBJ_dITRedirect                  0 9 2342 19200300 100 1 54 */
+501,	/* OBJ_audio                        0 9 2342 19200300 100 1 55 */
+502,	/* OBJ_documentPublisher            0 9 2342 19200300 100 1 56 */
+442,	/* OBJ_iA5StringSyntax              0 9 2342 19200300 100 3 4 */
+443,	/* OBJ_caseIgnoreIA5StringSyntax    0 9 2342 19200300 100 3 5 */
+444,	/* OBJ_pilotObject                  0 9 2342 19200300 100 4 3 */
+445,	/* OBJ_pilotPerson                  0 9 2342 19200300 100 4 4 */
+446,	/* OBJ_account                      0 9 2342 19200300 100 4 5 */
+447,	/* OBJ_document                     0 9 2342 19200300 100 4 6 */
+448,	/* OBJ_room                         0 9 2342 19200300 100 4 7 */
+449,	/* OBJ_documentSeries               0 9 2342 19200300 100 4 9 */
+392,	/* OBJ_Domain                       0 9 2342 19200300 100 4 13 */
+450,	/* OBJ_rFC822localPart              0 9 2342 19200300 100 4 14 */
+451,	/* OBJ_dNSDomain                    0 9 2342 19200300 100 4 15 */
+452,	/* OBJ_domainRelatedObject          0 9 2342 19200300 100 4 17 */
+453,	/* OBJ_friendlyCountry              0 9 2342 19200300 100 4 18 */
+454,	/* OBJ_simpleSecurityObject         0 9 2342 19200300 100 4 19 */
+455,	/* OBJ_pilotOrganization            0 9 2342 19200300 100 4 20 */
+456,	/* OBJ_pilotDSA                     0 9 2342 19200300 100 4 21 */
+457,	/* OBJ_qualityLabelledData          0 9 2342 19200300 100 4 22 */
+189,	/* OBJ_id_smime_mod                 1 2 840 113549 1 9 16 0 */
+190,	/* OBJ_id_smime_ct                  1 2 840 113549 1 9 16 1 */
+191,	/* OBJ_id_smime_aa                  1 2 840 113549 1 9 16 2 */
+192,	/* OBJ_id_smime_alg                 1 2 840 113549 1 9 16 3 */
+193,	/* OBJ_id_smime_cd                  1 2 840 113549 1 9 16 4 */
+194,	/* OBJ_id_smime_spq                 1 2 840 113549 1 9 16 5 */
+195,	/* OBJ_id_smime_cti                 1 2 840 113549 1 9 16 6 */
+158,	/* OBJ_x509Certificate              1 2 840 113549 1 9 22 1 */
+159,	/* OBJ_sdsiCertificate              1 2 840 113549 1 9 22 2 */
+160,	/* OBJ_x509Crl                      1 2 840 113549 1 9 23 1 */
+144,	/* OBJ_pbe_WithSHA1And128BitRC4     1 2 840 113549 1 12 1 1 */
+145,	/* OBJ_pbe_WithSHA1And40BitRC4      1 2 840 113549 1 12 1 2 */
+146,	/* OBJ_pbe_WithSHA1And3_Key_TripleDES_CBC 1 2 840 113549 1 12 1 3 */
+147,	/* OBJ_pbe_WithSHA1And2_Key_TripleDES_CBC 1 2 840 113549 1 12 1 4 */
+148,	/* OBJ_pbe_WithSHA1And128BitRC2_CBC 1 2 840 113549 1 12 1 5 */
+149,	/* OBJ_pbe_WithSHA1And40BitRC2_CBC  1 2 840 113549 1 12 1 6 */
+171,	/* OBJ_ms_ext_req                   1 3 6 1 4 1 311 2 1 14 */
+134,	/* OBJ_ms_code_ind                  1 3 6 1 4 1 311 2 1 21 */
+135,	/* OBJ_ms_code_com                  1 3 6 1 4 1 311 2 1 22 */
+136,	/* OBJ_ms_ctl_sign                  1 3 6 1 4 1 311 10 3 1 */
+137,	/* OBJ_ms_sgc                       1 3 6 1 4 1 311 10 3 3 */
+138,	/* OBJ_ms_efs                       1 3 6 1 4 1 311 10 3 4 */
+648,	/* OBJ_ms_smartcard_login           1 3 6 1 4 1 311 20 2 2 */
+649,	/* OBJ_ms_upn                       1 3 6 1 4 1 311 20 2 3 */
+751,	/* OBJ_camellia_128_cbc             1 2 392 200011 61 1 1 1 2 */
+752,	/* OBJ_camellia_192_cbc             1 2 392 200011 61 1 1 1 3 */
+753,	/* OBJ_camellia_256_cbc             1 2 392 200011 61 1 1 1 4 */
+196,	/* OBJ_id_smime_mod_cms             1 2 840 113549 1 9 16 0 1 */
+197,	/* OBJ_id_smime_mod_ess             1 2 840 113549 1 9 16 0 2 */
+198,	/* OBJ_id_smime_mod_oid             1 2 840 113549 1 9 16 0 3 */
+199,	/* OBJ_id_smime_mod_msg_v3          1 2 840 113549 1 9 16 0 4 */
+200,	/* OBJ_id_smime_mod_ets_eSignature_88 1 2 840 113549 1 9 16 0 5 */
+201,	/* OBJ_id_smime_mod_ets_eSignature_97 1 2 840 113549 1 9 16 0 6 */
+202,	/* OBJ_id_smime_mod_ets_eSigPolicy_88 1 2 840 113549 1 9 16 0 7 */
+203,	/* OBJ_id_smime_mod_ets_eSigPolicy_97 1 2 840 113549 1 9 16 0 8 */
+204,	/* OBJ_id_smime_ct_receipt          1 2 840 113549 1 9 16 1 1 */
+205,	/* OBJ_id_smime_ct_authData         1 2 840 113549 1 9 16 1 2 */
+206,	/* OBJ_id_smime_ct_publishCert      1 2 840 113549 1 9 16 1 3 */
+207,	/* OBJ_id_smime_ct_TSTInfo          1 2 840 113549 1 9 16 1 4 */
+208,	/* OBJ_id_smime_ct_TDTInfo          1 2 840 113549 1 9 16 1 5 */
+209,	/* OBJ_id_smime_ct_contentInfo      1 2 840 113549 1 9 16 1 6 */
+210,	/* OBJ_id_smime_ct_DVCSRequestData  1 2 840 113549 1 9 16 1 7 */
+211,	/* OBJ_id_smime_ct_DVCSResponseData 1 2 840 113549 1 9 16 1 8 */
+786,	/* OBJ_id_smime_ct_compressedData   1 2 840 113549 1 9 16 1 9 */
+787,	/* OBJ_id_ct_asciiTextWithCRLF      1 2 840 113549 1 9 16 1 27 */
+212,	/* OBJ_id_smime_aa_receiptRequest   1 2 840 113549 1 9 16 2 1 */
+213,	/* OBJ_id_smime_aa_securityLabel    1 2 840 113549 1 9 16 2 2 */
+214,	/* OBJ_id_smime_aa_mlExpandHistory  1 2 840 113549 1 9 16 2 3 */
+215,	/* OBJ_id_smime_aa_contentHint      1 2 840 113549 1 9 16 2 4 */
+216,	/* OBJ_id_smime_aa_msgSigDigest     1 2 840 113549 1 9 16 2 5 */
+217,	/* OBJ_id_smime_aa_encapContentType 1 2 840 113549 1 9 16 2 6 */
+218,	/* OBJ_id_smime_aa_contentIdentifier 1 2 840 113549 1 9 16 2 7 */
+219,	/* OBJ_id_smime_aa_macValue         1 2 840 113549 1 9 16 2 8 */
+220,	/* OBJ_id_smime_aa_equivalentLabels 1 2 840 113549 1 9 16 2 9 */
+221,	/* OBJ_id_smime_aa_contentReference 1 2 840 113549 1 9 16 2 10 */
+222,	/* OBJ_id_smime_aa_encrypKeyPref    1 2 840 113549 1 9 16 2 11 */
+223,	/* OBJ_id_smime_aa_signingCertificate 1 2 840 113549 1 9 16 2 12 */
+224,	/* OBJ_id_smime_aa_smimeEncryptCerts 1 2 840 113549 1 9 16 2 13 */
+225,	/* OBJ_id_smime_aa_timeStampToken   1 2 840 113549 1 9 16 2 14 */
+226,	/* OBJ_id_smime_aa_ets_sigPolicyId  1 2 840 113549 1 9 16 2 15 */
+227,	/* OBJ_id_smime_aa_ets_commitmentType 1 2 840 113549 1 9 16 2 16 */
+228,	/* OBJ_id_smime_aa_ets_signerLocation 1 2 840 113549 1 9 16 2 17 */
+229,	/* OBJ_id_smime_aa_ets_signerAttr   1 2 840 113549 1 9 16 2 18 */
+230,	/* OBJ_id_smime_aa_ets_otherSigCert 1 2 840 113549 1 9 16 2 19 */
+231,	/* OBJ_id_smime_aa_ets_contentTimestamp 1 2 840 113549 1 9 16 2 20 */
+232,	/* OBJ_id_smime_aa_ets_CertificateRefs 1 2 840 113549 1 9 16 2 21 */
+233,	/* OBJ_id_smime_aa_ets_RevocationRefs 1 2 840 113549 1 9 16 2 22 */
+234,	/* OBJ_id_smime_aa_ets_certValues   1 2 840 113549 1 9 16 2 23 */
+235,	/* OBJ_id_smime_aa_ets_revocationValues 1 2 840 113549 1 9 16 2 24 */
+236,	/* OBJ_id_smime_aa_ets_escTimeStamp 1 2 840 113549 1 9 16 2 25 */
+237,	/* OBJ_id_smime_aa_ets_certCRLTimestamp 1 2 840 113549 1 9 16 2 26 */
+238,	/* OBJ_id_smime_aa_ets_archiveTimeStamp 1 2 840 113549 1 9 16 2 27 */
+239,	/* OBJ_id_smime_aa_signatureType    1 2 840 113549 1 9 16 2 28 */
+240,	/* OBJ_id_smime_aa_dvcs_dvc         1 2 840 113549 1 9 16 2 29 */
+241,	/* OBJ_id_smime_alg_ESDHwith3DES    1 2 840 113549 1 9 16 3 1 */
+242,	/* OBJ_id_smime_alg_ESDHwithRC2     1 2 840 113549 1 9 16 3 2 */
+243,	/* OBJ_id_smime_alg_3DESwrap        1 2 840 113549 1 9 16 3 3 */
+244,	/* OBJ_id_smime_alg_RC2wrap         1 2 840 113549 1 9 16 3 4 */
+245,	/* OBJ_id_smime_alg_ESDH            1 2 840 113549 1 9 16 3 5 */
+246,	/* OBJ_id_smime_alg_CMS3DESwrap     1 2 840 113549 1 9 16 3 6 */
+247,	/* OBJ_id_smime_alg_CMSRC2wrap      1 2 840 113549 1 9 16 3 7 */
+125,	/* OBJ_zlib_compression             1 2 840 113549 1 9 16 3 8 */
+248,	/* OBJ_id_smime_cd_ldap             1 2 840 113549 1 9 16 4 1 */
+249,	/* OBJ_id_smime_spq_ets_sqt_uri     1 2 840 113549 1 9 16 5 1 */
+250,	/* OBJ_id_smime_spq_ets_sqt_unotice 1 2 840 113549 1 9 16 5 2 */
+251,	/* OBJ_id_smime_cti_ets_proofOfOrigin 1 2 840 113549 1 9 16 6 1 */
+252,	/* OBJ_id_smime_cti_ets_proofOfReceipt 1 2 840 113549 1 9 16 6 2 */
+253,	/* OBJ_id_smime_cti_ets_proofOfDelivery 1 2 840 113549 1 9 16 6 3 */
+254,	/* OBJ_id_smime_cti_ets_proofOfSender 1 2 840 113549 1 9 16 6 4 */
+255,	/* OBJ_id_smime_cti_ets_proofOfApproval 1 2 840 113549 1 9 16 6 5 */
+256,	/* OBJ_id_smime_cti_ets_proofOfCreation 1 2 840 113549 1 9 16 6 6 */
+150,	/* OBJ_keyBag                       1 2 840 113549 1 12 10 1 1 */
+151,	/* OBJ_pkcs8ShroudedKeyBag          1 2 840 113549 1 12 10 1 2 */
+152,	/* OBJ_certBag                      1 2 840 113549 1 12 10 1 3 */
+153,	/* OBJ_crlBag                       1 2 840 113549 1 12 10 1 4 */
+154,	/* OBJ_secretBag                    1 2 840 113549 1 12 10 1 5 */
+155,	/* OBJ_safeContentsBag              1 2 840 113549 1 12 10 1 6 */
+34,	/* OBJ_idea_cbc                     1 3 6 1 4 1 188 7 1 1 2 */
+};
+
Index: secure/lib/libcrypto/opensslconf-amd64.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/opensslconf-amd64.h	(revision 218560)
+++ secure/lib/libcrypto/opensslconf-amd64.h	(working copy)
@@ -1,4 +1,4 @@
=2D/* $FreeBSD$ */
+/* $FreeBSD: src/secure/lib/libcrypto/opensslconf-amd64.h,v 1.8.10.1 2010/=
02/10 00:26:20 kensmith Exp $ */
 /* opensslconf.h */
 /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
=20
@@ -13,14 +13,15 @@
 #ifndef OPENSSL_NO_SEED
 # define OPENSSL_NO_SEED
 #endif
+/* jpake is marked experimental in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_JPAKE
+# define OPENSSL_NO_JPAKE
+#endif
+
 /* libgmp is not in the FreeBSD base system. */
 #ifndef OPENSSL_NO_GMP
 # define OPENSSL_NO_GMP
 #endif
=2D/* jpake is marked experimental in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_JPAKE
=2D# define OPENSSL_NO_JPAKE
=2D#endif
 /* The Kerberos 5 support is MIT-specific. */
 #ifndef OPENSSL_NO_KRB5
 # define OPENSSL_NO_KRB5
Index: secure/lib/libcrypto/engines/libsureware/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libsureware/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libsureware/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libsureware/Makefile,v 1.1.12=
=2E1 2010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libsureware.so
 SRCS=3D	e_sureware.c
Index: secure/lib/libcrypto/engines/libpadlock/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libpadlock/Makefile	(revision 0)
+++ secure/lib/libcrypto/engines/libpadlock/Makefile	(revision 0)
@@ -0,0 +1,14 @@
+# $FreeBSD$
+
+# OpenSSL Assembly flags
+.if ${MACHINE_ARCH} =3D=3D "i386"
+CFLAGS+=3D	-DAES_ASM -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DM=
D5_ASM -DRMD160_ASM
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+CFLAGS+=3D	-DAES_ASM -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DM=
D5_ASM -DWHIRLPOOL_ASM
+.endif
+
+SHLIB_NAME?=3D libpadlock.so
+SRCS=3D	e_padlock.c
+NO_MAN=3D	# For now
+
+.include <bsd.lib.mk>
Index: secure/lib/libcrypto/engines/lib4758cca/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/lib4758cca/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/lib4758cca/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/lib4758cca/Makefile,v 1.1.12.=
1 2010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D lib4758cca.so
 SRCS=3D	e_4758cca.c
Index: secure/lib/libcrypto/engines/libatalla/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libatalla/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libatalla/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libatalla/Makefile,v 1.1.12.1=
 2010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libatalla.so
 SRCS=3D	e_atalla.c
Index: secure/lib/libcrypto/engines/Makefile.inc
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/Makefile.inc	(revision 218560)
+++ secure/lib/libcrypto/engines/Makefile.inc	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/Makefile.inc,v 1.1.12.1 2010/=
02/10 00:26:20 kensmith Exp $
=20
 LCRYPTO_SRC=3D	${.CURDIR}/../../../../../crypto/openssl
 .PATH: ${LCRYPTO_SRC}/engines
Index: secure/lib/libcrypto/engines/libchil/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libchil/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libchil/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libchil/Makefile,v 1.1.12.1 2=
010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libchil.so
 SRCS=3D	e_chil.c
Index: secure/lib/libcrypto/engines/libcswift/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libcswift/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libcswift/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libcswift/Makefile,v 1.1.12.1=
 2010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libcswift.so
 SRCS=3D	e_cswift.c
Index: secure/lib/libcrypto/engines/libnuron/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libnuron/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libnuron/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libnuron/Makefile,v 1.1.12.1 =
2010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libnuron.so
 SRCS=3D	e_nuron.c
Index: secure/lib/libcrypto/engines/libubsec/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libubsec/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libubsec/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libubsec/Makefile,v 1.1.12.1 =
2010/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libubsec.so
 SRCS=3D	e_ubsec.c
Index: secure/lib/libcrypto/engines/libaep/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/libaep/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/libaep/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/libaep/Makefile,v 1.1.12.1 20=
10/02/10 00:26:20 kensmith Exp $
=20
 SHLIB_NAME?=3D libaep.so
 SRCS=3D	e_aep.c
Index: secure/lib/libcrypto/engines/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/engines/Makefile	(revision 218560)
+++ secure/lib/libcrypto/engines/Makefile	(working copy)
@@ -1,6 +1,6 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/engines/Makefile,v 1.1.12.1 2010/02/1=
0 00:26:20 kensmith Exp $
=20
 SUBDIR=3D	lib4758cca libaep libatalla libcswift libchil libnuron \
=2D	libsureware libubsec
+	libsureware libubsec libpadlock
=20
 .include <bsd.subdir.mk>
Index: secure/lib/libcrypto/i386/bn-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/bn-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/bn-586.s	(working copy)
@@ -1,890 +1,1384 @@
=2D	# $FreeBSD$
=2D
=2D
=2D
=2D
=2D
=2D
=2D	.file	"/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/bn/=
asm/bn-586.s"
=2D	.version	"01.01"
=2Dgcc2_compiled.:
+.file	"bn-586.s"
 .text
=2D	.align 16
=2D.globl bn_mul_add_words
=2D	.type	bn_mul_add_words,@function
+.globl	bn_mul_add_words
+.type	bn_mul_add_words,@function
+.align	16
 bn_mul_add_words:
+.L_bn_mul_add_words_begin:
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=20
=2D
=2D	xorl	%esi,		%esi
=2D	movl	20(%esp),	%edi
=2D	movl	28(%esp),	%ecx
=2D	movl	24(%esp),	%ebx
=2D	andl	$4294967288,	%ecx
=2D	movl	32(%esp),	%ebp
+	xorl	%esi,%esi
+	movl	20(%esp),%edi
+	movl	28(%esp),%ecx
+	movl	24(%esp),%ebx
+	andl	$4294967288,%ecx
+	movl	32(%esp),%ebp
 	pushl	%ecx
 	jz	.L000maw_finish
+.align	16
 .L001maw_loop:
=2D	movl	%ecx,		(%esp)
=20
=2D	movl	(%ebx),		%eax
+	movl	(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	(%edi),		%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,(%edi)
+	movl	%edx,%esi
=20
=2D	movl	4(%ebx),	%eax
+	movl	4(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	4(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		4(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	4(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,4(%edi)
+	movl	%edx,%esi
=20
=2D	movl	8(%ebx),	%eax
+	movl	8(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	8(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		8(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	8(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,8(%edi)
+	movl	%edx,%esi
=20
=2D	movl	12(%ebx),	%eax
+	movl	12(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	12(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		12(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	12(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,12(%edi)
+	movl	%edx,%esi
=20
=2D	movl	16(%ebx),	%eax
+	movl	16(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	16(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		16(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	16(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,16(%edi)
+	movl	%edx,%esi
=20
=2D	movl	20(%ebx),	%eax
+	movl	20(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	20(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		20(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	20(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,20(%edi)
+	movl	%edx,%esi
=20
=2D	movl	24(%ebx),	%eax
+	movl	24(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	24(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		24(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	24(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,24(%edi)
+	movl	%edx,%esi
=20
=2D	movl	28(%ebx),	%eax
+	movl	28(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	28(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		28(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	28(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,28(%edi)
+	movl	%edx,%esi
=20
=2D	movl	(%esp),		%ecx
=2D	addl	$32,		%ebx
=2D	addl	$32,		%edi
=2D	subl	$8,		%ecx
+	subl	$8,%ecx
+	leal	32(%ebx),%ebx
+	leal	32(%edi),%edi
 	jnz	.L001maw_loop
 .L000maw_finish:
=2D	movl	32(%esp),	%ecx
=2D	andl	$7,		%ecx
+	movl	32(%esp),%ecx
+	andl	$7,%ecx
 	jnz	.L002maw_finish2
 	jmp	.L003maw_end
=2D.align 16
 .L002maw_finish2:
=20
=2D	movl	(%ebx),		%eax
+	movl	(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	(%edi),		%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	(%edi),%eax
+	adcl	$0,%edx
 	decl	%ecx
=2D	movl	%eax,		(%edi)
=2D	movl	%edx,		%esi
+	movl	%eax,(%edi)
+	movl	%edx,%esi
 	jz	.L003maw_end
=20
=2D	movl	4(%ebx),	%eax
+	movl	4(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	4(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	4(%edi),%eax
+	adcl	$0,%edx
 	decl	%ecx
=2D	movl	%eax,		4(%edi)
=2D	movl	%edx,		%esi
+	movl	%eax,4(%edi)
+	movl	%edx,%esi
 	jz	.L003maw_end
=20
=2D	movl	8(%ebx),	%eax
+	movl	8(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	8(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	8(%edi),%eax
+	adcl	$0,%edx
 	decl	%ecx
=2D	movl	%eax,		8(%edi)
=2D	movl	%edx,		%esi
+	movl	%eax,8(%edi)
+	movl	%edx,%esi
 	jz	.L003maw_end
=20
=2D	movl	12(%ebx),	%eax
+	movl	12(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	12(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	12(%edi),%eax
+	adcl	$0,%edx
 	decl	%ecx
=2D	movl	%eax,		12(%edi)
=2D	movl	%edx,		%esi
+	movl	%eax,12(%edi)
+	movl	%edx,%esi
 	jz	.L003maw_end
=20
=2D	movl	16(%ebx),	%eax
+	movl	16(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	16(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	16(%edi),%eax
+	adcl	$0,%edx
 	decl	%ecx
=2D	movl	%eax,		16(%edi)
=2D	movl	%edx,		%esi
+	movl	%eax,16(%edi)
+	movl	%edx,%esi
 	jz	.L003maw_end
=20
=2D	movl	20(%ebx),	%eax
+	movl	20(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	20(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	20(%edi),%eax
+	adcl	$0,%edx
 	decl	%ecx
=2D	movl	%eax,		20(%edi)
=2D	movl	%edx,		%esi
+	movl	%eax,20(%edi)
+	movl	%edx,%esi
 	jz	.L003maw_end
=20
=2D	movl	24(%ebx),	%eax
+	movl	24(%ebx),%eax
 	mull	%ebp
=2D	addl	%esi,		%eax
=2D	movl	24(%edi),	%esi
=2D	adcl	$0,		%edx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		24(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	addl	24(%edi),%eax
+	adcl	$0,%edx
+	movl	%eax,24(%edi)
+	movl	%edx,%esi
 .L003maw_end:
=2D	movl	%esi,		%eax
+	movl	%esi,%eax
 	popl	%ecx
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.L_bn_mul_add_words_end:
=2D	.size	bn_mul_add_words,.L_bn_mul_add_words_end-bn_mul_add_words
=2D.ident	"bn_mul_add_words"
=2D.text
=2D	.align 16
=2D.globl bn_mul_words
=2D	.type	bn_mul_words,@function
+.size	bn_mul_add_words,.-.L_bn_mul_add_words_begin
+.globl	bn_mul_words
+.type	bn_mul_words,@function
+.align	16
 bn_mul_words:
+.L_bn_mul_words_begin:
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=20
=2D
=2D	xorl	%esi,		%esi
=2D	movl	20(%esp),	%edi
=2D	movl	24(%esp),	%ebx
=2D	movl	28(%esp),	%ebp
=2D	movl	32(%esp),	%ecx
=2D	andl	$4294967288,	%ebp
+	xorl	%esi,%esi
+	movl	20(%esp),%edi
+	movl	24(%esp),%ebx
+	movl	28(%esp),%ebp
+	movl	32(%esp),%ecx
+	andl	$4294967288,%ebp
 	jz	.L004mw_finish
 .L005mw_loop:
=20
=2D	movl	(%ebx),		%eax
+	movl	(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,(%edi)
+	movl	%edx,%esi
=20
=2D	movl	4(%ebx),	%eax
+	movl	4(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		4(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,4(%edi)
+	movl	%edx,%esi
=20
=2D	movl	8(%ebx),	%eax
+	movl	8(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		8(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,8(%edi)
+	movl	%edx,%esi
=20
=2D	movl	12(%ebx),	%eax
+	movl	12(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		12(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,12(%edi)
+	movl	%edx,%esi
=20
=2D	movl	16(%ebx),	%eax
+	movl	16(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		16(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,16(%edi)
+	movl	%edx,%esi
=20
=2D	movl	20(%ebx),	%eax
+	movl	20(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		20(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,20(%edi)
+	movl	%edx,%esi
=20
=2D	movl	24(%ebx),	%eax
+	movl	24(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		24(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,24(%edi)
+	movl	%edx,%esi
=20
=2D	movl	28(%ebx),	%eax
+	movl	28(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		28(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,28(%edi)
+	movl	%edx,%esi
=20
=2D	addl	$32,		%ebx
=2D	addl	$32,		%edi
=2D	subl	$8,		%ebp
+	addl	$32,%ebx
+	addl	$32,%edi
+	subl	$8,%ebp
 	jz	.L004mw_finish
 	jmp	.L005mw_loop
 .L004mw_finish:
=2D	movl	28(%esp),	%ebp
=2D	andl	$7,		%ebp
+	movl	28(%esp),%ebp
+	andl	$7,%ebp
 	jnz	.L006mw_finish2
 	jmp	.L007mw_end
=2D.align 16
 .L006mw_finish2:
=20
=2D	movl	(%ebx),		%eax
+	movl	(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,(%edi)
+	movl	%edx,%esi
 	decl	%ebp
 	jz	.L007mw_end
=20
=2D	movl	4(%ebx),	%eax
+	movl	4(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		4(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,4(%edi)
+	movl	%edx,%esi
 	decl	%ebp
 	jz	.L007mw_end
=20
=2D	movl	8(%ebx),	%eax
+	movl	8(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		8(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,8(%edi)
+	movl	%edx,%esi
 	decl	%ebp
 	jz	.L007mw_end
=20
=2D	movl	12(%ebx),	%eax
+	movl	12(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		12(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,12(%edi)
+	movl	%edx,%esi
 	decl	%ebp
 	jz	.L007mw_end
=20
=2D	movl	16(%ebx),	%eax
+	movl	16(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		16(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,16(%edi)
+	movl	%edx,%esi
 	decl	%ebp
 	jz	.L007mw_end
=20
=2D	movl	20(%ebx),	%eax
+	movl	20(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		20(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,20(%edi)
+	movl	%edx,%esi
 	decl	%ebp
 	jz	.L007mw_end
=20
=2D	movl	24(%ebx),	%eax
+	movl	24(%ebx),%eax
 	mull	%ecx
=2D	addl	%esi,		%eax
=2D	adcl	$0,		%edx
=2D	movl	%eax,		24(%edi)
=2D	movl	%edx,		%esi
+	addl	%esi,%eax
+	adcl	$0,%edx
+	movl	%eax,24(%edi)
+	movl	%edx,%esi
 .L007mw_end:
=2D	movl	%esi,		%eax
+	movl	%esi,%eax
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.L_bn_mul_words_end:
=2D	.size	bn_mul_words,.L_bn_mul_words_end-bn_mul_words
=2D.ident	"bn_mul_words"
=2D.text
=2D	.align 16
=2D.globl bn_sqr_words
=2D	.type	bn_sqr_words,@function
+.size	bn_mul_words,.-.L_bn_mul_words_begin
+.globl	bn_sqr_words
+.type	bn_sqr_words,@function
+.align	16
 bn_sqr_words:
+.L_bn_sqr_words_begin:
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=20
=2D
=2D	movl	20(%esp),	%esi
=2D	movl	24(%esp),	%edi
=2D	movl	28(%esp),	%ebx
=2D	andl	$4294967288,	%ebx
+	movl	20(%esp),%esi
+	movl	24(%esp),%edi
+	movl	28(%esp),%ebx
+	andl	$4294967288,%ebx
 	jz	.L008sw_finish
 .L009sw_loop:
=20
=2D	movl	(%edi),		%eax
+	movl	(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		(%esi)
=2D	movl	%edx,		4(%esi)
+	movl	%eax,(%esi)
+	movl	%edx,4(%esi)
=20
=2D	movl	4(%edi),	%eax
+	movl	4(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		8(%esi)
=2D	movl	%edx,		12(%esi)
+	movl	%eax,8(%esi)
+	movl	%edx,12(%esi)
=20
=2D	movl	8(%edi),	%eax
+	movl	8(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		16(%esi)
=2D	movl	%edx,		20(%esi)
+	movl	%eax,16(%esi)
+	movl	%edx,20(%esi)
=20
=2D	movl	12(%edi),	%eax
+	movl	12(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		24(%esi)
=2D	movl	%edx,		28(%esi)
+	movl	%eax,24(%esi)
+	movl	%edx,28(%esi)
=20
=2D	movl	16(%edi),	%eax
+	movl	16(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		32(%esi)
=2D	movl	%edx,		36(%esi)
+	movl	%eax,32(%esi)
+	movl	%edx,36(%esi)
=20
=2D	movl	20(%edi),	%eax
+	movl	20(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		40(%esi)
=2D	movl	%edx,		44(%esi)
+	movl	%eax,40(%esi)
+	movl	%edx,44(%esi)
=20
=2D	movl	24(%edi),	%eax
+	movl	24(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		48(%esi)
=2D	movl	%edx,		52(%esi)
+	movl	%eax,48(%esi)
+	movl	%edx,52(%esi)
=20
=2D	movl	28(%edi),	%eax
+	movl	28(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		56(%esi)
=2D	movl	%edx,		60(%esi)
+	movl	%eax,56(%esi)
+	movl	%edx,60(%esi)
=20
=2D	addl	$32,		%edi
=2D	addl	$64,		%esi
=2D	subl	$8,		%ebx
+	addl	$32,%edi
+	addl	$64,%esi
+	subl	$8,%ebx
 	jnz	.L009sw_loop
 .L008sw_finish:
=2D	movl	28(%esp),	%ebx
=2D	andl	$7,		%ebx
+	movl	28(%esp),%ebx
+	andl	$7,%ebx
 	jz	.L010sw_end
=20
=2D	movl	(%edi),		%eax
+	movl	(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		(%esi)
+	movl	%eax,(%esi)
 	decl	%ebx
=2D	movl	%edx,		4(%esi)
+	movl	%edx,4(%esi)
 	jz	.L010sw_end
=20
=2D	movl	4(%edi),	%eax
+	movl	4(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		8(%esi)
+	movl	%eax,8(%esi)
 	decl	%ebx
=2D	movl	%edx,		12(%esi)
+	movl	%edx,12(%esi)
 	jz	.L010sw_end
=20
=2D	movl	8(%edi),	%eax
+	movl	8(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		16(%esi)
+	movl	%eax,16(%esi)
 	decl	%ebx
=2D	movl	%edx,		20(%esi)
+	movl	%edx,20(%esi)
 	jz	.L010sw_end
=20
=2D	movl	12(%edi),	%eax
+	movl	12(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		24(%esi)
+	movl	%eax,24(%esi)
 	decl	%ebx
=2D	movl	%edx,		28(%esi)
+	movl	%edx,28(%esi)
 	jz	.L010sw_end
=20
=2D	movl	16(%edi),	%eax
+	movl	16(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		32(%esi)
+	movl	%eax,32(%esi)
 	decl	%ebx
=2D	movl	%edx,		36(%esi)
+	movl	%edx,36(%esi)
 	jz	.L010sw_end
=20
=2D	movl	20(%edi),	%eax
+	movl	20(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		40(%esi)
+	movl	%eax,40(%esi)
 	decl	%ebx
=2D	movl	%edx,		44(%esi)
+	movl	%edx,44(%esi)
 	jz	.L010sw_end
=20
=2D	movl	24(%edi),	%eax
+	movl	24(%edi),%eax
 	mull	%eax
=2D	movl	%eax,		48(%esi)
=2D	movl	%edx,		52(%esi)
+	movl	%eax,48(%esi)
+	movl	%edx,52(%esi)
 .L010sw_end:
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.L_bn_sqr_words_end:
=2D	.size	bn_sqr_words,.L_bn_sqr_words_end-bn_sqr_words
=2D.ident	"bn_sqr_words"
=2D.text
=2D	.align 16
=2D.globl bn_div_words
=2D	.type	bn_div_words,@function
+.size	bn_sqr_words,.-.L_bn_sqr_words_begin
+.globl	bn_div_words
+.type	bn_div_words,@function
+.align	16
 bn_div_words:
=2D	pushl	%ebp
=2D	pushl	%ebx
=2D	pushl	%esi
=2D	pushl	%edi
=2D
=2D	movl	20(%esp),	%edx
=2D	movl	24(%esp),	%eax
=2D	movl	28(%esp),	%ebx
=2D	divl	%ebx
=2D	popl	%edi
=2D	popl	%esi
=2D	popl	%ebx
=2D	popl	%ebp
+.L_bn_div_words_begin:
+	movl	4(%esp),%edx
+	movl	8(%esp),%eax
+	movl	12(%esp),%ecx
+	divl	%ecx
 	ret
=2D.L_bn_div_words_end:
=2D	.size	bn_div_words,.L_bn_div_words_end-bn_div_words
=2D.ident	"bn_div_words"
=2D.text
=2D	.align 16
=2D.globl bn_add_words
=2D	.type	bn_add_words,@function
+.size	bn_div_words,.-.L_bn_div_words_begin
+.globl	bn_add_words
+.type	bn_add_words,@function
+.align	16
 bn_add_words:
+.L_bn_add_words_begin:
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=20
=2D
=2D	movl	20(%esp),	%ebx
=2D	movl	24(%esp),	%esi
=2D	movl	28(%esp),	%edi
=2D	movl	32(%esp),	%ebp
=2D	xorl	%eax,		%eax
=2D	andl	$4294967288,	%ebp
+	movl	20(%esp),%ebx
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	movl	32(%esp),%ebp
+	xorl	%eax,%eax
+	andl	$4294967288,%ebp
 	jz	.L011aw_finish
 .L012aw_loop:
=20
=2D	movl	(%esi),		%ecx
=2D	movl	(%edi),		%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		(%ebx)
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
=20
=2D	movl	4(%esi),	%ecx
=2D	movl	4(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		4(%ebx)
+	movl	4(%esi),%ecx
+	movl	4(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,4(%ebx)
=20
=2D	movl	8(%esi),	%ecx
=2D	movl	8(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		8(%ebx)
+	movl	8(%esi),%ecx
+	movl	8(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,8(%ebx)
=20
=2D	movl	12(%esi),	%ecx
=2D	movl	12(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		12(%ebx)
+	movl	12(%esi),%ecx
+	movl	12(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,12(%ebx)
=20
=2D	movl	16(%esi),	%ecx
=2D	movl	16(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		16(%ebx)
+	movl	16(%esi),%ecx
+	movl	16(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,16(%ebx)
=20
=2D	movl	20(%esi),	%ecx
=2D	movl	20(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		20(%ebx)
+	movl	20(%esi),%ecx
+	movl	20(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,20(%ebx)
=20
=2D	movl	24(%esi),	%ecx
=2D	movl	24(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		24(%ebx)
+	movl	24(%esi),%ecx
+	movl	24(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
=20
=2D	movl	28(%esi),	%ecx
=2D	movl	28(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		28(%ebx)
+	movl	28(%esi),%ecx
+	movl	28(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,28(%ebx)
=20
=2D	addl	$32,		%esi
=2D	addl	$32,		%edi
=2D	addl	$32,		%ebx
=2D	subl	$8,		%ebp
+	addl	$32,%esi
+	addl	$32,%edi
+	addl	$32,%ebx
+	subl	$8,%ebp
 	jnz	.L012aw_loop
 .L011aw_finish:
=2D	movl	32(%esp),	%ebp
=2D	andl	$7,		%ebp
+	movl	32(%esp),%ebp
+	andl	$7,%ebp
 	jz	.L013aw_end
=20
=2D	movl	(%esi),		%ecx
=2D	movl	(%edi),		%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		(%ebx)
+	movl	%ecx,(%ebx)
 	jz	.L013aw_end
=20
=2D	movl	4(%esi),	%ecx
=2D	movl	4(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	4(%esi),%ecx
+	movl	4(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		4(%ebx)
+	movl	%ecx,4(%ebx)
 	jz	.L013aw_end
=20
=2D	movl	8(%esi),	%ecx
=2D	movl	8(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	8(%esi),%ecx
+	movl	8(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		8(%ebx)
+	movl	%ecx,8(%ebx)
 	jz	.L013aw_end
=20
=2D	movl	12(%esi),	%ecx
=2D	movl	12(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	12(%esi),%ecx
+	movl	12(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		12(%ebx)
+	movl	%ecx,12(%ebx)
 	jz	.L013aw_end
=20
=2D	movl	16(%esi),	%ecx
=2D	movl	16(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	16(%esi),%ecx
+	movl	16(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		16(%ebx)
+	movl	%ecx,16(%ebx)
 	jz	.L013aw_end
=20
=2D	movl	20(%esi),	%ecx
=2D	movl	20(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	20(%esi),%ecx
+	movl	20(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		20(%ebx)
+	movl	%ecx,20(%ebx)
 	jz	.L013aw_end
=20
=2D	movl	24(%esi),	%ecx
=2D	movl	24(%edi),	%edx
=2D	addl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	addl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		24(%ebx)
+	movl	24(%esi),%ecx
+	movl	24(%edi),%edx
+	addl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	addl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
 .L013aw_end:
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.L_bn_add_words_end:
=2D	.size	bn_add_words,.L_bn_add_words_end-bn_add_words
=2D.ident	"bn_add_words"
=2D.text
=2D	.align 16
=2D.globl bn_sub_words
=2D	.type	bn_sub_words,@function
+.size	bn_add_words,.-.L_bn_add_words_begin
+.globl	bn_sub_words
+.type	bn_sub_words,@function
+.align	16
 bn_sub_words:
+.L_bn_sub_words_begin:
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=20
=2D
=2D	movl	20(%esp),	%ebx
=2D	movl	24(%esp),	%esi
=2D	movl	28(%esp),	%edi
=2D	movl	32(%esp),	%ebp
=2D	xorl	%eax,		%eax
=2D	andl	$4294967288,	%ebp
+	movl	20(%esp),%ebx
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	movl	32(%esp),%ebp
+	xorl	%eax,%eax
+	andl	$4294967288,%ebp
 	jz	.L014aw_finish
 .L015aw_loop:
=20
=2D	movl	(%esi),		%ecx
=2D	movl	(%edi),		%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		(%ebx)
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
=20
=2D	movl	4(%esi),	%ecx
=2D	movl	4(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		4(%ebx)
+	movl	4(%esi),%ecx
+	movl	4(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,4(%ebx)
=20
=2D	movl	8(%esi),	%ecx
=2D	movl	8(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		8(%ebx)
+	movl	8(%esi),%ecx
+	movl	8(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,8(%ebx)
=20
=2D	movl	12(%esi),	%ecx
=2D	movl	12(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		12(%ebx)
+	movl	12(%esi),%ecx
+	movl	12(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,12(%ebx)
=20
=2D	movl	16(%esi),	%ecx
=2D	movl	16(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		16(%ebx)
+	movl	16(%esi),%ecx
+	movl	16(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,16(%ebx)
=20
=2D	movl	20(%esi),	%ecx
=2D	movl	20(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		20(%ebx)
+	movl	20(%esi),%ecx
+	movl	20(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,20(%ebx)
=20
=2D	movl	24(%esi),	%ecx
=2D	movl	24(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		24(%ebx)
+	movl	24(%esi),%ecx
+	movl	24(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
=20
=2D	movl	28(%esi),	%ecx
=2D	movl	28(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		28(%ebx)
+	movl	28(%esi),%ecx
+	movl	28(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,28(%ebx)
=20
=2D	addl	$32,		%esi
=2D	addl	$32,		%edi
=2D	addl	$32,		%ebx
=2D	subl	$8,		%ebp
+	addl	$32,%esi
+	addl	$32,%edi
+	addl	$32,%ebx
+	subl	$8,%ebp
 	jnz	.L015aw_loop
 .L014aw_finish:
=2D	movl	32(%esp),	%ebp
=2D	andl	$7,		%ebp
+	movl	32(%esp),%ebp
+	andl	$7,%ebp
 	jz	.L016aw_end
=20
=2D	movl	(%esi),		%ecx
=2D	movl	(%edi),		%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		(%ebx)
+	movl	%ecx,(%ebx)
 	jz	.L016aw_end
=20
=2D	movl	4(%esi),	%ecx
=2D	movl	4(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	4(%esi),%ecx
+	movl	4(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		4(%ebx)
+	movl	%ecx,4(%ebx)
 	jz	.L016aw_end
=20
=2D	movl	8(%esi),	%ecx
=2D	movl	8(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	8(%esi),%ecx
+	movl	8(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		8(%ebx)
+	movl	%ecx,8(%ebx)
 	jz	.L016aw_end
=20
=2D	movl	12(%esi),	%ecx
=2D	movl	12(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	12(%esi),%ecx
+	movl	12(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		12(%ebx)
+	movl	%ecx,12(%ebx)
 	jz	.L016aw_end
=20
=2D	movl	16(%esi),	%ecx
=2D	movl	16(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	16(%esi),%ecx
+	movl	16(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		16(%ebx)
+	movl	%ecx,16(%ebx)
 	jz	.L016aw_end
=20
=2D	movl	20(%esi),	%ecx
=2D	movl	20(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
+	movl	20(%esi),%ecx
+	movl	20(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
 	decl	%ebp
=2D	movl	%ecx,		20(%ebx)
+	movl	%ecx,20(%ebx)
 	jz	.L016aw_end
=20
=2D	movl	24(%esi),	%ecx
=2D	movl	24(%edi),	%edx
=2D	subl	%eax,		%ecx
=2D	movl	$0,		%eax
=2D	adcl	%eax,		%eax
=2D	subl	%edx,		%ecx
=2D	adcl	$0,		%eax
=2D	movl	%ecx,		24(%ebx)
+	movl	24(%esi),%ecx
+	movl	24(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
 .L016aw_end:
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.L_bn_sub_words_end:
=2D	.size	bn_sub_words,.L_bn_sub_words_end-bn_sub_words
=2D.ident	"bn_sub_words"
+.size	bn_sub_words,.-.L_bn_sub_words_begin
+.globl	bn_sub_part_words
+.type	bn_sub_part_words,@function
+.align	16
+bn_sub_part_words:
+.L_bn_sub_part_words_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+
+	movl	20(%esp),%ebx
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	movl	32(%esp),%ebp
+	xorl	%eax,%eax
+	andl	$4294967288,%ebp
+	jz	.L017aw_finish
+.L018aw_loop:
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+
+	movl	4(%esi),%ecx
+	movl	4(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,4(%ebx)
+
+	movl	8(%esi),%ecx
+	movl	8(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,8(%ebx)
+
+	movl	12(%esi),%ecx
+	movl	12(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,12(%ebx)
+
+	movl	16(%esi),%ecx
+	movl	16(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,16(%ebx)
+
+	movl	20(%esi),%ecx
+	movl	20(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,20(%ebx)
+
+	movl	24(%esi),%ecx
+	movl	24(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
+
+	movl	28(%esi),%ecx
+	movl	28(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,28(%ebx)
+
+	addl	$32,%esi
+	addl	$32,%edi
+	addl	$32,%ebx
+	subl	$8,%ebp
+	jnz	.L018aw_loop
+.L017aw_finish:
+	movl	32(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+	decl	%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+	decl	%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+	decl	%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+	decl	%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+	decl	%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+	decl	%ebp
+	jz	.L019aw_end
+
+	movl	(%esi),%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+	addl	$4,%esi
+	addl	$4,%edi
+	addl	$4,%ebx
+.L019aw_end:
+	cmpl	$0,36(%esp)
+	je	.L020pw_end
+	movl	36(%esp),%ebp
+	cmpl	$0,%ebp
+	je	.L020pw_end
+	jge	.L021pw_pos
+
+	movl	$0,%edx
+	subl	%ebp,%edx
+	movl	%edx,%ebp
+	andl	$4294967288,%ebp
+	jz	.L022pw_neg_finish
+.L023pw_neg_loop:
+
+	movl	$0,%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,(%ebx)
+
+	movl	$0,%ecx
+	movl	4(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,4(%ebx)
+
+	movl	$0,%ecx
+	movl	8(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,8(%ebx)
+
+	movl	$0,%ecx
+	movl	12(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,12(%ebx)
+
+	movl	$0,%ecx
+	movl	16(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,16(%ebx)
+
+	movl	$0,%ecx
+	movl	20(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,20(%ebx)
+
+	movl	$0,%ecx
+	movl	24(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
+
+	movl	$0,%ecx
+	movl	28(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,28(%ebx)
+
+	addl	$32,%edi
+	addl	$32,%ebx
+	subl	$8,%ebp
+	jnz	.L023pw_neg_loop
+.L022pw_neg_finish:
+	movl	36(%esp),%edx
+	movl	$0,%ebp
+	subl	%edx,%ebp
+	andl	$7,%ebp
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	decl	%ebp
+	movl	%ecx,(%ebx)
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	4(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	decl	%ebp
+	movl	%ecx,4(%ebx)
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	8(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	decl	%ebp
+	movl	%ecx,8(%ebx)
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	12(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	decl	%ebp
+	movl	%ecx,12(%ebx)
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	16(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	decl	%ebp
+	movl	%ecx,16(%ebx)
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	20(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	decl	%ebp
+	movl	%ecx,20(%ebx)
+	jz	.L020pw_end
+
+	movl	$0,%ecx
+	movl	24(%edi),%edx
+	subl	%eax,%ecx
+	movl	$0,%eax
+	adcl	%eax,%eax
+	subl	%edx,%ecx
+	adcl	$0,%eax
+	movl	%ecx,24(%ebx)
+	jmp	.L020pw_end
+.L021pw_pos:
+	andl	$4294967288,%ebp
+	jz	.L024pw_pos_finish
+.L025pw_pos_loop:
+
+	movl	(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,(%ebx)
+	jnc	.L026pw_nc0
+
+	movl	4(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,4(%ebx)
+	jnc	.L027pw_nc1
+
+	movl	8(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,8(%ebx)
+	jnc	.L028pw_nc2
+
+	movl	12(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,12(%ebx)
+	jnc	.L029pw_nc3
+
+	movl	16(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,16(%ebx)
+	jnc	.L030pw_nc4
+
+	movl	20(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,20(%ebx)
+	jnc	.L031pw_nc5
+
+	movl	24(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,24(%ebx)
+	jnc	.L032pw_nc6
+
+	movl	28(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,28(%ebx)
+	jnc	.L033pw_nc7
+
+	addl	$32,%esi
+	addl	$32,%ebx
+	subl	$8,%ebp
+	jnz	.L025pw_pos_loop
+.L024pw_pos_finish:
+	movl	36(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L020pw_end
+
+	movl	(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,(%ebx)
+	jnc	.L034pw_tail_nc0
+	decl	%ebp
+	jz	.L020pw_end
+
+	movl	4(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,4(%ebx)
+	jnc	.L035pw_tail_nc1
+	decl	%ebp
+	jz	.L020pw_end
+
+	movl	8(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,8(%ebx)
+	jnc	.L036pw_tail_nc2
+	decl	%ebp
+	jz	.L020pw_end
+
+	movl	12(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,12(%ebx)
+	jnc	.L037pw_tail_nc3
+	decl	%ebp
+	jz	.L020pw_end
+
+	movl	16(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,16(%ebx)
+	jnc	.L038pw_tail_nc4
+	decl	%ebp
+	jz	.L020pw_end
+
+	movl	20(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,20(%ebx)
+	jnc	.L039pw_tail_nc5
+	decl	%ebp
+	jz	.L020pw_end
+
+	movl	24(%esi),%ecx
+	subl	%eax,%ecx
+	movl	%ecx,24(%ebx)
+	jnc	.L040pw_tail_nc6
+	movl	$1,%eax
+	jmp	.L020pw_end
+.L041pw_nc_loop:
+	movl	(%esi),%ecx
+	movl	%ecx,(%ebx)
+.L026pw_nc0:
+	movl	4(%esi),%ecx
+	movl	%ecx,4(%ebx)
+.L027pw_nc1:
+	movl	8(%esi),%ecx
+	movl	%ecx,8(%ebx)
+.L028pw_nc2:
+	movl	12(%esi),%ecx
+	movl	%ecx,12(%ebx)
+.L029pw_nc3:
+	movl	16(%esi),%ecx
+	movl	%ecx,16(%ebx)
+.L030pw_nc4:
+	movl	20(%esi),%ecx
+	movl	%ecx,20(%ebx)
+.L031pw_nc5:
+	movl	24(%esi),%ecx
+	movl	%ecx,24(%ebx)
+.L032pw_nc6:
+	movl	28(%esi),%ecx
+	movl	%ecx,28(%ebx)
+.L033pw_nc7:
+
+	addl	$32,%esi
+	addl	$32,%ebx
+	subl	$8,%ebp
+	jnz	.L041pw_nc_loop
+	movl	36(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L042pw_nc_end
+	movl	(%esi),%ecx
+	movl	%ecx,(%ebx)
+.L034pw_tail_nc0:
+	decl	%ebp
+	jz	.L042pw_nc_end
+	movl	4(%esi),%ecx
+	movl	%ecx,4(%ebx)
+.L035pw_tail_nc1:
+	decl	%ebp
+	jz	.L042pw_nc_end
+	movl	8(%esi),%ecx
+	movl	%ecx,8(%ebx)
+.L036pw_tail_nc2:
+	decl	%ebp
+	jz	.L042pw_nc_end
+	movl	12(%esi),%ecx
+	movl	%ecx,12(%ebx)
+.L037pw_tail_nc3:
+	decl	%ebp
+	jz	.L042pw_nc_end
+	movl	16(%esi),%ecx
+	movl	%ecx,16(%ebx)
+.L038pw_tail_nc4:
+	decl	%ebp
+	jz	.L042pw_nc_end
+	movl	20(%esi),%ecx
+	movl	%ecx,20(%ebx)
+.L039pw_tail_nc5:
+	decl	%ebp
+	jz	.L042pw_nc_end
+	movl	24(%esi),%ecx
+	movl	%ecx,24(%ebx)
+.L040pw_tail_nc6:
+.L042pw_nc_end:
+	movl	$0,%eax
+.L020pw_end:
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	bn_sub_part_words,.-.L_bn_sub_part_words_begin
Index: secure/lib/libcrypto/i386/co-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/co-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/co-586.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/co-586.s,v 1.2.32.1 2010/02/10 =
00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/sha512-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/sha512-586.s	(revision 0)
+++ secure/lib/libcrypto/i386/sha512-586.s	(revision 0)
@@ -0,0 +1,563 @@
+.file	"sha512-586.s"
+.text
+.globl	sha512_block_data_order
+.type	sha512_block_data_order,@function
+.align	16
+sha512_block_data_order:
+.L_sha512_block_data_order_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%esi
+	movl	24(%esp),%edi
+	movl	28(%esp),%eax
+	movl	%esp,%ebx
+	call	.L000pic_point
+.L000pic_point:
+	popl	%ebp
+	leal	.L001K512-.L000pic_point(%ebp),%ebp
+	subl	$16,%esp
+	andl	$-64,%esp
+	shll	$7,%eax
+	addl	%edi,%eax
+	movl	%esi,(%esp)
+	movl	%edi,4(%esp)
+	movl	%eax,8(%esp)
+	movl	%ebx,12(%esp)
+.align	16
+.L002loop_x86:
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	16(%edi),%eax
+	movl	20(%edi),%ebx
+	movl	24(%edi),%ecx
+	movl	28(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	32(%edi),%eax
+	movl	36(%edi),%ebx
+	movl	40(%edi),%ecx
+	movl	44(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	48(%edi),%eax
+	movl	52(%edi),%ebx
+	movl	56(%edi),%ecx
+	movl	60(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	64(%edi),%eax
+	movl	68(%edi),%ebx
+	movl	72(%edi),%ecx
+	movl	76(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	80(%edi),%eax
+	movl	84(%edi),%ebx
+	movl	88(%edi),%ecx
+	movl	92(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	96(%edi),%eax
+	movl	100(%edi),%ebx
+	movl	104(%edi),%ecx
+	movl	108(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	112(%edi),%eax
+	movl	116(%edi),%ebx
+	movl	120(%edi),%ecx
+	movl	124(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	addl	$128,%edi
+	subl	$72,%esp
+	movl	%edi,204(%esp)
+	leal	8(%esp),%edi
+	movl	$16,%ecx
+.long	2784229001
+.align	16
+.L00300_15_x86:
+	movl	40(%esp),%ecx
+	movl	44(%esp),%edx
+	movl	%ecx,%esi
+	shrl	$9,%ecx
+	movl	%edx,%edi
+	shrl	$9,%edx
+	movl	%ecx,%ebx
+	shll	$14,%esi
+	movl	%edx,%eax
+	shll	$14,%edi
+	xorl	%esi,%ebx
+	shrl	$5,%ecx
+	xorl	%edi,%eax
+	shrl	$5,%edx
+	xorl	%ecx,%eax
+	shll	$4,%esi
+	xorl	%edx,%ebx
+	shll	$4,%edi
+	xorl	%esi,%ebx
+	shrl	$4,%ecx
+	xorl	%edi,%eax
+	shrl	$4,%edx
+	xorl	%ecx,%eax
+	shll	$5,%esi
+	xorl	%edx,%ebx
+	shll	$5,%edi
+	xorl	%esi,%eax
+	xorl	%edi,%ebx
+	movl	48(%esp),%ecx
+	movl	52(%esp),%edx
+	movl	56(%esp),%esi
+	movl	60(%esp),%edi
+	addl	64(%esp),%eax
+	adcl	68(%esp),%ebx
+	xorl	%esi,%ecx
+	xorl	%edi,%edx
+	andl	40(%esp),%ecx
+	andl	44(%esp),%edx
+	addl	192(%esp),%eax
+	adcl	196(%esp),%ebx
+	xorl	%esi,%ecx
+	xorl	%edi,%edx
+	movl	(%ebp),%esi
+	movl	4(%ebp),%edi
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	movl	32(%esp),%ecx
+	movl	36(%esp),%edx
+	addl	%esi,%eax
+	adcl	%edi,%ebx
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	%eax,32(%esp)
+	movl	%ebx,36(%esp)
+	movl	%ecx,%esi
+	shrl	$2,%ecx
+	movl	%edx,%edi
+	shrl	$2,%edx
+	movl	%ecx,%ebx
+	shll	$4,%esi
+	movl	%edx,%eax
+	shll	$4,%edi
+	xorl	%esi,%ebx
+	shrl	$5,%ecx
+	xorl	%edi,%eax
+	shrl	$5,%edx
+	xorl	%ecx,%ebx
+	shll	$21,%esi
+	xorl	%edx,%eax
+	shll	$21,%edi
+	xorl	%esi,%eax
+	shrl	$21,%ecx
+	xorl	%edi,%ebx
+	shrl	$21,%edx
+	xorl	%ecx,%eax
+	shll	$5,%esi
+	xorl	%edx,%ebx
+	shll	$5,%edi
+	xorl	%esi,%eax
+	xorl	%edi,%ebx
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	16(%esp),%esi
+	movl	20(%esp),%edi
+	addl	(%esp),%eax
+	adcl	4(%esp),%ebx
+	orl	%esi,%ecx
+	orl	%edi,%edx
+	andl	24(%esp),%ecx
+	andl	28(%esp),%edx
+	andl	8(%esp),%esi
+	andl	12(%esp),%edi
+	orl	%esi,%ecx
+	orl	%edi,%edx
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movb	(%ebp),%dl
+	subl	$8,%esp
+	leal	8(%ebp),%ebp
+	cmpb	$148,%dl
+	jne	.L00300_15_x86
+.align	16
+.L00416_79_x86:
+	movl	312(%esp),%ecx
+	movl	316(%esp),%edx
+	movl	%ecx,%esi
+	shrl	$1,%ecx
+	movl	%edx,%edi
+	shrl	$1,%edx
+	movl	%ecx,%eax
+	shll	$24,%esi
+	movl	%edx,%ebx
+	shll	$24,%edi
+	xorl	%esi,%ebx
+	shrl	$6,%ecx
+	xorl	%edi,%eax
+	shrl	$6,%edx
+	xorl	%ecx,%eax
+	shll	$7,%esi
+	xorl	%edx,%ebx
+	shll	$1,%edi
+	xorl	%esi,%ebx
+	shrl	$1,%ecx
+	xorl	%edi,%eax
+	shrl	$1,%edx
+	xorl	%ecx,%eax
+	shll	$6,%edi
+	xorl	%edx,%ebx
+	xorl	%edi,%eax
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movl	208(%esp),%ecx
+	movl	212(%esp),%edx
+	movl	%ecx,%esi
+	shrl	$6,%ecx
+	movl	%edx,%edi
+	shrl	$6,%edx
+	movl	%ecx,%eax
+	shll	$3,%esi
+	movl	%edx,%ebx
+	shll	$3,%edi
+	xorl	%esi,%eax
+	shrl	$13,%ecx
+	xorl	%edi,%ebx
+	shrl	$13,%edx
+	xorl	%ecx,%eax
+	shll	$10,%esi
+	xorl	%edx,%ebx
+	shll	$10,%edi
+	xorl	%esi,%ebx
+	shrl	$10,%ecx
+	xorl	%edi,%eax
+	shrl	$10,%edx
+	xorl	%ecx,%ebx
+	shll	$13,%edi
+	xorl	%edx,%eax
+	xorl	%edi,%eax
+	movl	320(%esp),%ecx
+	movl	324(%esp),%edx
+	addl	(%esp),%eax
+	adcl	4(%esp),%ebx
+	movl	248(%esp),%esi
+	movl	252(%esp),%edi
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	addl	%esi,%eax
+	adcl	%edi,%ebx
+	movl	%eax,192(%esp)
+	movl	%ebx,196(%esp)
+	movl	40(%esp),%ecx
+	movl	44(%esp),%edx
+	movl	%ecx,%esi
+	shrl	$9,%ecx
+	movl	%edx,%edi
+	shrl	$9,%edx
+	movl	%ecx,%ebx
+	shll	$14,%esi
+	movl	%edx,%eax
+	shll	$14,%edi
+	xorl	%esi,%ebx
+	shrl	$5,%ecx
+	xorl	%edi,%eax
+	shrl	$5,%edx
+	xorl	%ecx,%eax
+	shll	$4,%esi
+	xorl	%edx,%ebx
+	shll	$4,%edi
+	xorl	%esi,%ebx
+	shrl	$4,%ecx
+	xorl	%edi,%eax
+	shrl	$4,%edx
+	xorl	%ecx,%eax
+	shll	$5,%esi
+	xorl	%edx,%ebx
+	shll	$5,%edi
+	xorl	%esi,%eax
+	xorl	%edi,%ebx
+	movl	48(%esp),%ecx
+	movl	52(%esp),%edx
+	movl	56(%esp),%esi
+	movl	60(%esp),%edi
+	addl	64(%esp),%eax
+	adcl	68(%esp),%ebx
+	xorl	%esi,%ecx
+	xorl	%edi,%edx
+	andl	40(%esp),%ecx
+	andl	44(%esp),%edx
+	addl	192(%esp),%eax
+	adcl	196(%esp),%ebx
+	xorl	%esi,%ecx
+	xorl	%edi,%edx
+	movl	(%ebp),%esi
+	movl	4(%ebp),%edi
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	movl	32(%esp),%ecx
+	movl	36(%esp),%edx
+	addl	%esi,%eax
+	adcl	%edi,%ebx
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	%eax,32(%esp)
+	movl	%ebx,36(%esp)
+	movl	%ecx,%esi
+	shrl	$2,%ecx
+	movl	%edx,%edi
+	shrl	$2,%edx
+	movl	%ecx,%ebx
+	shll	$4,%esi
+	movl	%edx,%eax
+	shll	$4,%edi
+	xorl	%esi,%ebx
+	shrl	$5,%ecx
+	xorl	%edi,%eax
+	shrl	$5,%edx
+	xorl	%ecx,%ebx
+	shll	$21,%esi
+	xorl	%edx,%eax
+	shll	$21,%edi
+	xorl	%esi,%eax
+	shrl	$21,%ecx
+	xorl	%edi,%ebx
+	shrl	$21,%edx
+	xorl	%ecx,%eax
+	shll	$5,%esi
+	xorl	%edx,%ebx
+	shll	$5,%edi
+	xorl	%esi,%eax
+	xorl	%edi,%ebx
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	16(%esp),%esi
+	movl	20(%esp),%edi
+	addl	(%esp),%eax
+	adcl	4(%esp),%ebx
+	orl	%esi,%ecx
+	orl	%edi,%edx
+	andl	24(%esp),%ecx
+	andl	28(%esp),%edx
+	andl	8(%esp),%esi
+	andl	12(%esp),%edi
+	orl	%esi,%ecx
+	orl	%edi,%edx
+	addl	%ecx,%eax
+	adcl	%edx,%ebx
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movb	(%ebp),%dl
+	subl	$8,%esp
+	leal	8(%ebp),%ebp
+	cmpb	$23,%dl
+	jne	.L00416_79_x86
+	movl	840(%esp),%esi
+	movl	844(%esp),%edi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	addl	8(%esp),%eax
+	adcl	12(%esp),%ebx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	addl	16(%esp),%ecx
+	adcl	20(%esp),%edx
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	movl	16(%esi),%eax
+	movl	20(%esi),%ebx
+	movl	24(%esi),%ecx
+	movl	28(%esi),%edx
+	addl	24(%esp),%eax
+	adcl	28(%esp),%ebx
+	movl	%eax,16(%esi)
+	movl	%ebx,20(%esi)
+	addl	32(%esp),%ecx
+	adcl	36(%esp),%edx
+	movl	%ecx,24(%esi)
+	movl	%edx,28(%esi)
+	movl	32(%esi),%eax
+	movl	36(%esi),%ebx
+	movl	40(%esi),%ecx
+	movl	44(%esi),%edx
+	addl	40(%esp),%eax
+	adcl	44(%esp),%ebx
+	movl	%eax,32(%esi)
+	movl	%ebx,36(%esi)
+	addl	48(%esp),%ecx
+	adcl	52(%esp),%edx
+	movl	%ecx,40(%esi)
+	movl	%edx,44(%esi)
+	movl	48(%esi),%eax
+	movl	52(%esi),%ebx
+	movl	56(%esi),%ecx
+	movl	60(%esi),%edx
+	addl	56(%esp),%eax
+	adcl	60(%esp),%ebx
+	movl	%eax,48(%esi)
+	movl	%ebx,52(%esi)
+	addl	64(%esp),%ecx
+	adcl	68(%esp),%edx
+	movl	%ecx,56(%esi)
+	movl	%edx,60(%esi)
+	addl	$840,%esp
+	subl	$640,%ebp
+	cmpl	8(%esp),%edi
+	jb	.L002loop_x86
+	movl	12(%esp),%esp
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.align	64
+.L001K512:
+.long	3609767458,1116352408
+.long	602891725,1899447441
+.long	3964484399,3049323471
+.long	2173295548,3921009573
+.long	4081628472,961987163
+.long	3053834265,1508970993
+.long	2937671579,2453635748
+.long	3664609560,2870763221
+.long	2734883394,3624381080
+.long	1164996542,310598401
+.long	1323610764,607225278
+.long	3590304994,1426881987
+.long	4068182383,1925078388
+.long	991336113,2162078206
+.long	633803317,2614888103
+.long	3479774868,3248222580
+.long	2666613458,3835390401
+.long	944711139,4022224774
+.long	2341262773,264347078
+.long	2007800933,604807628
+.long	1495990901,770255983
+.long	1856431235,1249150122
+.long	3175218132,1555081692
+.long	2198950837,1996064986
+.long	3999719339,2554220882
+.long	766784016,2821834349
+.long	2566594879,2952996808
+.long	3203337956,3210313671
+.long	1034457026,3336571891
+.long	2466948901,3584528711
+.long	3758326383,113926993
+.long	168717936,338241895
+.long	1188179964,666307205
+.long	1546045734,773529912
+.long	1522805485,1294757372
+.long	2643833823,1396182291
+.long	2343527390,1695183700
+.long	1014477480,1986661051
+.long	1206759142,2177026350
+.long	344077627,2456956037
+.long	1290863460,2730485921
+.long	3158454273,2820302411
+.long	3505952657,3259730800
+.long	106217008,3345764771
+.long	3606008344,3516065817
+.long	1432725776,3600352804
+.long	1467031594,4094571909
+.long	851169720,275423344
+.long	3100823752,430227734
+.long	1363258195,506948616
+.long	3750685593,659060556
+.long	3785050280,883997877
+.long	3318307427,958139571
+.long	3812723403,1322822218
+.long	2003034995,1537002063
+.long	3602036899,1747873779
+.long	1575990012,1955562222
+.long	1125592928,2024104815
+.long	2716904306,2227730452
+.long	442776044,2361852424
+.long	593698344,2428436474
+.long	3733110249,2756734187
+.long	2999351573,3204031479
+.long	3815920427,3329325298
+.long	3928383900,3391569614
+.long	566280711,3515267271
+.long	3454069534,3940187606
+.long	4000239992,4118630271
+.long	1914138554,116418474
+.long	2731055270,174292421
+.long	3203993006,289380356
+.long	320620315,460393269
+.long	587496836,685471733
+.long	1086792851,852142971
+.long	365543100,1017036298
+.long	2618297676,1126000580
+.long	3409855158,1288033470
+.long	4234509866,1501505948
+.long	987167468,1607167915
+.long	1246189591,1816402316
+.size	sha512_block_data_order,.-.L_sha512_block_data_order_begin
+.byte	83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
+.byte	110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
+.byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
+.byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
+.byte	62,0
Index: secure/lib/libcrypto/i386/aes-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/aes-586.s	(revision 0)
+++ secure/lib/libcrypto/i386/aes-586.s	(revision 0)
@@ -0,0 +1,3236 @@
+.file	"aes-586.s"
+.text
+.type	_x86_AES_encrypt_compact,@function
+.align	16
+_x86_AES_encrypt_compact:
+	movl	%edi,20(%esp)
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,24(%esp)
+	movl	-128(%ebp),%edi
+	movl	-96(%ebp),%esi
+	movl	-64(%ebp),%edi
+	movl	-32(%ebp),%esi
+	movl	(%ebp),%edi
+	movl	32(%ebp),%esi
+	movl	64(%ebp),%edi
+	movl	96(%ebp),%esi
+.align	16
+.L000loop:
+	movl	%eax,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%bh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,4(%esp)
+
+	movl	%ebx,%esi
+	andl	$255,%esi
+	shrl	$16,%ebx
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%ch,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,8(%esp)
+
+	movl	%ecx,%esi
+	andl	$255,%esi
+	shrl	$24,%ecx
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%dh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edx
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movzbl	%bh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+
+	andl	$255,%edx
+	movzbl	-128(%ebp,%edx,1),%edx
+	movzbl	%ah,%eax
+	movzbl	-128(%ebp,%eax,1),%eax
+	shll	$8,%eax
+	xorl	%eax,%edx
+	movl	4(%esp),%eax
+	andl	$255,%ebx
+	movzbl	-128(%ebp,%ebx,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%edx
+	movl	8(%esp),%ebx
+	movzbl	-128(%ebp,%ecx,1),%ecx
+	shll	$24,%ecx
+	xorl	%ecx,%edx
+	movl	%esi,%ecx
+
+	movl	%ecx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ecx,%ecx,1),%edi
+	subl	%ebp,%esi
+	andl	$4278124286,%edi
+	andl	$454761243,%esi
+	movl	%ecx,%ebp
+	xorl	%edi,%esi
+	xorl	%esi,%ecx
+	roll	$24,%ecx
+	xorl	%esi,%ecx
+	rorl	$16,%ebp
+	xorl	%ebp,%ecx
+	rorl	$8,%ebp
+	xorl	%ebp,%ecx
+	movl	%edx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%edx,%edx,1),%edi
+	subl	%ebp,%esi
+	andl	$4278124286,%edi
+	andl	$454761243,%esi
+	movl	%edx,%ebp
+	xorl	%edi,%esi
+	xorl	%esi,%edx
+	roll	$24,%edx
+	xorl	%esi,%edx
+	rorl	$16,%ebp
+	xorl	%ebp,%edx
+	rorl	$8,%ebp
+	xorl	%ebp,%edx
+	movl	%eax,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%eax,%eax,1),%edi
+	subl	%ebp,%esi
+	andl	$4278124286,%edi
+	andl	$454761243,%esi
+	movl	%eax,%ebp
+	xorl	%edi,%esi
+	xorl	%esi,%eax
+	roll	$24,%eax
+	xorl	%esi,%eax
+	rorl	$16,%ebp
+	xorl	%ebp,%eax
+	rorl	$8,%ebp
+	xorl	%ebp,%eax
+	movl	%ebx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ebx,%ebx,1),%edi
+	subl	%ebp,%esi
+	andl	$4278124286,%edi
+	andl	$454761243,%esi
+	movl	%ebx,%ebp
+	xorl	%edi,%esi
+	xorl	%esi,%ebx
+	roll	$24,%ebx
+	xorl	%esi,%ebx
+	rorl	$16,%ebp
+	xorl	%ebp,%ebx
+	rorl	$8,%ebp
+	xorl	%ebp,%ebx
+	movl	20(%esp),%edi
+	movl	28(%esp),%ebp
+	addl	$16,%edi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	cmpl	24(%esp),%edi
+	movl	%edi,20(%esp)
+	jb	.L000loop
+	movl	%eax,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%bh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,4(%esp)
+
+	movl	%ebx,%esi
+	andl	$255,%esi
+	shrl	$16,%ebx
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%ch,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,8(%esp)
+
+	movl	%ecx,%esi
+	andl	$255,%esi
+	shrl	$24,%ecx
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%dh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edx
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movzbl	%bh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+
+	movl	20(%esp),%edi
+	andl	$255,%edx
+	movzbl	-128(%ebp,%edx,1),%edx
+	movzbl	%ah,%eax
+	movzbl	-128(%ebp,%eax,1),%eax
+	shll	$8,%eax
+	xorl	%eax,%edx
+	movl	4(%esp),%eax
+	andl	$255,%ebx
+	movzbl	-128(%ebp,%ebx,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%edx
+	movl	8(%esp),%ebx
+	movzbl	-128(%ebp,%ecx,1),%ecx
+	shll	$24,%ecx
+	xorl	%ecx,%edx
+	movl	%esi,%ecx
+
+	xorl	16(%edi),%eax
+	xorl	20(%edi),%ebx
+	xorl	24(%edi),%ecx
+	xorl	28(%edi),%edx
+	ret
+.size	_x86_AES_encrypt_compact,.-_x86_AES_encrypt_compact
+.type	_sse_AES_encrypt_compact,@function
+.align	16
+_sse_AES_encrypt_compact:
+	pxor	(%edi),%mm0
+	pxor	8(%edi),%mm4
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,24(%esp)
+	movl	$454761243,%eax
+	movl	%eax,8(%esp)
+	movl	%eax,12(%esp)
+	movl	-128(%ebp),%eax
+	movl	-96(%ebp),%ebx
+	movl	-64(%ebp),%ecx
+	movl	-32(%ebp),%edx
+	movl	(%ebp),%eax
+	movl	32(%ebp),%ebx
+	movl	64(%ebp),%ecx
+	movl	96(%ebp),%edx
+.align	16
+.L001loop:
+	pshufw	$8,%mm0,%mm1
+	pshufw	$13,%mm4,%mm5
+	movd	%mm1,%eax
+	movd	%mm5,%ebx
+	movzbl	%al,%esi
+	movzbl	-128(%ebp,%esi,1),%ecx
+	pshufw	$13,%mm0,%mm2
+	movzbl	%ah,%edx
+	movzbl	-128(%ebp,%edx,1),%edx
+	shll	$8,%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$16,%esi
+	orl	%esi,%ecx
+	pshufw	$8,%mm4,%mm6
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%edx
+	shrl	$16,%ebx
+	movzbl	%ah,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$8,%esi
+	orl	%esi,%ecx
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%ecx
+	movd	%ecx,%mm0
+	movzbl	%al,%esi
+	movzbl	-128(%ebp,%esi,1),%ecx
+	movd	%mm2,%eax
+	movzbl	%bl,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$16,%esi
+	orl	%esi,%ecx
+	movd	%mm6,%ebx
+	movzbl	%ah,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%ecx
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$8,%esi
+	orl	%esi,%ecx
+	movd	%ecx,%mm1
+	movzbl	%bl,%esi
+	movzbl	-128(%ebp,%esi,1),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$16,%esi
+	orl	%esi,%ecx
+	shrl	$16,%eax
+	punpckldq	%mm1,%mm0
+	movzbl	%ah,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%ecx
+	andl	$255,%eax
+	movzbl	-128(%ebp,%eax,1),%eax
+	shll	$16,%eax
+	orl	%eax,%edx
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$8,%esi
+	orl	%esi,%ecx
+	movd	%ecx,%mm4
+	andl	$255,%ebx
+	movzbl	-128(%ebp,%ebx,1),%ebx
+	orl	%ebx,%edx
+	movd	%edx,%mm5
+	punpckldq	%mm5,%mm4
+	addl	$16,%edi
+	cmpl	24(%esp),%edi
+	ja	.L002out
+	movq	8(%esp),%mm2
+	pxor	%mm3,%mm3
+	pxor	%mm7,%mm7
+	movq	%mm0,%mm1
+	movq	%mm4,%mm5
+	pcmpgtb	%mm0,%mm3
+	pcmpgtb	%mm4,%mm7
+	pand	%mm2,%mm3
+	pand	%mm2,%mm7
+	pshufw	$177,%mm0,%mm2
+	pshufw	$177,%mm4,%mm6
+	paddb	%mm0,%mm0
+	paddb	%mm4,%mm4
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	pshufw	$177,%mm2,%mm3
+	pshufw	$177,%mm6,%mm7
+	pxor	%mm0,%mm1
+	pxor	%mm4,%mm5
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	movq	%mm3,%mm2
+	movq	%mm7,%mm6
+	pslld	$8,%mm3
+	pslld	$8,%mm7
+	psrld	$24,%mm2
+	psrld	$24,%mm6
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	movq	%mm1,%mm3
+	movq	%mm5,%mm7
+	movq	(%edi),%mm2
+	movq	8(%edi),%mm6
+	psrld	$8,%mm1
+	psrld	$8,%mm5
+	movl	-128(%ebp),%eax
+	pslld	$24,%mm3
+	pslld	$24,%mm7
+	movl	-64(%ebp),%ebx
+	pxor	%mm1,%mm0
+	pxor	%mm5,%mm4
+	movl	(%ebp),%ecx
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	movl	64(%ebp),%edx
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	jmp	.L001loop
+.align	16
+.L002out:
+	pxor	(%edi),%mm0
+	pxor	8(%edi),%mm4
+	ret
+.size	_sse_AES_encrypt_compact,.-_sse_AES_encrypt_compact
+.type	_x86_AES_encrypt,@function
+.align	16
+_x86_AES_encrypt:
+	movl	%edi,20(%esp)
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,24(%esp)
+.align	16
+.L003loop:
+	movl	%eax,%esi
+	andl	$255,%esi
+	movl	(%ebp,%esi,8),%esi
+	movzbl	%bh,%edi
+	xorl	3(%ebp,%edi,8),%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	xorl	2(%ebp,%edi,8),%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	xorl	1(%ebp,%edi,8),%esi
+	movl	%esi,4(%esp)
+
+	movl	%ebx,%esi
+	andl	$255,%esi
+	shrl	$16,%ebx
+	movl	(%ebp,%esi,8),%esi
+	movzbl	%ch,%edi
+	xorl	3(%ebp,%edi,8),%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	xorl	2(%ebp,%edi,8),%esi
+	movl	%eax,%edi
+	shrl	$24,%edi
+	xorl	1(%ebp,%edi,8),%esi
+	movl	%esi,8(%esp)
+
+	movl	%ecx,%esi
+	andl	$255,%esi
+	shrl	$24,%ecx
+	movl	(%ebp,%esi,8),%esi
+	movzbl	%dh,%edi
+	xorl	3(%ebp,%edi,8),%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edx
+	andl	$255,%edi
+	xorl	2(%ebp,%edi,8),%esi
+	movzbl	%bh,%edi
+	xorl	1(%ebp,%edi,8),%esi
+
+	movl	20(%esp),%edi
+	movl	(%ebp,%edx,8),%edx
+	movzbl	%ah,%eax
+	xorl	3(%ebp,%eax,8),%edx
+	movl	4(%esp),%eax
+	andl	$255,%ebx
+	xorl	2(%ebp,%ebx,8),%edx
+	movl	8(%esp),%ebx
+	xorl	1(%ebp,%ecx,8),%edx
+	movl	%esi,%ecx
+
+	addl	$16,%edi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	cmpl	24(%esp),%edi
+	movl	%edi,20(%esp)
+	jb	.L003loop
+	movl	%eax,%esi
+	andl	$255,%esi
+	movl	2(%ebp,%esi,8),%esi
+	andl	$255,%esi
+	movzbl	%bh,%edi
+	movl	(%ebp,%edi,8),%edi
+	andl	$65280,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movl	(%ebp,%edi,8),%edi
+	andl	$16711680,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	movl	2(%ebp,%edi,8),%edi
+	andl	$4278190080,%edi
+	xorl	%edi,%esi
+	movl	%esi,4(%esp)
+	movl	%ebx,%esi
+	andl	$255,%esi
+	shrl	$16,%ebx
+	movl	2(%ebp,%esi,8),%esi
+	andl	$255,%esi
+	movzbl	%ch,%edi
+	movl	(%ebp,%edi,8),%edi
+	andl	$65280,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movl	(%ebp,%edi,8),%edi
+	andl	$16711680,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$24,%edi
+	movl	2(%ebp,%edi,8),%edi
+	andl	$4278190080,%edi
+	xorl	%edi,%esi
+	movl	%esi,8(%esp)
+	movl	%ecx,%esi
+	andl	$255,%esi
+	shrl	$24,%ecx
+	movl	2(%ebp,%esi,8),%esi
+	andl	$255,%esi
+	movzbl	%dh,%edi
+	movl	(%ebp,%edi,8),%edi
+	andl	$65280,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edx
+	andl	$255,%edi
+	movl	(%ebp,%edi,8),%edi
+	andl	$16711680,%edi
+	xorl	%edi,%esi
+	movzbl	%bh,%edi
+	movl	2(%ebp,%edi,8),%edi
+	andl	$4278190080,%edi
+	xorl	%edi,%esi
+	movl	20(%esp),%edi
+	andl	$255,%edx
+	movl	2(%ebp,%edx,8),%edx
+	andl	$255,%edx
+	movzbl	%ah,%eax
+	movl	(%ebp,%eax,8),%eax
+	andl	$65280,%eax
+	xorl	%eax,%edx
+	movl	4(%esp),%eax
+	andl	$255,%ebx
+	movl	(%ebp,%ebx,8),%ebx
+	andl	$16711680,%ebx
+	xorl	%ebx,%edx
+	movl	8(%esp),%ebx
+	movl	2(%ebp,%ecx,8),%ecx
+	andl	$4278190080,%ecx
+	xorl	%ecx,%edx
+	movl	%esi,%ecx
+	addl	$16,%edi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	ret
+.align	64
+.LAES_Te:
+.long	2774754246,2774754246
+.long	2222750968,2222750968
+.long	2574743534,2574743534
+.long	2373680118,2373680118
+.long	234025727,234025727
+.long	3177933782,3177933782
+.long	2976870366,2976870366
+.long	1422247313,1422247313
+.long	1345335392,1345335392
+.long	50397442,50397442
+.long	2842126286,2842126286
+.long	2099981142,2099981142
+.long	436141799,436141799
+.long	1658312629,1658312629
+.long	3870010189,3870010189
+.long	2591454956,2591454956
+.long	1170918031,1170918031
+.long	2642575903,2642575903
+.long	1086966153,1086966153
+.long	2273148410,2273148410
+.long	368769775,368769775
+.long	3948501426,3948501426
+.long	3376891790,3376891790
+.long	200339707,200339707
+.long	3970805057,3970805057
+.long	1742001331,1742001331
+.long	4255294047,4255294047
+.long	3937382213,3937382213
+.long	3214711843,3214711843
+.long	4154762323,4154762323
+.long	2524082916,2524082916
+.long	1539358875,1539358875
+.long	3266819957,3266819957
+.long	486407649,486407649
+.long	2928907069,2928907069
+.long	1780885068,1780885068
+.long	1513502316,1513502316
+.long	1094664062,1094664062
+.long	49805301,49805301
+.long	1338821763,1338821763
+.long	1546925160,1546925160
+.long	4104496465,4104496465
+.long	887481809,887481809
+.long	150073849,150073849
+.long	2473685474,2473685474
+.long	1943591083,1943591083
+.long	1395732834,1395732834
+.long	1058346282,1058346282
+.long	201589768,201589768
+.long	1388824469,1388824469
+.long	1696801606,1696801606
+.long	1589887901,1589887901
+.long	672667696,672667696
+.long	2711000631,2711000631
+.long	251987210,251987210
+.long	3046808111,3046808111
+.long	151455502,151455502
+.long	907153956,907153956
+.long	2608889883,2608889883
+.long	1038279391,1038279391
+.long	652995533,652995533
+.long	1764173646,1764173646
+.long	3451040383,3451040383
+.long	2675275242,2675275242
+.long	453576978,453576978
+.long	2659418909,2659418909
+.long	1949051992,1949051992
+.long	773462580,773462580
+.long	756751158,756751158
+.long	2993581788,2993581788
+.long	3998898868,3998898868
+.long	4221608027,4221608027
+.long	4132590244,4132590244
+.long	1295727478,1295727478
+.long	1641469623,1641469623
+.long	3467883389,3467883389
+.long	2066295122,2066295122
+.long	1055122397,1055122397
+.long	1898917726,1898917726
+.long	2542044179,2542044179
+.long	4115878822,4115878822
+.long	1758581177,1758581177
+.long	0,0
+.long	753790401,753790401
+.long	1612718144,1612718144
+.long	536673507,536673507
+.long	3367088505,3367088505
+.long	3982187446,3982187446
+.long	3194645204,3194645204
+.long	1187761037,1187761037
+.long	3653156455,3653156455
+.long	1262041458,1262041458
+.long	3729410708,3729410708
+.long	3561770136,3561770136
+.long	3898103984,3898103984
+.long	1255133061,1255133061
+.long	1808847035,1808847035
+.long	720367557,720367557
+.long	3853167183,3853167183
+.long	385612781,385612781
+.long	3309519750,3309519750
+.long	3612167578,3612167578
+.long	1429418854,1429418854
+.long	2491778321,2491778321
+.long	3477423498,3477423498
+.long	284817897,284817897
+.long	100794884,100794884
+.long	2172616702,2172616702
+.long	4031795360,4031795360
+.long	1144798328,1144798328
+.long	3131023141,3131023141
+.long	3819481163,3819481163
+.long	4082192802,4082192802
+.long	4272137053,4272137053
+.long	3225436288,3225436288
+.long	2324664069,2324664069
+.long	2912064063,2912064063
+.long	3164445985,3164445985
+.long	1211644016,1211644016
+.long	83228145,83228145
+.long	3753688163,3753688163
+.long	3249976951,3249976951
+.long	1977277103,1977277103
+.long	1663115586,1663115586
+.long	806359072,806359072
+.long	452984805,452984805
+.long	250868733,250868733
+.long	1842533055,1842533055
+.long	1288555905,1288555905
+.long	336333848,336333848
+.long	890442534,890442534
+.long	804056259,804056259
+.long	3781124030,3781124030
+.long	2727843637,2727843637
+.long	3427026056,3427026056
+.long	957814574,957814574
+.long	1472513171,1472513171
+.long	4071073621,4071073621
+.long	2189328124,2189328124
+.long	1195195770,1195195770
+.long	2892260552,2892260552
+.long	3881655738,3881655738
+.long	723065138,723065138
+.long	2507371494,2507371494
+.long	2690670784,2690670784
+.long	2558624025,2558624025
+.long	3511635870,3511635870
+.long	2145180835,2145180835
+.long	1713513028,1713513028
+.long	2116692564,2116692564
+.long	2878378043,2878378043
+.long	2206763019,2206763019
+.long	3393603212,3393603212
+.long	703524551,703524551
+.long	3552098411,3552098411
+.long	1007948840,1007948840
+.long	2044649127,2044649127
+.long	3797835452,3797835452
+.long	487262998,487262998
+.long	1994120109,1994120109
+.long	1004593371,1004593371
+.long	1446130276,1446130276
+.long	1312438900,1312438900
+.long	503974420,503974420
+.long	3679013266,3679013266
+.long	168166924,168166924
+.long	1814307912,1814307912
+.long	3831258296,3831258296
+.long	1573044895,1573044895
+.long	1859376061,1859376061
+.long	4021070915,4021070915
+.long	2791465668,2791465668
+.long	2828112185,2828112185
+.long	2761266481,2761266481
+.long	937747667,937747667
+.long	2339994098,2339994098
+.long	854058965,854058965
+.long	1137232011,1137232011
+.long	1496790894,1496790894
+.long	3077402074,3077402074
+.long	2358086913,2358086913
+.long	1691735473,1691735473
+.long	3528347292,3528347292
+.long	3769215305,3769215305
+.long	3027004632,3027004632
+.long	4199962284,4199962284
+.long	133494003,133494003
+.long	636152527,636152527
+.long	2942657994,2942657994
+.long	2390391540,2390391540
+.long	3920539207,3920539207
+.long	403179536,403179536
+.long	3585784431,3585784431
+.long	2289596656,2289596656
+.long	1864705354,1864705354
+.long	1915629148,1915629148
+.long	605822008,605822008
+.long	4054230615,4054230615
+.long	3350508659,3350508659
+.long	1371981463,1371981463
+.long	602466507,602466507
+.long	2094914977,2094914977
+.long	2624877800,2624877800
+.long	555687742,555687742
+.long	3712699286,3712699286
+.long	3703422305,3703422305
+.long	2257292045,2257292045
+.long	2240449039,2240449039
+.long	2423288032,2423288032
+.long	1111375484,1111375484
+.long	3300242801,3300242801
+.long	2858837708,2858837708
+.long	3628615824,3628615824
+.long	84083462,84083462
+.long	32962295,32962295
+.long	302911004,302911004
+.long	2741068226,2741068226
+.long	1597322602,1597322602
+.long	4183250862,4183250862
+.long	3501832553,3501832553
+.long	2441512471,2441512471
+.long	1489093017,1489093017
+.long	656219450,656219450
+.long	3114180135,3114180135
+.long	954327513,954327513
+.long	335083755,335083755
+.long	3013122091,3013122091
+.long	856756514,856756514
+.long	3144247762,3144247762
+.long	1893325225,1893325225
+.long	2307821063,2307821063
+.long	2811532339,2811532339
+.long	3063651117,3063651117
+.long	572399164,572399164
+.long	2458355477,2458355477
+.long	552200649,552200649
+.long	1238290055,1238290055
+.long	4283782570,4283782570
+.long	2015897680,2015897680
+.long	2061492133,2061492133
+.long	2408352771,2408352771
+.long	4171342169,4171342169
+.long	2156497161,2156497161
+.long	386731290,386731290
+.long	3669999461,3669999461
+.long	837215959,837215959
+.long	3326231172,3326231172
+.long	3093850320,3093850320
+.long	3275833730,3275833730
+.long	2962856233,2962856233
+.long	1999449434,1999449434
+.long	286199582,286199582
+.long	3417354363,3417354363
+.long	4233385128,4233385128
+.long	3602627437,3602627437
+.long	974525996,974525996
+.byte	99,124,119,123,242,107,111,197
+.byte	48,1,103,43,254,215,171,118
+.byte	202,130,201,125,250,89,71,240
+.byte	173,212,162,175,156,164,114,192
+.byte	183,253,147,38,54,63,247,204
+.byte	52,165,229,241,113,216,49,21
+.byte	4,199,35,195,24,150,5,154
+.byte	7,18,128,226,235,39,178,117
+.byte	9,131,44,26,27,110,90,160
+.byte	82,59,214,179,41,227,47,132
+.byte	83,209,0,237,32,252,177,91
+.byte	106,203,190,57,74,76,88,207
+.byte	208,239,170,251,67,77,51,133
+.byte	69,249,2,127,80,60,159,168
+.byte	81,163,64,143,146,157,56,245
+.byte	188,182,218,33,16,255,243,210
+.byte	205,12,19,236,95,151,68,23
+.byte	196,167,126,61,100,93,25,115
+.byte	96,129,79,220,34,42,144,136
+.byte	70,238,184,20,222,94,11,219
+.byte	224,50,58,10,73,6,36,92
+.byte	194,211,172,98,145,149,228,121
+.byte	231,200,55,109,141,213,78,169
+.byte	108,86,244,234,101,122,174,8
+.byte	186,120,37,46,28,166,180,198
+.byte	232,221,116,31,75,189,139,138
+.byte	112,62,181,102,72,3,246,14
+.byte	97,53,87,185,134,193,29,158
+.byte	225,248,152,17,105,217,142,148
+.byte	155,30,135,233,206,85,40,223
+.byte	140,161,137,13,191,230,66,104
+.byte	65,153,45,15,176,84,187,22
+.byte	99,124,119,123,242,107,111,197
+.byte	48,1,103,43,254,215,171,118
+.byte	202,130,201,125,250,89,71,240
+.byte	173,212,162,175,156,164,114,192
+.byte	183,253,147,38,54,63,247,204
+.byte	52,165,229,241,113,216,49,21
+.byte	4,199,35,195,24,150,5,154
+.byte	7,18,128,226,235,39,178,117
+.byte	9,131,44,26,27,110,90,160
+.byte	82,59,214,179,41,227,47,132
+.byte	83,209,0,237,32,252,177,91
+.byte	106,203,190,57,74,76,88,207
+.byte	208,239,170,251,67,77,51,133
+.byte	69,249,2,127,80,60,159,168
+.byte	81,163,64,143,146,157,56,245
+.byte	188,182,218,33,16,255,243,210
+.byte	205,12,19,236,95,151,68,23
+.byte	196,167,126,61,100,93,25,115
+.byte	96,129,79,220,34,42,144,136
+.byte	70,238,184,20,222,94,11,219
+.byte	224,50,58,10,73,6,36,92
+.byte	194,211,172,98,145,149,228,121
+.byte	231,200,55,109,141,213,78,169
+.byte	108,86,244,234,101,122,174,8
+.byte	186,120,37,46,28,166,180,198
+.byte	232,221,116,31,75,189,139,138
+.byte	112,62,181,102,72,3,246,14
+.byte	97,53,87,185,134,193,29,158
+.byte	225,248,152,17,105,217,142,148
+.byte	155,30,135,233,206,85,40,223
+.byte	140,161,137,13,191,230,66,104
+.byte	65,153,45,15,176,84,187,22
+.byte	99,124,119,123,242,107,111,197
+.byte	48,1,103,43,254,215,171,118
+.byte	202,130,201,125,250,89,71,240
+.byte	173,212,162,175,156,164,114,192
+.byte	183,253,147,38,54,63,247,204
+.byte	52,165,229,241,113,216,49,21
+.byte	4,199,35,195,24,150,5,154
+.byte	7,18,128,226,235,39,178,117
+.byte	9,131,44,26,27,110,90,160
+.byte	82,59,214,179,41,227,47,132
+.byte	83,209,0,237,32,252,177,91
+.byte	106,203,190,57,74,76,88,207
+.byte	208,239,170,251,67,77,51,133
+.byte	69,249,2,127,80,60,159,168
+.byte	81,163,64,143,146,157,56,245
+.byte	188,182,218,33,16,255,243,210
+.byte	205,12,19,236,95,151,68,23
+.byte	196,167,126,61,100,93,25,115
+.byte	96,129,79,220,34,42,144,136
+.byte	70,238,184,20,222,94,11,219
+.byte	224,50,58,10,73,6,36,92
+.byte	194,211,172,98,145,149,228,121
+.byte	231,200,55,109,141,213,78,169
+.byte	108,86,244,234,101,122,174,8
+.byte	186,120,37,46,28,166,180,198
+.byte	232,221,116,31,75,189,139,138
+.byte	112,62,181,102,72,3,246,14
+.byte	97,53,87,185,134,193,29,158
+.byte	225,248,152,17,105,217,142,148
+.byte	155,30,135,233,206,85,40,223
+.byte	140,161,137,13,191,230,66,104
+.byte	65,153,45,15,176,84,187,22
+.byte	99,124,119,123,242,107,111,197
+.byte	48,1,103,43,254,215,171,118
+.byte	202,130,201,125,250,89,71,240
+.byte	173,212,162,175,156,164,114,192
+.byte	183,253,147,38,54,63,247,204
+.byte	52,165,229,241,113,216,49,21
+.byte	4,199,35,195,24,150,5,154
+.byte	7,18,128,226,235,39,178,117
+.byte	9,131,44,26,27,110,90,160
+.byte	82,59,214,179,41,227,47,132
+.byte	83,209,0,237,32,252,177,91
+.byte	106,203,190,57,74,76,88,207
+.byte	208,239,170,251,67,77,51,133
+.byte	69,249,2,127,80,60,159,168
+.byte	81,163,64,143,146,157,56,245
+.byte	188,182,218,33,16,255,243,210
+.byte	205,12,19,236,95,151,68,23
+.byte	196,167,126,61,100,93,25,115
+.byte	96,129,79,220,34,42,144,136
+.byte	70,238,184,20,222,94,11,219
+.byte	224,50,58,10,73,6,36,92
+.byte	194,211,172,98,145,149,228,121
+.byte	231,200,55,109,141,213,78,169
+.byte	108,86,244,234,101,122,174,8
+.byte	186,120,37,46,28,166,180,198
+.byte	232,221,116,31,75,189,139,138
+.byte	112,62,181,102,72,3,246,14
+.byte	97,53,87,185,134,193,29,158
+.byte	225,248,152,17,105,217,142,148
+.byte	155,30,135,233,206,85,40,223
+.byte	140,161,137,13,191,230,66,104
+.byte	65,153,45,15,176,84,187,22
+.long	1,2,4,8
+.long	16,32,64,128
+.long	27,54,0,0
+.long	0,0,0,0
+.size	_x86_AES_encrypt,.-_x86_AES_encrypt
+.globl	AES_encrypt
+.type	AES_encrypt,@function
+.align	16
+AES_encrypt:
+.L_AES_encrypt_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%esp,%eax
+	subl	$36,%esp
+	andl	$-64,%esp
+	leal	-127(%edi),%ebx
+	subl	%esp,%ebx
+	negl	%ebx
+	andl	$960,%ebx
+	subl	%ebx,%esp
+	addl	$4,%esp
+	movl	%eax,28(%esp)
+	call	.L004pic_point
+.L004pic_point:
+	popl	%ebp
+	leal	OPENSSL_ia32cap_P,%eax
+	leal	.LAES_Te-.L004pic_point(%ebp),%ebp
+	leal	764(%esp),%ebx
+	subl	%ebp,%ebx
+	andl	$768,%ebx
+	leal	2176(%ebp,%ebx,1),%ebp
+	btl	$25,(%eax)
+	jnc	.L005x86
+	movq	(%esi),%mm0
+	movq	8(%esi),%mm4
+	call	_sse_AES_encrypt_compact
+	movl	28(%esp),%esp
+	movl	24(%esp),%esi
+	movq	%mm0,(%esi)
+	movq	%mm4,8(%esi)
+	emms
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.align	16
+.L005x86:
+	movl	%ebp,24(%esp)
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	call	_x86_AES_encrypt_compact
+	movl	28(%esp),%esp
+	movl	24(%esp),%esi
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	AES_encrypt,.-.L_AES_encrypt_begin
+.type	_x86_AES_decrypt_compact,@function
+.align	16
+_x86_AES_decrypt_compact:
+	movl	%edi,20(%esp)
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,24(%esp)
+	movl	-128(%ebp),%edi
+	movl	-96(%ebp),%esi
+	movl	-64(%ebp),%edi
+	movl	-32(%ebp),%esi
+	movl	(%ebp),%edi
+	movl	32(%ebp),%esi
+	movl	64(%ebp),%edi
+	movl	96(%ebp),%esi
+.align	16
+.L006loop:
+	movl	%eax,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%dh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%ebx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,4(%esp)
+	movl	%ebx,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%ah,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,8(%esp)
+	movl	%ecx,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%bh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	andl	$255,%edx
+	movzbl	-128(%ebp,%edx,1),%edx
+	movzbl	%ch,%ecx
+	movzbl	-128(%ebp,%ecx,1),%ecx
+	shll	$8,%ecx
+	xorl	%ecx,%edx
+	movl	%esi,%ecx
+	shrl	$16,%ebx
+	andl	$255,%ebx
+	movzbl	-128(%ebp,%ebx,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%edx
+	shrl	$24,%eax
+	movzbl	-128(%ebp,%eax,1),%eax
+	shll	$24,%eax
+	xorl	%eax,%edx
+	movl	%ecx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ecx,%ecx,1),%eax
+	subl	%edi,%esi
+	andl	$4278124286,%eax
+	andl	$454761243,%esi
+	xorl	%eax,%esi
+	movl	%esi,%eax
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%eax,%eax,1),%ebx
+	subl	%edi,%esi
+	andl	$4278124286,%ebx
+	andl	$454761243,%esi
+	xorl	%ecx,%eax
+	xorl	%ebx,%esi
+	movl	%esi,%ebx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ebx,%ebx,1),%ebp
+	subl	%edi,%esi
+	andl	$4278124286,%ebp
+	andl	$454761243,%esi
+	xorl	%ecx,%ebx
+	roll	$8,%ecx
+	xorl	%esi,%ebp
+	xorl	%eax,%ecx
+	xorl	%ebp,%eax
+	roll	$24,%eax
+	xorl	%ebx,%ecx
+	xorl	%ebp,%ebx
+	roll	$16,%ebx
+	xorl	%ebp,%ecx
+	roll	$8,%ebp
+	xorl	%eax,%ecx
+	xorl	%ebx,%ecx
+	movl	4(%esp),%eax
+	xorl	%ebp,%ecx
+	movl	%ecx,12(%esp)
+	movl	%edx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%edx,%edx,1),%ebx
+	subl	%edi,%esi
+	andl	$4278124286,%ebx
+	andl	$454761243,%esi
+	xorl	%ebx,%esi
+	movl	%esi,%ebx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ebx,%ebx,1),%ecx
+	subl	%edi,%esi
+	andl	$4278124286,%ecx
+	andl	$454761243,%esi
+	xorl	%edx,%ebx
+	xorl	%ecx,%esi
+	movl	%esi,%ecx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ecx,%ecx,1),%ebp
+	subl	%edi,%esi
+	andl	$4278124286,%ebp
+	andl	$454761243,%esi
+	xorl	%edx,%ecx
+	roll	$8,%edx
+	xorl	%esi,%ebp
+	xorl	%ebx,%edx
+	xorl	%ebp,%ebx
+	roll	$24,%ebx
+	xorl	%ecx,%edx
+	xorl	%ebp,%ecx
+	roll	$16,%ecx
+	xorl	%ebp,%edx
+	roll	$8,%ebp
+	xorl	%ebx,%edx
+	xorl	%ecx,%edx
+	movl	8(%esp),%ebx
+	xorl	%ebp,%edx
+	movl	%edx,16(%esp)
+	movl	%eax,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%eax,%eax,1),%ecx
+	subl	%edi,%esi
+	andl	$4278124286,%ecx
+	andl	$454761243,%esi
+	xorl	%ecx,%esi
+	movl	%esi,%ecx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ecx,%ecx,1),%edx
+	subl	%edi,%esi
+	andl	$4278124286,%edx
+	andl	$454761243,%esi
+	xorl	%eax,%ecx
+	xorl	%edx,%esi
+	movl	%esi,%edx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%edx,%edx,1),%ebp
+	subl	%edi,%esi
+	andl	$4278124286,%ebp
+	andl	$454761243,%esi
+	xorl	%eax,%edx
+	roll	$8,%eax
+	xorl	%esi,%ebp
+	xorl	%ecx,%eax
+	xorl	%ebp,%ecx
+	roll	$24,%ecx
+	xorl	%edx,%eax
+	xorl	%ebp,%edx
+	roll	$16,%edx
+	xorl	%ebp,%eax
+	roll	$8,%ebp
+	xorl	%ecx,%eax
+	xorl	%edx,%eax
+	xorl	%ebp,%eax
+	movl	%ebx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ebx,%ebx,1),%ecx
+	subl	%edi,%esi
+	andl	$4278124286,%ecx
+	andl	$454761243,%esi
+	xorl	%ecx,%esi
+	movl	%esi,%ecx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%ecx,%ecx,1),%edx
+	subl	%edi,%esi
+	andl	$4278124286,%edx
+	andl	$454761243,%esi
+	xorl	%ebx,%ecx
+	xorl	%edx,%esi
+	movl	%esi,%edx
+	andl	$2155905152,%esi
+	movl	%esi,%edi
+	shrl	$7,%edi
+	leal	(%edx,%edx,1),%ebp
+	subl	%edi,%esi
+	andl	$4278124286,%ebp
+	andl	$454761243,%esi
+	xorl	%ebx,%edx
+	roll	$8,%ebx
+	xorl	%esi,%ebp
+	xorl	%ecx,%ebx
+	xorl	%ebp,%ecx
+	roll	$24,%ecx
+	xorl	%edx,%ebx
+	xorl	%ebp,%edx
+	roll	$16,%edx
+	xorl	%ebp,%ebx
+	roll	$8,%ebp
+	xorl	%ecx,%ebx
+	xorl	%edx,%ebx
+	movl	12(%esp),%ecx
+	xorl	%ebp,%ebx
+	movl	16(%esp),%edx
+	movl	20(%esp),%edi
+	movl	28(%esp),%ebp
+	addl	$16,%edi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	cmpl	24(%esp),%edi
+	movl	%edi,20(%esp)
+	jb	.L006loop
+	movl	%eax,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%dh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%ebx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,4(%esp)
+	movl	%ebx,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%ah,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,8(%esp)
+	movl	%ecx,%esi
+	andl	$255,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	movzbl	%bh,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	movzbl	-128(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	20(%esp),%edi
+	andl	$255,%edx
+	movzbl	-128(%ebp,%edx,1),%edx
+	movzbl	%ch,%ecx
+	movzbl	-128(%ebp,%ecx,1),%ecx
+	shll	$8,%ecx
+	xorl	%ecx,%edx
+	movl	%esi,%ecx
+	shrl	$16,%ebx
+	andl	$255,%ebx
+	movzbl	-128(%ebp,%ebx,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%edx
+	movl	8(%esp),%ebx
+	shrl	$24,%eax
+	movzbl	-128(%ebp,%eax,1),%eax
+	shll	$24,%eax
+	xorl	%eax,%edx
+	movl	4(%esp),%eax
+	xorl	16(%edi),%eax
+	xorl	20(%edi),%ebx
+	xorl	24(%edi),%ecx
+	xorl	28(%edi),%edx
+	ret
+.size	_x86_AES_decrypt_compact,.-_x86_AES_decrypt_compact
+.type	_sse_AES_decrypt_compact,@function
+.align	16
+_sse_AES_decrypt_compact:
+	pxor	(%edi),%mm0
+	pxor	8(%edi),%mm4
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,24(%esp)
+	movl	$454761243,%eax
+	movl	%eax,8(%esp)
+	movl	%eax,12(%esp)
+	movl	-128(%ebp),%eax
+	movl	-96(%ebp),%ebx
+	movl	-64(%ebp),%ecx
+	movl	-32(%ebp),%edx
+	movl	(%ebp),%eax
+	movl	32(%ebp),%ebx
+	movl	64(%ebp),%ecx
+	movl	96(%ebp),%edx
+.align	16
+.L007loop:
+	pshufw	$12,%mm0,%mm1
+	movd	%mm1,%eax
+	pshufw	$9,%mm4,%mm5
+	movzbl	%al,%esi
+	movzbl	-128(%ebp,%esi,1),%ecx
+	movd	%mm5,%ebx
+	movzbl	%ah,%edx
+	movzbl	-128(%ebp,%edx,1),%edx
+	shll	$8,%edx
+	pshufw	$6,%mm0,%mm2
+	movzbl	%bl,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$16,%esi
+	orl	%esi,%ecx
+	shrl	$16,%eax
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%edx
+	shrl	$16,%ebx
+	pshufw	$3,%mm4,%mm6
+	movzbl	%ah,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%ecx
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$8,%esi
+	orl	%esi,%ecx
+	movd	%ecx,%mm0
+	movzbl	%al,%esi
+	movd	%mm2,%eax
+	movzbl	-128(%ebp,%esi,1),%ecx
+	shll	$16,%ecx
+	movzbl	%bl,%esi
+	movd	%mm6,%ebx
+	movzbl	-128(%ebp,%esi,1),%esi
+	orl	%esi,%ecx
+	movzbl	%al,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	orl	%esi,%edx
+	movzbl	%bl,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$16,%esi
+	orl	%esi,%edx
+	movd	%edx,%mm1
+	movzbl	%ah,%esi
+	movzbl	-128(%ebp,%esi,1),%edx
+	shll	$8,%edx
+	movzbl	%bh,%esi
+	shrl	$16,%eax
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$24,%esi
+	orl	%esi,%edx
+	shrl	$16,%ebx
+	punpckldq	%mm1,%mm0
+	movzbl	%bh,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$8,%esi
+	orl	%esi,%ecx
+	andl	$255,%ebx
+	movzbl	-128(%ebp,%ebx,1),%ebx
+	orl	%ebx,%edx
+	movzbl	%al,%esi
+	movzbl	-128(%ebp,%esi,1),%esi
+	shll	$16,%esi
+	orl	%esi,%edx
+	movd	%edx,%mm4
+	movzbl	%ah,%eax
+	movzbl	-128(%ebp,%eax,1),%eax
+	shll	$24,%eax
+	orl	%eax,%ecx
+	movd	%ecx,%mm5
+	punpckldq	%mm5,%mm4
+	addl	$16,%edi
+	cmpl	24(%esp),%edi
+	ja	.L008out
+	movq	%mm0,%mm3
+	movq	%mm4,%mm7
+	pshufw	$228,%mm0,%mm2
+	pshufw	$228,%mm4,%mm6
+	movq	%mm0,%mm1
+	movq	%mm4,%mm5
+	pshufw	$177,%mm0,%mm0
+	pshufw	$177,%mm4,%mm4
+	pslld	$8,%mm2
+	pslld	$8,%mm6
+	psrld	$8,%mm3
+	psrld	$8,%mm7
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	pslld	$16,%mm2
+	pslld	$16,%mm6
+	psrld	$16,%mm3
+	psrld	$16,%mm7
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	movq	8(%esp),%mm3
+	pxor	%mm2,%mm2
+	pxor	%mm6,%mm6
+	pcmpgtb	%mm1,%mm2
+	pcmpgtb	%mm5,%mm6
+	pand	%mm3,%mm2
+	pand	%mm3,%mm6
+	paddb	%mm1,%mm1
+	paddb	%mm5,%mm5
+	pxor	%mm2,%mm1
+	pxor	%mm6,%mm5
+	movq	%mm1,%mm3
+	movq	%mm5,%mm7
+	movq	%mm1,%mm2
+	movq	%mm5,%mm6
+	pxor	%mm1,%mm0
+	pxor	%mm5,%mm4
+	pslld	$24,%mm3
+	pslld	$24,%mm7
+	psrld	$8,%mm2
+	psrld	$8,%mm6
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	movq	8(%esp),%mm2
+	pxor	%mm3,%mm3
+	pxor	%mm7,%mm7
+	pcmpgtb	%mm1,%mm3
+	pcmpgtb	%mm5,%mm7
+	pand	%mm2,%mm3
+	pand	%mm2,%mm7
+	paddb	%mm1,%mm1
+	paddb	%mm5,%mm5
+	pxor	%mm3,%mm1
+	pxor	%mm7,%mm5
+	pshufw	$177,%mm1,%mm3
+	pshufw	$177,%mm5,%mm7
+	pxor	%mm1,%mm0
+	pxor	%mm5,%mm4
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	pxor	%mm3,%mm3
+	pxor	%mm7,%mm7
+	pcmpgtb	%mm1,%mm3
+	pcmpgtb	%mm5,%mm7
+	pand	%mm2,%mm3
+	pand	%mm2,%mm7
+	paddb	%mm1,%mm1
+	paddb	%mm5,%mm5
+	pxor	%mm3,%mm1
+	pxor	%mm7,%mm5
+	pxor	%mm1,%mm0
+	pxor	%mm5,%mm4
+	movq	%mm1,%mm3
+	movq	%mm5,%mm7
+	pshufw	$177,%mm1,%mm2
+	pshufw	$177,%mm5,%mm6
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	pslld	$8,%mm1
+	pslld	$8,%mm5
+	psrld	$8,%mm3
+	psrld	$8,%mm7
+	movq	(%edi),%mm2
+	movq	8(%edi),%mm6
+	pxor	%mm1,%mm0
+	pxor	%mm5,%mm4
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	movl	-128(%ebp),%eax
+	pslld	$16,%mm1
+	pslld	$16,%mm5
+	movl	-64(%ebp),%ebx
+	psrld	$16,%mm3
+	psrld	$16,%mm7
+	movl	(%ebp),%ecx
+	pxor	%mm1,%mm0
+	pxor	%mm5,%mm4
+	movl	64(%ebp),%edx
+	pxor	%mm3,%mm0
+	pxor	%mm7,%mm4
+	pxor	%mm2,%mm0
+	pxor	%mm6,%mm4
+	jmp	.L007loop
+.align	16
+.L008out:
+	pxor	(%edi),%mm0
+	pxor	8(%edi),%mm4
+	ret
+.size	_sse_AES_decrypt_compact,.-_sse_AES_decrypt_compact
+.type	_x86_AES_decrypt,@function
+.align	16
+_x86_AES_decrypt:
+	movl	%edi,20(%esp)
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,24(%esp)
+.align	16
+.L009loop:
+	movl	%eax,%esi
+	andl	$255,%esi
+	movl	(%ebp,%esi,8),%esi
+	movzbl	%dh,%edi
+	xorl	3(%ebp,%edi,8),%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	xorl	2(%ebp,%edi,8),%esi
+	movl	%ebx,%edi
+	shrl	$24,%edi
+	xorl	1(%ebp,%edi,8),%esi
+	movl	%esi,4(%esp)
+
+	movl	%ebx,%esi
+	andl	$255,%esi
+	movl	(%ebp,%esi,8),%esi
+	movzbl	%ah,%edi
+	xorl	3(%ebp,%edi,8),%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	xorl	2(%ebp,%edi,8),%esi
+	movl	%ecx,%edi
+	shrl	$24,%edi
+	xorl	1(%ebp,%edi,8),%esi
+	movl	%esi,8(%esp)
+
+	movl	%ecx,%esi
+	andl	$255,%esi
+	movl	(%ebp,%esi,8),%esi
+	movzbl	%bh,%edi
+	xorl	3(%ebp,%edi,8),%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	xorl	2(%ebp,%edi,8),%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	xorl	1(%ebp,%edi,8),%esi
+
+	movl	20(%esp),%edi
+	andl	$255,%edx
+	movl	(%ebp,%edx,8),%edx
+	movzbl	%ch,%ecx
+	xorl	3(%ebp,%ecx,8),%edx
+	movl	%esi,%ecx
+	shrl	$16,%ebx
+	andl	$255,%ebx
+	xorl	2(%ebp,%ebx,8),%edx
+	movl	8(%esp),%ebx
+	shrl	$24,%eax
+	xorl	1(%ebp,%eax,8),%edx
+	movl	4(%esp),%eax
+
+	addl	$16,%edi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	cmpl	24(%esp),%edi
+	movl	%edi,20(%esp)
+	jb	.L009loop
+	leal	2176(%ebp),%ebp
+	movl	-128(%ebp),%edi
+	movl	-96(%ebp),%esi
+	movl	-64(%ebp),%edi
+	movl	-32(%ebp),%esi
+	movl	(%ebp),%edi
+	movl	32(%ebp),%esi
+	movl	64(%ebp),%edi
+	movl	96(%ebp),%esi
+	leal	-128(%ebp),%ebp
+	movl	%eax,%esi
+	andl	$255,%esi
+	movzbl	(%ebp,%esi,1),%esi
+	movzbl	%dh,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%ebx,%edi
+	shrl	$24,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,4(%esp)
+	movl	%ebx,%esi
+	andl	$255,%esi
+	movzbl	(%ebp,%esi,1),%esi
+	movzbl	%ah,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%ecx,%edi
+	shrl	$24,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	%esi,8(%esp)
+	movl	%ecx,%esi
+	andl	$255,%esi
+	movzbl	(%ebp,%esi,1),%esi
+	movzbl	%bh,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$8,%edi
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	shrl	$16,%edi
+	andl	$255,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$16,%edi
+	xorl	%edi,%esi
+	movl	%edx,%edi
+	shrl	$24,%edi
+	movzbl	(%ebp,%edi,1),%edi
+	shll	$24,%edi
+	xorl	%edi,%esi
+	movl	20(%esp),%edi
+	andl	$255,%edx
+	movzbl	(%ebp,%edx,1),%edx
+	movzbl	%ch,%ecx
+	movzbl	(%ebp,%ecx,1),%ecx
+	shll	$8,%ecx
+	xorl	%ecx,%edx
+	movl	%esi,%ecx
+	shrl	$16,%ebx
+	andl	$255,%ebx
+	movzbl	(%ebp,%ebx,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%edx
+	movl	8(%esp),%ebx
+	shrl	$24,%eax
+	movzbl	(%ebp,%eax,1),%eax
+	shll	$24,%eax
+	xorl	%eax,%edx
+	movl	4(%esp),%eax
+	leal	-2048(%ebp),%ebp
+	addl	$16,%edi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	ret
+.align	64
+.LAES_Td:
+.long	1353184337,1353184337
+.long	1399144830,1399144830
+.long	3282310938,3282310938
+.long	2522752826,2522752826
+.long	3412831035,3412831035
+.long	4047871263,4047871263
+.long	2874735276,2874735276
+.long	2466505547,2466505547
+.long	1442459680,1442459680
+.long	4134368941,4134368941
+.long	2440481928,2440481928
+.long	625738485,625738485
+.long	4242007375,4242007375
+.long	3620416197,3620416197
+.long	2151953702,2151953702
+.long	2409849525,2409849525
+.long	1230680542,1230680542
+.long	1729870373,1729870373
+.long	2551114309,2551114309
+.long	3787521629,3787521629
+.long	41234371,41234371
+.long	317738113,317738113
+.long	2744600205,2744600205
+.long	3338261355,3338261355
+.long	3881799427,3881799427
+.long	2510066197,2510066197
+.long	3950669247,3950669247
+.long	3663286933,3663286933
+.long	763608788,763608788
+.long	3542185048,3542185048
+.long	694804553,694804553
+.long	1154009486,1154009486
+.long	1787413109,1787413109
+.long	2021232372,2021232372
+.long	1799248025,1799248025
+.long	3715217703,3715217703
+.long	3058688446,3058688446
+.long	397248752,397248752
+.long	1722556617,1722556617
+.long	3023752829,3023752829
+.long	407560035,407560035
+.long	2184256229,2184256229
+.long	1613975959,1613975959
+.long	1165972322,1165972322
+.long	3765920945,3765920945
+.long	2226023355,2226023355
+.long	480281086,480281086
+.long	2485848313,2485848313
+.long	1483229296,1483229296
+.long	436028815,436028815
+.long	2272059028,2272059028
+.long	3086515026,3086515026
+.long	601060267,601060267
+.long	3791801202,3791801202
+.long	1468997603,1468997603
+.long	715871590,715871590
+.long	120122290,120122290
+.long	63092015,63092015
+.long	2591802758,2591802758
+.long	2768779219,2768779219
+.long	4068943920,4068943920
+.long	2997206819,2997206819
+.long	3127509762,3127509762
+.long	1552029421,1552029421
+.long	723308426,723308426
+.long	2461301159,2461301159
+.long	4042393587,4042393587
+.long	2715969870,2715969870
+.long	3455375973,3455375973
+.long	3586000134,3586000134
+.long	526529745,526529745
+.long	2331944644,2331944644
+.long	2639474228,2639474228
+.long	2689987490,2689987490
+.long	853641733,853641733
+.long	1978398372,1978398372
+.long	971801355,971801355
+.long	2867814464,2867814464
+.long	111112542,111112542
+.long	1360031421,1360031421
+.long	4186579262,4186579262
+.long	1023860118,1023860118
+.long	2919579357,2919579357
+.long	1186850381,1186850381
+.long	3045938321,3045938321
+.long	90031217,90031217
+.long	1876166148,1876166148
+.long	4279586912,4279586912
+.long	620468249,620468249
+.long	2548678102,2548678102
+.long	3426959497,3426959497
+.long	2006899047,2006899047
+.long	3175278768,3175278768
+.long	2290845959,2290845959
+.long	945494503,945494503
+.long	3689859193,3689859193
+.long	1191869601,1191869601
+.long	3910091388,3910091388
+.long	3374220536,3374220536
+.long	0,0
+.long	2206629897,2206629897
+.long	1223502642,1223502642
+.long	2893025566,2893025566
+.long	1316117100,1316117100
+.long	4227796733,4227796733
+.long	1446544655,1446544655
+.long	517320253,517320253
+.long	658058550,658058550
+.long	1691946762,1691946762
+.long	564550760,564550760
+.long	3511966619,3511966619
+.long	976107044,976107044
+.long	2976320012,2976320012
+.long	266819475,266819475
+.long	3533106868,3533106868
+.long	2660342555,2660342555
+.long	1338359936,1338359936
+.long	2720062561,2720062561
+.long	1766553434,1766553434
+.long	370807324,370807324
+.long	179999714,179999714
+.long	3844776128,3844776128
+.long	1138762300,1138762300
+.long	488053522,488053522
+.long	185403662,185403662
+.long	2915535858,2915535858
+.long	3114841645,3114841645
+.long	3366526484,3366526484
+.long	2233069911,2233069911
+.long	1275557295,1275557295
+.long	3151862254,3151862254
+.long	4250959779,4250959779
+.long	2670068215,2670068215
+.long	3170202204,3170202204
+.long	3309004356,3309004356
+.long	880737115,880737115
+.long	1982415755,1982415755
+.long	3703972811,3703972811
+.long	1761406390,1761406390
+.long	1676797112,1676797112
+.long	3403428311,3403428311
+.long	277177154,277177154
+.long	1076008723,1076008723
+.long	538035844,538035844
+.long	2099530373,2099530373
+.long	4164795346,4164795346
+.long	288553390,288553390
+.long	1839278535,1839278535
+.long	1261411869,1261411869
+.long	4080055004,4080055004
+.long	3964831245,3964831245
+.long	3504587127,3504587127
+.long	1813426987,1813426987
+.long	2579067049,2579067049
+.long	4199060497,4199060497
+.long	577038663,577038663
+.long	3297574056,3297574056
+.long	440397984,440397984
+.long	3626794326,3626794326
+.long	4019204898,4019204898
+.long	3343796615,3343796615
+.long	3251714265,3251714265
+.long	4272081548,4272081548
+.long	906744984,906744984
+.long	3481400742,3481400742
+.long	685669029,685669029
+.long	646887386,646887386
+.long	2764025151,2764025151
+.long	3835509292,3835509292
+.long	227702864,227702864
+.long	2613862250,2613862250
+.long	1648787028,1648787028
+.long	3256061430,3256061430
+.long	3904428176,3904428176
+.long	1593260334,1593260334
+.long	4121936770,4121936770
+.long	3196083615,3196083615
+.long	2090061929,2090061929
+.long	2838353263,2838353263
+.long	3004310991,3004310991
+.long	999926984,999926984
+.long	2809993232,2809993232
+.long	1852021992,1852021992
+.long	2075868123,2075868123
+.long	158869197,158869197
+.long	4095236462,4095236462
+.long	28809964,28809964
+.long	2828685187,2828685187
+.long	1701746150,1701746150
+.long	2129067946,2129067946
+.long	147831841,147831841
+.long	3873969647,3873969647
+.long	3650873274,3650873274
+.long	3459673930,3459673930
+.long	3557400554,3557400554
+.long	3598495785,3598495785
+.long	2947720241,2947720241
+.long	824393514,824393514
+.long	815048134,815048134
+.long	3227951669,3227951669
+.long	935087732,935087732
+.long	2798289660,2798289660
+.long	2966458592,2966458592
+.long	366520115,366520115
+.long	1251476721,1251476721
+.long	4158319681,4158319681
+.long	240176511,240176511
+.long	804688151,804688151
+.long	2379631990,2379631990
+.long	1303441219,1303441219
+.long	1414376140,1414376140
+.long	3741619940,3741619940
+.long	3820343710,3820343710
+.long	461924940,461924940
+.long	3089050817,3089050817
+.long	2136040774,2136040774
+.long	82468509,82468509
+.long	1563790337,1563790337
+.long	1937016826,1937016826
+.long	776014843,776014843
+.long	1511876531,1511876531
+.long	1389550482,1389550482
+.long	861278441,861278441
+.long	323475053,323475053
+.long	2355222426,2355222426
+.long	2047648055,2047648055
+.long	2383738969,2383738969
+.long	2302415851,2302415851
+.long	3995576782,3995576782
+.long	902390199,902390199
+.long	3991215329,3991215329
+.long	1018251130,1018251130
+.long	1507840668,1507840668
+.long	1064563285,1064563285
+.long	2043548696,2043548696
+.long	3208103795,3208103795
+.long	3939366739,3939366739
+.long	1537932639,1537932639
+.long	342834655,342834655
+.long	2262516856,2262516856
+.long	2180231114,2180231114
+.long	1053059257,1053059257
+.long	741614648,741614648
+.long	1598071746,1598071746
+.long	1925389590,1925389590
+.long	203809468,203809468
+.long	2336832552,2336832552
+.long	1100287487,1100287487
+.long	1895934009,1895934009
+.long	3736275976,3736275976
+.long	2632234200,2632234200
+.long	2428589668,2428589668
+.long	1636092795,1636092795
+.long	1890988757,1890988757
+.long	1952214088,1952214088
+.long	1113045200,1113045200
+.byte	82,9,106,213,48,54,165,56
+.byte	191,64,163,158,129,243,215,251
+.byte	124,227,57,130,155,47,255,135
+.byte	52,142,67,68,196,222,233,203
+.byte	84,123,148,50,166,194,35,61
+.byte	238,76,149,11,66,250,195,78
+.byte	8,46,161,102,40,217,36,178
+.byte	118,91,162,73,109,139,209,37
+.byte	114,248,246,100,134,104,152,22
+.byte	212,164,92,204,93,101,182,146
+.byte	108,112,72,80,253,237,185,218
+.byte	94,21,70,87,167,141,157,132
+.byte	144,216,171,0,140,188,211,10
+.byte	247,228,88,5,184,179,69,6
+.byte	208,44,30,143,202,63,15,2
+.byte	193,175,189,3,1,19,138,107
+.byte	58,145,17,65,79,103,220,234
+.byte	151,242,207,206,240,180,230,115
+.byte	150,172,116,34,231,173,53,133
+.byte	226,249,55,232,28,117,223,110
+.byte	71,241,26,113,29,41,197,137
+.byte	111,183,98,14,170,24,190,27
+.byte	252,86,62,75,198,210,121,32
+.byte	154,219,192,254,120,205,90,244
+.byte	31,221,168,51,136,7,199,49
+.byte	177,18,16,89,39,128,236,95
+.byte	96,81,127,169,25,181,74,13
+.byte	45,229,122,159,147,201,156,239
+.byte	160,224,59,77,174,42,245,176
+.byte	200,235,187,60,131,83,153,97
+.byte	23,43,4,126,186,119,214,38
+.byte	225,105,20,99,85,33,12,125
+.byte	82,9,106,213,48,54,165,56
+.byte	191,64,163,158,129,243,215,251
+.byte	124,227,57,130,155,47,255,135
+.byte	52,142,67,68,196,222,233,203
+.byte	84,123,148,50,166,194,35,61
+.byte	238,76,149,11,66,250,195,78
+.byte	8,46,161,102,40,217,36,178
+.byte	118,91,162,73,109,139,209,37
+.byte	114,248,246,100,134,104,152,22
+.byte	212,164,92,204,93,101,182,146
+.byte	108,112,72,80,253,237,185,218
+.byte	94,21,70,87,167,141,157,132
+.byte	144,216,171,0,140,188,211,10
+.byte	247,228,88,5,184,179,69,6
+.byte	208,44,30,143,202,63,15,2
+.byte	193,175,189,3,1,19,138,107
+.byte	58,145,17,65,79,103,220,234
+.byte	151,242,207,206,240,180,230,115
+.byte	150,172,116,34,231,173,53,133
+.byte	226,249,55,232,28,117,223,110
+.byte	71,241,26,113,29,41,197,137
+.byte	111,183,98,14,170,24,190,27
+.byte	252,86,62,75,198,210,121,32
+.byte	154,219,192,254,120,205,90,244
+.byte	31,221,168,51,136,7,199,49
+.byte	177,18,16,89,39,128,236,95
+.byte	96,81,127,169,25,181,74,13
+.byte	45,229,122,159,147,201,156,239
+.byte	160,224,59,77,174,42,245,176
+.byte	200,235,187,60,131,83,153,97
+.byte	23,43,4,126,186,119,214,38
+.byte	225,105,20,99,85,33,12,125
+.byte	82,9,106,213,48,54,165,56
+.byte	191,64,163,158,129,243,215,251
+.byte	124,227,57,130,155,47,255,135
+.byte	52,142,67,68,196,222,233,203
+.byte	84,123,148,50,166,194,35,61
+.byte	238,76,149,11,66,250,195,78
+.byte	8,46,161,102,40,217,36,178
+.byte	118,91,162,73,109,139,209,37
+.byte	114,248,246,100,134,104,152,22
+.byte	212,164,92,204,93,101,182,146
+.byte	108,112,72,80,253,237,185,218
+.byte	94,21,70,87,167,141,157,132
+.byte	144,216,171,0,140,188,211,10
+.byte	247,228,88,5,184,179,69,6
+.byte	208,44,30,143,202,63,15,2
+.byte	193,175,189,3,1,19,138,107
+.byte	58,145,17,65,79,103,220,234
+.byte	151,242,207,206,240,180,230,115
+.byte	150,172,116,34,231,173,53,133
+.byte	226,249,55,232,28,117,223,110
+.byte	71,241,26,113,29,41,197,137
+.byte	111,183,98,14,170,24,190,27
+.byte	252,86,62,75,198,210,121,32
+.byte	154,219,192,254,120,205,90,244
+.byte	31,221,168,51,136,7,199,49
+.byte	177,18,16,89,39,128,236,95
+.byte	96,81,127,169,25,181,74,13
+.byte	45,229,122,159,147,201,156,239
+.byte	160,224,59,77,174,42,245,176
+.byte	200,235,187,60,131,83,153,97
+.byte	23,43,4,126,186,119,214,38
+.byte	225,105,20,99,85,33,12,125
+.byte	82,9,106,213,48,54,165,56
+.byte	191,64,163,158,129,243,215,251
+.byte	124,227,57,130,155,47,255,135
+.byte	52,142,67,68,196,222,233,203
+.byte	84,123,148,50,166,194,35,61
+.byte	238,76,149,11,66,250,195,78
+.byte	8,46,161,102,40,217,36,178
+.byte	118,91,162,73,109,139,209,37
+.byte	114,248,246,100,134,104,152,22
+.byte	212,164,92,204,93,101,182,146
+.byte	108,112,72,80,253,237,185,218
+.byte	94,21,70,87,167,141,157,132
+.byte	144,216,171,0,140,188,211,10
+.byte	247,228,88,5,184,179,69,6
+.byte	208,44,30,143,202,63,15,2
+.byte	193,175,189,3,1,19,138,107
+.byte	58,145,17,65,79,103,220,234
+.byte	151,242,207,206,240,180,230,115
+.byte	150,172,116,34,231,173,53,133
+.byte	226,249,55,232,28,117,223,110
+.byte	71,241,26,113,29,41,197,137
+.byte	111,183,98,14,170,24,190,27
+.byte	252,86,62,75,198,210,121,32
+.byte	154,219,192,254,120,205,90,244
+.byte	31,221,168,51,136,7,199,49
+.byte	177,18,16,89,39,128,236,95
+.byte	96,81,127,169,25,181,74,13
+.byte	45,229,122,159,147,201,156,239
+.byte	160,224,59,77,174,42,245,176
+.byte	200,235,187,60,131,83,153,97
+.byte	23,43,4,126,186,119,214,38
+.byte	225,105,20,99,85,33,12,125
+.size	_x86_AES_decrypt,.-_x86_AES_decrypt
+.globl	AES_decrypt
+.type	AES_decrypt,@function
+.align	16
+AES_decrypt:
+.L_AES_decrypt_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%esp,%eax
+	subl	$36,%esp
+	andl	$-64,%esp
+	leal	-127(%edi),%ebx
+	subl	%esp,%ebx
+	negl	%ebx
+	andl	$960,%ebx
+	subl	%ebx,%esp
+	addl	$4,%esp
+	movl	%eax,28(%esp)
+	call	.L010pic_point
+.L010pic_point:
+	popl	%ebp
+	leal	OPENSSL_ia32cap_P,%eax
+	leal	.LAES_Td-.L010pic_point(%ebp),%ebp
+	leal	764(%esp),%ebx
+	subl	%ebp,%ebx
+	andl	$768,%ebx
+	leal	2176(%ebp,%ebx,1),%ebp
+	btl	$25,(%eax)
+	jnc	.L011x86
+	movq	(%esi),%mm0
+	movq	8(%esi),%mm4
+	call	_sse_AES_decrypt_compact
+	movl	28(%esp),%esp
+	movl	24(%esp),%esi
+	movq	%mm0,(%esi)
+	movq	%mm4,8(%esi)
+	emms
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.align	16
+.L011x86:
+	movl	%ebp,24(%esp)
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	call	_x86_AES_decrypt_compact
+	movl	28(%esp),%esp
+	movl	24(%esp),%esi
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	AES_decrypt,.-.L_AES_decrypt_begin
+.globl	AES_cbc_encrypt
+.type	AES_cbc_encrypt,@function
+.align	16
+AES_cbc_encrypt:
+.L_AES_cbc_encrypt_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	28(%esp),%ecx
+	cmpl	$0,%ecx
+	je	.L012drop_out
+	call	.L013pic_point
+.L013pic_point:
+	popl	%ebp
+	leal	OPENSSL_ia32cap_P,%eax
+	cmpl	$0,40(%esp)
+	leal	.LAES_Te-.L013pic_point(%ebp),%ebp
+	jne	.L014picked_te
+	leal	.LAES_Td-.LAES_Te(%ebp),%ebp
+.L014picked_te:
+	pushfl
+	cld
+	cmpl	$512,%ecx
+	jb	.L015slow_way
+	testl	$15,%ecx
+	jnz	.L015slow_way
+	btl	$28,(%eax)
+	jc	.L015slow_way
+	leal	-324(%esp),%esi
+	andl	$-64,%esi
+	movl	%ebp,%eax
+	leal	2304(%ebp),%ebx
+	movl	%esi,%edx
+	andl	$4095,%eax
+	andl	$4095,%ebx
+	andl	$4095,%edx
+	cmpl	%ebx,%edx
+	jb	.L016tbl_break_out
+	subl	%ebx,%edx
+	subl	%edx,%esi
+	jmp	.L017tbl_ok
+.align	4
+.L016tbl_break_out:
+	subl	%eax,%edx
+	andl	$4095,%edx
+	addl	$384,%edx
+	subl	%edx,%esi
+.align	4
+.L017tbl_ok:
+	leal	24(%esp),%edx
+	xchgl	%esi,%esp
+	addl	$4,%esp
+	movl	%ebp,24(%esp)
+	movl	%esi,28(%esp)
+	movl	(%edx),%eax
+	movl	4(%edx),%ebx
+	movl	12(%edx),%edi
+	movl	16(%edx),%esi
+	movl	20(%edx),%edx
+	movl	%eax,32(%esp)
+	movl	%ebx,36(%esp)
+	movl	%ecx,40(%esp)
+	movl	%edi,44(%esp)
+	movl	%esi,48(%esp)
+	movl	$0,316(%esp)
+	movl	%edi,%ebx
+	movl	$61,%ecx
+	subl	%ebp,%ebx
+	movl	%edi,%esi
+	andl	$4095,%ebx
+	leal	76(%esp),%edi
+	cmpl	$2304,%ebx
+	jb	.L018do_copy
+	cmpl	$3852,%ebx
+	jb	.L019skip_copy
+.align	4
+.L018do_copy:
+	movl	%edi,44(%esp)
+.long	2784229001
+.L019skip_copy:
+	movl	$16,%edi
+.align	4
+.L020prefetch_tbl:
+	movl	(%ebp),%eax
+	movl	32(%ebp),%ebx
+	movl	64(%ebp),%ecx
+	movl	96(%ebp),%esi
+	leal	128(%ebp),%ebp
+	subl	$1,%edi
+	jnz	.L020prefetch_tbl
+	subl	$2048,%ebp
+	movl	32(%esp),%esi
+	movl	48(%esp),%edi
+	cmpl	$0,%edx
+	je	.L021fast_decrypt
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+.align	16
+.L022fast_enc_loop:
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	xorl	(%esi),%eax
+	xorl	4(%esi),%ebx
+	xorl	8(%esi),%ecx
+	xorl	12(%esi),%edx
+	movl	44(%esp),%edi
+	call	_x86_AES_encrypt
+	movl	32(%esp),%esi
+	movl	36(%esp),%edi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	leal	16(%esi),%esi
+	movl	40(%esp),%ecx
+	movl	%esi,32(%esp)
+	leal	16(%edi),%edx
+	movl	%edx,36(%esp)
+	subl	$16,%ecx
+	movl	%ecx,40(%esp)
+	jnz	.L022fast_enc_loop
+	movl	48(%esp),%esi
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	cmpl	$0,316(%esp)
+	movl	44(%esp),%edi
+	je	.L023skip_ezero
+	movl	$60,%ecx
+	xorl	%eax,%eax
+.align	4
+.long	2884892297
+.L023skip_ezero:
+	movl	28(%esp),%esp
+	popfl
+.L012drop_out:
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L021fast_decrypt:
+	cmpl	36(%esp),%esi
+	je	.L024fast_dec_in_place
+	movl	%edi,52(%esp)
+.align	4
+.align	16
+.L025fast_dec_loop:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	44(%esp),%edi
+	call	_x86_AES_decrypt
+	movl	52(%esp),%edi
+	movl	40(%esp),%esi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	36(%esp),%edi
+	movl	32(%esp),%esi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	40(%esp),%ecx
+	movl	%esi,52(%esp)
+	leal	16(%esi),%esi
+	movl	%esi,32(%esp)
+	leal	16(%edi),%edi
+	movl	%edi,36(%esp)
+	subl	$16,%ecx
+	movl	%ecx,40(%esp)
+	jnz	.L025fast_dec_loop
+	movl	52(%esp),%edi
+	movl	48(%esp),%esi
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	jmp	.L026fast_dec_out
+.align	16
+.L024fast_dec_in_place:
+.L027fast_dec_in_place_loop:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	leal	60(%esp),%edi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	44(%esp),%edi
+	call	_x86_AES_decrypt
+	movl	48(%esp),%edi
+	movl	36(%esp),%esi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	leal	16(%esi),%esi
+	movl	%esi,36(%esp)
+	leal	60(%esp),%esi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	32(%esp),%esi
+	movl	40(%esp),%ecx
+	leal	16(%esi),%esi
+	movl	%esi,32(%esp)
+	subl	$16,%ecx
+	movl	%ecx,40(%esp)
+	jnz	.L027fast_dec_in_place_loop
+.align	4
+.L026fast_dec_out:
+	cmpl	$0,316(%esp)
+	movl	44(%esp),%edi
+	je	.L028skip_dzero
+	movl	$60,%ecx
+	xorl	%eax,%eax
+.align	4
+.long	2884892297
+.L028skip_dzero:
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L015slow_way:
+	movl	(%eax),%eax
+	movl	36(%esp),%edi
+	leal	-80(%esp),%esi
+	andl	$-64,%esi
+	leal	-143(%edi),%ebx
+	subl	%esi,%ebx
+	negl	%ebx
+	andl	$960,%ebx
+	subl	%ebx,%esi
+	leal	768(%esi),%ebx
+	subl	%ebp,%ebx
+	andl	$768,%ebx
+	leal	2176(%ebp,%ebx,1),%ebp
+	leal	24(%esp),%edx
+	xchgl	%esi,%esp
+	addl	$4,%esp
+	movl	%ebp,24(%esp)
+	movl	%esi,28(%esp)
+	movl	%eax,52(%esp)
+	movl	(%edx),%eax
+	movl	4(%edx),%ebx
+	movl	16(%edx),%esi
+	movl	20(%edx),%edx
+	movl	%eax,32(%esp)
+	movl	%ebx,36(%esp)
+	movl	%ecx,40(%esp)
+	movl	%edi,44(%esp)
+	movl	%esi,48(%esp)
+	movl	%esi,%edi
+	movl	%eax,%esi
+	cmpl	$0,%edx
+	je	.L029slow_decrypt
+	cmpl	$16,%ecx
+	movl	%ebx,%edx
+	jb	.L030slow_enc_tail
+	btl	$25,52(%esp)
+	jnc	.L031slow_enc_x86
+	movq	(%edi),%mm0
+	movq	8(%edi),%mm4
+.align	16
+.L032slow_enc_loop_sse:
+	pxor	(%esi),%mm0
+	pxor	8(%esi),%mm4
+	movl	44(%esp),%edi
+	call	_sse_AES_encrypt_compact
+	movl	32(%esp),%esi
+	movl	36(%esp),%edi
+	movl	40(%esp),%ecx
+	movq	%mm0,(%edi)
+	movq	%mm4,8(%edi)
+	leal	16(%esi),%esi
+	movl	%esi,32(%esp)
+	leal	16(%edi),%edx
+	movl	%edx,36(%esp)
+	subl	$16,%ecx
+	cmpl	$16,%ecx
+	movl	%ecx,40(%esp)
+	jae	.L032slow_enc_loop_sse
+	testl	$15,%ecx
+	jnz	.L030slow_enc_tail
+	movl	48(%esp),%esi
+	movq	%mm0,(%esi)
+	movq	%mm4,8(%esi)
+	emms
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L031slow_enc_x86:
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+.align	4
+.L033slow_enc_loop_x86:
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	xorl	(%esi),%eax
+	xorl	4(%esi),%ebx
+	xorl	8(%esi),%ecx
+	xorl	12(%esi),%edx
+	movl	44(%esp),%edi
+	call	_x86_AES_encrypt_compact
+	movl	32(%esp),%esi
+	movl	36(%esp),%edi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	40(%esp),%ecx
+	leal	16(%esi),%esi
+	movl	%esi,32(%esp)
+	leal	16(%edi),%edx
+	movl	%edx,36(%esp)
+	subl	$16,%ecx
+	cmpl	$16,%ecx
+	movl	%ecx,40(%esp)
+	jae	.L033slow_enc_loop_x86
+	testl	$15,%ecx
+	jnz	.L030slow_enc_tail
+	movl	48(%esp),%esi
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L030slow_enc_tail:
+	emms
+	movl	%edx,%edi
+	movl	$16,%ebx
+	subl	%ecx,%ebx
+	cmpl	%esi,%edi
+	je	.L034enc_in_place
+.align	4
+.long	2767451785
+	jmp	.L035enc_skip_in_place
+.L034enc_in_place:
+	leal	(%edi,%ecx,1),%edi
+.L035enc_skip_in_place:
+	movl	%ebx,%ecx
+	xorl	%eax,%eax
+.align	4
+.long	2868115081
+	movl	48(%esp),%edi
+	movl	%edx,%esi
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+	movl	$16,40(%esp)
+	jmp	.L033slow_enc_loop_x86
+.align	16
+.L029slow_decrypt:
+	btl	$25,52(%esp)
+	jnc	.L036slow_dec_loop_x86
+.align	4
+.L037slow_dec_loop_sse:
+	movq	(%esi),%mm0
+	movq	8(%esi),%mm4
+	movl	44(%esp),%edi
+	call	_sse_AES_decrypt_compact
+	movl	32(%esp),%esi
+	leal	60(%esp),%eax
+	movl	36(%esp),%ebx
+	movl	40(%esp),%ecx
+	movl	48(%esp),%edi
+	movq	(%esi),%mm1
+	movq	8(%esi),%mm5
+	pxor	(%edi),%mm0
+	pxor	8(%edi),%mm4
+	movq	%mm1,(%edi)
+	movq	%mm5,8(%edi)
+	subl	$16,%ecx
+	jc	.L038slow_dec_partial_sse
+	movq	%mm0,(%ebx)
+	movq	%mm4,8(%ebx)
+	leal	16(%ebx),%ebx
+	movl	%ebx,36(%esp)
+	leal	16(%esi),%esi
+	movl	%esi,32(%esp)
+	movl	%ecx,40(%esp)
+	jnz	.L037slow_dec_loop_sse
+	emms
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L038slow_dec_partial_sse:
+	movq	%mm0,(%eax)
+	movq	%mm4,8(%eax)
+	emms
+	addl	$16,%ecx
+	movl	%ebx,%edi
+	movl	%eax,%esi
+.align	4
+.long	2767451785
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L036slow_dec_loop_x86:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	leal	60(%esp),%edi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	44(%esp),%edi
+	call	_x86_AES_decrypt_compact
+	movl	48(%esp),%edi
+	movl	40(%esp),%esi
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	subl	$16,%esi
+	jc	.L039slow_dec_partial_x86
+	movl	%esi,40(%esp)
+	movl	36(%esp),%esi
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	leal	16(%esi),%esi
+	movl	%esi,36(%esp)
+	leal	60(%esp),%esi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	32(%esp),%esi
+	leal	16(%esi),%esi
+	movl	%esi,32(%esp)
+	jnz	.L036slow_dec_loop_x86
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	16
+.L039slow_dec_partial_x86:
+	leal	60(%esp),%esi
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	movl	32(%esp),%esi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	40(%esp),%ecx
+	movl	36(%esp),%edi
+	leal	60(%esp),%esi
+.align	4
+.long	2767451785
+	movl	28(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	AES_cbc_encrypt,.-.L_AES_cbc_encrypt_begin
+.type	_x86_AES_set_encrypt_key,@function
+.align	16
+_x86_AES_set_encrypt_key:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	24(%esp),%esi
+	movl	32(%esp),%edi
+	testl	$-1,%esi
+	jz	.L040badpointer
+	testl	$-1,%edi
+	jz	.L040badpointer
+	call	.L041pic_point
+.L041pic_point:
+	popl	%ebp
+	leal	.LAES_Te-.L041pic_point(%ebp),%ebp
+	leal	2176(%ebp),%ebp
+	movl	-128(%ebp),%eax
+	movl	-96(%ebp),%ebx
+	movl	-64(%ebp),%ecx
+	movl	-32(%ebp),%edx
+	movl	(%ebp),%eax
+	movl	32(%ebp),%ebx
+	movl	64(%ebp),%ecx
+	movl	96(%ebp),%edx
+	movl	28(%esp),%ecx
+	cmpl	$128,%ecx
+	je	.L04210rounds
+	cmpl	$192,%ecx
+	je	.L04312rounds
+	cmpl	$256,%ecx
+	je	.L04414rounds
+	movl	$-2,%eax
+	jmp	.L045exit
+.L04210rounds:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	xorl	%ecx,%ecx
+	jmp	.L04610shortcut
+.align	4
+.L04710loop:
+	movl	(%edi),%eax
+	movl	12(%edi),%edx
+.L04610shortcut:
+	movzbl	%dl,%esi
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shrl	$16,%edx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$8,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+	xorl	896(%ebp,%ecx,4),%eax
+	movl	%eax,16(%edi)
+	xorl	4(%edi),%eax
+	movl	%eax,20(%edi)
+	xorl	8(%edi),%eax
+	movl	%eax,24(%edi)
+	xorl	12(%edi),%eax
+	movl	%eax,28(%edi)
+	incl	%ecx
+	addl	$16,%edi
+	cmpl	$10,%ecx
+	jl	.L04710loop
+	movl	$10,80(%edi)
+	xorl	%eax,%eax
+	jmp	.L045exit
+.L04312rounds:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	16(%esi),%ecx
+	movl	20(%esi),%edx
+	movl	%ecx,16(%edi)
+	movl	%edx,20(%edi)
+	xorl	%ecx,%ecx
+	jmp	.L04812shortcut
+.align	4
+.L04912loop:
+	movl	(%edi),%eax
+	movl	20(%edi),%edx
+.L04812shortcut:
+	movzbl	%dl,%esi
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shrl	$16,%edx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$8,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+	xorl	896(%ebp,%ecx,4),%eax
+	movl	%eax,24(%edi)
+	xorl	4(%edi),%eax
+	movl	%eax,28(%edi)
+	xorl	8(%edi),%eax
+	movl	%eax,32(%edi)
+	xorl	12(%edi),%eax
+	movl	%eax,36(%edi)
+	cmpl	$7,%ecx
+	je	.L05012break
+	incl	%ecx
+	xorl	16(%edi),%eax
+	movl	%eax,40(%edi)
+	xorl	20(%edi),%eax
+	movl	%eax,44(%edi)
+	addl	$24,%edi
+	jmp	.L04912loop
+.L05012break:
+	movl	$12,72(%edi)
+	xorl	%eax,%eax
+	jmp	.L045exit
+.L04414rounds:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	16(%esi),%eax
+	movl	20(%esi),%ebx
+	movl	24(%esi),%ecx
+	movl	28(%esi),%edx
+	movl	%eax,16(%edi)
+	movl	%ebx,20(%edi)
+	movl	%ecx,24(%edi)
+	movl	%edx,28(%edi)
+	xorl	%ecx,%ecx
+	jmp	.L05114shortcut
+.align	4
+.L05214loop:
+	movl	28(%edi),%edx
+.L05114shortcut:
+	movl	(%edi),%eax
+	movzbl	%dl,%esi
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shrl	$16,%edx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$8,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+	xorl	896(%ebp,%ecx,4),%eax
+	movl	%eax,32(%edi)
+	xorl	4(%edi),%eax
+	movl	%eax,36(%edi)
+	xorl	8(%edi),%eax
+	movl	%eax,40(%edi)
+	xorl	12(%edi),%eax
+	movl	%eax,44(%edi)
+	cmpl	$6,%ecx
+	je	.L05314break
+	incl	%ecx
+	movl	%eax,%edx
+	movl	16(%edi),%eax
+	movzbl	%dl,%esi
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shrl	$16,%edx
+	shll	$8,%ebx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+	movzbl	-128(%ebp,%esi,1),%ebx
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+	movl	%eax,48(%edi)
+	xorl	20(%edi),%eax
+	movl	%eax,52(%edi)
+	xorl	24(%edi),%eax
+	movl	%eax,56(%edi)
+	xorl	28(%edi),%eax
+	movl	%eax,60(%edi)
+	addl	$32,%edi
+	jmp	.L05214loop
+.L05314break:
+	movl	$14,48(%edi)
+	xorl	%eax,%eax
+	jmp	.L045exit
+.L040badpointer:
+	movl	$-1,%eax
+.L045exit:
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	_x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key
+.globl	AES_set_encrypt_key
+.type	AES_set_encrypt_key,@function
+.align	16
+AES_set_encrypt_key:
+.L_AES_set_encrypt_key_begin:
+	call	_x86_AES_set_encrypt_key
+	ret
+.size	AES_set_encrypt_key,.-.L_AES_set_encrypt_key_begin
+.globl	AES_set_decrypt_key
+.type	AES_set_decrypt_key,@function
+.align	16
+AES_set_decrypt_key:
+.L_AES_set_decrypt_key_begin:
+	call	_x86_AES_set_encrypt_key
+	cmpl	$0,%eax
+	je	.L054proceed
+	ret
+.L054proceed:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	28(%esp),%esi
+	movl	240(%esi),%ecx
+	leal	(,%ecx,4),%ecx
+	leal	(%esi,%ecx,4),%edi
+.align	4
+.L055invert:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	(%edi),%ecx
+	movl	4(%edi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,(%esi)
+	movl	%edx,4(%esi)
+	movl	8(%esi),%eax
+	movl	12(%esi),%ebx
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	movl	%eax,8(%edi)
+	movl	%ebx,12(%edi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	addl	$16,%esi
+	subl	$16,%edi
+	cmpl	%edi,%esi
+	jne	.L055invert
+	movl	28(%esp),%edi
+	movl	240(%edi),%esi
+	leal	-2(%esi,%esi,1),%esi
+	leal	(%edi,%esi,8),%esi
+	movl	%esi,28(%esp)
+	movl	16(%edi),%eax
+.align	4
+.L056permute:
+	addl	$16,%edi
+	movl	%eax,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%eax,%eax,1),%ebx
+	subl	%ebp,%esi
+	andl	$4278124286,%ebx
+	andl	$454761243,%esi
+	xorl	%ebx,%esi
+	movl	%esi,%ebx
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ebx,%ebx,1),%ecx
+	subl	%ebp,%esi
+	andl	$4278124286,%ecx
+	andl	$454761243,%esi
+	xorl	%eax,%ebx
+	xorl	%ecx,%esi
+	movl	%esi,%ecx
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ecx,%ecx,1),%edx
+	xorl	%eax,%ecx
+	subl	%ebp,%esi
+	andl	$4278124286,%edx
+	andl	$454761243,%esi
+	roll	$8,%eax
+	xorl	%esi,%edx
+	movl	4(%edi),%ebp
+	xorl	%ebx,%eax
+	xorl	%edx,%ebx
+	xorl	%ecx,%eax
+	roll	$24,%ebx
+	xorl	%edx,%ecx
+	xorl	%edx,%eax
+	roll	$16,%ecx
+	xorl	%ebx,%eax
+	roll	$8,%edx
+	xorl	%ecx,%eax
+	movl	%ebp,%ebx
+	xorl	%edx,%eax
+	movl	%eax,(%edi)
+	movl	%ebx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ebx,%ebx,1),%ecx
+	subl	%ebp,%esi
+	andl	$4278124286,%ecx
+	andl	$454761243,%esi
+	xorl	%ecx,%esi
+	movl	%esi,%ecx
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ecx,%ecx,1),%edx
+	subl	%ebp,%esi
+	andl	$4278124286,%edx
+	andl	$454761243,%esi
+	xorl	%ebx,%ecx
+	xorl	%edx,%esi
+	movl	%esi,%edx
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%edx,%edx,1),%eax
+	xorl	%ebx,%edx
+	subl	%ebp,%esi
+	andl	$4278124286,%eax
+	andl	$454761243,%esi
+	roll	$8,%ebx
+	xorl	%esi,%eax
+	movl	8(%edi),%ebp
+	xorl	%ecx,%ebx
+	xorl	%eax,%ecx
+	xorl	%edx,%ebx
+	roll	$24,%ecx
+	xorl	%eax,%edx
+	xorl	%eax,%ebx
+	roll	$16,%edx
+	xorl	%ecx,%ebx
+	roll	$8,%eax
+	xorl	%edx,%ebx
+	movl	%ebp,%ecx
+	xorl	%eax,%ebx
+	movl	%ebx,4(%edi)
+	movl	%ecx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ecx,%ecx,1),%edx
+	subl	%ebp,%esi
+	andl	$4278124286,%edx
+	andl	$454761243,%esi
+	xorl	%edx,%esi
+	movl	%esi,%edx
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%edx,%edx,1),%eax
+	subl	%ebp,%esi
+	andl	$4278124286,%eax
+	andl	$454761243,%esi
+	xorl	%ecx,%edx
+	xorl	%eax,%esi
+	movl	%esi,%eax
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%eax,%eax,1),%ebx
+	xorl	%ecx,%eax
+	subl	%ebp,%esi
+	andl	$4278124286,%ebx
+	andl	$454761243,%esi
+	roll	$8,%ecx
+	xorl	%esi,%ebx
+	movl	12(%edi),%ebp
+	xorl	%edx,%ecx
+	xorl	%ebx,%edx
+	xorl	%eax,%ecx
+	roll	$24,%edx
+	xorl	%ebx,%eax
+	xorl	%ebx,%ecx
+	roll	$16,%eax
+	xorl	%edx,%ecx
+	roll	$8,%ebx
+	xorl	%eax,%ecx
+	movl	%ebp,%edx
+	xorl	%ebx,%ecx
+	movl	%ecx,8(%edi)
+	movl	%edx,%esi
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%edx,%edx,1),%eax
+	subl	%ebp,%esi
+	andl	$4278124286,%eax
+	andl	$454761243,%esi
+	xorl	%eax,%esi
+	movl	%esi,%eax
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%eax,%eax,1),%ebx
+	subl	%ebp,%esi
+	andl	$4278124286,%ebx
+	andl	$454761243,%esi
+	xorl	%edx,%eax
+	xorl	%ebx,%esi
+	movl	%esi,%ebx
+	andl	$2155905152,%esi
+	movl	%esi,%ebp
+	shrl	$7,%ebp
+	leal	(%ebx,%ebx,1),%ecx
+	xorl	%edx,%ebx
+	subl	%ebp,%esi
+	andl	$4278124286,%ecx
+	andl	$454761243,%esi
+	roll	$8,%edx
+	xorl	%esi,%ecx
+	movl	16(%edi),%ebp
+	xorl	%eax,%edx
+	xorl	%ecx,%eax
+	xorl	%ebx,%edx
+	roll	$24,%eax
+	xorl	%ecx,%ebx
+	xorl	%ecx,%edx
+	roll	$16,%ebx
+	xorl	%eax,%edx
+	roll	$8,%ecx
+	xorl	%ebx,%edx
+	movl	%ebp,%eax
+	xorl	%ecx,%edx
+	movl	%edx,12(%edi)
+	cmpl	28(%esp),%edi
+	jb	.L056permute
+	xorl	%eax,%eax
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	AES_set_decrypt_key,.-.L_AES_set_decrypt_key_begin
+.byte	65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89
+.byte	80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
+.byte	111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
+.comm	OPENSSL_ia32cap_P,4,4
Index: secure/lib/libcrypto/i386/sha256-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/sha256-586.s	(revision 0)
+++ secure/lib/libcrypto/i386/sha256-586.s	(revision 0)
@@ -0,0 +1,261 @@
+.file	"sha512-586.s"
+.text
+.globl	sha256_block_data_order
+.type	sha256_block_data_order,@function
+.align	16
+sha256_block_data_order:
+.L_sha256_block_data_order_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%esi
+	movl	24(%esp),%edi
+	movl	28(%esp),%eax
+	movl	%esp,%ebx
+	call	.L000pic_point
+.L000pic_point:
+	popl	%ebp
+	leal	.L001K256-.L000pic_point(%ebp),%ebp
+	subl	$16,%esp
+	andl	$-64,%esp
+	shll	$6,%eax
+	addl	%edi,%eax
+	movl	%esi,(%esp)
+	movl	%edi,4(%esp)
+	movl	%eax,8(%esp)
+	movl	%ebx,12(%esp)
+.align	16
+.L002loop:
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	16(%edi),%eax
+	movl	20(%edi),%ebx
+	movl	24(%edi),%ecx
+	movl	28(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	32(%edi),%eax
+	movl	36(%edi),%ebx
+	movl	40(%edi),%ecx
+	movl	44(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	movl	48(%edi),%eax
+	movl	52(%edi),%ebx
+	movl	56(%edi),%ecx
+	movl	60(%edi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	pushl	%eax
+	pushl	%ebx
+	pushl	%ecx
+	pushl	%edx
+	addl	$64,%edi
+	subl	$32,%esp
+	movl	%edi,100(%esp)
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edi
+	movl	%ebx,4(%esp)
+	movl	%ecx,8(%esp)
+	movl	%edi,12(%esp)
+	movl	16(%esi),%edx
+	movl	20(%esi),%ebx
+	movl	24(%esi),%ecx
+	movl	28(%esi),%edi
+	movl	%ebx,20(%esp)
+	movl	%ecx,24(%esp)
+	movl	%edi,28(%esp)
+.align	16
+.L00300_15:
+	movl	92(%esp),%ebx
+	movl	%edx,%ecx
+	rorl	$6,%ecx
+	movl	%edx,%edi
+	rorl	$11,%edi
+	movl	20(%esp),%esi
+	xorl	%edi,%ecx
+	rorl	$14,%edi
+	xorl	%edi,%ecx
+	movl	24(%esp),%edi
+	addl	%ecx,%ebx
+	movl	%edx,16(%esp)
+	xorl	%edi,%esi
+	movl	%eax,%ecx
+	andl	%edx,%esi
+	movl	12(%esp),%edx
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	addl	%esi,%ebx
+	rorl	$2,%ecx
+	addl	28(%esp),%ebx
+	rorl	$13,%edi
+	movl	4(%esp),%esi
+	xorl	%edi,%ecx
+	rorl	$9,%edi
+	addl	%ebx,%edx
+	xorl	%edi,%ecx
+	movl	8(%esp),%edi
+	addl	%ecx,%ebx
+	movl	%eax,(%esp)
+	movl	%eax,%ecx
+	subl	$4,%esp
+	orl	%esi,%eax
+	andl	%esi,%ecx
+	andl	%edi,%eax
+	movl	(%ebp),%esi
+	orl	%ecx,%eax
+	addl	$4,%ebp
+	addl	%ebx,%eax
+	addl	%esi,%edx
+	addl	%esi,%eax
+	cmpl	$3248222580,%esi
+	jne	.L00300_15
+	movl	152(%esp),%ebx
+.align	16
+.L00416_63:
+	movl	%ebx,%esi
+	movl	100(%esp),%ecx
+	shrl	$3,%ebx
+	rorl	$7,%esi
+	xorl	%esi,%ebx
+	rorl	$11,%esi
+	movl	%ecx,%edi
+	xorl	%esi,%ebx
+	shrl	$10,%ecx
+	movl	156(%esp),%esi
+	rorl	$17,%edi
+	xorl	%edi,%ecx
+	rorl	$2,%edi
+	addl	%esi,%ebx
+	xorl	%ecx,%edi
+	addl	%edi,%ebx
+	movl	%edx,%ecx
+	addl	120(%esp),%ebx
+	rorl	$6,%ecx
+	movl	%edx,%edi
+	rorl	$11,%edi
+	movl	20(%esp),%esi
+	xorl	%edi,%ecx
+	rorl	$14,%edi
+	movl	%ebx,92(%esp)
+	xorl	%edi,%ecx
+	movl	24(%esp),%edi
+	addl	%ecx,%ebx
+	movl	%edx,16(%esp)
+	xorl	%edi,%esi
+	movl	%eax,%ecx
+	andl	%edx,%esi
+	movl	12(%esp),%edx
+	xorl	%edi,%esi
+	movl	%eax,%edi
+	addl	%esi,%ebx
+	rorl	$2,%ecx
+	addl	28(%esp),%ebx
+	rorl	$13,%edi
+	movl	4(%esp),%esi
+	xorl	%edi,%ecx
+	rorl	$9,%edi
+	addl	%ebx,%edx
+	xorl	%edi,%ecx
+	movl	8(%esp),%edi
+	addl	%ecx,%ebx
+	movl	%eax,(%esp)
+	movl	%eax,%ecx
+	subl	$4,%esp
+	orl	%esi,%eax
+	andl	%esi,%ecx
+	andl	%edi,%eax
+	movl	(%ebp),%esi
+	orl	%ecx,%eax
+	addl	$4,%ebp
+	addl	%ebx,%eax
+	movl	152(%esp),%ebx
+	addl	%esi,%edx
+	addl	%esi,%eax
+	cmpl	$3329325298,%esi
+	jne	.L00416_63
+	movl	352(%esp),%esi
+	movl	4(%esp),%ebx
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edi
+	addl	(%esi),%eax
+	addl	4(%esi),%ebx
+	addl	8(%esi),%ecx
+	addl	12(%esi),%edi
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edi,12(%esi)
+	movl	20(%esp),%eax
+	movl	24(%esp),%ebx
+	movl	28(%esp),%ecx
+	movl	356(%esp),%edi
+	addl	16(%esi),%edx
+	addl	20(%esi),%eax
+	addl	24(%esi),%ebx
+	addl	28(%esi),%ecx
+	movl	%edx,16(%esi)
+	movl	%eax,20(%esi)
+	movl	%ebx,24(%esi)
+	movl	%ecx,28(%esi)
+	addl	$352,%esp
+	subl	$256,%ebp
+	cmpl	8(%esp),%edi
+	jb	.L002loop
+	movl	12(%esp),%esp
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.align	64
+.L001K256:
+.long	1116352408,1899447441,3049323471,3921009573
+.long	961987163,1508970993,2453635748,2870763221
+.long	3624381080,310598401,607225278,1426881987
+.long	1925078388,2162078206,2614888103,3248222580
+.long	3835390401,4022224774,264347078,604807628
+.long	770255983,1249150122,1555081692,1996064986
+.long	2554220882,2821834349,2952996808,3210313671
+.long	3336571891,3584528711,113926993,338241895
+.long	666307205,773529912,1294757372,1396182291
+.long	1695183700,1986661051,2177026350,2456956037
+.long	2730485921,2820302411,3259730800,3345764771
+.long	3516065817,3600352804,4094571909,275423344
+.long	430227734,506948616,659060556,883997877
+.long	958139571,1322822218,1537002063,1747873779
+.long	1955562222,2024104815,2227730452,2361852424
+.long	2428436474,2756734187,3204031479,3329325298
+.size	sha256_block_data_order,.-.L_sha256_block_data_order_begin
+.byte	83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97
+.byte	110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
+.byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
+.byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
+.byte	62,0
Index: secure/lib/libcrypto/i386/cmll_586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/cmll_586.s	(revision 0)
+++ secure/lib/libcrypto/i386/cmll_586.s	(revision 0)
@@ -0,0 +1,2375 @@
+.file	"cmll-586.s"
+.text
+.globl	Camellia_EncryptBlock_Rounds
+.type	Camellia_EncryptBlock_Rounds,@function
+.align	16
+Camellia_EncryptBlock_Rounds:
+.L_Camellia_EncryptBlock_Rounds_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%eax
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%esp,%ebx
+	subl	$28,%esp
+	andl	$-64,%esp
+	leal	-127(%edi),%ecx
+	subl	%esp,%ecx
+	negl	%ecx
+	andl	$960,%ecx
+	subl	%ecx,%esp
+	addl	$4,%esp
+	shll	$6,%eax
+	leal	(%edi,%eax,1),%eax
+	movl	%ebx,20(%esp)
+	movl	%eax,16(%esp)
+	call	.L000pic_point
+.L000pic_point:
+	popl	%ebp
+	leal	.LCamellia_SBOX-.L000pic_point(%ebp),%ebp
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	bswap	%eax
+	movl	12(%esi),%edx
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_encrypt
+	movl	20(%esp),%esp
+	bswap	%eax
+	movl	32(%esp),%esi
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	Camellia_EncryptBlock_Rounds,.-.L_Camellia_EncryptBlock_Rounds_begin
+.globl	Camellia_EncryptBlock
+.type	Camellia_EncryptBlock,@function
+.align	16
+Camellia_EncryptBlock:
+.L_Camellia_EncryptBlock_begin:
+	movl	$128,%eax
+	subl	4(%esp),%eax
+	movl	$3,%eax
+	adcl	$0,%eax
+	movl	%eax,4(%esp)
+	jmp	.L_Camellia_EncryptBlock_Rounds_begin
+.size	Camellia_EncryptBlock,.-.L_Camellia_EncryptBlock_begin
+.globl	Camellia_encrypt
+.type	Camellia_encrypt,@function
+.align	16
+Camellia_encrypt:
+.L_Camellia_encrypt_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%esp,%ebx
+	subl	$28,%esp
+	andl	$-64,%esp
+	movl	272(%edi),%eax
+	leal	-127(%edi),%ecx
+	subl	%esp,%ecx
+	negl	%ecx
+	andl	$960,%ecx
+	subl	%ecx,%esp
+	addl	$4,%esp
+	shll	$6,%eax
+	leal	(%edi,%eax,1),%eax
+	movl	%ebx,20(%esp)
+	movl	%eax,16(%esp)
+	call	.L001pic_point
+.L001pic_point:
+	popl	%ebp
+	leal	.LCamellia_SBOX-.L001pic_point(%ebp),%ebp
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	bswap	%eax
+	movl	12(%esi),%edx
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_encrypt
+	movl	20(%esp),%esp
+	bswap	%eax
+	movl	24(%esp),%esi
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	Camellia_encrypt,.-.L_Camellia_encrypt_begin
+.type	_x86_Camellia_encrypt,@function
+.align	16
+_x86_Camellia_encrypt:
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	16(%edi),%esi
+	movl	%eax,4(%esp)
+	movl	%ebx,8(%esp)
+	movl	%ecx,12(%esp)
+	movl	%edx,16(%esp)
+.align	16
+.L002loop:
+	xorl	%esi,%eax
+	xorl	20(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	16(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	12(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	24(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,16(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,12(%esp)
+	xorl	%esi,%ecx
+	xorl	28(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	8(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	4(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	32(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,8(%esp)
+	xorl	%edx,%eax
+	movl	%eax,4(%esp)
+	xorl	%esi,%eax
+	xorl	36(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	16(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	12(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	40(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,16(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,12(%esp)
+	xorl	%esi,%ecx
+	xorl	44(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	8(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	4(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	48(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,8(%esp)
+	xorl	%edx,%eax
+	movl	%eax,4(%esp)
+	xorl	%esi,%eax
+	xorl	52(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	16(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	12(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	56(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,16(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,12(%esp)
+	xorl	%esi,%ecx
+	xorl	60(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	8(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	4(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	64(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,8(%esp)
+	xorl	%edx,%eax
+	movl	%eax,4(%esp)
+	addl	$64,%edi
+	cmpl	20(%esp),%edi
+	je	.L003done
+	andl	%eax,%esi
+	movl	16(%esp),%edx
+	roll	$1,%esi
+	movl	%edx,%ecx
+	xorl	%esi,%ebx
+	orl	12(%edi),%ecx
+	movl	%ebx,8(%esp)
+	xorl	12(%esp),%ecx
+	movl	4(%edi),%esi
+	movl	%ecx,12(%esp)
+	orl	%ebx,%esi
+	andl	8(%edi),%ecx
+	xorl	%esi,%eax
+	roll	$1,%ecx
+	movl	%eax,4(%esp)
+	xorl	%ecx,%edx
+	movl	16(%edi),%esi
+	movl	%edx,16(%esp)
+	jmp	.L002loop
+.align	8
+.L003done:
+	movl	%eax,%ecx
+	movl	%ebx,%edx
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	xorl	%esi,%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	ret
+.size	_x86_Camellia_encrypt,.-_x86_Camellia_encrypt
+.globl	Camellia_DecryptBlock_Rounds
+.type	Camellia_DecryptBlock_Rounds,@function
+.align	16
+Camellia_DecryptBlock_Rounds:
+.L_Camellia_DecryptBlock_Rounds_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%eax
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%esp,%ebx
+	subl	$28,%esp
+	andl	$-64,%esp
+	leal	-127(%edi),%ecx
+	subl	%esp,%ecx
+	negl	%ecx
+	andl	$960,%ecx
+	subl	%ecx,%esp
+	addl	$4,%esp
+	shll	$6,%eax
+	movl	%edi,16(%esp)
+	leal	(%edi,%eax,1),%edi
+	movl	%ebx,20(%esp)
+	call	.L004pic_point
+.L004pic_point:
+	popl	%ebp
+	leal	.LCamellia_SBOX-.L004pic_point(%ebp),%ebp
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	bswap	%eax
+	movl	12(%esi),%edx
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_decrypt
+	movl	20(%esp),%esp
+	bswap	%eax
+	movl	32(%esp),%esi
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	Camellia_DecryptBlock_Rounds,.-.L_Camellia_DecryptBlock_Rounds_begin
+.globl	Camellia_DecryptBlock
+.type	Camellia_DecryptBlock,@function
+.align	16
+Camellia_DecryptBlock:
+.L_Camellia_DecryptBlock_begin:
+	movl	$128,%eax
+	subl	4(%esp),%eax
+	movl	$3,%eax
+	adcl	$0,%eax
+	movl	%eax,4(%esp)
+	jmp	.L_Camellia_DecryptBlock_Rounds_begin
+.size	Camellia_DecryptBlock,.-.L_Camellia_DecryptBlock_begin
+.globl	Camellia_decrypt
+.type	Camellia_decrypt,@function
+.align	16
+Camellia_decrypt:
+.L_Camellia_decrypt_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	20(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%esp,%ebx
+	subl	$28,%esp
+	andl	$-64,%esp
+	movl	272(%edi),%eax
+	leal	-127(%edi),%ecx
+	subl	%esp,%ecx
+	negl	%ecx
+	andl	$960,%ecx
+	subl	%ecx,%esp
+	addl	$4,%esp
+	shll	$6,%eax
+	movl	%edi,16(%esp)
+	leal	(%edi,%eax,1),%edi
+	movl	%ebx,20(%esp)
+	call	.L005pic_point
+.L005pic_point:
+	popl	%ebp
+	leal	.LCamellia_SBOX-.L005pic_point(%ebp),%ebp
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	bswap	%eax
+	movl	12(%esi),%edx
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_decrypt
+	movl	20(%esp),%esp
+	bswap	%eax
+	movl	24(%esp),%esi
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	Camellia_decrypt,.-.L_Camellia_decrypt_begin
+.type	_x86_Camellia_decrypt,@function
+.align	16
+_x86_Camellia_decrypt:
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	-8(%edi),%esi
+	movl	%eax,4(%esp)
+	movl	%ebx,8(%esp)
+	movl	%ecx,12(%esp)
+	movl	%edx,16(%esp)
+.align	16
+.L006loop:
+	xorl	%esi,%eax
+	xorl	-4(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	16(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	12(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	-16(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,16(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,12(%esp)
+	xorl	%esi,%ecx
+	xorl	-12(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	8(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	4(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	-24(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,8(%esp)
+	xorl	%edx,%eax
+	movl	%eax,4(%esp)
+	xorl	%esi,%eax
+	xorl	-20(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	16(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	12(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	-32(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,16(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,12(%esp)
+	xorl	%esi,%ecx
+	xorl	-28(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	8(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	4(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	-40(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,8(%esp)
+	xorl	%edx,%eax
+	movl	%eax,4(%esp)
+	xorl	%esi,%eax
+	xorl	-36(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	16(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	12(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	-48(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,16(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,12(%esp)
+	xorl	%esi,%ecx
+	xorl	-44(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	8(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	4(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	-56(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,8(%esp)
+	xorl	%edx,%eax
+	movl	%eax,4(%esp)
+	subl	$64,%edi
+	cmpl	20(%esp),%edi
+	je	.L007done
+	andl	%eax,%esi
+	movl	16(%esp),%edx
+	roll	$1,%esi
+	movl	%edx,%ecx
+	xorl	%esi,%ebx
+	orl	4(%edi),%ecx
+	movl	%ebx,8(%esp)
+	xorl	12(%esp),%ecx
+	movl	12(%edi),%esi
+	movl	%ecx,12(%esp)
+	orl	%ebx,%esi
+	andl	(%edi),%ecx
+	xorl	%esi,%eax
+	roll	$1,%ecx
+	movl	%eax,4(%esp)
+	xorl	%ecx,%edx
+	movl	-8(%edi),%esi
+	movl	%edx,16(%esp)
+	jmp	.L006loop
+.align	8
+.L007done:
+	movl	%eax,%ecx
+	movl	%ebx,%edx
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	xorl	%esi,%ecx
+	xorl	12(%edi),%edx
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	ret
+.size	_x86_Camellia_decrypt,.-_x86_Camellia_decrypt
+.globl	Camellia_Ekeygen
+.type	Camellia_Ekeygen,@function
+.align	16
+Camellia_Ekeygen:
+.L_Camellia_Ekeygen_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	subl	$16,%esp
+	movl	36(%esp),%ebp
+	movl	40(%esp),%esi
+	movl	44(%esp),%edi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	cmpl	$128,%ebp
+	je	.L0081st128
+	movl	16(%esi),%eax
+	movl	20(%esi),%ebx
+	cmpl	$192,%ebp
+	je	.L0091st192
+	movl	24(%esi),%ecx
+	movl	28(%esi),%edx
+	jmp	.L0101st256
+.align	4
+.L0091st192:
+	movl	%eax,%ecx
+	movl	%ebx,%edx
+	notl	%ecx
+	notl	%edx
+.align	4
+.L0101st256:
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,32(%edi)
+	movl	%ebx,36(%edi)
+	movl	%ecx,40(%edi)
+	movl	%edx,44(%edi)
+	xorl	(%edi),%eax
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+.align	4
+.L0081st128:
+	call	.L011pic_point
+.L011pic_point:
+	popl	%ebp
+	leal	.LCamellia_SBOX-.L011pic_point(%ebp),%ebp
+	leal	.LCamellia_SIGMA-.LCamellia_SBOX(%ebp),%edi
+	movl	(%edi),%esi
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movl	%ecx,8(%esp)
+	movl	%edx,12(%esp)
+	xorl	%esi,%eax
+	xorl	4(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	12(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	8(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	8(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,12(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,8(%esp)
+	xorl	%esi,%ecx
+	xorl	12(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	4(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	16(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,4(%esp)
+	xorl	%edx,%eax
+	movl	%eax,(%esp)
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	44(%esp),%esi
+	xorl	(%esi),%eax
+	xorl	4(%esi),%ebx
+	xorl	8(%esi),%ecx
+	xorl	12(%esi),%edx
+	movl	16(%edi),%esi
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movl	%ecx,8(%esp)
+	movl	%edx,12(%esp)
+	xorl	%esi,%eax
+	xorl	20(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	12(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	8(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	24(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,12(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,8(%esp)
+	xorl	%esi,%ecx
+	xorl	28(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	4(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	32(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,4(%esp)
+	xorl	%edx,%eax
+	movl	%eax,(%esp)
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	36(%esp),%esi
+	cmpl	$128,%esi
+	jne	.L0122nd256
+	movl	44(%esp),%edi
+	leal	128(%edi),%edi
+	movl	%eax,-112(%edi)
+	movl	%ebx,-108(%edi)
+	movl	%ecx,-104(%edi)
+	movl	%edx,-100(%edi)
+	movl	%eax,%ebp
+	shll	$15,%eax
+	movl	%ebx,%esi
+	shrl	$17,%esi
+	shll	$15,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$15,%ecx
+	movl	%eax,-80(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ebx
+	shrl	$17,%ebp
+	movl	%edx,%esi
+	shrl	$17,%esi
+	movl	%ebx,-76(%edi)
+	shll	$15,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,-72(%edi)
+	movl	%edx,-68(%edi)
+	movl	%eax,%ebp
+	shll	$15,%eax
+	movl	%ebx,%esi
+	shrl	$17,%esi
+	shll	$15,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$15,%ecx
+	movl	%eax,-64(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ebx
+	shrl	$17,%ebp
+	movl	%edx,%esi
+	shrl	$17,%esi
+	movl	%ebx,-60(%edi)
+	shll	$15,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,-56(%edi)
+	movl	%edx,-52(%edi)
+	movl	%eax,%ebp
+	shll	$15,%eax
+	movl	%ebx,%esi
+	shrl	$17,%esi
+	shll	$15,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$15,%ecx
+	movl	%eax,-32(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ebx
+	shrl	$17,%ebp
+	movl	%edx,%esi
+	shrl	$17,%esi
+	movl	%ebx,-28(%edi)
+	shll	$15,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%eax,%ebp
+	shll	$15,%eax
+	movl	%ebx,%esi
+	shrl	$17,%esi
+	shll	$15,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$15,%ecx
+	movl	%eax,-16(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ebx
+	shrl	$17,%ebp
+	movl	%edx,%esi
+	shrl	$17,%esi
+	movl	%ebx,-12(%edi)
+	shll	$15,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,-8(%edi)
+	movl	%edx,-4(%edi)
+	movl	%ebx,%ebp
+	shll	$2,%ebx
+	movl	%ecx,%esi
+	shrl	$30,%esi
+	shll	$2,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$2,%edx
+	movl	%ebx,32(%edi)
+	shrl	$30,%esi
+	orl	%esi,%ecx
+	shrl	$30,%ebp
+	movl	%eax,%esi
+	shrl	$30,%esi
+	movl	%ecx,36(%edi)
+	shll	$2,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,40(%edi)
+	movl	%eax,44(%edi)
+	movl	%ebx,%ebp
+	shll	$17,%ebx
+	movl	%ecx,%esi
+	shrl	$15,%esi
+	shll	$17,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$17,%edx
+	movl	%ebx,64(%edi)
+	shrl	$15,%esi
+	orl	%esi,%ecx
+	shrl	$15,%ebp
+	movl	%eax,%esi
+	shrl	$15,%esi
+	movl	%ecx,68(%edi)
+	shll	$17,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,72(%edi)
+	movl	%eax,76(%edi)
+	movl	-128(%edi),%ebx
+	movl	-124(%edi),%ecx
+	movl	-120(%edi),%edx
+	movl	-116(%edi),%eax
+	movl	%ebx,%ebp
+	shll	$15,%ebx
+	movl	%ecx,%esi
+	shrl	$17,%esi
+	shll	$15,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$15,%edx
+	movl	%ebx,-96(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ecx
+	shrl	$17,%ebp
+	movl	%eax,%esi
+	shrl	$17,%esi
+	movl	%ecx,-92(%edi)
+	shll	$15,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,-88(%edi)
+	movl	%eax,-84(%edi)
+	movl	%ebx,%ebp
+	shll	$30,%ebx
+	movl	%ecx,%esi
+	shrl	$2,%esi
+	shll	$30,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$30,%edx
+	movl	%ebx,-48(%edi)
+	shrl	$2,%esi
+	orl	%esi,%ecx
+	shrl	$2,%ebp
+	movl	%eax,%esi
+	shrl	$2,%esi
+	movl	%ecx,-44(%edi)
+	shll	$30,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,-40(%edi)
+	movl	%eax,-36(%edi)
+	movl	%ebx,%ebp
+	shll	$15,%ebx
+	movl	%ecx,%esi
+	shrl	$17,%esi
+	shll	$15,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$15,%edx
+	shrl	$17,%esi
+	orl	%esi,%ecx
+	shrl	$17,%ebp
+	movl	%eax,%esi
+	shrl	$17,%esi
+	shll	$15,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,-24(%edi)
+	movl	%eax,-20(%edi)
+	movl	%ebx,%ebp
+	shll	$17,%ebx
+	movl	%ecx,%esi
+	shrl	$15,%esi
+	shll	$17,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$17,%edx
+	movl	%ebx,(%edi)
+	shrl	$15,%esi
+	orl	%esi,%ecx
+	shrl	$15,%ebp
+	movl	%eax,%esi
+	shrl	$15,%esi
+	movl	%ecx,4(%edi)
+	shll	$17,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,8(%edi)
+	movl	%eax,12(%edi)
+	movl	%ebx,%ebp
+	shll	$17,%ebx
+	movl	%ecx,%esi
+	shrl	$15,%esi
+	shll	$17,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$17,%edx
+	movl	%ebx,16(%edi)
+	shrl	$15,%esi
+	orl	%esi,%ecx
+	shrl	$15,%ebp
+	movl	%eax,%esi
+	shrl	$15,%esi
+	movl	%ecx,20(%edi)
+	shll	$17,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,24(%edi)
+	movl	%eax,28(%edi)
+	movl	%ebx,%ebp
+	shll	$17,%ebx
+	movl	%ecx,%esi
+	shrl	$15,%esi
+	shll	$17,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$17,%edx
+	movl	%ebx,48(%edi)
+	shrl	$15,%esi
+	orl	%esi,%ecx
+	shrl	$15,%ebp
+	movl	%eax,%esi
+	shrl	$15,%esi
+	movl	%ecx,52(%edi)
+	shll	$17,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,56(%edi)
+	movl	%eax,60(%edi)
+	movl	$3,%eax
+	jmp	.L013done
+.align	16
+.L0122nd256:
+	movl	44(%esp),%esi
+	movl	%eax,48(%esi)
+	movl	%ebx,52(%esi)
+	movl	%ecx,56(%esi)
+	movl	%edx,60(%esi)
+	xorl	32(%esi),%eax
+	xorl	36(%esi),%ebx
+	xorl	40(%esi),%ecx
+	xorl	44(%esi),%edx
+	movl	32(%edi),%esi
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movl	%ecx,8(%esp)
+	movl	%edx,12(%esp)
+	xorl	%esi,%eax
+	xorl	36(%edi),%ebx
+	movzbl	%ah,%esi
+	movl	2052(%ebp,%esi,8),%edx
+	movzbl	%al,%esi
+	xorl	4(%ebp,%esi,8),%edx
+	shrl	$16,%eax
+	movzbl	%bl,%esi
+	movl	(%ebp,%esi,8),%ecx
+	movzbl	%ah,%esi
+	xorl	(%ebp,%esi,8),%edx
+	movzbl	%bh,%esi
+	xorl	4(%ebp,%esi,8),%ecx
+	shrl	$16,%ebx
+	movzbl	%al,%eax
+	xorl	2048(%ebp,%eax,8),%edx
+	movzbl	%bh,%esi
+	movl	12(%esp),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	2048(%ebp,%esi,8),%ecx
+	movzbl	%bl,%esi
+	movl	8(%esp),%ebx
+	xorl	%eax,%edx
+	xorl	2052(%ebp,%esi,8),%ecx
+	movl	40(%edi),%esi
+	xorl	%ecx,%edx
+	movl	%edx,12(%esp)
+	xorl	%ebx,%ecx
+	movl	%ecx,8(%esp)
+	xorl	%esi,%ecx
+	xorl	44(%edi),%edx
+	movzbl	%ch,%esi
+	movl	2052(%ebp,%esi,8),%ebx
+	movzbl	%cl,%esi
+	xorl	4(%ebp,%esi,8),%ebx
+	shrl	$16,%ecx
+	movzbl	%dl,%esi
+	movl	(%ebp,%esi,8),%eax
+	movzbl	%ch,%esi
+	xorl	(%ebp,%esi,8),%ebx
+	movzbl	%dh,%esi
+	xorl	4(%ebp,%esi,8),%eax
+	shrl	$16,%edx
+	movzbl	%cl,%ecx
+	xorl	2048(%ebp,%ecx,8),%ebx
+	movzbl	%dh,%esi
+	movl	4(%esp),%ecx
+	xorl	%ebx,%eax
+	rorl	$8,%ebx
+	xorl	2048(%ebp,%esi,8),%eax
+	movzbl	%dl,%esi
+	movl	(%esp),%edx
+	xorl	%ecx,%ebx
+	xorl	2052(%ebp,%esi,8),%eax
+	movl	48(%edi),%esi
+	xorl	%eax,%ebx
+	movl	%ebx,4(%esp)
+	xorl	%edx,%eax
+	movl	%eax,(%esp)
+	movl	8(%esp),%ecx
+	movl	12(%esp),%edx
+	movl	44(%esp),%edi
+	leal	128(%edi),%edi
+	movl	%eax,-112(%edi)
+	movl	%ebx,-108(%edi)
+	movl	%ecx,-104(%edi)
+	movl	%edx,-100(%edi)
+	movl	%eax,%ebp
+	shll	$30,%eax
+	movl	%ebx,%esi
+	shrl	$2,%esi
+	shll	$30,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$30,%ecx
+	movl	%eax,-48(%edi)
+	shrl	$2,%esi
+	orl	%esi,%ebx
+	shrl	$2,%ebp
+	movl	%edx,%esi
+	shrl	$2,%esi
+	movl	%ebx,-44(%edi)
+	shll	$30,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,-40(%edi)
+	movl	%edx,-36(%edi)
+	movl	%eax,%ebp
+	shll	$30,%eax
+	movl	%ebx,%esi
+	shrl	$2,%esi
+	shll	$30,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$30,%ecx
+	movl	%eax,32(%edi)
+	shrl	$2,%esi
+	orl	%esi,%ebx
+	shrl	$2,%ebp
+	movl	%edx,%esi
+	shrl	$2,%esi
+	movl	%ebx,36(%edi)
+	shll	$30,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,40(%edi)
+	movl	%edx,44(%edi)
+	movl	%ebx,%ebp
+	shll	$19,%ebx
+	movl	%ecx,%esi
+	shrl	$13,%esi
+	shll	$19,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$19,%edx
+	movl	%ebx,128(%edi)
+	shrl	$13,%esi
+	orl	%esi,%ecx
+	shrl	$13,%ebp
+	movl	%eax,%esi
+	shrl	$13,%esi
+	movl	%ecx,132(%edi)
+	shll	$19,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,136(%edi)
+	movl	%eax,140(%edi)
+	movl	-96(%edi),%ebx
+	movl	-92(%edi),%ecx
+	movl	-88(%edi),%edx
+	movl	-84(%edi),%eax
+	movl	%ebx,%ebp
+	shll	$15,%ebx
+	movl	%ecx,%esi
+	shrl	$17,%esi
+	shll	$15,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$15,%edx
+	movl	%ebx,-96(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ecx
+	shrl	$17,%ebp
+	movl	%eax,%esi
+	shrl	$17,%esi
+	movl	%ecx,-92(%edi)
+	shll	$15,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,-88(%edi)
+	movl	%eax,-84(%edi)
+	movl	%ebx,%ebp
+	shll	$15,%ebx
+	movl	%ecx,%esi
+	shrl	$17,%esi
+	shll	$15,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$15,%edx
+	movl	%ebx,-64(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ecx
+	shrl	$17,%ebp
+	movl	%eax,%esi
+	shrl	$17,%esi
+	movl	%ecx,-60(%edi)
+	shll	$15,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,-56(%edi)
+	movl	%eax,-52(%edi)
+	movl	%ebx,%ebp
+	shll	$30,%ebx
+	movl	%ecx,%esi
+	shrl	$2,%esi
+	shll	$30,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$30,%edx
+	movl	%ebx,16(%edi)
+	shrl	$2,%esi
+	orl	%esi,%ecx
+	shrl	$2,%ebp
+	movl	%eax,%esi
+	shrl	$2,%esi
+	movl	%ecx,20(%edi)
+	shll	$30,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,24(%edi)
+	movl	%eax,28(%edi)
+	movl	%ecx,%ebp
+	shll	$2,%ecx
+	movl	%edx,%esi
+	shrl	$30,%esi
+	shll	$2,%edx
+	orl	%esi,%ecx
+	movl	%eax,%esi
+	shll	$2,%eax
+	movl	%ecx,80(%edi)
+	shrl	$30,%esi
+	orl	%esi,%edx
+	shrl	$30,%ebp
+	movl	%ebx,%esi
+	shrl	$30,%esi
+	movl	%edx,84(%edi)
+	shll	$2,%ebx
+	orl	%esi,%eax
+	orl	%ebp,%ebx
+	movl	%eax,88(%edi)
+	movl	%ebx,92(%edi)
+	movl	-80(%edi),%ecx
+	movl	-76(%edi),%edx
+	movl	-72(%edi),%eax
+	movl	-68(%edi),%ebx
+	movl	%ecx,%ebp
+	shll	$15,%ecx
+	movl	%edx,%esi
+	shrl	$17,%esi
+	shll	$15,%edx
+	orl	%esi,%ecx
+	movl	%eax,%esi
+	shll	$15,%eax
+	movl	%ecx,-80(%edi)
+	shrl	$17,%esi
+	orl	%esi,%edx
+	shrl	$17,%ebp
+	movl	%ebx,%esi
+	shrl	$17,%esi
+	movl	%edx,-76(%edi)
+	shll	$15,%ebx
+	orl	%esi,%eax
+	orl	%ebp,%ebx
+	movl	%eax,-72(%edi)
+	movl	%ebx,-68(%edi)
+	movl	%ecx,%ebp
+	shll	$30,%ecx
+	movl	%edx,%esi
+	shrl	$2,%esi
+	shll	$30,%edx
+	orl	%esi,%ecx
+	movl	%eax,%esi
+	shll	$30,%eax
+	movl	%ecx,-16(%edi)
+	shrl	$2,%esi
+	orl	%esi,%edx
+	shrl	$2,%ebp
+	movl	%ebx,%esi
+	shrl	$2,%esi
+	movl	%edx,-12(%edi)
+	shll	$30,%ebx
+	orl	%esi,%eax
+	orl	%ebp,%ebx
+	movl	%eax,-8(%edi)
+	movl	%ebx,-4(%edi)
+	movl	%edx,64(%edi)
+	movl	%eax,68(%edi)
+	movl	%ebx,72(%edi)
+	movl	%ecx,76(%edi)
+	movl	%edx,%ebp
+	shll	$17,%edx
+	movl	%eax,%esi
+	shrl	$15,%esi
+	shll	$17,%eax
+	orl	%esi,%edx
+	movl	%ebx,%esi
+	shll	$17,%ebx
+	movl	%edx,96(%edi)
+	shrl	$15,%esi
+	orl	%esi,%eax
+	shrl	$15,%ebp
+	movl	%ecx,%esi
+	shrl	$15,%esi
+	movl	%eax,100(%edi)
+	shll	$17,%ecx
+	orl	%esi,%ebx
+	orl	%ebp,%ecx
+	movl	%ebx,104(%edi)
+	movl	%ecx,108(%edi)
+	movl	-128(%edi),%edx
+	movl	-124(%edi),%eax
+	movl	-120(%edi),%ebx
+	movl	-116(%edi),%ecx
+	movl	%eax,%ebp
+	shll	$13,%eax
+	movl	%ebx,%esi
+	shrl	$19,%esi
+	shll	$13,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$13,%ecx
+	movl	%eax,-32(%edi)
+	shrl	$19,%esi
+	orl	%esi,%ebx
+	shrl	$19,%ebp
+	movl	%edx,%esi
+	shrl	$19,%esi
+	movl	%ebx,-28(%edi)
+	shll	$13,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,-24(%edi)
+	movl	%edx,-20(%edi)
+	movl	%eax,%ebp
+	shll	$15,%eax
+	movl	%ebx,%esi
+	shrl	$17,%esi
+	shll	$15,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$15,%ecx
+	movl	%eax,(%edi)
+	shrl	$17,%esi
+	orl	%esi,%ebx
+	shrl	$17,%ebp
+	movl	%edx,%esi
+	shrl	$17,%esi
+	movl	%ebx,4(%edi)
+	shll	$15,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	%eax,%ebp
+	shll	$17,%eax
+	movl	%ebx,%esi
+	shrl	$15,%esi
+	shll	$17,%ebx
+	orl	%esi,%eax
+	movl	%ecx,%esi
+	shll	$17,%ecx
+	movl	%eax,48(%edi)
+	shrl	$15,%esi
+	orl	%esi,%ebx
+	shrl	$15,%ebp
+	movl	%edx,%esi
+	shrl	$15,%esi
+	movl	%ebx,52(%edi)
+	shll	$17,%edx
+	orl	%esi,%ecx
+	orl	%ebp,%edx
+	movl	%ecx,56(%edi)
+	movl	%edx,60(%edi)
+	movl	%ebx,%ebp
+	shll	$2,%ebx
+	movl	%ecx,%esi
+	shrl	$30,%esi
+	shll	$2,%ecx
+	orl	%esi,%ebx
+	movl	%edx,%esi
+	shll	$2,%edx
+	movl	%ebx,112(%edi)
+	shrl	$30,%esi
+	orl	%esi,%ecx
+	shrl	$30,%ebp
+	movl	%eax,%esi
+	shrl	$30,%esi
+	movl	%ecx,116(%edi)
+	shll	$2,%eax
+	orl	%esi,%edx
+	orl	%ebp,%eax
+	movl	%edx,120(%edi)
+	movl	%eax,124(%edi)
+	movl	$4,%eax
+.L013done:
+	leal	144(%edi),%edx
+	addl	$16,%esp
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	Camellia_Ekeygen,.-.L_Camellia_Ekeygen_begin
+.globl	Camellia_set_key
+.type	Camellia_set_key,@function
+.align	16
+Camellia_set_key:
+.L_Camellia_set_key_begin:
+	pushl	%ebx
+	movl	8(%esp),%ecx
+	movl	12(%esp),%ebx
+	movl	16(%esp),%edx
+	movl	$-1,%eax
+	testl	%ecx,%ecx
+	jz	.L014done
+	testl	%edx,%edx
+	jz	.L014done
+	movl	$-2,%eax
+	cmpl	$256,%ebx
+	je	.L015arg_ok
+	cmpl	$192,%ebx
+	je	.L015arg_ok
+	cmpl	$128,%ebx
+	jne	.L014done
+.align	4
+.L015arg_ok:
+	pushl	%edx
+	pushl	%ecx
+	pushl	%ebx
+	call	.L_Camellia_Ekeygen_begin
+	addl	$12,%esp
+	movl	%eax,(%edx)
+	xorl	%eax,%eax
+.align	4
+.L014done:
+	popl	%ebx
+	ret
+.size	Camellia_set_key,.-.L_Camellia_set_key_begin
+.align	64
+.LCamellia_SIGMA:
+.long	2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,14=
26019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0
+.align	64
+.LCamellia_SBOX:
+.long	1886416896,1886388336
+.long	2189591040,741081132
+.long	741092352,3014852787
+.long	3974949888,3233808576
+.long	3014898432,3840147684
+.long	656877312,1465319511
+.long	3233857536,3941204202
+.long	3857048832,2930639022
+.long	3840205824,589496355
+.long	2240120064,1802174571
+.long	1465341696,1162149957
+.long	892679424,2779054245
+.long	3941263872,3991732461
+.long	202116096,1330577487
+.long	2930683392,488439837
+.long	1094795520,2459041938
+.long	589505280,2256928902
+.long	4025478912,2947481775
+.long	1802201856,2088501372
+.long	2475922176,522125343
+.long	1162167552,1044250686
+.long	421075200,3705405660
+.long	2779096320,1583218782
+.long	555819264,185270283
+.long	3991792896,2795896998
+.long	235802112,960036921
+.long	1330597632,3587506389
+.long	1313754624,1566376029
+.long	488447232,3654877401
+.long	1701143808,1515847770
+.long	2459079168,1364262993
+.long	3183328512,1819017324
+.long	2256963072,2341142667
+.long	3099113472,2593783962
+.long	2947526400,4227531003
+.long	2408550144,2964324528
+.long	2088532992,1953759348
+.long	3958106880,724238379
+.long	522133248,4042260720
+.long	3469659648,2223243396
+.long	1044266496,3755933919
+.long	808464384,3419078859
+.long	3705461760,875823156
+.long	1600085760,1987444854
+.long	1583242752,1835860077
+.long	3318072576,2846425257
+.long	185273088,3520135377
+.long	437918208,67371012
+.long	2795939328,336855060
+.long	3789676800,976879674
+.long	960051456,3739091166
+.long	3402287616,286326801
+.long	3587560704,842137650
+.long	1195853568,2627469468
+.long	1566399744,1397948499
+.long	1027423488,4075946226
+.long	3654932736,4278059262
+.long	16843008,3486449871
+.long	1515870720,3284336835
+.long	3604403712,2054815866
+.long	1364283648,606339108
+.long	1448498688,3907518696
+.long	1819044864,1616904288
+.long	1296911616,1768489065
+.long	2341178112,2863268010
+.long	218959104,2694840480
+.long	2593823232,2711683233
+.long	1717986816,1650589794
+.long	4227595008,1414791252
+.long	3435973632,505282590
+.long	2964369408,3772776672
+.long	757935360,1684275300
+.long	1953788928,269484048
+.long	303174144,0
+.long	724249344,2745368739
+.long	538976256,1970602101
+.long	4042321920,2324299914
+.long	2981212416,3873833190
+.long	2223277056,151584777
+.long	2576980224,3722248413
+.long	3755990784,2273771655
+.long	1280068608,2206400643
+.long	3419130624,3452764365
+.long	3267543552,2425356432
+.long	875836416,1936916595
+.long	2122219008,4143317238
+.long	1987474944,2644312221
+.long	84215040,3216965823
+.long	1835887872,1381105746
+.long	3082270464,3638034648
+.long	2846468352,3368550600
+.long	825307392,3334865094
+.long	3520188672,2172715137
+.long	387389184,1869545583
+.long	67372032,320012307
+.long	3621246720,1667432547
+.long	336860160,3924361449
+.long	1482184704,2812739751
+.long	976894464,2677997727
+.long	1633771776,3166437564
+.long	3739147776,690552873
+.long	454761216,4193845497
+.long	286331136,791609391
+.long	471604224,3031695540
+.long	842150400,2021130360
+.long	252645120,101056518
+.long	2627509248,3890675943
+.long	370546176,1903231089
+.long	1397969664,3570663636
+.long	404232192,2880110763
+.long	4076007936,2290614408
+.long	572662272,2374828173
+.long	4278124032,1920073842
+.long	1145324544,3115909305
+.long	3486502656,4177002744
+.long	2998055424,2896953516
+.long	3284386560,909508662
+.long	3048584448,707395626
+.long	2054846976,1010565180
+.long	2442236160,4059103473
+.long	606348288,1077936192
+.long	134744064,3553820883
+.long	3907577856,3149594811
+.long	2829625344,1128464451
+.long	1616928768,353697813
+.long	4244438016,2913796269
+.long	1768515840,2004287607
+.long	1347440640,2155872384
+.long	2863311360,2189557890
+.long	3503345664,3974889708
+.long	2694881280,656867367
+.long	2105376000,3856990437
+.long	2711724288,2240086149
+.long	2307492096,892665909
+.long	1650614784,202113036
+.long	2543294208,1094778945
+.long	1414812672,4025417967
+.long	1532713728,2475884691
+.long	505290240,421068825
+.long	2509608192,555810849
+.long	3772833792,235798542
+.long	4294967040,1313734734
+.long	1684300800,1701118053
+.long	3537031680,3183280317
+.long	269488128,3099066552
+.long	3301229568,2408513679
+.long	0,3958046955
+.long	1212696576,3469607118
+.long	2745410304,808452144
+.long	4160222976,1600061535
+.long	1970631936,3318022341
+.long	3688618752,437911578
+.long	2324335104,3789619425
+.long	50529024,3402236106
+.long	3873891840,1195835463
+.long	3671775744,1027407933
+.long	151587072,16842753
+.long	1061109504,3604349142
+.long	3722304768,1448476758
+.long	2492765184,1296891981
+.long	2273806080,218955789
+.long	1549556736,1717960806
+.long	2206434048,3435921612
+.long	33686016,757923885
+.long	3452816640,303169554
+.long	1246382592,538968096
+.long	2425393152,2981167281
+.long	858993408,2576941209
+.long	1936945920,1280049228
+.long	1734829824,3267494082
+.long	4143379968,2122186878
+.long	4092850944,84213765
+.long	2644352256,3082223799
+.long	2139062016,825294897
+.long	3217014528,387383319
+.long	3806519808,3621191895
+.long	1381126656,1482162264
+.long	2610666240,1633747041
+.long	3638089728,454754331
+.long	640034304,471597084
+.long	3368601600,252641295
+.long	926365440,370540566
+.long	3334915584,404226072
+.long	993737472,572653602
+.long	2172748032,1145307204
+.long	2526451200,2998010034
+.long	1869573888,3048538293
+.long	1263225600,2442199185
+.long	320017152,134742024
+.long	3200171520,2829582504
+.long	1667457792,4244373756
+.long	774778368,1347420240
+.long	3924420864,3503292624
+.long	2038003968,2105344125
+.long	2812782336,2307457161
+.long	2358021120,2543255703
+.long	2678038272,1532690523
+.long	1852730880,2509570197
+.long	3166485504,4294902015
+.long	2391707136,3536978130
+.long	690563328,3301179588
+.long	4126536960,1212678216
+.long	4193908992,4160159991
+.long	3065427456,3688562907
+.long	791621376,50528259
+.long	4261281024,3671720154
+.long	3031741440,1061093439
+.long	1499027712,2492727444
+.long	2021160960,1549533276
+.long	2560137216,33685506
+.long	101058048,1246363722
+.long	1785358848,858980403
+.long	3890734848,1734803559
+.long	1179010560,4092788979
+.long	1903259904,2139029631
+.long	3132799488,3806462178
+.long	3570717696,2610626715
+.long	623191296,640024614
+.long	2880154368,926351415
+.long	1111638528,993722427
+.long	2290649088,2526412950
+.long	2728567296,1263206475
+.long	2374864128,3200123070
+.long	4210752000,774766638
+.long	1920102912,2037973113
+.long	117901056,2357985420
+.long	3115956480,1852702830
+.long	1431655680,2391670926
+.long	4177065984,4126474485
+.long	4008635904,3065381046
+.long	2896997376,4261216509
+.long	168430080,1499005017
+.long	909522432,2560098456
+.long	1229539584,1785331818
+.long	707406336,1178992710
+.long	1751672832,3132752058
+.long	1010580480,623181861
+.long	943208448,1111621698
+.long	4059164928,2728525986
+.long	2762253312,4210688250
+.long	1077952512,117899271
+.long	673720320,1431634005
+.long	3553874688,4008575214
+.long	2071689984,168427530
+.long	3149642496,1229520969
+.long	3385444608,1751646312
+.long	1128481536,943194168
+.long	3250700544,2762211492
+.long	353703168,673710120
+.long	3823362816,2071658619
+.long	2913840384,3385393353
+.long	4109693952,3250651329
+.long	2004317952,3823304931
+.long	3351758592,4109631732
+.long	2155905024,3351707847
+.long	2661195264,2661154974
+.long	14737632,939538488
+.long	328965,1090535745
+.long	5789784,369104406
+.long	14277081,1979741814
+.long	6776679,3640711641
+.long	5131854,2466288531
+.long	8487297,1610637408
+.long	13355979,4060148466
+.long	13224393,1912631922
+.long	723723,3254829762
+.long	11447982,2868947883
+.long	6974058,2583730842
+.long	14013909,1962964341
+.long	1579032,100664838
+.long	6118749,1459640151
+.long	8553090,2684395680
+.long	4605510,2432733585
+.long	14671839,4144035831
+.long	14079702,3036722613
+.long	2565927,3372272073
+.long	9079434,2717950626
+.long	3289650,2348846220
+.long	4934475,3523269330
+.long	4342338,2415956112
+.long	14408667,4127258358
+.long	1842204,117442311
+.long	10395294,2801837991
+.long	10263708,654321447
+.long	3815994,2382401166
+.long	13290186,2986390194
+.long	2434341,1224755529
+.long	8092539,3724599006
+.long	855309,1124090691
+.long	7434609,1543527516
+.long	6250335,3607156695
+.long	2039583,3338717127
+.long	16316664,1040203326
+.long	14145495,4110480885
+.long	4079166,2399178639
+.long	10329501,1728079719
+.long	8158332,520101663
+.long	6316128,402659352
+.long	12171705,1845522030
+.long	12500670,2936057775
+.long	12369084,788541231
+.long	9145227,3791708898
+.long	1447446,2231403909
+.long	3421236,218107149
+.long	5066061,1392530259
+.long	12829635,4026593520
+.long	7500402,2617285788
+.long	9803157,1694524773
+.long	11250603,3925928682
+.long	9342606,2734728099
+.long	12237498,2919280302
+.long	8026746,2650840734
+.long	11776947,3959483628
+.long	131586,2147516544
+.long	11842740,754986285
+.long	11382189,1795189611
+.long	10658466,2818615464
+.long	11316396,721431339
+.long	14211288,905983542
+.long	10132122,2785060518
+.long	1513239,3305162181
+.long	1710618,2248181382
+.long	3487029,1291865421
+.long	13421772,855651123
+.long	16250871,4244700669
+.long	10066329,1711302246
+.long	6381921,1476417624
+.long	5921370,2516620950
+.long	15263976,973093434
+.long	2368548,150997257
+.long	5658198,2499843477
+.long	4210752,268439568
+.long	14803425,2013296760
+.long	6513507,3623934168
+.long	592137,1107313218
+.long	3355443,3422604492
+.long	12566463,4009816047
+.long	10000536,637543974
+.long	9934743,3842041317
+.long	8750469,1627414881
+.long	6842472,436214298
+.long	16579836,1056980799
+.long	15527148,989870907
+.long	657930,2181071490
+.long	14342874,3053500086
+.long	7303023,3674266587
+.long	5460819,3556824276
+.long	6447714,2550175896
+.long	10724259,3892373736
+.long	3026478,2332068747
+.long	526344,33554946
+.long	11513775,3942706155
+.long	2631720,167774730
+.long	11579568,738208812
+.long	7631988,486546717
+.long	12763842,2952835248
+.long	12434877,1862299503
+.long	3552822,2365623693
+.long	2236962,2281736328
+.long	3684408,234884622
+.long	6579300,419436825
+.long	1973790,2264958855
+.long	3750201,1308642894
+.long	2894892,184552203
+.long	10921638,2835392937
+.long	3158064,201329676
+.long	15066597,2030074233
+.long	4473924,285217041
+.long	16645629,2130739071
+.long	8947848,570434082
+.long	10461087,3875596263
+.long	6645093,1493195097
+.long	8882055,3774931425
+.long	7039851,3657489114
+.long	16053492,1023425853
+.long	2302755,3355494600
+.long	4737096,301994514
+.long	1052688,67109892
+.long	13750737,1946186868
+.long	5329233,1409307732
+.long	12632256,805318704
+.long	16382457,2113961598
+.long	13816530,3019945140
+.long	10526880,671098920
+.long	5592405,1426085205
+.long	10592673,1744857192
+.long	4276545,1342197840
+.long	16448250,3187719870
+.long	4408131,3489714384
+.long	1250067,3288384708
+.long	12895428,822096177
+.long	3092271,3405827019
+.long	11053224,704653866
+.long	11974326,2902502829
+.long	3947580,251662095
+.long	2829099,3389049546
+.long	12698049,1879076976
+.long	16777215,4278255615
+.long	13158600,838873650
+.long	10855845,1761634665
+.long	2105376,134219784
+.long	9013641,1644192354
+.long	0,0
+.long	9474192,603989028
+.long	4671303,3506491857
+.long	15724527,4211145723
+.long	15395562,3120609978
+.long	12040119,3976261101
+.long	1381653,1157645637
+.long	394758,2164294017
+.long	13487565,1929409395
+.long	11908533,1828744557
+.long	1184274,2214626436
+.long	8289918,2667618207
+.long	12303291,3993038574
+.long	2697513,1241533002
+.long	986895,3271607235
+.long	12105912,771763758
+.long	460551,3238052289
+.long	263172,16777473
+.long	10197915,3858818790
+.long	9737364,620766501
+.long	2171169,1207978056
+.long	6710886,2566953369
+.long	15132390,3103832505
+.long	13553358,3003167667
+.long	15592941,2063629179
+.long	15198183,4177590777
+.long	3881787,3456159438
+.long	16711422,3204497343
+.long	8355711,3741376479
+.long	12961221,1895854449
+.long	10790052,687876393
+.long	3618615,3439381965
+.long	11645361,1811967084
+.long	5000268,318771987
+.long	9539985,1677747300
+.long	7237230,2600508315
+.long	9276813,1660969827
+.long	7763574,2634063261
+.long	197379,3221274816
+.long	2960685,1258310475
+.long	14606046,3070277559
+.long	9868950,2768283045
+.long	2500134,2298513801
+.long	8224125,1593859935
+.long	13027014,2969612721
+.long	6052956,385881879
+.long	13882323,4093703412
+.long	15921906,3154164924
+.long	5197647,3540046803
+.long	1644825,1174423110
+.long	4144959,3472936911
+.long	14474460,922761015
+.long	7960953,1577082462
+.long	1907997,1191200583
+.long	5395026,2483066004
+.long	15461355,4194368250
+.long	15987699,4227923196
+.long	7171437,1526750043
+.long	6184542,2533398423
+.long	16514043,4261478142
+.long	6908265,1509972570
+.long	11711154,2885725356
+.long	15790320,1006648380
+.long	3223857,1275087948
+.long	789516,50332419
+.long	13948116,889206069
+.long	13619151,4076925939
+.long	9211020,587211555
+.long	14869218,3087055032
+.long	7697781,1560304989
+.long	11119017,1778412138
+.long	4868682,2449511058
+.long	5723991,3573601749
+.long	8684676,553656609
+.long	1118481,1140868164
+.long	4539717,1358975313
+.long	1776411,3321939654
+.long	16119285,2097184125
+.long	15000804,956315961
+.long	921102,2197848963
+.long	7566195,3691044060
+.long	11184810,2852170410
+.long	15856113,2080406652
+.long	14540253,1996519287
+.long	5855577,1442862678
+.long	1315860,83887365
+.long	7105644,452991771
+.long	9605778,2751505572
+.long	5526612,352326933
+.long	13684944,872428596
+.long	7895160,503324190
+.long	7368816,469769244
+.long	14935011,4160813304
+.long	4802889,1375752786
+.long	8421504,536879136
+.long	5263440,335549460
+.long	10987431,3909151209
+.long	16185078,3170942397
+.long	7829367,3707821533
+.long	9671571,3825263844
+.long	8816262,2701173153
+.long	8618883,3758153952
+.long	2763306,2315291274
+.long	13092807,4043370993
+.long	5987163,3590379222
+.long	15329769,2046851706
+.long	15658734,3137387451
+.long	9408399,3808486371
+.long	65793,1073758272
+.long	4013373,1325420367
+.globl	Camellia_cbc_encrypt
+.type	Camellia_cbc_encrypt,@function
+.align	16
+Camellia_cbc_encrypt:
+.L_Camellia_cbc_encrypt_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	movl	28(%esp),%ecx
+	cmpl	$0,%ecx
+	je	.L016enc_out
+	pushfl
+	cld
+	movl	24(%esp),%eax
+	movl	28(%esp),%ebx
+	movl	36(%esp),%edx
+	movl	40(%esp),%ebp
+	leal	-64(%esp),%esi
+	andl	$-64,%esi
+	leal	-127(%edx),%edi
+	subl	%esi,%edi
+	negl	%edi
+	andl	$960,%edi
+	subl	%edi,%esi
+	movl	44(%esp),%edi
+	xchgl	%esi,%esp
+	addl	$4,%esp
+	movl	%esi,20(%esp)
+	movl	%eax,24(%esp)
+	movl	%ebx,28(%esp)
+	movl	%ecx,32(%esp)
+	movl	%edx,36(%esp)
+	movl	%ebp,40(%esp)
+	call	.L017pic_point
+.L017pic_point:
+	popl	%ebp
+	leal	.LCamellia_SBOX-.L017pic_point(%ebp),%ebp
+	movl	$32,%esi
+.align	4
+.L018prefetch_sbox:
+	movl	(%ebp),%eax
+	movl	32(%ebp),%ebx
+	movl	64(%ebp),%ecx
+	movl	96(%ebp),%edx
+	leal	128(%ebp),%ebp
+	decl	%esi
+	jnz	.L018prefetch_sbox
+	movl	36(%esp),%eax
+	subl	$4096,%ebp
+	movl	24(%esp),%esi
+	movl	272(%eax),%edx
+	cmpl	$0,%edi
+	je	.L019DECRYPT
+	movl	32(%esp),%ecx
+	movl	40(%esp),%edi
+	shll	$6,%edx
+	leal	(%eax,%edx,1),%edx
+	movl	%edx,16(%esp)
+	testl	$4294967280,%ecx
+	jz	.L020enc_tail
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+.align	4
+.L021enc_loop:
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	xorl	(%esi),%eax
+	xorl	4(%esi),%ebx
+	xorl	8(%esi),%ecx
+	bswap	%eax
+	xorl	12(%esi),%edx
+	bswap	%ebx
+	movl	36(%esp),%edi
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_encrypt
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	movl	%eax,(%edi)
+	bswap	%edx
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	32(%esp),%ecx
+	leal	16(%esi),%esi
+	movl	%esi,24(%esp)
+	leal	16(%edi),%edx
+	movl	%edx,28(%esp)
+	subl	$16,%ecx
+	testl	$4294967280,%ecx
+	movl	%ecx,32(%esp)
+	jnz	.L021enc_loop
+	testl	$15,%ecx
+	jnz	.L020enc_tail
+	movl	40(%esp),%esi
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	movl	20(%esp),%esp
+	popfl
+.L016enc_out:
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+	pushfl
+.align	4
+.L020enc_tail:
+	movl	%edi,%eax
+	movl	28(%esp),%edi
+	pushl	%eax
+	movl	$16,%ebx
+	subl	%ecx,%ebx
+	cmpl	%esi,%edi
+	je	.L022enc_in_place
+.align	4
+.long	2767451785
+	jmp	.L023enc_skip_in_place
+.L022enc_in_place:
+	leal	(%edi,%ecx,1),%edi
+.L023enc_skip_in_place:
+	movl	%ebx,%ecx
+	xorl	%eax,%eax
+.align	4
+.long	2868115081
+	popl	%edi
+	movl	28(%esp),%esi
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+	movl	$16,32(%esp)
+	jmp	.L021enc_loop
+.align	16
+.L019DECRYPT:
+	shll	$6,%edx
+	leal	(%eax,%edx,1),%edx
+	movl	%eax,16(%esp)
+	movl	%edx,36(%esp)
+	cmpl	28(%esp),%esi
+	je	.L024dec_in_place
+	movl	40(%esp),%edi
+	movl	%edi,44(%esp)
+.align	4
+.L025dec_loop:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	bswap	%eax
+	movl	12(%esi),%edx
+	bswap	%ebx
+	movl	36(%esp),%edi
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_decrypt
+	movl	44(%esp),%edi
+	movl	32(%esp),%esi
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	xorl	(%edi),%eax
+	bswap	%edx
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	subl	$16,%esi
+	jc	.L026dec_partial
+	movl	%esi,32(%esp)
+	movl	24(%esp),%esi
+	movl	28(%esp),%edi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	%esi,44(%esp)
+	leal	16(%esi),%esi
+	movl	%esi,24(%esp)
+	leal	16(%edi),%edi
+	movl	%edi,28(%esp)
+	jnz	.L025dec_loop
+	movl	44(%esp),%edi
+.L027dec_end:
+	movl	40(%esp),%esi
+	movl	(%edi),%eax
+	movl	4(%edi),%ebx
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	jmp	.L028dec_out
+.align	4
+.L026dec_partial:
+	leal	44(%esp),%edi
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	leal	16(%esi),%ecx
+	movl	%edi,%esi
+	movl	28(%esp),%edi
+.long	2767451785
+	movl	24(%esp),%edi
+	jmp	.L027dec_end
+.align	4
+.L024dec_in_place:
+.L029dec_in_place_loop:
+	leal	44(%esp),%edi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	bswap	%eax
+	movl	%edx,12(%edi)
+	bswap	%ebx
+	movl	36(%esp),%edi
+	bswap	%ecx
+	bswap	%edx
+	call	_x86_Camellia_decrypt
+	movl	40(%esp),%edi
+	movl	28(%esp),%esi
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	xorl	(%edi),%eax
+	bswap	%edx
+	xorl	4(%edi),%ebx
+	xorl	8(%edi),%ecx
+	xorl	12(%edi),%edx
+	movl	%eax,(%esi)
+	movl	%ebx,4(%esi)
+	movl	%ecx,8(%esi)
+	movl	%edx,12(%esi)
+	leal	16(%esi),%esi
+	movl	%esi,28(%esp)
+	leal	44(%esp),%esi
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	movl	%ecx,8(%edi)
+	movl	%edx,12(%edi)
+	movl	24(%esp),%esi
+	leal	16(%esi),%esi
+	movl	%esi,24(%esp)
+	movl	32(%esp),%ecx
+	subl	$16,%ecx
+	jc	.L030dec_in_place_partial
+	movl	%ecx,32(%esp)
+	jnz	.L029dec_in_place_loop
+	jmp	.L028dec_out
+.align	4
+.L030dec_in_place_partial:
+	movl	28(%esp),%edi
+	leal	44(%esp),%esi
+	leal	(%edi,%ecx,1),%edi
+	leal	16(%esi,%ecx,1),%esi
+	negl	%ecx
+.long	2767451785
+.align	4
+.L028dec_out:
+	movl	20(%esp),%esp
+	popfl
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	Camellia_cbc_encrypt,.-.L_Camellia_cbc_encrypt_begin
+.byte	67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54
+.byte	32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
+.byte	115,108,46,111,114,103,62,0
Index: secure/lib/libcrypto/i386/des-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/des-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/des-586.s	(working copy)
@@ -1,2698 +1,1837 @@
=2D	# $FreeBSD$
=2D
=2D
=2D
=2D
=2D
=2D
=2D	.file	"des-586.s"
=2D	.version	"01.01"
=2Dgcc2_compiled.:
+.file	"des-586.s"
 .text
=2D	.align 16
=2D.globl DES_encrypt1
=2D	.type	DES_encrypt1,@function
=2DDES_encrypt1:
=2D	pushl	%esi
=2D	pushl	%edi
+.globl	DES_SPtrans
+.type	_x86_DES_encrypt,@function
+.align	16
+_x86_DES_encrypt:
+	pushl	%ecx
=20
+	movl	(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	4(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
=2D	movl	12(%esp),	%esi
=2D	xorl	%ecx,		%ecx
=2D	pushl	%ebx
=2D	pushl	%ebp
=2D	movl	(%esi),		%eax
=2D	movl	28(%esp),	%ebx
=2D	movl	4(%esi),	%edi
+	movl	8(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	12(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
+	movl	16(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	20(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
=2D	roll	$4,		%eax
=2D	movl	%eax,		%esi
=2D	xorl	%edi,		%eax
=2D	andl	$0xf0f0f0f0,	%eax
=2D	xorl	%eax,		%esi
=2D	xorl	%eax,		%edi
+	movl	24(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	28(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	roll	$20,		%edi
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0xfff0000f,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
+	movl	32(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	36(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
=2D	roll	$14,		%eax
=2D	movl	%eax,		%edi
=2D	xorl	%esi,		%eax
=2D	andl	$0x33333333,	%eax
=2D	xorl	%eax,		%edi
=2D	xorl	%eax,		%esi
+	movl	40(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	44(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	roll	$22,		%esi
=2D	movl	%esi,		%eax
=2D	xorl	%edi,		%esi
=2D	andl	$0x03fc03fc,	%esi
=2D	xorl	%esi,		%eax
=2D	xorl	%esi,		%edi
+	movl	48(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	52(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
=2D	roll	$9,		%eax
=2D	movl	%eax,		%esi
=2D	xorl	%edi,		%eax
=2D	andl	$0xaaaaaaaa,	%eax
=2D	xorl	%eax,		%esi
=2D	xorl	%eax,		%edi
+	movl	56(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	60(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D.byte 209
=2D.byte 199=09
=2D	leal	DES_SPtrans,	%ebp
=2D	movl	24(%esp),	%ecx
=2D	cmpl	$0,		%ebx
=2D	je	.L000start_decrypt
+	movl	64(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	68(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	72(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	76(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	(%ecx),		%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	4(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	80(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	84(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	88(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	92(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	8(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	12(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	movl	96(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	100(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	104(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	108(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	16(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	20(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	112(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	116(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	120(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	124(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
+	addl	$4,%esp
+	ret
+.size	_x86_DES_encrypt,.-_x86_DES_encrypt
+.type	_x86_DES_decrypt,@function
+.align	16
+_x86_DES_decrypt:
+	pushl	%ecx
=20
=2D	movl	24(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	28(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	movl	120(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	124(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	112(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	116(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	32(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	36(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	104(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	108(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	96(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	100(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	40(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	44(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	movl	88(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	92(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	80(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	84(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	48(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	52(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	72(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	76(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	64(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	68(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	56(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	60(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	movl	56(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	60(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	48(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	52(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	64(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	68(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	40(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	44(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	32(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	36(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	72(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	76(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	movl	24(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	28(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	16(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	20(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
=20
=2D	movl	80(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	84(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	8(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	12(%ecx),%edx
+	xorl	%esi,%eax
+	xorl	%ecx,%ecx
+	xorl	%esi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%edi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%edi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%edi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%edi
+	xorl	0x700(%ebp,%ecx,1),%edi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%edi
+	xorl	0x500(%ebp,%edx,1),%edi
=20
+	movl	(%ecx),%eax
+	xorl	%ebx,%ebx
+	movl	4(%ecx),%edx
+	xorl	%edi,%eax
+	xorl	%ecx,%ecx
+	xorl	%edi,%edx
+	andl	$0xfcfcfcfc,%eax
+	andl	$0xcfcfcfcf,%edx
+	movb	%al,%bl
+	movb	%ah,%cl
+	rorl	$4,%edx
+	xorl	(%ebp,%ebx,1),%esi
+	movb	%dl,%bl
+	xorl	0x200(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	shrl	$16,%eax
+	xorl	0x100(%ebp,%ebx,1),%esi
+	movb	%ah,%bl
+	shrl	$16,%edx
+	xorl	0x300(%ebp,%ecx,1),%esi
+	movb	%dh,%cl
+	andl	$0xff,%eax
+	andl	$0xff,%edx
+	xorl	0x600(%ebp,%ebx,1),%esi
+	xorl	0x700(%ebp,%ecx,1),%esi
+	movl	(%esp),%ecx
+	xorl	0x400(%ebp,%eax,1),%esi
+	xorl	0x500(%ebp,%edx,1),%esi
+	addl	$4,%esp
+	ret
+.size	_x86_DES_decrypt,.-_x86_DES_decrypt
+.globl	DES_encrypt1
+.type	DES_encrypt1,@function
+.align	16
+DES_encrypt1:
+.L_DES_encrypt1_begin:
+	pushl	%esi
+	pushl	%edi
=20
=2D	movl	88(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	92(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=20
+	movl	12(%esp),%esi
+	xorl	%ecx,%ecx
+	pushl	%ebx
+	pushl	%ebp
+	movl	(%esi),%eax
+	movl	28(%esp),%ebx
+	movl	4(%esi),%edi
=20
=2D	movl	96(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	100(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=20
+	roll	$4,%eax
+	movl	%eax,%esi
+	xorl	%edi,%eax
+	andl	$0xf0f0f0f0,%eax
+	xorl	%eax,%esi
+	xorl	%eax,%edi
=20
=2D	movl	104(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	108(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	roll	$20,%edi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0xfff0000f,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
+	roll	$14,%eax
+	movl	%eax,%edi
+	xorl	%esi,%eax
+	andl	$0x33333333,%eax
+	xorl	%eax,%edi
+	xorl	%eax,%esi
=20
=2D	movl	112(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	116(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	roll	$22,%esi
+	movl	%esi,%eax
+	xorl	%edi,%esi
+	andl	$0x03fc03fc,%esi
+	xorl	%esi,%eax
+	xorl	%esi,%edi
=20
+	roll	$9,%eax
+	movl	%eax,%esi
+	xorl	%edi,%eax
+	andl	$0xaaaaaaaa,%eax
+	xorl	%eax,%esi
+	xorl	%eax,%edi
=20
=2D	movl	120(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	124(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D	jmp	.L001end
=2D.L000start_decrypt:
+	roll	$1,%edi
+	call	.L000pic_point
+.L000pic_point:
+	popl	%ebp
+	leal	DES_SPtrans-.L000pic_point(%ebp),%ebp
+	movl	24(%esp),%ecx
+	cmpl	$0,%ebx
+	je	.L001decrypt
+	call	_x86_DES_encrypt
+	jmp	.L002done
+.L001decrypt:
+	call	_x86_DES_decrypt
+.L002done:
=20
=20
=2D	movl	120(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	124(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	movl	20(%esp),%edx
+	rorl	$1,%esi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0xaaaaaaaa,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
+	roll	$23,%eax
+	movl	%eax,%edi
+	xorl	%esi,%eax
+	andl	$0x03fc03fc,%eax
+	xorl	%eax,%edi
+	xorl	%eax,%esi
=20
=2D	movl	112(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	116(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
+	roll	$10,%edi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0x33333333,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
+	roll	$18,%esi
+	movl	%esi,%edi
+	xorl	%eax,%esi
+	andl	$0xfff0000f,%esi
+	xorl	%esi,%edi
+	xorl	%esi,%eax
=20
=2D	movl	104(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	108(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
+	roll	$12,%edi
+	movl	%edi,%esi
+	xorl	%eax,%edi
+	andl	$0xf0f0f0f0,%edi
+	xorl	%edi,%esi
+	xorl	%edi,%eax
=20
=2D
=2D	movl	96(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	100(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	88(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	92(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	80(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	84(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	72(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	76(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	64(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	68(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	56(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	60(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	48(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	52(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	40(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	44(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	32(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	36(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	24(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	28(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	16(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	20(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	8(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	12(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	(%ecx),		%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	4(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D.L001end:
=2D
=2D
=2D	movl	20(%esp),	%edx
=2D.byte 209
=2D.byte 206=09
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0xaaaaaaaa,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
=2D
=2D	roll	$23,		%eax
=2D	movl	%eax,		%edi
=2D	xorl	%esi,		%eax
=2D	andl	$0x03fc03fc,	%eax
=2D	xorl	%eax,		%edi
=2D	xorl	%eax,		%esi
=2D
=2D	roll	$10,		%edi
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0x33333333,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
=2D
=2D	roll	$18,		%esi
=2D	movl	%esi,		%edi
=2D	xorl	%eax,		%esi
=2D	andl	$0xfff0000f,	%esi
=2D	xorl	%esi,		%edi
=2D	xorl	%esi,		%eax
=2D
=2D	roll	$12,		%edi
=2D	movl	%edi,		%esi
=2D	xorl	%eax,		%edi
=2D	andl	$0xf0f0f0f0,	%edi
=2D	xorl	%edi,		%esi
=2D	xorl	%edi,		%eax
=2D
=2D	rorl	$4,		%eax
=2D	movl	%eax,		(%edx)
=2D	movl	%esi,		4(%edx)
+	rorl	$4,%eax
+	movl	%eax,(%edx)
+	movl	%esi,4(%edx)
 	popl	%ebp
 	popl	%ebx
 	popl	%edi
 	popl	%esi
 	ret
=2D.L_DES_encrypt1_end:
=2D	.size	DES_encrypt1,.L_DES_encrypt1_end-DES_encrypt1
=2D.ident	"desasm.pl"
=2D.text
=2D	.align 16
=2D.globl DES_encrypt2
=2D	.type	DES_encrypt2,@function
+.size	DES_encrypt1,.-.L_DES_encrypt1_begin
+.globl	DES_encrypt2
+.type	DES_encrypt2,@function
+.align	16
 DES_encrypt2:
+.L_DES_encrypt2_begin:
 	pushl	%esi
 	pushl	%edi
=20
=20
=2D	movl	12(%esp),	%eax
=2D	xorl	%ecx,		%ecx
+	movl	12(%esp),%eax
+	xorl	%ecx,%ecx
 	pushl	%ebx
 	pushl	%ebp
=2D	movl	(%eax),		%esi
=2D	movl	28(%esp),	%ebx
=2D	roll	$3,		%esi
=2D	movl	4(%eax),	%edi
=2D	roll	$3,		%edi
=2D	leal	DES_SPtrans,	%ebp
=2D	movl	24(%esp),	%ecx
=2D	cmpl	$0,		%ebx
=2D	je	.L002start_decrypt
+	movl	(%eax),%esi
+	movl	28(%esp),%ebx
+	roll	$3,%esi
+	movl	4(%eax),%edi
+	roll	$3,%edi
+	call	.L003pic_point
+.L003pic_point:
+	popl	%ebp
+	leal	DES_SPtrans-.L003pic_point(%ebp),%ebp
+	movl	24(%esp),%ecx
+	cmpl	$0,%ebx
+	je	.L004decrypt
+	call	_x86_DES_encrypt
+	jmp	.L005done
+.L004decrypt:
+	call	_x86_DES_decrypt
+.L005done:
=20
=20
=2D	movl	(%ecx),		%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	4(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	8(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	12(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	16(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	20(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	24(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	28(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	32(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	36(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	40(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	44(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	48(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	52(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	56(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	60(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	64(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	68(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	72(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	76(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	80(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	84(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	88(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	92(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	96(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	100(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	104(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	108(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	112(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	116(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	120(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	124(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D	jmp	.L003end
=2D.L002start_decrypt:
=2D
=2D
=2D	movl	120(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	124(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	112(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	116(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	104(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	108(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	96(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	100(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	88(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	92(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	80(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	84(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	72(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	76(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	64(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	68(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	56(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	60(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	48(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	52(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	40(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	44(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	32(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	36(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	24(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	28(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	16(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	20(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D
=2D
=2D	movl	8(%ecx),	%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	12(%ecx),	%edx
=2D	xorl	%esi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%esi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%edi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%edi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%edi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%edi
=2D	xorl	0x700(%ebp,%ecx),%edi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%edi
=2D	xorl	0x500(%ebp,%edx),%edi
=2D
=2D
=2D	movl	(%ecx),		%eax
=2D	xorl	%ebx,		%ebx
=2D	movl	4(%ecx),	%edx
=2D	xorl	%edi,		%eax
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edi,		%edx
=2D	andl	$0xfcfcfcfc,	%eax
=2D	andl	$0xcfcfcfcf,	%edx
=2D	movb	%al,		%bl
=2D	movb	%ah,		%cl
=2D	rorl	$4,		%edx
=2D	xorl	     (%ebp,%ebx),%esi
=2D	movb	%dl,		%bl
=2D	xorl	0x200(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	shrl	$16,		%eax
=2D	xorl	0x100(%ebp,%ebx),%esi
=2D	movb	%ah,		%bl
=2D	shrl	$16,		%edx
=2D	xorl	0x300(%ebp,%ecx),%esi
=2D	movb	%dh,		%cl
=2D	andl	$0xff,		%eax
=2D	andl	$0xff,		%edx
=2D	xorl	0x600(%ebp,%ebx),%esi
=2D	xorl	0x700(%ebp,%ecx),%esi
=2D	movl	24(%esp),	%ecx
=2D	xorl	0x400(%ebp,%eax),%esi
=2D	xorl	0x500(%ebp,%edx),%esi
=2D.L003end:
=2D
=2D
=2D	rorl	$3,		%edi
=2D	movl	20(%esp),	%eax
=2D	rorl	$3,		%esi
=2D	movl	%edi,		(%eax)
=2D	movl	%esi,		4(%eax)
+	rorl	$3,%edi
+	movl	20(%esp),%eax
+	rorl	$3,%esi
+	movl	%edi,(%eax)
+	movl	%esi,4(%eax)
 	popl	%ebp
 	popl	%ebx
 	popl	%edi
 	popl	%esi
 	ret
=2D.L_DES_encrypt2_end:
=2D	.size	DES_encrypt2,.L_DES_encrypt2_end-DES_encrypt2
=2D.ident	"desasm.pl"
=2D.text
=2D	.align 16
=2D.globl DES_encrypt3
=2D	.type	DES_encrypt3,@function
+.size	DES_encrypt2,.-.L_DES_encrypt2_begin
+.globl	DES_encrypt3
+.type	DES_encrypt3,@function
+.align	16
 DES_encrypt3:
+.L_DES_encrypt3_begin:
 	pushl	%ebx
=2D	movl	8(%esp),	%ebx
+	movl	8(%esp),%ebx
 	pushl	%ebp
 	pushl	%esi
 	pushl	%edi
=20
=20
=2D	movl	(%ebx),		%edi
=2D	movl	4(%ebx),	%esi
=2D	subl	$12,		%esp
+	movl	(%ebx),%edi
+	movl	4(%ebx),%esi
+	subl	$12,%esp
=20
=20
=2D	roll	$4,		%edi
=2D	movl	%edi,		%edx
=2D	xorl	%esi,		%edi
=2D	andl	$0xf0f0f0f0,	%edi
=2D	xorl	%edi,		%edx
=2D	xorl	%edi,		%esi
+	roll	$4,%edi
+	movl	%edi,%edx
+	xorl	%esi,%edi
+	andl	$0xf0f0f0f0,%edi
+	xorl	%edi,%edx
+	xorl	%edi,%esi
=20
=2D	roll	$20,		%esi
=2D	movl	%esi,		%edi
=2D	xorl	%edx,		%esi
=2D	andl	$0xfff0000f,	%esi
=2D	xorl	%esi,		%edi
=2D	xorl	%esi,		%edx
+	roll	$20,%esi
+	movl	%esi,%edi
+	xorl	%edx,%esi
+	andl	$0xfff0000f,%esi
+	xorl	%esi,%edi
+	xorl	%esi,%edx
=20
=2D	roll	$14,		%edi
=2D	movl	%edi,		%esi
=2D	xorl	%edx,		%edi
=2D	andl	$0x33333333,	%edi
=2D	xorl	%edi,		%esi
=2D	xorl	%edi,		%edx
+	roll	$14,%edi
+	movl	%edi,%esi
+	xorl	%edx,%edi
+	andl	$0x33333333,%edi
+	xorl	%edi,%esi
+	xorl	%edi,%edx
=20
=2D	roll	$22,		%edx
=2D	movl	%edx,		%edi
=2D	xorl	%esi,		%edx
=2D	andl	$0x03fc03fc,	%edx
=2D	xorl	%edx,		%edi
=2D	xorl	%edx,		%esi
+	roll	$22,%edx
+	movl	%edx,%edi
+	xorl	%esi,%edx
+	andl	$0x03fc03fc,%edx
+	xorl	%edx,%edi
+	xorl	%edx,%esi
=20
=2D	roll	$9,		%edi
=2D	movl	%edi,		%edx
=2D	xorl	%esi,		%edi
=2D	andl	$0xaaaaaaaa,	%edi
=2D	xorl	%edi,		%edx
=2D	xorl	%edi,		%esi
+	roll	$9,%edi
+	movl	%edi,%edx
+	xorl	%esi,%edi
+	andl	$0xaaaaaaaa,%edi
+	xorl	%edi,%edx
+	xorl	%edi,%esi
=20
=2D	rorl	$3,		%edx
=2D	rorl	$2,		%esi
=2D	movl	%esi,		4(%ebx)
=2D	movl	36(%esp),	%eax
=2D	movl	%edx,		(%ebx)
=2D	movl	40(%esp),	%edi
=2D	movl	44(%esp),	%esi
=2D	movl	$1,		8(%esp)
=2D	movl	%eax,		4(%esp)
=2D	movl	%ebx,		(%esp)
=2D	call	DES_encrypt2
=2D	movl	$0,		8(%esp)
=2D	movl	%edi,		4(%esp)
=2D	movl	%ebx,		(%esp)
=2D	call	DES_encrypt2
=2D	movl	$1,		8(%esp)
=2D	movl	%esi,		4(%esp)
=2D	movl	%ebx,		(%esp)
=2D	call	DES_encrypt2
=2D	addl	$12,		%esp
=2D	movl	(%ebx),		%edi
=2D	movl	4(%ebx),	%esi
+	rorl	$3,%edx
+	rorl	$2,%esi
+	movl	%esi,4(%ebx)
+	movl	36(%esp),%eax
+	movl	%edx,(%ebx)
+	movl	40(%esp),%edi
+	movl	44(%esp),%esi
+	movl	$1,8(%esp)
+	movl	%eax,4(%esp)
+	movl	%ebx,(%esp)
+	call	.L_DES_encrypt2_begin
+	movl	$0,8(%esp)
+	movl	%edi,4(%esp)
+	movl	%ebx,(%esp)
+	call	.L_DES_encrypt2_begin
+	movl	$1,8(%esp)
+	movl	%esi,4(%esp)
+	movl	%ebx,(%esp)
+	call	.L_DES_encrypt2_begin
+	addl	$12,%esp
+	movl	(%ebx),%edi
+	movl	4(%ebx),%esi
=20
=20
=2D	roll	$2,		%esi
=2D	roll	$3,		%edi
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0xaaaaaaaa,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
+	roll	$2,%esi
+	roll	$3,%edi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0xaaaaaaaa,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
=2D	roll	$23,		%eax
=2D	movl	%eax,		%edi
=2D	xorl	%esi,		%eax
=2D	andl	$0x03fc03fc,	%eax
=2D	xorl	%eax,		%edi
=2D	xorl	%eax,		%esi
+	roll	$23,%eax
+	movl	%eax,%edi
+	xorl	%esi,%eax
+	andl	$0x03fc03fc,%eax
+	xorl	%eax,%edi
+	xorl	%eax,%esi
=20
=2D	roll	$10,		%edi
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0x33333333,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
+	roll	$10,%edi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0x33333333,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
=2D	roll	$18,		%esi
=2D	movl	%esi,		%edi
=2D	xorl	%eax,		%esi
=2D	andl	$0xfff0000f,	%esi
=2D	xorl	%esi,		%edi
=2D	xorl	%esi,		%eax
+	roll	$18,%esi
+	movl	%esi,%edi
+	xorl	%eax,%esi
+	andl	$0xfff0000f,%esi
+	xorl	%esi,%edi
+	xorl	%esi,%eax
=20
=2D	roll	$12,		%edi
=2D	movl	%edi,		%esi
=2D	xorl	%eax,		%edi
=2D	andl	$0xf0f0f0f0,	%edi
=2D	xorl	%edi,		%esi
=2D	xorl	%edi,		%eax
+	roll	$12,%edi
+	movl	%edi,%esi
+	xorl	%eax,%edi
+	andl	$0xf0f0f0f0,%edi
+	xorl	%edi,%esi
+	xorl	%edi,%eax
=20
=2D	rorl	$4,		%eax
=2D	movl	%eax,		(%ebx)
=2D	movl	%esi,		4(%ebx)
+	rorl	$4,%eax
+	movl	%eax,(%ebx)
+	movl	%esi,4(%ebx)
 	popl	%edi
 	popl	%esi
 	popl	%ebp
 	popl	%ebx
 	ret
=2D.L_DES_encrypt3_end:
=2D	.size	DES_encrypt3,.L_DES_encrypt3_end-DES_encrypt3
=2D.ident	"desasm.pl"
=2D.text
=2D	.align 16
=2D.globl DES_decrypt3
=2D	.type	DES_decrypt3,@function
+.size	DES_encrypt3,.-.L_DES_encrypt3_begin
+.globl	DES_decrypt3
+.type	DES_decrypt3,@function
+.align	16
 DES_decrypt3:
+.L_DES_decrypt3_begin:
 	pushl	%ebx
=2D	movl	8(%esp),	%ebx
+	movl	8(%esp),%ebx
 	pushl	%ebp
 	pushl	%esi
 	pushl	%edi
=20
=20
=2D	movl	(%ebx),		%edi
=2D	movl	4(%ebx),	%esi
=2D	subl	$12,		%esp
+	movl	(%ebx),%edi
+	movl	4(%ebx),%esi
+	subl	$12,%esp
=20
=20
=2D	roll	$4,		%edi
=2D	movl	%edi,		%edx
=2D	xorl	%esi,		%edi
=2D	andl	$0xf0f0f0f0,	%edi
=2D	xorl	%edi,		%edx
=2D	xorl	%edi,		%esi
+	roll	$4,%edi
+	movl	%edi,%edx
+	xorl	%esi,%edi
+	andl	$0xf0f0f0f0,%edi
+	xorl	%edi,%edx
+	xorl	%edi,%esi
=20
=2D	roll	$20,		%esi
=2D	movl	%esi,		%edi
=2D	xorl	%edx,		%esi
=2D	andl	$0xfff0000f,	%esi
=2D	xorl	%esi,		%edi
=2D	xorl	%esi,		%edx
+	roll	$20,%esi
+	movl	%esi,%edi
+	xorl	%edx,%esi
+	andl	$0xfff0000f,%esi
+	xorl	%esi,%edi
+	xorl	%esi,%edx
=20
=2D	roll	$14,		%edi
=2D	movl	%edi,		%esi
=2D	xorl	%edx,		%edi
=2D	andl	$0x33333333,	%edi
=2D	xorl	%edi,		%esi
=2D	xorl	%edi,		%edx
+	roll	$14,%edi
+	movl	%edi,%esi
+	xorl	%edx,%edi
+	andl	$0x33333333,%edi
+	xorl	%edi,%esi
+	xorl	%edi,%edx
=20
=2D	roll	$22,		%edx
=2D	movl	%edx,		%edi
=2D	xorl	%esi,		%edx
=2D	andl	$0x03fc03fc,	%edx
=2D	xorl	%edx,		%edi
=2D	xorl	%edx,		%esi
+	roll	$22,%edx
+	movl	%edx,%edi
+	xorl	%esi,%edx
+	andl	$0x03fc03fc,%edx
+	xorl	%edx,%edi
+	xorl	%edx,%esi
=20
=2D	roll	$9,		%edi
=2D	movl	%edi,		%edx
=2D	xorl	%esi,		%edi
=2D	andl	$0xaaaaaaaa,	%edi
=2D	xorl	%edi,		%edx
=2D	xorl	%edi,		%esi
+	roll	$9,%edi
+	movl	%edi,%edx
+	xorl	%esi,%edi
+	andl	$0xaaaaaaaa,%edi
+	xorl	%edi,%edx
+	xorl	%edi,%esi
=20
=2D	rorl	$3,		%edx
=2D	rorl	$2,		%esi
=2D	movl	%esi,		4(%ebx)
=2D	movl	36(%esp),	%esi
=2D	movl	%edx,		(%ebx)
=2D	movl	40(%esp),	%edi
=2D	movl	44(%esp),	%eax
=2D	movl	$0,		8(%esp)
=2D	movl	%eax,		4(%esp)
=2D	movl	%ebx,		(%esp)
=2D	call	DES_encrypt2
=2D	movl	$1,		8(%esp)
=2D	movl	%edi,		4(%esp)
=2D	movl	%ebx,		(%esp)
=2D	call	DES_encrypt2
=2D	movl	$0,		8(%esp)
=2D	movl	%esi,		4(%esp)
=2D	movl	%ebx,		(%esp)
=2D	call	DES_encrypt2
=2D	addl	$12,		%esp
=2D	movl	(%ebx),		%edi
=2D	movl	4(%ebx),	%esi
+	rorl	$3,%edx
+	rorl	$2,%esi
+	movl	%esi,4(%ebx)
+	movl	36(%esp),%esi
+	movl	%edx,(%ebx)
+	movl	40(%esp),%edi
+	movl	44(%esp),%eax
+	movl	$0,8(%esp)
+	movl	%eax,4(%esp)
+	movl	%ebx,(%esp)
+	call	.L_DES_encrypt2_begin
+	movl	$1,8(%esp)
+	movl	%edi,4(%esp)
+	movl	%ebx,(%esp)
+	call	.L_DES_encrypt2_begin
+	movl	$0,8(%esp)
+	movl	%esi,4(%esp)
+	movl	%ebx,(%esp)
+	call	.L_DES_encrypt2_begin
+	addl	$12,%esp
+	movl	(%ebx),%edi
+	movl	4(%ebx),%esi
=20
=20
=2D	roll	$2,		%esi
=2D	roll	$3,		%edi
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0xaaaaaaaa,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
+	roll	$2,%esi
+	roll	$3,%edi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0xaaaaaaaa,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
=2D	roll	$23,		%eax
=2D	movl	%eax,		%edi
=2D	xorl	%esi,		%eax
=2D	andl	$0x03fc03fc,	%eax
=2D	xorl	%eax,		%edi
=2D	xorl	%eax,		%esi
+	roll	$23,%eax
+	movl	%eax,%edi
+	xorl	%esi,%eax
+	andl	$0x03fc03fc,%eax
+	xorl	%eax,%edi
+	xorl	%eax,%esi
=20
=2D	roll	$10,		%edi
=2D	movl	%edi,		%eax
=2D	xorl	%esi,		%edi
=2D	andl	$0x33333333,	%edi
=2D	xorl	%edi,		%eax
=2D	xorl	%edi,		%esi
+	roll	$10,%edi
+	movl	%edi,%eax
+	xorl	%esi,%edi
+	andl	$0x33333333,%edi
+	xorl	%edi,%eax
+	xorl	%edi,%esi
=20
=2D	roll	$18,		%esi
=2D	movl	%esi,		%edi
=2D	xorl	%eax,		%esi
=2D	andl	$0xfff0000f,	%esi
=2D	xorl	%esi,		%edi
=2D	xorl	%esi,		%eax
+	roll	$18,%esi
+	movl	%esi,%edi
+	xorl	%eax,%esi
+	andl	$0xfff0000f,%esi
+	xorl	%esi,%edi
+	xorl	%esi,%eax
=20
=2D	roll	$12,		%edi
=2D	movl	%edi,		%esi
=2D	xorl	%eax,		%edi
=2D	andl	$0xf0f0f0f0,	%edi
=2D	xorl	%edi,		%esi
=2D	xorl	%edi,		%eax
+	roll	$12,%edi
+	movl	%edi,%esi
+	xorl	%eax,%edi
+	andl	$0xf0f0f0f0,%edi
+	xorl	%edi,%esi
+	xorl	%edi,%eax
=20
=2D	rorl	$4,		%eax
=2D	movl	%eax,		(%ebx)
=2D	movl	%esi,		4(%ebx)
+	rorl	$4,%eax
+	movl	%eax,(%ebx)
+	movl	%esi,4(%ebx)
 	popl	%edi
 	popl	%esi
 	popl	%ebp
 	popl	%ebx
 	ret
=2D.L_DES_decrypt3_end:
=2D	.size	DES_decrypt3,.L_DES_decrypt3_end-DES_decrypt3
=2D.ident	"desasm.pl"
=2D.text
=2D	.align 16
=2D.globl DES_ncbc_encrypt
=2D	.type	DES_ncbc_encrypt,@function
+.size	DES_decrypt3,.-.L_DES_decrypt3_begin
+.globl	DES_ncbc_encrypt
+.type	DES_ncbc_encrypt,@function
+.align	16
 DES_ncbc_encrypt:
+.L_DES_ncbc_encrypt_begin:
=20
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=2D	movl	28(%esp),	%ebp
+	movl	28(%esp),%ebp
=20
=2D	movl	36(%esp),	%ebx
=2D	movl	(%ebx),		%esi
=2D	movl	4(%ebx),	%edi
+	movl	36(%esp),%ebx
+	movl	(%ebx),%esi
+	movl	4(%ebx),%edi
 	pushl	%edi
 	pushl	%esi
 	pushl	%edi
 	pushl	%esi
=2D	movl	%esp,		%ebx
=2D	movl	36(%esp),	%esi
=2D	movl	40(%esp),	%edi
+	movl	%esp,%ebx
+	movl	36(%esp),%esi
+	movl	40(%esp),%edi
=20
=2D	movl	56(%esp),	%ecx
+	movl	56(%esp),%ecx
=20
 	pushl	%ecx
=20
=2D	movl	52(%esp),	%eax
+	movl	52(%esp),%eax
 	pushl	%eax
 	pushl	%ebx
=2D	cmpl	$0,		%ecx
=2D	jz	.L004decrypt
=2D	andl	$4294967288,	%ebp
=2D	movl	12(%esp),	%eax
=2D	movl	16(%esp),	%ebx
=2D	jz	.L005encrypt_finish
=2D.L006encrypt_loop:
=2D	movl	(%esi),		%ecx
=2D	movl	4(%esi),	%edx
=2D	xorl	%ecx,		%eax
=2D	xorl	%edx,		%ebx
=2D	movl	%eax,		12(%esp)
=2D	movl	%ebx,		16(%esp)
=2D	call	DES_encrypt1
=2D	movl	12(%esp),	%eax
=2D	movl	16(%esp),	%ebx
=2D	movl	%eax,		(%edi)
=2D	movl	%ebx,		4(%edi)
=2D	addl	$8,		%esi
=2D	addl	$8,		%edi
=2D	subl	$8,		%ebp
=2D	jnz	.L006encrypt_loop
=2D.L005encrypt_finish:
=2D	movl	56(%esp),	%ebp
=2D	andl	$7,		%ebp
=2D	jz	.L007finish
=2D	call	.L008PIC_point
=2D.L008PIC_point:
+	cmpl	$0,%ecx
+	jz	.L006decrypt
+	andl	$4294967288,%ebp
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	jz	.L007encrypt_finish
+.L008encrypt_loop:
+	movl	(%esi),%ecx
+	movl	4(%esi),%edx
+	xorl	%ecx,%eax
+	xorl	%edx,%ebx
+	movl	%eax,12(%esp)
+	movl	%ebx,16(%esp)
+	call	.L_DES_encrypt1_begin
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	addl	$8,%esi
+	addl	$8,%edi
+	subl	$8,%ebp
+	jnz	.L008encrypt_loop
+.L007encrypt_finish:
+	movl	56(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L009finish
+	call	.L010PIC_point
+.L010PIC_point:
 	popl	%edx
=2D	leal	.L009cbc_enc_jmp_table-.L008PIC_point(%edx),%ecx
=2D	movl	(%ecx,%ebp,4),	%ebp
=2D	addl	%edx,		%ebp
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edx,		%edx
+	leal	.L011cbc_enc_jmp_table-.L010PIC_point(%edx),%ecx
+	movl	(%ecx,%ebp,4),%ebp
+	addl	%edx,%ebp
+	xorl	%ecx,%ecx
+	xorl	%edx,%edx
 	jmp	*%ebp
=2D.L010ej7:
=2D	movb	6(%esi),	%dh
=2D	sall	$8,		%edx
=2D.L011ej6:
=2D	movb	5(%esi),	%dh
=2D.L012ej5:
=2D	movb	4(%esi),	%dl
=2D.L013ej4:
=2D	movl	(%esi),		%ecx
=2D	jmp	.L014ejend
=2D.L015ej3:
=2D	movb	2(%esi),	%ch
=2D	sall	$8,		%ecx
=2D.L016ej2:
=2D	movb	1(%esi),	%ch
=2D.L017ej1:
=2D	movb	(%esi),		%cl
=2D.L014ejend:
=2D	xorl	%ecx,		%eax
=2D	xorl	%edx,		%ebx
=2D	movl	%eax,		12(%esp)
=2D	movl	%ebx,		16(%esp)
=2D	call	DES_encrypt1
=2D	movl	12(%esp),	%eax
=2D	movl	16(%esp),	%ebx
=2D	movl	%eax,		(%edi)
=2D	movl	%ebx,		4(%edi)
=2D	jmp	.L007finish
=2D.align 16
=2D.L004decrypt:
=2D	andl	$4294967288,	%ebp
=2D	movl	20(%esp),	%eax
=2D	movl	24(%esp),	%ebx
=2D	jz	.L018decrypt_finish
=2D.L019decrypt_loop:
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D	movl	%eax,		12(%esp)
=2D	movl	%ebx,		16(%esp)
=2D	call	DES_encrypt1
=2D	movl	12(%esp),	%eax
=2D	movl	16(%esp),	%ebx
=2D	movl	20(%esp),	%ecx
=2D	movl	24(%esp),	%edx
=2D	xorl	%eax,		%ecx
=2D	xorl	%ebx,		%edx
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D	movl	%ecx,		(%edi)
=2D	movl	%edx,		4(%edi)
=2D	movl	%eax,		20(%esp)
=2D	movl	%ebx,		24(%esp)
=2D	addl	$8,		%esi
=2D	addl	$8,		%edi
=2D	subl	$8,		%ebp
=2D	jnz	.L019decrypt_loop
=2D.L018decrypt_finish:
=2D	movl	56(%esp),	%ebp
=2D	andl	$7,		%ebp
=2D	jz	.L007finish
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D	movl	%eax,		12(%esp)
=2D	movl	%ebx,		16(%esp)
=2D	call	DES_encrypt1
=2D	movl	12(%esp),	%eax
=2D	movl	16(%esp),	%ebx
=2D	movl	20(%esp),	%ecx
=2D	movl	24(%esp),	%edx
=2D	xorl	%eax,		%ecx
=2D	xorl	%ebx,		%edx
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D.L020dj7:
=2D	rorl	$16,		%edx
=2D	movb	%dl,		6(%edi)
=2D	shrl	$16,		%edx
=2D.L021dj6:
=2D	movb	%dh,		5(%edi)
=2D.L022dj5:
=2D	movb	%dl,		4(%edi)
=2D.L023dj4:
=2D	movl	%ecx,		(%edi)
=2D	jmp	.L024djend
=2D.L025dj3:
=2D	rorl	$16,		%ecx
=2D	movb	%cl,		2(%edi)
=2D	sall	$16,		%ecx
=2D.L026dj2:
=2D	movb	%ch,		1(%esi)
=2D.L027dj1:
=2D	movb	%cl,		(%esi)
=2D.L024djend:
=2D	jmp	.L007finish
=2D.align 16
=2D.L007finish:
=2D	movl	64(%esp),	%ecx
=2D	addl	$28,		%esp
=2D	movl	%eax,		(%ecx)
=2D	movl	%ebx,		4(%ecx)
+.L012ej7:
+	movb	6(%esi),%dh
+	shll	$8,%edx
+.L013ej6:
+	movb	5(%esi),%dh
+.L014ej5:
+	movb	4(%esi),%dl
+.L015ej4:
+	movl	(%esi),%ecx
+	jmp	.L016ejend
+.L017ej3:
+	movb	2(%esi),%ch
+	shll	$8,%ecx
+.L018ej2:
+	movb	1(%esi),%ch
+.L019ej1:
+	movb	(%esi),%cl
+.L016ejend:
+	xorl	%ecx,%eax
+	xorl	%edx,%ebx
+	movl	%eax,12(%esp)
+	movl	%ebx,16(%esp)
+	call	.L_DES_encrypt1_begin
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	jmp	.L009finish
+.L006decrypt:
+	andl	$4294967288,%ebp
+	movl	20(%esp),%eax
+	movl	24(%esp),%ebx
+	jz	.L020decrypt_finish
+.L021decrypt_loop:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	%eax,12(%esp)
+	movl	%ebx,16(%esp)
+	call	.L_DES_encrypt1_begin
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	movl	20(%esp),%ecx
+	movl	24(%esp),%edx
+	xorl	%eax,%ecx
+	xorl	%ebx,%edx
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	%ecx,(%edi)
+	movl	%edx,4(%edi)
+	movl	%eax,20(%esp)
+	movl	%ebx,24(%esp)
+	addl	$8,%esi
+	addl	$8,%edi
+	subl	$8,%ebp
+	jnz	.L021decrypt_loop
+.L020decrypt_finish:
+	movl	56(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L009finish
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	%eax,12(%esp)
+	movl	%ebx,16(%esp)
+	call	.L_DES_encrypt1_begin
+	movl	12(%esp),%eax
+	movl	16(%esp),%ebx
+	movl	20(%esp),%ecx
+	movl	24(%esp),%edx
+	xorl	%eax,%ecx
+	xorl	%ebx,%edx
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+.L022dj7:
+	rorl	$16,%edx
+	movb	%dl,6(%edi)
+	shrl	$16,%edx
+.L023dj6:
+	movb	%dh,5(%edi)
+.L024dj5:
+	movb	%dl,4(%edi)
+.L025dj4:
+	movl	%ecx,(%edi)
+	jmp	.L026djend
+.L027dj3:
+	rorl	$16,%ecx
+	movb	%cl,2(%edi)
+	shll	$16,%ecx
+.L028dj2:
+	movb	%ch,1(%esi)
+.L029dj1:
+	movb	%cl,(%esi)
+.L026djend:
+	jmp	.L009finish
+.L009finish:
+	movl	64(%esp),%ecx
+	addl	$28,%esp
+	movl	%eax,(%ecx)
+	movl	%ebx,4(%ecx)
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.align 16
=2D.L009cbc_enc_jmp_table:
=2D	.long 0
=2D	.long .L017ej1-.L008PIC_point
=2D	.long .L016ej2-.L008PIC_point
=2D	.long .L015ej3-.L008PIC_point
=2D	.long .L013ej4-.L008PIC_point
=2D	.long .L012ej5-.L008PIC_point
=2D	.long .L011ej6-.L008PIC_point
=2D	.long .L010ej7-.L008PIC_point
=2D.L_DES_ncbc_encrypt_end:
=2D	.size	DES_ncbc_encrypt,.L_DES_ncbc_encrypt_end-DES_ncbc_encrypt
=2D.ident	"desasm.pl"
=2D.text
=2D	.align 16
=2D.globl DES_ede3_cbc_encrypt
=2D	.type	DES_ede3_cbc_encrypt,@function
+.align	64
+.L011cbc_enc_jmp_table:
+.long	0
+.long	.L019ej1-.L010PIC_point
+.long	.L018ej2-.L010PIC_point
+.long	.L017ej3-.L010PIC_point
+.long	.L015ej4-.L010PIC_point
+.long	.L014ej5-.L010PIC_point
+.long	.L013ej6-.L010PIC_point
+.long	.L012ej7-.L010PIC_point
+.align	64
+.size	DES_ncbc_encrypt,.-.L_DES_ncbc_encrypt_begin
+.globl	DES_ede3_cbc_encrypt
+.type	DES_ede3_cbc_encrypt,@function
+.align	16
 DES_ede3_cbc_encrypt:
+.L_DES_ede3_cbc_encrypt_begin:
=20
 	pushl	%ebp
 	pushl	%ebx
 	pushl	%esi
 	pushl	%edi
=2D	movl	28(%esp),	%ebp
+	movl	28(%esp),%ebp
=20
=2D	movl	44(%esp),	%ebx
=2D	movl	(%ebx),		%esi
=2D	movl	4(%ebx),	%edi
+	movl	44(%esp),%ebx
+	movl	(%ebx),%esi
+	movl	4(%ebx),%edi
 	pushl	%edi
 	pushl	%esi
 	pushl	%edi
 	pushl	%esi
=2D	movl	%esp,		%ebx
=2D	movl	36(%esp),	%esi
=2D	movl	40(%esp),	%edi
+	movl	%esp,%ebx
+	movl	36(%esp),%esi
+	movl	40(%esp),%edi
=20
=2D	movl	64(%esp),	%ecx
+	movl	64(%esp),%ecx
=20
=2D	movl	56(%esp),	%eax
+	movl	56(%esp),%eax
 	pushl	%eax
=20
=2D	movl	56(%esp),	%eax
+	movl	56(%esp),%eax
 	pushl	%eax
=20
=2D	movl	56(%esp),	%eax
+	movl	56(%esp),%eax
 	pushl	%eax
 	pushl	%ebx
=2D	cmpl	$0,		%ecx
=2D	jz	.L028decrypt
=2D	andl	$4294967288,	%ebp
=2D	movl	16(%esp),	%eax
=2D	movl	20(%esp),	%ebx
=2D	jz	.L029encrypt_finish
=2D.L030encrypt_loop:
=2D	movl	(%esi),		%ecx
=2D	movl	4(%esi),	%edx
=2D	xorl	%ecx,		%eax
=2D	xorl	%edx,		%ebx
=2D	movl	%eax,		16(%esp)
=2D	movl	%ebx,		20(%esp)
=2D	call	DES_encrypt3
=2D	movl	16(%esp),	%eax
=2D	movl	20(%esp),	%ebx
=2D	movl	%eax,		(%edi)
=2D	movl	%ebx,		4(%edi)
=2D	addl	$8,		%esi
=2D	addl	$8,		%edi
=2D	subl	$8,		%ebp
=2D	jnz	.L030encrypt_loop
=2D.L029encrypt_finish:
=2D	movl	60(%esp),	%ebp
=2D	andl	$7,		%ebp
=2D	jz	.L031finish
=2D	call	.L032PIC_point
=2D.L032PIC_point:
+	cmpl	$0,%ecx
+	jz	.L030decrypt
+	andl	$4294967288,%ebp
+	movl	16(%esp),%eax
+	movl	20(%esp),%ebx
+	jz	.L031encrypt_finish
+.L032encrypt_loop:
+	movl	(%esi),%ecx
+	movl	4(%esi),%edx
+	xorl	%ecx,%eax
+	xorl	%edx,%ebx
+	movl	%eax,16(%esp)
+	movl	%ebx,20(%esp)
+	call	.L_DES_encrypt3_begin
+	movl	16(%esp),%eax
+	movl	20(%esp),%ebx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	addl	$8,%esi
+	addl	$8,%edi
+	subl	$8,%ebp
+	jnz	.L032encrypt_loop
+.L031encrypt_finish:
+	movl	60(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L033finish
+	call	.L034PIC_point
+.L034PIC_point:
 	popl	%edx
=2D	leal	.L033cbc_enc_jmp_table-.L032PIC_point(%edx),%ecx
=2D	movl	(%ecx,%ebp,4),	%ebp
=2D	addl	%edx,		%ebp
=2D	xorl	%ecx,		%ecx
=2D	xorl	%edx,		%edx
+	leal	.L035cbc_enc_jmp_table-.L034PIC_point(%edx),%ecx
+	movl	(%ecx,%ebp,4),%ebp
+	addl	%edx,%ebp
+	xorl	%ecx,%ecx
+	xorl	%edx,%edx
 	jmp	*%ebp
=2D.L034ej7:
=2D	movb	6(%esi),	%dh
=2D	sall	$8,		%edx
=2D.L035ej6:
=2D	movb	5(%esi),	%dh
=2D.L036ej5:
=2D	movb	4(%esi),	%dl
=2D.L037ej4:
=2D	movl	(%esi),		%ecx
=2D	jmp	.L038ejend
=2D.L039ej3:
=2D	movb	2(%esi),	%ch
=2D	sall	$8,		%ecx
=2D.L040ej2:
=2D	movb	1(%esi),	%ch
=2D.L041ej1:
=2D	movb	(%esi),		%cl
=2D.L038ejend:
=2D	xorl	%ecx,		%eax
=2D	xorl	%edx,		%ebx
=2D	movl	%eax,		16(%esp)
=2D	movl	%ebx,		20(%esp)
=2D	call	DES_encrypt3
=2D	movl	16(%esp),	%eax
=2D	movl	20(%esp),	%ebx
=2D	movl	%eax,		(%edi)
=2D	movl	%ebx,		4(%edi)
=2D	jmp	.L031finish
=2D.align 16
=2D.L028decrypt:
=2D	andl	$4294967288,	%ebp
=2D	movl	24(%esp),	%eax
=2D	movl	28(%esp),	%ebx
=2D	jz	.L042decrypt_finish
=2D.L043decrypt_loop:
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D	movl	%eax,		16(%esp)
=2D	movl	%ebx,		20(%esp)
=2D	call	DES_decrypt3
=2D	movl	16(%esp),	%eax
=2D	movl	20(%esp),	%ebx
=2D	movl	24(%esp),	%ecx
=2D	movl	28(%esp),	%edx
=2D	xorl	%eax,		%ecx
=2D	xorl	%ebx,		%edx
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D	movl	%ecx,		(%edi)
=2D	movl	%edx,		4(%edi)
=2D	movl	%eax,		24(%esp)
=2D	movl	%ebx,		28(%esp)
=2D	addl	$8,		%esi
=2D	addl	$8,		%edi
=2D	subl	$8,		%ebp
=2D	jnz	.L043decrypt_loop
=2D.L042decrypt_finish:
=2D	movl	60(%esp),	%ebp
=2D	andl	$7,		%ebp
=2D	jz	.L031finish
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D	movl	%eax,		16(%esp)
=2D	movl	%ebx,		20(%esp)
=2D	call	DES_decrypt3
=2D	movl	16(%esp),	%eax
=2D	movl	20(%esp),	%ebx
=2D	movl	24(%esp),	%ecx
=2D	movl	28(%esp),	%edx
=2D	xorl	%eax,		%ecx
=2D	xorl	%ebx,		%edx
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ebx
=2D.L044dj7:
=2D	rorl	$16,		%edx
=2D	movb	%dl,		6(%edi)
=2D	shrl	$16,		%edx
=2D.L045dj6:
=2D	movb	%dh,		5(%edi)
=2D.L046dj5:
=2D	movb	%dl,		4(%edi)
=2D.L047dj4:
=2D	movl	%ecx,		(%edi)
=2D	jmp	.L048djend
=2D.L049dj3:
=2D	rorl	$16,		%ecx
=2D	movb	%cl,		2(%edi)
=2D	sall	$16,		%ecx
=2D.L050dj2:
=2D	movb	%ch,		1(%esi)
=2D.L051dj1:
=2D	movb	%cl,		(%esi)
=2D.L048djend:
=2D	jmp	.L031finish
=2D.align 16
=2D.L031finish:
=2D	movl	76(%esp),	%ecx
=2D	addl	$32,		%esp
=2D	movl	%eax,		(%ecx)
=2D	movl	%ebx,		4(%ecx)
+.L036ej7:
+	movb	6(%esi),%dh
+	shll	$8,%edx
+.L037ej6:
+	movb	5(%esi),%dh
+.L038ej5:
+	movb	4(%esi),%dl
+.L039ej4:
+	movl	(%esi),%ecx
+	jmp	.L040ejend
+.L041ej3:
+	movb	2(%esi),%ch
+	shll	$8,%ecx
+.L042ej2:
+	movb	1(%esi),%ch
+.L043ej1:
+	movb	(%esi),%cl
+.L040ejend:
+	xorl	%ecx,%eax
+	xorl	%edx,%ebx
+	movl	%eax,16(%esp)
+	movl	%ebx,20(%esp)
+	call	.L_DES_encrypt3_begin
+	movl	16(%esp),%eax
+	movl	20(%esp),%ebx
+	movl	%eax,(%edi)
+	movl	%ebx,4(%edi)
+	jmp	.L033finish
+.L030decrypt:
+	andl	$4294967288,%ebp
+	movl	24(%esp),%eax
+	movl	28(%esp),%ebx
+	jz	.L044decrypt_finish
+.L045decrypt_loop:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	%eax,16(%esp)
+	movl	%ebx,20(%esp)
+	call	.L_DES_decrypt3_begin
+	movl	16(%esp),%eax
+	movl	20(%esp),%ebx
+	movl	24(%esp),%ecx
+	movl	28(%esp),%edx
+	xorl	%eax,%ecx
+	xorl	%ebx,%edx
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	%ecx,(%edi)
+	movl	%edx,4(%edi)
+	movl	%eax,24(%esp)
+	movl	%ebx,28(%esp)
+	addl	$8,%esi
+	addl	$8,%edi
+	subl	$8,%ebp
+	jnz	.L045decrypt_loop
+.L044decrypt_finish:
+	movl	60(%esp),%ebp
+	andl	$7,%ebp
+	jz	.L033finish
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	%eax,16(%esp)
+	movl	%ebx,20(%esp)
+	call	.L_DES_decrypt3_begin
+	movl	16(%esp),%eax
+	movl	20(%esp),%ebx
+	movl	24(%esp),%ecx
+	movl	28(%esp),%edx
+	xorl	%eax,%ecx
+	xorl	%ebx,%edx
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+.L046dj7:
+	rorl	$16,%edx
+	movb	%dl,6(%edi)
+	shrl	$16,%edx
+.L047dj6:
+	movb	%dh,5(%edi)
+.L048dj5:
+	movb	%dl,4(%edi)
+.L049dj4:
+	movl	%ecx,(%edi)
+	jmp	.L050djend
+.L051dj3:
+	rorl	$16,%ecx
+	movb	%cl,2(%edi)
+	shll	$16,%ecx
+.L052dj2:
+	movb	%ch,1(%esi)
+.L053dj1:
+	movb	%cl,(%esi)
+.L050djend:
+	jmp	.L033finish
+.L033finish:
+	movl	76(%esp),%ecx
+	addl	$32,%esp
+	movl	%eax,(%ecx)
+	movl	%ebx,4(%ecx)
 	popl	%edi
 	popl	%esi
 	popl	%ebx
 	popl	%ebp
 	ret
=2D.align 16
=2D.L033cbc_enc_jmp_table:
=2D	.long 0
=2D	.long .L041ej1-.L032PIC_point
=2D	.long .L040ej2-.L032PIC_point
=2D	.long .L039ej3-.L032PIC_point
=2D	.long .L037ej4-.L032PIC_point
=2D	.long .L036ej5-.L032PIC_point
=2D	.long .L035ej6-.L032PIC_point
=2D	.long .L034ej7-.L032PIC_point
=2D.L_DES_ede3_cbc_encrypt_end:
=2D	.size	DES_ede3_cbc_encrypt,.L_DES_ede3_cbc_encrypt_end-DES_ede3_cbc_enc=
rypt
=2D.ident	"desasm.pl"
+.align	64
+.L035cbc_enc_jmp_table:
+.long	0
+.long	.L043ej1-.L034PIC_point
+.long	.L042ej2-.L034PIC_point
+.long	.L041ej3-.L034PIC_point
+.long	.L039ej4-.L034PIC_point
+.long	.L038ej5-.L034PIC_point
+.long	.L037ej6-.L034PIC_point
+.long	.L036ej7-.L034PIC_point
+.align	64
+.size	DES_ede3_cbc_encrypt,.-.L_DES_ede3_cbc_encrypt_begin
+.align	64
+DES_SPtrans:
+.long	34080768,524288,33554434,34080770
+.long	33554432,526338,524290,33554434
+.long	526338,34080768,34078720,2050
+.long	33556482,33554432,0,524290
+.long	524288,2,33556480,526336
+.long	34080770,34078720,2050,33556480
+.long	2,2048,526336,34078722
+.long	2048,33556482,34078722,0
+.long	0,34080770,33556480,524290
+.long	34080768,524288,2050,33556480
+.long	34078722,2048,526336,33554434
+.long	526338,2,33554434,34078720
+.long	34080770,526336,34078720,33556482
+.long	33554432,2050,524290,0
+.long	524288,33554432,33556482,34080768
+.long	2,34078722,2048,526338
+.long	1074823184,0,1081344,1074790400
+.long	1073741840,32784,1073774592,1081344
+.long	32768,1074790416,16,1073774592
+.long	1048592,1074823168,1074790400,16
+.long	1048576,1073774608,1074790416,32768
+.long	1081360,1073741824,0,1048592
+.long	1073774608,1081360,1074823168,1073741840
+.long	1073741824,1048576,32784,1074823184
+.long	1048592,1074823168,1073774592,1081360
+.long	1074823184,1048592,1073741840,0
+.long	1073741824,32784,1048576,1074790416
+.long	32768,1073741824,1081360,1073774608
+.long	1074823168,32768,0,1073741840
+.long	16,1074823184,1081344,1074790400
+.long	1074790416,1048576,32784,1073774592
+.long	1073774608,16,1074790400,1081344
+.long	67108865,67371264,256,67109121
+.long	262145,67108864,67109121,262400
+.long	67109120,262144,67371008,1
+.long	67371265,257,1,67371009
+.long	0,262145,67371264,256
+.long	257,67371265,262144,67108865
+.long	67371009,67109120,262401,67371008
+.long	262400,0,67108864,262401
+.long	67371264,256,1,262144
+.long	257,262145,67371008,67109121
+.long	0,67371264,262400,67371009
+.long	262145,67108864,67371265,1
+.long	262401,67108865,67108864,67371265
+.long	262144,67109120,67109121,262400
+.long	67109120,0,67371009,257
+.long	67108865,262401,256,67371008
+.long	4198408,268439552,8,272633864
+.long	0,272629760,268439560,4194312
+.long	272633856,268435464,268435456,4104
+.long	268435464,4198408,4194304,268435456
+.long	272629768,4198400,4096,8
+.long	4198400,268439560,272629760,4096
+.long	4104,0,4194312,272633856
+.long	268439552,272629768,272633864,4194304
+.long	272629768,4104,4194304,268435464
+.long	4198400,268439552,8,272629760
+.long	268439560,0,4096,4194312
+.long	0,272629768,272633856,4096
+.long	268435456,272633864,4198408,4194304
+.long	272633864,8,268439552,4198408
+.long	4194312,4198400,272629760,268439560
+.long	4104,268435456,268435464,272633856
+.long	134217728,65536,1024,134284320
+.long	134283296,134218752,66592,134283264
+.long	65536,32,134217760,66560
+.long	134218784,134283296,134284288,0
+.long	66560,134217728,65568,1056
+.long	134218752,66592,0,134217760
+.long	32,134218784,134284320,65568
+.long	134283264,1024,1056,134284288
+.long	134284288,134218784,65568,134283264
+.long	65536,32,134217760,134218752
+.long	134217728,66560,134284320,0
+.long	66592,134217728,1024,65568
+.long	134218784,1024,0,134284320
+.long	134283296,134284288,1056,65536
+.long	66560,134283296,134218752,1056
+.long	32,66592,134283264,134217760
+.long	2147483712,2097216,0,2149588992
+.long	2097216,8192,2147491904,2097152
+.long	8256,2149589056,2105344,2147483648
+.long	2147491840,2147483712,2149580800,2105408
+.long	2097152,2147491904,2149580864,0
+.long	8192,64,2149588992,2149580864
+.long	2149589056,2149580800,2147483648,8256
+.long	64,2105344,2105408,2147491840
+.long	8256,2147483648,2147491840,2105408
+.long	2149588992,2097216,0,2147491840
+.long	2147483648,8192,2149580864,2097152
+.long	2097216,2149589056,2105344,64
+.long	2149589056,2105344,2097152,2147491904
+.long	2147483712,2149580800,2105408,0
+.long	8192,2147483712,2147491904,2149588992
+.long	2149580800,8256,64,2149580864
+.long	16384,512,16777728,16777220
+.long	16794116,16388,16896,0
+.long	16777216,16777732,516,16793600
+.long	4,16794112,16793600,516
+.long	16777732,16384,16388,16794116
+.long	0,16777728,16777220,16896
+.long	16793604,16900,16794112,4
+.long	16900,16793604,512,16777216
+.long	16900,16793600,16793604,516
+.long	16384,512,16777216,16793604
+.long	16777732,16900,16896,0
+.long	512,16777220,4,16777728
+.long	0,16777732,16777728,16896
+.long	516,16384,16794116,16777216
+.long	16794112,4,16388,16794116
+.long	16777220,16794112,16793600,16388
+.long	545259648,545390592,131200,0
+.long	537001984,8388736,545259520,545390720
+.long	128,536870912,8519680,131200
+.long	8519808,537002112,536871040,545259520
+.long	131072,8519808,8388736,537001984
+.long	545390720,536871040,0,8519680
+.long	536870912,8388608,537002112,545259648
+.long	8388608,131072,545390592,128
+.long	8388608,131072,536871040,545390720
+.long	131200,536870912,0,8519680
+.long	545259648,537002112,537001984,8388736
+.long	545390592,128,8388736,537001984
+.long	545390720,8388608,545259520,536871040
+.long	8519680,131200,537002112,545259520
+.long	128,545390592,8519808,0
+.long	536870912,545259648,131072,8519808
Index: secure/lib/libcrypto/i386/mont-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/mont-586.s	(revision 0)
+++ secure/lib/libcrypto/i386/mont-586.s	(revision 0)
@@ -0,0 +1,336 @@
+.file	"x86-mont.s"
+.text
+.globl	bn_mul_mont
+.type	bn_mul_mont,@function
+.align	16
+bn_mul_mont:
+.L_bn_mul_mont_begin:
+	pushl	%ebp
+	pushl	%ebx
+	pushl	%esi
+	pushl	%edi
+	xorl	%eax,%eax
+	movl	40(%esp),%edi
+	cmpl	$4,%edi
+	jl	.L000just_leave
+	leal	20(%esp),%esi
+	leal	24(%esp),%edx
+	movl	%esp,%ebp
+	addl	$2,%edi
+	negl	%edi
+	leal	-32(%esp,%edi,4),%esp
+	negl	%edi
+	movl	%esp,%eax
+	subl	%edx,%eax
+	andl	$2047,%eax
+	subl	%eax,%esp
+	xorl	%esp,%edx
+	andl	$2048,%edx
+	xorl	$2048,%edx
+	subl	%edx,%esp
+	andl	$-64,%esp
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	movl	16(%esi),%esi
+	movl	(%esi),%esi
+	movl	%eax,4(%esp)
+	movl	%ebx,8(%esp)
+	movl	%ecx,12(%esp)
+	movl	%edx,16(%esp)
+	movl	%esi,20(%esp)
+	leal	-3(%edi),%ebx
+	movl	%ebp,24(%esp)
+	movl	8(%esp),%esi
+	leal	1(%ebx),%ebp
+	movl	12(%esp),%edi
+	xorl	%ecx,%ecx
+	movl	%esi,%edx
+	andl	$1,%ebp
+	subl	%edi,%edx
+	leal	4(%edi,%ebx,4),%eax
+	orl	%edx,%ebp
+	movl	(%edi),%edi
+	jz	.L001bn_sqr_mont
+	movl	%eax,28(%esp)
+	movl	(%esi),%eax
+	xorl	%edx,%edx
+.align	16
+.L002mull:
+	movl	%edx,%ebp
+	mull	%edi
+	addl	%eax,%ebp
+	leal	1(%ecx),%ecx
+	adcl	$0,%edx
+	movl	(%esi,%ecx,4),%eax
+	cmpl	%ebx,%ecx
+	movl	%ebp,28(%esp,%ecx,4)
+	jl	.L002mull
+	movl	%edx,%ebp
+	mull	%edi
+	movl	20(%esp),%edi
+	addl	%ebp,%eax
+	movl	16(%esp),%esi
+	adcl	$0,%edx
+	imull	32(%esp),%edi
+	movl	%eax,32(%esp,%ebx,4)
+	xorl	%ecx,%ecx
+	movl	%edx,36(%esp,%ebx,4)
+	movl	%ecx,40(%esp,%ebx,4)
+	movl	(%esi),%eax
+	mull	%edi
+	addl	32(%esp),%eax
+	movl	4(%esi),%eax
+	adcl	$0,%edx
+	incl	%ecx
+	jmp	.L0032ndmadd
+.align	16
+.L0041stmadd:
+	movl	%edx,%ebp
+	mull	%edi
+	addl	32(%esp,%ecx,4),%ebp
+	leal	1(%ecx),%ecx
+	adcl	$0,%edx
+	addl	%eax,%ebp
+	movl	(%esi,%ecx,4),%eax
+	adcl	$0,%edx
+	cmpl	%ebx,%ecx
+	movl	%ebp,28(%esp,%ecx,4)
+	jl	.L0041stmadd
+	movl	%edx,%ebp
+	mull	%edi
+	addl	32(%esp,%ebx,4),%eax
+	movl	20(%esp),%edi
+	adcl	$0,%edx
+	movl	16(%esp),%esi
+	addl	%eax,%ebp
+	adcl	$0,%edx
+	imull	32(%esp),%edi
+	xorl	%ecx,%ecx
+	addl	36(%esp,%ebx,4),%edx
+	movl	%ebp,32(%esp,%ebx,4)
+	adcl	$0,%ecx
+	movl	(%esi),%eax
+	movl	%edx,36(%esp,%ebx,4)
+	movl	%ecx,40(%esp,%ebx,4)
+	mull	%edi
+	addl	32(%esp),%eax
+	movl	4(%esi),%eax
+	adcl	$0,%edx
+	movl	$1,%ecx
+.align	16
+.L0032ndmadd:
+	movl	%edx,%ebp
+	mull	%edi
+	addl	32(%esp,%ecx,4),%ebp
+	leal	1(%ecx),%ecx
+	adcl	$0,%edx
+	addl	%eax,%ebp
+	movl	(%esi,%ecx,4),%eax
+	adcl	$0,%edx
+	cmpl	%ebx,%ecx
+	movl	%ebp,24(%esp,%ecx,4)
+	jl	.L0032ndmadd
+	movl	%edx,%ebp
+	mull	%edi
+	addl	32(%esp,%ebx,4),%ebp
+	adcl	$0,%edx
+	addl	%eax,%ebp
+	adcl	$0,%edx
+	movl	%ebp,28(%esp,%ebx,4)
+	xorl	%eax,%eax
+	movl	12(%esp),%ecx
+	addl	36(%esp,%ebx,4),%edx
+	adcl	40(%esp,%ebx,4),%eax
+	leal	4(%ecx),%ecx
+	movl	%edx,32(%esp,%ebx,4)
+	cmpl	28(%esp),%ecx
+	movl	%eax,36(%esp,%ebx,4)
+	je	.L005common_tail
+	movl	(%ecx),%edi
+	movl	8(%esp),%esi
+	movl	%ecx,12(%esp)
+	xorl	%ecx,%ecx
+	xorl	%edx,%edx
+	movl	(%esi),%eax
+	jmp	.L0041stmadd
+.align	16
+.L001bn_sqr_mont:
+	movl	%ebx,(%esp)
+	movl	%ecx,12(%esp)
+	movl	%edi,%eax
+	mull	%edi
+	movl	%eax,32(%esp)
+	movl	%edx,%ebx
+	shrl	$1,%edx
+	andl	$1,%ebx
+	incl	%ecx
+.align	16
+.L006sqr:
+	movl	(%esi,%ecx,4),%eax
+	movl	%edx,%ebp
+	mull	%edi
+	addl	%ebp,%eax
+	leal	1(%ecx),%ecx
+	adcl	$0,%edx
+	leal	(%ebx,%eax,2),%ebp
+	shrl	$31,%eax
+	cmpl	(%esp),%ecx
+	movl	%eax,%ebx
+	movl	%ebp,28(%esp,%ecx,4)
+	jl	.L006sqr
+	movl	(%esi,%ecx,4),%eax
+	movl	%edx,%ebp
+	mull	%edi
+	addl	%ebp,%eax
+	movl	20(%esp),%edi
+	adcl	$0,%edx
+	movl	16(%esp),%esi
+	leal	(%ebx,%eax,2),%ebp
+	imull	32(%esp),%edi
+	shrl	$31,%eax
+	movl	%ebp,32(%esp,%ecx,4)
+	leal	(%eax,%edx,2),%ebp
+	movl	(%esi),%eax
+	shrl	$31,%edx
+	movl	%ebp,36(%esp,%ecx,4)
+	movl	%edx,40(%esp,%ecx,4)
+	mull	%edi
+	addl	32(%esp),%eax
+	movl	%ecx,%ebx
+	adcl	$0,%edx
+	movl	4(%esi),%eax
+	movl	$1,%ecx
+.align	16
+.L0073rdmadd:
+	movl	%edx,%ebp
+	mull	%edi
+	addl	32(%esp,%ecx,4),%ebp
+	adcl	$0,%edx
+	addl	%eax,%ebp
+	movl	4(%esi,%ecx,4),%eax
+	adcl	$0,%edx
+	movl	%ebp,28(%esp,%ecx,4)
+	movl	%edx,%ebp
+	mull	%edi
+	addl	36(%esp,%ecx,4),%ebp
+	leal	2(%ecx),%ecx
+	adcl	$0,%edx
+	addl	%eax,%ebp
+	movl	(%esi,%ecx,4),%eax
+	adcl	$0,%edx
+	cmpl	%ebx,%ecx
+	movl	%ebp,24(%esp,%ecx,4)
+	jl	.L0073rdmadd
+	movl	%edx,%ebp
+	mull	%edi
+	addl	32(%esp,%ebx,4),%ebp
+	adcl	$0,%edx
+	addl	%eax,%ebp
+	adcl	$0,%edx
+	movl	%ebp,28(%esp,%ebx,4)
+	movl	12(%esp),%ecx
+	xorl	%eax,%eax
+	movl	8(%esp),%esi
+	addl	36(%esp,%ebx,4),%edx
+	adcl	40(%esp,%ebx,4),%eax
+	movl	%edx,32(%esp,%ebx,4)
+	cmpl	%ebx,%ecx
+	movl	%eax,36(%esp,%ebx,4)
+	je	.L005common_tail
+	movl	4(%esi,%ecx,4),%edi
+	leal	1(%ecx),%ecx
+	movl	%edi,%eax
+	movl	%ecx,12(%esp)
+	mull	%edi
+	addl	32(%esp,%ecx,4),%eax
+	adcl	$0,%edx
+	movl	%eax,32(%esp,%ecx,4)
+	xorl	%ebp,%ebp
+	cmpl	%ebx,%ecx
+	leal	1(%ecx),%ecx
+	je	.L008sqrlast
+	movl	%edx,%ebx
+	shrl	$1,%edx
+	andl	$1,%ebx
+.align	16
+.L009sqradd:
+	movl	(%esi,%ecx,4),%eax
+	movl	%edx,%ebp
+	mull	%edi
+	addl	%ebp,%eax
+	leal	(%eax,%eax,1),%ebp
+	adcl	$0,%edx
+	shrl	$31,%eax
+	addl	32(%esp,%ecx,4),%ebp
+	leal	1(%ecx),%ecx
+	adcl	$0,%eax
+	addl	%ebx,%ebp
+	adcl	$0,%eax
+	cmpl	(%esp),%ecx
+	movl	%ebp,28(%esp,%ecx,4)
+	movl	%eax,%ebx
+	jle	.L009sqradd
+	movl	%edx,%ebp
+	leal	(%ebx,%edx,2),%edx
+	shrl	$31,%ebp
+.L008sqrlast:
+	movl	20(%esp),%edi
+	movl	16(%esp),%esi
+	imull	32(%esp),%edi
+	addl	32(%esp,%ecx,4),%edx
+	movl	(%esi),%eax
+	adcl	$0,%ebp
+	movl	%edx,32(%esp,%ecx,4)
+	movl	%ebp,36(%esp,%ecx,4)
+	mull	%edi
+	addl	32(%esp),%eax
+	leal	-1(%ecx),%ebx
+	adcl	$0,%edx
+	movl	$1,%ecx
+	movl	4(%esi),%eax
+	jmp	.L0073rdmadd
+.align	16
+.L005common_tail:
+	movl	16(%esp),%ebp
+	movl	4(%esp),%edi
+	leal	32(%esp),%esi
+	movl	(%esi),%eax
+	movl	%ebx,%ecx
+	xorl	%edx,%edx
+.align	16
+.L010sub:
+	sbbl	(%ebp,%edx,4),%eax
+	movl	%eax,(%edi,%edx,4)
+	decl	%ecx
+	movl	4(%esi,%edx,4),%eax
+	leal	1(%edx),%edx
+	jge	.L010sub
+	sbbl	$0,%eax
+	andl	%eax,%esi
+	notl	%eax
+	movl	%edi,%ebp
+	andl	%eax,%ebp
+	orl	%ebp,%esi
+.align	16
+.L011copy:
+	movl	(%esi,%ebx,4),%eax
+	movl	%eax,(%edi,%ebx,4)
+	movl	%ecx,32(%esp,%ebx,4)
+	decl	%ebx
+	jge	.L011copy
+	movl	24(%esp),%esp
+	movl	$1,%eax
+.L000just_leave:
+	popl	%edi
+	popl	%esi
+	popl	%ebx
+	popl	%ebp
+	ret
+.size	bn_mul_mont,.-.L_bn_mul_mont_begin
+.byte	77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105
+.byte	112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56
+.byte	54,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121
+.byte	32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46
+.byte	111,114,103,62,0
Index: secure/lib/libcrypto/i386/rmd-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/rmd-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/rmd-586.s	(working copy)
@@ -1,1975 +1,1965 @@
=2D	# $FreeBSD$
=2D
=2D
=2D
=2D
=2D
=2D
=2D	.file	"/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/rip=
emd/asm/rmd-586.s"
=2D	.version	"01.01"
=2Dgcc2_compiled.:
+.file	"rmd-586.s"
 .text
=2D	.align 16
=2D.globl ripemd160_block_asm_host_order
=2D	.type	ripemd160_block_asm_host_order,@function
=2Dripemd160_block_asm_host_order:
=2D	movl	4(%esp),	%edx
=2D	movl	8(%esp),	%eax
+.globl	ripemd160_block_asm_data_order
+.type	ripemd160_block_asm_data_order,@function
+.align	16
+ripemd160_block_asm_data_order:
+.L_ripemd160_block_asm_data_order_begin:
+	movl	4(%esp),%edx
+	movl	8(%esp),%eax
 	pushl	%esi
=2D	movl	(%edx),		%ecx
+	movl	(%edx),%ecx
 	pushl	%edi
=2D	movl	4(%edx),	%esi
+	movl	4(%edx),%esi
 	pushl	%ebp
=2D	movl	8(%edx),	%edi
+	movl	8(%edx),%edi
 	pushl	%ebx
=2D	subl	$108,		%esp
+	subl	$108,%esp
 .L000start:
=20
=2D	movl	(%eax),		%ebx
=2D	movl	4(%eax),	%ebp
=2D	movl	%ebx,		(%esp)
=2D	movl	%ebp,		4(%esp)
=2D	movl	8(%eax),	%ebx
=2D	movl	12(%eax),	%ebp
=2D	movl	%ebx,		8(%esp)
=2D	movl	%ebp,		12(%esp)
=2D	movl	16(%eax),	%ebx
=2D	movl	20(%eax),	%ebp
=2D	movl	%ebx,		16(%esp)
=2D	movl	%ebp,		20(%esp)
=2D	movl	24(%eax),	%ebx
=2D	movl	28(%eax),	%ebp
=2D	movl	%ebx,		24(%esp)
=2D	movl	%ebp,		28(%esp)
=2D	movl	32(%eax),	%ebx
=2D	movl	36(%eax),	%ebp
=2D	movl	%ebx,		32(%esp)
=2D	movl	%ebp,		36(%esp)
=2D	movl	40(%eax),	%ebx
=2D	movl	44(%eax),	%ebp
=2D	movl	%ebx,		40(%esp)
=2D	movl	%ebp,		44(%esp)
=2D	movl	48(%eax),	%ebx
=2D	movl	52(%eax),	%ebp
=2D	movl	%ebx,		48(%esp)
=2D	movl	%ebp,		52(%esp)
=2D	movl	56(%eax),	%ebx
=2D	movl	60(%eax),	%ebp
=2D	movl	%ebx,		56(%esp)
=2D	movl	%ebp,		60(%esp)
=2D	movl	%edi,		%eax
=2D	movl	12(%edx),	%ebx
=2D	movl	16(%edx),	%ebp
+	movl	(%eax),%ebx
+	movl	4(%eax),%ebp
+	movl	%ebx,(%esp)
+	movl	%ebp,4(%esp)
+	movl	8(%eax),%ebx
+	movl	12(%eax),%ebp
+	movl	%ebx,8(%esp)
+	movl	%ebp,12(%esp)
+	movl	16(%eax),%ebx
+	movl	20(%eax),%ebp
+	movl	%ebx,16(%esp)
+	movl	%ebp,20(%esp)
+	movl	24(%eax),%ebx
+	movl	28(%eax),%ebp
+	movl	%ebx,24(%esp)
+	movl	%ebp,28(%esp)
+	movl	32(%eax),%ebx
+	movl	36(%eax),%ebp
+	movl	%ebx,32(%esp)
+	movl	%ebp,36(%esp)
+	movl	40(%eax),%ebx
+	movl	44(%eax),%ebp
+	movl	%ebx,40(%esp)
+	movl	%ebp,44(%esp)
+	movl	48(%eax),%ebx
+	movl	52(%eax),%ebp
+	movl	%ebx,48(%esp)
+	movl	%ebp,52(%esp)
+	movl	56(%eax),%ebx
+	movl	60(%eax),%ebp
+	movl	%ebx,56(%esp)
+	movl	%ebp,60(%esp)
+	movl	%edi,%eax
+	movl	12(%edx),%ebx
+	movl	16(%edx),%ebp
=20
=2D	xorl	%ebx,		%eax
=2D	movl	(%esp),		%edx
=2D	xorl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	roll	$10,		%edi
=2D	addl	%eax,		%ecx
=2D	movl	%esi,		%eax
=2D	roll	$11,		%ecx
=2D	addl	%ebp,		%ecx
+	xorl	%ebx,%eax
+	movl	(%esp),%edx
+	xorl	%esi,%eax
+	addl	%edx,%ecx
+	roll	$10,%edi
+	addl	%eax,%ecx
+	movl	%esi,%eax
+	roll	$11,%ecx
+	addl	%ebp,%ecx
=20
=2D	xorl	%edi,		%eax
=2D	movl	4(%esp),	%edx
=2D	xorl	%ecx,		%eax
=2D	addl	%eax,		%ebp
=2D	movl	%ecx,		%eax
=2D	roll	$10,		%esi
=2D	addl	%edx,		%ebp
=2D	xorl	%esi,		%eax
=2D	roll	$14,		%ebp
=2D	addl	%ebx,		%ebp
+	xorl	%edi,%eax
+	movl	4(%esp),%edx
+	xorl	%ecx,%eax
+	addl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$10,%esi
+	addl	%edx,%ebp
+	xorl	%esi,%eax
+	roll	$14,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	8(%esp),	%edx
=2D	xorl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	roll	$10,		%ecx
=2D	addl	%eax,		%ebx
=2D	movl	%ebp,		%eax
=2D	roll	$15,		%ebx
=2D	addl	%edi,		%ebx
+	movl	8(%esp),%edx
+	xorl	%ebp,%eax
+	addl	%edx,%ebx
+	roll	$10,%ecx
+	addl	%eax,%ebx
+	movl	%ebp,%eax
+	roll	$15,%ebx
+	addl	%edi,%ebx
=20
=2D	xorl	%ecx,		%eax
=2D	movl	12(%esp),	%edx
=2D	xorl	%ebx,		%eax
=2D	addl	%eax,		%edi
=2D	movl	%ebx,		%eax
=2D	roll	$10,		%ebp
=2D	addl	%edx,		%edi
=2D	xorl	%ebp,		%eax
=2D	roll	$12,		%edi
=2D	addl	%esi,		%edi
+	xorl	%ecx,%eax
+	movl	12(%esp),%edx
+	xorl	%ebx,%eax
+	addl	%eax,%edi
+	movl	%ebx,%eax
+	roll	$10,%ebp
+	addl	%edx,%edi
+	xorl	%ebp,%eax
+	roll	$12,%edi
+	addl	%esi,%edi
=20
=2D	movl	16(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%edx,		%esi
=2D	roll	$10,		%ebx
=2D	addl	%eax,		%esi
=2D	movl	%edi,		%eax
=2D	roll	$5,		%esi
=2D	addl	%ecx,		%esi
+	movl	16(%esp),%edx
+	xorl	%edi,%eax
+	addl	%edx,%esi
+	roll	$10,%ebx
+	addl	%eax,%esi
+	movl	%edi,%eax
+	roll	$5,%esi
+	addl	%ecx,%esi
=20
=2D	xorl	%ebx,		%eax
=2D	movl	20(%esp),	%edx
=2D	xorl	%esi,		%eax
=2D	addl	%eax,		%ecx
=2D	movl	%esi,		%eax
=2D	roll	$10,		%edi
=2D	addl	%edx,		%ecx
=2D	xorl	%edi,		%eax
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	xorl	%ebx,%eax
+	movl	20(%esp),%edx
+	xorl	%esi,%eax
+	addl	%eax,%ecx
+	movl	%esi,%eax
+	roll	$10,%edi
+	addl	%edx,%ecx
+	xorl	%edi,%eax
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	24(%esp),	%edx
=2D	xorl	%ecx,		%eax
=2D	addl	%edx,		%ebp
=2D	roll	$10,		%esi
=2D	addl	%eax,		%ebp
=2D	movl	%ecx,		%eax
=2D	roll	$7,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	24(%esp),%edx
+	xorl	%ecx,%eax
+	addl	%edx,%ebp
+	roll	$10,%esi
+	addl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$7,%ebp
+	addl	%ebx,%ebp
=20
=2D	xorl	%esi,		%eax
=2D	movl	28(%esp),	%edx
=2D	xorl	%ebp,		%eax
=2D	addl	%eax,		%ebx
=2D	movl	%ebp,		%eax
=2D	roll	$10,		%ecx
=2D	addl	%edx,		%ebx
=2D	xorl	%ecx,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	xorl	%esi,%eax
+	movl	28(%esp),%edx
+	xorl	%ebp,%eax
+	addl	%eax,%ebx
+	movl	%ebp,%eax
+	roll	$10,%ecx
+	addl	%edx,%ebx
+	xorl	%ecx,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	32(%esp),	%edx
=2D	xorl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	roll	$10,		%ebp
=2D	addl	%eax,		%edi
=2D	movl	%ebx,		%eax
=2D	roll	$11,		%edi
=2D	addl	%esi,		%edi
+	movl	32(%esp),%edx
+	xorl	%ebx,%eax
+	addl	%edx,%edi
+	roll	$10,%ebp
+	addl	%eax,%edi
+	movl	%ebx,%eax
+	roll	$11,%edi
+	addl	%esi,%edi
=20
=2D	xorl	%ebp,		%eax
=2D	movl	36(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%eax,		%esi
=2D	movl	%edi,		%eax
=2D	roll	$10,		%ebx
=2D	addl	%edx,		%esi
=2D	xorl	%ebx,		%eax
=2D	roll	$13,		%esi
=2D	addl	%ecx,		%esi
+	xorl	%ebp,%eax
+	movl	36(%esp),%edx
+	xorl	%edi,%eax
+	addl	%eax,%esi
+	movl	%edi,%eax
+	roll	$10,%ebx
+	addl	%edx,%esi
+	xorl	%ebx,%eax
+	roll	$13,%esi
+	addl	%ecx,%esi
=20
=2D	movl	40(%esp),	%edx
=2D	xorl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	roll	$10,		%edi
=2D	addl	%eax,		%ecx
=2D	movl	%esi,		%eax
=2D	roll	$14,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	40(%esp),%edx
+	xorl	%esi,%eax
+	addl	%edx,%ecx
+	roll	$10,%edi
+	addl	%eax,%ecx
+	movl	%esi,%eax
+	roll	$14,%ecx
+	addl	%ebp,%ecx
=20
=2D	xorl	%edi,		%eax
=2D	movl	44(%esp),	%edx
=2D	xorl	%ecx,		%eax
=2D	addl	%eax,		%ebp
=2D	movl	%ecx,		%eax
=2D	roll	$10,		%esi
=2D	addl	%edx,		%ebp
=2D	xorl	%esi,		%eax
=2D	roll	$15,		%ebp
=2D	addl	%ebx,		%ebp
+	xorl	%edi,%eax
+	movl	44(%esp),%edx
+	xorl	%ecx,%eax
+	addl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$10,%esi
+	addl	%edx,%ebp
+	xorl	%esi,%eax
+	roll	$15,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	48(%esp),	%edx
=2D	xorl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	roll	$10,		%ecx
=2D	addl	%eax,		%ebx
=2D	movl	%ebp,		%eax
=2D	roll	$6,		%ebx
=2D	addl	%edi,		%ebx
+	movl	48(%esp),%edx
+	xorl	%ebp,%eax
+	addl	%edx,%ebx
+	roll	$10,%ecx
+	addl	%eax,%ebx
+	movl	%ebp,%eax
+	roll	$6,%ebx
+	addl	%edi,%ebx
=20
=2D	xorl	%ecx,		%eax
=2D	movl	52(%esp),	%edx
=2D	xorl	%ebx,		%eax
=2D	addl	%eax,		%edi
=2D	movl	%ebx,		%eax
=2D	roll	$10,		%ebp
=2D	addl	%edx,		%edi
=2D	xorl	%ebp,		%eax
=2D	roll	$7,		%edi
=2D	addl	%esi,		%edi
+	xorl	%ecx,%eax
+	movl	52(%esp),%edx
+	xorl	%ebx,%eax
+	addl	%eax,%edi
+	movl	%ebx,%eax
+	roll	$10,%ebp
+	addl	%edx,%edi
+	xorl	%ebp,%eax
+	roll	$7,%edi
+	addl	%esi,%edi
=20
=2D	movl	56(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%edx,		%esi
=2D	roll	$10,		%ebx
=2D	addl	%eax,		%esi
=2D	movl	%edi,		%eax
=2D	roll	$9,		%esi
=2D	addl	%ecx,		%esi
+	movl	56(%esp),%edx
+	xorl	%edi,%eax
+	addl	%edx,%esi
+	roll	$10,%ebx
+	addl	%eax,%esi
+	movl	%edi,%eax
+	roll	$9,%esi
+	addl	%ecx,%esi
=20
=2D	xorl	%ebx,		%eax
=2D	movl	60(%esp),	%edx
=2D	xorl	%esi,		%eax
=2D	addl	%eax,		%ecx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%edi
=2D	addl	%edx,		%ecx
=2D	movl	28(%esp),	%edx
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	xorl	%ebx,%eax
+	movl	60(%esp),%edx
+	xorl	%esi,%eax
+	addl	%eax,%ecx
+	movl	$-1,%eax
+	roll	$10,%edi
+	addl	%edx,%ecx
+	movl	28(%esp),%edx
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%edx,		%ebp
=2D	movl	%esi,		%edx
=2D	subl	%ecx,		%eax
=2D	andl	%ecx,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%edx
=2D	movl	16(%esp),	%eax
=2D	roll	$10,		%esi
+	addl	%edx,%ebp
+	movl	%esi,%edx
+	subl	%ecx,%eax
+	andl	%ecx,%edx
+	andl	%edi,%eax
+	orl	%eax,%edx
+	movl	16(%esp),%eax
+	roll	$10,%esi
 	leal	1518500249(%ebp,%edx,1),%ebp
=2D	movl	$-1,		%edx
=2D	roll	$7,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	$-1,%edx
+	roll	$7,%ebp
+	addl	%ebx,%ebp
=20
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	subl	%ebp,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	52(%esp),	%edx
=2D	roll	$10,		%ecx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	subl	%ebp,%edx
+	andl	%ebp,%eax
+	andl	%esi,%edx
+	orl	%edx,%eax
+	movl	52(%esp),%edx
+	roll	$10,%ecx
 	leal	1518500249(%ebx,%eax,1),%ebx
=2D	movl	$-1,		%eax
=2D	roll	$6,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%eax
+	roll	$6,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%edx,		%edi
=2D	movl	%ebp,		%edx
=2D	subl	%ebx,		%eax
=2D	andl	%ebx,		%edx
=2D	andl	%ecx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	4(%esp),	%eax
=2D	roll	$10,		%ebp
+	addl	%edx,%edi
+	movl	%ebp,%edx
+	subl	%ebx,%eax
+	andl	%ebx,%edx
+	andl	%ecx,%eax
+	orl	%eax,%edx
+	movl	4(%esp),%eax
+	roll	$10,%ebp
 	leal	1518500249(%edi,%edx,1),%edi
=2D	movl	$-1,		%edx
=2D	roll	$8,		%edi
=2D	addl	%esi,		%edi
+	movl	$-1,%edx
+	roll	$8,%edi
+	addl	%esi,%edi
=20
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	subl	%edi,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%edx,		%eax
=2D	movl	40(%esp),	%edx
=2D	roll	$10,		%ebx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	subl	%edi,%edx
+	andl	%edi,%eax
+	andl	%ebp,%edx
+	orl	%edx,%eax
+	movl	40(%esp),%edx
+	roll	$10,%ebx
 	leal	1518500249(%esi,%eax,1),%esi
=2D	movl	$-1,		%eax
=2D	roll	$13,		%esi
=2D	addl	%ecx,		%esi
+	movl	$-1,%eax
+	roll	$13,%esi
+	addl	%ecx,%esi
=20
=2D	addl	%edx,		%ecx
=2D	movl	%edi,		%edx
=2D	subl	%esi,		%eax
=2D	andl	%esi,		%edx
=2D	andl	%ebx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	24(%esp),	%eax
=2D	roll	$10,		%edi
+	addl	%edx,%ecx
+	movl	%edi,%edx
+	subl	%esi,%eax
+	andl	%esi,%edx
+	andl	%ebx,%eax
+	orl	%eax,%edx
+	movl	24(%esp),%eax
+	roll	$10,%edi
 	leal	1518500249(%ecx,%edx,1),%ecx
=2D	movl	$-1,		%edx
=2D	roll	$11,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	$-1,%edx
+	roll	$11,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	subl	%ecx,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	60(%esp),	%edx
=2D	roll	$10,		%esi
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	subl	%ecx,%edx
+	andl	%ecx,%eax
+	andl	%edi,%edx
+	orl	%edx,%eax
+	movl	60(%esp),%edx
+	roll	$10,%esi
 	leal	1518500249(%ebp,%eax,1),%ebp
=2D	movl	$-1,		%eax
=2D	roll	$9,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	$-1,%eax
+	roll	$9,%ebp
+	addl	%ebx,%ebp
=20
=2D	addl	%edx,		%ebx
=2D	movl	%ecx,		%edx
=2D	subl	%ebp,		%eax
=2D	andl	%ebp,		%edx
=2D	andl	%esi,		%eax
=2D	orl	%eax,		%edx
=2D	movl	12(%esp),	%eax
=2D	roll	$10,		%ecx
+	addl	%edx,%ebx
+	movl	%ecx,%edx
+	subl	%ebp,%eax
+	andl	%ebp,%edx
+	andl	%esi,%eax
+	orl	%eax,%edx
+	movl	12(%esp),%eax
+	roll	$10,%ecx
 	leal	1518500249(%ebx,%edx,1),%ebx
=2D	movl	$-1,		%edx
=2D	roll	$7,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%edx
+	roll	$7,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	subl	%ebx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%edx,		%eax
=2D	movl	48(%esp),	%edx
=2D	roll	$10,		%ebp
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	subl	%ebx,%edx
+	andl	%ebx,%eax
+	andl	%ecx,%edx
+	orl	%edx,%eax
+	movl	48(%esp),%edx
+	roll	$10,%ebp
 	leal	1518500249(%edi,%eax,1),%edi
=2D	movl	$-1,		%eax
=2D	roll	$15,		%edi
=2D	addl	%esi,		%edi
+	movl	$-1,%eax
+	roll	$15,%edi
+	addl	%esi,%edi
=20
=2D	addl	%edx,		%esi
=2D	movl	%ebx,		%edx
=2D	subl	%edi,		%eax
=2D	andl	%edi,		%edx
=2D	andl	%ebp,		%eax
=2D	orl	%eax,		%edx
=2D	movl	(%esp),		%eax
=2D	roll	$10,		%ebx
+	addl	%edx,%esi
+	movl	%ebx,%edx
+	subl	%edi,%eax
+	andl	%edi,%edx
+	andl	%ebp,%eax
+	orl	%eax,%edx
+	movl	(%esp),%eax
+	roll	$10,%ebx
 	leal	1518500249(%esi,%edx,1),%esi
=2D	movl	$-1,		%edx
=2D	roll	$7,		%esi
=2D	addl	%ecx,		%esi
+	movl	$-1,%edx
+	roll	$7,%esi
+	addl	%ecx,%esi
=20
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	subl	%esi,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%edx,		%eax
=2D	movl	36(%esp),	%edx
=2D	roll	$10,		%edi
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	subl	%esi,%edx
+	andl	%esi,%eax
+	andl	%ebx,%edx
+	orl	%edx,%eax
+	movl	36(%esp),%edx
+	roll	$10,%edi
 	leal	1518500249(%ecx,%eax,1),%ecx
=2D	movl	$-1,		%eax
=2D	roll	$12,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	$-1,%eax
+	roll	$12,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%edx,		%ebp
=2D	movl	%esi,		%edx
=2D	subl	%ecx,		%eax
=2D	andl	%ecx,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%edx
=2D	movl	20(%esp),	%eax
=2D	roll	$10,		%esi
+	addl	%edx,%ebp
+	movl	%esi,%edx
+	subl	%ecx,%eax
+	andl	%ecx,%edx
+	andl	%edi,%eax
+	orl	%eax,%edx
+	movl	20(%esp),%eax
+	roll	$10,%esi
 	leal	1518500249(%ebp,%edx,1),%ebp
=2D	movl	$-1,		%edx
=2D	roll	$15,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	$-1,%edx
+	roll	$15,%ebp
+	addl	%ebx,%ebp
=20
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	subl	%ebp,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	8(%esp),	%edx
=2D	roll	$10,		%ecx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	subl	%ebp,%edx
+	andl	%ebp,%eax
+	andl	%esi,%edx
+	orl	%edx,%eax
+	movl	8(%esp),%edx
+	roll	$10,%ecx
 	leal	1518500249(%ebx,%eax,1),%ebx
=2D	movl	$-1,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%edx,		%edi
=2D	movl	%ebp,		%edx
=2D	subl	%ebx,		%eax
=2D	andl	%ebx,		%edx
=2D	andl	%ecx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	56(%esp),	%eax
=2D	roll	$10,		%ebp
+	addl	%edx,%edi
+	movl	%ebp,%edx
+	subl	%ebx,%eax
+	andl	%ebx,%edx
+	andl	%ecx,%eax
+	orl	%eax,%edx
+	movl	56(%esp),%eax
+	roll	$10,%ebp
 	leal	1518500249(%edi,%edx,1),%edi
=2D	movl	$-1,		%edx
=2D	roll	$11,		%edi
=2D	addl	%esi,		%edi
+	movl	$-1,%edx
+	roll	$11,%edi
+	addl	%esi,%edi
=20
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	subl	%edi,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%edx,		%eax
=2D	movl	44(%esp),	%edx
=2D	roll	$10,		%ebx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	subl	%edi,%edx
+	andl	%edi,%eax
+	andl	%ebp,%edx
+	orl	%edx,%eax
+	movl	44(%esp),%edx
+	roll	$10,%ebx
 	leal	1518500249(%esi,%eax,1),%esi
=2D	movl	$-1,		%eax
=2D	roll	$7,		%esi
=2D	addl	%ecx,		%esi
+	movl	$-1,%eax
+	roll	$7,%esi
+	addl	%ecx,%esi
=20
=2D	addl	%edx,		%ecx
=2D	movl	%edi,		%edx
=2D	subl	%esi,		%eax
=2D	andl	%esi,		%edx
=2D	andl	%ebx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	32(%esp),	%eax
=2D	roll	$10,		%edi
+	addl	%edx,%ecx
+	movl	%edi,%edx
+	subl	%esi,%eax
+	andl	%esi,%edx
+	andl	%ebx,%eax
+	orl	%eax,%edx
+	movl	32(%esp),%eax
+	roll	$10,%edi
 	leal	1518500249(%ecx,%edx,1),%ecx
=2D	movl	$-1,		%edx
=2D	roll	$13,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	$-1,%edx
+	roll	$13,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	subl	%ecx,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%esi
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	subl	%ecx,%edx
+	andl	%ecx,%eax
+	andl	%edi,%edx
+	orl	%edx,%eax
+	movl	$-1,%edx
+	roll	$10,%esi
 	leal	1518500249(%ebp,%eax,1),%ebp
=2D	subl	%ecx,		%edx
=2D	roll	$12,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%edx
+	roll	$12,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	12(%esp),	%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	12(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%ebx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	1859775393(%ebx,%edx,1),%ebx
=2D	subl	%ebp,		%eax
=2D	roll	$11,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ebp,%eax
+	roll	$11,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	40(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	40(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%edi
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	1859775393(%edi,%eax,1),%edi
=2D	subl	%ebx,		%edx
=2D	roll	$13,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebx,%edx
+	roll	$13,%edi
+	addl	%esi,%edi
=20
=2D	movl	56(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	56(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%esi
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	1859775393(%esi,%edx,1),%esi
=2D	subl	%edi,		%eax
=2D	roll	$6,		%esi
=2D	addl	%ecx,		%esi
+	subl	%edi,%eax
+	roll	$6,%esi
+	addl	%ecx,%esi
=20
=2D	movl	16(%esp),	%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	16(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ecx
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	1859775393(%ecx,%eax,1),%ecx
=2D	subl	%esi,		%edx
=2D	roll	$7,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%esi,%edx
+	roll	$7,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	36(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	36(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebp
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	1859775393(%ebp,%edx,1),%ebp
=2D	subl	%ecx,		%eax
=2D	roll	$14,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%eax
+	roll	$14,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	60(%esp),	%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ecx
+	movl	60(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%ebx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%ecx
 	leal	1859775393(%ebx,%eax,1),%ebx
=2D	subl	%ebp,		%edx
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ebp,%edx
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	32(%esp),	%eax
=2D	orl	%ebx,		%edx
=2D	addl	%eax,		%edi
=2D	xorl	%ecx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebp
+	movl	32(%esp),%eax
+	orl	%ebx,%edx
+	addl	%eax,%edi
+	xorl	%ecx,%edx
+	movl	$-1,%eax
+	roll	$10,%ebp
 	leal	1859775393(%edi,%edx,1),%edi
=2D	subl	%ebx,		%eax
=2D	roll	$13,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebx,%eax
+	roll	$13,%edi
+	addl	%esi,%edi
=20
=2D	movl	4(%esp),	%edx
=2D	orl	%edi,		%eax
=2D	addl	%edx,		%esi
=2D	xorl	%ebp,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebx
+	movl	4(%esp),%edx
+	orl	%edi,%eax
+	addl	%edx,%esi
+	xorl	%ebp,%eax
+	movl	$-1,%edx
+	roll	$10,%ebx
 	leal	1859775393(%esi,%eax,1),%esi
=2D	subl	%edi,		%edx
=2D	roll	$15,		%esi
=2D	addl	%ecx,		%esi
+	subl	%edi,%edx
+	roll	$15,%esi
+	addl	%ecx,%esi
=20
=2D	movl	8(%esp),	%eax
=2D	orl	%esi,		%edx
=2D	addl	%eax,		%ecx
=2D	xorl	%ebx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%edi
+	movl	8(%esp),%eax
+	orl	%esi,%edx
+	addl	%eax,%ecx
+	xorl	%ebx,%edx
+	movl	$-1,%eax
+	roll	$10,%edi
 	leal	1859775393(%ecx,%edx,1),%ecx
=2D	subl	%esi,		%eax
=2D	roll	$14,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%esi,%eax
+	roll	$14,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	28(%esp),	%edx
=2D	orl	%ecx,		%eax
=2D	addl	%edx,		%ebp
=2D	xorl	%edi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%esi
+	movl	28(%esp),%edx
+	orl	%ecx,%eax
+	addl	%edx,%ebp
+	xorl	%edi,%eax
+	movl	$-1,%edx
+	roll	$10,%esi
 	leal	1859775393(%ebp,%eax,1),%ebp
=2D	subl	%ecx,		%edx
=2D	roll	$8,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%edx
+	roll	$8,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	(%esp),		%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%ebx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	1859775393(%ebx,%edx,1),%ebx
=2D	subl	%ebp,		%eax
=2D	roll	$13,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ebp,%eax
+	roll	$13,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	24(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	24(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%edi
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	1859775393(%edi,%eax,1),%edi
=2D	subl	%ebx,		%edx
=2D	roll	$6,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebx,%edx
+	roll	$6,%edi
+	addl	%esi,%edi
=20
=2D	movl	52(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	52(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%esi
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	1859775393(%esi,%edx,1),%esi
=2D	subl	%edi,		%eax
=2D	roll	$5,		%esi
=2D	addl	%ecx,		%esi
+	subl	%edi,%eax
+	roll	$5,%esi
+	addl	%ecx,%esi
=20
=2D	movl	44(%esp),	%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	44(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ecx
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	1859775393(%ecx,%eax,1),%ecx
=2D	subl	%esi,		%edx
=2D	roll	$12,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%esi,%edx
+	roll	$12,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	20(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	20(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebp
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	1859775393(%ebp,%edx,1),%ebp
=2D	subl	%ecx,		%eax
=2D	roll	$7,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%eax
+	roll	$7,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	48(%esp),	%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ecx
+	movl	48(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%ebx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%ecx
 	leal	1859775393(%ebx,%eax,1),%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$5,		%ebx
=2D	addl	%edi,		%ebx
+	movl	%ecx,%eax
+	roll	$5,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	4(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	2400959708(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	roll	$11,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	4(%esp),%eax
+	roll	$10,%ebp
+	leal	2400959708(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	roll	$11,%edi
+	addl	%esi,%edi
=20
=2D	subl	%ebp,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	36(%esp),	%eax
=2D	roll	$10,		%ebx
=2D	leal	2400959708(%esi,%edx),%esi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	roll	$12,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebp,%edx
+	andl	%edi,%eax
+	andl	%ebx,%edx
+	orl	%eax,%edx
+	movl	36(%esp),%eax
+	roll	$10,%ebx
+	leal	2400959708(%esi,%edx,1),%esi
+	movl	$-1,%edx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	roll	$12,%esi
+	addl	%ecx,%esi
=20
=2D	subl	%ebx,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	44(%esp),	%eax
=2D	roll	$10,		%edi
=2D	leal	2400959708(%ecx,%edx),%ecx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	roll	$14,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%ebx,%edx
+	andl	%esi,%eax
+	andl	%edi,%edx
+	orl	%eax,%edx
+	movl	44(%esp),%eax
+	roll	$10,%edi
+	leal	2400959708(%ecx,%edx,1),%ecx
+	movl	$-1,%edx
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	roll	$14,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	40(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	2400959708(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	roll	$15,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	40(%esp),%eax
+	roll	$10,%esi
+	leal	2400959708(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	roll	$15,%ebp
+	addl	%ebx,%ebp
=20
=2D	subl	%esi,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	(%esp),		%eax
=2D	roll	$10,		%ecx
=2D	leal	2400959708(%ebx,%edx),%ebx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$14,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%esi,%edx
+	andl	%ebp,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	(%esp),%eax
+	roll	$10,%ecx
+	leal	2400959708(%ebx,%edx,1),%ebx
+	movl	$-1,%edx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	roll	$14,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	32(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	2400959708(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	roll	$15,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	32(%esp),%eax
+	roll	$10,%ebp
+	leal	2400959708(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	roll	$15,%edi
+	addl	%esi,%edi
=20
=2D	subl	%ebp,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	48(%esp),	%eax
=2D	roll	$10,		%ebx
=2D	leal	2400959708(%esi,%edx),%esi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	roll	$9,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebp,%edx
+	andl	%edi,%eax
+	andl	%ebx,%edx
+	orl	%eax,%edx
+	movl	48(%esp),%eax
+	roll	$10,%ebx
+	leal	2400959708(%esi,%edx,1),%esi
+	movl	$-1,%edx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	roll	$9,%esi
+	addl	%ecx,%esi
=20
=2D	subl	%ebx,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	16(%esp),	%eax
=2D	roll	$10,		%edi
=2D	leal	2400959708(%ecx,%edx),%ecx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%ebx,%edx
+	andl	%esi,%eax
+	andl	%edi,%edx
+	orl	%eax,%edx
+	movl	16(%esp),%eax
+	roll	$10,%edi
+	leal	2400959708(%ecx,%edx,1),%ecx
+	movl	$-1,%edx
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	52(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	2400959708(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	roll	$9,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	52(%esp),%eax
+	roll	$10,%esi
+	leal	2400959708(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	roll	$9,%ebp
+	addl	%ebx,%ebp
=20
=2D	subl	%esi,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	12(%esp),	%eax
=2D	roll	$10,		%ecx
=2D	leal	2400959708(%ebx,%edx),%ebx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$14,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%esi,%edx
+	andl	%ebp,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	12(%esp),%eax
+	roll	$10,%ecx
+	leal	2400959708(%ebx,%edx,1),%ebx
+	movl	$-1,%edx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	roll	$14,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	28(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	2400959708(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	roll	$5,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	28(%esp),%eax
+	roll	$10,%ebp
+	leal	2400959708(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	roll	$5,%edi
+	addl	%esi,%edi
=20
=2D	subl	%ebp,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	60(%esp),	%eax
=2D	roll	$10,		%ebx
=2D	leal	2400959708(%esi,%edx),%esi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	roll	$6,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebp,%edx
+	andl	%edi,%eax
+	andl	%ebx,%edx
+	orl	%eax,%edx
+	movl	60(%esp),%eax
+	roll	$10,%ebx
+	leal	2400959708(%esi,%edx,1),%esi
+	movl	$-1,%edx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	roll	$6,%esi
+	addl	%ecx,%esi
=20
=2D	subl	%ebx,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	56(%esp),	%eax
=2D	roll	$10,		%edi
=2D	leal	2400959708(%ecx,%edx),%ecx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%ebx,%edx
+	andl	%esi,%eax
+	andl	%edi,%edx
+	orl	%eax,%edx
+	movl	56(%esp),%eax
+	roll	$10,%edi
+	leal	2400959708(%ecx,%edx,1),%ecx
+	movl	$-1,%edx
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	20(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	2400959708(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	roll	$6,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	20(%esp),%eax
+	roll	$10,%esi
+	leal	2400959708(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	roll	$6,%ebp
+	addl	%ebx,%ebp
=20
=2D	subl	%esi,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	24(%esp),	%eax
=2D	roll	$10,		%ecx
=2D	leal	2400959708(%ebx,%edx),%ebx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$5,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%esi,%edx
+	andl	%ebp,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	24(%esp),%eax
+	roll	$10,%ecx
+	leal	2400959708(%ebx,%edx,1),%ebx
+	movl	$-1,%edx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	roll	$5,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	8(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	2400959708(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	subl	%ebp,		%edx
=2D	roll	$12,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	8(%esp),%eax
+	roll	$10,%ebp
+	leal	2400959708(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	subl	%ebp,%edx
+	roll	$12,%edi
+	addl	%esi,%edi
=20
=2D	movl	16(%esp),	%eax
=2D	orl	%ebx,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	16(%esp),%eax
+	orl	%ebx,%edx
+	addl	%eax,%esi
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	2840853838(%esi,%edx,1),%esi
=2D	subl	%ebx,		%eax
=2D	roll	$9,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebx,%eax
+	roll	$9,%esi
+	addl	%ecx,%esi
=20
=2D	movl	(%esp),		%edx
=2D	orl	%edi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	(%esp),%edx
+	orl	%edi,%eax
+	addl	%edx,%ecx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	2840853838(%ecx,%eax,1),%ecx
=2D	subl	%edi,		%edx
=2D	roll	$15,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%edi,%edx
+	roll	$15,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	20(%esp),	%eax
=2D	orl	%esi,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%ecx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	20(%esp),%eax
+	orl	%esi,%edx
+	addl	%eax,%ebp
+	xorl	%ecx,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	2840853838(%ebp,%edx,1),%ebp
=2D	subl	%esi,		%eax
=2D	roll	$5,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%esi,%eax
+	roll	$5,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	36(%esp),	%edx
=2D	orl	%ecx,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%ebp,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ecx
+	movl	36(%esp),%edx
+	orl	%ecx,%eax
+	addl	%edx,%ebx
+	xorl	%ebp,%eax
+	movl	$-1,%edx
+	roll	$10,%ecx
 	leal	2840853838(%ebx,%eax,1),%ebx
=2D	subl	%ecx,		%edx
=2D	roll	$11,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ecx,%edx
+	roll	$11,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	28(%esp),	%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%edi
=2D	xorl	%ebx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebp
+	movl	28(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%edi
+	xorl	%ebx,%edx
+	movl	$-1,%eax
+	roll	$10,%ebp
 	leal	2840853838(%edi,%edx,1),%edi
=2D	subl	%ebp,		%eax
=2D	roll	$6,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebp,%eax
+	roll	$6,%edi
+	addl	%esi,%edi
=20
=2D	movl	48(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%esi
=2D	xorl	%edi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebx
+	movl	48(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%esi
+	xorl	%edi,%eax
+	movl	$-1,%edx
+	roll	$10,%ebx
 	leal	2840853838(%esi,%eax,1),%esi
=2D	subl	%ebx,		%edx
=2D	roll	$8,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebx,%edx
+	roll	$8,%esi
+	addl	%ecx,%esi
=20
=2D	movl	8(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%ecx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%edi
+	movl	8(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%ecx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%edi
 	leal	2840853838(%ecx,%edx,1),%ecx
=2D	subl	%edi,		%eax
=2D	roll	$13,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%edi,%eax
+	roll	$13,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	40(%esp),	%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ebp
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%esi
+	movl	40(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ebp
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%esi
 	leal	2840853838(%ebp,%eax,1),%ebp
=2D	subl	%esi,		%edx
=2D	roll	$12,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%esi,%edx
+	roll	$12,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	56(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	56(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebx
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	2840853838(%ebx,%edx,1),%ebx
=2D	subl	%ecx,		%eax
=2D	roll	$5,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ecx,%eax
+	roll	$5,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	4(%esp),	%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	4(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%edi
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	2840853838(%edi,%eax,1),%edi
=2D	subl	%ebp,		%edx
=2D	roll	$12,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebp,%edx
+	roll	$12,%edi
+	addl	%esi,%edi
=20
=2D	movl	12(%esp),	%eax
=2D	orl	%ebx,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	12(%esp),%eax
+	orl	%ebx,%edx
+	addl	%eax,%esi
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	2840853838(%esi,%edx,1),%esi
=2D	subl	%ebx,		%eax
=2D	roll	$13,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebx,%eax
+	roll	$13,%esi
+	addl	%ecx,%esi
=20
=2D	movl	32(%esp),	%edx
=2D	orl	%edi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	32(%esp),%edx
+	orl	%edi,%eax
+	addl	%edx,%ecx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	2840853838(%ecx,%eax,1),%ecx
=2D	subl	%edi,		%edx
=2D	roll	$14,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%edi,%edx
+	roll	$14,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	44(%esp),	%eax
=2D	orl	%esi,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%ecx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	44(%esp),%eax
+	orl	%esi,%edx
+	addl	%eax,%ebp
+	xorl	%ecx,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	2840853838(%ebp,%edx,1),%ebp
=2D	subl	%esi,		%eax
=2D	roll	$11,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%esi,%eax
+	roll	$11,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	24(%esp),	%edx
=2D	orl	%ecx,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%ebp,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ecx
+	movl	24(%esp),%edx
+	orl	%ecx,%eax
+	addl	%edx,%ebx
+	xorl	%ebp,%eax
+	movl	$-1,%edx
+	roll	$10,%ecx
 	leal	2840853838(%ebx,%eax,1),%ebx
=2D	subl	%ecx,		%edx
=2D	roll	$8,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ecx,%edx
+	roll	$8,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	60(%esp),	%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%edi
=2D	xorl	%ebx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebp
+	movl	60(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%edi
+	xorl	%ebx,%edx
+	movl	$-1,%eax
+	roll	$10,%ebp
 	leal	2840853838(%edi,%edx,1),%edi
=2D	subl	%ebp,		%eax
=2D	roll	$5,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebp,%eax
+	roll	$5,%edi
+	addl	%esi,%edi
=20
=2D	movl	52(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%esi
=2D	xorl	%edi,		%eax
=2D	movl	128(%esp),	%edx
=2D	roll	$10,		%ebx
+	movl	52(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%esi
+	xorl	%edi,%eax
+	movl	128(%esp),%edx
+	roll	$10,%ebx
 	leal	2840853838(%esi,%eax,1),%esi
=2D	movl	%ecx,		64(%esp)
=2D	roll	$6,		%esi
=2D	addl	%ecx,		%esi
=2D	movl	(%edx),		%ecx
=2D	movl	%esi,		68(%esp)
=2D	movl	%edi,		72(%esp)
=2D	movl	4(%edx),	%esi
=2D	movl	%ebx,		76(%esp)
=2D	movl	8(%edx),	%edi
=2D	movl	%ebp,		80(%esp)
=2D	movl	12(%edx),	%ebx
=2D	movl	16(%edx),	%ebp
+	movl	%ecx,64(%esp)
+	roll	$6,%esi
+	addl	%ecx,%esi
+	movl	(%edx),%ecx
+	movl	%esi,68(%esp)
+	movl	%edi,72(%esp)
+	movl	4(%edx),%esi
+	movl	%ebx,76(%esp)
+	movl	8(%edx),%edi
+	movl	%ebp,80(%esp)
+	movl	12(%edx),%ebx
+	movl	16(%edx),%ebp
=20
=2D	movl	$-1,		%edx
=2D	subl	%ebx,		%edx
=2D	movl	20(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%ecx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%edi
+	movl	$-1,%edx
+	subl	%ebx,%edx
+	movl	20(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%ecx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%edi
 	leal	1352829926(%ecx,%edx,1),%ecx
=2D	subl	%edi,		%eax
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%edi,%eax
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	56(%esp),	%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ebp
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%esi
+	movl	56(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ebp
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%esi
 	leal	1352829926(%ebp,%eax,1),%ebp
=2D	subl	%esi,		%edx
=2D	roll	$9,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%esi,%edx
+	roll	$9,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	28(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	28(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebx
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	1352829926(%ebx,%edx,1),%ebx
=2D	subl	%ecx,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ecx,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	(%esp),		%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%edi
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	1352829926(%edi,%eax,1),%edi
=2D	subl	%ebp,		%edx
=2D	roll	$11,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebp,%edx
+	roll	$11,%edi
+	addl	%esi,%edi
=20
=2D	movl	36(%esp),	%eax
=2D	orl	%ebx,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	36(%esp),%eax
+	orl	%ebx,%edx
+	addl	%eax,%esi
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	1352829926(%esi,%edx,1),%esi
=2D	subl	%ebx,		%eax
=2D	roll	$13,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebx,%eax
+	roll	$13,%esi
+	addl	%ecx,%esi
=20
=2D	movl	8(%esp),	%edx
=2D	orl	%edi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	8(%esp),%edx
+	orl	%edi,%eax
+	addl	%edx,%ecx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	1352829926(%ecx,%eax,1),%ecx
=2D	subl	%edi,		%edx
=2D	roll	$15,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%edi,%edx
+	roll	$15,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	44(%esp),	%eax
=2D	orl	%esi,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%ecx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	44(%esp),%eax
+	orl	%esi,%edx
+	addl	%eax,%ebp
+	xorl	%ecx,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	1352829926(%ebp,%edx,1),%ebp
=2D	subl	%esi,		%eax
=2D	roll	$15,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%esi,%eax
+	roll	$15,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	16(%esp),	%edx
=2D	orl	%ecx,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%ebp,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ecx
+	movl	16(%esp),%edx
+	orl	%ecx,%eax
+	addl	%edx,%ebx
+	xorl	%ebp,%eax
+	movl	$-1,%edx
+	roll	$10,%ecx
 	leal	1352829926(%ebx,%eax,1),%ebx
=2D	subl	%ecx,		%edx
=2D	roll	$5,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ecx,%edx
+	roll	$5,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	52(%esp),	%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%edi
=2D	xorl	%ebx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebp
+	movl	52(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%edi
+	xorl	%ebx,%edx
+	movl	$-1,%eax
+	roll	$10,%ebp
 	leal	1352829926(%edi,%edx,1),%edi
=2D	subl	%ebp,		%eax
=2D	roll	$7,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebp,%eax
+	roll	$7,%edi
+	addl	%esi,%edi
=20
=2D	movl	24(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%esi
=2D	xorl	%edi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebx
+	movl	24(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%esi
+	xorl	%edi,%eax
+	movl	$-1,%edx
+	roll	$10,%ebx
 	leal	1352829926(%esi,%eax,1),%esi
=2D	subl	%ebx,		%edx
=2D	roll	$7,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebx,%edx
+	roll	$7,%esi
+	addl	%ecx,%esi
=20
=2D	movl	60(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%ecx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%edi
+	movl	60(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%ecx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%edi
 	leal	1352829926(%ecx,%edx,1),%ecx
=2D	subl	%edi,		%eax
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%edi,%eax
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	32(%esp),	%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ebp
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%esi
+	movl	32(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ebp
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%esi
 	leal	1352829926(%ebp,%eax,1),%ebp
=2D	subl	%esi,		%edx
=2D	roll	$11,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%esi,%edx
+	roll	$11,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	4(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	4(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebx
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	1352829926(%ebx,%edx,1),%ebx
=2D	subl	%ecx,		%eax
=2D	roll	$14,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ecx,%eax
+	roll	$14,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	40(%esp),	%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	40(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%edi
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	1352829926(%edi,%eax,1),%edi
=2D	subl	%ebp,		%edx
=2D	roll	$14,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebp,%edx
+	roll	$14,%edi
+	addl	%esi,%edi
=20
=2D	movl	12(%esp),	%eax
=2D	orl	%ebx,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	12(%esp),%eax
+	orl	%ebx,%edx
+	addl	%eax,%esi
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	1352829926(%esi,%edx,1),%esi
=2D	subl	%ebx,		%eax
=2D	roll	$12,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebx,%eax
+	roll	$12,%esi
+	addl	%ecx,%esi
=20
=2D	movl	48(%esp),	%edx
=2D	orl	%edi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	48(%esp),%edx
+	orl	%edi,%eax
+	addl	%edx,%ecx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	1352829926(%ecx,%eax,1),%ecx
=2D	movl	%edi,		%eax
=2D	roll	$6,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	%edi,%eax
+	roll	$6,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	24(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	1548603684(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	roll	$9,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	24(%esp),%eax
+	roll	$10,%esi
+	leal	1548603684(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	roll	$9,%ebp
+	addl	%ebx,%ebp
=20
=2D	subl	%esi,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	44(%esp),	%eax
=2D	roll	$10,		%ecx
=2D	leal	1548603684(%ebx,%edx),%ebx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$13,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%esi,%edx
+	andl	%ebp,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	44(%esp),%eax
+	roll	$10,%ecx
+	leal	1548603684(%ebx,%edx,1),%ebx
+	movl	$-1,%edx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	roll	$13,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	12(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	1548603684(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	roll	$15,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	12(%esp),%eax
+	roll	$10,%ebp
+	leal	1548603684(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	roll	$15,%edi
+	addl	%esi,%edi
=20
=2D	subl	%ebp,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	28(%esp),	%eax
=2D	roll	$10,		%ebx
=2D	leal	1548603684(%esi,%edx),%esi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	roll	$7,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebp,%edx
+	andl	%edi,%eax
+	andl	%ebx,%edx
+	orl	%eax,%edx
+	movl	28(%esp),%eax
+	roll	$10,%ebx
+	leal	1548603684(%esi,%edx,1),%esi
+	movl	$-1,%edx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	roll	$7,%esi
+	addl	%ecx,%esi
=20
=2D	subl	%ebx,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	(%esp),		%eax
=2D	roll	$10,		%edi
=2D	leal	1548603684(%ecx,%edx),%ecx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	roll	$12,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%ebx,%edx
+	andl	%esi,%eax
+	andl	%edi,%edx
+	orl	%eax,%edx
+	movl	(%esp),%eax
+	roll	$10,%edi
+	leal	1548603684(%ecx,%edx,1),%ecx
+	movl	$-1,%edx
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	roll	$12,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	52(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	1548603684(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	roll	$8,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	52(%esp),%eax
+	roll	$10,%esi
+	leal	1548603684(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	roll	$8,%ebp
+	addl	%ebx,%ebp
=20
=2D	subl	%esi,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	20(%esp),	%eax
=2D	roll	$10,		%ecx
=2D	leal	1548603684(%ebx,%edx),%ebx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%esi,%edx
+	andl	%ebp,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	20(%esp),%eax
+	roll	$10,%ecx
+	leal	1548603684(%ebx,%edx,1),%ebx
+	movl	$-1,%edx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	40(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	1548603684(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	roll	$11,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	40(%esp),%eax
+	roll	$10,%ebp
+	leal	1548603684(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	roll	$11,%edi
+	addl	%esi,%edi
=20
=2D	subl	%ebp,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	56(%esp),	%eax
=2D	roll	$10,		%ebx
=2D	leal	1548603684(%esi,%edx),%esi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	roll	$7,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebp,%edx
+	andl	%edi,%eax
+	andl	%ebx,%edx
+	orl	%eax,%edx
+	movl	56(%esp),%eax
+	roll	$10,%ebx
+	leal	1548603684(%esi,%edx,1),%esi
+	movl	$-1,%edx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	roll	$7,%esi
+	addl	%ecx,%esi
=20
=2D	subl	%ebx,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	60(%esp),	%eax
=2D	roll	$10,		%edi
=2D	leal	1548603684(%ecx,%edx),%ecx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	roll	$7,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%ebx,%edx
+	andl	%esi,%eax
+	andl	%edi,%edx
+	orl	%eax,%edx
+	movl	60(%esp),%eax
+	roll	$10,%edi
+	leal	1548603684(%ecx,%edx,1),%ecx
+	movl	$-1,%edx
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	roll	$7,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	32(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	1548603684(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	roll	$12,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	32(%esp),%eax
+	roll	$10,%esi
+	leal	1548603684(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	roll	$12,%ebp
+	addl	%ebx,%ebp
=20
=2D	subl	%esi,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	48(%esp),	%eax
=2D	roll	$10,		%ecx
=2D	leal	1548603684(%ebx,%edx),%ebx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	roll	$7,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%esi,%edx
+	andl	%ebp,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	48(%esp),%eax
+	roll	$10,%ecx
+	leal	1548603684(%ebx,%edx,1),%ebx
+	movl	$-1,%edx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	roll	$7,%ebx
+	addl	%edi,%ebx
=20
=2D	subl	%ecx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%eax,		%edx
=2D	movl	16(%esp),	%eax
=2D	roll	$10,		%ebp
=2D	leal	1548603684(%edi,%edx),%edi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	roll	$6,		%edi
=2D	addl	%esi,		%edi
+	subl	%ecx,%edx
+	andl	%ebx,%eax
+	andl	%ebp,%edx
+	orl	%eax,%edx
+	movl	16(%esp),%eax
+	roll	$10,%ebp
+	leal	1548603684(%edi,%edx,1),%edi
+	movl	$-1,%edx
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	roll	$6,%edi
+	addl	%esi,%edi
=20
=2D	subl	%ebp,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	36(%esp),	%eax
=2D	roll	$10,		%ebx
=2D	leal	1548603684(%esi,%edx),%esi
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	roll	$15,		%esi
=2D	addl	%ecx,		%esi
+	subl	%ebp,%edx
+	andl	%edi,%eax
+	andl	%ebx,%edx
+	orl	%eax,%edx
+	movl	36(%esp),%eax
+	roll	$10,%ebx
+	leal	1548603684(%esi,%edx,1),%esi
+	movl	$-1,%edx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	roll	$15,%esi
+	addl	%ecx,%esi
=20
=2D	subl	%ebx,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	4(%esp),	%eax
=2D	roll	$10,		%edi
=2D	leal	1548603684(%ecx,%edx),%ecx
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	roll	$13,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%ebx,%edx
+	andl	%esi,%eax
+	andl	%edi,%edx
+	orl	%eax,%edx
+	movl	4(%esp),%eax
+	roll	$10,%edi
+	leal	1548603684(%ecx,%edx,1),%ecx
+	movl	$-1,%edx
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	roll	$13,%ecx
+	addl	%ebp,%ecx
=20
=2D	subl	%edi,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%eax,		%edx
=2D	movl	8(%esp),	%eax
=2D	roll	$10,		%esi
=2D	leal	1548603684(%ebp,%edx),%ebp
=2D	movl	$-1,		%edx
=2D	addl	%eax,		%ebp
=2D	subl	%ecx,		%edx
=2D	roll	$11,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%edi,%edx
+	andl	%ecx,%eax
+	andl	%esi,%edx
+	orl	%eax,%edx
+	movl	8(%esp),%eax
+	roll	$10,%esi
+	leal	1548603684(%ebp,%edx,1),%ebp
+	movl	$-1,%edx
+	addl	%eax,%ebp
+	subl	%ecx,%edx
+	roll	$11,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	60(%esp),	%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	60(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%ebx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	1836072691(%ebx,%edx,1),%ebx
=2D	subl	%ebp,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ebp,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	20(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	20(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%edi
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	1836072691(%edi,%eax,1),%edi
=2D	subl	%ebx,		%edx
=2D	roll	$7,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebx,%edx
+	roll	$7,%edi
+	addl	%esi,%edi
=20
=2D	movl	4(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	4(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%esi
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	1836072691(%esi,%edx,1),%esi
=2D	subl	%edi,		%eax
=2D	roll	$15,		%esi
=2D	addl	%ecx,		%esi
+	subl	%edi,%eax
+	roll	$15,%esi
+	addl	%ecx,%esi
=20
=2D	movl	12(%esp),	%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	12(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ecx
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	1836072691(%ecx,%eax,1),%ecx
=2D	subl	%esi,		%edx
=2D	roll	$11,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%esi,%edx
+	roll	$11,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	28(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	28(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebp
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	1836072691(%ebp,%edx,1),%ebp
=2D	subl	%ecx,		%eax
=2D	roll	$8,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%eax
+	roll	$8,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	56(%esp),	%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%esi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ecx
+	movl	56(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%ebx
+	xorl	%esi,%eax
+	movl	$-1,%edx
+	roll	$10,%ecx
 	leal	1836072691(%ebx,%eax,1),%ebx
=2D	subl	%ebp,		%edx
=2D	roll	$6,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ebp,%edx
+	roll	$6,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	24(%esp),	%eax
=2D	orl	%ebx,		%edx
=2D	addl	%eax,		%edi
=2D	xorl	%ecx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebp
+	movl	24(%esp),%eax
+	orl	%ebx,%edx
+	addl	%eax,%edi
+	xorl	%ecx,%edx
+	movl	$-1,%eax
+	roll	$10,%ebp
 	leal	1836072691(%edi,%edx,1),%edi
=2D	subl	%ebx,		%eax
=2D	roll	$6,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebx,%eax
+	roll	$6,%edi
+	addl	%esi,%edi
=20
=2D	movl	36(%esp),	%edx
=2D	orl	%edi,		%eax
=2D	addl	%edx,		%esi
=2D	xorl	%ebp,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebx
+	movl	36(%esp),%edx
+	orl	%edi,%eax
+	addl	%edx,%esi
+	xorl	%ebp,%eax
+	movl	$-1,%edx
+	roll	$10,%ebx
 	leal	1836072691(%esi,%eax,1),%esi
=2D	subl	%edi,		%edx
=2D	roll	$14,		%esi
=2D	addl	%ecx,		%esi
+	subl	%edi,%edx
+	roll	$14,%esi
+	addl	%ecx,%esi
=20
=2D	movl	44(%esp),	%eax
=2D	orl	%esi,		%edx
=2D	addl	%eax,		%ecx
=2D	xorl	%ebx,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%edi
+	movl	44(%esp),%eax
+	orl	%esi,%edx
+	addl	%eax,%ecx
+	xorl	%ebx,%edx
+	movl	$-1,%eax
+	roll	$10,%edi
 	leal	1836072691(%ecx,%edx,1),%ecx
=2D	subl	%esi,		%eax
=2D	roll	$12,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%esi,%eax
+	roll	$12,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	32(%esp),	%edx
=2D	orl	%ecx,		%eax
=2D	addl	%edx,		%ebp
=2D	xorl	%edi,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%esi
+	movl	32(%esp),%edx
+	orl	%ecx,%eax
+	addl	%edx,%ebp
+	xorl	%edi,%eax
+	movl	$-1,%edx
+	roll	$10,%esi
 	leal	1836072691(%ebp,%eax,1),%ebp
=2D	subl	%ecx,		%edx
=2D	roll	$13,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%edx
+	roll	$13,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	48(%esp),	%eax
=2D	orl	%ebp,		%edx
=2D	addl	%eax,		%ebx
=2D	xorl	%esi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ecx
+	movl	48(%esp),%eax
+	orl	%ebp,%edx
+	addl	%eax,%ebx
+	xorl	%esi,%edx
+	movl	$-1,%eax
+	roll	$10,%ecx
 	leal	1836072691(%ebx,%edx,1),%ebx
=2D	subl	%ebp,		%eax
=2D	roll	$5,		%ebx
=2D	addl	%edi,		%ebx
+	subl	%ebp,%eax
+	roll	$5,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	8(%esp),	%edx
=2D	orl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	xorl	%ecx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%ebp
+	movl	8(%esp),%edx
+	orl	%ebx,%eax
+	addl	%edx,%edi
+	xorl	%ecx,%eax
+	movl	$-1,%edx
+	roll	$10,%ebp
 	leal	1836072691(%edi,%eax,1),%edi
=2D	subl	%ebx,		%edx
=2D	roll	$14,		%edi
=2D	addl	%esi,		%edi
+	subl	%ebx,%edx
+	roll	$14,%edi
+	addl	%esi,%edi
=20
=2D	movl	40(%esp),	%eax
=2D	orl	%edi,		%edx
=2D	addl	%eax,		%esi
=2D	xorl	%ebp,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%ebx
+	movl	40(%esp),%eax
+	orl	%edi,%edx
+	addl	%eax,%esi
+	xorl	%ebp,%edx
+	movl	$-1,%eax
+	roll	$10,%ebx
 	leal	1836072691(%esi,%edx,1),%esi
=2D	subl	%edi,		%eax
=2D	roll	$13,		%esi
=2D	addl	%ecx,		%esi
+	subl	%edi,%eax
+	roll	$13,%esi
+	addl	%ecx,%esi
=20
=2D	movl	(%esp),		%edx
=2D	orl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	xorl	%ebx,		%eax
=2D	movl	$-1,		%edx
=2D	roll	$10,		%edi
+	movl	(%esp),%edx
+	orl	%esi,%eax
+	addl	%edx,%ecx
+	xorl	%ebx,%eax
+	movl	$-1,%edx
+	roll	$10,%edi
 	leal	1836072691(%ecx,%eax,1),%ecx
=2D	subl	%esi,		%edx
=2D	roll	$13,		%ecx
=2D	addl	%ebp,		%ecx
+	subl	%esi,%edx
+	roll	$13,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	16(%esp),	%eax
=2D	orl	%ecx,		%edx
=2D	addl	%eax,		%ebp
=2D	xorl	%edi,		%edx
=2D	movl	$-1,		%eax
=2D	roll	$10,		%esi
+	movl	16(%esp),%eax
+	orl	%ecx,%edx
+	addl	%eax,%ebp
+	xorl	%edi,%edx
+	movl	$-1,%eax
+	roll	$10,%esi
 	leal	1836072691(%ebp,%edx,1),%ebp
=2D	subl	%ecx,		%eax
=2D	roll	$7,		%ebp
=2D	addl	%ebx,		%ebp
+	subl	%ecx,%eax
+	roll	$7,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	52(%esp),	%edx
=2D	orl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	xorl	%esi,		%eax
=2D	movl	32(%esp),	%edx
=2D	roll	$10,		%ecx
+	movl	52(%esp),%edx
+	orl	%ebp,%eax
+	addl	%edx,%ebx
+	xorl	%esi,%eax
+	movl	32(%esp),%edx
+	roll	$10,%ecx
 	leal	1836072691(%ebx,%eax,1),%ebx
=2D	movl	$-1,		%eax
=2D	roll	$5,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%eax
+	roll	$5,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%edx,		%edi
=2D	movl	%ebp,		%edx
=2D	subl	%ebx,		%eax
=2D	andl	%ebx,		%edx
=2D	andl	%ecx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	24(%esp),	%eax
=2D	roll	$10,		%ebp
+	addl	%edx,%edi
+	movl	%ebp,%edx
+	subl	%ebx,%eax
+	andl	%ebx,%edx
+	andl	%ecx,%eax
+	orl	%eax,%edx
+	movl	24(%esp),%eax
+	roll	$10,%ebp
 	leal	2053994217(%edi,%edx,1),%edi
=2D	movl	$-1,		%edx
=2D	roll	$15,		%edi
=2D	addl	%esi,		%edi
+	movl	$-1,%edx
+	roll	$15,%edi
+	addl	%esi,%edi
=20
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	subl	%edi,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%edx,		%eax
=2D	movl	16(%esp),	%edx
=2D	roll	$10,		%ebx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	subl	%edi,%edx
+	andl	%edi,%eax
+	andl	%ebp,%edx
+	orl	%edx,%eax
+	movl	16(%esp),%edx
+	roll	$10,%ebx
 	leal	2053994217(%esi,%eax,1),%esi
=2D	movl	$-1,		%eax
=2D	roll	$5,		%esi
=2D	addl	%ecx,		%esi
+	movl	$-1,%eax
+	roll	$5,%esi
+	addl	%ecx,%esi
=20
=2D	addl	%edx,		%ecx
=2D	movl	%edi,		%edx
=2D	subl	%esi,		%eax
=2D	andl	%esi,		%edx
=2D	andl	%ebx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	4(%esp),	%eax
=2D	roll	$10,		%edi
+	addl	%edx,%ecx
+	movl	%edi,%edx
+	subl	%esi,%eax
+	andl	%esi,%edx
+	andl	%ebx,%eax
+	orl	%eax,%edx
+	movl	4(%esp),%eax
+	roll	$10,%edi
 	leal	2053994217(%ecx,%edx,1),%ecx
=2D	movl	$-1,		%edx
=2D	roll	$8,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	$-1,%edx
+	roll	$8,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	subl	%ecx,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	12(%esp),	%edx
=2D	roll	$10,		%esi
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	subl	%ecx,%edx
+	andl	%ecx,%eax
+	andl	%edi,%edx
+	orl	%edx,%eax
+	movl	12(%esp),%edx
+	roll	$10,%esi
 	leal	2053994217(%ebp,%eax,1),%ebp
=2D	movl	$-1,		%eax
=2D	roll	$11,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	$-1,%eax
+	roll	$11,%ebp
+	addl	%ebx,%ebp
=20
=2D	addl	%edx,		%ebx
=2D	movl	%ecx,		%edx
=2D	subl	%ebp,		%eax
=2D	andl	%ebp,		%edx
=2D	andl	%esi,		%eax
=2D	orl	%eax,		%edx
=2D	movl	44(%esp),	%eax
=2D	roll	$10,		%ecx
+	addl	%edx,%ebx
+	movl	%ecx,%edx
+	subl	%ebp,%eax
+	andl	%ebp,%edx
+	andl	%esi,%eax
+	orl	%eax,%edx
+	movl	44(%esp),%eax
+	roll	$10,%ecx
 	leal	2053994217(%ebx,%edx,1),%ebx
=2D	movl	$-1,		%edx
=2D	roll	$14,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%edx
+	roll	$14,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	subl	%ebx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%edx,		%eax
=2D	movl	60(%esp),	%edx
=2D	roll	$10,		%ebp
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	subl	%ebx,%edx
+	andl	%ebx,%eax
+	andl	%ecx,%edx
+	orl	%edx,%eax
+	movl	60(%esp),%edx
+	roll	$10,%ebp
 	leal	2053994217(%edi,%eax,1),%edi
=2D	movl	$-1,		%eax
=2D	roll	$14,		%edi
=2D	addl	%esi,		%edi
+	movl	$-1,%eax
+	roll	$14,%edi
+	addl	%esi,%edi
=20
=2D	addl	%edx,		%esi
=2D	movl	%ebx,		%edx
=2D	subl	%edi,		%eax
=2D	andl	%edi,		%edx
=2D	andl	%ebp,		%eax
=2D	orl	%eax,		%edx
=2D	movl	(%esp),		%eax
=2D	roll	$10,		%ebx
+	addl	%edx,%esi
+	movl	%ebx,%edx
+	subl	%edi,%eax
+	andl	%edi,%edx
+	andl	%ebp,%eax
+	orl	%eax,%edx
+	movl	(%esp),%eax
+	roll	$10,%ebx
 	leal	2053994217(%esi,%edx,1),%esi
=2D	movl	$-1,		%edx
=2D	roll	$6,		%esi
=2D	addl	%ecx,		%esi
+	movl	$-1,%edx
+	roll	$6,%esi
+	addl	%ecx,%esi
=20
=2D	addl	%eax,		%ecx
=2D	movl	%edi,		%eax
=2D	subl	%esi,		%edx
=2D	andl	%esi,		%eax
=2D	andl	%ebx,		%edx
=2D	orl	%edx,		%eax
=2D	movl	20(%esp),	%edx
=2D	roll	$10,		%edi
+	addl	%eax,%ecx
+	movl	%edi,%eax
+	subl	%esi,%edx
+	andl	%esi,%eax
+	andl	%ebx,%edx
+	orl	%edx,%eax
+	movl	20(%esp),%edx
+	roll	$10,%edi
 	leal	2053994217(%ecx,%eax,1),%ecx
=2D	movl	$-1,		%eax
=2D	roll	$14,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	$-1,%eax
+	roll	$14,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%edx,		%ebp
=2D	movl	%esi,		%edx
=2D	subl	%ecx,		%eax
=2D	andl	%ecx,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%edx
=2D	movl	48(%esp),	%eax
=2D	roll	$10,		%esi
+	addl	%edx,%ebp
+	movl	%esi,%edx
+	subl	%ecx,%eax
+	andl	%ecx,%edx
+	andl	%edi,%eax
+	orl	%eax,%edx
+	movl	48(%esp),%eax
+	roll	$10,%esi
 	leal	2053994217(%ebp,%edx,1),%ebp
=2D	movl	$-1,		%edx
=2D	roll	$6,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	$-1,%edx
+	roll	$6,%ebp
+	addl	%ebx,%ebp
=20
=2D	addl	%eax,		%ebx
=2D	movl	%ecx,		%eax
=2D	subl	%ebp,		%edx
=2D	andl	%ebp,		%eax
=2D	andl	%esi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	8(%esp),	%edx
=2D	roll	$10,		%ecx
+	addl	%eax,%ebx
+	movl	%ecx,%eax
+	subl	%ebp,%edx
+	andl	%ebp,%eax
+	andl	%esi,%edx
+	orl	%edx,%eax
+	movl	8(%esp),%edx
+	roll	$10,%ecx
 	leal	2053994217(%ebx,%eax,1),%ebx
=2D	movl	$-1,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%edx,		%edi
=2D	movl	%ebp,		%edx
=2D	subl	%ebx,		%eax
=2D	andl	%ebx,		%edx
=2D	andl	%ecx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	52(%esp),	%eax
=2D	roll	$10,		%ebp
+	addl	%edx,%edi
+	movl	%ebp,%edx
+	subl	%ebx,%eax
+	andl	%ebx,%edx
+	andl	%ecx,%eax
+	orl	%eax,%edx
+	movl	52(%esp),%eax
+	roll	$10,%ebp
 	leal	2053994217(%edi,%edx,1),%edi
=2D	movl	$-1,		%edx
=2D	roll	$12,		%edi
=2D	addl	%esi,		%edi
+	movl	$-1,%edx
+	roll	$12,%edi
+	addl	%esi,%edi
=20
=2D	addl	%eax,		%esi
=2D	movl	%ebx,		%eax
=2D	subl	%edi,		%edx
=2D	andl	%edi,		%eax
=2D	andl	%ebp,		%edx
=2D	orl	%edx,		%eax
=2D	movl	36(%esp),	%edx
=2D	roll	$10,		%ebx
+	addl	%eax,%esi
+	movl	%ebx,%eax
+	subl	%edi,%edx
+	andl	%edi,%eax
+	andl	%ebp,%edx
+	orl	%edx,%eax
+	movl	36(%esp),%edx
+	roll	$10,%ebx
 	leal	2053994217(%esi,%eax,1),%esi
=2D	movl	$-1,		%eax
=2D	roll	$9,		%esi
=2D	addl	%ecx,		%esi
+	movl	$-1,%eax
+	roll	$9,%esi
+	addl	%ecx,%esi
=20
=2D	addl	%edx,		%ecx
=2D	movl	%edi,		%edx
=2D	subl	%esi,		%eax
=2D	andl	%esi,		%edx
=2D	andl	%ebx,		%eax
=2D	orl	%eax,		%edx
=2D	movl	28(%esp),	%eax
=2D	roll	$10,		%edi
+	addl	%edx,%ecx
+	movl	%edi,%edx
+	subl	%esi,%eax
+	andl	%esi,%edx
+	andl	%ebx,%eax
+	orl	%eax,%edx
+	movl	28(%esp),%eax
+	roll	$10,%edi
 	leal	2053994217(%ecx,%edx,1),%ecx
=2D	movl	$-1,		%edx
=2D	roll	$12,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	$-1,%edx
+	roll	$12,%ecx
+	addl	%ebp,%ecx
=20
=2D	addl	%eax,		%ebp
=2D	movl	%esi,		%eax
=2D	subl	%ecx,		%edx
=2D	andl	%ecx,		%eax
=2D	andl	%edi,		%edx
=2D	orl	%edx,		%eax
=2D	movl	40(%esp),	%edx
=2D	roll	$10,		%esi
+	addl	%eax,%ebp
+	movl	%esi,%eax
+	subl	%ecx,%edx
+	andl	%ecx,%eax
+	andl	%edi,%edx
+	orl	%edx,%eax
+	movl	40(%esp),%edx
+	roll	$10,%esi
 	leal	2053994217(%ebp,%eax,1),%ebp
=2D	movl	$-1,		%eax
=2D	roll	$5,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	$-1,%eax
+	roll	$5,%ebp
+	addl	%ebx,%ebp
=20
=2D	addl	%edx,		%ebx
=2D	movl	%ecx,		%edx
=2D	subl	%ebp,		%eax
=2D	andl	%ebp,		%edx
=2D	andl	%esi,		%eax
=2D	orl	%eax,		%edx
=2D	movl	56(%esp),	%eax
=2D	roll	$10,		%ecx
+	addl	%edx,%ebx
+	movl	%ecx,%edx
+	subl	%ebp,%eax
+	andl	%ebp,%edx
+	andl	%esi,%eax
+	orl	%eax,%edx
+	movl	56(%esp),%eax
+	roll	$10,%ecx
 	leal	2053994217(%ebx,%edx,1),%ebx
=2D	movl	$-1,		%edx
=2D	roll	$15,		%ebx
=2D	addl	%edi,		%ebx
+	movl	$-1,%edx
+	roll	$15,%ebx
+	addl	%edi,%ebx
=20
=2D	addl	%eax,		%edi
=2D	movl	%ebp,		%eax
=2D	subl	%ebx,		%edx
=2D	andl	%ebx,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%eax,		%edx
=2D	movl	%ebx,		%eax
=2D	roll	$10,		%ebp
+	addl	%eax,%edi
+	movl	%ebp,%eax
+	subl	%ebx,%edx
+	andl	%ebx,%eax
+	andl	%ecx,%edx
+	orl	%eax,%edx
+	movl	%ebx,%eax
+	roll	$10,%ebp
 	leal	2053994217(%edi,%edx,1),%edi
=2D	xorl	%ebp,		%eax
=2D	roll	$8,		%edi
=2D	addl	%esi,		%edi
+	xorl	%ebp,%eax
+	roll	$8,%edi
+	addl	%esi,%edi
=20
=2D	movl	48(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%edx,		%esi
=2D	roll	$10,		%ebx
=2D	addl	%eax,		%esi
=2D	movl	%edi,		%eax
=2D	roll	$8,		%esi
=2D	addl	%ecx,		%esi
+	movl	48(%esp),%edx
+	xorl	%edi,%eax
+	addl	%edx,%esi
+	roll	$10,%ebx
+	addl	%eax,%esi
+	movl	%edi,%eax
+	roll	$8,%esi
+	addl	%ecx,%esi
=20
=2D	xorl	%ebx,		%eax
=2D	movl	60(%esp),	%edx
=2D	xorl	%esi,		%eax
=2D	addl	%eax,		%ecx
=2D	movl	%esi,		%eax
=2D	roll	$10,		%edi
=2D	addl	%edx,		%ecx
=2D	xorl	%edi,		%eax
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ecx
+	xorl	%ebx,%eax
+	movl	60(%esp),%edx
+	xorl	%esi,%eax
+	addl	%eax,%ecx
+	movl	%esi,%eax
+	roll	$10,%edi
+	addl	%edx,%ecx
+	xorl	%edi,%eax
+	roll	$5,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	40(%esp),	%edx
=2D	xorl	%ecx,		%eax
=2D	addl	%edx,		%ebp
=2D	roll	$10,		%esi
=2D	addl	%eax,		%ebp
=2D	movl	%ecx,		%eax
=2D	roll	$12,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	40(%esp),%edx
+	xorl	%ecx,%eax
+	addl	%edx,%ebp
+	roll	$10,%esi
+	addl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$12,%ebp
+	addl	%ebx,%ebp
=20
=2D	xorl	%esi,		%eax
=2D	movl	16(%esp),	%edx
=2D	xorl	%ebp,		%eax
=2D	addl	%eax,		%ebx
=2D	movl	%ebp,		%eax
=2D	roll	$10,		%ecx
=2D	addl	%edx,		%ebx
=2D	xorl	%ecx,		%eax
=2D	roll	$9,		%ebx
=2D	addl	%edi,		%ebx
+	xorl	%esi,%eax
+	movl	16(%esp),%edx
+	xorl	%ebp,%eax
+	addl	%eax,%ebx
+	movl	%ebp,%eax
+	roll	$10,%ecx
+	addl	%edx,%ebx
+	xorl	%ecx,%eax
+	roll	$9,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	4(%esp),	%edx
=2D	xorl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	roll	$10,		%ebp
=2D	addl	%eax,		%edi
=2D	movl	%ebx,		%eax
=2D	roll	$12,		%edi
=2D	addl	%esi,		%edi
+	movl	4(%esp),%edx
+	xorl	%ebx,%eax
+	addl	%edx,%edi
+	roll	$10,%ebp
+	addl	%eax,%edi
+	movl	%ebx,%eax
+	roll	$12,%edi
+	addl	%esi,%edi
=20
=2D	xorl	%ebp,		%eax
=2D	movl	20(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%eax,		%esi
=2D	movl	%edi,		%eax
=2D	roll	$10,		%ebx
=2D	addl	%edx,		%esi
=2D	xorl	%ebx,		%eax
=2D	roll	$5,		%esi
=2D	addl	%ecx,		%esi
+	xorl	%ebp,%eax
+	movl	20(%esp),%edx
+	xorl	%edi,%eax
+	addl	%eax,%esi
+	movl	%edi,%eax
+	roll	$10,%ebx
+	addl	%edx,%esi
+	xorl	%ebx,%eax
+	roll	$5,%esi
+	addl	%ecx,%esi
=20
=2D	movl	32(%esp),	%edx
=2D	xorl	%esi,		%eax
=2D	addl	%edx,		%ecx
=2D	roll	$10,		%edi
=2D	addl	%eax,		%ecx
=2D	movl	%esi,		%eax
=2D	roll	$14,		%ecx
=2D	addl	%ebp,		%ecx
+	movl	32(%esp),%edx
+	xorl	%esi,%eax
+	addl	%edx,%ecx
+	roll	$10,%edi
+	addl	%eax,%ecx
+	movl	%esi,%eax
+	roll	$14,%ecx
+	addl	%ebp,%ecx
=20
=2D	xorl	%edi,		%eax
=2D	movl	28(%esp),	%edx
=2D	xorl	%ecx,		%eax
=2D	addl	%eax,		%ebp
=2D	movl	%ecx,		%eax
=2D	roll	$10,		%esi
=2D	addl	%edx,		%ebp
=2D	xorl	%esi,		%eax
=2D	roll	$6,		%ebp
=2D	addl	%ebx,		%ebp
+	xorl	%edi,%eax
+	movl	28(%esp),%edx
+	xorl	%ecx,%eax
+	addl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$10,%esi
+	addl	%edx,%ebp
+	xorl	%esi,%eax
+	roll	$6,%ebp
+	addl	%ebx,%ebp
=20
=2D	movl	24(%esp),	%edx
=2D	xorl	%ebp,		%eax
=2D	addl	%edx,		%ebx
=2D	roll	$10,		%ecx
=2D	addl	%eax,		%ebx
=2D	movl	%ebp,		%eax
=2D	roll	$8,		%ebx
=2D	addl	%edi,		%ebx
+	movl	24(%esp),%edx
+	xorl	%ebp,%eax
+	addl	%edx,%ebx
+	roll	$10,%ecx
+	addl	%eax,%ebx
+	movl	%ebp,%eax
+	roll	$8,%ebx
+	addl	%edi,%ebx
=20
=2D	xorl	%ecx,		%eax
=2D	movl	8(%esp),	%edx
=2D	xorl	%ebx,		%eax
=2D	addl	%eax,		%edi
=2D	movl	%ebx,		%eax
=2D	roll	$10,		%ebp
=2D	addl	%edx,		%edi
=2D	xorl	%ebp,		%eax
=2D	roll	$13,		%edi
=2D	addl	%esi,		%edi
+	xorl	%ecx,%eax
+	movl	8(%esp),%edx
+	xorl	%ebx,%eax
+	addl	%eax,%edi
+	movl	%ebx,%eax
+	roll	$10,%ebp
+	addl	%edx,%edi
+	xorl	%ebp,%eax
+	roll	$13,%edi
+	addl	%esi,%edi
=20
=2D	movl	52(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%edx,		%esi
=2D	roll	$10,		%ebx
=2D	addl	%eax,		%esi
=2D	movl	%edi,		%eax
=2D	roll	$6,		%esi
=2D	addl	%ecx,		%esi
+	movl	52(%esp),%edx
+	xorl	%edi,%eax
+	addl	%edx,%esi
+	roll	$10,%ebx
+	addl	%eax,%esi
+	movl	%edi,%eax
+	roll	$6,%esi
+	addl	%ecx,%esi
=20
=2D	xorl	%ebx,		%eax
=2D	movl	56(%esp),	%edx
=2D	xorl	%esi,		%eax
=2D	addl	%eax,		%ecx
=2D	movl	%esi,		%eax
=2D	roll	$10,		%edi
=2D	addl	%edx,		%ecx
=2D	xorl	%edi,		%eax
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ecx
+	xorl	%ebx,%eax
+	movl	56(%esp),%edx
+	xorl	%esi,%eax
+	addl	%eax,%ecx
+	movl	%esi,%eax
+	roll	$10,%edi
+	addl	%edx,%ecx
+	xorl	%edi,%eax
+	roll	$5,%ecx
+	addl	%ebp,%ecx
=20
=2D	movl	(%esp),		%edx
=2D	xorl	%ecx,		%eax
=2D	addl	%edx,		%ebp
=2D	roll	$10,		%esi
=2D	addl	%eax,		%ebp
=2D	movl	%ecx,		%eax
=2D	roll	$15,		%ebp
=2D	addl	%ebx,		%ebp
+	movl	(%esp),%edx
+	xorl	%ecx,%eax
+	addl	%edx,%ebp
+	roll	$10,%esi
+	addl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$15,%ebp
+	addl	%ebx,%ebp
=20
=2D	xorl	%esi,		%eax
=2D	movl	12(%esp),	%edx
=2D	xorl	%ebp,		%eax
=2D	addl	%eax,		%ebx
=2D	movl	%ebp,		%eax
=2D	roll	$10,		%ecx
=2D	addl	%edx,		%ebx
=2D	xorl	%ecx,		%eax
=2D	roll	$13,		%ebx
=2D	addl	%edi,		%ebx
+	xorl	%esi,%eax
+	movl	12(%esp),%edx
+	xorl	%ebp,%eax
+	addl	%eax,%ebx
+	movl	%ebp,%eax
+	roll	$10,%ecx
+	addl	%edx,%ebx
+	xorl	%ecx,%eax
+	roll	$13,%ebx
+	addl	%edi,%ebx
=20
=2D	movl	36(%esp),	%edx
=2D	xorl	%ebx,		%eax
=2D	addl	%edx,		%edi
=2D	roll	$10,		%ebp
=2D	addl	%eax,		%edi
=2D	movl	%ebx,		%eax
=2D	roll	$11,		%edi
=2D	addl	%esi,		%edi
+	movl	36(%esp),%edx
+	xorl	%ebx,%eax
+	addl	%edx,%edi
+	roll	$10,%ebp
+	addl	%eax,%edi
+	movl	%ebx,%eax
+	roll	$11,%edi
+	addl	%esi,%edi
=20
=2D	xorl	%ebp,		%eax
=2D	movl	44(%esp),	%edx
=2D	xorl	%edi,		%eax
=2D	addl	%eax,		%esi
=2D	roll	$10,		%ebx
=2D	addl	%edx,		%esi
=2D	movl	128(%esp),	%edx
=2D	roll	$11,		%esi
=2D	addl	%ecx,		%esi
=2D	movl	4(%edx),	%eax
=2D	addl	%eax,		%ebx
=2D	movl	72(%esp),	%eax
=2D	addl	%eax,		%ebx
=2D	movl	8(%edx),	%eax
=2D	addl	%eax,		%ebp
=2D	movl	76(%esp),	%eax
=2D	addl	%eax,		%ebp
=2D	movl	12(%edx),	%eax
=2D	addl	%eax,		%ecx
=2D	movl	80(%esp),	%eax
=2D	addl	%eax,		%ecx
=2D	movl	16(%edx),	%eax
=2D	addl	%eax,		%esi
=2D	movl	64(%esp),	%eax
=2D	addl	%eax,		%esi
=2D	movl	(%edx),		%eax
=2D	addl	%eax,		%edi
=2D	movl	68(%esp),	%eax
=2D	addl	%eax,		%edi
=2D	movl	136(%esp),	%eax
=2D	movl	%ebx,		(%edx)
=2D	movl	%ebp,		4(%edx)
=2D	movl	%ecx,		8(%edx)
=2D	subl	$1,		%eax
=2D	movl	%esi,		12(%edx)
=2D	movl	%edi,		16(%edx)
+	xorl	%ebp,%eax
+	movl	44(%esp),%edx
+	xorl	%edi,%eax
+	addl	%eax,%esi
+	roll	$10,%ebx
+	addl	%edx,%esi
+	movl	128(%esp),%edx
+	roll	$11,%esi
+	addl	%ecx,%esi
+	movl	4(%edx),%eax
+	addl	%eax,%ebx
+	movl	72(%esp),%eax
+	addl	%eax,%ebx
+	movl	8(%edx),%eax
+	addl	%eax,%ebp
+	movl	76(%esp),%eax
+	addl	%eax,%ebp
+	movl	12(%edx),%eax
+	addl	%eax,%ecx
+	movl	80(%esp),%eax
+	addl	%eax,%ecx
+	movl	16(%edx),%eax
+	addl	%eax,%esi
+	movl	64(%esp),%eax
+	addl	%eax,%esi
+	movl	(%edx),%eax
+	addl	%eax,%edi
+	movl	68(%esp),%eax
+	addl	%eax,%edi
+	movl	136(%esp),%eax
+	movl	%ebx,(%edx)
+	movl	%ebp,4(%edx)
+	movl	%ecx,8(%edx)
+	subl	$1,%eax
+	movl	%esi,12(%edx)
+	movl	%edi,16(%edx)
 	jle	.L001get_out
=2D	movl	%eax,		136(%esp)
=2D	movl	%ecx,		%edi
=2D	movl	132(%esp),	%eax
=2D	movl	%ebx,		%ecx
=2D	addl	$64,		%eax
=2D	movl	%ebp,		%esi
=2D	movl	%eax,		132(%esp)
+	movl	%eax,136(%esp)
+	movl	%ecx,%edi
+	movl	132(%esp),%eax
+	movl	%ebx,%ecx
+	addl	$64,%eax
+	movl	%ebp,%esi
+	movl	%eax,132(%esp)
 	jmp	.L000start
 .L001get_out:
=2D	addl	$108,		%esp
+	addl	$108,%esp
 	popl	%ebx
 	popl	%ebp
 	popl	%edi
 	popl	%esi
 	ret
=2D.L_ripemd160_block_asm_host_order_end:
=2D	.size	ripemd160_block_asm_host_order,.L_ripemd160_block_asm_host_order_=
end-ripemd160_block_asm_host_order
=2D.ident	"desasm.pl"
+.size	ripemd160_block_asm_data_order,.-.L_ripemd160_block_asm_data_order_b=
egin
Index: secure/lib/libcrypto/i386/crypt586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/crypt586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/crypt586.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/crypt586.s,v 1.2.32.1 2010/02/1=
0 00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/md5-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/md5-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/md5-586.s	(working copy)
@@ -1,682 +1,674 @@
=2D	# $FreeBSD$
=2D
=2D
=2D
=2D
=2D
=2D
=2D	.file	"/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/md5=
/asm/md5-586.s"
=2D	.version	"01.01"
=2Dgcc2_compiled.:
+.file	"md5-586.s"
 .text
=2D	.align 16
=2D.globl md5_block_asm_host_order
=2D	.type	md5_block_asm_host_order,@function
=2Dmd5_block_asm_host_order:
+.globl	md5_block_asm_data_order
+.type	md5_block_asm_data_order,@function
+.align	16
+md5_block_asm_data_order:
+.L_md5_block_asm_data_order_begin:
 	pushl	%esi
 	pushl	%edi
=2D	movl	12(%esp),	%edi
=2D	movl	16(%esp),	%esi
=2D	movl	20(%esp),	%ecx
+	movl	12(%esp),%edi
+	movl	16(%esp),%esi
+	movl	20(%esp),%ecx
 	pushl	%ebp
=2D	sall	$6,		%ecx
+	shll	$6,%ecx
 	pushl	%ebx
=2D	addl	%esi,		%ecx
=2D	subl	$64,		%ecx
=2D	movl	(%edi),		%eax
+	addl	%esi,%ecx
+	subl	$64,%ecx
+	movl	(%edi),%eax
 	pushl	%ecx
=2D	movl	4(%edi),	%ebx
=2D	movl	8(%edi),	%ecx
=2D	movl	12(%edi),	%edx
+	movl	4(%edi),%ebx
+	movl	8(%edi),%ecx
+	movl	12(%edi),%edx
 .L000start:
=20
=20
=2D	movl	%ecx,		%edi
=2D	movl	(%esi),		%ebp
+	movl	%ecx,%edi
+	movl	(%esi),%ebp
=20
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
+	xorl	%edx,%edi
+	andl	%ebx,%edi
 	leal	3614090360(%eax,%ebp,1),%eax
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$7,		%eax
=2D	movl	4(%esi),	%ebp
=2D	addl	%ebx,		%eax
+	xorl	%edx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$7,%eax
+	movl	4(%esi),%ebp
+	addl	%ebx,%eax
=20
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
+	xorl	%ecx,%edi
+	andl	%eax,%edi
 	leal	3905402710(%edx,%ebp,1),%edx
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$12,		%edx
=2D	movl	8(%esi),	%ebp
=2D	addl	%eax,		%edx
+	xorl	%ecx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$12,%edx
+	movl	8(%esi),%ebp
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
+	xorl	%ebx,%edi
+	andl	%edx,%edi
 	leal	606105819(%ecx,%ebp,1),%ecx
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$17,		%ecx
=2D	movl	12(%esi),	%ebp
=2D	addl	%edx,		%ecx
+	xorl	%ebx,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$17,%ecx
+	movl	12(%esi),%ebp
+	addl	%edx,%ecx
=20
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
+	xorl	%eax,%edi
+	andl	%ecx,%edi
 	leal	3250441966(%ebx,%ebp,1),%ebx
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$22,		%ebx
=2D	movl	16(%esi),	%ebp
=2D	addl	%ecx,		%ebx
+	xorl	%eax,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$22,%ebx
+	movl	16(%esi),%ebp
+	addl	%ecx,%ebx
=20
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
+	xorl	%edx,%edi
+	andl	%ebx,%edi
 	leal	4118548399(%eax,%ebp,1),%eax
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$7,		%eax
=2D	movl	20(%esi),	%ebp
=2D	addl	%ebx,		%eax
+	xorl	%edx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$7,%eax
+	movl	20(%esi),%ebp
+	addl	%ebx,%eax
=20
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
+	xorl	%ecx,%edi
+	andl	%eax,%edi
 	leal	1200080426(%edx,%ebp,1),%edx
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$12,		%edx
=2D	movl	24(%esi),	%ebp
=2D	addl	%eax,		%edx
+	xorl	%ecx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$12,%edx
+	movl	24(%esi),%ebp
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
+	xorl	%ebx,%edi
+	andl	%edx,%edi
 	leal	2821735955(%ecx,%ebp,1),%ecx
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$17,		%ecx
=2D	movl	28(%esi),	%ebp
=2D	addl	%edx,		%ecx
+	xorl	%ebx,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$17,%ecx
+	movl	28(%esi),%ebp
+	addl	%edx,%ecx
=20
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
+	xorl	%eax,%edi
+	andl	%ecx,%edi
 	leal	4249261313(%ebx,%ebp,1),%ebx
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$22,		%ebx
=2D	movl	32(%esi),	%ebp
=2D	addl	%ecx,		%ebx
+	xorl	%eax,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$22,%ebx
+	movl	32(%esi),%ebp
+	addl	%ecx,%ebx
=20
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
+	xorl	%edx,%edi
+	andl	%ebx,%edi
 	leal	1770035416(%eax,%ebp,1),%eax
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$7,		%eax
=2D	movl	36(%esi),	%ebp
=2D	addl	%ebx,		%eax
+	xorl	%edx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$7,%eax
+	movl	36(%esi),%ebp
+	addl	%ebx,%eax
=20
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
+	xorl	%ecx,%edi
+	andl	%eax,%edi
 	leal	2336552879(%edx,%ebp,1),%edx
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$12,		%edx
=2D	movl	40(%esi),	%ebp
=2D	addl	%eax,		%edx
+	xorl	%ecx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$12,%edx
+	movl	40(%esi),%ebp
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
+	xorl	%ebx,%edi
+	andl	%edx,%edi
 	leal	4294925233(%ecx,%ebp,1),%ecx
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$17,		%ecx
=2D	movl	44(%esi),	%ebp
=2D	addl	%edx,		%ecx
+	xorl	%ebx,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$17,%ecx
+	movl	44(%esi),%ebp
+	addl	%edx,%ecx
=20
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
+	xorl	%eax,%edi
+	andl	%ecx,%edi
 	leal	2304563134(%ebx,%ebp,1),%ebx
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$22,		%ebx
=2D	movl	48(%esi),	%ebp
=2D	addl	%ecx,		%ebx
+	xorl	%eax,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$22,%ebx
+	movl	48(%esi),%ebp
+	addl	%ecx,%ebx
=20
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
+	xorl	%edx,%edi
+	andl	%ebx,%edi
 	leal	1804603682(%eax,%ebp,1),%eax
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$7,		%eax
=2D	movl	52(%esi),	%ebp
=2D	addl	%ebx,		%eax
+	xorl	%edx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$7,%eax
+	movl	52(%esi),%ebp
+	addl	%ebx,%eax
=20
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
+	xorl	%ecx,%edi
+	andl	%eax,%edi
 	leal	4254626195(%edx,%ebp,1),%edx
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$12,		%edx
=2D	movl	56(%esi),	%ebp
=2D	addl	%eax,		%edx
+	xorl	%ecx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$12,%edx
+	movl	56(%esi),%ebp
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
+	xorl	%ebx,%edi
+	andl	%edx,%edi
 	leal	2792965006(%ecx,%ebp,1),%ecx
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$17,		%ecx
=2D	movl	60(%esi),	%ebp
=2D	addl	%edx,		%ecx
+	xorl	%ebx,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$17,%ecx
+	movl	60(%esi),%ebp
+	addl	%edx,%ecx
=20
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
+	xorl	%eax,%edi
+	andl	%ecx,%edi
 	leal	1236535329(%ebx,%ebp,1),%ebx
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$22,		%ebx
=2D	movl	4(%esi),	%ebp
=2D	addl	%ecx,		%ebx
+	xorl	%eax,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$22,%ebx
+	movl	4(%esi),%ebp
+	addl	%ecx,%ebx
=20
=20
=20
 	leal	4129170786(%eax,%ebp,1),%eax
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
=2D	movl	24(%esi),	%ebp
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$5,		%eax
=2D	addl	%ebx,		%eax
+	xorl	%ebx,%edi
+	andl	%edx,%edi
+	movl	24(%esi),%ebp
+	xorl	%ecx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$5,%eax
+	addl	%ebx,%eax
=20
 	leal	3225465664(%edx,%ebp,1),%edx
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
=2D	movl	44(%esi),	%ebp
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$9,		%edx
=2D	addl	%eax,		%edx
+	xorl	%eax,%edi
+	andl	%ecx,%edi
+	movl	44(%esi),%ebp
+	xorl	%ebx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$9,%edx
+	addl	%eax,%edx
=20
 	leal	643717713(%ecx,%ebp,1),%ecx
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
=2D	movl	(%esi),		%ebp
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$14,		%ecx
=2D	addl	%edx,		%ecx
+	xorl	%edx,%edi
+	andl	%ebx,%edi
+	movl	(%esi),%ebp
+	xorl	%eax,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$14,%ecx
+	addl	%edx,%ecx
=20
 	leal	3921069994(%ebx,%ebp,1),%ebx
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
=2D	movl	20(%esi),	%ebp
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$20,		%ebx
=2D	addl	%ecx,		%ebx
+	xorl	%ecx,%edi
+	andl	%eax,%edi
+	movl	20(%esi),%ebp
+	xorl	%edx,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$20,%ebx
+	addl	%ecx,%ebx
=20
 	leal	3593408605(%eax,%ebp,1),%eax
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
=2D	movl	40(%esi),	%ebp
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$5,		%eax
=2D	addl	%ebx,		%eax
+	xorl	%ebx,%edi
+	andl	%edx,%edi
+	movl	40(%esi),%ebp
+	xorl	%ecx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$5,%eax
+	addl	%ebx,%eax
=20
 	leal	38016083(%edx,%ebp,1),%edx
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
=2D	movl	60(%esi),	%ebp
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$9,		%edx
=2D	addl	%eax,		%edx
+	xorl	%eax,%edi
+	andl	%ecx,%edi
+	movl	60(%esi),%ebp
+	xorl	%ebx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$9,%edx
+	addl	%eax,%edx
=20
 	leal	3634488961(%ecx,%ebp,1),%ecx
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
=2D	movl	16(%esi),	%ebp
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$14,		%ecx
=2D	addl	%edx,		%ecx
+	xorl	%edx,%edi
+	andl	%ebx,%edi
+	movl	16(%esi),%ebp
+	xorl	%eax,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$14,%ecx
+	addl	%edx,%ecx
=20
 	leal	3889429448(%ebx,%ebp,1),%ebx
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
=2D	movl	36(%esi),	%ebp
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$20,		%ebx
=2D	addl	%ecx,		%ebx
+	xorl	%ecx,%edi
+	andl	%eax,%edi
+	movl	36(%esi),%ebp
+	xorl	%edx,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$20,%ebx
+	addl	%ecx,%ebx
=20
 	leal	568446438(%eax,%ebp,1),%eax
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
=2D	movl	56(%esi),	%ebp
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$5,		%eax
=2D	addl	%ebx,		%eax
+	xorl	%ebx,%edi
+	andl	%edx,%edi
+	movl	56(%esi),%ebp
+	xorl	%ecx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$5,%eax
+	addl	%ebx,%eax
=20
 	leal	3275163606(%edx,%ebp,1),%edx
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
=2D	movl	12(%esi),	%ebp
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$9,		%edx
=2D	addl	%eax,		%edx
+	xorl	%eax,%edi
+	andl	%ecx,%edi
+	movl	12(%esi),%ebp
+	xorl	%ebx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$9,%edx
+	addl	%eax,%edx
=20
 	leal	4107603335(%ecx,%ebp,1),%ecx
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
=2D	movl	32(%esi),	%ebp
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$14,		%ecx
=2D	addl	%edx,		%ecx
+	xorl	%edx,%edi
+	andl	%ebx,%edi
+	movl	32(%esi),%ebp
+	xorl	%eax,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$14,%ecx
+	addl	%edx,%ecx
=20
 	leal	1163531501(%ebx,%ebp,1),%ebx
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
=2D	movl	52(%esi),	%ebp
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$20,		%ebx
=2D	addl	%ecx,		%ebx
+	xorl	%ecx,%edi
+	andl	%eax,%edi
+	movl	52(%esi),%ebp
+	xorl	%edx,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$20,%ebx
+	addl	%ecx,%ebx
=20
 	leal	2850285829(%eax,%ebp,1),%eax
=2D	xorl	%ebx,		%edi
=2D	andl	%edx,		%edi
=2D	movl	8(%esi),	%ebp
=2D	xorl	%ecx,		%edi
=2D	addl	%edi,		%eax
=2D	movl	%ebx,		%edi
=2D	roll	$5,		%eax
=2D	addl	%ebx,		%eax
+	xorl	%ebx,%edi
+	andl	%edx,%edi
+	movl	8(%esi),%ebp
+	xorl	%ecx,%edi
+	addl	%edi,%eax
+	movl	%ebx,%edi
+	roll	$5,%eax
+	addl	%ebx,%eax
=20
 	leal	4243563512(%edx,%ebp,1),%edx
=2D	xorl	%eax,		%edi
=2D	andl	%ecx,		%edi
=2D	movl	28(%esi),	%ebp
=2D	xorl	%ebx,		%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$9,		%edx
=2D	addl	%eax,		%edx
+	xorl	%eax,%edi
+	andl	%ecx,%edi
+	movl	28(%esi),%ebp
+	xorl	%ebx,%edi
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$9,%edx
+	addl	%eax,%edx
=20
 	leal	1735328473(%ecx,%ebp,1),%ecx
=2D	xorl	%edx,		%edi
=2D	andl	%ebx,		%edi
=2D	movl	48(%esi),	%ebp
=2D	xorl	%eax,		%edi
=2D	addl	%edi,		%ecx
=2D	movl	%edx,		%edi
=2D	roll	$14,		%ecx
=2D	addl	%edx,		%ecx
+	xorl	%edx,%edi
+	andl	%ebx,%edi
+	movl	48(%esi),%ebp
+	xorl	%eax,%edi
+	addl	%edi,%ecx
+	movl	%edx,%edi
+	roll	$14,%ecx
+	addl	%edx,%ecx
=20
 	leal	2368359562(%ebx,%ebp,1),%ebx
=2D	xorl	%ecx,		%edi
=2D	andl	%eax,		%edi
=2D	movl	20(%esi),	%ebp
=2D	xorl	%edx,		%edi
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$20,		%ebx
=2D	addl	%ecx,		%ebx
+	xorl	%ecx,%edi
+	andl	%eax,%edi
+	movl	20(%esi),%ebp
+	xorl	%edx,%edi
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$20,%ebx
+	addl	%ecx,%ebx
=20
=20
=20
=2D	xorl	%edx,		%edi
=2D	xorl	%ebx,		%edi
+	xorl	%edx,%edi
+	xorl	%ebx,%edi
 	leal	4294588738(%eax,%ebp,1),%eax
=2D	addl	%edi,		%eax
=2D	roll	$4,		%eax
=2D	movl	32(%esi),	%ebp
=2D	movl	%ebx,		%edi
+	addl	%edi,%eax
+	roll	$4,%eax
+	movl	32(%esi),%ebp
+	movl	%ebx,%edi
=20
 	leal	2272392833(%edx,%ebp,1),%edx
=2D	addl	%ebx,		%eax
=2D	xorl	%ecx,		%edi
=2D	xorl	%eax,		%edi
=2D	movl	44(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$11,		%edx
=2D	addl	%eax,		%edx
+	addl	%ebx,%eax
+	xorl	%ecx,%edi
+	xorl	%eax,%edi
+	movl	44(%esi),%ebp
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$11,%edx
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	xorl	%edx,		%edi
+	xorl	%ebx,%edi
+	xorl	%edx,%edi
 	leal	1839030562(%ecx,%ebp,1),%ecx
=2D	addl	%edi,		%ecx
=2D	roll	$16,		%ecx
=2D	movl	56(%esi),	%ebp
=2D	movl	%edx,		%edi
+	addl	%edi,%ecx
+	roll	$16,%ecx
+	movl	56(%esi),%ebp
+	movl	%edx,%edi
=20
 	leal	4259657740(%ebx,%ebp,1),%ebx
=2D	addl	%edx,		%ecx
=2D	xorl	%eax,		%edi
=2D	xorl	%ecx,		%edi
=2D	movl	4(%esi),	%ebp
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$23,		%ebx
=2D	addl	%ecx,		%ebx
+	addl	%edx,%ecx
+	xorl	%eax,%edi
+	xorl	%ecx,%edi
+	movl	4(%esi),%ebp
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$23,%ebx
+	addl	%ecx,%ebx
=20
=2D	xorl	%edx,		%edi
=2D	xorl	%ebx,		%edi
+	xorl	%edx,%edi
+	xorl	%ebx,%edi
 	leal	2763975236(%eax,%ebp,1),%eax
=2D	addl	%edi,		%eax
=2D	roll	$4,		%eax
=2D	movl	16(%esi),	%ebp
=2D	movl	%ebx,		%edi
+	addl	%edi,%eax
+	roll	$4,%eax
+	movl	16(%esi),%ebp
+	movl	%ebx,%edi
=20
 	leal	1272893353(%edx,%ebp,1),%edx
=2D	addl	%ebx,		%eax
=2D	xorl	%ecx,		%edi
=2D	xorl	%eax,		%edi
=2D	movl	28(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$11,		%edx
=2D	addl	%eax,		%edx
+	addl	%ebx,%eax
+	xorl	%ecx,%edi
+	xorl	%eax,%edi
+	movl	28(%esi),%ebp
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$11,%edx
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	xorl	%edx,		%edi
+	xorl	%ebx,%edi
+	xorl	%edx,%edi
 	leal	4139469664(%ecx,%ebp,1),%ecx
=2D	addl	%edi,		%ecx
=2D	roll	$16,		%ecx
=2D	movl	40(%esi),	%ebp
=2D	movl	%edx,		%edi
+	addl	%edi,%ecx
+	roll	$16,%ecx
+	movl	40(%esi),%ebp
+	movl	%edx,%edi
=20
 	leal	3200236656(%ebx,%ebp,1),%ebx
=2D	addl	%edx,		%ecx
=2D	xorl	%eax,		%edi
=2D	xorl	%ecx,		%edi
=2D	movl	52(%esi),	%ebp
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$23,		%ebx
=2D	addl	%ecx,		%ebx
+	addl	%edx,%ecx
+	xorl	%eax,%edi
+	xorl	%ecx,%edi
+	movl	52(%esi),%ebp
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$23,%ebx
+	addl	%ecx,%ebx
=20
=2D	xorl	%edx,		%edi
=2D	xorl	%ebx,		%edi
+	xorl	%edx,%edi
+	xorl	%ebx,%edi
 	leal	681279174(%eax,%ebp,1),%eax
=2D	addl	%edi,		%eax
=2D	roll	$4,		%eax
=2D	movl	(%esi),		%ebp
=2D	movl	%ebx,		%edi
+	addl	%edi,%eax
+	roll	$4,%eax
+	movl	(%esi),%ebp
+	movl	%ebx,%edi
=20
 	leal	3936430074(%edx,%ebp,1),%edx
=2D	addl	%ebx,		%eax
=2D	xorl	%ecx,		%edi
=2D	xorl	%eax,		%edi
=2D	movl	12(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$11,		%edx
=2D	addl	%eax,		%edx
+	addl	%ebx,%eax
+	xorl	%ecx,%edi
+	xorl	%eax,%edi
+	movl	12(%esi),%ebp
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$11,%edx
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	xorl	%edx,		%edi
+	xorl	%ebx,%edi
+	xorl	%edx,%edi
 	leal	3572445317(%ecx,%ebp,1),%ecx
=2D	addl	%edi,		%ecx
=2D	roll	$16,		%ecx
=2D	movl	24(%esi),	%ebp
=2D	movl	%edx,		%edi
+	addl	%edi,%ecx
+	roll	$16,%ecx
+	movl	24(%esi),%ebp
+	movl	%edx,%edi
=20
 	leal	76029189(%ebx,%ebp,1),%ebx
=2D	addl	%edx,		%ecx
=2D	xorl	%eax,		%edi
=2D	xorl	%ecx,		%edi
=2D	movl	36(%esi),	%ebp
=2D	addl	%edi,		%ebx
=2D	movl	%ecx,		%edi
=2D	roll	$23,		%ebx
=2D	addl	%ecx,		%ebx
+	addl	%edx,%ecx
+	xorl	%eax,%edi
+	xorl	%ecx,%edi
+	movl	36(%esi),%ebp
+	addl	%edi,%ebx
+	movl	%ecx,%edi
+	roll	$23,%ebx
+	addl	%ecx,%ebx
=20
=2D	xorl	%edx,		%edi
=2D	xorl	%ebx,		%edi
+	xorl	%edx,%edi
+	xorl	%ebx,%edi
 	leal	3654602809(%eax,%ebp,1),%eax
=2D	addl	%edi,		%eax
=2D	roll	$4,		%eax
=2D	movl	48(%esi),	%ebp
=2D	movl	%ebx,		%edi
+	addl	%edi,%eax
+	roll	$4,%eax
+	movl	48(%esi),%ebp
+	movl	%ebx,%edi
=20
 	leal	3873151461(%edx,%ebp,1),%edx
=2D	addl	%ebx,		%eax
=2D	xorl	%ecx,		%edi
=2D	xorl	%eax,		%edi
=2D	movl	60(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	%eax,		%edi
=2D	roll	$11,		%edx
=2D	addl	%eax,		%edx
+	addl	%ebx,%eax
+	xorl	%ecx,%edi
+	xorl	%eax,%edi
+	movl	60(%esi),%ebp
+	addl	%edi,%edx
+	movl	%eax,%edi
+	roll	$11,%edx
+	addl	%eax,%edx
=20
=2D	xorl	%ebx,		%edi
=2D	xorl	%edx,		%edi
+	xorl	%ebx,%edi
+	xorl	%edx,%edi
 	leal	530742520(%ecx,%ebp,1),%ecx
=2D	addl	%edi,		%ecx
=2D	roll	$16,		%ecx
=2D	movl	8(%esi),	%ebp
=2D	movl	%edx,		%edi
+	addl	%edi,%ecx
+	roll	$16,%ecx
+	movl	8(%esi),%ebp
+	movl	%edx,%edi
=20
 	leal	3299628645(%ebx,%ebp,1),%ebx
=2D	addl	%edx,		%ecx
=2D	xorl	%eax,		%edi
=2D	xorl	%ecx,		%edi
=2D	movl	(%esi),		%ebp
=2D	addl	%edi,		%ebx
=2D	movl	$-1,		%edi
=2D	roll	$23,		%ebx
=2D	addl	%ecx,		%ebx
+	addl	%edx,%ecx
+	xorl	%eax,%edi
+	xorl	%ecx,%edi
+	movl	(%esi),%ebp
+	addl	%edi,%ebx
+	movl	$-1,%edi
+	roll	$23,%ebx
+	addl	%ecx,%ebx
=20
=20
=20
=2D	xorl	%edx,		%edi
=2D	orl	%ebx,		%edi
+	xorl	%edx,%edi
+	orl	%ebx,%edi
 	leal	4096336452(%eax,%ebp,1),%eax
=2D	xorl	%ecx,		%edi
=2D	movl	28(%esi),	%ebp
=2D	addl	%edi,		%eax
=2D	movl	$-1,		%edi
=2D	roll	$6,		%eax
=2D	xorl	%ecx,		%edi
=2D	addl	%ebx,		%eax
+	xorl	%ecx,%edi
+	movl	28(%esi),%ebp
+	addl	%edi,%eax
+	movl	$-1,%edi
+	roll	$6,%eax
+	xorl	%ecx,%edi
+	addl	%ebx,%eax
=20
=2D	orl	%eax,		%edi
+	orl	%eax,%edi
 	leal	1126891415(%edx,%ebp,1),%edx
=2D	xorl	%ebx,		%edi
=2D	movl	56(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	$-1,		%edi
=2D	roll	$10,		%edx
=2D	xorl	%ebx,		%edi
=2D	addl	%eax,		%edx
+	xorl	%ebx,%edi
+	movl	56(%esi),%ebp
+	addl	%edi,%edx
+	movl	$-1,%edi
+	roll	$10,%edx
+	xorl	%ebx,%edi
+	addl	%eax,%edx
=20
=2D	orl	%edx,		%edi
+	orl	%edx,%edi
 	leal	2878612391(%ecx,%ebp,1),%ecx
=2D	xorl	%eax,		%edi
=2D	movl	20(%esi),	%ebp
=2D	addl	%edi,		%ecx
=2D	movl	$-1,		%edi
=2D	roll	$15,		%ecx
=2D	xorl	%eax,		%edi
=2D	addl	%edx,		%ecx
+	xorl	%eax,%edi
+	movl	20(%esi),%ebp
+	addl	%edi,%ecx
+	movl	$-1,%edi
+	roll	$15,%ecx
+	xorl	%eax,%edi
+	addl	%edx,%ecx
=20
=2D	orl	%ecx,		%edi
+	orl	%ecx,%edi
 	leal	4237533241(%ebx,%ebp,1),%ebx
=2D	xorl	%edx,		%edi
=2D	movl	48(%esi),	%ebp
=2D	addl	%edi,		%ebx
=2D	movl	$-1,		%edi
=2D	roll	$21,		%ebx
=2D	xorl	%edx,		%edi
=2D	addl	%ecx,		%ebx
+	xorl	%edx,%edi
+	movl	48(%esi),%ebp
+	addl	%edi,%ebx
+	movl	$-1,%edi
+	roll	$21,%ebx
+	xorl	%edx,%edi
+	addl	%ecx,%ebx
=20
=2D	orl	%ebx,		%edi
+	orl	%ebx,%edi
 	leal	1700485571(%eax,%ebp,1),%eax
=2D	xorl	%ecx,		%edi
=2D	movl	12(%esi),	%ebp
=2D	addl	%edi,		%eax
=2D	movl	$-1,		%edi
=2D	roll	$6,		%eax
=2D	xorl	%ecx,		%edi
=2D	addl	%ebx,		%eax
+	xorl	%ecx,%edi
+	movl	12(%esi),%ebp
+	addl	%edi,%eax
+	movl	$-1,%edi
+	roll	$6,%eax
+	xorl	%ecx,%edi
+	addl	%ebx,%eax
=20
=2D	orl	%eax,		%edi
+	orl	%eax,%edi
 	leal	2399980690(%edx,%ebp,1),%edx
=2D	xorl	%ebx,		%edi
=2D	movl	40(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	$-1,		%edi
=2D	roll	$10,		%edx
=2D	xorl	%ebx,		%edi
=2D	addl	%eax,		%edx
+	xorl	%ebx,%edi
+	movl	40(%esi),%ebp
+	addl	%edi,%edx
+	movl	$-1,%edi
+	roll	$10,%edx
+	xorl	%ebx,%edi
+	addl	%eax,%edx
=20
=2D	orl	%edx,		%edi
+	orl	%edx,%edi
 	leal	4293915773(%ecx,%ebp,1),%ecx
=2D	xorl	%eax,		%edi
=2D	movl	4(%esi),	%ebp
=2D	addl	%edi,		%ecx
=2D	movl	$-1,		%edi
=2D	roll	$15,		%ecx
=2D	xorl	%eax,		%edi
=2D	addl	%edx,		%ecx
+	xorl	%eax,%edi
+	movl	4(%esi),%ebp
+	addl	%edi,%ecx
+	movl	$-1,%edi
+	roll	$15,%ecx
+	xorl	%eax,%edi
+	addl	%edx,%ecx
=20
=2D	orl	%ecx,		%edi
+	orl	%ecx,%edi
 	leal	2240044497(%ebx,%ebp,1),%ebx
=2D	xorl	%edx,		%edi
=2D	movl	32(%esi),	%ebp
=2D	addl	%edi,		%ebx
=2D	movl	$-1,		%edi
=2D	roll	$21,		%ebx
=2D	xorl	%edx,		%edi
=2D	addl	%ecx,		%ebx
+	xorl	%edx,%edi
+	movl	32(%esi),%ebp
+	addl	%edi,%ebx
+	movl	$-1,%edi
+	roll	$21,%ebx
+	xorl	%edx,%edi
+	addl	%ecx,%ebx
=20
=2D	orl	%ebx,		%edi
+	orl	%ebx,%edi
 	leal	1873313359(%eax,%ebp,1),%eax
=2D	xorl	%ecx,		%edi
=2D	movl	60(%esi),	%ebp
=2D	addl	%edi,		%eax
=2D	movl	$-1,		%edi
=2D	roll	$6,		%eax
=2D	xorl	%ecx,		%edi
=2D	addl	%ebx,		%eax
+	xorl	%ecx,%edi
+	movl	60(%esi),%ebp
+	addl	%edi,%eax
+	movl	$-1,%edi
+	roll	$6,%eax
+	xorl	%ecx,%edi
+	addl	%ebx,%eax
=20
=2D	orl	%eax,		%edi
+	orl	%eax,%edi
 	leal	4264355552(%edx,%ebp,1),%edx
=2D	xorl	%ebx,		%edi
=2D	movl	24(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	$-1,		%edi
=2D	roll	$10,		%edx
=2D	xorl	%ebx,		%edi
=2D	addl	%eax,		%edx
+	xorl	%ebx,%edi
+	movl	24(%esi),%ebp
+	addl	%edi,%edx
+	movl	$-1,%edi
+	roll	$10,%edx
+	xorl	%ebx,%edi
+	addl	%eax,%edx
=20
=2D	orl	%edx,		%edi
+	orl	%edx,%edi
 	leal	2734768916(%ecx,%ebp,1),%ecx
=2D	xorl	%eax,		%edi
=2D	movl	52(%esi),	%ebp
=2D	addl	%edi,		%ecx
=2D	movl	$-1,		%edi
=2D	roll	$15,		%ecx
=2D	xorl	%eax,		%edi
=2D	addl	%edx,		%ecx
+	xorl	%eax,%edi
+	movl	52(%esi),%ebp
+	addl	%edi,%ecx
+	movl	$-1,%edi
+	roll	$15,%ecx
+	xorl	%eax,%edi
+	addl	%edx,%ecx
=20
=2D	orl	%ecx,		%edi
+	orl	%ecx,%edi
 	leal	1309151649(%ebx,%ebp,1),%ebx
=2D	xorl	%edx,		%edi
=2D	movl	16(%esi),	%ebp
=2D	addl	%edi,		%ebx
=2D	movl	$-1,		%edi
=2D	roll	$21,		%ebx
=2D	xorl	%edx,		%edi
=2D	addl	%ecx,		%ebx
+	xorl	%edx,%edi
+	movl	16(%esi),%ebp
+	addl	%edi,%ebx
+	movl	$-1,%edi
+	roll	$21,%ebx
+	xorl	%edx,%edi
+	addl	%ecx,%ebx
=20
=2D	orl	%ebx,		%edi
+	orl	%ebx,%edi
 	leal	4149444226(%eax,%ebp,1),%eax
=2D	xorl	%ecx,		%edi
=2D	movl	44(%esi),	%ebp
=2D	addl	%edi,		%eax
=2D	movl	$-1,		%edi
=2D	roll	$6,		%eax
=2D	xorl	%ecx,		%edi
=2D	addl	%ebx,		%eax
+	xorl	%ecx,%edi
+	movl	44(%esi),%ebp
+	addl	%edi,%eax
+	movl	$-1,%edi
+	roll	$6,%eax
+	xorl	%ecx,%edi
+	addl	%ebx,%eax
=20
=2D	orl	%eax,		%edi
+	orl	%eax,%edi
 	leal	3174756917(%edx,%ebp,1),%edx
=2D	xorl	%ebx,		%edi
=2D	movl	8(%esi),	%ebp
=2D	addl	%edi,		%edx
=2D	movl	$-1,		%edi
=2D	roll	$10,		%edx
=2D	xorl	%ebx,		%edi
=2D	addl	%eax,		%edx
+	xorl	%ebx,%edi
+	movl	8(%esi),%ebp
+	addl	%edi,%edx
+	movl	$-1,%edi
+	roll	$10,%edx
+	xorl	%ebx,%edi
+	addl	%eax,%edx
=20
=2D	orl	%edx,		%edi
+	orl	%edx,%edi
 	leal	718787259(%ecx,%ebp,1),%ecx
=2D	xorl	%eax,		%edi
=2D	movl	36(%esi),	%ebp
=2D	addl	%edi,		%ecx
=2D	movl	$-1,		%edi
=2D	roll	$15,		%ecx
=2D	xorl	%eax,		%edi
=2D	addl	%edx,		%ecx
+	xorl	%eax,%edi
+	movl	36(%esi),%ebp
+	addl	%edi,%ecx
+	movl	$-1,%edi
+	roll	$15,%ecx
+	xorl	%eax,%edi
+	addl	%edx,%ecx
=20
=2D	orl	%ecx,		%edi
+	orl	%ecx,%edi
 	leal	3951481745(%ebx,%ebp,1),%ebx
=2D	xorl	%edx,		%edi
=2D	movl	24(%esp),	%ebp
=2D	addl	%edi,		%ebx
=2D	addl	$64,		%esi
=2D	roll	$21,		%ebx
=2D	movl	(%ebp),		%edi
=2D	addl	%ecx,		%ebx
=2D	addl	%edi,		%eax
=2D	movl	4(%ebp),	%edi
=2D	addl	%edi,		%ebx
=2D	movl	8(%ebp),	%edi
=2D	addl	%edi,		%ecx
=2D	movl	12(%ebp),	%edi
=2D	addl	%edi,		%edx
=2D	movl	%eax,		(%ebp)
=2D	movl	%ebx,		4(%ebp)
=2D	movl	(%esp),		%edi
=2D	movl	%ecx,		8(%ebp)
=2D	movl	%edx,		12(%ebp)
=2D	cmpl	%esi,		%edi
+	xorl	%edx,%edi
+	movl	24(%esp),%ebp
+	addl	%edi,%ebx
+	addl	$64,%esi
+	roll	$21,%ebx
+	movl	(%ebp),%edi
+	addl	%ecx,%ebx
+	addl	%edi,%eax
+	movl	4(%ebp),%edi
+	addl	%edi,%ebx
+	movl	8(%ebp),%edi
+	addl	%edi,%ecx
+	movl	12(%ebp),%edi
+	addl	%edi,%edx
+	movl	%eax,(%ebp)
+	movl	%ebx,4(%ebp)
+	movl	(%esp),%edi
+	movl	%ecx,8(%ebp)
+	movl	%edx,12(%ebp)
+	cmpl	%esi,%edi
 	jae	.L000start
 	popl	%eax
 	popl	%ebx
@@ -684,6 +676,4 @@
 	popl	%edi
 	popl	%esi
 	ret
=2D.L_md5_block_asm_host_order_end:
=2D	.size	md5_block_asm_host_order,.L_md5_block_asm_host_order_end-md5_bloc=
k_asm_host_order
=2D.ident	"desasm.pl"
+.size	md5_block_asm_data_order,.-.L_md5_block_asm_data_order_begin
Index: secure/lib/libcrypto/i386/bf-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/bf-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/bf-586.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/bf-586.s,v 1.2.32.1 2010/02/10 =
00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/bf-686.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/bf-686.s	(revision 218560)
+++ secure/lib/libcrypto/i386/bf-686.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/bf-686.s,v 1.2.32.1 2010/02/10 =
00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/rc4-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/rc4-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/rc4-586.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/rc4-586.s,v 1.2.32.1 2010/02/10=
 00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/rc5-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/rc5-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/rc5-586.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/rc5-586.s,v 1.2.32.1 2010/02/10=
 00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/cast-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/cast-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/cast-586.s	(working copy)
@@ -1,4 +1,4 @@
=2D	# $FreeBSD$
+	# $FreeBSD: src/secure/lib/libcrypto/i386/cast-586.s,v 1.2.32.1 2010/02/1=
0 00:26:20 kensmith Exp $
=20
=20
=20
Index: secure/lib/libcrypto/i386/sha1-586.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/i386/sha1-586.s	(revision 218560)
+++ secure/lib/libcrypto/i386/sha1-586.s	(working copy)
@@ -1,1537 +1,1442 @@
=2D	# $FreeBSD$
=2D
=2D
=2D
=2D
=2D
=2D
=2D	.file	"sha1-586.s"
=2D	.version	"01.01"
=2Dgcc2_compiled.:
+.file	"sha1-586.s"
 .text
=2D	.align 16
=2D.globl sha1_block_asm_data_order
=2D	.type	sha1_block_asm_data_order,@function
=2Dsha1_block_asm_data_order:
=2D	movl	12(%esp),	%ecx
=2D	pushl	%esi
=2D	sall	$6,		%ecx
=2D	movl	12(%esp),	%esi
+.globl	sha1_block_data_order
+.type	sha1_block_data_order,@function
+.align	16
+sha1_block_data_order:
+.L_sha1_block_data_order_begin:
 	pushl	%ebp
=2D	addl	%esi,		%ecx
 	pushl	%ebx
=2D	movl	16(%esp),	%ebp
+	pushl	%esi
 	pushl	%edi
=2D	movl	12(%ebp),	%edx
=2D	subl	$108,		%esp
=2D	movl	16(%ebp),	%edi
=2D	movl	8(%ebp),	%ebx
=2D	movl	%ecx,		68(%esp)
+	movl	20(%esp),%ebp
+	movl	24(%esp),%esi
+	movl	28(%esp),%eax
+	subl	$64,%esp
+	shll	$6,%eax
+	addl	%esi,%eax
+	movl	%eax,92(%esp)
+	movl	16(%ebp),%edi
+.align	16
+.L000loop:
+	movl	(%esi),%eax
+	movl	4(%esi),%ebx
+	movl	8(%esi),%ecx
+	movl	12(%esi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,(%esp)
+	movl	%ebx,4(%esp)
+	movl	%ecx,8(%esp)
+	movl	%edx,12(%esp)
+	movl	16(%esi),%eax
+	movl	20(%esi),%ebx
+	movl	24(%esi),%ecx
+	movl	28(%esi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,16(%esp)
+	movl	%ebx,20(%esp)
+	movl	%ecx,24(%esp)
+	movl	%edx,28(%esp)
+	movl	32(%esi),%eax
+	movl	36(%esi),%ebx
+	movl	40(%esi),%ecx
+	movl	44(%esi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,32(%esp)
+	movl	%ebx,36(%esp)
+	movl	%ecx,40(%esp)
+	movl	%edx,44(%esp)
+	movl	48(%esi),%eax
+	movl	52(%esi),%ebx
+	movl	56(%esi),%ecx
+	movl	60(%esi),%edx
+	bswap	%eax
+	bswap	%ebx
+	bswap	%ecx
+	bswap	%edx
+	movl	%eax,48(%esp)
+	movl	%ebx,52(%esp)
+	movl	%ecx,56(%esp)
+	movl	%edx,60(%esp)
+	movl	%esi,88(%esp)
+	movl	(%ebp),%eax
+	movl	4(%ebp),%ebx
+	movl	8(%ebp),%ecx
+	movl	12(%ebp),%edx
=20
=2D.L000start:
=2D
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		(%esp)
=2D	movl	%ecx,		4(%esp)
=2D	movl	8(%esi),	%eax
=2D	movl	12(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		8(%esp)
=2D	movl	%ecx,		12(%esp)
=2D	movl	16(%esi),	%eax
=2D	movl	20(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		16(%esp)
=2D	movl	%ecx,		20(%esp)
=2D	movl	24(%esi),	%eax
=2D	movl	28(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		24(%esp)
=2D	movl	%ecx,		28(%esp)
=2D	movl	32(%esi),	%eax
=2D	movl	36(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		32(%esp)
=2D	movl	%ecx,		36(%esp)
=2D	movl	40(%esi),	%eax
=2D	movl	44(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		40(%esp)
=2D	movl	%ecx,		44(%esp)
=2D	movl	48(%esi),	%eax
=2D	movl	52(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		48(%esp)
=2D	movl	%ecx,		52(%esp)
=2D	movl	56(%esi),	%eax
=2D	movl	60(%esi),	%ecx
=2D.byte 15
=2D.byte 200=09
=2D.byte 15
=2D.byte 201=09
=2D	movl	%eax,		56(%esp)
=2D	movl	%ecx,		60(%esp)
=2D
=2D
=2D	movl	%esi,		132(%esp)
=2D.L001shortcut:
=2D
=2D
=2D	movl	(%ebp),		%eax
=2D	movl	4(%ebp),	%ecx
=2D
=2D	movl	%eax,		%ebp
=2D	movl	%ebx,		%esi
=2D	roll	$5,		%ebp
=2D	xorl	%edx,		%esi
=2D	andl	%ecx,		%esi
=2D	rorl	$2,		%ecx
=2D	addl	%edi,		%ebp
=2D	movl	(%esp),		%edi
=2D	xorl	%edx,		%esi
+	movl	%ecx,%esi
+	movl	%eax,%ebp
+	roll	$5,%ebp
+	xorl	%edx,%esi
+	addl	%edi,%ebp
+	andl	%ebx,%esi
+	movl	(%esp),%edi
+	xorl	%edx,%esi
+	rorl	$2,%ebx
 	leal	1518500249(%ebp,%edi,1),%ebp
=2D	addl	%ebp,		%esi
+	addl	%esi,%ebp
=20
=2D	movl	%esi,		%ebp
=2D	movl	%ecx,		%edi
=2D	roll	$5,		%ebp
=2D	xorl	%ebx,		%edi
=2D	andl	%eax,		%edi
=2D	rorl	$2,		%eax
=2D	addl	%edx,		%ebp
=2D	movl	4(%esp),	%edx
=2D	xorl	%ebx,		%edi
+	movl	%ebx,%edi
+	movl	%ebp,%esi
+	roll	$5,%ebp
+	xorl	%ecx,%edi
+	addl	%edx,%ebp
+	andl	%eax,%edi
+	movl	4(%esp),%edx
+	xorl	%ecx,%edi
+	rorl	$2,%eax
 	leal	1518500249(%ebp,%edx,1),%ebp
=2D	addl	%ebp,		%edi
+	addl	%edi,%ebp
=20
=2D	movl	%edi,		%ebp
=2D	movl	%eax,		%edx
=2D	roll	$5,		%ebp
=2D	xorl	%ecx,		%edx
=2D	andl	%esi,		%edx
=2D	rorl	$2,		%esi
=2D	addl	%ebx,		%ebp
=2D	movl	8(%esp),	%ebx
=2D	xorl	%ecx,		%edx
=2D	leal	1518500249(%ebp,%ebx,1),%ebp
=2D	addl	%ebp,		%edx
=2D
=2D	movl	%edx,		%ebp
=2D	movl	%esi,		%ebx
=2D	roll	$5,		%ebp
=2D	xorl	%eax,		%ebx
=2D	andl	%edi,		%ebx
=2D	rorl	$2,		%edi
=2D	addl	%ecx,		%ebp
=2D	movl	12(%esp),	%ecx
=2D	xorl	%eax,		%ebx
+	movl	%eax,%edx
+	movl	%ebp,%edi
+	roll	$5,%ebp
+	xorl	%ebx,%edx
+	addl	%ecx,%ebp
+	andl	%esi,%edx
+	movl	8(%esp),%ecx
+	xorl	%ebx,%edx
+	rorl	$2,%esi
 	leal	1518500249(%ebp,%ecx,1),%ebp
=2D	addl	%ebp,		%ebx
+	addl	%edx,%ebp
=20
=2D	movl	%ebx,		%ebp
=2D	movl	%edi,		%ecx
=2D	roll	$5,		%ebp
=2D	xorl	%esi,		%ecx
=2D	andl	%edx,		%ecx
=2D	rorl	$2,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	16(%esp),	%eax
=2D	xorl	%esi,		%ecx
+	movl	%esi,%ecx
+	movl	%ebp,%edx
+	roll	$5,%ebp
+	xorl	%eax,%ecx
+	addl	%ebx,%ebp
+	andl	%edi,%ecx
+	movl	12(%esp),%ebx
+	xorl	%eax,%ecx
+	rorl	$2,%edi
+	leal	1518500249(%ebp,%ebx,1),%ebp
+	addl	%ecx,%ebp
+
+	movl	%edi,%ebx
+	movl	%ebp,%ecx
+	roll	$5,%ebp
+	xorl	%esi,%ebx
+	addl	%eax,%ebp
+	andl	%edx,%ebx
+	movl	16(%esp),%eax
+	xorl	%esi,%ebx
+	rorl	$2,%edx
 	leal	1518500249(%ebp,%eax,1),%ebp
=2D	addl	%ebp,		%ecx
+	addl	%ebx,%ebp
=20
=2D	movl	%ecx,		%ebp
=2D	movl	%edx,		%eax
=2D	roll	$5,		%ebp
=2D	xorl	%edi,		%eax
=2D	andl	%ebx,		%eax
=2D	rorl	$2,		%ebx
=2D	addl	%esi,		%ebp
=2D	movl	20(%esp),	%esi
=2D	xorl	%edi,		%eax
+	movl	%edx,%eax
+	movl	%ebp,%ebx
+	roll	$5,%ebp
+	xorl	%edi,%eax
+	addl	%esi,%ebp
+	andl	%ecx,%eax
+	movl	20(%esp),%esi
+	xorl	%edi,%eax
+	rorl	$2,%ecx
 	leal	1518500249(%ebp,%esi,1),%ebp
=2D	addl	%ebp,		%eax
+	addl	%eax,%ebp
=20
=2D	movl	%eax,		%ebp
=2D	movl	%ebx,		%esi
=2D	roll	$5,		%ebp
=2D	xorl	%edx,		%esi
=2D	andl	%ecx,		%esi
=2D	rorl	$2,		%ecx
=2D	addl	%edi,		%ebp
=2D	movl	24(%esp),	%edi
=2D	xorl	%edx,		%esi
+	movl	%ecx,%esi
+	movl	%ebp,%eax
+	roll	$5,%ebp
+	xorl	%edx,%esi
+	addl	%edi,%ebp
+	andl	%ebx,%esi
+	movl	24(%esp),%edi
+	xorl	%edx,%esi
+	rorl	$2,%ebx
 	leal	1518500249(%ebp,%edi,1),%ebp
=2D	addl	%ebp,		%esi
+	addl	%esi,%ebp
=20
=2D	movl	%esi,		%ebp
=2D	movl	%ecx,		%edi
=2D	roll	$5,		%ebp
=2D	xorl	%ebx,		%edi
=2D	andl	%eax,		%edi
=2D	rorl	$2,		%eax
=2D	addl	%edx,		%ebp
=2D	movl	28(%esp),	%edx
=2D	xorl	%ebx,		%edi
+	movl	%ebx,%edi
+	movl	%ebp,%esi
+	roll	$5,%ebp
+	xorl	%ecx,%edi
+	addl	%edx,%ebp
+	andl	%eax,%edi
+	movl	28(%esp),%edx
+	xorl	%ecx,%edi
+	rorl	$2,%eax
 	leal	1518500249(%ebp,%edx,1),%ebp
=2D	addl	%ebp,		%edi
+	addl	%edi,%ebp
=20
=2D	movl	%edi,		%ebp
=2D	movl	%eax,		%edx
=2D	roll	$5,		%ebp
=2D	xorl	%ecx,		%edx
=2D	andl	%esi,		%edx
=2D	rorl	$2,		%esi
=2D	addl	%ebx,		%ebp
=2D	movl	32(%esp),	%ebx
=2D	xorl	%ecx,		%edx
=2D	leal	1518500249(%ebp,%ebx,1),%ebp
=2D	addl	%ebp,		%edx
=2D
=2D	movl	%edx,		%ebp
=2D	movl	%esi,		%ebx
=2D	roll	$5,		%ebp
=2D	xorl	%eax,		%ebx
=2D	andl	%edi,		%ebx
=2D	rorl	$2,		%edi
=2D	addl	%ecx,		%ebp
=2D	movl	36(%esp),	%ecx
=2D	xorl	%eax,		%ebx
+	movl	%eax,%edx
+	movl	%ebp,%edi
+	roll	$5,%ebp
+	xorl	%ebx,%edx
+	addl	%ecx,%ebp
+	andl	%esi,%edx
+	movl	32(%esp),%ecx
+	xorl	%ebx,%edx
+	rorl	$2,%esi
 	leal	1518500249(%ebp,%ecx,1),%ebp
=2D	addl	%ebp,		%ebx
+	addl	%edx,%ebp
=20
=2D	movl	%ebx,		%ebp
=2D	movl	%edi,		%ecx
=2D	roll	$5,		%ebp
=2D	xorl	%esi,		%ecx
=2D	andl	%edx,		%ecx
=2D	rorl	$2,		%edx
=2D	addl	%eax,		%ebp
=2D	movl	40(%esp),	%eax
=2D	xorl	%esi,		%ecx
+	movl	%esi,%ecx
+	movl	%ebp,%edx
+	roll	$5,%ebp
+	xorl	%eax,%ecx
+	addl	%ebx,%ebp
+	andl	%edi,%ecx
+	movl	36(%esp),%ebx
+	xorl	%eax,%ecx
+	rorl	$2,%edi
+	leal	1518500249(%ebp,%ebx,1),%ebp
+	addl	%ecx,%ebp
+
+	movl	%edi,%ebx
+	movl	%ebp,%ecx
+	roll	$5,%ebp
+	xorl	%esi,%ebx
+	addl	%eax,%ebp
+	andl	%edx,%ebx
+	movl	40(%esp),%eax
+	xorl	%esi,%ebx
+	rorl	$2,%edx
 	leal	1518500249(%ebp,%eax,1),%ebp
=2D	addl	%ebp,		%ecx
+	addl	%ebx,%ebp
=20
=2D	movl	%ecx,		%ebp
=2D	movl	%edx,		%eax
=2D	roll	$5,		%ebp
=2D	xorl	%edi,		%eax
=2D	andl	%ebx,		%eax
=2D	rorl	$2,		%ebx
=2D	addl	%esi,		%ebp
=2D	movl	44(%esp),	%esi
=2D	xorl	%edi,		%eax
+	movl	%edx,%eax
+	movl	%ebp,%ebx
+	roll	$5,%ebp
+	xorl	%edi,%eax
+	addl	%esi,%ebp
+	andl	%ecx,%eax
+	movl	44(%esp),%esi
+	xorl	%edi,%eax
+	rorl	$2,%ecx
 	leal	1518500249(%ebp,%esi,1),%ebp
=2D	addl	%ebp,		%eax
+	addl	%eax,%ebp
=20
=2D	movl	%eax,		%ebp
=2D	movl	%ebx,		%esi
=2D	roll	$5,		%ebp
=2D	xorl	%edx,		%esi
=2D	andl	%ecx,		%esi
=2D	rorl	$2,		%ecx
=2D	addl	%edi,		%ebp
=2D	movl	48(%esp),	%edi
=2D	xorl	%edx,		%esi
+	movl	%ecx,%esi
+	movl	%ebp,%eax
+	roll	$5,%ebp
+	xorl	%edx,%esi
+	addl	%edi,%ebp
+	andl	%ebx,%esi
+	movl	48(%esp),%edi
+	xorl	%edx,%esi
+	rorl	$2,%ebx
 	leal	1518500249(%ebp,%edi,1),%ebp
=2D	addl	%ebp,		%esi
+	addl	%esi,%ebp
=20
=2D	movl	%esi,		%ebp
=2D	movl	%ecx,		%edi
=2D	roll	$5,		%ebp
=2D	xorl	%ebx,		%edi
=2D	andl	%eax,		%edi
=2D	rorl	$2,		%eax
=2D	addl	%edx,		%ebp
=2D	movl	52(%esp),	%edx
=2D	xorl	%ebx,		%edi
+	movl	%ebx,%edi
+	movl	%ebp,%esi
+	roll	$5,%ebp
+	xorl	%ecx,%edi
+	addl	%edx,%ebp
+	andl	%eax,%edi
+	movl	52(%esp),%edx
+	xorl	%ecx,%edi
+	rorl	$2,%eax
 	leal	1518500249(%ebp,%edx,1),%ebp
=2D	addl	%ebp,		%edi
+	addl	%edi,%ebp
=20
=2D	movl	%edi,		%ebp
=2D	movl	%eax,		%edx
=2D	roll	$5,		%ebp
=2D	xorl	%ecx,		%edx
=2D	andl	%esi,		%edx
=2D	rorl	$2,		%esi
=2D	addl	%ebx,		%ebp
=2D	movl	56(%esp),	%ebx
=2D	xorl	%ecx,		%edx
=2D	leal	1518500249(%ebp,%ebx,1),%ebp
=2D	addl	%ebp,		%edx
=2D
=2D	movl	%edx,		%ebp
=2D	movl	%esi,		%ebx
=2D	roll	$5,		%ebp
=2D	xorl	%eax,		%ebx
=2D	andl	%edi,		%ebx
=2D	rorl	$2,		%edi
=2D	addl	%ecx,		%ebp
=2D	movl	60(%esp),	%ecx
=2D	xorl	%eax,		%ebx
+	movl	%eax,%edx
+	movl	%ebp,%edi
+	roll	$5,%ebp
+	xorl	%ebx,%edx
+	addl	%ecx,%ebp
+	andl	%esi,%edx
+	movl	56(%esp),%ecx
+	xorl	%ebx,%edx
+	rorl	$2,%esi
 	leal	1518500249(%ebp,%ecx,1),%ebp
=2D	addl	%ebp,		%ebx
+	addl	%edx,%ebp
=20
=2D	movl	8(%esp),	%ecx
=2D	movl	%edi,		%ebp
=2D	xorl	(%esp),		%ecx
=2D	xorl	%esi,		%ebp
=2D	xorl	32(%esp),	%ecx
=2D	andl	%edx,		%ebp
=2D	xorl	52(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		(%esp)
=2D	leal	1518500249(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	addl	%ebp,		%ecx
=2D	roll	$5,		%eax
=2D	addl	%eax,		%ecx
+	movl	%esi,%ecx
+	movl	%ebp,%edx
+	roll	$5,%ebp
+	xorl	%eax,%ecx
+	addl	%ebx,%ebp
+	andl	%edi,%ecx
+	movl	60(%esp),%ebx
+	xorl	%eax,%ecx
+	rorl	$2,%edi
+	leal	1518500249(%ebp,%ebx,1),%ebp
+	addl	%ebp,%ecx
=20
=2D	movl	12(%esp),	%eax
=2D	movl	%edx,		%ebp
=2D	xorl	4(%esp),	%eax
=2D	xorl	%edi,		%ebp
=2D	xorl	36(%esp),	%eax
=2D	andl	%ebx,		%ebp
=2D	xorl	56(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		4(%esp)
+	movl	(%esp),%ebx
+	movl	%edi,%ebp
+	xorl	8(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	32(%esp),%ebx
+	andl	%edx,%ebp
+	rorl	$2,%edx
+	xorl	52(%esp),%ebx
+	roll	$1,%ebx
+	xorl	%esi,%ebp
+	movl	%ebx,(%esp)
+	leal	1518500249(%ebx,%eax,1),%ebx
+	movl	%ecx,%eax
+	roll	$5,%eax
+	addl	%ebp,%ebx
+	addl	%eax,%ebx
+
+	movl	4(%esp),%eax
+	movl	%edx,%ebp
+	xorl	12(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	36(%esp),%eax
+	andl	%ecx,%ebp
+	rorl	$2,%ecx
+	xorl	56(%esp),%eax
+	roll	$1,%eax
+	xorl	%edi,%ebp
+	movl	%eax,4(%esp)
 	leal	1518500249(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	addl	%ebp,		%eax
=2D	roll	$5,		%esi
=2D	addl	%esi,		%eax
+	movl	%ebx,%esi
+	roll	$5,%esi
+	addl	%ebp,%eax
+	addl	%esi,%eax
=20
=2D	movl	16(%esp),	%esi
=2D	movl	%ebx,		%ebp
=2D	xorl	8(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D	xorl	40(%esp),	%esi
=2D	andl	%ecx,		%ebp
=2D	xorl	60(%esp),	%esi
=2D	rorl	$2,		%ecx
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		8(%esp)
+	movl	8(%esp),%esi
+	movl	%ecx,%ebp
+	xorl	16(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	40(%esp),%esi
+	andl	%ebx,%ebp
+	rorl	$2,%ebx
+	xorl	60(%esp),%esi
+	roll	$1,%esi
+	xorl	%edx,%ebp
+	movl	%esi,8(%esp)
 	leal	1518500249(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	addl	%ebp,		%esi
=2D	roll	$5,		%edi
=2D	addl	%edi,		%esi
+	movl	%eax,%edi
+	roll	$5,%edi
+	addl	%ebp,%esi
+	addl	%edi,%esi
=20
=2D	movl	20(%esp),	%edi
=2D	movl	%ecx,		%ebp
=2D	xorl	12(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D	xorl	44(%esp),	%edi
=2D	andl	%eax,		%ebp
=2D	xorl	(%esp),		%edi
=2D	rorl	$2,		%eax
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		12(%esp)
+	movl	12(%esp),%edi
+	movl	%ebx,%ebp
+	xorl	20(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	44(%esp),%edi
+	andl	%eax,%ebp
+	rorl	$2,%eax
+	xorl	(%esp),%edi
+	roll	$1,%edi
+	xorl	%ecx,%ebp
+	movl	%edi,12(%esp)
 	leal	1518500249(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	addl	%ebp,		%edi
=2D	roll	$5,		%edx
=2D	addl	%edx,		%edi
+	movl	%esi,%edx
+	roll	$5,%edx
+	addl	%ebp,%edi
+	addl	%edx,%edi
=20
=2D	movl	16(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	24(%esp),	%edx
=2D	rorl	$2,		%esi
=2D	xorl	48(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	4(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		16(%esp)
=2D	leal	1859775393(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	16(%esp),%edx
+	rorl	$2,%esi
+	xorl	24(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	48(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	4(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,16(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	1859775393(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	20(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	28(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	52(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	8(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		20(%esp)
=2D	leal	1859775393(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	20(%esp),%ecx
+	rorl	$2,%edi
+	xorl	28(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	52(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	8(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,20(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	1859775393(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	24(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	32(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	56(%esp),	%ecx
=2D	xorl	%edi,		%ebp
=2D	xorl	12(%esp),	%ecx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		24(%esp)
=2D	leal	1859775393(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%ebp,		%ecx
=2D	addl	%eax,		%ecx
+	movl	%edx,%ebp
+	movl	24(%esp),%ebx
+	rorl	$2,%edx
+	xorl	32(%esp),%ebx
+	xorl	%edi,%ebp
+	xorl	56(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	12(%esp),%ebx
+	roll	$1,%ebx
+	addl	%eax,%ebp
+	movl	%ebx,24(%esp)
+	movl	%ecx,%eax
+	roll	$5,%eax
+	leal	1859775393(%ebx,%ebp,1),%ebx
+	addl	%eax,%ebx
=20
=2D	movl	28(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	36(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	60(%esp),	%eax
=2D	xorl	%edx,		%ebp
=2D	xorl	16(%esp),	%eax
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		28(%esp)
=2D	leal	1859775393(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%ebp,		%eax
=2D	addl	%esi,		%eax
+	movl	%ecx,%ebp
+	movl	28(%esp),%eax
+	rorl	$2,%ecx
+	xorl	36(%esp),%eax
+	xorl	%edx,%ebp
+	xorl	60(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	16(%esp),%eax
+	roll	$1,%eax
+	addl	%esi,%ebp
+	movl	%eax,28(%esp)
+	movl	%ebx,%esi
+	roll	$5,%esi
+	leal	1859775393(%eax,%ebp,1),%eax
+	addl	%esi,%eax
=20
=2D	movl	32(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	40(%esp),	%esi
=2D	rorl	$2,		%ecx
=2D	xorl	(%esp),		%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	20(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		32(%esp)
=2D	leal	1859775393(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	32(%esp),%esi
+	rorl	$2,%ebx
+	xorl	40(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	20(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,32(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	1859775393(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	36(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	44(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	4(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	24(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		36(%esp)
=2D	leal	1859775393(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
+	movl	%eax,%ebp
+	movl	36(%esp),%edi
+	rorl	$2,%eax
+	xorl	44(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	4(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	24(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,36(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	1859775393(%edi,%ebp,1),%edi
+	addl	%edx,%edi
=20
=2D	movl	40(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	48(%esp),	%edx
=2D	rorl	$2,		%esi
=2D	xorl	8(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	28(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		40(%esp)
=2D	leal	1859775393(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	40(%esp),%edx
+	rorl	$2,%esi
+	xorl	48(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	8(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	28(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,40(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	1859775393(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	44(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	52(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	12(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	32(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		44(%esp)
=2D	leal	1859775393(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	44(%esp),%ecx
+	rorl	$2,%edi
+	xorl	52(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	12(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	32(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,44(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	1859775393(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	48(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	56(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	16(%esp),	%ecx
=2D	xorl	%edi,		%ebp
=2D	xorl	36(%esp),	%ecx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		48(%esp)
=2D	leal	1859775393(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%ebp,		%ecx
=2D	addl	%eax,		%ecx
+	movl	%edx,%ebp
+	movl	48(%esp),%ebx
+	rorl	$2,%edx
+	xorl	56(%esp),%ebx
+	xorl	%edi,%ebp
+	xorl	16(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	36(%esp),%ebx
+	roll	$1,%ebx
+	addl	%eax,%ebp
+	movl	%ebx,48(%esp)
+	movl	%ecx,%eax
+	roll	$5,%eax
+	leal	1859775393(%ebx,%ebp,1),%ebx
+	addl	%eax,%ebx
=20
=2D	movl	52(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	60(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	20(%esp),	%eax
=2D	xorl	%edx,		%ebp
=2D	xorl	40(%esp),	%eax
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		52(%esp)
=2D	leal	1859775393(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%ebp,		%eax
=2D	addl	%esi,		%eax
+	movl	%ecx,%ebp
+	movl	52(%esp),%eax
+	rorl	$2,%ecx
+	xorl	60(%esp),%eax
+	xorl	%edx,%ebp
+	xorl	20(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	40(%esp),%eax
+	roll	$1,%eax
+	addl	%esi,%ebp
+	movl	%eax,52(%esp)
+	movl	%ebx,%esi
+	roll	$5,%esi
+	leal	1859775393(%eax,%ebp,1),%eax
+	addl	%esi,%eax
=20
=2D	movl	56(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	(%esp),		%esi
=2D	rorl	$2,		%ecx
=2D	xorl	24(%esp),	%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	44(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		56(%esp)
=2D	leal	1859775393(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	56(%esp),%esi
+	rorl	$2,%ebx
+	xorl	(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	24(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	44(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,56(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	1859775393(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	60(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	4(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	28(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	48(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		60(%esp)
=2D	leal	1859775393(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
+	movl	%eax,%ebp
+	movl	60(%esp),%edi
+	rorl	$2,%eax
+	xorl	4(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	28(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	48(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,60(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	1859775393(%edi,%ebp,1),%edi
+	addl	%edx,%edi
=20
=2D	movl	(%esp),		%edx
=2D	movl	%esi,		%ebp
=2D	xorl	8(%esp),	%edx
=2D	rorl	$2,		%esi
=2D	xorl	32(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	52(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		(%esp)
=2D	leal	1859775393(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	(%esp),%edx
+	rorl	$2,%esi
+	xorl	8(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	32(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	52(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	1859775393(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	4(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	12(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	36(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	56(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		4(%esp)
=2D	leal	1859775393(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	4(%esp),%ecx
+	rorl	$2,%edi
+	xorl	12(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	36(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	56(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,4(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	1859775393(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	8(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	16(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	40(%esp),	%ecx
=2D	xorl	%edi,		%ebp
=2D	xorl	60(%esp),	%ecx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		8(%esp)
=2D	leal	1859775393(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%ebp,		%ecx
=2D	addl	%eax,		%ecx
+	movl	%edx,%ebp
+	movl	8(%esp),%ebx
+	rorl	$2,%edx
+	xorl	16(%esp),%ebx
+	xorl	%edi,%ebp
+	xorl	40(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	60(%esp),%ebx
+	roll	$1,%ebx
+	addl	%eax,%ebp
+	movl	%ebx,8(%esp)
+	movl	%ecx,%eax
+	roll	$5,%eax
+	leal	1859775393(%ebx,%ebp,1),%ebx
+	addl	%eax,%ebx
=20
=2D	movl	12(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	20(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	44(%esp),	%eax
=2D	xorl	%edx,		%ebp
=2D	xorl	(%esp),		%eax
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		12(%esp)
=2D	leal	1859775393(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%ebp,		%eax
=2D	addl	%esi,		%eax
+	movl	%ecx,%ebp
+	movl	12(%esp),%eax
+	rorl	$2,%ecx
+	xorl	20(%esp),%eax
+	xorl	%edx,%ebp
+	xorl	44(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	(%esp),%eax
+	roll	$1,%eax
+	addl	%esi,%ebp
+	movl	%eax,12(%esp)
+	movl	%ebx,%esi
+	roll	$5,%esi
+	leal	1859775393(%eax,%ebp,1),%eax
+	addl	%esi,%eax
=20
=2D	movl	16(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	24(%esp),	%esi
=2D	rorl	$2,		%ecx
=2D	xorl	48(%esp),	%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	4(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		16(%esp)
=2D	leal	1859775393(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	16(%esp),%esi
+	rorl	$2,%ebx
+	xorl	24(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	48(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	4(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,16(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	1859775393(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	20(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	28(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	52(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	8(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		20(%esp)
=2D	leal	1859775393(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
+	movl	%eax,%ebp
+	movl	20(%esp),%edi
+	rorl	$2,%eax
+	xorl	28(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	52(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	8(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,20(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	1859775393(%edi,%ebp,1),%edi
+	addl	%edx,%edi
=20
=2D	movl	24(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	32(%esp),	%edx
=2D	rorl	$2,		%esi
=2D	xorl	56(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	12(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		24(%esp)
=2D	leal	1859775393(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	24(%esp),%edx
+	rorl	$2,%esi
+	xorl	32(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	56(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	12(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,24(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	1859775393(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	28(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	36(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	60(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	16(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		28(%esp)
=2D	leal	1859775393(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	28(%esp),%ecx
+	rorl	$2,%edi
+	xorl	36(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	60(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	16(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,28(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	1859775393(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	32(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	40(%esp),	%ecx
=2D	orl	%edi,		%ebp
=2D	xorl	(%esp),		%ecx
=2D	andl	%esi,		%ebp
=2D	xorl	20(%esp),	%ecx
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		32(%esp)
=2D	leal	2400959708(%ecx,%eax,1),%ecx
=2D	movl	%edx,		%eax
=2D	rorl	$2,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%ebp
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%eax,		%ebp
=2D	addl	%ebp,		%ecx
+	movl	32(%esp),%ebx
+	movl	40(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	20(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	%edx,%ebp
+	roll	$1,%ebx
+	orl	%edi,%ebp
+	movl	%ebx,32(%esp)
+	andl	%esi,%ebp
+	leal	2400959708(%ebx,%eax,1),%ebx
+	movl	%edx,%eax
+	rorl	$2,%edx
+	andl	%edi,%eax
+	orl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$5,%eax
+	addl	%ebp,%ebx
+	addl	%eax,%ebx
=20
=2D	movl	36(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	44(%esp),	%eax
=2D	orl	%edx,		%ebp
=2D	xorl	4(%esp),	%eax
=2D	andl	%edi,		%ebp
=2D	xorl	24(%esp),	%eax
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		36(%esp)
+	movl	36(%esp),%eax
+	movl	44(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	4(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	24(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	%ecx,%ebp
+	roll	$1,%eax
+	orl	%edx,%ebp
+	movl	%eax,36(%esp)
+	andl	%edi,%ebp
 	leal	2400959708(%eax,%esi,1),%eax
=2D	movl	%ebx,		%esi
=2D	rorl	$2,		%ebx
=2D	andl	%edx,		%esi
=2D	orl	%esi,		%ebp
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%esi,		%ebp
=2D	addl	%ebp,		%eax
+	movl	%ecx,%esi
+	rorl	$2,%ecx
+	andl	%edx,%esi
+	orl	%esi,%ebp
+	movl	%ebx,%esi
+	roll	$5,%esi
+	addl	%ebp,%eax
+	addl	%esi,%eax
=20
=2D	movl	40(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	48(%esp),	%esi
=2D	orl	%ebx,		%ebp
=2D	xorl	8(%esp),	%esi
=2D	andl	%edx,		%ebp
=2D	xorl	28(%esp),	%esi
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		40(%esp)
+	movl	40(%esp),%esi
+	movl	48(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	8(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	28(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	%ebx,%ebp
+	roll	$1,%esi
+	orl	%ecx,%ebp
+	movl	%esi,40(%esp)
+	andl	%edx,%ebp
 	leal	2400959708(%esi,%edi,1),%esi
=2D	movl	%ecx,		%edi
=2D	rorl	$2,		%ecx
=2D	andl	%ebx,		%edi
=2D	orl	%edi,		%ebp
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%edi,		%ebp
=2D	addl	%ebp,		%esi
+	movl	%ebx,%edi
+	rorl	$2,%ebx
+	andl	%ecx,%edi
+	orl	%edi,%ebp
+	movl	%eax,%edi
+	roll	$5,%edi
+	addl	%ebp,%esi
+	addl	%edi,%esi
=20
=2D	movl	44(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	52(%esp),	%edi
=2D	orl	%ecx,		%ebp
=2D	xorl	12(%esp),	%edi
=2D	andl	%ebx,		%ebp
=2D	xorl	32(%esp),	%edi
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		44(%esp)
+	movl	44(%esp),%edi
+	movl	52(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	12(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	32(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	%eax,%ebp
+	roll	$1,%edi
+	orl	%ebx,%ebp
+	movl	%edi,44(%esp)
+	andl	%ecx,%ebp
 	leal	2400959708(%edi,%edx,1),%edi
=2D	movl	%eax,		%edx
=2D	rorl	$2,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%edx,		%ebp
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%edx,		%ebp
=2D	addl	%ebp,		%edi
+	movl	%eax,%edx
+	rorl	$2,%eax
+	andl	%ebx,%edx
+	orl	%edx,%ebp
+	movl	%esi,%edx
+	roll	$5,%edx
+	addl	%ebp,%edi
+	addl	%edx,%edi
=20
=2D	movl	48(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	56(%esp),	%edx
=2D	orl	%eax,		%ebp
=2D	xorl	16(%esp),	%edx
=2D	andl	%ecx,		%ebp
=2D	xorl	36(%esp),	%edx
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		48(%esp)
=2D	leal	2400959708(%edx,%ebx,1),%edx
=2D	movl	%esi,		%ebx
=2D	rorl	$2,		%esi
=2D	andl	%eax,		%ebx
=2D	orl	%ebx,		%ebp
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebx,		%ebp
=2D	addl	%ebp,		%edx
+	movl	48(%esp),%edx
+	movl	56(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	16(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	36(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	%esi,%ebp
+	roll	$1,%edx
+	orl	%eax,%ebp
+	movl	%edx,48(%esp)
+	andl	%ebx,%ebp
+	leal	2400959708(%edx,%ecx,1),%edx
+	movl	%esi,%ecx
+	rorl	$2,%esi
+	andl	%eax,%ecx
+	orl	%ecx,%ebp
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	addl	%ebp,%edx
+	addl	%ecx,%edx
=20
=2D	movl	52(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	60(%esp),	%ebx
=2D	orl	%esi,		%ebp
=2D	xorl	20(%esp),	%ebx
=2D	andl	%eax,		%ebp
=2D	xorl	40(%esp),	%ebx
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		52(%esp)
=2D	leal	2400959708(%ebx,%ecx,1),%ebx
=2D	movl	%edi,		%ecx
=2D	rorl	$2,		%edi
=2D	andl	%esi,		%ecx
=2D	orl	%ecx,		%ebp
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ecx,		%ebp
=2D	addl	%ebp,		%ebx
+	movl	52(%esp),%ecx
+	movl	60(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	20(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	40(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	%edi,%ebp
+	roll	$1,%ecx
+	orl	%esi,%ebp
+	movl	%ecx,52(%esp)
+	andl	%eax,%ebp
+	leal	2400959708(%ecx,%ebx,1),%ecx
+	movl	%edi,%ebx
+	rorl	$2,%edi
+	andl	%esi,%ebx
+	orl	%ebx,%ebp
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	addl	%ebp,%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	56(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	(%esp),		%ecx
=2D	orl	%edi,		%ebp
=2D	xorl	24(%esp),	%ecx
=2D	andl	%esi,		%ebp
=2D	xorl	44(%esp),	%ecx
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		56(%esp)
=2D	leal	2400959708(%ecx,%eax,1),%ecx
=2D	movl	%edx,		%eax
=2D	rorl	$2,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%ebp
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%eax,		%ebp
=2D	addl	%ebp,		%ecx
+	movl	56(%esp),%ebx
+	movl	(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	24(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	44(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	%edx,%ebp
+	roll	$1,%ebx
+	orl	%edi,%ebp
+	movl	%ebx,56(%esp)
+	andl	%esi,%ebp
+	leal	2400959708(%ebx,%eax,1),%ebx
+	movl	%edx,%eax
+	rorl	$2,%edx
+	andl	%edi,%eax
+	orl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$5,%eax
+	addl	%ebp,%ebx
+	addl	%eax,%ebx
=20
=2D	movl	60(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	4(%esp),	%eax
=2D	orl	%edx,		%ebp
=2D	xorl	28(%esp),	%eax
=2D	andl	%edi,		%ebp
=2D	xorl	48(%esp),	%eax
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		60(%esp)
+	movl	60(%esp),%eax
+	movl	4(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	28(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	48(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	%ecx,%ebp
+	roll	$1,%eax
+	orl	%edx,%ebp
+	movl	%eax,60(%esp)
+	andl	%edi,%ebp
 	leal	2400959708(%eax,%esi,1),%eax
=2D	movl	%ebx,		%esi
=2D	rorl	$2,		%ebx
=2D	andl	%edx,		%esi
=2D	orl	%esi,		%ebp
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%esi,		%ebp
=2D	addl	%ebp,		%eax
+	movl	%ecx,%esi
+	rorl	$2,%ecx
+	andl	%edx,%esi
+	orl	%esi,%ebp
+	movl	%ebx,%esi
+	roll	$5,%esi
+	addl	%ebp,%eax
+	addl	%esi,%eax
=20
=2D	movl	(%esp),		%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	8(%esp),	%esi
=2D	orl	%ebx,		%ebp
=2D	xorl	32(%esp),	%esi
=2D	andl	%edx,		%ebp
=2D	xorl	52(%esp),	%esi
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		(%esp)
+	movl	(%esp),%esi
+	movl	8(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	32(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	52(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	%ebx,%ebp
+	roll	$1,%esi
+	orl	%ecx,%ebp
+	movl	%esi,(%esp)
+	andl	%edx,%ebp
 	leal	2400959708(%esi,%edi,1),%esi
=2D	movl	%ecx,		%edi
=2D	rorl	$2,		%ecx
=2D	andl	%ebx,		%edi
=2D	orl	%edi,		%ebp
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%edi,		%ebp
=2D	addl	%ebp,		%esi
+	movl	%ebx,%edi
+	rorl	$2,%ebx
+	andl	%ecx,%edi
+	orl	%edi,%ebp
+	movl	%eax,%edi
+	roll	$5,%edi
+	addl	%ebp,%esi
+	addl	%edi,%esi
=20
=2D	movl	4(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	12(%esp),	%edi
=2D	orl	%ecx,		%ebp
=2D	xorl	36(%esp),	%edi
=2D	andl	%ebx,		%ebp
=2D	xorl	56(%esp),	%edi
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		4(%esp)
+	movl	4(%esp),%edi
+	movl	12(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	36(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	56(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	%eax,%ebp
+	roll	$1,%edi
+	orl	%ebx,%ebp
+	movl	%edi,4(%esp)
+	andl	%ecx,%ebp
 	leal	2400959708(%edi,%edx,1),%edi
=2D	movl	%eax,		%edx
=2D	rorl	$2,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%edx,		%ebp
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%edx,		%ebp
=2D	addl	%ebp,		%edi
+	movl	%eax,%edx
+	rorl	$2,%eax
+	andl	%ebx,%edx
+	orl	%edx,%ebp
+	movl	%esi,%edx
+	roll	$5,%edx
+	addl	%ebp,%edi
+	addl	%edx,%edi
=20
=2D	movl	8(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	16(%esp),	%edx
=2D	orl	%eax,		%ebp
=2D	xorl	40(%esp),	%edx
=2D	andl	%ecx,		%ebp
=2D	xorl	60(%esp),	%edx
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		8(%esp)
=2D	leal	2400959708(%edx,%ebx,1),%edx
=2D	movl	%esi,		%ebx
=2D	rorl	$2,		%esi
=2D	andl	%eax,		%ebx
=2D	orl	%ebx,		%ebp
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebx,		%ebp
=2D	addl	%ebp,		%edx
+	movl	8(%esp),%edx
+	movl	16(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	40(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	60(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	%esi,%ebp
+	roll	$1,%edx
+	orl	%eax,%ebp
+	movl	%edx,8(%esp)
+	andl	%ebx,%ebp
+	leal	2400959708(%edx,%ecx,1),%edx
+	movl	%esi,%ecx
+	rorl	$2,%esi
+	andl	%eax,%ecx
+	orl	%ecx,%ebp
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	addl	%ebp,%edx
+	addl	%ecx,%edx
=20
=2D	movl	12(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	20(%esp),	%ebx
=2D	orl	%esi,		%ebp
=2D	xorl	44(%esp),	%ebx
=2D	andl	%eax,		%ebp
=2D	xorl	(%esp),		%ebx
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		12(%esp)
=2D	leal	2400959708(%ebx,%ecx,1),%ebx
=2D	movl	%edi,		%ecx
=2D	rorl	$2,		%edi
=2D	andl	%esi,		%ecx
=2D	orl	%ecx,		%ebp
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ecx,		%ebp
=2D	addl	%ebp,		%ebx
+	movl	12(%esp),%ecx
+	movl	20(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	44(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	%edi,%ebp
+	roll	$1,%ecx
+	orl	%esi,%ebp
+	movl	%ecx,12(%esp)
+	andl	%eax,%ebp
+	leal	2400959708(%ecx,%ebx,1),%ecx
+	movl	%edi,%ebx
+	rorl	$2,%edi
+	andl	%esi,%ebx
+	orl	%ebx,%ebp
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	addl	%ebp,%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	16(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	24(%esp),	%ecx
=2D	orl	%edi,		%ebp
=2D	xorl	48(%esp),	%ecx
=2D	andl	%esi,		%ebp
=2D	xorl	4(%esp),	%ecx
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		16(%esp)
=2D	leal	2400959708(%ecx,%eax,1),%ecx
=2D	movl	%edx,		%eax
=2D	rorl	$2,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%ebp
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%eax,		%ebp
=2D	addl	%ebp,		%ecx
+	movl	16(%esp),%ebx
+	movl	24(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	48(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	4(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	%edx,%ebp
+	roll	$1,%ebx
+	orl	%edi,%ebp
+	movl	%ebx,16(%esp)
+	andl	%esi,%ebp
+	leal	2400959708(%ebx,%eax,1),%ebx
+	movl	%edx,%eax
+	rorl	$2,%edx
+	andl	%edi,%eax
+	orl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$5,%eax
+	addl	%ebp,%ebx
+	addl	%eax,%ebx
=20
=2D	movl	20(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	28(%esp),	%eax
=2D	orl	%edx,		%ebp
=2D	xorl	52(%esp),	%eax
=2D	andl	%edi,		%ebp
=2D	xorl	8(%esp),	%eax
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		20(%esp)
+	movl	20(%esp),%eax
+	movl	28(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	52(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	8(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	%ecx,%ebp
+	roll	$1,%eax
+	orl	%edx,%ebp
+	movl	%eax,20(%esp)
+	andl	%edi,%ebp
 	leal	2400959708(%eax,%esi,1),%eax
=2D	movl	%ebx,		%esi
=2D	rorl	$2,		%ebx
=2D	andl	%edx,		%esi
=2D	orl	%esi,		%ebp
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%esi,		%ebp
=2D	addl	%ebp,		%eax
+	movl	%ecx,%esi
+	rorl	$2,%ecx
+	andl	%edx,%esi
+	orl	%esi,%ebp
+	movl	%ebx,%esi
+	roll	$5,%esi
+	addl	%ebp,%eax
+	addl	%esi,%eax
=20
=2D	movl	24(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	32(%esp),	%esi
=2D	orl	%ebx,		%ebp
=2D	xorl	56(%esp),	%esi
=2D	andl	%edx,		%ebp
=2D	xorl	12(%esp),	%esi
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		24(%esp)
+	movl	24(%esp),%esi
+	movl	32(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	56(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	12(%esp),%ebp
+	xorl	%ebp,%esi
+	movl	%ebx,%ebp
+	roll	$1,%esi
+	orl	%ecx,%ebp
+	movl	%esi,24(%esp)
+	andl	%edx,%ebp
 	leal	2400959708(%esi,%edi,1),%esi
=2D	movl	%ecx,		%edi
=2D	rorl	$2,		%ecx
=2D	andl	%ebx,		%edi
=2D	orl	%edi,		%ebp
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%edi,		%ebp
=2D	addl	%ebp,		%esi
+	movl	%ebx,%edi
+	rorl	$2,%ebx
+	andl	%ecx,%edi
+	orl	%edi,%ebp
+	movl	%eax,%edi
+	roll	$5,%edi
+	addl	%ebp,%esi
+	addl	%edi,%esi
=20
=2D	movl	28(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	36(%esp),	%edi
=2D	orl	%ecx,		%ebp
=2D	xorl	60(%esp),	%edi
=2D	andl	%ebx,		%ebp
=2D	xorl	16(%esp),	%edi
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		28(%esp)
+	movl	28(%esp),%edi
+	movl	36(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	60(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	16(%esp),%ebp
+	xorl	%ebp,%edi
+	movl	%eax,%ebp
+	roll	$1,%edi
+	orl	%ebx,%ebp
+	movl	%edi,28(%esp)
+	andl	%ecx,%ebp
 	leal	2400959708(%edi,%edx,1),%edi
=2D	movl	%eax,		%edx
=2D	rorl	$2,		%eax
=2D	andl	%ecx,		%edx
=2D	orl	%edx,		%ebp
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%edx,		%ebp
=2D	addl	%ebp,		%edi
+	movl	%eax,%edx
+	rorl	$2,%eax
+	andl	%ebx,%edx
+	orl	%edx,%ebp
+	movl	%esi,%edx
+	roll	$5,%edx
+	addl	%ebp,%edi
+	addl	%edx,%edi
=20
=2D	movl	32(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	40(%esp),	%edx
=2D	orl	%eax,		%ebp
=2D	xorl	(%esp),		%edx
=2D	andl	%ecx,		%ebp
=2D	xorl	20(%esp),	%edx
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		32(%esp)
=2D	leal	2400959708(%edx,%ebx,1),%edx
=2D	movl	%esi,		%ebx
=2D	rorl	$2,		%esi
=2D	andl	%eax,		%ebx
=2D	orl	%ebx,		%ebp
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebx,		%ebp
=2D	addl	%ebp,		%edx
+	movl	32(%esp),%edx
+	movl	40(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	20(%esp),%ebp
+	xorl	%ebp,%edx
+	movl	%esi,%ebp
+	roll	$1,%edx
+	orl	%eax,%ebp
+	movl	%edx,32(%esp)
+	andl	%ebx,%ebp
+	leal	2400959708(%edx,%ecx,1),%edx
+	movl	%esi,%ecx
+	rorl	$2,%esi
+	andl	%eax,%ecx
+	orl	%ecx,%ebp
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	addl	%ebp,%edx
+	addl	%ecx,%edx
=20
=2D	movl	36(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	44(%esp),	%ebx
=2D	orl	%esi,		%ebp
=2D	xorl	4(%esp),	%ebx
=2D	andl	%eax,		%ebp
=2D	xorl	24(%esp),	%ebx
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		36(%esp)
=2D	leal	2400959708(%ebx,%ecx,1),%ebx
=2D	movl	%edi,		%ecx
=2D	rorl	$2,		%edi
=2D	andl	%esi,		%ecx
=2D	orl	%ecx,		%ebp
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ecx,		%ebp
=2D	addl	%ebp,		%ebx
+	movl	36(%esp),%ecx
+	movl	44(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	4(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	24(%esp),%ebp
+	xorl	%ebp,%ecx
+	movl	%edi,%ebp
+	roll	$1,%ecx
+	orl	%esi,%ebp
+	movl	%ecx,36(%esp)
+	andl	%eax,%ebp
+	leal	2400959708(%ecx,%ebx,1),%ecx
+	movl	%edi,%ebx
+	rorl	$2,%edi
+	andl	%esi,%ebx
+	orl	%ebx,%ebp
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	addl	%ebp,%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	40(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	48(%esp),	%ecx
=2D	orl	%edi,		%ebp
=2D	xorl	8(%esp),	%ecx
=2D	andl	%esi,		%ebp
=2D	xorl	28(%esp),	%ecx
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		40(%esp)
=2D	leal	2400959708(%ecx,%eax,1),%ecx
=2D	movl	%edx,		%eax
=2D	rorl	$2,		%edx
=2D	andl	%edi,		%eax
=2D	orl	%eax,		%ebp
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%eax,		%ebp
=2D	addl	%ebp,		%ecx
+	movl	40(%esp),%ebx
+	movl	48(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	8(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	28(%esp),%ebp
+	xorl	%ebp,%ebx
+	movl	%edx,%ebp
+	roll	$1,%ebx
+	orl	%edi,%ebp
+	movl	%ebx,40(%esp)
+	andl	%esi,%ebp
+	leal	2400959708(%ebx,%eax,1),%ebx
+	movl	%edx,%eax
+	rorl	$2,%edx
+	andl	%edi,%eax
+	orl	%eax,%ebp
+	movl	%ecx,%eax
+	roll	$5,%eax
+	addl	%ebp,%ebx
+	addl	%eax,%ebx
=20
=2D	movl	44(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	52(%esp),	%eax
=2D	orl	%edx,		%ebp
=2D	xorl	12(%esp),	%eax
=2D	andl	%edi,		%ebp
=2D	xorl	32(%esp),	%eax
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		44(%esp)
+	movl	44(%esp),%eax
+	movl	52(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	12(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	32(%esp),%ebp
+	xorl	%ebp,%eax
+	movl	%ecx,%ebp
+	roll	$1,%eax
+	orl	%edx,%ebp
+	movl	%eax,44(%esp)
+	andl	%edi,%ebp
 	leal	2400959708(%eax,%esi,1),%eax
=2D	movl	%ebx,		%esi
=2D	rorl	$2,		%ebx
=2D	andl	%edx,		%esi
=2D	orl	%esi,		%ebp
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%esi,		%ebp
=2D	addl	%ebp,		%eax
+	movl	%ecx,%esi
+	rorl	$2,%ecx
+	andl	%edx,%esi
+	orl	%esi,%ebp
+	movl	%ebx,%esi
+	roll	$5,%esi
+	addl	%ebp,%eax
+	addl	%esi,%eax
=20
=2D	movl	48(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	56(%esp),	%esi
=2D	rorl	$2,		%ecx
=2D	xorl	16(%esp),	%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	36(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		48(%esp)
=2D	leal	3395469782(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	48(%esp),%esi
+	rorl	$2,%ebx
+	xorl	56(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	16(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	36(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,48(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	3395469782(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	52(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	60(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	20(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	40(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		52(%esp)
=2D	leal	3395469782(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
+	movl	%eax,%ebp
+	movl	52(%esp),%edi
+	rorl	$2,%eax
+	xorl	60(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	20(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	40(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,52(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	3395469782(%edi,%ebp,1),%edi
+	addl	%edx,%edi
=20
=2D	movl	56(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	(%esp),		%edx
=2D	rorl	$2,		%esi
=2D	xorl	24(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	44(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		56(%esp)
=2D	leal	3395469782(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	56(%esp),%edx
+	rorl	$2,%esi
+	xorl	(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	24(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	44(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,56(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	3395469782(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	60(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	4(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	28(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	48(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		60(%esp)
=2D	leal	3395469782(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	60(%esp),%ecx
+	rorl	$2,%edi
+	xorl	4(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	28(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	48(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,60(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	3395469782(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	(%esp),		%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	8(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	32(%esp),	%ecx
=2D	xorl	%edi,		%ebp
=2D	xorl	52(%esp),	%ecx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		(%esp)
=2D	leal	3395469782(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%ebp,		%ecx
=2D	addl	%eax,		%ecx
+	movl	%edx,%ebp
+	movl	(%esp),%ebx
+	rorl	$2,%edx
+	xorl	8(%esp),%ebx
+	xorl	%edi,%ebp
+	xorl	32(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	52(%esp),%ebx
+	roll	$1,%ebx
+	addl	%eax,%ebp
+	movl	%ebx,(%esp)
+	movl	%ecx,%eax
+	roll	$5,%eax
+	leal	3395469782(%ebx,%ebp,1),%ebx
+	addl	%eax,%ebx
=20
=2D	movl	4(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	12(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	36(%esp),	%eax
=2D	xorl	%edx,		%ebp
=2D	xorl	56(%esp),	%eax
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		4(%esp)
=2D	leal	3395469782(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%ebp,		%eax
=2D	addl	%esi,		%eax
+	movl	%ecx,%ebp
+	movl	4(%esp),%eax
+	rorl	$2,%ecx
+	xorl	12(%esp),%eax
+	xorl	%edx,%ebp
+	xorl	36(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	56(%esp),%eax
+	roll	$1,%eax
+	addl	%esi,%ebp
+	movl	%eax,4(%esp)
+	movl	%ebx,%esi
+	roll	$5,%esi
+	leal	3395469782(%eax,%ebp,1),%eax
+	addl	%esi,%eax
=20
=2D	movl	8(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	16(%esp),	%esi
=2D	rorl	$2,		%ecx
=2D	xorl	40(%esp),	%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	60(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		8(%esp)
=2D	leal	3395469782(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	8(%esp),%esi
+	rorl	$2,%ebx
+	xorl	16(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	40(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	60(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,8(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	3395469782(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	12(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	20(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	44(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	(%esp),		%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		12(%esp)
=2D	leal	3395469782(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
+	movl	%eax,%ebp
+	movl	12(%esp),%edi
+	rorl	$2,%eax
+	xorl	20(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	44(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,12(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	3395469782(%edi,%ebp,1),%edi
+	addl	%edx,%edi
=20
=2D	movl	16(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	24(%esp),	%edx
=2D	rorl	$2,		%esi
=2D	xorl	48(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	4(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		16(%esp)
=2D	leal	3395469782(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	16(%esp),%edx
+	rorl	$2,%esi
+	xorl	24(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	48(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	4(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,16(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	3395469782(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	20(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	28(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	52(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	8(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		20(%esp)
=2D	leal	3395469782(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	20(%esp),%ecx
+	rorl	$2,%edi
+	xorl	28(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	52(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	8(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,20(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	3395469782(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	24(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	32(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	56(%esp),	%ecx
=2D	xorl	%edi,		%ebp
=2D	xorl	12(%esp),	%ecx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		24(%esp)
=2D	leal	3395469782(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%ebp,		%ecx
=2D	addl	%eax,		%ecx
+	movl	%edx,%ebp
+	movl	24(%esp),%ebx
+	rorl	$2,%edx
+	xorl	32(%esp),%ebx
+	xorl	%edi,%ebp
+	xorl	56(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	12(%esp),%ebx
+	roll	$1,%ebx
+	addl	%eax,%ebp
+	movl	%ebx,24(%esp)
+	movl	%ecx,%eax
+	roll	$5,%eax
+	leal	3395469782(%ebx,%ebp,1),%ebx
+	addl	%eax,%ebx
=20
=2D	movl	28(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	36(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	60(%esp),	%eax
=2D	xorl	%edx,		%ebp
=2D	xorl	16(%esp),	%eax
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		28(%esp)
=2D	leal	3395469782(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%ebp,		%eax
=2D	addl	%esi,		%eax
+	movl	%ecx,%ebp
+	movl	28(%esp),%eax
+	rorl	$2,%ecx
+	xorl	36(%esp),%eax
+	xorl	%edx,%ebp
+	xorl	60(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	16(%esp),%eax
+	roll	$1,%eax
+	addl	%esi,%ebp
+	movl	%eax,28(%esp)
+	movl	%ebx,%esi
+	roll	$5,%esi
+	leal	3395469782(%eax,%ebp,1),%eax
+	addl	%esi,%eax
=20
=2D	movl	32(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	40(%esp),	%esi
=2D	rorl	$2,		%ecx
=2D	xorl	(%esp),		%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	20(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		32(%esp)
=2D	leal	3395469782(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	32(%esp),%esi
+	rorl	$2,%ebx
+	xorl	40(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	20(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,32(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	3395469782(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	36(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	44(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	4(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	24(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		36(%esp)
=2D	leal	3395469782(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
+	movl	%eax,%ebp
+	movl	36(%esp),%edi
+	rorl	$2,%eax
+	xorl	44(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	4(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	24(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,36(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	3395469782(%edi,%ebp,1),%edi
+	addl	%edx,%edi
=20
=2D	movl	40(%esp),	%edx
=2D	movl	%esi,		%ebp
=2D	xorl	48(%esp),	%edx
=2D	rorl	$2,		%esi
=2D	xorl	8(%esp),	%edx
=2D	xorl	%eax,		%ebp
=2D	xorl	28(%esp),	%edx
=2D	xorl	%ecx,		%ebp
=2D.byte 209
=2D.byte 194=09
=2D	movl	%edx,		40(%esp)
=2D	leal	3395469782(%edx,%ebx,1),%edx
=2D	movl	%edi,		%ebx
=2D	roll	$5,		%ebx
=2D	addl	%ebp,		%edx
=2D	addl	%ebx,		%edx
+	movl	%esi,%ebp
+	movl	40(%esp),%edx
+	rorl	$2,%esi
+	xorl	48(%esp),%edx
+	xorl	%eax,%ebp
+	xorl	8(%esp),%edx
+	xorl	%ebx,%ebp
+	xorl	28(%esp),%edx
+	roll	$1,%edx
+	addl	%ecx,%ebp
+	movl	%edx,40(%esp)
+	movl	%edi,%ecx
+	roll	$5,%ecx
+	leal	3395469782(%edx,%ebp,1),%edx
+	addl	%ecx,%edx
=20
=2D	movl	44(%esp),	%ebx
=2D	movl	%edi,		%ebp
=2D	xorl	52(%esp),	%ebx
=2D	rorl	$2,		%edi
=2D	xorl	12(%esp),	%ebx
=2D	xorl	%esi,		%ebp
=2D	xorl	32(%esp),	%ebx
=2D	xorl	%eax,		%ebp
=2D.byte 209
=2D.byte 195=09
=2D	movl	%ebx,		44(%esp)
=2D	leal	3395469782(%ebx,%ecx,1),%ebx
=2D	movl	%edx,		%ecx
=2D	roll	$5,		%ecx
=2D	addl	%ebp,		%ebx
=2D	addl	%ecx,		%ebx
+	movl	%edi,%ebp
+	movl	44(%esp),%ecx
+	rorl	$2,%edi
+	xorl	52(%esp),%ecx
+	xorl	%esi,%ebp
+	xorl	12(%esp),%ecx
+	xorl	%eax,%ebp
+	xorl	32(%esp),%ecx
+	roll	$1,%ecx
+	addl	%ebx,%ebp
+	movl	%ecx,44(%esp)
+	movl	%edx,%ebx
+	roll	$5,%ebx
+	leal	3395469782(%ecx,%ebp,1),%ecx
+	addl	%ebx,%ecx
=20
=2D	movl	48(%esp),	%ecx
=2D	movl	%edx,		%ebp
=2D	xorl	56(%esp),	%ecx
=2D	rorl	$2,		%edx
=2D	xorl	16(%esp),	%ecx
=2D	xorl	%edi,		%ebp
=2D	xorl	36(%esp),	%ecx
=2D	xorl	%esi,		%ebp
=2D.byte 209
=2D.byte 193=09
=2D	movl	%ecx,		48(%esp)
=2D	leal	3395469782(%ecx,%eax,1),%ecx
=2D	movl	%ebx,		%eax
=2D	roll	$5,		%eax
=2D	addl	%ebp,		%ecx
=2D	addl	%eax,		%ecx
+	movl	%edx,%ebp
+	movl	48(%esp),%ebx
+	rorl	$2,%edx
+	xorl	56(%esp),%ebx
+	xorl	%edi,%ebp
+	xorl	16(%esp),%ebx
+	xorl	%esi,%ebp
+	xorl	36(%esp),%ebx
+	roll	$1,%ebx
+	addl	%eax,%ebp
+	movl	%ebx,48(%esp)
+	movl	%ecx,%eax
+	roll	$5,%eax
+	leal	3395469782(%ebx,%ebp,1),%ebx
+	addl	%eax,%ebx
=20
=2D	movl	52(%esp),	%eax
=2D	movl	%ebx,		%ebp
=2D	xorl	60(%esp),	%eax
=2D	rorl	$2,		%ebx
=2D	xorl	20(%esp),	%eax
=2D	xorl	%edx,		%ebp
=2D	xorl	40(%esp),	%eax
=2D	xorl	%edi,		%ebp
=2D.byte 209
=2D.byte 192=09
=2D	movl	%eax,		52(%esp)
=2D	leal	3395469782(%eax,%esi,1),%eax
=2D	movl	%ecx,		%esi
=2D	roll	$5,		%esi
=2D	addl	%ebp,		%eax
=2D	addl	%esi,		%eax
+	movl	%ecx,%ebp
+	movl	52(%esp),%eax
+	rorl	$2,%ecx
+	xorl	60(%esp),%eax
+	xorl	%edx,%ebp
+	xorl	20(%esp),%eax
+	xorl	%edi,%ebp
+	xorl	40(%esp),%eax
+	roll	$1,%eax
+	addl	%esi,%ebp
+	movl	%eax,52(%esp)
+	movl	%ebx,%esi
+	roll	$5,%esi
+	leal	3395469782(%eax,%ebp,1),%eax
+	addl	%esi,%eax
=20
=2D	movl	56(%esp),	%esi
=2D	movl	%ecx,		%ebp
=2D	xorl	(%esp),		%esi
=2D	rorl	$2,		%ecx
=2D	xorl	24(%esp),	%esi
=2D	xorl	%ebx,		%ebp
=2D	xorl	44(%esp),	%esi
=2D	xorl	%edx,		%ebp
=2D.byte 209
=2D.byte 198=09
=2D	movl	%esi,		56(%esp)
=2D	leal	3395469782(%esi,%edi,1),%esi
=2D	movl	%eax,		%edi
=2D	roll	$5,		%edi
=2D	addl	%ebp,		%esi
=2D	addl	%edi,		%esi
+	movl	%ebx,%ebp
+	movl	56(%esp),%esi
+	rorl	$2,%ebx
+	xorl	(%esp),%esi
+	xorl	%ecx,%ebp
+	xorl	24(%esp),%esi
+	xorl	%edx,%ebp
+	xorl	44(%esp),%esi
+	roll	$1,%esi
+	addl	%edi,%ebp
+	movl	%esi,56(%esp)
+	movl	%eax,%edi
+	roll	$5,%edi
+	leal	3395469782(%esi,%ebp,1),%esi
+	addl	%edi,%esi
=20
=2D	movl	60(%esp),	%edi
=2D	movl	%eax,		%ebp
=2D	xorl	4(%esp),	%edi
=2D	rorl	$2,		%eax
=2D	xorl	28(%esp),	%edi
=2D	xorl	%ecx,		%ebp
=2D	xorl	48(%esp),	%edi
=2D	xorl	%ebx,		%ebp
=2D.byte 209
=2D.byte 199=09
=2D	movl	%edi,		60(%esp)
=2D	leal	3395469782(%edi,%edx,1),%edi
=2D	movl	%esi,		%edx
=2D	roll	$5,		%edx
=2D	addl	%ebp,		%edi
=2D	addl	%edx,		%edi
=2D
=2D
=2D	movl	128(%esp),	%ebp
=2D	movl	12(%ebp),	%edx
=2D	addl	%ecx,		%edx
=2D	movl	4(%ebp),	%ecx
=2D	addl	%esi,		%ecx
=2D	movl	%eax,		%esi
=2D	movl	(%ebp),		%eax
=2D	movl	%edx,		12(%ebp)
=2D	addl	%edi,		%eax
=2D	movl	16(%ebp),	%edi
=2D	addl	%ebx,		%edi
=2D	movl	8(%ebp),	%ebx
=2D	addl	%esi,		%ebx
=2D	movl	%eax,		(%ebp)
=2D	movl	132(%esp),	%esi
=2D	movl	%ebx,		8(%ebp)
=2D	addl	$64,		%esi
=2D	movl	68(%esp),	%eax
=2D	movl	%edi,		16(%ebp)
=2D	cmpl	%eax,		%esi
=2D	movl	%ecx,		4(%ebp)
=2D	jl	.L000start
=2D	addl	$108,		%esp
+	movl	%eax,%ebp
+	movl	60(%esp),%edi
+	rorl	$2,%eax
+	xorl	4(%esp),%edi
+	xorl	%ebx,%ebp
+	xorl	28(%esp),%edi
+	xorl	%ecx,%ebp
+	xorl	48(%esp),%edi
+	roll	$1,%edi
+	addl	%edx,%ebp
+	movl	%edi,60(%esp)
+	movl	%esi,%edx
+	roll	$5,%edx
+	leal	3395469782(%edi,%ebp,1),%edi
+	addl	%edx,%edi
+	movl	84(%esp),%ebp
+	movl	88(%esp),%edx
+	addl	(%ebp),%edi
+	addl	4(%ebp),%esi
+	addl	8(%ebp),%eax
+	addl	12(%ebp),%ebx
+	addl	16(%ebp),%ecx
+	movl	%edi,(%ebp)
+	addl	$64,%edx
+	movl	%esi,4(%ebp)
+	cmpl	92(%esp),%edx
+	movl	%eax,8(%ebp)
+	movl	%ecx,%edi
+	movl	%ebx,12(%ebp)
+	movl	%edx,%esi
+	movl	%ecx,16(%ebp)
+	jb	.L000loop
+	addl	$64,%esp
 	popl	%edi
+	popl	%esi
 	popl	%ebx
 	popl	%ebp
=2D	popl	%esi
 	ret
=2D.L_sha1_block_asm_data_order_end:
=2D	.size	sha1_block_asm_data_order,.L_sha1_block_asm_data_order_end-sha1_b=
lock_asm_data_order
=2D.ident	"desasm.pl"
=2D.text
=2D	.align 16
=2D.globl sha1_block_asm_host_order
=2D	.type	sha1_block_asm_host_order,@function
=2Dsha1_block_asm_host_order:
=2D	movl	12(%esp),	%ecx
=2D	pushl	%esi
=2D	sall	$6,		%ecx
=2D	movl	12(%esp),	%esi
=2D	pushl	%ebp
=2D	addl	%esi,		%ecx
=2D	pushl	%ebx
=2D	movl	16(%esp),	%ebp
=2D	pushl	%edi
=2D	movl	12(%ebp),	%edx
=2D	subl	$108,		%esp
=2D	movl	16(%ebp),	%edi
=2D	movl	8(%ebp),	%ebx
=2D	movl	%ecx,		68(%esp)
=2D
=2D	movl	(%esi),		%eax
=2D	movl	4(%esi),	%ecx
=2D	movl	%eax,		(%esp)
=2D	movl	%ecx,		4(%esp)
=2D	movl	8(%esi),	%eax
=2D	movl	12(%esi),	%ecx
=2D	movl	%eax,		8(%esp)
=2D	movl	%ecx,		12(%esp)
=2D	movl	16(%esi),	%eax
=2D	movl	20(%esi),	%ecx
=2D	movl	%eax,		16(%esp)
=2D	movl	%ecx,		20(%esp)
=2D	movl	24(%esi),	%eax
=2D	movl	28(%esi),	%ecx
=2D	movl	%eax,		24(%esp)
=2D	movl	%ecx,		28(%esp)
=2D	movl	32(%esi),	%eax
=2D	movl	36(%esi),	%ecx
=2D	movl	%eax,		32(%esp)
=2D	movl	%ecx,		36(%esp)
=2D	movl	40(%esi),	%eax
=2D	movl	44(%esi),	%ecx
=2D	movl	%eax,		40(%esp)
=2D	movl	%ecx,		44(%esp)
=2D	movl	48(%esi),	%eax
=2D	movl	52(%esi),	%ecx
=2D	movl	%eax,		48(%esp)
=2D	movl	%ecx,		52(%esp)
=2D	movl	56(%esi),	%eax
=2D	movl	60(%esi),	%ecx
=2D	movl	%eax,		56(%esp)
=2D	movl	%ecx,		60(%esp)
=2D	jmp	.L001shortcut
=2D.L_sha1_block_asm_host_order_end:
=2D	.size	sha1_block_asm_host_order,.L_sha1_block_asm_host_order_end-sha1_b=
lock_asm_host_order
=2D.ident	"desasm.pl"
+.size	sha1_block_data_order,.-.L_sha1_block_data_order_begin
+.byte	83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
+.byte	102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
+.byte	89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
+.byte	114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
Index: secure/lib/libcrypto/opensslconf-powerpc.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/opensslconf-powerpc.h	(revision 218560)
+++ secure/lib/libcrypto/opensslconf-powerpc.h	(working copy)
@@ -1,4 +1,4 @@
=2D/* $FreeBSD$ */
+/* $FreeBSD: src/secure/lib/libcrypto/opensslconf-powerpc.h,v 1.5.10.1 201=
0/02/10 00:26:20 kensmith Exp $ */
 /* opensslconf.h */
 /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
=20
@@ -6,10 +6,6 @@
 #ifndef OPENSSL_DOING_MAKEDEPEND
=20
 /* Disabled by default in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_CAMELLIA
=2D# define OPENSSL_NO_CAMELLIA
=2D#endif
=2D/* Disabled by default in OpenSSL 0.9.8. */
 #ifndef OPENSSL_NO_CMS
 # define OPENSSL_NO_CMS
 #endif
@@ -21,6 +17,11 @@
 #ifndef OPENSSL_NO_JPAKE
 # define OPENSSL_NO_JPAKE
 #endif
+
+/* Disabled by default in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_CAMELLIA
+# define OPENSSL_NO_CAMELLIA
+#endif
 /* libgmp is not in the FreeBSD base system. */
 #ifndef OPENSSL_NO_GMP
 # define OPENSSL_NO_GMP
@@ -110,17 +111,13 @@
 /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
  * %20 speed up (longs are 8 bytes, int's are 4). */
 #ifndef DES_LONG
=2D#define DES_LONG unsigned int
+#define DES_LONG unsigned long
 #endif
 #endif
=20
 #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
 #define CONFIG_HEADER_BN_H
=2D#ifdef __powerpc64__
=2D#undef BN_LLONG
=2D#else
 #define BN_LLONG
=2D#endif
=20
 /* Should we define BN_DIV2W here? */
=20
@@ -128,14 +125,9 @@
 /* The prime number generation stuff may not work when
  * EIGHT_BIT but I don't care since I've only used this mode
  * for debuging the bignum libraries */
=2D#ifdef __powerpc64__
=2D#define SIXTY_FOUR_BIT_LONG
=2D#undef THIRTY_TWO_BIT
=2D#else
 #undef SIXTY_FOUR_BIT_LONG
=2D#define THIRTY_TWO_BIT
=2D#endif
 #undef SIXTY_FOUR_BIT
+#define THIRTY_TWO_BIT
 #undef SIXTEEN_BIT
 #undef EIGHT_BIT
 #endif
Index: secure/lib/libcrypto/opensslconf-arm.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/opensslconf-arm.h	(revision 218560)
+++ secure/lib/libcrypto/opensslconf-arm.h	(working copy)
@@ -1,4 +1,4 @@
=2D/* $FreeBSD$ */
+/* $FreeBSD: src/secure/lib/libcrypto/opensslconf-arm.h,v 1.3.10.1 2010/02=
/10 00:26:20 kensmith Exp $ */
 /* opensslconf.h */
 /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
=20
@@ -6,10 +6,6 @@
 #ifndef OPENSSL_DOING_MAKEDEPEND
=20
 /* Disabled by default in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_CAMELLIA
=2D# define OPENSSL_NO_CAMELLIA
=2D#endif
=2D/* Disabled by default in OpenSSL 0.9.8. */
 #ifndef OPENSSL_NO_CMS
 # define OPENSSL_NO_CMS
 #endif
@@ -17,14 +13,19 @@
 #ifndef OPENSSL_NO_SEED
 # define OPENSSL_NO_SEED
 #endif
+/* jpake is marked experimental in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_JPAKE
+# define OPENSSL_NO_JPAKE
+#endif
+
+/* Disabled by default in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_CAMELLIA
+# define OPENSSL_NO_CAMELLIA
+#endif
 /* libgmp is not in the FreeBSD base system. */
 #ifndef OPENSSL_NO_GMP
 # define OPENSSL_NO_GMP
 #endif
=2D/* jpake is marked experimental in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_JPAKE
=2D# define OPENSSL_NO_JPAKE
=2D#endif
 /* The Kerberos 5 support is MIT-specific. */
 #ifndef OPENSSL_NO_KRB5
 # define OPENSSL_NO_KRB5
Index: secure/lib/libcrypto/Makefile.asm
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/Makefile.asm	(revision 218560)
+++ secure/lib/libcrypto/Makefile.asm	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/Makefile.asm,v 1.5.24.1 2010/02/10 00=
:26:20 kensmith Exp $
 # Use this to help generate the asm *.s files after an import.  It is not
 # perfect by any means, but does what is needed.
 # Do a 'make -f Makefile.asm all' and it will generate *.s.  Move them
Index: secure/lib/libcrypto/opensslconf-sparc64.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/opensslconf-sparc64.h	(revision 218560)
+++ secure/lib/libcrypto/opensslconf-sparc64.h	(working copy)
@@ -1,4 +1,4 @@
=2D/* $FreeBSD$ */
+/* $FreeBSD: src/secure/lib/libcrypto/opensslconf-sparc64.h,v 1.6.10.1 201=
0/02/10 00:26:20 kensmith Exp $ */
 /* opensslconf.h */
 /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
=20
@@ -6,10 +6,6 @@
 #ifndef OPENSSL_DOING_MAKEDEPEND
=20
 /* Disabled by default in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_CAMELLIA
=2D# define OPENSSL_NO_CAMELLIA
=2D#endif
=2D/* Disabled by default in OpenSSL 0.9.8. */
 #ifndef OPENSSL_NO_CMS
 # define OPENSSL_NO_CMS
 #endif
@@ -21,6 +17,11 @@
 #ifndef OPENSSL_NO_JPAKE
 # define OPENSSL_NO_JPAKE
 #endif
+
+/* Disabled by default in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_CAMELLIA
+# define OPENSSL_NO_CAMELLIA
+#endif
 /* libgmp is not in the FreeBSD base system. */
 #ifndef OPENSSL_NO_GMP
 # define OPENSSL_NO_GMP
Index: secure/lib/libcrypto/opensslconf-i386.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/opensslconf-i386.h	(revision 218560)
+++ secure/lib/libcrypto/opensslconf-i386.h	(working copy)
@@ -1,4 +1,4 @@
=2D/* $FreeBSD$ */
+/* $FreeBSD: src/secure/lib/libcrypto/opensslconf-i386.h,v 1.8.10.1 2010/0=
2/10 00:26:20 kensmith Exp $ */
 /* opensslconf.h */
 /* WARNING: Generated automatically from opensslconf.h.in by Configure. */
=20
@@ -13,14 +13,15 @@
 #ifndef OPENSSL_NO_SEED
 # define OPENSSL_NO_SEED
 #endif
+/* jpake is marked experimental in OpenSSL 0.9.8. */
+#ifndef OPENSSL_NO_JPAKE
+# define OPENSSL_NO_JPAKE
+#endif
+
 /* libgmp is not in the FreeBSD base system. */
 #ifndef OPENSSL_NO_GMP
 # define OPENSSL_NO_GMP
 #endif
=2D/* jpake is marked experimental in OpenSSL 0.9.8. */
=2D#ifndef OPENSSL_NO_JPAKE
=2D# define OPENSSL_NO_JPAKE
=2D#endif
 /* The Kerberos 5 support is MIT-specific. */
 #ifndef OPENSSL_NO_KRB5
 # define OPENSSL_NO_KRB5
Index: secure/lib/libcrypto/amd64/md5-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/md5-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/md5-amd64.s	(revision 0)
@@ -0,0 +1,668 @@
+.text=09
+.align	16
+
+.globl	md5_block_asm_data_order
+.type	md5_block_asm_data_order,@function
+md5_block_asm_data_order:
+	pushq	%rbp
+	pushq	%rbx
+	pushq	%r12
+	pushq	%r14
+	pushq	%r15
+.Lprologue:
+
+
+
+
+	movq	%rdi,%rbp
+	shlq	$6,%rdx
+	leaq	(%rsi,%rdx,1),%rdi
+	movl	0(%rbp),%eax
+	movl	4(%rbp),%ebx
+	movl	8(%rbp),%ecx
+	movl	12(%rbp),%edx
+
+
+
+
+
+
+
+	cmpq	%rdi,%rsi
+	je	.Lend			=09
+
+
+.Lloop:
+	movl	%eax,%r8d
+	movl	%ebx,%r9d
+	movl	%ecx,%r14d
+	movl	%edx,%r15d
+	movl	0(%rsi),%r10d
+	movl	%edx,%r11d
+	xorl	%ecx,%r11d
+	leal	-680876936(%rax,%r10,1),%eax
+	andl	%ebx,%r11d
+	xorl	%edx,%r11d
+	movl	4(%rsi),%r10d
+	addl	%r11d,%eax
+	roll	$7,%eax
+	movl	%ecx,%r11d
+	addl	%ebx,%eax
+	xorl	%ebx,%r11d
+	leal	-389564586(%rdx,%r10,1),%edx
+	andl	%eax,%r11d
+	xorl	%ecx,%r11d
+	movl	8(%rsi),%r10d
+	addl	%r11d,%edx
+	roll	$12,%edx
+	movl	%ebx,%r11d
+	addl	%eax,%edx
+	xorl	%eax,%r11d
+	leal	606105819(%rcx,%r10,1),%ecx
+	andl	%edx,%r11d
+	xorl	%ebx,%r11d
+	movl	12(%rsi),%r10d
+	addl	%r11d,%ecx
+	roll	$17,%ecx
+	movl	%eax,%r11d
+	addl	%edx,%ecx
+	xorl	%edx,%r11d
+	leal	-1044525330(%rbx,%r10,1),%ebx
+	andl	%ecx,%r11d
+	xorl	%eax,%r11d
+	movl	16(%rsi),%r10d
+	addl	%r11d,%ebx
+	roll	$22,%ebx
+	movl	%edx,%r11d
+	addl	%ecx,%ebx
+	xorl	%ecx,%r11d
+	leal	-176418897(%rax,%r10,1),%eax
+	andl	%ebx,%r11d
+	xorl	%edx,%r11d
+	movl	20(%rsi),%r10d
+	addl	%r11d,%eax
+	roll	$7,%eax
+	movl	%ecx,%r11d
+	addl	%ebx,%eax
+	xorl	%ebx,%r11d
+	leal	1200080426(%rdx,%r10,1),%edx
+	andl	%eax,%r11d
+	xorl	%ecx,%r11d
+	movl	24(%rsi),%r10d
+	addl	%r11d,%edx
+	roll	$12,%edx
+	movl	%ebx,%r11d
+	addl	%eax,%edx
+	xorl	%eax,%r11d
+	leal	-1473231341(%rcx,%r10,1),%ecx
+	andl	%edx,%r11d
+	xorl	%ebx,%r11d
+	movl	28(%rsi),%r10d
+	addl	%r11d,%ecx
+	roll	$17,%ecx
+	movl	%eax,%r11d
+	addl	%edx,%ecx
+	xorl	%edx,%r11d
+	leal	-45705983(%rbx,%r10,1),%ebx
+	andl	%ecx,%r11d
+	xorl	%eax,%r11d
+	movl	32(%rsi),%r10d
+	addl	%r11d,%ebx
+	roll	$22,%ebx
+	movl	%edx,%r11d
+	addl	%ecx,%ebx
+	xorl	%ecx,%r11d
+	leal	1770035416(%rax,%r10,1),%eax
+	andl	%ebx,%r11d
+	xorl	%edx,%r11d
+	movl	36(%rsi),%r10d
+	addl	%r11d,%eax
+	roll	$7,%eax
+	movl	%ecx,%r11d
+	addl	%ebx,%eax
+	xorl	%ebx,%r11d
+	leal	-1958414417(%rdx,%r10,1),%edx
+	andl	%eax,%r11d
+	xorl	%ecx,%r11d
+	movl	40(%rsi),%r10d
+	addl	%r11d,%edx
+	roll	$12,%edx
+	movl	%ebx,%r11d
+	addl	%eax,%edx
+	xorl	%eax,%r11d
+	leal	-42063(%rcx,%r10,1),%ecx
+	andl	%edx,%r11d
+	xorl	%ebx,%r11d
+	movl	44(%rsi),%r10d
+	addl	%r11d,%ecx
+	roll	$17,%ecx
+	movl	%eax,%r11d
+	addl	%edx,%ecx
+	xorl	%edx,%r11d
+	leal	-1990404162(%rbx,%r10,1),%ebx
+	andl	%ecx,%r11d
+	xorl	%eax,%r11d
+	movl	48(%rsi),%r10d
+	addl	%r11d,%ebx
+	roll	$22,%ebx
+	movl	%edx,%r11d
+	addl	%ecx,%ebx
+	xorl	%ecx,%r11d
+	leal	1804603682(%rax,%r10,1),%eax
+	andl	%ebx,%r11d
+	xorl	%edx,%r11d
+	movl	52(%rsi),%r10d
+	addl	%r11d,%eax
+	roll	$7,%eax
+	movl	%ecx,%r11d
+	addl	%ebx,%eax
+	xorl	%ebx,%r11d
+	leal	-40341101(%rdx,%r10,1),%edx
+	andl	%eax,%r11d
+	xorl	%ecx,%r11d
+	movl	56(%rsi),%r10d
+	addl	%r11d,%edx
+	roll	$12,%edx
+	movl	%ebx,%r11d
+	addl	%eax,%edx
+	xorl	%eax,%r11d
+	leal	-1502002290(%rcx,%r10,1),%ecx
+	andl	%edx,%r11d
+	xorl	%ebx,%r11d
+	movl	60(%rsi),%r10d
+	addl	%r11d,%ecx
+	roll	$17,%ecx
+	movl	%eax,%r11d
+	addl	%edx,%ecx
+	xorl	%edx,%r11d
+	leal	1236535329(%rbx,%r10,1),%ebx
+	andl	%ecx,%r11d
+	xorl	%eax,%r11d
+	movl	0(%rsi),%r10d
+	addl	%r11d,%ebx
+	roll	$22,%ebx
+	movl	%edx,%r11d
+	addl	%ecx,%ebx
+	movl	4(%rsi),%r10d
+	movl	%edx,%r11d
+	movl	%edx,%r12d
+	notl	%r11d
+	leal	-165796510(%rax,%r10,1),%eax
+	andl	%ebx,%r12d
+	andl	%ecx,%r11d
+	movl	24(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ecx,%r11d
+	addl	%r12d,%eax
+	movl	%ecx,%r12d
+	roll	$5,%eax
+	addl	%ebx,%eax
+	notl	%r11d
+	leal	-1069501632(%rdx,%r10,1),%edx
+	andl	%eax,%r12d
+	andl	%ebx,%r11d
+	movl	44(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ebx,%r11d
+	addl	%r12d,%edx
+	movl	%ebx,%r12d
+	roll	$9,%edx
+	addl	%eax,%edx
+	notl	%r11d
+	leal	643717713(%rcx,%r10,1),%ecx
+	andl	%edx,%r12d
+	andl	%eax,%r11d
+	movl	0(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%eax,%r11d
+	addl	%r12d,%ecx
+	movl	%eax,%r12d
+	roll	$14,%ecx
+	addl	%edx,%ecx
+	notl	%r11d
+	leal	-373897302(%rbx,%r10,1),%ebx
+	andl	%ecx,%r12d
+	andl	%edx,%r11d
+	movl	20(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%edx,%r11d
+	addl	%r12d,%ebx
+	movl	%edx,%r12d
+	roll	$20,%ebx
+	addl	%ecx,%ebx
+	notl	%r11d
+	leal	-701558691(%rax,%r10,1),%eax
+	andl	%ebx,%r12d
+	andl	%ecx,%r11d
+	movl	40(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ecx,%r11d
+	addl	%r12d,%eax
+	movl	%ecx,%r12d
+	roll	$5,%eax
+	addl	%ebx,%eax
+	notl	%r11d
+	leal	38016083(%rdx,%r10,1),%edx
+	andl	%eax,%r12d
+	andl	%ebx,%r11d
+	movl	60(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ebx,%r11d
+	addl	%r12d,%edx
+	movl	%ebx,%r12d
+	roll	$9,%edx
+	addl	%eax,%edx
+	notl	%r11d
+	leal	-660478335(%rcx,%r10,1),%ecx
+	andl	%edx,%r12d
+	andl	%eax,%r11d
+	movl	16(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%eax,%r11d
+	addl	%r12d,%ecx
+	movl	%eax,%r12d
+	roll	$14,%ecx
+	addl	%edx,%ecx
+	notl	%r11d
+	leal	-405537848(%rbx,%r10,1),%ebx
+	andl	%ecx,%r12d
+	andl	%edx,%r11d
+	movl	36(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%edx,%r11d
+	addl	%r12d,%ebx
+	movl	%edx,%r12d
+	roll	$20,%ebx
+	addl	%ecx,%ebx
+	notl	%r11d
+	leal	568446438(%rax,%r10,1),%eax
+	andl	%ebx,%r12d
+	andl	%ecx,%r11d
+	movl	56(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ecx,%r11d
+	addl	%r12d,%eax
+	movl	%ecx,%r12d
+	roll	$5,%eax
+	addl	%ebx,%eax
+	notl	%r11d
+	leal	-1019803690(%rdx,%r10,1),%edx
+	andl	%eax,%r12d
+	andl	%ebx,%r11d
+	movl	12(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ebx,%r11d
+	addl	%r12d,%edx
+	movl	%ebx,%r12d
+	roll	$9,%edx
+	addl	%eax,%edx
+	notl	%r11d
+	leal	-187363961(%rcx,%r10,1),%ecx
+	andl	%edx,%r12d
+	andl	%eax,%r11d
+	movl	32(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%eax,%r11d
+	addl	%r12d,%ecx
+	movl	%eax,%r12d
+	roll	$14,%ecx
+	addl	%edx,%ecx
+	notl	%r11d
+	leal	1163531501(%rbx,%r10,1),%ebx
+	andl	%ecx,%r12d
+	andl	%edx,%r11d
+	movl	52(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%edx,%r11d
+	addl	%r12d,%ebx
+	movl	%edx,%r12d
+	roll	$20,%ebx
+	addl	%ecx,%ebx
+	notl	%r11d
+	leal	-1444681467(%rax,%r10,1),%eax
+	andl	%ebx,%r12d
+	andl	%ecx,%r11d
+	movl	8(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ecx,%r11d
+	addl	%r12d,%eax
+	movl	%ecx,%r12d
+	roll	$5,%eax
+	addl	%ebx,%eax
+	notl	%r11d
+	leal	-51403784(%rdx,%r10,1),%edx
+	andl	%eax,%r12d
+	andl	%ebx,%r11d
+	movl	28(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%ebx,%r11d
+	addl	%r12d,%edx
+	movl	%ebx,%r12d
+	roll	$9,%edx
+	addl	%eax,%edx
+	notl	%r11d
+	leal	1735328473(%rcx,%r10,1),%ecx
+	andl	%edx,%r12d
+	andl	%eax,%r11d
+	movl	48(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%eax,%r11d
+	addl	%r12d,%ecx
+	movl	%eax,%r12d
+	roll	$14,%ecx
+	addl	%edx,%ecx
+	notl	%r11d
+	leal	-1926607734(%rbx,%r10,1),%ebx
+	andl	%ecx,%r12d
+	andl	%edx,%r11d
+	movl	0(%rsi),%r10d
+	orl	%r11d,%r12d
+	movl	%edx,%r11d
+	addl	%r12d,%ebx
+	movl	%edx,%r12d
+	roll	$20,%ebx
+	addl	%ecx,%ebx
+	movl	20(%rsi),%r10d
+	movl	%ecx,%r11d
+	leal	-378558(%rax,%r10,1),%eax
+	movl	32(%rsi),%r10d
+	xorl	%edx,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%eax
+	roll	$4,%eax
+	movl	%ebx,%r11d
+	addl	%ebx,%eax
+	leal	-2022574463(%rdx,%r10,1),%edx
+	movl	44(%rsi),%r10d
+	xorl	%ecx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%edx
+	roll	$11,%edx
+	movl	%eax,%r11d
+	addl	%eax,%edx
+	leal	1839030562(%rcx,%r10,1),%ecx
+	movl	56(%rsi),%r10d
+	xorl	%ebx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ecx
+	roll	$16,%ecx
+	movl	%edx,%r11d
+	addl	%edx,%ecx
+	leal	-35309556(%rbx,%r10,1),%ebx
+	movl	4(%rsi),%r10d
+	xorl	%eax,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%ebx
+	roll	$23,%ebx
+	movl	%ecx,%r11d
+	addl	%ecx,%ebx
+	leal	-1530992060(%rax,%r10,1),%eax
+	movl	16(%rsi),%r10d
+	xorl	%edx,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%eax
+	roll	$4,%eax
+	movl	%ebx,%r11d
+	addl	%ebx,%eax
+	leal	1272893353(%rdx,%r10,1),%edx
+	movl	28(%rsi),%r10d
+	xorl	%ecx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%edx
+	roll	$11,%edx
+	movl	%eax,%r11d
+	addl	%eax,%edx
+	leal	-155497632(%rcx,%r10,1),%ecx
+	movl	40(%rsi),%r10d
+	xorl	%ebx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ecx
+	roll	$16,%ecx
+	movl	%edx,%r11d
+	addl	%edx,%ecx
+	leal	-1094730640(%rbx,%r10,1),%ebx
+	movl	52(%rsi),%r10d
+	xorl	%eax,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%ebx
+	roll	$23,%ebx
+	movl	%ecx,%r11d
+	addl	%ecx,%ebx
+	leal	681279174(%rax,%r10,1),%eax
+	movl	0(%rsi),%r10d
+	xorl	%edx,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%eax
+	roll	$4,%eax
+	movl	%ebx,%r11d
+	addl	%ebx,%eax
+	leal	-358537222(%rdx,%r10,1),%edx
+	movl	12(%rsi),%r10d
+	xorl	%ecx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%edx
+	roll	$11,%edx
+	movl	%eax,%r11d
+	addl	%eax,%edx
+	leal	-722521979(%rcx,%r10,1),%ecx
+	movl	24(%rsi),%r10d
+	xorl	%ebx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ecx
+	roll	$16,%ecx
+	movl	%edx,%r11d
+	addl	%edx,%ecx
+	leal	76029189(%rbx,%r10,1),%ebx
+	movl	36(%rsi),%r10d
+	xorl	%eax,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%ebx
+	roll	$23,%ebx
+	movl	%ecx,%r11d
+	addl	%ecx,%ebx
+	leal	-640364487(%rax,%r10,1),%eax
+	movl	48(%rsi),%r10d
+	xorl	%edx,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%eax
+	roll	$4,%eax
+	movl	%ebx,%r11d
+	addl	%ebx,%eax
+	leal	-421815835(%rdx,%r10,1),%edx
+	movl	60(%rsi),%r10d
+	xorl	%ecx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%edx
+	roll	$11,%edx
+	movl	%eax,%r11d
+	addl	%eax,%edx
+	leal	530742520(%rcx,%r10,1),%ecx
+	movl	8(%rsi),%r10d
+	xorl	%ebx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ecx
+	roll	$16,%ecx
+	movl	%edx,%r11d
+	addl	%edx,%ecx
+	leal	-995338651(%rbx,%r10,1),%ebx
+	movl	0(%rsi),%r10d
+	xorl	%eax,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%ebx
+	roll	$23,%ebx
+	movl	%ecx,%r11d
+	addl	%ecx,%ebx
+	movl	0(%rsi),%r10d
+	movl	$4294967295,%r11d
+	xorl	%edx,%r11d
+	leal	-198630844(%rax,%r10,1),%eax
+	orl	%ebx,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%eax
+	movl	28(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$6,%eax
+	xorl	%ecx,%r11d
+	addl	%ebx,%eax
+	leal	1126891415(%rdx,%r10,1),%edx
+	orl	%eax,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%edx
+	movl	56(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$10,%edx
+	xorl	%ebx,%r11d
+	addl	%eax,%edx
+	leal	-1416354905(%rcx,%r10,1),%ecx
+	orl	%edx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%ecx
+	movl	20(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$15,%ecx
+	xorl	%eax,%r11d
+	addl	%edx,%ecx
+	leal	-57434055(%rbx,%r10,1),%ebx
+	orl	%ecx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ebx
+	movl	48(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$21,%ebx
+	xorl	%edx,%r11d
+	addl	%ecx,%ebx
+	leal	1700485571(%rax,%r10,1),%eax
+	orl	%ebx,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%eax
+	movl	12(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$6,%eax
+	xorl	%ecx,%r11d
+	addl	%ebx,%eax
+	leal	-1894986606(%rdx,%r10,1),%edx
+	orl	%eax,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%edx
+	movl	40(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$10,%edx
+	xorl	%ebx,%r11d
+	addl	%eax,%edx
+	leal	-1051523(%rcx,%r10,1),%ecx
+	orl	%edx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%ecx
+	movl	4(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$15,%ecx
+	xorl	%eax,%r11d
+	addl	%edx,%ecx
+	leal	-2054922799(%rbx,%r10,1),%ebx
+	orl	%ecx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ebx
+	movl	32(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$21,%ebx
+	xorl	%edx,%r11d
+	addl	%ecx,%ebx
+	leal	1873313359(%rax,%r10,1),%eax
+	orl	%ebx,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%eax
+	movl	60(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$6,%eax
+	xorl	%ecx,%r11d
+	addl	%ebx,%eax
+	leal	-30611744(%rdx,%r10,1),%edx
+	orl	%eax,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%edx
+	movl	24(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$10,%edx
+	xorl	%ebx,%r11d
+	addl	%eax,%edx
+	leal	-1560198380(%rcx,%r10,1),%ecx
+	orl	%edx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%ecx
+	movl	52(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$15,%ecx
+	xorl	%eax,%r11d
+	addl	%edx,%ecx
+	leal	1309151649(%rbx,%r10,1),%ebx
+	orl	%ecx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ebx
+	movl	16(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$21,%ebx
+	xorl	%edx,%r11d
+	addl	%ecx,%ebx
+	leal	-145523070(%rax,%r10,1),%eax
+	orl	%ebx,%r11d
+	xorl	%ecx,%r11d
+	addl	%r11d,%eax
+	movl	44(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$6,%eax
+	xorl	%ecx,%r11d
+	addl	%ebx,%eax
+	leal	-1120210379(%rdx,%r10,1),%edx
+	orl	%eax,%r11d
+	xorl	%ebx,%r11d
+	addl	%r11d,%edx
+	movl	8(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$10,%edx
+	xorl	%ebx,%r11d
+	addl	%eax,%edx
+	leal	718787259(%rcx,%r10,1),%ecx
+	orl	%edx,%r11d
+	xorl	%eax,%r11d
+	addl	%r11d,%ecx
+	movl	36(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$15,%ecx
+	xorl	%eax,%r11d
+	addl	%edx,%ecx
+	leal	-343485551(%rbx,%r10,1),%ebx
+	orl	%ecx,%r11d
+	xorl	%edx,%r11d
+	addl	%r11d,%ebx
+	movl	0(%rsi),%r10d
+	movl	$4294967295,%r11d
+	roll	$21,%ebx
+	xorl	%edx,%r11d
+	addl	%ecx,%ebx
+
+	addl	%r8d,%eax
+	addl	%r9d,%ebx
+	addl	%r14d,%ecx
+	addl	%r15d,%edx
+
+
+	addq	$64,%rsi
+	cmpq	%rdi,%rsi
+	jb	.Lloop			=09
+
+
+.Lend:
+	movl	%eax,0(%rbp)
+	movl	%ebx,4(%rbp)
+	movl	%ecx,8(%rbp)
+	movl	%edx,12(%rbp)
+
+	movq	(%rsp),%r15
+	movq	8(%rsp),%r14
+	movq	16(%rsp),%r12
+	movq	24(%rsp),%rbx
+	movq	32(%rsp),%rbp
+	addq	$40,%rsp
+.Lepilogue:
+	.byte	0xf3,0xc3
+.size	md5_block_asm_data_order,.-md5_block_asm_data_order
Index: secure/lib/libcrypto/amd64/aes-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/aes-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/aes-amd64.s	(revision 0)
@@ -0,0 +1,2532 @@
+.text=09
+.type	_x86_64_AES_encrypt,@function
+.align	16
+_x86_64_AES_encrypt:
+	xorl	0(%r15),%eax
+	xorl	4(%r15),%ebx
+	xorl	8(%r15),%ecx
+	xorl	12(%r15),%edx
+
+	movl	240(%r15),%r13d
+	subl	$1,%r13d
+	jmp	.Lenc_loop
+.align	16
+.Lenc_loop:
+
+	movzbl	%al,%esi
+	movzbl	%bl,%edi
+	movzbl	%cl,%ebp
+	movl	0(%r14,%rsi,8),%r10d
+	movl	0(%r14,%rdi,8),%r11d
+	movl	0(%r14,%rbp,8),%r12d
+
+	movzbl	%bh,%esi
+	movzbl	%ch,%edi
+	movzbl	%dl,%ebp
+	xorl	3(%r14,%rsi,8),%r10d
+	xorl	3(%r14,%rdi,8),%r11d
+	movl	0(%r14,%rbp,8),%r8d
+
+	movzbl	%dh,%esi
+	shrl	$16,%ecx
+	movzbl	%ah,%ebp
+	xorl	3(%r14,%rsi,8),%r12d
+	shrl	$16,%edx
+	xorl	3(%r14,%rbp,8),%r8d
+
+	shrl	$16,%ebx
+	leaq	16(%r15),%r15
+	shrl	$16,%eax
+
+	movzbl	%cl,%esi
+	movzbl	%dl,%edi
+	movzbl	%al,%ebp
+	xorl	2(%r14,%rsi,8),%r10d
+	xorl	2(%r14,%rdi,8),%r11d
+	xorl	2(%r14,%rbp,8),%r12d
+
+	movzbl	%dh,%esi
+	movzbl	%ah,%edi
+	movzbl	%bl,%ebp
+	xorl	1(%r14,%rsi,8),%r10d
+	xorl	1(%r14,%rdi,8),%r11d
+	xorl	2(%r14,%rbp,8),%r8d
+
+	movl	12(%r15),%edx
+	movzbl	%bh,%edi
+	movzbl	%ch,%ebp
+	movl	0(%r15),%eax
+	xorl	1(%r14,%rdi,8),%r12d
+	xorl	1(%r14,%rbp,8),%r8d
+
+	movl	4(%r15),%ebx
+	movl	8(%r15),%ecx
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	xorl	%r12d,%ecx
+	xorl	%r8d,%edx
+	subl	$1,%r13d
+	jnz	.Lenc_loop
+	movzbl	%al,%esi
+	movzbl	%bl,%edi
+	movzbl	%cl,%ebp
+	movzbl	2(%r14,%rsi,8),%r10d
+	movzbl	2(%r14,%rdi,8),%r11d
+	movzbl	2(%r14,%rbp,8),%r12d
+
+	movzbl	%dl,%esi
+	movzbl	%bh,%edi
+	movzbl	%ch,%ebp
+	movzbl	2(%r14,%rsi,8),%r8d
+	movl	0(%r14,%rdi,8),%edi
+	movl	0(%r14,%rbp,8),%ebp
+
+	andl	$65280,%edi
+	andl	$65280,%ebp
+
+	xorl	%edi,%r10d
+	xorl	%ebp,%r11d
+	shrl	$16,%ecx
+
+	movzbl	%dh,%esi
+	movzbl	%ah,%edi
+	shrl	$16,%edx
+	movl	0(%r14,%rsi,8),%esi
+	movl	0(%r14,%rdi,8),%edi
+
+	andl	$65280,%esi
+	andl	$65280,%edi
+	shrl	$16,%ebx
+	xorl	%esi,%r12d
+	xorl	%edi,%r8d
+	shrl	$16,%eax
+
+	movzbl	%cl,%esi
+	movzbl	%dl,%edi
+	movzbl	%al,%ebp
+	movl	0(%r14,%rsi,8),%esi
+	movl	0(%r14,%rdi,8),%edi
+	movl	0(%r14,%rbp,8),%ebp
+
+	andl	$16711680,%esi
+	andl	$16711680,%edi
+	andl	$16711680,%ebp
+
+	xorl	%esi,%r10d
+	xorl	%edi,%r11d
+	xorl	%ebp,%r12d
+
+	movzbl	%bl,%esi
+	movzbl	%dh,%edi
+	movzbl	%ah,%ebp
+	movl	0(%r14,%rsi,8),%esi
+	movl	2(%r14,%rdi,8),%edi
+	movl	2(%r14,%rbp,8),%ebp
+
+	andl	$16711680,%esi
+	andl	$4278190080,%edi
+	andl	$4278190080,%ebp
+
+	xorl	%esi,%r8d
+	xorl	%edi,%r10d
+	xorl	%ebp,%r11d
+
+	movzbl	%bh,%esi
+	movzbl	%ch,%edi
+	movl	16+12(%r15),%edx
+	movl	2(%r14,%rsi,8),%esi
+	movl	2(%r14,%rdi,8),%edi
+	movl	16+0(%r15),%eax
+
+	andl	$4278190080,%esi
+	andl	$4278190080,%edi
+
+	xorl	%esi,%r12d
+	xorl	%edi,%r8d
+
+	movl	16+4(%r15),%ebx
+	movl	16+8(%r15),%ecx
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	xorl	%r12d,%ecx
+	xorl	%r8d,%edx
+.byte	0xf3,0xc3		=09
+.size	_x86_64_AES_encrypt,.-_x86_64_AES_encrypt
+.type	_x86_64_AES_encrypt_compact,@function
+.align	16
+_x86_64_AES_encrypt_compact:
+	leaq	128(%r14),%r8
+	movl	0-128(%r8),%edi
+	movl	32-128(%r8),%ebp
+	movl	64-128(%r8),%r10d
+	movl	96-128(%r8),%r11d
+	movl	128-128(%r8),%edi
+	movl	160-128(%r8),%ebp
+	movl	192-128(%r8),%r10d
+	movl	224-128(%r8),%r11d
+	jmp	.Lenc_loop_compact
+.align	16
+.Lenc_loop_compact:
+	xorl	0(%r15),%eax
+	xorl	4(%r15),%ebx
+	xorl	8(%r15),%ecx
+	xorl	12(%r15),%edx
+	leaq	16(%r15),%r15
+	movzbl	%al,%r10d
+	movzbl	%bl,%r11d
+	movzbl	%cl,%r12d
+	movzbl	(%r14,%r10,1),%r10d
+	movzbl	(%r14,%r11,1),%r11d
+	movzbl	(%r14,%r12,1),%r12d
+
+	movzbl	%dl,%r8d
+	movzbl	%bh,%esi
+	movzbl	%ch,%edi
+	movzbl	(%r14,%r8,1),%r8d
+	movzbl	(%r14,%rsi,1),%r9d
+	movzbl	(%r14,%rdi,1),%r13d
+
+	movzbl	%dh,%ebp
+	movzbl	%ah,%esi
+	shrl	$16,%ecx
+	movzbl	(%r14,%rbp,1),%ebp
+	movzbl	(%r14,%rsi,1),%esi
+	shrl	$16,%edx
+
+	movzbl	%cl,%edi
+	shll	$8,%r9d
+	shll	$8,%r13d
+	movzbl	(%r14,%rdi,1),%edi
+	xorl	%r9d,%r10d
+	xorl	%r13d,%r11d
+
+	movzbl	%dl,%r9d
+	shrl	$16,%eax
+	shrl	$16,%ebx
+	movzbl	%al,%r13d
+	shll	$8,%ebp
+	shll	$8,%esi
+	movzbl	(%r14,%r9,1),%r9d
+	movzbl	(%r14,%r13,1),%r13d
+	xorl	%ebp,%r12d
+	xorl	%esi,%r8d
+
+	movzbl	%bl,%ebp
+	movzbl	%dh,%esi
+	shll	$16,%edi
+	movzbl	(%r14,%rbp,1),%ebp
+	movzbl	(%r14,%rsi,1),%esi
+	xorl	%edi,%r10d
+
+	movzbl	%ah,%edi
+	shrl	$8,%ecx
+	shrl	$8,%ebx
+	movzbl	(%r14,%rdi,1),%edi
+	movzbl	(%r14,%rcx,1),%edx
+	movzbl	(%r14,%rbx,1),%ecx
+	shll	$16,%r9d
+	shll	$16,%r13d
+	shll	$16,%ebp
+	xorl	%r9d,%r11d
+	xorl	%r13d,%r12d
+	xorl	%ebp,%r8d
+
+	shll	$24,%esi
+	shll	$24,%edi
+	shll	$24,%edx
+	xorl	%esi,%r10d
+	shll	$24,%ecx
+	xorl	%edi,%r11d
+	movl	%r10d,%eax
+	movl	%r11d,%ebx
+	xorl	%r12d,%ecx
+	xorl	%r8d,%edx
+	cmpq	16(%rsp),%r15
+	je	.Lenc_compact_done
+	movl	%eax,%esi
+	movl	%ebx,%edi
+	andl	$2155905152,%esi
+	andl	$2155905152,%edi
+	movl	%esi,%r10d
+	movl	%edi,%r11d
+	shrl	$7,%r10d
+	leal	(%rax,%rax,1),%r8d
+	shrl	$7,%r11d
+	leal	(%rbx,%rbx,1),%r9d
+	subl	%r10d,%esi
+	subl	%r11d,%edi
+	andl	$4278124286,%r8d
+	andl	$4278124286,%r9d
+	andl	$454761243,%esi
+	andl	$454761243,%edi
+	movl	%eax,%r10d
+	movl	%ebx,%r11d
+	xorl	%esi,%r8d
+	xorl	%edi,%r9d
+
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movl	%ecx,%esi
+	movl	%edx,%edi
+	roll	$24,%eax
+	roll	$24,%ebx
+	andl	$2155905152,%esi
+	andl	$2155905152,%edi
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movl	%esi,%r12d
+	movl	%edi,%ebp
+	rorl	$16,%r10d
+	rorl	$16,%r11d
+	shrl	$7,%r12d
+	leal	(%rcx,%rcx,1),%r8d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	shrl	$7,%ebp
+	leal	(%rdx,%rdx,1),%r9d
+	rorl	$8,%r10d
+	rorl	$8,%r11d
+	subl	%r12d,%esi
+	subl	%ebp,%edi
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+
+	andl	$4278124286,%r8d
+	andl	$4278124286,%r9d
+	andl	$454761243,%esi
+	andl	$454761243,%edi
+	movl	%ecx,%r12d
+	movl	%edx,%ebp
+	xorl	%esi,%r8d
+	xorl	%edi,%r9d
+
+	xorl	%r8d,%ecx
+	xorl	%r9d,%edx
+	roll	$24,%ecx
+	roll	$24,%edx
+	xorl	%r8d,%ecx
+	xorl	%r9d,%edx
+	movl	0(%r14),%esi
+	rorl	$16,%r12d
+	rorl	$16,%ebp
+	movl	64(%r14),%edi
+	xorl	%r12d,%ecx
+	xorl	%ebp,%edx
+	movl	128(%r14),%r8d
+	rorl	$8,%r12d
+	rorl	$8,%ebp
+	movl	192(%r14),%r9d
+	xorl	%r12d,%ecx
+	xorl	%ebp,%edx
+	jmp	.Lenc_loop_compact
+.align	16
+.Lenc_compact_done:
+	xorl	0(%r15),%eax
+	xorl	4(%r15),%ebx
+	xorl	8(%r15),%ecx
+	xorl	12(%r15),%edx
+.byte	0xf3,0xc3		=09
+.size	_x86_64_AES_encrypt_compact,.-_x86_64_AES_encrypt_compact
+.globl	AES_encrypt
+.type	AES_encrypt,@function
+.align	16
+AES_encrypt:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+
+
+	movq	%rsp,%r10
+	leaq	-63(%rdx),%rcx
+	andq	$-64,%rsp
+	subq	%rsp,%rcx
+	negq	%rcx
+	andq	$960,%rcx
+	subq	%rcx,%rsp
+	subq	$32,%rsp
+
+	movq	%rsi,16(%rsp)
+	movq	%r10,24(%rsp)
+.Lenc_prologue:
+
+	movq	%rdx,%r15
+	movl	240(%r15),%r13d
+
+	movl	0(%rdi),%eax
+	movl	4(%rdi),%ebx
+	movl	8(%rdi),%ecx
+	movl	12(%rdi),%edx
+
+	shll	$4,%r13d
+	leaq	(%r15,%r13,1),%rbp
+	movq	%r15,(%rsp)
+	movq	%rbp,8(%rsp)
+
+
+	leaq	.LAES_Te+2048(%rip),%r14
+	leaq	768(%rsp),%rbp
+	subq	%r14,%rbp
+	andq	$768,%rbp
+	leaq	(%r14,%rbp,1),%r14
+
+	call	_x86_64_AES_encrypt_compact
+
+	movq	16(%rsp),%r9
+	movq	24(%rsp),%rsi
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	movq	(%rsi),%r15
+	movq	8(%rsi),%r14
+	movq	16(%rsi),%r13
+	movq	24(%rsi),%r12
+	movq	32(%rsi),%rbp
+	movq	40(%rsi),%rbx
+	leaq	48(%rsi),%rsp
+.Lenc_epilogue:
+	.byte	0xf3,0xc3
+.size	AES_encrypt,.-AES_encrypt
+.type	_x86_64_AES_decrypt,@function
+.align	16
+_x86_64_AES_decrypt:
+	xorl	0(%r15),%eax
+	xorl	4(%r15),%ebx
+	xorl	8(%r15),%ecx
+	xorl	12(%r15),%edx
+
+	movl	240(%r15),%r13d
+	subl	$1,%r13d
+	jmp	.Ldec_loop
+.align	16
+.Ldec_loop:
+
+	movzbl	%al,%esi
+	movzbl	%bl,%edi
+	movzbl	%cl,%ebp
+	movl	0(%r14,%rsi,8),%r10d
+	movl	0(%r14,%rdi,8),%r11d
+	movl	0(%r14,%rbp,8),%r12d
+
+	movzbl	%dh,%esi
+	movzbl	%ah,%edi
+	movzbl	%dl,%ebp
+	xorl	3(%r14,%rsi,8),%r10d
+	xorl	3(%r14,%rdi,8),%r11d
+	movl	0(%r14,%rbp,8),%r8d
+
+	movzbl	%bh,%esi
+	shrl	$16,%eax
+	movzbl	%ch,%ebp
+	xorl	3(%r14,%rsi,8),%r12d
+	shrl	$16,%edx
+	xorl	3(%r14,%rbp,8),%r8d
+
+	shrl	$16,%ebx
+	leaq	16(%r15),%r15
+	shrl	$16,%ecx
+
+	movzbl	%cl,%esi
+	movzbl	%dl,%edi
+	movzbl	%al,%ebp
+	xorl	2(%r14,%rsi,8),%r10d
+	xorl	2(%r14,%rdi,8),%r11d
+	xorl	2(%r14,%rbp,8),%r12d
+
+	movzbl	%bh,%esi
+	movzbl	%ch,%edi
+	movzbl	%bl,%ebp
+	xorl	1(%r14,%rsi,8),%r10d
+	xorl	1(%r14,%rdi,8),%r11d
+	xorl	2(%r14,%rbp,8),%r8d
+
+	movzbl	%dh,%esi
+	movl	12(%r15),%edx
+	movzbl	%ah,%ebp
+	xorl	1(%r14,%rsi,8),%r12d
+	movl	0(%r15),%eax
+	xorl	1(%r14,%rbp,8),%r8d
+
+	xorl	%r10d,%eax
+	movl	4(%r15),%ebx
+	movl	8(%r15),%ecx
+	xorl	%r12d,%ecx
+	xorl	%r11d,%ebx
+	xorl	%r8d,%edx
+	subl	$1,%r13d
+	jnz	.Ldec_loop
+	leaq	2048(%r14),%r14
+	movzbl	%al,%esi
+	movzbl	%bl,%edi
+	movzbl	%cl,%ebp
+	movzbl	(%r14,%rsi,1),%r10d
+	movzbl	(%r14,%rdi,1),%r11d
+	movzbl	(%r14,%rbp,1),%r12d
+
+	movzbl	%dl,%esi
+	movzbl	%dh,%edi
+	movzbl	%ah,%ebp
+	movzbl	(%r14,%rsi,1),%r8d
+	movzbl	(%r14,%rdi,1),%edi
+	movzbl	(%r14,%rbp,1),%ebp
+
+	shll	$8,%edi
+	shll	$8,%ebp
+
+	xorl	%edi,%r10d
+	xorl	%ebp,%r11d
+	shrl	$16,%edx
+
+	movzbl	%bh,%esi
+	movzbl	%ch,%edi
+	shrl	$16,%eax
+	movzbl	(%r14,%rsi,1),%esi
+	movzbl	(%r14,%rdi,1),%edi
+
+	shll	$8,%esi
+	shll	$8,%edi
+	shrl	$16,%ebx
+	xorl	%esi,%r12d
+	xorl	%edi,%r8d
+	shrl	$16,%ecx
+
+	movzbl	%cl,%esi
+	movzbl	%dl,%edi
+	movzbl	%al,%ebp
+	movzbl	(%r14,%rsi,1),%esi
+	movzbl	(%r14,%rdi,1),%edi
+	movzbl	(%r14,%rbp,1),%ebp
+
+	shll	$16,%esi
+	shll	$16,%edi
+	shll	$16,%ebp
+
+	xorl	%esi,%r10d
+	xorl	%edi,%r11d
+	xorl	%ebp,%r12d
+
+	movzbl	%bl,%esi
+	movzbl	%bh,%edi
+	movzbl	%ch,%ebp
+	movzbl	(%r14,%rsi,1),%esi
+	movzbl	(%r14,%rdi,1),%edi
+	movzbl	(%r14,%rbp,1),%ebp
+
+	shll	$16,%esi
+	shll	$24,%edi
+	shll	$24,%ebp
+
+	xorl	%esi,%r8d
+	xorl	%edi,%r10d
+	xorl	%ebp,%r11d
+
+	movzbl	%dh,%esi
+	movzbl	%ah,%edi
+	movl	16+12(%r15),%edx
+	movzbl	(%r14,%rsi,1),%esi
+	movzbl	(%r14,%rdi,1),%edi
+	movl	16+0(%r15),%eax
+
+	shll	$24,%esi
+	shll	$24,%edi
+
+	xorl	%esi,%r12d
+	xorl	%edi,%r8d
+
+	movl	16+4(%r15),%ebx
+	movl	16+8(%r15),%ecx
+	leaq	-2048(%r14),%r14
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	xorl	%r12d,%ecx
+	xorl	%r8d,%edx
+.byte	0xf3,0xc3		=09
+.size	_x86_64_AES_decrypt,.-_x86_64_AES_decrypt
+.type	_x86_64_AES_decrypt_compact,@function
+.align	16
+_x86_64_AES_decrypt_compact:
+	leaq	128(%r14),%r8
+	movl	0-128(%r8),%edi
+	movl	32-128(%r8),%ebp
+	movl	64-128(%r8),%r10d
+	movl	96-128(%r8),%r11d
+	movl	128-128(%r8),%edi
+	movl	160-128(%r8),%ebp
+	movl	192-128(%r8),%r10d
+	movl	224-128(%r8),%r11d
+	jmp	.Ldec_loop_compact
+
+.align	16
+.Ldec_loop_compact:
+	xorl	0(%r15),%eax
+	xorl	4(%r15),%ebx
+	xorl	8(%r15),%ecx
+	xorl	12(%r15),%edx
+	leaq	16(%r15),%r15
+	movzbl	%al,%r10d
+	movzbl	%bl,%r11d
+	movzbl	%cl,%r12d
+	movzbl	(%r14,%r10,1),%r10d
+	movzbl	(%r14,%r11,1),%r11d
+	movzbl	(%r14,%r12,1),%r12d
+
+	movzbl	%dl,%r8d
+	movzbl	%dh,%esi
+	movzbl	%ah,%edi
+	movzbl	(%r14,%r8,1),%r8d
+	movzbl	(%r14,%rsi,1),%r9d
+	movzbl	(%r14,%rdi,1),%r13d
+
+	movzbl	%bh,%ebp
+	movzbl	%ch,%esi
+	shrl	$16,%ecx
+	movzbl	(%r14,%rbp,1),%ebp
+	movzbl	(%r14,%rsi,1),%esi
+	shrl	$16,%edx
+
+	movzbl	%cl,%edi
+	shll	$8,%r9d
+	shll	$8,%r13d
+	movzbl	(%r14,%rdi,1),%edi
+	xorl	%r9d,%r10d
+	xorl	%r13d,%r11d
+
+	movzbl	%dl,%r9d
+	shrl	$16,%eax
+	shrl	$16,%ebx
+	movzbl	%al,%r13d
+	shll	$8,%ebp
+	shll	$8,%esi
+	movzbl	(%r14,%r9,1),%r9d
+	movzbl	(%r14,%r13,1),%r13d
+	xorl	%ebp,%r12d
+	xorl	%esi,%r8d
+
+	movzbl	%bl,%ebp
+	movzbl	%bh,%esi
+	shll	$16,%edi
+	movzbl	(%r14,%rbp,1),%ebp
+	movzbl	(%r14,%rsi,1),%esi
+	xorl	%edi,%r10d
+
+	movzbl	%ch,%edi
+	shll	$16,%r9d
+	shll	$16,%r13d
+	movzbl	(%r14,%rdi,1),%ebx
+	xorl	%r9d,%r11d
+	xorl	%r13d,%r12d
+
+	movzbl	%dh,%edi
+	shrl	$8,%eax
+	shll	$16,%ebp
+	movzbl	(%r14,%rdi,1),%ecx
+	movzbl	(%r14,%rax,1),%edx
+	xorl	%ebp,%r8d
+
+	shll	$24,%esi
+	shll	$24,%ebx
+	shll	$24,%ecx
+	xorl	%esi,%r10d
+	shll	$24,%edx
+	xorl	%r11d,%ebx
+	movl	%r10d,%eax
+	xorl	%r12d,%ecx
+	xorl	%r8d,%edx
+	cmpq	16(%rsp),%r15
+	je	.Ldec_compact_done
+
+	movq	256+0(%r14),%rsi
+	shlq	$32,%rbx
+	shlq	$32,%rdx
+	movq	256+8(%r14),%rdi
+	orq	%rbx,%rax
+	orq	%rdx,%rcx
+	movq	256+16(%r14),%rbp
+	movq	%rax,%rbx
+	movq	%rcx,%rdx
+	andq	%rsi,%rbx
+	andq	%rsi,%rdx
+	movq	%rbx,%r9
+	movq	%rdx,%r12
+	shrq	$7,%r9
+	leaq	(%rax,%rax,1),%r8
+	shrq	$7,%r12
+	leaq	(%rcx,%rcx,1),%r11
+	subq	%r9,%rbx
+	subq	%r12,%rdx
+	andq	%rdi,%r8
+	andq	%rdi,%r11
+	andq	%rbp,%rbx
+	andq	%rbp,%rdx
+	xorq	%r8,%rbx
+	xorq	%r11,%rdx
+	movq	%rbx,%r8
+	movq	%rdx,%r11
+
+	andq	%rsi,%rbx
+	andq	%rsi,%rdx
+	movq	%rbx,%r10
+	movq	%rdx,%r13
+	shrq	$7,%r10
+	leaq	(%r8,%r8,1),%r9
+	shrq	$7,%r13
+	leaq	(%r11,%r11,1),%r12
+	subq	%r10,%rbx
+	subq	%r13,%rdx
+	andq	%rdi,%r9
+	andq	%rdi,%r12
+	andq	%rbp,%rbx
+	andq	%rbp,%rdx
+	xorq	%r9,%rbx
+	xorq	%r12,%rdx
+	movq	%rbx,%r9
+	movq	%rdx,%r12
+
+	andq	%rsi,%rbx
+	andq	%rsi,%rdx
+	movq	%rbx,%r10
+	movq	%rdx,%r13
+	shrq	$7,%r10
+	xorq	%rax,%r8
+	shrq	$7,%r13
+	xorq	%rcx,%r11
+	subq	%r10,%rbx
+	subq	%r13,%rdx
+	leaq	(%r9,%r9,1),%r10
+	leaq	(%r12,%r12,1),%r13
+	xorq	%rax,%r9
+	xorq	%rcx,%r12
+	andq	%rdi,%r10
+	andq	%rdi,%r13
+	andq	%rbp,%rbx
+	andq	%rbp,%rdx
+	xorq	%rbx,%r10
+	xorq	%rdx,%r13
+
+	xorq	%r10,%rax
+	xorq	%r13,%rcx
+	xorq	%r10,%r8
+	xorq	%r13,%r11
+	movq	%rax,%rbx
+	movq	%rcx,%rdx
+	xorq	%r10,%r9
+	xorq	%r13,%r12
+	shrq	$32,%rbx
+	shrq	$32,%rdx
+	xorq	%r8,%r10
+	xorq	%r11,%r13
+	roll	$8,%eax
+	roll	$8,%ecx
+	xorq	%r9,%r10
+	xorq	%r12,%r13
+
+	roll	$8,%ebx
+	roll	$8,%edx
+	xorl	%r10d,%eax
+	xorl	%r13d,%ecx
+	shrq	$32,%r10
+	shrq	$32,%r13
+	xorl	%r10d,%ebx
+	xorl	%r13d,%edx
+
+	movq	%r8,%r10
+	movq	%r11,%r13
+	shrq	$32,%r10
+	shrq	$32,%r13
+	roll	$24,%r8d
+	roll	$24,%r11d
+	roll	$24,%r10d
+	roll	$24,%r13d
+	xorl	%r8d,%eax
+	xorl	%r11d,%ecx
+	movq	%r9,%r8
+	movq	%r12,%r11
+	xorl	%r10d,%ebx
+	xorl	%r13d,%edx
+
+	movq	0(%r14),%rsi
+	shrq	$32,%r8
+	shrq	$32,%r11
+	movq	64(%r14),%rdi
+	roll	$16,%r9d
+	roll	$16,%r12d
+	movq	128(%r14),%rbp
+	roll	$16,%r8d
+	roll	$16,%r11d
+	movq	192(%r14),%r10
+	xorl	%r9d,%eax
+	xorl	%r12d,%ecx
+	movq	256(%r14),%r13
+	xorl	%r8d,%ebx
+	xorl	%r11d,%edx
+	jmp	.Ldec_loop_compact
+.align	16
+.Ldec_compact_done:
+	xorl	0(%r15),%eax
+	xorl	4(%r15),%ebx
+	xorl	8(%r15),%ecx
+	xorl	12(%r15),%edx
+.byte	0xf3,0xc3		=09
+.size	_x86_64_AES_decrypt_compact,.-_x86_64_AES_decrypt_compact
+.globl	AES_decrypt
+.type	AES_decrypt,@function
+.align	16
+AES_decrypt:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+
+
+	movq	%rsp,%r10
+	leaq	-63(%rdx),%rcx
+	andq	$-64,%rsp
+	subq	%rsp,%rcx
+	negq	%rcx
+	andq	$960,%rcx
+	subq	%rcx,%rsp
+	subq	$32,%rsp
+
+	movq	%rsi,16(%rsp)
+	movq	%r10,24(%rsp)
+.Ldec_prologue:
+
+	movq	%rdx,%r15
+	movl	240(%r15),%r13d
+
+	movl	0(%rdi),%eax
+	movl	4(%rdi),%ebx
+	movl	8(%rdi),%ecx
+	movl	12(%rdi),%edx
+
+	shll	$4,%r13d
+	leaq	(%r15,%r13,1),%rbp
+	movq	%r15,(%rsp)
+	movq	%rbp,8(%rsp)
+
+
+	leaq	.LAES_Td+2048(%rip),%r14
+	leaq	768(%rsp),%rbp
+	subq	%r14,%rbp
+	andq	$768,%rbp
+	leaq	(%r14,%rbp,1),%r14
+	shrq	$3,%rbp
+	addq	%rbp,%r14
+
+	call	_x86_64_AES_decrypt_compact
+
+	movq	16(%rsp),%r9
+	movq	24(%rsp),%rsi
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	movq	(%rsi),%r15
+	movq	8(%rsi),%r14
+	movq	16(%rsi),%r13
+	movq	24(%rsi),%r12
+	movq	32(%rsi),%rbp
+	movq	40(%rsi),%rbx
+	leaq	48(%rsi),%rsp
+.Ldec_epilogue:
+	.byte	0xf3,0xc3
+.size	AES_decrypt,.-AES_decrypt
+.globl	AES_set_encrypt_key
+.type	AES_set_encrypt_key,@function
+.align	16
+AES_set_encrypt_key:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+	subq	$8,%rsp
+.Lenc_key_prologue:
+
+	call	_x86_64_AES_set_encrypt_key
+
+	movq	8(%rsp),%r15
+	movq	16(%rsp),%r14
+	movq	24(%rsp),%r13
+	movq	32(%rsp),%r12
+	movq	40(%rsp),%rbp
+	movq	48(%rsp),%rbx
+	addq	$56,%rsp
+.Lenc_key_epilogue:
+	.byte	0xf3,0xc3
+.size	AES_set_encrypt_key,.-AES_set_encrypt_key
+
+.type	_x86_64_AES_set_encrypt_key,@function
+.align	16
+_x86_64_AES_set_encrypt_key:
+	movl	%esi,%ecx
+	movq	%rdi,%rsi
+	movq	%rdx,%rdi
+
+	testq	$-1,%rsi
+	jz	.Lbadpointer
+	testq	$-1,%rdi
+	jz	.Lbadpointer
+
+	leaq	.LAES_Te(%rip),%rbp
+	leaq	2048+128(%rbp),%rbp
+
+
+	movl	0-128(%rbp),%eax
+	movl	32-128(%rbp),%ebx
+	movl	64-128(%rbp),%r8d
+	movl	96-128(%rbp),%edx
+	movl	128-128(%rbp),%eax
+	movl	160-128(%rbp),%ebx
+	movl	192-128(%rbp),%r8d
+	movl	224-128(%rbp),%edx
+
+	cmpl	$128,%ecx
+	je	.L10rounds
+	cmpl	$192,%ecx
+	je	.L12rounds
+	cmpl	$256,%ecx
+	je	.L14rounds
+	movq	$-2,%rax
+	jmp	.Lexit
+
+.L10rounds:
+	movq	0(%rsi),%rax
+	movq	8(%rsi),%rdx
+	movq	%rax,0(%rdi)
+	movq	%rdx,8(%rdi)
+
+	shrq	$32,%rdx
+	xorl	%ecx,%ecx
+	jmp	.L10shortcut
+.align	4
+.L10loop:
+	movl	0(%rdi),%eax
+	movl	12(%rdi),%edx
+.L10shortcut:
+	movzbl	%dl,%esi
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shrl	$16,%edx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$8,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+
+	xorl	1024-128(%rbp,%rcx,4),%eax
+	movl	%eax,16(%rdi)
+	xorl	4(%rdi),%eax
+	movl	%eax,20(%rdi)
+	xorl	8(%rdi),%eax
+	movl	%eax,24(%rdi)
+	xorl	12(%rdi),%eax
+	movl	%eax,28(%rdi)
+	addl	$1,%ecx
+	leaq	16(%rdi),%rdi
+	cmpl	$10,%ecx
+	jl	.L10loop
+
+	movl	$10,80(%rdi)
+	xorq	%rax,%rax
+	jmp	.Lexit
+
+.L12rounds:
+	movq	0(%rsi),%rax
+	movq	8(%rsi),%rbx
+	movq	16(%rsi),%rdx
+	movq	%rax,0(%rdi)
+	movq	%rbx,8(%rdi)
+	movq	%rdx,16(%rdi)
+
+	shrq	$32,%rdx
+	xorl	%ecx,%ecx
+	jmp	.L12shortcut
+.align	4
+.L12loop:
+	movl	0(%rdi),%eax
+	movl	20(%rdi),%edx
+.L12shortcut:
+	movzbl	%dl,%esi
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shrl	$16,%edx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$8,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+
+	xorl	1024-128(%rbp,%rcx,4),%eax
+	movl	%eax,24(%rdi)
+	xorl	4(%rdi),%eax
+	movl	%eax,28(%rdi)
+	xorl	8(%rdi),%eax
+	movl	%eax,32(%rdi)
+	xorl	12(%rdi),%eax
+	movl	%eax,36(%rdi)
+
+	cmpl	$7,%ecx
+	je	.L12break
+	addl	$1,%ecx
+
+	xorl	16(%rdi),%eax
+	movl	%eax,40(%rdi)
+	xorl	20(%rdi),%eax
+	movl	%eax,44(%rdi)
+
+	leaq	24(%rdi),%rdi
+	jmp	.L12loop
+.L12break:
+	movl	$12,72(%rdi)
+	xorq	%rax,%rax
+	jmp	.Lexit
+
+.L14rounds:
+	movq	0(%rsi),%rax
+	movq	8(%rsi),%rbx
+	movq	16(%rsi),%rcx
+	movq	24(%rsi),%rdx
+	movq	%rax,0(%rdi)
+	movq	%rbx,8(%rdi)
+	movq	%rcx,16(%rdi)
+	movq	%rdx,24(%rdi)
+
+	shrq	$32,%rdx
+	xorl	%ecx,%ecx
+	jmp	.L14shortcut
+.align	4
+.L14loop:
+	movl	0(%rdi),%eax
+	movl	28(%rdi),%edx
+.L14shortcut:
+	movzbl	%dl,%esi
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shrl	$16,%edx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$8,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+
+	xorl	1024-128(%rbp,%rcx,4),%eax
+	movl	%eax,32(%rdi)
+	xorl	4(%rdi),%eax
+	movl	%eax,36(%rdi)
+	xorl	8(%rdi),%eax
+	movl	%eax,40(%rdi)
+	xorl	12(%rdi),%eax
+	movl	%eax,44(%rdi)
+
+	cmpl	$6,%ecx
+	je	.L14break
+	addl	$1,%ecx
+
+	movl	%eax,%edx
+	movl	16(%rdi),%eax
+	movzbl	%dl,%esi
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shrl	$16,%edx
+	shll	$8,%ebx
+	movzbl	%dl,%esi
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	movzbl	%dh,%esi
+	shll	$16,%ebx
+	xorl	%ebx,%eax
+
+	movzbl	-128(%rbp,%rsi,1),%ebx
+	shll	$24,%ebx
+	xorl	%ebx,%eax
+
+	movl	%eax,48(%rdi)
+	xorl	20(%rdi),%eax
+	movl	%eax,52(%rdi)
+	xorl	24(%rdi),%eax
+	movl	%eax,56(%rdi)
+	xorl	28(%rdi),%eax
+	movl	%eax,60(%rdi)
+
+	leaq	32(%rdi),%rdi
+	jmp	.L14loop
+.L14break:
+	movl	$14,48(%rdi)
+	xorq	%rax,%rax
+	jmp	.Lexit
+
+.Lbadpointer:
+	movq	$-1,%rax
+.Lexit:
+.byte	0xf3,0xc3		=09
+.size	_x86_64_AES_set_encrypt_key,.-_x86_64_AES_set_encrypt_key
+.globl	AES_set_decrypt_key
+.type	AES_set_decrypt_key,@function
+.align	16
+AES_set_decrypt_key:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+	pushq	%rdx
+.Ldec_key_prologue:
+
+	call	_x86_64_AES_set_encrypt_key
+	movq	(%rsp),%r8
+	cmpl	$0,%eax
+	jne	.Labort
+
+	movl	240(%r8),%r14d
+	xorq	%rdi,%rdi
+	leaq	(%rdi,%r14,4),%rcx
+	movq	%r8,%rsi
+	leaq	(%r8,%rcx,4),%rdi
+.align	4
+.Linvert:
+	movq	0(%rsi),%rax
+	movq	8(%rsi),%rbx
+	movq	0(%rdi),%rcx
+	movq	8(%rdi),%rdx
+	movq	%rax,0(%rdi)
+	movq	%rbx,8(%rdi)
+	movq	%rcx,0(%rsi)
+	movq	%rdx,8(%rsi)
+	leaq	16(%rsi),%rsi
+	leaq	-16(%rdi),%rdi
+	cmpq	%rsi,%rdi
+	jne	.Linvert
+
+	leaq	.LAES_Te+2048+1024(%rip),%rax
+
+	movq	40(%rax),%rsi
+	movq	48(%rax),%rdi
+	movq	56(%rax),%rbp
+
+	movq	%r8,%r15
+	subl	$1,%r14d
+.align	4
+.Lpermute:
+	leaq	16(%r15),%r15
+	movq	0(%r15),%rax
+	movq	8(%r15),%rcx
+	movq	%rax,%rbx
+	movq	%rcx,%rdx
+	andq	%rsi,%rbx
+	andq	%rsi,%rdx
+	movq	%rbx,%r9
+	movq	%rdx,%r12
+	shrq	$7,%r9
+	leaq	(%rax,%rax,1),%r8
+	shrq	$7,%r12
+	leaq	(%rcx,%rcx,1),%r11
+	subq	%r9,%rbx
+	subq	%r12,%rdx
+	andq	%rdi,%r8
+	andq	%rdi,%r11
+	andq	%rbp,%rbx
+	andq	%rbp,%rdx
+	xorq	%r8,%rbx
+	xorq	%r11,%rdx
+	movq	%rbx,%r8
+	movq	%rdx,%r11
+
+	andq	%rsi,%rbx
+	andq	%rsi,%rdx
+	movq	%rbx,%r10
+	movq	%rdx,%r13
+	shrq	$7,%r10
+	leaq	(%r8,%r8,1),%r9
+	shrq	$7,%r13
+	leaq	(%r11,%r11,1),%r12
+	subq	%r10,%rbx
+	subq	%r13,%rdx
+	andq	%rdi,%r9
+	andq	%rdi,%r12
+	andq	%rbp,%rbx
+	andq	%rbp,%rdx
+	xorq	%r9,%rbx
+	xorq	%r12,%rdx
+	movq	%rbx,%r9
+	movq	%rdx,%r12
+
+	andq	%rsi,%rbx
+	andq	%rsi,%rdx
+	movq	%rbx,%r10
+	movq	%rdx,%r13
+	shrq	$7,%r10
+	xorq	%rax,%r8
+	shrq	$7,%r13
+	xorq	%rcx,%r11
+	subq	%r10,%rbx
+	subq	%r13,%rdx
+	leaq	(%r9,%r9,1),%r10
+	leaq	(%r12,%r12,1),%r13
+	xorq	%rax,%r9
+	xorq	%rcx,%r12
+	andq	%rdi,%r10
+	andq	%rdi,%r13
+	andq	%rbp,%rbx
+	andq	%rbp,%rdx
+	xorq	%rbx,%r10
+	xorq	%rdx,%r13
+
+	xorq	%r10,%rax
+	xorq	%r13,%rcx
+	xorq	%r10,%r8
+	xorq	%r13,%r11
+	movq	%rax,%rbx
+	movq	%rcx,%rdx
+	xorq	%r10,%r9
+	xorq	%r13,%r12
+	shrq	$32,%rbx
+	shrq	$32,%rdx
+	xorq	%r8,%r10
+	xorq	%r11,%r13
+	roll	$8,%eax
+	roll	$8,%ecx
+	xorq	%r9,%r10
+	xorq	%r12,%r13
+
+	roll	$8,%ebx
+	roll	$8,%edx
+	xorl	%r10d,%eax
+	xorl	%r13d,%ecx
+	shrq	$32,%r10
+	shrq	$32,%r13
+	xorl	%r10d,%ebx
+	xorl	%r13d,%edx
+
+	movq	%r8,%r10
+	movq	%r11,%r13
+	shrq	$32,%r10
+	shrq	$32,%r13
+	roll	$24,%r8d
+	roll	$24,%r11d
+	roll	$24,%r10d
+	roll	$24,%r13d
+	xorl	%r8d,%eax
+	xorl	%r11d,%ecx
+	movq	%r9,%r8
+	movq	%r12,%r11
+	xorl	%r10d,%ebx
+	xorl	%r13d,%edx
+
+
+	shrq	$32,%r8
+	shrq	$32,%r11
+
+	roll	$16,%r9d
+	roll	$16,%r12d
+
+	roll	$16,%r8d
+	roll	$16,%r11d
+
+	xorl	%r9d,%eax
+	xorl	%r12d,%ecx
+
+	xorl	%r8d,%ebx
+	xorl	%r11d,%edx
+	movl	%eax,0(%r15)
+	movl	%ebx,4(%r15)
+	movl	%ecx,8(%r15)
+	movl	%edx,12(%r15)
+	subl	$1,%r14d
+	jnz	.Lpermute
+
+	xorq	%rax,%rax
+.Labort:
+	movq	8(%rsp),%r15
+	movq	16(%rsp),%r14
+	movq	24(%rsp),%r13
+	movq	32(%rsp),%r12
+	movq	40(%rsp),%rbp
+	movq	48(%rsp),%rbx
+	addq	$56,%rsp
+.Ldec_key_epilogue:
+	.byte	0xf3,0xc3
+.size	AES_set_decrypt_key,.-AES_set_decrypt_key
+.globl	AES_cbc_encrypt
+.type	AES_cbc_encrypt,@function
+.align	16
+
+AES_cbc_encrypt:
+	cmpq	$0,%rdx
+	je	.Lcbc_epilogue
+	pushfq
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+.Lcbc_prologue:
+
+	cld
+	movl	%r9d,%r9d
+
+	leaq	.LAES_Te(%rip),%r14
+	cmpq	$0,%r9
+	jne	.Lcbc_picked_te
+	leaq	.LAES_Td(%rip),%r14
+.Lcbc_picked_te:
+
+	movl	OPENSSL_ia32cap_P(%rip),%r10d
+	cmpq	$512,%rdx
+	jb	.Lcbc_slow_prologue
+	testq	$15,%rdx
+	jnz	.Lcbc_slow_prologue
+	btl	$28,%r10d
+	jc	.Lcbc_slow_prologue
+
+
+	leaq	-88-248(%rsp),%r15
+	andq	$-64,%r15
+
+
+	movq	%r14,%r10
+	leaq	2304(%r14),%r11
+	movq	%r15,%r12
+	andq	$4095,%r10
+	andq	$4095,%r11
+	andq	$4095,%r12
+
+	cmpq	%r11,%r12
+	jb	.Lcbc_te_break_out
+	subq	%r11,%r12
+	subq	%r12,%r15
+	jmp	.Lcbc_te_ok
+.Lcbc_te_break_out:
+	subq	%r10,%r12
+	andq	$4095,%r12
+	addq	$320,%r12
+	subq	%r12,%r15
+.align	4
+.Lcbc_te_ok:
+
+	xchgq	%rsp,%r15
+
+	movq	%r15,16(%rsp)
+.Lcbc_fast_body:
+	movq	%rdi,24(%rsp)
+	movq	%rsi,32(%rsp)
+	movq	%rdx,40(%rsp)
+	movq	%rcx,48(%rsp)
+	movq	%r8,56(%rsp)
+	movl	$0,80+240(%rsp)
+	movq	%r8,%rbp
+	movq	%r9,%rbx
+	movq	%rsi,%r9
+	movq	%rdi,%r8
+	movq	%rcx,%r15
+
+	movl	240(%r15),%eax
+
+	movq	%r15,%r10
+	subq	%r14,%r10
+	andq	$4095,%r10
+	cmpq	$2304,%r10
+	jb	.Lcbc_do_ecopy
+	cmpq	$4096-248,%r10
+	jb	.Lcbc_skip_ecopy
+.align	4
+.Lcbc_do_ecopy:
+	movq	%r15,%rsi
+	leaq	80(%rsp),%rdi
+	leaq	80(%rsp),%r15
+	movl	$30,%ecx
+.long	0x90A548F3=09
+	movl	%eax,(%rdi)
+.Lcbc_skip_ecopy:
+	movq	%r15,0(%rsp)
+
+	movl	$18,%ecx
+.align	4
+.Lcbc_prefetch_te:
+	movq	0(%r14),%r10
+	movq	32(%r14),%r11
+	movq	64(%r14),%r12
+	movq	96(%r14),%r13
+	leaq	128(%r14),%r14
+	subl	$1,%ecx
+	jnz	.Lcbc_prefetch_te
+	leaq	-2304(%r14),%r14
+
+	cmpq	$0,%rbx
+	je	.LFAST_DECRYPT
+
+
+	movl	0(%rbp),%eax
+	movl	4(%rbp),%ebx
+	movl	8(%rbp),%ecx
+	movl	12(%rbp),%edx
+
+.align	4
+.Lcbc_fast_enc_loop:
+	xorl	0(%r8),%eax
+	xorl	4(%r8),%ebx
+	xorl	8(%r8),%ecx
+	xorl	12(%r8),%edx
+	movq	0(%rsp),%r15
+	movq	%r8,24(%rsp)
+
+	call	_x86_64_AES_encrypt
+
+	movq	24(%rsp),%r8
+	movq	40(%rsp),%r10
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	leaq	16(%r8),%r8
+	leaq	16(%r9),%r9
+	subq	$16,%r10
+	testq	$-16,%r10
+	movq	%r10,40(%rsp)
+	jnz	.Lcbc_fast_enc_loop
+	movq	56(%rsp),%rbp
+	movl	%eax,0(%rbp)
+	movl	%ebx,4(%rbp)
+	movl	%ecx,8(%rbp)
+	movl	%edx,12(%rbp)
+
+	jmp	.Lcbc_fast_cleanup
+
+
+.align	16
+.LFAST_DECRYPT:
+	cmpq	%r8,%r9
+	je	.Lcbc_fast_dec_in_place
+
+	movq	%rbp,64(%rsp)
+.align	4
+.Lcbc_fast_dec_loop:
+	movl	0(%r8),%eax
+	movl	4(%r8),%ebx
+	movl	8(%r8),%ecx
+	movl	12(%r8),%edx
+	movq	0(%rsp),%r15
+	movq	%r8,24(%rsp)
+
+	call	_x86_64_AES_decrypt
+
+	movq	64(%rsp),%rbp
+	movq	24(%rsp),%r8
+	movq	40(%rsp),%r10
+	xorl	0(%rbp),%eax
+	xorl	4(%rbp),%ebx
+	xorl	8(%rbp),%ecx
+	xorl	12(%rbp),%edx
+	movq	%r8,%rbp
+
+	subq	$16,%r10
+	movq	%r10,40(%rsp)
+	movq	%rbp,64(%rsp)
+
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	leaq	16(%r8),%r8
+	leaq	16(%r9),%r9
+	jnz	.Lcbc_fast_dec_loop
+	movq	56(%rsp),%r12
+	movq	0(%rbp),%r10
+	movq	8(%rbp),%r11
+	movq	%r10,0(%r12)
+	movq	%r11,8(%r12)
+	jmp	.Lcbc_fast_cleanup
+
+.align	16
+.Lcbc_fast_dec_in_place:
+	movq	0(%rbp),%r10
+	movq	8(%rbp),%r11
+	movq	%r10,0+64(%rsp)
+	movq	%r11,8+64(%rsp)
+.align	4
+.Lcbc_fast_dec_in_place_loop:
+	movl	0(%r8),%eax
+	movl	4(%r8),%ebx
+	movl	8(%r8),%ecx
+	movl	12(%r8),%edx
+	movq	0(%rsp),%r15
+	movq	%r8,24(%rsp)
+
+	call	_x86_64_AES_decrypt
+
+	movq	24(%rsp),%r8
+	movq	40(%rsp),%r10
+	xorl	0+64(%rsp),%eax
+	xorl	4+64(%rsp),%ebx
+	xorl	8+64(%rsp),%ecx
+	xorl	12+64(%rsp),%edx
+
+	movq	0(%r8),%r11
+	movq	8(%r8),%r12
+	subq	$16,%r10
+	jz	.Lcbc_fast_dec_in_place_done
+
+	movq	%r11,0+64(%rsp)
+	movq	%r12,8+64(%rsp)
+
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	leaq	16(%r8),%r8
+	leaq	16(%r9),%r9
+	movq	%r10,40(%rsp)
+	jmp	.Lcbc_fast_dec_in_place_loop
+.Lcbc_fast_dec_in_place_done:
+	movq	56(%rsp),%rdi
+	movq	%r11,0(%rdi)
+	movq	%r12,8(%rdi)
+
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+.align	4
+.Lcbc_fast_cleanup:
+	cmpl	$0,80+240(%rsp)
+	leaq	80(%rsp),%rdi
+	je	.Lcbc_exit
+	movl	$30,%ecx
+	xorq	%rax,%rax
+.long	0x90AB48F3=09
+
+	jmp	.Lcbc_exit
+
+
+.align	16
+.Lcbc_slow_prologue:
+
+	leaq	-88(%rsp),%rbp
+	andq	$-64,%rbp
+
+	leaq	-88-63(%rcx),%r10
+	subq	%rbp,%r10
+	negq	%r10
+	andq	$960,%r10
+	subq	%r10,%rbp
+
+	xchgq	%rsp,%rbp
+
+	movq	%rbp,16(%rsp)
+.Lcbc_slow_body:
+
+
+
+
+	movq	%r8,56(%rsp)
+	movq	%r8,%rbp
+	movq	%r9,%rbx
+	movq	%rsi,%r9
+	movq	%rdi,%r8
+	movq	%rcx,%r15
+	movq	%rdx,%r10
+
+	movl	240(%r15),%eax
+	movq	%r15,0(%rsp)
+	shll	$4,%eax
+	leaq	(%r15,%rax,1),%rax
+	movq	%rax,8(%rsp)
+
+
+	leaq	2048(%r14),%r14
+	leaq	768-8(%rsp),%rax
+	subq	%r14,%rax
+	andq	$768,%rax
+	leaq	(%r14,%rax,1),%r14
+
+	cmpq	$0,%rbx
+	je	.LSLOW_DECRYPT
+
+
+	testq	$-16,%r10
+	movl	0(%rbp),%eax
+	movl	4(%rbp),%ebx
+	movl	8(%rbp),%ecx
+	movl	12(%rbp),%edx
+	jz	.Lcbc_slow_enc_tail=09
+
+.align	4
+.Lcbc_slow_enc_loop:
+	xorl	0(%r8),%eax
+	xorl	4(%r8),%ebx
+	xorl	8(%r8),%ecx
+	xorl	12(%r8),%edx
+	movq	0(%rsp),%r15
+	movq	%r8,24(%rsp)
+	movq	%r9,32(%rsp)
+	movq	%r10,40(%rsp)
+
+	call	_x86_64_AES_encrypt_compact
+
+	movq	24(%rsp),%r8
+	movq	32(%rsp),%r9
+	movq	40(%rsp),%r10
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	leaq	16(%r8),%r8
+	leaq	16(%r9),%r9
+	subq	$16,%r10
+	testq	$-16,%r10
+	jnz	.Lcbc_slow_enc_loop
+	testq	$15,%r10
+	jnz	.Lcbc_slow_enc_tail
+	movq	56(%rsp),%rbp
+	movl	%eax,0(%rbp)
+	movl	%ebx,4(%rbp)
+	movl	%ecx,8(%rbp)
+	movl	%edx,12(%rbp)
+
+	jmp	.Lcbc_exit
+
+.align	4
+.Lcbc_slow_enc_tail:
+	movq	%rax,%r11
+	movq	%rcx,%r12
+	movq	%r10,%rcx
+	movq	%r8,%rsi
+	movq	%r9,%rdi
+.long	0x9066A4F3	=09
+	movq	$16,%rcx
+	subq	%r10,%rcx
+	xorq	%rax,%rax
+.long	0x9066AAF3	=09
+	movq	%r9,%r8
+	movq	$16,%r10
+	movq	%r11,%rax
+	movq	%r12,%rcx
+	jmp	.Lcbc_slow_enc_loop=09
+
+.align	16
+.LSLOW_DECRYPT:
+	shrq	$3,%rax
+	addq	%rax,%r14
+
+	movq	0(%rbp),%r11
+	movq	8(%rbp),%r12
+	movq	%r11,0+64(%rsp)
+	movq	%r12,8+64(%rsp)
+
+.align	4
+.Lcbc_slow_dec_loop:
+	movl	0(%r8),%eax
+	movl	4(%r8),%ebx
+	movl	8(%r8),%ecx
+	movl	12(%r8),%edx
+	movq	0(%rsp),%r15
+	movq	%r8,24(%rsp)
+	movq	%r9,32(%rsp)
+	movq	%r10,40(%rsp)
+
+	call	_x86_64_AES_decrypt_compact
+
+	movq	24(%rsp),%r8
+	movq	32(%rsp),%r9
+	movq	40(%rsp),%r10
+	xorl	0+64(%rsp),%eax
+	xorl	4+64(%rsp),%ebx
+	xorl	8+64(%rsp),%ecx
+	xorl	12+64(%rsp),%edx
+
+	movq	0(%r8),%r11
+	movq	8(%r8),%r12
+	subq	$16,%r10
+	jc	.Lcbc_slow_dec_partial
+	jz	.Lcbc_slow_dec_done
+
+	movq	%r11,0+64(%rsp)
+	movq	%r12,8+64(%rsp)
+
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	leaq	16(%r8),%r8
+	leaq	16(%r9),%r9
+	jmp	.Lcbc_slow_dec_loop
+.Lcbc_slow_dec_done:
+	movq	56(%rsp),%rdi
+	movq	%r11,0(%rdi)
+	movq	%r12,8(%rdi)
+
+	movl	%eax,0(%r9)
+	movl	%ebx,4(%r9)
+	movl	%ecx,8(%r9)
+	movl	%edx,12(%r9)
+
+	jmp	.Lcbc_exit
+
+.align	4
+.Lcbc_slow_dec_partial:
+	movq	56(%rsp),%rdi
+	movq	%r11,0(%rdi)
+	movq	%r12,8(%rdi)
+
+	movl	%eax,0+64(%rsp)
+	movl	%ebx,4+64(%rsp)
+	movl	%ecx,8+64(%rsp)
+	movl	%edx,12+64(%rsp)
+
+	movq	%r9,%rdi
+	leaq	64(%rsp),%rsi
+	leaq	16(%r10),%rcx
+.long	0x9066A4F3=09
+	jmp	.Lcbc_exit
+
+.align	16
+.Lcbc_exit:
+	movq	16(%rsp),%rsi
+	movq	(%rsi),%r15
+	movq	8(%rsi),%r14
+	movq	16(%rsi),%r13
+	movq	24(%rsi),%r12
+	movq	32(%rsi),%rbp
+	movq	40(%rsi),%rbx
+	leaq	48(%rsi),%rsp
+.Lcbc_popfq:
+	popfq
+.Lcbc_epilogue:
+	.byte	0xf3,0xc3
+.size	AES_cbc_encrypt,.-AES_cbc_encrypt
+.align	64
+.LAES_Te:
+.long	0xa56363c6,0xa56363c6
+.long	0x847c7cf8,0x847c7cf8
+.long	0x997777ee,0x997777ee
+.long	0x8d7b7bf6,0x8d7b7bf6
+.long	0x0df2f2ff,0x0df2f2ff
+.long	0xbd6b6bd6,0xbd6b6bd6
+.long	0xb16f6fde,0xb16f6fde
+.long	0x54c5c591,0x54c5c591
+.long	0x50303060,0x50303060
+.long	0x03010102,0x03010102
+.long	0xa96767ce,0xa96767ce
+.long	0x7d2b2b56,0x7d2b2b56
+.long	0x19fefee7,0x19fefee7
+.long	0x62d7d7b5,0x62d7d7b5
+.long	0xe6abab4d,0xe6abab4d
+.long	0x9a7676ec,0x9a7676ec
+.long	0x45caca8f,0x45caca8f
+.long	0x9d82821f,0x9d82821f
+.long	0x40c9c989,0x40c9c989
+.long	0x877d7dfa,0x877d7dfa
+.long	0x15fafaef,0x15fafaef
+.long	0xeb5959b2,0xeb5959b2
+.long	0xc947478e,0xc947478e
+.long	0x0bf0f0fb,0x0bf0f0fb
+.long	0xecadad41,0xecadad41
+.long	0x67d4d4b3,0x67d4d4b3
+.long	0xfda2a25f,0xfda2a25f
+.long	0xeaafaf45,0xeaafaf45
+.long	0xbf9c9c23,0xbf9c9c23
+.long	0xf7a4a453,0xf7a4a453
+.long	0x967272e4,0x967272e4
+.long	0x5bc0c09b,0x5bc0c09b
+.long	0xc2b7b775,0xc2b7b775
+.long	0x1cfdfde1,0x1cfdfde1
+.long	0xae93933d,0xae93933d
+.long	0x6a26264c,0x6a26264c
+.long	0x5a36366c,0x5a36366c
+.long	0x413f3f7e,0x413f3f7e
+.long	0x02f7f7f5,0x02f7f7f5
+.long	0x4fcccc83,0x4fcccc83
+.long	0x5c343468,0x5c343468
+.long	0xf4a5a551,0xf4a5a551
+.long	0x34e5e5d1,0x34e5e5d1
+.long	0x08f1f1f9,0x08f1f1f9
+.long	0x937171e2,0x937171e2
+.long	0x73d8d8ab,0x73d8d8ab
+.long	0x53313162,0x53313162
+.long	0x3f15152a,0x3f15152a
+.long	0x0c040408,0x0c040408
+.long	0x52c7c795,0x52c7c795
+.long	0x65232346,0x65232346
+.long	0x5ec3c39d,0x5ec3c39d
+.long	0x28181830,0x28181830
+.long	0xa1969637,0xa1969637
+.long	0x0f05050a,0x0f05050a
+.long	0xb59a9a2f,0xb59a9a2f
+.long	0x0907070e,0x0907070e
+.long	0x36121224,0x36121224
+.long	0x9b80801b,0x9b80801b
+.long	0x3de2e2df,0x3de2e2df
+.long	0x26ebebcd,0x26ebebcd
+.long	0x6927274e,0x6927274e
+.long	0xcdb2b27f,0xcdb2b27f
+.long	0x9f7575ea,0x9f7575ea
+.long	0x1b090912,0x1b090912
+.long	0x9e83831d,0x9e83831d
+.long	0x742c2c58,0x742c2c58
+.long	0x2e1a1a34,0x2e1a1a34
+.long	0x2d1b1b36,0x2d1b1b36
+.long	0xb26e6edc,0xb26e6edc
+.long	0xee5a5ab4,0xee5a5ab4
+.long	0xfba0a05b,0xfba0a05b
+.long	0xf65252a4,0xf65252a4
+.long	0x4d3b3b76,0x4d3b3b76
+.long	0x61d6d6b7,0x61d6d6b7
+.long	0xceb3b37d,0xceb3b37d
+.long	0x7b292952,0x7b292952
+.long	0x3ee3e3dd,0x3ee3e3dd
+.long	0x712f2f5e,0x712f2f5e
+.long	0x97848413,0x97848413
+.long	0xf55353a6,0xf55353a6
+.long	0x68d1d1b9,0x68d1d1b9
+.long	0x00000000,0x00000000
+.long	0x2cededc1,0x2cededc1
+.long	0x60202040,0x60202040
+.long	0x1ffcfce3,0x1ffcfce3
+.long	0xc8b1b179,0xc8b1b179
+.long	0xed5b5bb6,0xed5b5bb6
+.long	0xbe6a6ad4,0xbe6a6ad4
+.long	0x46cbcb8d,0x46cbcb8d
+.long	0xd9bebe67,0xd9bebe67
+.long	0x4b393972,0x4b393972
+.long	0xde4a4a94,0xde4a4a94
+.long	0xd44c4c98,0xd44c4c98
+.long	0xe85858b0,0xe85858b0
+.long	0x4acfcf85,0x4acfcf85
+.long	0x6bd0d0bb,0x6bd0d0bb
+.long	0x2aefefc5,0x2aefefc5
+.long	0xe5aaaa4f,0xe5aaaa4f
+.long	0x16fbfbed,0x16fbfbed
+.long	0xc5434386,0xc5434386
+.long	0xd74d4d9a,0xd74d4d9a
+.long	0x55333366,0x55333366
+.long	0x94858511,0x94858511
+.long	0xcf45458a,0xcf45458a
+.long	0x10f9f9e9,0x10f9f9e9
+.long	0x06020204,0x06020204
+.long	0x817f7ffe,0x817f7ffe
+.long	0xf05050a0,0xf05050a0
+.long	0x443c3c78,0x443c3c78
+.long	0xba9f9f25,0xba9f9f25
+.long	0xe3a8a84b,0xe3a8a84b
+.long	0xf35151a2,0xf35151a2
+.long	0xfea3a35d,0xfea3a35d
+.long	0xc0404080,0xc0404080
+.long	0x8a8f8f05,0x8a8f8f05
+.long	0xad92923f,0xad92923f
+.long	0xbc9d9d21,0xbc9d9d21
+.long	0x48383870,0x48383870
+.long	0x04f5f5f1,0x04f5f5f1
+.long	0xdfbcbc63,0xdfbcbc63
+.long	0xc1b6b677,0xc1b6b677
+.long	0x75dadaaf,0x75dadaaf
+.long	0x63212142,0x63212142
+.long	0x30101020,0x30101020
+.long	0x1affffe5,0x1affffe5
+.long	0x0ef3f3fd,0x0ef3f3fd
+.long	0x6dd2d2bf,0x6dd2d2bf
+.long	0x4ccdcd81,0x4ccdcd81
+.long	0x140c0c18,0x140c0c18
+.long	0x35131326,0x35131326
+.long	0x2fececc3,0x2fececc3
+.long	0xe15f5fbe,0xe15f5fbe
+.long	0xa2979735,0xa2979735
+.long	0xcc444488,0xcc444488
+.long	0x3917172e,0x3917172e
+.long	0x57c4c493,0x57c4c493
+.long	0xf2a7a755,0xf2a7a755
+.long	0x827e7efc,0x827e7efc
+.long	0x473d3d7a,0x473d3d7a
+.long	0xac6464c8,0xac6464c8
+.long	0xe75d5dba,0xe75d5dba
+.long	0x2b191932,0x2b191932
+.long	0x957373e6,0x957373e6
+.long	0xa06060c0,0xa06060c0
+.long	0x98818119,0x98818119
+.long	0xd14f4f9e,0xd14f4f9e
+.long	0x7fdcdca3,0x7fdcdca3
+.long	0x66222244,0x66222244
+.long	0x7e2a2a54,0x7e2a2a54
+.long	0xab90903b,0xab90903b
+.long	0x8388880b,0x8388880b
+.long	0xca46468c,0xca46468c
+.long	0x29eeeec7,0x29eeeec7
+.long	0xd3b8b86b,0xd3b8b86b
+.long	0x3c141428,0x3c141428
+.long	0x79dedea7,0x79dedea7
+.long	0xe25e5ebc,0xe25e5ebc
+.long	0x1d0b0b16,0x1d0b0b16
+.long	0x76dbdbad,0x76dbdbad
+.long	0x3be0e0db,0x3be0e0db
+.long	0x56323264,0x56323264
+.long	0x4e3a3a74,0x4e3a3a74
+.long	0x1e0a0a14,0x1e0a0a14
+.long	0xdb494992,0xdb494992
+.long	0x0a06060c,0x0a06060c
+.long	0x6c242448,0x6c242448
+.long	0xe45c5cb8,0xe45c5cb8
+.long	0x5dc2c29f,0x5dc2c29f
+.long	0x6ed3d3bd,0x6ed3d3bd
+.long	0xefacac43,0xefacac43
+.long	0xa66262c4,0xa66262c4
+.long	0xa8919139,0xa8919139
+.long	0xa4959531,0xa4959531
+.long	0x37e4e4d3,0x37e4e4d3
+.long	0x8b7979f2,0x8b7979f2
+.long	0x32e7e7d5,0x32e7e7d5
+.long	0x43c8c88b,0x43c8c88b
+.long	0x5937376e,0x5937376e
+.long	0xb76d6dda,0xb76d6dda
+.long	0x8c8d8d01,0x8c8d8d01
+.long	0x64d5d5b1,0x64d5d5b1
+.long	0xd24e4e9c,0xd24e4e9c
+.long	0xe0a9a949,0xe0a9a949
+.long	0xb46c6cd8,0xb46c6cd8
+.long	0xfa5656ac,0xfa5656ac
+.long	0x07f4f4f3,0x07f4f4f3
+.long	0x25eaeacf,0x25eaeacf
+.long	0xaf6565ca,0xaf6565ca
+.long	0x8e7a7af4,0x8e7a7af4
+.long	0xe9aeae47,0xe9aeae47
+.long	0x18080810,0x18080810
+.long	0xd5baba6f,0xd5baba6f
+.long	0x887878f0,0x887878f0
+.long	0x6f25254a,0x6f25254a
+.long	0x722e2e5c,0x722e2e5c
+.long	0x241c1c38,0x241c1c38
+.long	0xf1a6a657,0xf1a6a657
+.long	0xc7b4b473,0xc7b4b473
+.long	0x51c6c697,0x51c6c697
+.long	0x23e8e8cb,0x23e8e8cb
+.long	0x7cdddda1,0x7cdddda1
+.long	0x9c7474e8,0x9c7474e8
+.long	0x211f1f3e,0x211f1f3e
+.long	0xdd4b4b96,0xdd4b4b96
+.long	0xdcbdbd61,0xdcbdbd61
+.long	0x868b8b0d,0x868b8b0d
+.long	0x858a8a0f,0x858a8a0f
+.long	0x907070e0,0x907070e0
+.long	0x423e3e7c,0x423e3e7c
+.long	0xc4b5b571,0xc4b5b571
+.long	0xaa6666cc,0xaa6666cc
+.long	0xd8484890,0xd8484890
+.long	0x05030306,0x05030306
+.long	0x01f6f6f7,0x01f6f6f7
+.long	0x120e0e1c,0x120e0e1c
+.long	0xa36161c2,0xa36161c2
+.long	0x5f35356a,0x5f35356a
+.long	0xf95757ae,0xf95757ae
+.long	0xd0b9b969,0xd0b9b969
+.long	0x91868617,0x91868617
+.long	0x58c1c199,0x58c1c199
+.long	0x271d1d3a,0x271d1d3a
+.long	0xb99e9e27,0xb99e9e27
+.long	0x38e1e1d9,0x38e1e1d9
+.long	0x13f8f8eb,0x13f8f8eb
+.long	0xb398982b,0xb398982b
+.long	0x33111122,0x33111122
+.long	0xbb6969d2,0xbb6969d2
+.long	0x70d9d9a9,0x70d9d9a9
+.long	0x898e8e07,0x898e8e07
+.long	0xa7949433,0xa7949433
+.long	0xb69b9b2d,0xb69b9b2d
+.long	0x221e1e3c,0x221e1e3c
+.long	0x92878715,0x92878715
+.long	0x20e9e9c9,0x20e9e9c9
+.long	0x49cece87,0x49cece87
+.long	0xff5555aa,0xff5555aa
+.long	0x78282850,0x78282850
+.long	0x7adfdfa5,0x7adfdfa5
+.long	0x8f8c8c03,0x8f8c8c03
+.long	0xf8a1a159,0xf8a1a159
+.long	0x80898909,0x80898909
+.long	0x170d0d1a,0x170d0d1a
+.long	0xdabfbf65,0xdabfbf65
+.long	0x31e6e6d7,0x31e6e6d7
+.long	0xc6424284,0xc6424284
+.long	0xb86868d0,0xb86868d0
+.long	0xc3414182,0xc3414182
+.long	0xb0999929,0xb0999929
+.long	0x772d2d5a,0x772d2d5a
+.long	0x110f0f1e,0x110f0f1e
+.long	0xcbb0b07b,0xcbb0b07b
+.long	0xfc5454a8,0xfc5454a8
+.long	0xd6bbbb6d,0xd6bbbb6d
+.long	0x3a16162c,0x3a16162c
+.byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
+.byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
+.byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
+.byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
+.byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
+.byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
+.byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
+.byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
+.byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
+.byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
+.byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
+.byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
+.byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
+.byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
+.byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
+.byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
+.byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
+.byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
+.byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
+.byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
+.byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
+.byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
+.byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
+.byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
+.byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
+.byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
+.byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
+.byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
+.byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
+.byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
+.byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
+.byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
+.byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
+.byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
+.byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
+.byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
+.byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
+.byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
+.byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
+.byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
+.byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
+.byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
+.byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
+.byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
+.byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
+.byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
+.byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
+.byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
+.byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
+.byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
+.byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
+.byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
+.byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
+.byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
+.byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
+.byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
+.byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
+.byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
+.byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
+.byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
+.byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
+.byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
+.byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
+.byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
+.byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
+.byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
+.byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
+.byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
+.byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
+.byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
+.byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
+.byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
+.byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
+.byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
+.byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
+.byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
+.byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
+.byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
+.byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
+.byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
+.byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
+.byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
+.byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
+.byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
+.byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
+.byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
+.byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
+.byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
+.byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
+.byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
+.byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
+.byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
+.byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
+.byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
+.byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
+.byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
+.byte	0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5
+.byte	0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76
+.byte	0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0
+.byte	0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0
+.byte	0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc
+.byte	0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15
+.byte	0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a
+.byte	0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75
+.byte	0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0
+.byte	0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84
+.byte	0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b
+.byte	0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf
+.byte	0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85
+.byte	0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8
+.byte	0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5
+.byte	0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2
+.byte	0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17
+.byte	0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73
+.byte	0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88
+.byte	0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb
+.byte	0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c
+.byte	0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79
+.byte	0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9
+.byte	0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08
+.byte	0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6
+.byte	0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a
+.byte	0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e
+.byte	0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e
+.byte	0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94
+.byte	0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf
+.byte	0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68
+.byte	0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16
+.long	0x00000001, 0x00000002, 0x00000004, 0x00000008
+.long	0x00000010, 0x00000020, 0x00000040, 0x00000080
+.long	0x0000001b, 0x00000036, 0x80808080, 0x80808080
+.long	0xfefefefe, 0xfefefefe, 0x1b1b1b1b, 0x1b1b1b1b
+.align	64
+.LAES_Td:
+.long	0x50a7f451,0x50a7f451
+.long	0x5365417e,0x5365417e
+.long	0xc3a4171a,0xc3a4171a
+.long	0x965e273a,0x965e273a
+.long	0xcb6bab3b,0xcb6bab3b
+.long	0xf1459d1f,0xf1459d1f
+.long	0xab58faac,0xab58faac
+.long	0x9303e34b,0x9303e34b
+.long	0x55fa3020,0x55fa3020
+.long	0xf66d76ad,0xf66d76ad
+.long	0x9176cc88,0x9176cc88
+.long	0x254c02f5,0x254c02f5
+.long	0xfcd7e54f,0xfcd7e54f
+.long	0xd7cb2ac5,0xd7cb2ac5
+.long	0x80443526,0x80443526
+.long	0x8fa362b5,0x8fa362b5
+.long	0x495ab1de,0x495ab1de
+.long	0x671bba25,0x671bba25
+.long	0x980eea45,0x980eea45
+.long	0xe1c0fe5d,0xe1c0fe5d
+.long	0x02752fc3,0x02752fc3
+.long	0x12f04c81,0x12f04c81
+.long	0xa397468d,0xa397468d
+.long	0xc6f9d36b,0xc6f9d36b
+.long	0xe75f8f03,0xe75f8f03
+.long	0x959c9215,0x959c9215
+.long	0xeb7a6dbf,0xeb7a6dbf
+.long	0xda595295,0xda595295
+.long	0x2d83bed4,0x2d83bed4
+.long	0xd3217458,0xd3217458
+.long	0x2969e049,0x2969e049
+.long	0x44c8c98e,0x44c8c98e
+.long	0x6a89c275,0x6a89c275
+.long	0x78798ef4,0x78798ef4
+.long	0x6b3e5899,0x6b3e5899
+.long	0xdd71b927,0xdd71b927
+.long	0xb64fe1be,0xb64fe1be
+.long	0x17ad88f0,0x17ad88f0
+.long	0x66ac20c9,0x66ac20c9
+.long	0xb43ace7d,0xb43ace7d
+.long	0x184adf63,0x184adf63
+.long	0x82311ae5,0x82311ae5
+.long	0x60335197,0x60335197
+.long	0x457f5362,0x457f5362
+.long	0xe07764b1,0xe07764b1
+.long	0x84ae6bbb,0x84ae6bbb
+.long	0x1ca081fe,0x1ca081fe
+.long	0x942b08f9,0x942b08f9
+.long	0x58684870,0x58684870
+.long	0x19fd458f,0x19fd458f
+.long	0x876cde94,0x876cde94
+.long	0xb7f87b52,0xb7f87b52
+.long	0x23d373ab,0x23d373ab
+.long	0xe2024b72,0xe2024b72
+.long	0x578f1fe3,0x578f1fe3
+.long	0x2aab5566,0x2aab5566
+.long	0x0728ebb2,0x0728ebb2
+.long	0x03c2b52f,0x03c2b52f
+.long	0x9a7bc586,0x9a7bc586
+.long	0xa50837d3,0xa50837d3
+.long	0xf2872830,0xf2872830
+.long	0xb2a5bf23,0xb2a5bf23
+.long	0xba6a0302,0xba6a0302
+.long	0x5c8216ed,0x5c8216ed
+.long	0x2b1ccf8a,0x2b1ccf8a
+.long	0x92b479a7,0x92b479a7
+.long	0xf0f207f3,0xf0f207f3
+.long	0xa1e2694e,0xa1e2694e
+.long	0xcdf4da65,0xcdf4da65
+.long	0xd5be0506,0xd5be0506
+.long	0x1f6234d1,0x1f6234d1
+.long	0x8afea6c4,0x8afea6c4
+.long	0x9d532e34,0x9d532e34
+.long	0xa055f3a2,0xa055f3a2
+.long	0x32e18a05,0x32e18a05
+.long	0x75ebf6a4,0x75ebf6a4
+.long	0x39ec830b,0x39ec830b
+.long	0xaaef6040,0xaaef6040
+.long	0x069f715e,0x069f715e
+.long	0x51106ebd,0x51106ebd
+.long	0xf98a213e,0xf98a213e
+.long	0x3d06dd96,0x3d06dd96
+.long	0xae053edd,0xae053edd
+.long	0x46bde64d,0x46bde64d
+.long	0xb58d5491,0xb58d5491
+.long	0x055dc471,0x055dc471
+.long	0x6fd40604,0x6fd40604
+.long	0xff155060,0xff155060
+.long	0x24fb9819,0x24fb9819
+.long	0x97e9bdd6,0x97e9bdd6
+.long	0xcc434089,0xcc434089
+.long	0x779ed967,0x779ed967
+.long	0xbd42e8b0,0xbd42e8b0
+.long	0x888b8907,0x888b8907
+.long	0x385b19e7,0x385b19e7
+.long	0xdbeec879,0xdbeec879
+.long	0x470a7ca1,0x470a7ca1
+.long	0xe90f427c,0xe90f427c
+.long	0xc91e84f8,0xc91e84f8
+.long	0x00000000,0x00000000
+.long	0x83868009,0x83868009
+.long	0x48ed2b32,0x48ed2b32
+.long	0xac70111e,0xac70111e
+.long	0x4e725a6c,0x4e725a6c
+.long	0xfbff0efd,0xfbff0efd
+.long	0x5638850f,0x5638850f
+.long	0x1ed5ae3d,0x1ed5ae3d
+.long	0x27392d36,0x27392d36
+.long	0x64d90f0a,0x64d90f0a
+.long	0x21a65c68,0x21a65c68
+.long	0xd1545b9b,0xd1545b9b
+.long	0x3a2e3624,0x3a2e3624
+.long	0xb1670a0c,0xb1670a0c
+.long	0x0fe75793,0x0fe75793
+.long	0xd296eeb4,0xd296eeb4
+.long	0x9e919b1b,0x9e919b1b
+.long	0x4fc5c080,0x4fc5c080
+.long	0xa220dc61,0xa220dc61
+.long	0x694b775a,0x694b775a
+.long	0x161a121c,0x161a121c
+.long	0x0aba93e2,0x0aba93e2
+.long	0xe52aa0c0,0xe52aa0c0
+.long	0x43e0223c,0x43e0223c
+.long	0x1d171b12,0x1d171b12
+.long	0x0b0d090e,0x0b0d090e
+.long	0xadc78bf2,0xadc78bf2
+.long	0xb9a8b62d,0xb9a8b62d
+.long	0xc8a91e14,0xc8a91e14
+.long	0x8519f157,0x8519f157
+.long	0x4c0775af,0x4c0775af
+.long	0xbbdd99ee,0xbbdd99ee
+.long	0xfd607fa3,0xfd607fa3
+.long	0x9f2601f7,0x9f2601f7
+.long	0xbcf5725c,0xbcf5725c
+.long	0xc53b6644,0xc53b6644
+.long	0x347efb5b,0x347efb5b
+.long	0x7629438b,0x7629438b
+.long	0xdcc623cb,0xdcc623cb
+.long	0x68fcedb6,0x68fcedb6
+.long	0x63f1e4b8,0x63f1e4b8
+.long	0xcadc31d7,0xcadc31d7
+.long	0x10856342,0x10856342
+.long	0x40229713,0x40229713
+.long	0x2011c684,0x2011c684
+.long	0x7d244a85,0x7d244a85
+.long	0xf83dbbd2,0xf83dbbd2
+.long	0x1132f9ae,0x1132f9ae
+.long	0x6da129c7,0x6da129c7
+.long	0x4b2f9e1d,0x4b2f9e1d
+.long	0xf330b2dc,0xf330b2dc
+.long	0xec52860d,0xec52860d
+.long	0xd0e3c177,0xd0e3c177
+.long	0x6c16b32b,0x6c16b32b
+.long	0x99b970a9,0x99b970a9
+.long	0xfa489411,0xfa489411
+.long	0x2264e947,0x2264e947
+.long	0xc48cfca8,0xc48cfca8
+.long	0x1a3ff0a0,0x1a3ff0a0
+.long	0xd82c7d56,0xd82c7d56
+.long	0xef903322,0xef903322
+.long	0xc74e4987,0xc74e4987
+.long	0xc1d138d9,0xc1d138d9
+.long	0xfea2ca8c,0xfea2ca8c
+.long	0x360bd498,0x360bd498
+.long	0xcf81f5a6,0xcf81f5a6
+.long	0x28de7aa5,0x28de7aa5
+.long	0x268eb7da,0x268eb7da
+.long	0xa4bfad3f,0xa4bfad3f
+.long	0xe49d3a2c,0xe49d3a2c
+.long	0x0d927850,0x0d927850
+.long	0x9bcc5f6a,0x9bcc5f6a
+.long	0x62467e54,0x62467e54
+.long	0xc2138df6,0xc2138df6
+.long	0xe8b8d890,0xe8b8d890
+.long	0x5ef7392e,0x5ef7392e
+.long	0xf5afc382,0xf5afc382
+.long	0xbe805d9f,0xbe805d9f
+.long	0x7c93d069,0x7c93d069
+.long	0xa92dd56f,0xa92dd56f
+.long	0xb31225cf,0xb31225cf
+.long	0x3b99acc8,0x3b99acc8
+.long	0xa77d1810,0xa77d1810
+.long	0x6e639ce8,0x6e639ce8
+.long	0x7bbb3bdb,0x7bbb3bdb
+.long	0x097826cd,0x097826cd
+.long	0xf418596e,0xf418596e
+.long	0x01b79aec,0x01b79aec
+.long	0xa89a4f83,0xa89a4f83
+.long	0x656e95e6,0x656e95e6
+.long	0x7ee6ffaa,0x7ee6ffaa
+.long	0x08cfbc21,0x08cfbc21
+.long	0xe6e815ef,0xe6e815ef
+.long	0xd99be7ba,0xd99be7ba
+.long	0xce366f4a,0xce366f4a
+.long	0xd4099fea,0xd4099fea
+.long	0xd67cb029,0xd67cb029
+.long	0xafb2a431,0xafb2a431
+.long	0x31233f2a,0x31233f2a
+.long	0x3094a5c6,0x3094a5c6
+.long	0xc066a235,0xc066a235
+.long	0x37bc4e74,0x37bc4e74
+.long	0xa6ca82fc,0xa6ca82fc
+.long	0xb0d090e0,0xb0d090e0
+.long	0x15d8a733,0x15d8a733
+.long	0x4a9804f1,0x4a9804f1
+.long	0xf7daec41,0xf7daec41
+.long	0x0e50cd7f,0x0e50cd7f
+.long	0x2ff69117,0x2ff69117
+.long	0x8dd64d76,0x8dd64d76
+.long	0x4db0ef43,0x4db0ef43
+.long	0x544daacc,0x544daacc
+.long	0xdf0496e4,0xdf0496e4
+.long	0xe3b5d19e,0xe3b5d19e
+.long	0x1b886a4c,0x1b886a4c
+.long	0xb81f2cc1,0xb81f2cc1
+.long	0x7f516546,0x7f516546
+.long	0x04ea5e9d,0x04ea5e9d
+.long	0x5d358c01,0x5d358c01
+.long	0x737487fa,0x737487fa
+.long	0x2e410bfb,0x2e410bfb
+.long	0x5a1d67b3,0x5a1d67b3
+.long	0x52d2db92,0x52d2db92
+.long	0x335610e9,0x335610e9
+.long	0x1347d66d,0x1347d66d
+.long	0x8c61d79a,0x8c61d79a
+.long	0x7a0ca137,0x7a0ca137
+.long	0x8e14f859,0x8e14f859
+.long	0x893c13eb,0x893c13eb
+.long	0xee27a9ce,0xee27a9ce
+.long	0x35c961b7,0x35c961b7
+.long	0xede51ce1,0xede51ce1
+.long	0x3cb1477a,0x3cb1477a
+.long	0x59dfd29c,0x59dfd29c
+.long	0x3f73f255,0x3f73f255
+.long	0x79ce1418,0x79ce1418
+.long	0xbf37c773,0xbf37c773
+.long	0xeacdf753,0xeacdf753
+.long	0x5baafd5f,0x5baafd5f
+.long	0x146f3ddf,0x146f3ddf
+.long	0x86db4478,0x86db4478
+.long	0x81f3afca,0x81f3afca
+.long	0x3ec468b9,0x3ec468b9
+.long	0x2c342438,0x2c342438
+.long	0x5f40a3c2,0x5f40a3c2
+.long	0x72c31d16,0x72c31d16
+.long	0x0c25e2bc,0x0c25e2bc
+.long	0x8b493c28,0x8b493c28
+.long	0x41950dff,0x41950dff
+.long	0x7101a839,0x7101a839
+.long	0xdeb30c08,0xdeb30c08
+.long	0x9ce4b4d8,0x9ce4b4d8
+.long	0x90c15664,0x90c15664
+.long	0x6184cb7b,0x6184cb7b
+.long	0x70b632d5,0x70b632d5
+.long	0x745c6c48,0x745c6c48
+.long	0x4257b8d0,0x4257b8d0
+.byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
+.byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
+.byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
+.byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
+.byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
+.byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
+.byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
+.byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
+.byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
+.byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
+.byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
+.byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
+.byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
+.byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
+.byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
+.byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
+.byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
+.byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
+.byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
+.byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
+.byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
+.byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
+.byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
+.byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
+.byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
+.byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
+.byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
+.byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
+.byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
+.byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
+.byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
+.byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
+.long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
+.long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
+.byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
+.byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
+.byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
+.byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
+.byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
+.byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
+.byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
+.byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
+.byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
+.byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
+.byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
+.byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
+.byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
+.byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
+.byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
+.byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
+.byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
+.byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
+.byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
+.byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
+.byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
+.byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
+.byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
+.byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
+.byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
+.byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
+.byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
+.byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
+.byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
+.byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
+.byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
+.byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
+.long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
+.long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
+.byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
+.byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
+.byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
+.byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
+.byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
+.byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
+.byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
+.byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
+.byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
+.byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
+.byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
+.byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
+.byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
+.byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
+.byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
+.byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
+.byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
+.byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
+.byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
+.byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
+.byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
+.byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
+.byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
+.byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
+.byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
+.byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
+.byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
+.byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
+.byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
+.byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
+.byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
+.byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
+.long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
+.long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
+.byte	0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38
+.byte	0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb
+.byte	0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87
+.byte	0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb
+.byte	0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d
+.byte	0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e
+.byte	0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2
+.byte	0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25
+.byte	0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16
+.byte	0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92
+.byte	0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda
+.byte	0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84
+.byte	0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a
+.byte	0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06
+.byte	0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02
+.byte	0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b
+.byte	0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea
+.byte	0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73
+.byte	0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85
+.byte	0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e
+.byte	0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89
+.byte	0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b
+.byte	0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20
+.byte	0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4
+.byte	0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31
+.byte	0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f
+.byte	0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d
+.byte	0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef
+.byte	0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0
+.byte	0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61
+.byte	0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26
+.byte	0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d
+.long	0x80808080, 0x80808080, 0xfefefefe, 0xfefefefe
+.long	0x1b1b1b1b, 0x1b1b1b1b, 0, 0
+.byte	65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,7=
9,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115=
,108,46,111,114,103,62,0
+.align	64
Index: secure/lib/libcrypto/amd64/rc4-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/rc4-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/rc4-amd64.s	(revision 0)
@@ -0,0 +1,421 @@
+.text=09
+
+.globl	RC4
+.type	RC4,@function
+.align	16
+RC4:	orq	%rsi,%rsi
+	jne	.Lentry
+	.byte	0xf3,0xc3
+.Lentry:
+	pushq	%rbx
+	pushq	%r12
+	pushq	%r13
+.Lprologue:
+
+	addq	$8,%rdi
+	movl	-8(%rdi),%r8d
+	movl	-4(%rdi),%r12d
+	cmpl	$-1,256(%rdi)
+	je	.LRC4_CHAR
+	incb	%r8b
+	movl	(%rdi,%r8,4),%r9d
+	testq	$-8,%rsi
+	jz	.Lloop1
+	jmp	.Lloop8
+.align	16
+.Lloop8:
+	addb	%r9b,%r12b
+	movq	%r8,%r10
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r10b
+	movl	(%rdi,%r10,4),%r11d
+	cmpq	%r10,%r12
+	movl	%r9d,(%rdi,%r12,4)
+	cmoveq	%r9,%r11
+	movl	%r13d,(%rdi,%r8,4)
+	addb	%r9b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r11b,%r12b
+	movq	%r10,%r8
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r8b
+	movl	(%rdi,%r8,4),%r9d
+	cmpq	%r8,%r12
+	movl	%r11d,(%rdi,%r12,4)
+	cmoveq	%r11,%r9
+	movl	%r13d,(%rdi,%r10,4)
+	addb	%r11b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r9b,%r12b
+	movq	%r8,%r10
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r10b
+	movl	(%rdi,%r10,4),%r11d
+	cmpq	%r10,%r12
+	movl	%r9d,(%rdi,%r12,4)
+	cmoveq	%r9,%r11
+	movl	%r13d,(%rdi,%r8,4)
+	addb	%r9b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r11b,%r12b
+	movq	%r10,%r8
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r8b
+	movl	(%rdi,%r8,4),%r9d
+	cmpq	%r8,%r12
+	movl	%r11d,(%rdi,%r12,4)
+	cmoveq	%r11,%r9
+	movl	%r13d,(%rdi,%r10,4)
+	addb	%r11b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r9b,%r12b
+	movq	%r8,%r10
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r10b
+	movl	(%rdi,%r10,4),%r11d
+	cmpq	%r10,%r12
+	movl	%r9d,(%rdi,%r12,4)
+	cmoveq	%r9,%r11
+	movl	%r13d,(%rdi,%r8,4)
+	addb	%r9b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r11b,%r12b
+	movq	%r10,%r8
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r8b
+	movl	(%rdi,%r8,4),%r9d
+	cmpq	%r8,%r12
+	movl	%r11d,(%rdi,%r12,4)
+	cmoveq	%r11,%r9
+	movl	%r13d,(%rdi,%r10,4)
+	addb	%r11b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r9b,%r12b
+	movq	%r8,%r10
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r10b
+	movl	(%rdi,%r10,4),%r11d
+	cmpq	%r10,%r12
+	movl	%r9d,(%rdi,%r12,4)
+	cmoveq	%r9,%r11
+	movl	%r13d,(%rdi,%r8,4)
+	addb	%r9b,%r13b
+	movb	(%rdi,%r13,4),%al
+	addb	%r11b,%r12b
+	movq	%r10,%r8
+	movl	(%rdi,%r12,4),%r13d
+	rorq	$8,%rax
+	incb	%r8b
+	movl	(%rdi,%r8,4),%r9d
+	cmpq	%r8,%r12
+	movl	%r11d,(%rdi,%r12,4)
+	cmoveq	%r11,%r9
+	movl	%r13d,(%rdi,%r10,4)
+	addb	%r11b,%r13b
+	movb	(%rdi,%r13,4),%al
+	rorq	$8,%rax
+	subq	$8,%rsi
+
+	xorq	(%rdx),%rax
+	addq	$8,%rdx
+	movq	%rax,(%rcx)
+	addq	$8,%rcx
+
+	testq	$-8,%rsi
+	jnz	.Lloop8
+	cmpq	$0,%rsi
+	jne	.Lloop1
+	jmp	.Lexit
+
+.align	16
+.Lloop1:
+	addb	%r9b,%r12b
+	movl	(%rdi,%r12,4),%r13d
+	movl	%r9d,(%rdi,%r12,4)
+	movl	%r13d,(%rdi,%r8,4)
+	addb	%r13b,%r9b
+	incb	%r8b
+	movl	(%rdi,%r9,4),%r13d
+	movl	(%rdi,%r8,4),%r9d
+	xorb	(%rdx),%r13b
+	incq	%rdx
+	movb	%r13b,(%rcx)
+	incq	%rcx
+	decq	%rsi
+	jnz	.Lloop1
+	jmp	.Lexit
+
+.align	16
+.LRC4_CHAR:
+	addb	$1,%r8b
+	movzbl	(%rdi,%r8,1),%r9d
+	testq	$-8,%rsi
+	jz	.Lcloop1
+	cmpl	$0,260(%rdi)
+	jnz	.Lcloop1
+	jmp	.Lcloop8
+.align	16
+.Lcloop8:
+	movl	(%rdx),%eax
+	movl	4(%rdx),%ebx
+	addb	%r9b,%r12b
+	leaq	1(%r8),%r10
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r10b,%r10d
+	movzbl	(%rdi,%r10,1),%r11d
+	movb	%r9b,(%rdi,%r12,1)
+	cmpq	%r10,%r12
+	movb	%r13b,(%rdi,%r8,1)
+	jne	.Lcmov0		=09
+	movq	%r9,%r11
+.Lcmov0:
+	addb	%r9b,%r13b
+	xorb	(%rdi,%r13,1),%al
+	rorl	$8,%eax
+	addb	%r11b,%r12b
+	leaq	1(%r10),%r8
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r8b,%r8d
+	movzbl	(%rdi,%r8,1),%r9d
+	movb	%r11b,(%rdi,%r12,1)
+	cmpq	%r8,%r12
+	movb	%r13b,(%rdi,%r10,1)
+	jne	.Lcmov1		=09
+	movq	%r11,%r9
+.Lcmov1:
+	addb	%r11b,%r13b
+	xorb	(%rdi,%r13,1),%al
+	rorl	$8,%eax
+	addb	%r9b,%r12b
+	leaq	1(%r8),%r10
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r10b,%r10d
+	movzbl	(%rdi,%r10,1),%r11d
+	movb	%r9b,(%rdi,%r12,1)
+	cmpq	%r10,%r12
+	movb	%r13b,(%rdi,%r8,1)
+	jne	.Lcmov2		=09
+	movq	%r9,%r11
+.Lcmov2:
+	addb	%r9b,%r13b
+	xorb	(%rdi,%r13,1),%al
+	rorl	$8,%eax
+	addb	%r11b,%r12b
+	leaq	1(%r10),%r8
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r8b,%r8d
+	movzbl	(%rdi,%r8,1),%r9d
+	movb	%r11b,(%rdi,%r12,1)
+	cmpq	%r8,%r12
+	movb	%r13b,(%rdi,%r10,1)
+	jne	.Lcmov3		=09
+	movq	%r11,%r9
+.Lcmov3:
+	addb	%r11b,%r13b
+	xorb	(%rdi,%r13,1),%al
+	rorl	$8,%eax
+	addb	%r9b,%r12b
+	leaq	1(%r8),%r10
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r10b,%r10d
+	movzbl	(%rdi,%r10,1),%r11d
+	movb	%r9b,(%rdi,%r12,1)
+	cmpq	%r10,%r12
+	movb	%r13b,(%rdi,%r8,1)
+	jne	.Lcmov4		=09
+	movq	%r9,%r11
+.Lcmov4:
+	addb	%r9b,%r13b
+	xorb	(%rdi,%r13,1),%bl
+	rorl	$8,%ebx
+	addb	%r11b,%r12b
+	leaq	1(%r10),%r8
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r8b,%r8d
+	movzbl	(%rdi,%r8,1),%r9d
+	movb	%r11b,(%rdi,%r12,1)
+	cmpq	%r8,%r12
+	movb	%r13b,(%rdi,%r10,1)
+	jne	.Lcmov5		=09
+	movq	%r11,%r9
+.Lcmov5:
+	addb	%r11b,%r13b
+	xorb	(%rdi,%r13,1),%bl
+	rorl	$8,%ebx
+	addb	%r9b,%r12b
+	leaq	1(%r8),%r10
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r10b,%r10d
+	movzbl	(%rdi,%r10,1),%r11d
+	movb	%r9b,(%rdi,%r12,1)
+	cmpq	%r10,%r12
+	movb	%r13b,(%rdi,%r8,1)
+	jne	.Lcmov6		=09
+	movq	%r9,%r11
+.Lcmov6:
+	addb	%r9b,%r13b
+	xorb	(%rdi,%r13,1),%bl
+	rorl	$8,%ebx
+	addb	%r11b,%r12b
+	leaq	1(%r10),%r8
+	movzbl	(%rdi,%r12,1),%r13d
+	movzbl	%r8b,%r8d
+	movzbl	(%rdi,%r8,1),%r9d
+	movb	%r11b,(%rdi,%r12,1)
+	cmpq	%r8,%r12
+	movb	%r13b,(%rdi,%r10,1)
+	jne	.Lcmov7		=09
+	movq	%r11,%r9
+.Lcmov7:
+	addb	%r11b,%r13b
+	xorb	(%rdi,%r13,1),%bl
+	rorl	$8,%ebx
+	leaq	-8(%rsi),%rsi
+	movl	%eax,(%rcx)
+	leaq	8(%rdx),%rdx
+	movl	%ebx,4(%rcx)
+	leaq	8(%rcx),%rcx
+
+	testq	$-8,%rsi
+	jnz	.Lcloop8
+	cmpq	$0,%rsi
+	jne	.Lcloop1
+	jmp	.Lexit
+.align	16
+.Lcloop1:
+	addb	%r9b,%r12b
+	movzbl	(%rdi,%r12,1),%r13d
+	movb	%r9b,(%rdi,%r12,1)
+	movb	%r13b,(%rdi,%r8,1)
+	addb	%r9b,%r13b
+	addb	$1,%r8b
+	movzbl	%r13b,%r13d
+	movzbl	%r8b,%r8d
+	movzbl	(%rdi,%r13,1),%r13d
+	movzbl	(%rdi,%r8,1),%r9d
+	xorb	(%rdx),%r13b
+	leaq	1(%rdx),%rdx
+	movb	%r13b,(%rcx)
+	leaq	1(%rcx),%rcx
+	subq	$1,%rsi
+	jnz	.Lcloop1
+	jmp	.Lexit
+
+.align	16
+.Lexit:
+	subb	$1,%r8b
+	movl	%r8d,-8(%rdi)
+	movl	%r12d,-4(%rdi)
+
+	movq	(%rsp),%r13
+	movq	8(%rsp),%r12
+	movq	16(%rsp),%rbx
+	addq	$24,%rsp
+.Lepilogue:
+	.byte	0xf3,0xc3
+.size	RC4,.-RC4
+
+.globl	RC4_set_key
+.type	RC4_set_key,@function
+.align	16
+RC4_set_key:
+	leaq	8(%rdi),%rdi
+	leaq	(%rdx,%rsi,1),%rdx
+	negq	%rsi
+	movq	%rsi,%rcx
+	xorl	%eax,%eax
+	xorq	%r9,%r9
+	xorq	%r10,%r10
+	xorq	%r11,%r11
+
+	movl	OPENSSL_ia32cap_P(%rip),%r8d
+	btl	$20,%r8d
+	jnc	.Lw1stloop
+	btl	$30,%r8d
+	setc	%r9b
+	movl	%r9d,260(%rdi)
+	jmp	.Lc1stloop
+
+.align	16
+.Lw1stloop:
+	movl	%eax,(%rdi,%rax,4)
+	addb	$1,%al
+	jnc	.Lw1stloop
+
+	xorq	%r9,%r9
+	xorq	%r8,%r8
+.align	16
+.Lw2ndloop:
+	movl	(%rdi,%r9,4),%r10d
+	addb	(%rdx,%rsi,1),%r8b
+	addb	%r10b,%r8b
+	addq	$1,%rsi
+	movl	(%rdi,%r8,4),%r11d
+	cmovzq	%rcx,%rsi
+	movl	%r10d,(%rdi,%r8,4)
+	movl	%r11d,(%rdi,%r9,4)
+	addb	$1,%r9b
+	jnc	.Lw2ndloop
+	jmp	.Lexit_key
+
+.align	16
+.Lc1stloop:
+	movb	%al,(%rdi,%rax,1)
+	addb	$1,%al
+	jnc	.Lc1stloop
+
+	xorq	%r9,%r9
+	xorq	%r8,%r8
+.align	16
+.Lc2ndloop:
+	movb	(%rdi,%r9,1),%r10b
+	addb	(%rdx,%rsi,1),%r8b
+	addb	%r10b,%r8b
+	addq	$1,%rsi
+	movb	(%rdi,%r8,1),%r11b
+	jnz	.Lcnowrap
+	movq	%rcx,%rsi
+.Lcnowrap:
+	movb	%r10b,(%rdi,%r8,1)
+	movb	%r11b,(%rdi,%r9,1)
+	addb	$1,%r9b
+	jnc	.Lc2ndloop
+	movl	$-1,256(%rdi)
+
+.align	16
+.Lexit_key:
+	xorl	%eax,%eax
+	movl	%eax,-8(%rdi)
+	movl	%eax,-4(%rdi)
+	.byte	0xf3,0xc3
+.size	RC4_set_key,.-RC4_set_key
+
+.globl	RC4_options
+.type	RC4_options,@function
+.align	16
+RC4_options:
+	leaq	.Lopts(%rip),%rax
+	movl	OPENSSL_ia32cap_P(%rip),%edx
+	btl	$20,%edx
+	jnc	.Ldone
+	addq	$12,%rax
+	btl	$30,%edx
+	jnc	.Ldone
+	addq	$13,%rax
+.Ldone:
+	.byte	0xf3,0xc3
+.align	64
+.Lopts:
+.byte	114,99,52,40,56,120,44,105,110,116,41,0
+.byte	114,99,52,40,56,120,44,99,104,97,114,41,0
+.byte	114,99,52,40,49,120,44,99,104,97,114,41,0
+.byte	82,67,52,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,7=
9,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115=
,108,46,111,114,103,62,0
+.align	64
+.size	RC4_options,.-RC4_options
Index: secure/lib/libcrypto/amd64/cmll_amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/cmll_amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/cmll_amd64.s	(revision 0)
@@ -0,0 +1,1674 @@
+.text=09
+
+
+.globl	Camellia_EncryptBlock
+.type	Camellia_EncryptBlock,@function
+.align	16
+Camellia_EncryptBlock:
+	movl	$128,%eax
+	subl	%edi,%eax
+	movl	$3,%edi
+	adcl	$0,%edi
+	jmp	.Lenc_rounds
+.size	Camellia_EncryptBlock,.-Camellia_EncryptBlock
+
+.globl	Camellia_EncryptBlock_Rounds
+.type	Camellia_EncryptBlock_Rounds,@function
+.align	16
+.Lenc_rounds:
+Camellia_EncryptBlock_Rounds:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+.Lenc_prologue:
+
+
+	movq	%rcx,%r13
+	movq	%rdx,%r14
+
+	shll	$6,%edi
+	leaq	.LCamellia_SBOX(%rip),%rbp
+	leaq	(%r14,%rdi,1),%r15
+
+	movl	0(%rsi),%r8d
+	movl	4(%rsi),%r9d
+	movl	8(%rsi),%r10d
+	bswapl	%r8d
+	movl	12(%rsi),%r11d
+	bswapl	%r9d
+	bswapl	%r10d
+	bswapl	%r11d
+
+	call	_x86_64_Camellia_encrypt
+
+	bswapl	%r8d
+	bswapl	%r9d
+	bswapl	%r10d
+	movl	%r8d,0(%r13)
+	bswapl	%r11d
+	movl	%r9d,4(%r13)
+	movl	%r10d,8(%r13)
+	movl	%r11d,12(%r13)
+
+	movq	0(%rsp),%r15
+	movq	8(%rsp),%r14
+	movq	16(%rsp),%r13
+	movq	24(%rsp),%rbp
+	movq	32(%rsp),%rbx
+	leaq	40(%rsp),%rsp
+.Lenc_epilogue:
+	.byte	0xf3,0xc3
+.size	Camellia_EncryptBlock_Rounds,.-Camellia_EncryptBlock_Rounds
+
+.type	_x86_64_Camellia_encrypt,@function
+.align	16
+_x86_64_Camellia_encrypt:
+	xorl	0(%r14),%r9d
+	xorl	4(%r14),%r8d
+	xorl	8(%r14),%r11d
+	xorl	12(%r14),%r10d
+.align	16
+.Leloop:
+	movl	16(%r14),%ebx
+	movl	20(%r14),%eax
+
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	24(%r14),%ebx
+	movl	28(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r10d
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	32(%r14),%ebx
+	movl	36(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	40(%r14),%ebx
+	movl	44(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r10d
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	48(%r14),%ebx
+	movl	52(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	56(%r14),%ebx
+	movl	60(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r10d
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	64(%r14),%ebx
+	movl	68(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	leaq	64(%r14),%r14
+	cmpq	%r15,%r14
+	movl	8(%r14),%edx
+	movl	12(%r14),%ecx
+	je	.Ledone
+
+	andl	%r8d,%eax
+	orl	%r11d,%edx
+	roll	$1,%eax
+	xorl	%edx,%r10d
+	xorl	%eax,%r9d
+	andl	%r10d,%ecx
+	orl	%r9d,%ebx
+	roll	$1,%ecx
+	xorl	%ebx,%r8d
+	xorl	%ecx,%r11d
+	jmp	.Leloop
+
+.align	16
+.Ledone:
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	xorl	%r8d,%ecx
+	xorl	%r9d,%edx
+
+	movl	%eax,%r8d
+	movl	%ebx,%r9d
+	movl	%ecx,%r10d
+	movl	%edx,%r11d
+
+.byte	0xf3,0xc3	=09
+.size	_x86_64_Camellia_encrypt,.-_x86_64_Camellia_encrypt
+
+
+.globl	Camellia_DecryptBlock
+.type	Camellia_DecryptBlock,@function
+.align	16
+Camellia_DecryptBlock:
+	movl	$128,%eax
+	subl	%edi,%eax
+	movl	$3,%edi
+	adcl	$0,%edi
+	jmp	.Ldec_rounds
+.size	Camellia_DecryptBlock,.-Camellia_DecryptBlock
+
+.globl	Camellia_DecryptBlock_Rounds
+.type	Camellia_DecryptBlock_Rounds,@function
+.align	16
+.Ldec_rounds:
+Camellia_DecryptBlock_Rounds:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+.Ldec_prologue:
+
+
+	movq	%rcx,%r13
+	movq	%rdx,%r15
+
+	shll	$6,%edi
+	leaq	.LCamellia_SBOX(%rip),%rbp
+	leaq	(%r15,%rdi,1),%r14
+
+	movl	0(%rsi),%r8d
+	movl	4(%rsi),%r9d
+	movl	8(%rsi),%r10d
+	bswapl	%r8d
+	movl	12(%rsi),%r11d
+	bswapl	%r9d
+	bswapl	%r10d
+	bswapl	%r11d
+
+	call	_x86_64_Camellia_decrypt
+
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	-56(%r14),%ebx
+	movl	-52(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	leaq	-64(%r14),%r14
+	cmpq	%r15,%r14
+	movl	0(%r14),%edx
+	movl	4(%r14),%ecx
+	je	.Lddone
+
+	andl	%r8d,%eax
+	orl	%r11d,%edx
+	roll	$1,%eax
+	xorl	%edx,%r10d
+	xorl	%eax,%r9d
+	andl	%r10d,%ecx
+	orl	%r9d,%ebx
+	roll	$1,%ecx
+	xorl	%ebx,%r8d
+	xorl	%ecx,%r11d
+
+	jmp	.Ldloop
+
+.align	16
+.Lddone:
+	xorl	%r10d,%ecx
+	xorl	%r11d,%edx
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+
+	movl	%ecx,%r8d
+	movl	%edx,%r9d
+	movl	%eax,%r10d
+	movl	%ebx,%r11d
+
+.byte	0xf3,0xc3	=09
+.size	_x86_64_Camellia_decrypt,.-_x86_64_Camellia_decrypt
+.globl	Camellia_Ekeygen
+.type	Camellia_Ekeygen,@function
+.align	16
+Camellia_Ekeygen:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+.Lkey_prologue:
+
+	movq	%rdi,%r15
+	movq	%rdx,%r13
+
+	movl	0(%rsi),%r8d
+	movl	4(%rsi),%r9d
+	movl	8(%rsi),%r10d
+	movl	12(%rsi),%r11d
+
+	bswapl	%r8d
+	bswapl	%r9d
+	bswapl	%r10d
+	bswapl	%r11d
+	movl	%r9d,0(%r13)
+	movl	%r8d,4(%r13)
+	movl	%r11d,8(%r13)
+	movl	%r10d,12(%r13)
+	cmpq	$128,%r15
+	je	.L1st128
+
+	movl	16(%rsi),%r8d
+	movl	20(%rsi),%r9d
+	cmpq	$192,%r15
+	je	.L1st192
+	movl	24(%rsi),%r10d
+	movl	28(%rsi),%r11d
+	jmp	.L1st256
+.L1st192:
+	movl	%r8d,%r10d
+	movl	%r9d,%r11d
+	notl	%r10d
+	notl	%r11d
+.L1st256:
+	bswapl	%r8d
+	bswapl	%r9d
+	bswapl	%r10d
+	bswapl	%r11d
+	movl	%r9d,32(%r13)
+	movl	%r8d,36(%r13)
+	movl	%r11d,40(%r13)
+	movl	%r10d,44(%r13)
+	xorl	0(%r13),%r9d
+	xorl	4(%r13),%r8d
+	xorl	8(%r13),%r11d
+	xorl	12(%r13),%r10d
+
+.L1st128:
+	leaq	.LCamellia_SIGMA(%rip),%r14
+	leaq	.LCamellia_SBOX(%rip),%rbp
+
+	movl	0(%r14),%ebx
+	movl	4(%r14),%eax
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	8(%r14),%ebx
+	movl	12(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r10d
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	16(%r14),%ebx
+	movl	20(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	xorl	0(%r13),%r9d
+	xorl	4(%r13),%r8d
+	xorl	8(%r13),%r11d
+	xorl	12(%r13),%r10d
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	24(%r14),%ebx
+	movl	28(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r10d
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	32(%r14),%ebx
+	movl	36(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	cmpq	$128,%r15
+	jne	.L2nd256
+
+	leaq	128(%r13),%r13
+	shlq	$32,%r8
+	shlq	$32,%r10
+	orq	%r9,%r8
+	orq	%r11,%r10
+	movq	-128(%r13),%rax
+	movq	-120(%r13),%rbx
+	movq	%r8,-112(%r13)
+	movq	%r10,-104(%r13)
+	movq	%rax,%r11
+	shlq	$15,%rax
+	movq	%rbx,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%rax
+	shlq	$15,%rbx
+	orq	%r11,%rbx
+	movq	%rax,-96(%r13)
+	movq	%rbx,-88(%r13)
+	movq	%r8,%r11
+	shlq	$15,%r8
+	movq	%r10,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%r8
+	shlq	$15,%r10
+	orq	%r11,%r10
+	movq	%r8,-80(%r13)
+	movq	%r10,-72(%r13)
+	movq	%r8,%r11
+	shlq	$15,%r8
+	movq	%r10,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%r8
+	shlq	$15,%r10
+	orq	%r11,%r10
+	movq	%r8,-64(%r13)
+	movq	%r10,-56(%r13)
+	movq	%rax,%r11
+	shlq	$30,%rax
+	movq	%rbx,%r9
+	shrq	$34,%r9
+	shrq	$34,%r11
+	orq	%r9,%rax
+	shlq	$30,%rbx
+	orq	%r11,%rbx
+	movq	%rax,-48(%r13)
+	movq	%rbx,-40(%r13)
+	movq	%r8,%r11
+	shlq	$15,%r8
+	movq	%r10,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%r8
+	shlq	$15,%r10
+	orq	%r11,%r10
+	movq	%r8,-32(%r13)
+	movq	%rax,%r11
+	shlq	$15,%rax
+	movq	%rbx,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%rax
+	shlq	$15,%rbx
+	orq	%r11,%rbx
+	movq	%rbx,-24(%r13)
+	movq	%r8,%r11
+	shlq	$15,%r8
+	movq	%r10,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%r8
+	shlq	$15,%r10
+	orq	%r11,%r10
+	movq	%r8,-16(%r13)
+	movq	%r10,-8(%r13)
+	movq	%rax,%r11
+	shlq	$17,%rax
+	movq	%rbx,%r9
+	shrq	$47,%r9
+	shrq	$47,%r11
+	orq	%r9,%rax
+	shlq	$17,%rbx
+	orq	%r11,%rbx
+	movq	%rax,0(%r13)
+	movq	%rbx,8(%r13)
+	movq	%rax,%r11
+	shlq	$17,%rax
+	movq	%rbx,%r9
+	shrq	$47,%r9
+	shrq	$47,%r11
+	orq	%r9,%rax
+	shlq	$17,%rbx
+	orq	%r11,%rbx
+	movq	%rax,16(%r13)
+	movq	%rbx,24(%r13)
+	movq	%r8,%r11
+	shlq	$34,%r8
+	movq	%r10,%r9
+	shrq	$30,%r9
+	shrq	$30,%r11
+	orq	%r9,%r8
+	shlq	$34,%r10
+	orq	%r11,%r10
+	movq	%r8,32(%r13)
+	movq	%r10,40(%r13)
+	movq	%rax,%r11
+	shlq	$17,%rax
+	movq	%rbx,%r9
+	shrq	$47,%r9
+	shrq	$47,%r11
+	orq	%r9,%rax
+	shlq	$17,%rbx
+	orq	%r11,%rbx
+	movq	%rax,48(%r13)
+	movq	%rbx,56(%r13)
+	movq	%r8,%r11
+	shlq	$17,%r8
+	movq	%r10,%r9
+	shrq	$47,%r9
+	shrq	$47,%r11
+	orq	%r9,%r8
+	shlq	$17,%r10
+	orq	%r11,%r10
+	movq	%r8,64(%r13)
+	movq	%r10,72(%r13)
+	movl	$3,%eax
+	jmp	.Ldone
+.align	16
+.L2nd256:
+	movl	%r9d,48(%r13)
+	movl	%r8d,52(%r13)
+	movl	%r11d,56(%r13)
+	movl	%r10d,60(%r13)
+	xorl	32(%r13),%r9d
+	xorl	36(%r13),%r8d
+	xorl	40(%r13),%r11d
+	xorl	44(%r13),%r10d
+	xorl	%r8d,%eax
+	xorl	%r9d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	40(%r14),%ebx
+	movl	44(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r10d
+	xorl	%ecx,%r11d
+	xorl	%edx,%r11d
+	xorl	%r10d,%eax
+	xorl	%r11d,%ebx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	movl	2052(%rbp,%rsi,8),%edx
+	movl	0(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	shrl	$16,%eax
+	movzbl	%bh,%edi
+	xorl	4(%rbp,%rsi,8),%edx
+	shrl	$16,%ebx
+	xorl	4(%rbp,%rdi,8),%ecx
+	movzbl	%ah,%esi
+	movzbl	%bl,%edi
+	xorl	0(%rbp,%rsi,8),%edx
+	xorl	2052(%rbp,%rdi,8),%ecx
+	movzbl	%al,%esi
+	movzbl	%bh,%edi
+	xorl	2048(%rbp,%rsi,8),%edx
+	xorl	2048(%rbp,%rdi,8),%ecx
+	movl	48(%r14),%ebx
+	movl	52(%r14),%eax
+	xorl	%edx,%ecx
+	rorl	$8,%edx
+	xorl	%ecx,%r8d
+	xorl	%ecx,%r9d
+	xorl	%edx,%r9d
+	movq	0(%r13),%rax
+	movq	8(%r13),%rbx
+	movq	32(%r13),%rcx
+	movq	40(%r13),%rdx
+	movq	48(%r13),%r14
+	movq	56(%r13),%r15
+	leaq	128(%r13),%r13
+	shlq	$32,%r8
+	shlq	$32,%r10
+	orq	%r9,%r8
+	orq	%r11,%r10
+	movq	%r8,-112(%r13)
+	movq	%r10,-104(%r13)
+	movq	%rcx,%r11
+	shlq	$15,%rcx
+	movq	%rdx,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%rcx
+	shlq	$15,%rdx
+	orq	%r11,%rdx
+	movq	%rcx,-96(%r13)
+	movq	%rdx,-88(%r13)
+	movq	%r14,%r11
+	shlq	$15,%r14
+	movq	%r15,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%r14
+	shlq	$15,%r15
+	orq	%r11,%r15
+	movq	%r14,-80(%r13)
+	movq	%r15,-72(%r13)
+	movq	%rcx,%r11
+	shlq	$15,%rcx
+	movq	%rdx,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%rcx
+	shlq	$15,%rdx
+	orq	%r11,%rdx
+	movq	%rcx,-64(%r13)
+	movq	%rdx,-56(%r13)
+	movq	%r8,%r11
+	shlq	$30,%r8
+	movq	%r10,%r9
+	shrq	$34,%r9
+	shrq	$34,%r11
+	orq	%r9,%r8
+	shlq	$30,%r10
+	orq	%r11,%r10
+	movq	%r8,-48(%r13)
+	movq	%r10,-40(%r13)
+	movq	%rax,%r11
+	shlq	$45,%rax
+	movq	%rbx,%r9
+	shrq	$19,%r9
+	shrq	$19,%r11
+	orq	%r9,%rax
+	shlq	$45,%rbx
+	orq	%r11,%rbx
+	movq	%rax,-32(%r13)
+	movq	%rbx,-24(%r13)
+	movq	%r14,%r11
+	shlq	$30,%r14
+	movq	%r15,%r9
+	shrq	$34,%r9
+	shrq	$34,%r11
+	orq	%r9,%r14
+	shlq	$30,%r15
+	orq	%r11,%r15
+	movq	%r14,-16(%r13)
+	movq	%r15,-8(%r13)
+	movq	%rax,%r11
+	shlq	$15,%rax
+	movq	%rbx,%r9
+	shrq	$49,%r9
+	shrq	$49,%r11
+	orq	%r9,%rax
+	shlq	$15,%rbx
+	orq	%r11,%rbx
+	movq	%rax,0(%r13)
+	movq	%rbx,8(%r13)
+	movq	%rcx,%r11
+	shlq	$30,%rcx
+	movq	%rdx,%r9
+	shrq	$34,%r9
+	shrq	$34,%r11
+	orq	%r9,%rcx
+	shlq	$30,%rdx
+	orq	%r11,%rdx
+	movq	%rcx,16(%r13)
+	movq	%rdx,24(%r13)
+	movq	%r8,%r11
+	shlq	$30,%r8
+	movq	%r10,%r9
+	shrq	$34,%r9
+	shrq	$34,%r11
+	orq	%r9,%r8
+	shlq	$30,%r10
+	orq	%r11,%r10
+	movq	%r8,32(%r13)
+	movq	%r10,40(%r13)
+	movq	%rax,%r11
+	shlq	$17,%rax
+	movq	%rbx,%r9
+	shrq	$47,%r9
+	shrq	$47,%r11
+	orq	%r9,%rax
+	shlq	$17,%rbx
+	orq	%r11,%rbx
+	movq	%rax,48(%r13)
+	movq	%rbx,56(%r13)
+	movq	%r14,%r11
+	shlq	$32,%r14
+	movq	%r15,%r9
+	shrq	$32,%r9
+	shrq	$32,%r11
+	orq	%r9,%r14
+	shlq	$32,%r15
+	orq	%r11,%r15
+	movq	%r14,64(%r13)
+	movq	%r15,72(%r13)
+	movq	%rcx,%r11
+	shlq	$34,%rcx
+	movq	%rdx,%r9
+	shrq	$30,%r9
+	shrq	$30,%r11
+	orq	%r9,%rcx
+	shlq	$34,%rdx
+	orq	%r11,%rdx
+	movq	%rcx,80(%r13)
+	movq	%rdx,88(%r13)
+	movq	%r14,%r11
+	shlq	$17,%r14
+	movq	%r15,%r9
+	shrq	$47,%r9
+	shrq	$47,%r11
+	orq	%r9,%r14
+	shlq	$17,%r15
+	orq	%r11,%r15
+	movq	%r14,96(%r13)
+	movq	%r15,104(%r13)
+	movq	%rax,%r11
+	shlq	$34,%rax
+	movq	%rbx,%r9
+	shrq	$30,%r9
+	shrq	$30,%r11
+	orq	%r9,%rax
+	shlq	$34,%rbx
+	orq	%r11,%rbx
+	movq	%rax,112(%r13)
+	movq	%rbx,120(%r13)
+	movq	%r8,%r11
+	shlq	$51,%r8
+	movq	%r10,%r9
+	shrq	$13,%r9
+	shrq	$13,%r11
+	orq	%r9,%r8
+	shlq	$51,%r10
+	orq	%r11,%r10
+	movq	%r8,128(%r13)
+	movq	%r10,136(%r13)
+	movl	$4,%eax
+.Ldone:
+	movq	0(%rsp),%r15
+	movq	8(%rsp),%r14
+	movq	16(%rsp),%r13
+	movq	24(%rsp),%rbp
+	movq	32(%rsp),%rbx
+	leaq	40(%rsp),%rsp
+.Lkey_epilogue:
+	.byte	0xf3,0xc3
+.size	Camellia_Ekeygen,.-Camellia_Ekeygen
+.align	64
+.LCamellia_SIGMA:
+.long	0x3bcc908b, 0xa09e667f, 0x4caa73b2, 0xb67ae858
+.long	0xe94f82be, 0xc6ef372f, 0xf1d36f1c, 0x54ff53a5
+.long	0xde682d1d, 0x10e527fa, 0xb3e6c1fd, 0xb05688c2
+.long	0,          0,          0,          0
+.LCamellia_SBOX:
+.long	0x70707000,0x70700070
+.long	0x82828200,0x2c2c002c
+.long	0x2c2c2c00,0xb3b300b3
+.long	0xececec00,0xc0c000c0
+.long	0xb3b3b300,0xe4e400e4
+.long	0x27272700,0x57570057
+.long	0xc0c0c000,0xeaea00ea
+.long	0xe5e5e500,0xaeae00ae
+.long	0xe4e4e400,0x23230023
+.long	0x85858500,0x6b6b006b
+.long	0x57575700,0x45450045
+.long	0x35353500,0xa5a500a5
+.long	0xeaeaea00,0xeded00ed
+.long	0x0c0c0c00,0x4f4f004f
+.long	0xaeaeae00,0x1d1d001d
+.long	0x41414100,0x92920092
+.long	0x23232300,0x86860086
+.long	0xefefef00,0xafaf00af
+.long	0x6b6b6b00,0x7c7c007c
+.long	0x93939300,0x1f1f001f
+.long	0x45454500,0x3e3e003e
+.long	0x19191900,0xdcdc00dc
+.long	0xa5a5a500,0x5e5e005e
+.long	0x21212100,0x0b0b000b
+.long	0xededed00,0xa6a600a6
+.long	0x0e0e0e00,0x39390039
+.long	0x4f4f4f00,0xd5d500d5
+.long	0x4e4e4e00,0x5d5d005d
+.long	0x1d1d1d00,0xd9d900d9
+.long	0x65656500,0x5a5a005a
+.long	0x92929200,0x51510051
+.long	0xbdbdbd00,0x6c6c006c
+.long	0x86868600,0x8b8b008b
+.long	0xb8b8b800,0x9a9a009a
+.long	0xafafaf00,0xfbfb00fb
+.long	0x8f8f8f00,0xb0b000b0
+.long	0x7c7c7c00,0x74740074
+.long	0xebebeb00,0x2b2b002b
+.long	0x1f1f1f00,0xf0f000f0
+.long	0xcecece00,0x84840084
+.long	0x3e3e3e00,0xdfdf00df
+.long	0x30303000,0xcbcb00cb
+.long	0xdcdcdc00,0x34340034
+.long	0x5f5f5f00,0x76760076
+.long	0x5e5e5e00,0x6d6d006d
+.long	0xc5c5c500,0xa9a900a9
+.long	0x0b0b0b00,0xd1d100d1
+.long	0x1a1a1a00,0x04040004
+.long	0xa6a6a600,0x14140014
+.long	0xe1e1e100,0x3a3a003a
+.long	0x39393900,0xdede00de
+.long	0xcacaca00,0x11110011
+.long	0xd5d5d500,0x32320032
+.long	0x47474700,0x9c9c009c
+.long	0x5d5d5d00,0x53530053
+.long	0x3d3d3d00,0xf2f200f2
+.long	0xd9d9d900,0xfefe00fe
+.long	0x01010100,0xcfcf00cf
+.long	0x5a5a5a00,0xc3c300c3
+.long	0xd6d6d600,0x7a7a007a
+.long	0x51515100,0x24240024
+.long	0x56565600,0xe8e800e8
+.long	0x6c6c6c00,0x60600060
+.long	0x4d4d4d00,0x69690069
+.long	0x8b8b8b00,0xaaaa00aa
+.long	0x0d0d0d00,0xa0a000a0
+.long	0x9a9a9a00,0xa1a100a1
+.long	0x66666600,0x62620062
+.long	0xfbfbfb00,0x54540054
+.long	0xcccccc00,0x1e1e001e
+.long	0xb0b0b000,0xe0e000e0
+.long	0x2d2d2d00,0x64640064
+.long	0x74747400,0x10100010
+.long	0x12121200,0x00000000
+.long	0x2b2b2b00,0xa3a300a3
+.long	0x20202000,0x75750075
+.long	0xf0f0f000,0x8a8a008a
+.long	0xb1b1b100,0xe6e600e6
+.long	0x84848400,0x09090009
+.long	0x99999900,0xdddd00dd
+.long	0xdfdfdf00,0x87870087
+.long	0x4c4c4c00,0x83830083
+.long	0xcbcbcb00,0xcdcd00cd
+.long	0xc2c2c200,0x90900090
+.long	0x34343400,0x73730073
+.long	0x7e7e7e00,0xf6f600f6
+.long	0x76767600,0x9d9d009d
+.long	0x05050500,0xbfbf00bf
+.long	0x6d6d6d00,0x52520052
+.long	0xb7b7b700,0xd8d800d8
+.long	0xa9a9a900,0xc8c800c8
+.long	0x31313100,0xc6c600c6
+.long	0xd1d1d100,0x81810081
+.long	0x17171700,0x6f6f006f
+.long	0x04040400,0x13130013
+.long	0xd7d7d700,0x63630063
+.long	0x14141400,0xe9e900e9
+.long	0x58585800,0xa7a700a7
+.long	0x3a3a3a00,0x9f9f009f
+.long	0x61616100,0xbcbc00bc
+.long	0xdedede00,0x29290029
+.long	0x1b1b1b00,0xf9f900f9
+.long	0x11111100,0x2f2f002f
+.long	0x1c1c1c00,0xb4b400b4
+.long	0x32323200,0x78780078
+.long	0x0f0f0f00,0x06060006
+.long	0x9c9c9c00,0xe7e700e7
+.long	0x16161600,0x71710071
+.long	0x53535300,0xd4d400d4
+.long	0x18181800,0xabab00ab
+.long	0xf2f2f200,0x88880088
+.long	0x22222200,0x8d8d008d
+.long	0xfefefe00,0x72720072
+.long	0x44444400,0xb9b900b9
+.long	0xcfcfcf00,0xf8f800f8
+.long	0xb2b2b200,0xacac00ac
+.long	0xc3c3c300,0x36360036
+.long	0xb5b5b500,0x2a2a002a
+.long	0x7a7a7a00,0x3c3c003c
+.long	0x91919100,0xf1f100f1
+.long	0x24242400,0x40400040
+.long	0x08080800,0xd3d300d3
+.long	0xe8e8e800,0xbbbb00bb
+.long	0xa8a8a800,0x43430043
+.long	0x60606000,0x15150015
+.long	0xfcfcfc00,0xadad00ad
+.long	0x69696900,0x77770077
+.long	0x50505000,0x80800080
+.long	0xaaaaaa00,0x82820082
+.long	0xd0d0d000,0xecec00ec
+.long	0xa0a0a000,0x27270027
+.long	0x7d7d7d00,0xe5e500e5
+.long	0xa1a1a100,0x85850085
+.long	0x89898900,0x35350035
+.long	0x62626200,0x0c0c000c
+.long	0x97979700,0x41410041
+.long	0x54545400,0xefef00ef
+.long	0x5b5b5b00,0x93930093
+.long	0x1e1e1e00,0x19190019
+.long	0x95959500,0x21210021
+.long	0xe0e0e000,0x0e0e000e
+.long	0xffffff00,0x4e4e004e
+.long	0x64646400,0x65650065
+.long	0xd2d2d200,0xbdbd00bd
+.long	0x10101000,0xb8b800b8
+.long	0xc4c4c400,0x8f8f008f
+.long	0x00000000,0xebeb00eb
+.long	0x48484800,0xcece00ce
+.long	0xa3a3a300,0x30300030
+.long	0xf7f7f700,0x5f5f005f
+.long	0x75757500,0xc5c500c5
+.long	0xdbdbdb00,0x1a1a001a
+.long	0x8a8a8a00,0xe1e100e1
+.long	0x03030300,0xcaca00ca
+.long	0xe6e6e600,0x47470047
+.long	0xdadada00,0x3d3d003d
+.long	0x09090900,0x01010001
+.long	0x3f3f3f00,0xd6d600d6
+.long	0xdddddd00,0x56560056
+.long	0x94949400,0x4d4d004d
+.long	0x87878700,0x0d0d000d
+.long	0x5c5c5c00,0x66660066
+.long	0x83838300,0xcccc00cc
+.long	0x02020200,0x2d2d002d
+.long	0xcdcdcd00,0x12120012
+.long	0x4a4a4a00,0x20200020
+.long	0x90909000,0xb1b100b1
+.long	0x33333300,0x99990099
+.long	0x73737300,0x4c4c004c
+.long	0x67676700,0xc2c200c2
+.long	0xf6f6f600,0x7e7e007e
+.long	0xf3f3f300,0x05050005
+.long	0x9d9d9d00,0xb7b700b7
+.long	0x7f7f7f00,0x31310031
+.long	0xbfbfbf00,0x17170017
+.long	0xe2e2e200,0xd7d700d7
+.long	0x52525200,0x58580058
+.long	0x9b9b9b00,0x61610061
+.long	0xd8d8d800,0x1b1b001b
+.long	0x26262600,0x1c1c001c
+.long	0xc8c8c800,0x0f0f000f
+.long	0x37373700,0x16160016
+.long	0xc6c6c600,0x18180018
+.long	0x3b3b3b00,0x22220022
+.long	0x81818100,0x44440044
+.long	0x96969600,0xb2b200b2
+.long	0x6f6f6f00,0xb5b500b5
+.long	0x4b4b4b00,0x91910091
+.long	0x13131300,0x08080008
+.long	0xbebebe00,0xa8a800a8
+.long	0x63636300,0xfcfc00fc
+.long	0x2e2e2e00,0x50500050
+.long	0xe9e9e900,0xd0d000d0
+.long	0x79797900,0x7d7d007d
+.long	0xa7a7a700,0x89890089
+.long	0x8c8c8c00,0x97970097
+.long	0x9f9f9f00,0x5b5b005b
+.long	0x6e6e6e00,0x95950095
+.long	0xbcbcbc00,0xffff00ff
+.long	0x8e8e8e00,0xd2d200d2
+.long	0x29292900,0xc4c400c4
+.long	0xf5f5f500,0x48480048
+.long	0xf9f9f900,0xf7f700f7
+.long	0xb6b6b600,0xdbdb00db
+.long	0x2f2f2f00,0x03030003
+.long	0xfdfdfd00,0xdada00da
+.long	0xb4b4b400,0x3f3f003f
+.long	0x59595900,0x94940094
+.long	0x78787800,0x5c5c005c
+.long	0x98989800,0x02020002
+.long	0x06060600,0x4a4a004a
+.long	0x6a6a6a00,0x33330033
+.long	0xe7e7e700,0x67670067
+.long	0x46464600,0xf3f300f3
+.long	0x71717100,0x7f7f007f
+.long	0xbababa00,0xe2e200e2
+.long	0xd4d4d400,0x9b9b009b
+.long	0x25252500,0x26260026
+.long	0xababab00,0x37370037
+.long	0x42424200,0x3b3b003b
+.long	0x88888800,0x96960096
+.long	0xa2a2a200,0x4b4b004b
+.long	0x8d8d8d00,0xbebe00be
+.long	0xfafafa00,0x2e2e002e
+.long	0x72727200,0x79790079
+.long	0x07070700,0x8c8c008c
+.long	0xb9b9b900,0x6e6e006e
+.long	0x55555500,0x8e8e008e
+.long	0xf8f8f800,0xf5f500f5
+.long	0xeeeeee00,0xb6b600b6
+.long	0xacacac00,0xfdfd00fd
+.long	0x0a0a0a00,0x59590059
+.long	0x36363600,0x98980098
+.long	0x49494900,0x6a6a006a
+.long	0x2a2a2a00,0x46460046
+.long	0x68686800,0xbaba00ba
+.long	0x3c3c3c00,0x25250025
+.long	0x38383800,0x42420042
+.long	0xf1f1f100,0xa2a200a2
+.long	0xa4a4a400,0xfafa00fa
+.long	0x40404000,0x07070007
+.long	0x28282800,0x55550055
+.long	0xd3d3d300,0xeeee00ee
+.long	0x7b7b7b00,0x0a0a000a
+.long	0xbbbbbb00,0x49490049
+.long	0xc9c9c900,0x68680068
+.long	0x43434300,0x38380038
+.long	0xc1c1c100,0xa4a400a4
+.long	0x15151500,0x28280028
+.long	0xe3e3e300,0x7b7b007b
+.long	0xadadad00,0xc9c900c9
+.long	0xf4f4f400,0xc1c100c1
+.long	0x77777700,0xe3e300e3
+.long	0xc7c7c700,0xf4f400f4
+.long	0x80808000,0xc7c700c7
+.long	0x9e9e9e00,0x9e9e009e
+.long	0x00e0e0e0,0x38003838
+.long	0x00050505,0x41004141
+.long	0x00585858,0x16001616
+.long	0x00d9d9d9,0x76007676
+.long	0x00676767,0xd900d9d9
+.long	0x004e4e4e,0x93009393
+.long	0x00818181,0x60006060
+.long	0x00cbcbcb,0xf200f2f2
+.long	0x00c9c9c9,0x72007272
+.long	0x000b0b0b,0xc200c2c2
+.long	0x00aeaeae,0xab00abab
+.long	0x006a6a6a,0x9a009a9a
+.long	0x00d5d5d5,0x75007575
+.long	0x00181818,0x06000606
+.long	0x005d5d5d,0x57005757
+.long	0x00828282,0xa000a0a0
+.long	0x00464646,0x91009191
+.long	0x00dfdfdf,0xf700f7f7
+.long	0x00d6d6d6,0xb500b5b5
+.long	0x00272727,0xc900c9c9
+.long	0x008a8a8a,0xa200a2a2
+.long	0x00323232,0x8c008c8c
+.long	0x004b4b4b,0xd200d2d2
+.long	0x00424242,0x90009090
+.long	0x00dbdbdb,0xf600f6f6
+.long	0x001c1c1c,0x07000707
+.long	0x009e9e9e,0xa700a7a7
+.long	0x009c9c9c,0x27002727
+.long	0x003a3a3a,0x8e008e8e
+.long	0x00cacaca,0xb200b2b2
+.long	0x00252525,0x49004949
+.long	0x007b7b7b,0xde00dede
+.long	0x000d0d0d,0x43004343
+.long	0x00717171,0x5c005c5c
+.long	0x005f5f5f,0xd700d7d7
+.long	0x001f1f1f,0xc700c7c7
+.long	0x00f8f8f8,0x3e003e3e
+.long	0x00d7d7d7,0xf500f5f5
+.long	0x003e3e3e,0x8f008f8f
+.long	0x009d9d9d,0x67006767
+.long	0x007c7c7c,0x1f001f1f
+.long	0x00606060,0x18001818
+.long	0x00b9b9b9,0x6e006e6e
+.long	0x00bebebe,0xaf00afaf
+.long	0x00bcbcbc,0x2f002f2f
+.long	0x008b8b8b,0xe200e2e2
+.long	0x00161616,0x85008585
+.long	0x00343434,0x0d000d0d
+.long	0x004d4d4d,0x53005353
+.long	0x00c3c3c3,0xf000f0f0
+.long	0x00727272,0x9c009c9c
+.long	0x00959595,0x65006565
+.long	0x00ababab,0xea00eaea
+.long	0x008e8e8e,0xa300a3a3
+.long	0x00bababa,0xae00aeae
+.long	0x007a7a7a,0x9e009e9e
+.long	0x00b3b3b3,0xec00ecec
+.long	0x00020202,0x80008080
+.long	0x00b4b4b4,0x2d002d2d
+.long	0x00adadad,0x6b006b6b
+.long	0x00a2a2a2,0xa800a8a8
+.long	0x00acacac,0x2b002b2b
+.long	0x00d8d8d8,0x36003636
+.long	0x009a9a9a,0xa600a6a6
+.long	0x00171717,0xc500c5c5
+.long	0x001a1a1a,0x86008686
+.long	0x00353535,0x4d004d4d
+.long	0x00cccccc,0x33003333
+.long	0x00f7f7f7,0xfd00fdfd
+.long	0x00999999,0x66006666
+.long	0x00616161,0x58005858
+.long	0x005a5a5a,0x96009696
+.long	0x00e8e8e8,0x3a003a3a
+.long	0x00242424,0x09000909
+.long	0x00565656,0x95009595
+.long	0x00404040,0x10001010
+.long	0x00e1e1e1,0x78007878
+.long	0x00636363,0xd800d8d8
+.long	0x00090909,0x42004242
+.long	0x00333333,0xcc00cccc
+.long	0x00bfbfbf,0xef00efef
+.long	0x00989898,0x26002626
+.long	0x00979797,0xe500e5e5
+.long	0x00858585,0x61006161
+.long	0x00686868,0x1a001a1a
+.long	0x00fcfcfc,0x3f003f3f
+.long	0x00ececec,0x3b003b3b
+.long	0x000a0a0a,0x82008282
+.long	0x00dadada,0xb600b6b6
+.long	0x006f6f6f,0xdb00dbdb
+.long	0x00535353,0xd400d4d4
+.long	0x00626262,0x98009898
+.long	0x00a3a3a3,0xe800e8e8
+.long	0x002e2e2e,0x8b008b8b
+.long	0x00080808,0x02000202
+.long	0x00afafaf,0xeb00ebeb
+.long	0x00282828,0x0a000a0a
+.long	0x00b0b0b0,0x2c002c2c
+.long	0x00747474,0x1d001d1d
+.long	0x00c2c2c2,0xb000b0b0
+.long	0x00bdbdbd,0x6f006f6f
+.long	0x00363636,0x8d008d8d
+.long	0x00222222,0x88008888
+.long	0x00383838,0x0e000e0e
+.long	0x00646464,0x19001919
+.long	0x001e1e1e,0x87008787
+.long	0x00393939,0x4e004e4e
+.long	0x002c2c2c,0x0b000b0b
+.long	0x00a6a6a6,0xa900a9a9
+.long	0x00303030,0x0c000c0c
+.long	0x00e5e5e5,0x79007979
+.long	0x00444444,0x11001111
+.long	0x00fdfdfd,0x7f007f7f
+.long	0x00888888,0x22002222
+.long	0x009f9f9f,0xe700e7e7
+.long	0x00656565,0x59005959
+.long	0x00878787,0xe100e1e1
+.long	0x006b6b6b,0xda00dada
+.long	0x00f4f4f4,0x3d003d3d
+.long	0x00232323,0xc800c8c8
+.long	0x00484848,0x12001212
+.long	0x00101010,0x04000404
+.long	0x00d1d1d1,0x74007474
+.long	0x00515151,0x54005454
+.long	0x00c0c0c0,0x30003030
+.long	0x00f9f9f9,0x7e007e7e
+.long	0x00d2d2d2,0xb400b4b4
+.long	0x00a0a0a0,0x28002828
+.long	0x00555555,0x55005555
+.long	0x00a1a1a1,0x68006868
+.long	0x00414141,0x50005050
+.long	0x00fafafa,0xbe00bebe
+.long	0x00434343,0xd000d0d0
+.long	0x00131313,0xc400c4c4
+.long	0x00c4c4c4,0x31003131
+.long	0x002f2f2f,0xcb00cbcb
+.long	0x00a8a8a8,0x2a002a2a
+.long	0x00b6b6b6,0xad00adad
+.long	0x003c3c3c,0x0f000f0f
+.long	0x002b2b2b,0xca00caca
+.long	0x00c1c1c1,0x70007070
+.long	0x00ffffff,0xff00ffff
+.long	0x00c8c8c8,0x32003232
+.long	0x00a5a5a5,0x69006969
+.long	0x00202020,0x08000808
+.long	0x00898989,0x62006262
+.long	0x00000000,0x00000000
+.long	0x00909090,0x24002424
+.long	0x00474747,0xd100d1d1
+.long	0x00efefef,0xfb00fbfb
+.long	0x00eaeaea,0xba00baba
+.long	0x00b7b7b7,0xed00eded
+.long	0x00151515,0x45004545
+.long	0x00060606,0x81008181
+.long	0x00cdcdcd,0x73007373
+.long	0x00b5b5b5,0x6d006d6d
+.long	0x00121212,0x84008484
+.long	0x007e7e7e,0x9f009f9f
+.long	0x00bbbbbb,0xee00eeee
+.long	0x00292929,0x4a004a4a
+.long	0x000f0f0f,0xc300c3c3
+.long	0x00b8b8b8,0x2e002e2e
+.long	0x00070707,0xc100c1c1
+.long	0x00040404,0x01000101
+.long	0x009b9b9b,0xe600e6e6
+.long	0x00949494,0x25002525
+.long	0x00212121,0x48004848
+.long	0x00666666,0x99009999
+.long	0x00e6e6e6,0xb900b9b9
+.long	0x00cecece,0xb300b3b3
+.long	0x00ededed,0x7b007b7b
+.long	0x00e7e7e7,0xf900f9f9
+.long	0x003b3b3b,0xce00cece
+.long	0x00fefefe,0xbf00bfbf
+.long	0x007f7f7f,0xdf00dfdf
+.long	0x00c5c5c5,0x71007171
+.long	0x00a4a4a4,0x29002929
+.long	0x00373737,0xcd00cdcd
+.long	0x00b1b1b1,0x6c006c6c
+.long	0x004c4c4c,0x13001313
+.long	0x00919191,0x64006464
+.long	0x006e6e6e,0x9b009b9b
+.long	0x008d8d8d,0x63006363
+.long	0x00767676,0x9d009d9d
+.long	0x00030303,0xc000c0c0
+.long	0x002d2d2d,0x4b004b4b
+.long	0x00dedede,0xb700b7b7
+.long	0x00969696,0xa500a5a5
+.long	0x00262626,0x89008989
+.long	0x007d7d7d,0x5f005f5f
+.long	0x00c6c6c6,0xb100b1b1
+.long	0x005c5c5c,0x17001717
+.long	0x00d3d3d3,0xf400f4f4
+.long	0x00f2f2f2,0xbc00bcbc
+.long	0x004f4f4f,0xd300d3d3
+.long	0x00191919,0x46004646
+.long	0x003f3f3f,0xcf00cfcf
+.long	0x00dcdcdc,0x37003737
+.long	0x00797979,0x5e005e5e
+.long	0x001d1d1d,0x47004747
+.long	0x00525252,0x94009494
+.long	0x00ebebeb,0xfa00fafa
+.long	0x00f3f3f3,0xfc00fcfc
+.long	0x006d6d6d,0x5b005b5b
+.long	0x005e5e5e,0x97009797
+.long	0x00fbfbfb,0xfe00fefe
+.long	0x00696969,0x5a005a5a
+.long	0x00b2b2b2,0xac00acac
+.long	0x00f0f0f0,0x3c003c3c
+.long	0x00313131,0x4c004c4c
+.long	0x000c0c0c,0x03000303
+.long	0x00d4d4d4,0x35003535
+.long	0x00cfcfcf,0xf300f3f3
+.long	0x008c8c8c,0x23002323
+.long	0x00e2e2e2,0xb800b8b8
+.long	0x00757575,0x5d005d5d
+.long	0x00a9a9a9,0x6a006a6a
+.long	0x004a4a4a,0x92009292
+.long	0x00575757,0xd500d5d5
+.long	0x00848484,0x21002121
+.long	0x00111111,0x44004444
+.long	0x00454545,0x51005151
+.long	0x001b1b1b,0xc600c6c6
+.long	0x00f5f5f5,0x7d007d7d
+.long	0x00e4e4e4,0x39003939
+.long	0x000e0e0e,0x83008383
+.long	0x00737373,0xdc00dcdc
+.long	0x00aaaaaa,0xaa00aaaa
+.long	0x00f1f1f1,0x7c007c7c
+.long	0x00dddddd,0x77007777
+.long	0x00595959,0x56005656
+.long	0x00141414,0x05000505
+.long	0x006c6c6c,0x1b001b1b
+.long	0x00929292,0xa400a4a4
+.long	0x00545454,0x15001515
+.long	0x00d0d0d0,0x34003434
+.long	0x00787878,0x1e001e1e
+.long	0x00707070,0x1c001c1c
+.long	0x00e3e3e3,0xf800f8f8
+.long	0x00494949,0x52005252
+.long	0x00808080,0x20002020
+.long	0x00505050,0x14001414
+.long	0x00a7a7a7,0xe900e9e9
+.long	0x00f6f6f6,0xbd00bdbd
+.long	0x00777777,0xdd00dddd
+.long	0x00939393,0xe400e4e4
+.long	0x00868686,0xa100a1a1
+.long	0x00838383,0xe000e0e0
+.long	0x002a2a2a,0x8a008a8a
+.long	0x00c7c7c7,0xf100f1f1
+.long	0x005b5b5b,0xd600d6d6
+.long	0x00e9e9e9,0x7a007a7a
+.long	0x00eeeeee,0xbb00bbbb
+.long	0x008f8f8f,0xe300e3e3
+.long	0x00010101,0x40004040
+.long	0x003d3d3d,0x4f004f4f
+.globl	Camellia_cbc_encrypt
+.type	Camellia_cbc_encrypt,@function
+.align	16
+Camellia_cbc_encrypt:
+	cmpq	$0,%rdx
+	je	.Lcbc_abort
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+.Lcbc_prologue:
+
+	movq	%rsp,%rbp
+	subq	$64,%rsp
+	andq	$-64,%rsp
+
+
+
+	leaq	-64-63(%rcx),%r10
+	subq	%rsp,%r10
+	negq	%r10
+	andq	$960,%r10
+	subq	%r10,%rsp
+
+
+	movq	%rdi,%r12
+	movq	%rsi,%r13
+	movq	%r8,%rbx
+	movq	%rcx,%r14
+	movl	272(%rcx),%r15d
+
+	movq	%r8,40(%rsp)
+	movq	%rbp,48(%rsp)
+
+.Lcbc_body:
+	leaq	.LCamellia_SBOX(%rip),%rbp
+
+	movl	$32,%ecx
+.align	4
+.Lcbc_prefetch_sbox:
+	movq	0(%rbp),%rax
+	movq	32(%rbp),%rsi
+	movq	64(%rbp),%rdi
+	movq	96(%rbp),%r11
+	leaq	128(%rbp),%rbp
+	loop	.Lcbc_prefetch_sbox
+	subq	$4096,%rbp
+	shlq	$6,%r15
+	movq	%rdx,%rcx
+	leaq	(%r14,%r15,1),%r15
+
+	cmpl	$0,%r9d
+	je	.LCBC_DECRYPT
+
+	andq	$-16,%rdx
+	andq	$15,%rcx
+	leaq	(%r12,%rdx,1),%rdx
+	movq	%r14,0(%rsp)
+	movq	%rdx,8(%rsp)
+	movq	%rcx,16(%rsp)
+
+	cmpq	%r12,%rdx
+	movl	0(%rbx),%r8d
+	movl	4(%rbx),%r9d
+	movl	8(%rbx),%r10d
+	movl	12(%rbx),%r11d
+	je	.Lcbc_enc_tail
+	jmp	.Lcbc_eloop
+
+.align	16
+.Lcbc_eloop:
+	xorl	0(%r12),%r8d
+	xorl	4(%r12),%r9d
+	xorl	8(%r12),%r10d
+	bswapl	%r8d
+	xorl	12(%r12),%r11d
+	bswapl	%r9d
+	bswapl	%r10d
+	bswapl	%r11d
+
+	call	_x86_64_Camellia_encrypt
+
+	movq	0(%rsp),%r14
+	bswapl	%r8d
+	movq	8(%rsp),%rdx
+	bswapl	%r9d
+	movq	16(%rsp),%rcx
+	bswapl	%r10d
+	movl	%r8d,0(%r13)
+	bswapl	%r11d
+	movl	%r9d,4(%r13)
+	movl	%r10d,8(%r13)
+	leaq	16(%r12),%r12
+	movl	%r11d,12(%r13)
+	cmpq	%rdx,%r12
+	leaq	16(%r13),%r13
+	jne	.Lcbc_eloop
+
+	cmpq	$0,%rcx
+	jne	.Lcbc_enc_tail
+
+	movq	40(%rsp),%r13
+	movl	%r8d,0(%r13)
+	movl	%r9d,4(%r13)
+	movl	%r10d,8(%r13)
+	movl	%r11d,12(%r13)
+	jmp	.Lcbc_done
+
+.align	16
+.Lcbc_enc_tail:
+	xorq	%rax,%rax
+	movq	%rax,0+24(%rsp)
+	movq	%rax,8+24(%rsp)
+	movq	%rax,16(%rsp)
+
+.Lcbc_enc_pushf:
+	pushfq
+	cld
+	movq	%r12,%rsi
+	leaq	8+24(%rsp),%rdi
+.long	0x9066A4F3	=09
+	popfq
+.Lcbc_enc_popf:
+
+	leaq	24(%rsp),%r12
+	leaq	16+24(%rsp),%rax
+	movq	%rax,8(%rsp)
+	jmp	.Lcbc_eloop	=09
+
+.align	16
+.LCBC_DECRYPT:
+	xchgq	%r14,%r15
+	addq	$15,%rdx
+	andq	$15,%rcx
+	andq	$-16,%rdx
+	movq	%r14,0(%rsp)
+	leaq	(%r12,%rdx,1),%rdx
+	movq	%rdx,8(%rsp)
+	movq	%rcx,16(%rsp)
+
+	movq	(%rbx),%rax
+	movq	8(%rbx),%rbx
+	jmp	.Lcbc_dloop
+.align	16
+.Lcbc_dloop:
+	movl	0(%r12),%r8d
+	movl	4(%r12),%r9d
+	movl	8(%r12),%r10d
+	bswapl	%r8d
+	movl	12(%r12),%r11d
+	bswapl	%r9d
+	movq	%rax,0+24(%rsp)
+	bswapl	%r10d
+	movq	%rbx,8+24(%rsp)
+	bswapl	%r11d
+
+	call	_x86_64_Camellia_decrypt
+
+	movq	0(%rsp),%r14
+	movq	8(%rsp),%rdx
+	movq	16(%rsp),%rcx
+
+	bswapl	%r8d
+	movq	(%r12),%rax
+	bswapl	%r9d
+	movq	8(%r12),%rbx
+	bswapl	%r10d
+	xorl	0+24(%rsp),%r8d
+	bswapl	%r11d
+	xorl	4+24(%rsp),%r9d
+	xorl	8+24(%rsp),%r10d
+	leaq	16(%r12),%r12
+	xorl	12+24(%rsp),%r11d
+	cmpq	%rdx,%r12
+	je	.Lcbc_ddone
+
+	movl	%r8d,0(%r13)
+	movl	%r9d,4(%r13)
+	movl	%r10d,8(%r13)
+	movl	%r11d,12(%r13)
+
+	leaq	16(%r13),%r13
+	jmp	.Lcbc_dloop
+
+.align	16
+.Lcbc_ddone:
+	movq	40(%rsp),%rdx
+	cmpq	$0,%rcx
+	jne	.Lcbc_dec_tail
+
+	movl	%r8d,0(%r13)
+	movl	%r9d,4(%r13)
+	movl	%r10d,8(%r13)
+	movl	%r11d,12(%r13)
+
+	movq	%rax,(%rdx)
+	movq	%rbx,8(%rdx)
+	jmp	.Lcbc_done
+.align	16
+.Lcbc_dec_tail:
+	movl	%r8d,0+24(%rsp)
+	movl	%r9d,4+24(%rsp)
+	movl	%r10d,8+24(%rsp)
+	movl	%r11d,12+24(%rsp)
+
+.Lcbc_dec_pushf:
+	pushfq
+	cld
+	leaq	8+24(%rsp),%rsi
+	leaq	(%r13),%rdi
+.long	0x9066A4F3	=09
+	popfq
+.Lcbc_dec_popf:
+
+	movq	%rax,(%rdx)
+	movq	%rbx,8(%rdx)
+	jmp	.Lcbc_done
+
+.align	16
+.Lcbc_done:
+	movq	48(%rsp),%rcx
+	movq	0(%rcx),%r15
+	movq	8(%rcx),%r14
+	movq	16(%rcx),%r13
+	movq	24(%rcx),%r12
+	movq	32(%rcx),%rbp
+	movq	40(%rcx),%rbx
+	leaq	48(%rcx),%rsp
+.Lcbc_abort:
+	.byte	0xf3,0xc3
+.size	Camellia_cbc_encrypt,.-Camellia_cbc_encrypt
+
+.byte	67,97,109,101,108,108,105,97,32,102,111,114,32,120,56,54,95,54,52,32=
,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,=
103,62,0
Index: secure/lib/libcrypto/amd64/sha1-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/sha1-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/sha1-amd64.s	(revision 0)
@@ -0,0 +1,1282 @@
+.text=09
+.globl	sha1_block_data_order
+.type	sha1_block_data_order,@function
+.align	16
+sha1_block_data_order:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	movq	%rsp,%r11
+	movq	%rdi,%r8
+	subq	$72,%rsp
+	movq	%rsi,%r9
+	andq	$-64,%rsp
+	movq	%rdx,%r10
+	movq	%r11,64(%rsp)
+.Lprologue:
+
+	movl	0(%r8),%edx
+	movl	4(%r8),%esi
+	movl	8(%r8),%edi
+	movl	12(%r8),%ebp
+	movl	16(%r8),%r11d
+.align	4
+.Lloop:
+	movl	0(%r9),%eax
+	bswapl	%eax
+	movl	%eax,0(%rsp)
+	leal	1518500249(%rax,%r11,1),%r12d
+	movl	%edi,%ebx
+	movl	4(%r9),%eax
+	movl	%edx,%r11d
+	xorl	%ebp,%ebx
+	bswapl	%eax
+	roll	$5,%r11d
+	andl	%esi,%ebx
+	movl	%eax,4(%rsp)
+	addl	%r11d,%r12d
+	xorl	%ebp,%ebx
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	leal	1518500249(%rax,%rbp,1),%r11d
+	movl	%esi,%ebx
+	movl	8(%r9),%eax
+	movl	%r12d,%ebp
+	xorl	%edi,%ebx
+	bswapl	%eax
+	roll	$5,%ebp
+	andl	%edx,%ebx
+	movl	%eax,8(%rsp)
+	addl	%ebp,%r11d
+	xorl	%edi,%ebx
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	leal	1518500249(%rax,%rdi,1),%ebp
+	movl	%edx,%ebx
+	movl	12(%r9),%eax
+	movl	%r11d,%edi
+	xorl	%esi,%ebx
+	bswapl	%eax
+	roll	$5,%edi
+	andl	%r12d,%ebx
+	movl	%eax,12(%rsp)
+	addl	%edi,%ebp
+	xorl	%esi,%ebx
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	leal	1518500249(%rax,%rsi,1),%edi
+	movl	%r12d,%ebx
+	movl	16(%r9),%eax
+	movl	%ebp,%esi
+	xorl	%edx,%ebx
+	bswapl	%eax
+	roll	$5,%esi
+	andl	%r11d,%ebx
+	movl	%eax,16(%rsp)
+	addl	%esi,%edi
+	xorl	%edx,%ebx
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	leal	1518500249(%rax,%rdx,1),%esi
+	movl	%r11d,%ebx
+	movl	20(%r9),%eax
+	movl	%edi,%edx
+	xorl	%r12d,%ebx
+	bswapl	%eax
+	roll	$5,%edx
+	andl	%ebp,%ebx
+	movl	%eax,20(%rsp)
+	addl	%edx,%esi
+	xorl	%r12d,%ebx
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	leal	1518500249(%rax,%r12,1),%edx
+	movl	%ebp,%ebx
+	movl	24(%r9),%eax
+	movl	%esi,%r12d
+	xorl	%r11d,%ebx
+	bswapl	%eax
+	roll	$5,%r12d
+	andl	%edi,%ebx
+	movl	%eax,24(%rsp)
+	addl	%r12d,%edx
+	xorl	%r11d,%ebx
+	roll	$30,%edi
+	addl	%ebx,%edx
+	leal	1518500249(%rax,%r11,1),%r12d
+	movl	%edi,%ebx
+	movl	28(%r9),%eax
+	movl	%edx,%r11d
+	xorl	%ebp,%ebx
+	bswapl	%eax
+	roll	$5,%r11d
+	andl	%esi,%ebx
+	movl	%eax,28(%rsp)
+	addl	%r11d,%r12d
+	xorl	%ebp,%ebx
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	leal	1518500249(%rax,%rbp,1),%r11d
+	movl	%esi,%ebx
+	movl	32(%r9),%eax
+	movl	%r12d,%ebp
+	xorl	%edi,%ebx
+	bswapl	%eax
+	roll	$5,%ebp
+	andl	%edx,%ebx
+	movl	%eax,32(%rsp)
+	addl	%ebp,%r11d
+	xorl	%edi,%ebx
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	leal	1518500249(%rax,%rdi,1),%ebp
+	movl	%edx,%ebx
+	movl	36(%r9),%eax
+	movl	%r11d,%edi
+	xorl	%esi,%ebx
+	bswapl	%eax
+	roll	$5,%edi
+	andl	%r12d,%ebx
+	movl	%eax,36(%rsp)
+	addl	%edi,%ebp
+	xorl	%esi,%ebx
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	leal	1518500249(%rax,%rsi,1),%edi
+	movl	%r12d,%ebx
+	movl	40(%r9),%eax
+	movl	%ebp,%esi
+	xorl	%edx,%ebx
+	bswapl	%eax
+	roll	$5,%esi
+	andl	%r11d,%ebx
+	movl	%eax,40(%rsp)
+	addl	%esi,%edi
+	xorl	%edx,%ebx
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	leal	1518500249(%rax,%rdx,1),%esi
+	movl	%r11d,%ebx
+	movl	44(%r9),%eax
+	movl	%edi,%edx
+	xorl	%r12d,%ebx
+	bswapl	%eax
+	roll	$5,%edx
+	andl	%ebp,%ebx
+	movl	%eax,44(%rsp)
+	addl	%edx,%esi
+	xorl	%r12d,%ebx
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	leal	1518500249(%rax,%r12,1),%edx
+	movl	%ebp,%ebx
+	movl	48(%r9),%eax
+	movl	%esi,%r12d
+	xorl	%r11d,%ebx
+	bswapl	%eax
+	roll	$5,%r12d
+	andl	%edi,%ebx
+	movl	%eax,48(%rsp)
+	addl	%r12d,%edx
+	xorl	%r11d,%ebx
+	roll	$30,%edi
+	addl	%ebx,%edx
+	leal	1518500249(%rax,%r11,1),%r12d
+	movl	%edi,%ebx
+	movl	52(%r9),%eax
+	movl	%edx,%r11d
+	xorl	%ebp,%ebx
+	bswapl	%eax
+	roll	$5,%r11d
+	andl	%esi,%ebx
+	movl	%eax,52(%rsp)
+	addl	%r11d,%r12d
+	xorl	%ebp,%ebx
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	leal	1518500249(%rax,%rbp,1),%r11d
+	movl	%esi,%ebx
+	movl	56(%r9),%eax
+	movl	%r12d,%ebp
+	xorl	%edi,%ebx
+	bswapl	%eax
+	roll	$5,%ebp
+	andl	%edx,%ebx
+	movl	%eax,56(%rsp)
+	addl	%ebp,%r11d
+	xorl	%edi,%ebx
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	leal	1518500249(%rax,%rdi,1),%ebp
+	movl	%edx,%ebx
+	movl	60(%r9),%eax
+	movl	%r11d,%edi
+	xorl	%esi,%ebx
+	bswapl	%eax
+	roll	$5,%edi
+	andl	%r12d,%ebx
+	movl	%eax,60(%rsp)
+	addl	%edi,%ebp
+	xorl	%esi,%ebx
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	leal	1518500249(%rax,%rsi,1),%edi
+	movl	0(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	8(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%esi
+	xorl	32(%rsp),%eax
+	andl	%r11d,%ebx
+	addl	%esi,%edi
+	xorl	52(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,0(%rsp)
+	leal	1518500249(%rax,%rdx,1),%esi
+	movl	4(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	12(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edx
+	xorl	36(%rsp),%eax
+	andl	%ebp,%ebx
+	addl	%edx,%esi
+	xorl	56(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	movl	%eax,4(%rsp)
+	leal	1518500249(%rax,%r12,1),%edx
+	movl	8(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	16(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%r12d
+	xorl	40(%rsp),%eax
+	andl	%edi,%ebx
+	addl	%r12d,%edx
+	xorl	60(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	movl	%eax,8(%rsp)
+	leal	1518500249(%rax,%r11,1),%r12d
+	movl	12(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	20(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%r11d
+	xorl	44(%rsp),%eax
+	andl	%esi,%ebx
+	addl	%r11d,%r12d
+	xorl	0(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,12(%rsp)
+	leal	1518500249(%rax,%rbp,1),%r11d
+	movl	16(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	24(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%ebp
+	xorl	48(%rsp),%eax
+	andl	%edx,%ebx
+	addl	%ebp,%r11d
+	xorl	4(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,16(%rsp)
+	leal	1859775393(%rax,%rdi,1),%ebp
+	movl	20(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	28(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	52(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	8(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,20(%rsp)
+	leal	1859775393(%rax,%rsi,1),%edi
+	movl	24(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	32(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	56(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	12(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,24(%rsp)
+	leal	1859775393(%rax,%rdx,1),%esi
+	movl	28(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	36(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%edx
+	xorl	60(%rsp),%eax
+	xorl	%r12d,%ebx
+	addl	%edx,%esi
+	xorl	16(%rsp),%eax
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	movl	%eax,28(%rsp)
+	leal	1859775393(%rax,%r12,1),%edx
+	movl	32(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	40(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%r12d
+	xorl	0(%rsp),%eax
+	xorl	%r11d,%ebx
+	addl	%r12d,%edx
+	xorl	20(%rsp),%eax
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	movl	%eax,32(%rsp)
+	leal	1859775393(%rax,%r11,1),%r12d
+	movl	36(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	44(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	4(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	24(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,36(%rsp)
+	leal	1859775393(%rax,%rbp,1),%r11d
+	movl	40(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	48(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	8(%rsp),%eax
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	xorl	28(%rsp),%eax
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,40(%rsp)
+	leal	1859775393(%rax,%rdi,1),%ebp
+	movl	44(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	52(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	12(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	32(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,44(%rsp)
+	leal	1859775393(%rax,%rsi,1),%edi
+	movl	48(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	56(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	16(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	36(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,48(%rsp)
+	leal	1859775393(%rax,%rdx,1),%esi
+	movl	52(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	60(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%edx
+	xorl	20(%rsp),%eax
+	xorl	%r12d,%ebx
+	addl	%edx,%esi
+	xorl	40(%rsp),%eax
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	movl	%eax,52(%rsp)
+	leal	1859775393(%rax,%r12,1),%edx
+	movl	56(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	0(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%r12d
+	xorl	24(%rsp),%eax
+	xorl	%r11d,%ebx
+	addl	%r12d,%edx
+	xorl	44(%rsp),%eax
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	movl	%eax,56(%rsp)
+	leal	1859775393(%rax,%r11,1),%r12d
+	movl	60(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	4(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	28(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	48(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,60(%rsp)
+	leal	1859775393(%rax,%rbp,1),%r11d
+	movl	0(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	8(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	32(%rsp),%eax
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	xorl	52(%rsp),%eax
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,0(%rsp)
+	leal	1859775393(%rax,%rdi,1),%ebp
+	movl	4(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	12(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	36(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	56(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,4(%rsp)
+	leal	1859775393(%rax,%rsi,1),%edi
+	movl	8(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	16(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	40(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	60(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,8(%rsp)
+	leal	1859775393(%rax,%rdx,1),%esi
+	movl	12(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	20(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%edx
+	xorl	44(%rsp),%eax
+	xorl	%r12d,%ebx
+	addl	%edx,%esi
+	xorl	0(%rsp),%eax
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	movl	%eax,12(%rsp)
+	leal	1859775393(%rax,%r12,1),%edx
+	movl	16(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	24(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%r12d
+	xorl	48(%rsp),%eax
+	xorl	%r11d,%ebx
+	addl	%r12d,%edx
+	xorl	4(%rsp),%eax
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	movl	%eax,16(%rsp)
+	leal	1859775393(%rax,%r11,1),%r12d
+	movl	20(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	28(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	52(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	8(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,20(%rsp)
+	leal	1859775393(%rax,%rbp,1),%r11d
+	movl	24(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	32(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	56(%rsp),%eax
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	xorl	12(%rsp),%eax
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,24(%rsp)
+	leal	1859775393(%rax,%rdi,1),%ebp
+	movl	28(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	36(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	60(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	16(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,28(%rsp)
+	leal	1859775393(%rax,%rsi,1),%edi
+	movl	32(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	40(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	0(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	20(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,32(%rsp)
+	leal	-1894007588(%rax,%rdx,1),%esi
+	movl	36(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%ebp,%ecx
+	xorl	44(%rsp),%eax
+	movl	%edi,%edx
+	andl	%r11d,%ebx
+	xorl	4(%rsp),%eax
+	orl	%r11d,%ecx
+	roll	$5,%edx
+	xorl	24(%rsp),%eax
+	andl	%r12d,%ecx
+	addl	%edx,%esi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%ebp
+	movl	%eax,36(%rsp)
+	addl	%ebx,%esi
+	leal	-1894007588(%rax,%r12,1),%edx
+	movl	40(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edi,%ecx
+	xorl	48(%rsp),%eax
+	movl	%esi,%r12d
+	andl	%ebp,%ebx
+	xorl	8(%rsp),%eax
+	orl	%ebp,%ecx
+	roll	$5,%r12d
+	xorl	28(%rsp),%eax
+	andl	%r11d,%ecx
+	addl	%r12d,%edx
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edi
+	movl	%eax,40(%rsp)
+	addl	%ebx,%edx
+	leal	-1894007588(%rax,%r11,1),%r12d
+	movl	44(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%esi,%ecx
+	xorl	52(%rsp),%eax
+	movl	%edx,%r11d
+	andl	%edi,%ebx
+	xorl	12(%rsp),%eax
+	orl	%edi,%ecx
+	roll	$5,%r11d
+	xorl	32(%rsp),%eax
+	andl	%ebp,%ecx
+	addl	%r11d,%r12d
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%esi
+	movl	%eax,44(%rsp)
+	addl	%ebx,%r12d
+	leal	-1894007588(%rax,%rbp,1),%r11d
+	movl	48(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%edx,%ecx
+	xorl	56(%rsp),%eax
+	movl	%r12d,%ebp
+	andl	%esi,%ebx
+	xorl	16(%rsp),%eax
+	orl	%esi,%ecx
+	roll	$5,%ebp
+	xorl	36(%rsp),%eax
+	andl	%edi,%ecx
+	addl	%ebp,%r11d
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edx
+	movl	%eax,48(%rsp)
+	addl	%ebx,%r11d
+	leal	-1894007588(%rax,%rdi,1),%ebp
+	movl	52(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%r12d,%ecx
+	xorl	60(%rsp),%eax
+	movl	%r11d,%edi
+	andl	%edx,%ebx
+	xorl	20(%rsp),%eax
+	orl	%edx,%ecx
+	roll	$5,%edi
+	xorl	40(%rsp),%eax
+	andl	%esi,%ecx
+	addl	%edi,%ebp
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%r12d
+	movl	%eax,52(%rsp)
+	addl	%ebx,%ebp
+	leal	-1894007588(%rax,%rsi,1),%edi
+	movl	56(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%r11d,%ecx
+	xorl	0(%rsp),%eax
+	movl	%ebp,%esi
+	andl	%r12d,%ebx
+	xorl	24(%rsp),%eax
+	orl	%r12d,%ecx
+	roll	$5,%esi
+	xorl	44(%rsp),%eax
+	andl	%edx,%ecx
+	addl	%esi,%edi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%r11d
+	movl	%eax,56(%rsp)
+	addl	%ebx,%edi
+	leal	-1894007588(%rax,%rdx,1),%esi
+	movl	60(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%ebp,%ecx
+	xorl	4(%rsp),%eax
+	movl	%edi,%edx
+	andl	%r11d,%ebx
+	xorl	28(%rsp),%eax
+	orl	%r11d,%ecx
+	roll	$5,%edx
+	xorl	48(%rsp),%eax
+	andl	%r12d,%ecx
+	addl	%edx,%esi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%ebp
+	movl	%eax,60(%rsp)
+	addl	%ebx,%esi
+	leal	-1894007588(%rax,%r12,1),%edx
+	movl	0(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edi,%ecx
+	xorl	8(%rsp),%eax
+	movl	%esi,%r12d
+	andl	%ebp,%ebx
+	xorl	32(%rsp),%eax
+	orl	%ebp,%ecx
+	roll	$5,%r12d
+	xorl	52(%rsp),%eax
+	andl	%r11d,%ecx
+	addl	%r12d,%edx
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edi
+	movl	%eax,0(%rsp)
+	addl	%ebx,%edx
+	leal	-1894007588(%rax,%r11,1),%r12d
+	movl	4(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%esi,%ecx
+	xorl	12(%rsp),%eax
+	movl	%edx,%r11d
+	andl	%edi,%ebx
+	xorl	36(%rsp),%eax
+	orl	%edi,%ecx
+	roll	$5,%r11d
+	xorl	56(%rsp),%eax
+	andl	%ebp,%ecx
+	addl	%r11d,%r12d
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%esi
+	movl	%eax,4(%rsp)
+	addl	%ebx,%r12d
+	leal	-1894007588(%rax,%rbp,1),%r11d
+	movl	8(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%edx,%ecx
+	xorl	16(%rsp),%eax
+	movl	%r12d,%ebp
+	andl	%esi,%ebx
+	xorl	40(%rsp),%eax
+	orl	%esi,%ecx
+	roll	$5,%ebp
+	xorl	60(%rsp),%eax
+	andl	%edi,%ecx
+	addl	%ebp,%r11d
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edx
+	movl	%eax,8(%rsp)
+	addl	%ebx,%r11d
+	leal	-1894007588(%rax,%rdi,1),%ebp
+	movl	12(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%r12d,%ecx
+	xorl	20(%rsp),%eax
+	movl	%r11d,%edi
+	andl	%edx,%ebx
+	xorl	44(%rsp),%eax
+	orl	%edx,%ecx
+	roll	$5,%edi
+	xorl	0(%rsp),%eax
+	andl	%esi,%ecx
+	addl	%edi,%ebp
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%r12d
+	movl	%eax,12(%rsp)
+	addl	%ebx,%ebp
+	leal	-1894007588(%rax,%rsi,1),%edi
+	movl	16(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%r11d,%ecx
+	xorl	24(%rsp),%eax
+	movl	%ebp,%esi
+	andl	%r12d,%ebx
+	xorl	48(%rsp),%eax
+	orl	%r12d,%ecx
+	roll	$5,%esi
+	xorl	4(%rsp),%eax
+	andl	%edx,%ecx
+	addl	%esi,%edi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%r11d
+	movl	%eax,16(%rsp)
+	addl	%ebx,%edi
+	leal	-1894007588(%rax,%rdx,1),%esi
+	movl	20(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%ebp,%ecx
+	xorl	28(%rsp),%eax
+	movl	%edi,%edx
+	andl	%r11d,%ebx
+	xorl	52(%rsp),%eax
+	orl	%r11d,%ecx
+	roll	$5,%edx
+	xorl	8(%rsp),%eax
+	andl	%r12d,%ecx
+	addl	%edx,%esi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%ebp
+	movl	%eax,20(%rsp)
+	addl	%ebx,%esi
+	leal	-1894007588(%rax,%r12,1),%edx
+	movl	24(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edi,%ecx
+	xorl	32(%rsp),%eax
+	movl	%esi,%r12d
+	andl	%ebp,%ebx
+	xorl	56(%rsp),%eax
+	orl	%ebp,%ecx
+	roll	$5,%r12d
+	xorl	12(%rsp),%eax
+	andl	%r11d,%ecx
+	addl	%r12d,%edx
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edi
+	movl	%eax,24(%rsp)
+	addl	%ebx,%edx
+	leal	-1894007588(%rax,%r11,1),%r12d
+	movl	28(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%esi,%ecx
+	xorl	36(%rsp),%eax
+	movl	%edx,%r11d
+	andl	%edi,%ebx
+	xorl	60(%rsp),%eax
+	orl	%edi,%ecx
+	roll	$5,%r11d
+	xorl	16(%rsp),%eax
+	andl	%ebp,%ecx
+	addl	%r11d,%r12d
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%esi
+	movl	%eax,28(%rsp)
+	addl	%ebx,%r12d
+	leal	-1894007588(%rax,%rbp,1),%r11d
+	movl	32(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%edx,%ecx
+	xorl	40(%rsp),%eax
+	movl	%r12d,%ebp
+	andl	%esi,%ebx
+	xorl	0(%rsp),%eax
+	orl	%esi,%ecx
+	roll	$5,%ebp
+	xorl	20(%rsp),%eax
+	andl	%edi,%ecx
+	addl	%ebp,%r11d
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edx
+	movl	%eax,32(%rsp)
+	addl	%ebx,%r11d
+	leal	-1894007588(%rax,%rdi,1),%ebp
+	movl	36(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%r12d,%ecx
+	xorl	44(%rsp),%eax
+	movl	%r11d,%edi
+	andl	%edx,%ebx
+	xorl	4(%rsp),%eax
+	orl	%edx,%ecx
+	roll	$5,%edi
+	xorl	24(%rsp),%eax
+	andl	%esi,%ecx
+	addl	%edi,%ebp
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%r12d
+	movl	%eax,36(%rsp)
+	addl	%ebx,%ebp
+	leal	-1894007588(%rax,%rsi,1),%edi
+	movl	40(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%r11d,%ecx
+	xorl	48(%rsp),%eax
+	movl	%ebp,%esi
+	andl	%r12d,%ebx
+	xorl	8(%rsp),%eax
+	orl	%r12d,%ecx
+	roll	$5,%esi
+	xorl	28(%rsp),%eax
+	andl	%edx,%ecx
+	addl	%esi,%edi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%r11d
+	movl	%eax,40(%rsp)
+	addl	%ebx,%edi
+	leal	-1894007588(%rax,%rdx,1),%esi
+	movl	44(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%ebp,%ecx
+	xorl	52(%rsp),%eax
+	movl	%edi,%edx
+	andl	%r11d,%ebx
+	xorl	12(%rsp),%eax
+	orl	%r11d,%ecx
+	roll	$5,%edx
+	xorl	32(%rsp),%eax
+	andl	%r12d,%ecx
+	addl	%edx,%esi
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%ebp
+	movl	%eax,44(%rsp)
+	addl	%ebx,%esi
+	leal	-1894007588(%rax,%r12,1),%edx
+	movl	48(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edi,%ecx
+	xorl	56(%rsp),%eax
+	movl	%esi,%r12d
+	andl	%ebp,%ebx
+	xorl	16(%rsp),%eax
+	orl	%ebp,%ecx
+	roll	$5,%r12d
+	xorl	36(%rsp),%eax
+	andl	%r11d,%ecx
+	addl	%r12d,%edx
+	roll	$1,%eax
+	orl	%ecx,%ebx
+	roll	$30,%edi
+	movl	%eax,48(%rsp)
+	addl	%ebx,%edx
+	leal	-899497514(%rax,%r11,1),%r12d
+	movl	52(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	60(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	20(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	40(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,52(%rsp)
+	leal	-899497514(%rax,%rbp,1),%r11d
+	movl	56(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	0(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	24(%rsp),%eax
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	xorl	44(%rsp),%eax
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,56(%rsp)
+	leal	-899497514(%rax,%rdi,1),%ebp
+	movl	60(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	4(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	28(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	48(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,60(%rsp)
+	leal	-899497514(%rax,%rsi,1),%edi
+	movl	0(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	8(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	32(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	52(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,0(%rsp)
+	leal	-899497514(%rax,%rdx,1),%esi
+	movl	4(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	12(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%edx
+	xorl	36(%rsp),%eax
+	xorl	%r12d,%ebx
+	addl	%edx,%esi
+	xorl	56(%rsp),%eax
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	movl	%eax,4(%rsp)
+	leal	-899497514(%rax,%r12,1),%edx
+	movl	8(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	16(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%r12d
+	xorl	40(%rsp),%eax
+	xorl	%r11d,%ebx
+	addl	%r12d,%edx
+	xorl	60(%rsp),%eax
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	movl	%eax,8(%rsp)
+	leal	-899497514(%rax,%r11,1),%r12d
+	movl	12(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	20(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	44(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	0(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,12(%rsp)
+	leal	-899497514(%rax,%rbp,1),%r11d
+	movl	16(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	24(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	48(%rsp),%eax
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	xorl	4(%rsp),%eax
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,16(%rsp)
+	leal	-899497514(%rax,%rdi,1),%ebp
+	movl	20(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	28(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	52(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	8(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,20(%rsp)
+	leal	-899497514(%rax,%rsi,1),%edi
+	movl	24(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	32(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	56(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	12(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,24(%rsp)
+	leal	-899497514(%rax,%rdx,1),%esi
+	movl	28(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	36(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%edx
+	xorl	60(%rsp),%eax
+	xorl	%r12d,%ebx
+	addl	%edx,%esi
+	xorl	16(%rsp),%eax
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	movl	%eax,28(%rsp)
+	leal	-899497514(%rax,%r12,1),%edx
+	movl	32(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	40(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%r12d
+	xorl	0(%rsp),%eax
+	xorl	%r11d,%ebx
+	addl	%r12d,%edx
+	xorl	20(%rsp),%eax
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	movl	%eax,32(%rsp)
+	leal	-899497514(%rax,%r11,1),%r12d
+	movl	36(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	44(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	4(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	24(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	movl	%eax,36(%rsp)
+	leal	-899497514(%rax,%rbp,1),%r11d
+	movl	40(%rsp),%eax
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	48(%rsp),%eax
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	8(%rsp),%eax
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	xorl	28(%rsp),%eax
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	roll	$1,%eax
+	movl	%eax,40(%rsp)
+	leal	-899497514(%rax,%rdi,1),%ebp
+	movl	44(%rsp),%eax
+	movl	%edx,%ebx
+	movl	%r11d,%edi
+	xorl	52(%rsp),%eax
+	xorl	%r12d,%ebx
+	roll	$5,%edi
+	xorl	12(%rsp),%eax
+	xorl	%esi,%ebx
+	addl	%edi,%ebp
+	xorl	32(%rsp),%eax
+	roll	$30,%r12d
+	addl	%ebx,%ebp
+	roll	$1,%eax
+	movl	%eax,44(%rsp)
+	leal	-899497514(%rax,%rsi,1),%edi
+	movl	48(%rsp),%eax
+	movl	%r12d,%ebx
+	movl	%ebp,%esi
+	xorl	56(%rsp),%eax
+	xorl	%r11d,%ebx
+	roll	$5,%esi
+	xorl	16(%rsp),%eax
+	xorl	%edx,%ebx
+	addl	%esi,%edi
+	xorl	36(%rsp),%eax
+	roll	$30,%r11d
+	addl	%ebx,%edi
+	roll	$1,%eax
+	movl	%eax,48(%rsp)
+	leal	-899497514(%rax,%rdx,1),%esi
+	movl	52(%rsp),%eax
+	movl	%r11d,%ebx
+	movl	%edi,%edx
+	xorl	60(%rsp),%eax
+	xorl	%ebp,%ebx
+	roll	$5,%edx
+	xorl	20(%rsp),%eax
+	xorl	%r12d,%ebx
+	addl	%edx,%esi
+	xorl	40(%rsp),%eax
+	roll	$30,%ebp
+	addl	%ebx,%esi
+	roll	$1,%eax
+	leal	-899497514(%rax,%r12,1),%edx
+	movl	56(%rsp),%eax
+	movl	%ebp,%ebx
+	movl	%esi,%r12d
+	xorl	0(%rsp),%eax
+	xorl	%edi,%ebx
+	roll	$5,%r12d
+	xorl	24(%rsp),%eax
+	xorl	%r11d,%ebx
+	addl	%r12d,%edx
+	xorl	44(%rsp),%eax
+	roll	$30,%edi
+	addl	%ebx,%edx
+	roll	$1,%eax
+	leal	-899497514(%rax,%r11,1),%r12d
+	movl	60(%rsp),%eax
+	movl	%edi,%ebx
+	movl	%edx,%r11d
+	xorl	4(%rsp),%eax
+	xorl	%esi,%ebx
+	roll	$5,%r11d
+	xorl	28(%rsp),%eax
+	xorl	%ebp,%ebx
+	addl	%r11d,%r12d
+	xorl	48(%rsp),%eax
+	roll	$30,%esi
+	addl	%ebx,%r12d
+	roll	$1,%eax
+	leal	-899497514(%rax,%rbp,1),%r11d
+	movl	%esi,%ebx
+	movl	%r12d,%ebp
+	xorl	%edx,%ebx
+	roll	$5,%ebp
+	xorl	%edi,%ebx
+	addl	%ebp,%r11d
+	roll	$30,%edx
+	addl	%ebx,%r11d
+	addl	0(%r8),%r11d
+	addl	4(%r8),%r12d
+	addl	8(%r8),%edx
+	addl	12(%r8),%esi
+	addl	16(%r8),%edi
+	movl	%r11d,0(%r8)
+	movl	%r12d,4(%r8)
+	movl	%edx,8(%r8)
+	movl	%esi,12(%r8)
+	movl	%edi,16(%r8)
+
+	xchgl	%r11d,%edx
+	xchgl	%r12d,%esi
+	xchgl	%r11d,%edi
+	xchgl	%r12d,%ebp
+
+	leaq	64(%r9),%r9
+	subq	$1,%r10
+	jnz	.Lloop
+	movq	64(%rsp),%rsi
+	movq	(%rsi),%r12
+	movq	8(%rsi),%rbp
+	movq	16(%rsi),%rbx
+	leaq	24(%rsi),%rsp
+.Lepilogue:
+	.byte	0xf3,0xc3
+.size	sha1_block_data_order,.-sha1_block_data_order
+.byte	83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,1=
09,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83=
,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,1=
14,103,62,0
+.align	16
Index: secure/lib/libcrypto/amd64/mont-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/mont-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/mont-amd64.s	(revision 0)
@@ -0,0 +1,171 @@
+.text=09
+
+.globl	bn_mul_mont
+.type	bn_mul_mont,@function
+.align	16
+bn_mul_mont:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+
+	movl	%r9d,%r9d
+	leaq	2(%r9),%r10
+	movq	%rsp,%r11
+	negq	%r10
+	leaq	(%rsp,%r10,8),%rsp
+	andq	$-1024,%rsp
+
+	movq	%r11,8(%rsp,%r9,8)
+.Lprologue:
+	movq	%rdx,%r12
+
+	movq	(%r8),%r8
+
+	xorq	%r14,%r14
+	xorq	%r15,%r15
+
+	movq	(%r12),%rbx
+	movq	(%rsi),%rax
+	mulq	%rbx
+	movq	%rax,%r10
+	movq	%rdx,%r11
+
+	imulq	%r8,%rax
+	movq	%rax,%rbp
+
+	mulq	(%rcx)
+	addq	%r10,%rax
+	adcq	$0,%rdx
+	movq	%rdx,%r13
+
+	leaq	1(%r15),%r15
+.L1st:
+	movq	(%rsi,%r15,8),%rax
+	mulq	%rbx
+	addq	%r11,%rax
+	adcq	$0,%rdx
+	movq	%rax,%r10
+	movq	(%rcx,%r15,8),%rax
+	movq	%rdx,%r11
+
+	mulq	%rbp
+	addq	%r13,%rax
+	leaq	1(%r15),%r15
+	adcq	$0,%rdx
+	addq	%r10,%rax
+	adcq	$0,%rdx
+	movq	%rax,-16(%rsp,%r15,8)
+	cmpq	%r9,%r15
+	movq	%rdx,%r13
+	jl	.L1st
+
+	xorq	%rdx,%rdx
+	addq	%r11,%r13
+	adcq	$0,%rdx
+	movq	%r13,-8(%rsp,%r9,8)
+	movq	%rdx,(%rsp,%r9,8)
+
+	leaq	1(%r14),%r14
+.align	4
+.Louter:
+	xorq	%r15,%r15
+
+	movq	(%r12,%r14,8),%rbx
+	movq	(%rsi),%rax
+	mulq	%rbx
+	addq	(%rsp),%rax
+	adcq	$0,%rdx
+	movq	%rax,%r10
+	movq	%rdx,%r11
+
+	imulq	%r8,%rax
+	movq	%rax,%rbp
+
+	mulq	(%rcx,%r15,8)
+	addq	%r10,%rax
+	movq	8(%rsp),%r10
+	adcq	$0,%rdx
+	movq	%rdx,%r13
+
+	leaq	1(%r15),%r15
+.align	4
+.Linner:
+	movq	(%rsi,%r15,8),%rax
+	mulq	%rbx
+	addq	%r11,%rax
+	adcq	$0,%rdx
+	addq	%rax,%r10
+	movq	(%rcx,%r15,8),%rax
+	adcq	$0,%rdx
+	movq	%rdx,%r11
+
+	mulq	%rbp
+	addq	%r13,%rax
+	leaq	1(%r15),%r15
+	adcq	$0,%rdx
+	addq	%r10,%rax
+	adcq	$0,%rdx
+	movq	(%rsp,%r15,8),%r10
+	cmpq	%r9,%r15
+	movq	%rax,-16(%rsp,%r15,8)
+	movq	%rdx,%r13
+	jl	.Linner
+
+	xorq	%rdx,%rdx
+	addq	%r11,%r13
+	adcq	$0,%rdx
+	addq	%r10,%r13
+	adcq	$0,%rdx
+	movq	%r13,-8(%rsp,%r9,8)
+	movq	%rdx,(%rsp,%r9,8)
+
+	leaq	1(%r14),%r14
+	cmpq	%r9,%r14
+	jl	.Louter
+
+	leaq	(%rsp),%rsi
+	leaq	-1(%r9),%r15
+
+	movq	(%rsi),%rax
+	xorq	%r14,%r14
+	jmp	.Lsub
+.align	16
+.Lsub:	sbbq	(%rcx,%r14,8),%rax
+	movq	%rax,(%rdi,%r14,8)
+	decq	%r15
+	movq	8(%rsi,%r14,8),%rax
+	leaq	1(%r14),%r14
+	jge	.Lsub
+
+	sbbq	$0,%rax
+	andq	%rax,%rsi
+	notq	%rax
+	movq	%rdi,%rcx
+	andq	%rax,%rcx
+	leaq	-1(%r9),%r15
+	orq	%rcx,%rsi
+.align	16
+.Lcopy:
+	movq	(%rsi,%r15,8),%rax
+	movq	%rax,(%rdi,%r15,8)
+	movq	%r14,(%rsp,%r15,8)
+	decq	%r15
+	jge	.Lcopy
+
+	movq	8(%rsp,%r9,8),%rsi
+	movq	$1,%rax
+	movq	(%rsi),%r15
+	movq	8(%rsi),%r14
+	movq	16(%rsi),%r13
+	movq	24(%rsi),%r12
+	movq	32(%rsi),%rbp
+	movq	40(%rsi),%rbx
+	leaq	48(%rsi),%rsp
+.Lepilogue:
+	.byte	0xf3,0xc3
+.size	bn_mul_mont,.-bn_mul_mont
+.byte	77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108=
,105,99,97,116,105,111,110,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82=
,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,=
110,115,115,108,46,111,114,103,62,0
+.align	16
Index: secure/lib/libcrypto/amd64/whirlpool-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/whirlpool-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/whirlpool-amd64.s	(revision 0)
@@ -0,0 +1,858 @@
+.text=09
+
+.globl	whirlpool_block
+.type	whirlpool_block,@function
+.align	16
+whirlpool_block:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+
+	movq	%rsp,%r11
+	subq	$128+40,%rsp
+	andq	$-64,%rsp
+
+	leaq	128(%rsp),%r10
+	movq	%rdi,0(%r10)
+	movq	%rsi,8(%r10)
+	movq	%rdx,16(%r10)
+	movq	%r11,32(%r10)
+.Lprologue:
+
+	movq	%r10,%rbx
+	leaq	.Ltable(%rip),%rbp
+
+	xorq	%rcx,%rcx
+	xorq	%rdx,%rdx
+	movq	0(%rdi),%r8
+	movq	8(%rdi),%r9
+	movq	16(%rdi),%r10
+	movq	24(%rdi),%r11
+	movq	32(%rdi),%r12
+	movq	40(%rdi),%r13
+	movq	48(%rdi),%r14
+	movq	56(%rdi),%r15
+.Louterloop:
+	movq	%r8,0(%rsp)
+	movq	%r9,8(%rsp)
+	movq	%r10,16(%rsp)
+	movq	%r11,24(%rsp)
+	movq	%r12,32(%rsp)
+	movq	%r13,40(%rsp)
+	movq	%r14,48(%rsp)
+	movq	%r15,56(%rsp)
+	xorq	0(%rsi),%r8
+	xorq	8(%rsi),%r9
+	xorq	16(%rsi),%r10
+	xorq	24(%rsi),%r11
+	xorq	32(%rsi),%r12
+	xorq	40(%rsi),%r13
+	xorq	48(%rsi),%r14
+	xorq	56(%rsi),%r15
+	movq	%r8,64+0(%rsp)
+	movq	%r9,64+8(%rsp)
+	movq	%r10,64+16(%rsp)
+	movq	%r11,64+24(%rsp)
+	movq	%r12,64+32(%rsp)
+	movq	%r13,64+40(%rsp)
+	movq	%r14,64+48(%rsp)
+	movq	%r15,64+56(%rsp)
+	xorq	%rsi,%rsi
+	movq	%rsi,24(%rbx)
+.align	16
+.Lround:
+	movq	4096(%rbp,%rsi,8),%r8
+	movl	0(%rsp),%eax
+	movl	4(%rsp),%ebx
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r8
+	movq	7(%rbp,%rdi,8),%r9
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	0+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	movq	6(%rbp,%rsi,8),%r10
+	movq	5(%rbp,%rdi,8),%r11
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	movq	4(%rbp,%rsi,8),%r12
+	movq	3(%rbp,%rdi,8),%r13
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	0+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	movq	2(%rbp,%rsi,8),%r14
+	movq	1(%rbp,%rdi,8),%r15
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r9
+	xorq	7(%rbp,%rdi,8),%r10
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	8+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r11
+	xorq	5(%rbp,%rdi,8),%r12
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r13
+	xorq	3(%rbp,%rdi,8),%r14
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	8+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r15
+	xorq	1(%rbp,%rdi,8),%r8
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r10
+	xorq	7(%rbp,%rdi,8),%r11
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	16+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r12
+	xorq	5(%rbp,%rdi,8),%r13
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r14
+	xorq	3(%rbp,%rdi,8),%r15
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	16+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r8
+	xorq	1(%rbp,%rdi,8),%r9
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r11
+	xorq	7(%rbp,%rdi,8),%r12
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	24+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r13
+	xorq	5(%rbp,%rdi,8),%r14
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r15
+	xorq	3(%rbp,%rdi,8),%r8
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	24+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r9
+	xorq	1(%rbp,%rdi,8),%r10
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r12
+	xorq	7(%rbp,%rdi,8),%r13
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	32+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r14
+	xorq	5(%rbp,%rdi,8),%r15
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r8
+	xorq	3(%rbp,%rdi,8),%r9
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	32+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r10
+	xorq	1(%rbp,%rdi,8),%r11
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r13
+	xorq	7(%rbp,%rdi,8),%r14
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	40+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r15
+	xorq	5(%rbp,%rdi,8),%r8
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r9
+	xorq	3(%rbp,%rdi,8),%r10
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	40+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r11
+	xorq	1(%rbp,%rdi,8),%r12
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r14
+	xorq	7(%rbp,%rdi,8),%r15
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	48+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r8
+	xorq	5(%rbp,%rdi,8),%r9
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r10
+	xorq	3(%rbp,%rdi,8),%r11
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	48+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r12
+	xorq	1(%rbp,%rdi,8),%r13
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r15
+	xorq	7(%rbp,%rdi,8),%r8
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	56+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r9
+	xorq	5(%rbp,%rdi,8),%r10
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r11
+	xorq	3(%rbp,%rdi,8),%r12
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	56+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r13
+	xorq	1(%rbp,%rdi,8),%r14
+	movq	%r8,0(%rsp)
+	movq	%r9,8(%rsp)
+	movq	%r10,16(%rsp)
+	movq	%r11,24(%rsp)
+	movq	%r12,32(%rsp)
+	movq	%r13,40(%rsp)
+	movq	%r14,48(%rsp)
+	movq	%r15,56(%rsp)
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r8
+	xorq	7(%rbp,%rdi,8),%r9
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+0+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r10
+	xorq	5(%rbp,%rdi,8),%r11
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r12
+	xorq	3(%rbp,%rdi,8),%r13
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+0+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r14
+	xorq	1(%rbp,%rdi,8),%r15
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r9
+	xorq	7(%rbp,%rdi,8),%r10
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+8+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r11
+	xorq	5(%rbp,%rdi,8),%r12
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r13
+	xorq	3(%rbp,%rdi,8),%r14
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+8+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r15
+	xorq	1(%rbp,%rdi,8),%r8
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r10
+	xorq	7(%rbp,%rdi,8),%r11
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+16+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r12
+	xorq	5(%rbp,%rdi,8),%r13
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r14
+	xorq	3(%rbp,%rdi,8),%r15
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+16+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r8
+	xorq	1(%rbp,%rdi,8),%r9
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r11
+	xorq	7(%rbp,%rdi,8),%r12
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+24+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r13
+	xorq	5(%rbp,%rdi,8),%r14
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r15
+	xorq	3(%rbp,%rdi,8),%r8
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+24+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r9
+	xorq	1(%rbp,%rdi,8),%r10
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r12
+	xorq	7(%rbp,%rdi,8),%r13
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+32+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r14
+	xorq	5(%rbp,%rdi,8),%r15
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r8
+	xorq	3(%rbp,%rdi,8),%r9
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+32+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r10
+	xorq	1(%rbp,%rdi,8),%r11
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r13
+	xorq	7(%rbp,%rdi,8),%r14
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+40+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r15
+	xorq	5(%rbp,%rdi,8),%r8
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r9
+	xorq	3(%rbp,%rdi,8),%r10
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+40+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r11
+	xorq	1(%rbp,%rdi,8),%r12
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r14
+	xorq	7(%rbp,%rdi,8),%r15
+	movb	%al,%cl
+	movb	%ah,%dl
+	movl	64+48+8(%rsp),%eax
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r8
+	xorq	5(%rbp,%rdi,8),%r9
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r10
+	xorq	3(%rbp,%rdi,8),%r11
+	movb	%bl,%cl
+	movb	%bh,%dl
+	movl	64+48+8+4(%rsp),%ebx
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r12
+	xorq	1(%rbp,%rdi,8),%r13
+	movb	%al,%cl
+	movb	%ah,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%eax
+	xorq	0(%rbp,%rsi,8),%r15
+	xorq	7(%rbp,%rdi,8),%r8
+	movb	%al,%cl
+	movb	%ah,%dl
+
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	6(%rbp,%rsi,8),%r9
+	xorq	5(%rbp,%rdi,8),%r10
+	movb	%bl,%cl
+	movb	%bh,%dl
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	shrl	$16,%ebx
+	xorq	4(%rbp,%rsi,8),%r11
+	xorq	3(%rbp,%rdi,8),%r12
+	movb	%bl,%cl
+	movb	%bh,%dl
+
+	leaq	(%rcx,%rcx,1),%rsi
+	leaq	(%rdx,%rdx,1),%rdi
+	xorq	2(%rbp,%rsi,8),%r13
+	xorq	1(%rbp,%rdi,8),%r14
+	leaq	128(%rsp),%rbx
+	movq	24(%rbx),%rsi
+	addq	$1,%rsi
+	cmpq	$10,%rsi
+	je	.Lroundsdone
+
+	movq	%rsi,24(%rbx)
+	movq	%r8,64+0(%rsp)
+	movq	%r9,64+8(%rsp)
+	movq	%r10,64+16(%rsp)
+	movq	%r11,64+24(%rsp)
+	movq	%r12,64+32(%rsp)
+	movq	%r13,64+40(%rsp)
+	movq	%r14,64+48(%rsp)
+	movq	%r15,64+56(%rsp)
+	jmp	.Lround
+.align	16
+.Lroundsdone:
+	movq	0(%rbx),%rdi
+	movq	8(%rbx),%rsi
+	movq	16(%rbx),%rax
+	xorq	0(%rsi),%r8
+	xorq	8(%rsi),%r9
+	xorq	16(%rsi),%r10
+	xorq	24(%rsi),%r11
+	xorq	32(%rsi),%r12
+	xorq	40(%rsi),%r13
+	xorq	48(%rsi),%r14
+	xorq	56(%rsi),%r15
+	xorq	0(%rdi),%r8
+	xorq	8(%rdi),%r9
+	xorq	16(%rdi),%r10
+	xorq	24(%rdi),%r11
+	xorq	32(%rdi),%r12
+	xorq	40(%rdi),%r13
+	xorq	48(%rdi),%r14
+	xorq	56(%rdi),%r15
+	movq	%r8,0(%rdi)
+	movq	%r9,8(%rdi)
+	movq	%r10,16(%rdi)
+	movq	%r11,24(%rdi)
+	movq	%r12,32(%rdi)
+	movq	%r13,40(%rdi)
+	movq	%r14,48(%rdi)
+	movq	%r15,56(%rdi)
+	leaq	64(%rsi),%rsi
+	subq	$1,%rax
+	jz	.Lalldone
+	movq	%rsi,8(%rbx)
+	movq	%rax,16(%rbx)
+	jmp	.Louterloop
+.Lalldone:
+	movq	32(%rbx),%rsi
+	movq	(%rsi),%r15
+	movq	8(%rsi),%r14
+	movq	16(%rsi),%r13
+	movq	24(%rsi),%r12
+	movq	32(%rsi),%rbp
+	movq	40(%rsi),%rbx
+	leaq	48(%rsi),%rsp
+.Lepilogue:
+	.byte	0xf3,0xc3
+.size	whirlpool_block,.-whirlpool_block
+
+.align	64
+.type	.Ltable,@object
+.Ltable:
+.byte	24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216
+.byte	35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38
+.byte	198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184
+.byte	232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251
+.byte	135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203
+.byte	184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17
+.byte	1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9
+.byte	79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13
+.byte	54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155
+.byte	166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255
+.byte	210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12
+.byte	245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14
+.byte	121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150
+.byte	111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48
+.byte	145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109
+.byte	82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248
+.byte	96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71
+.byte	188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53
+.byte	155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55
+.byte	142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138
+.byte	163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210
+.byte	12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108
+.byte	123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132
+.byte	53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128
+.byte	29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245
+.byte	224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179
+.byte	215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33
+.byte	194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156
+.byte	46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67
+.byte	75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41
+.byte	254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93
+.byte	87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213
+.byte	21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189
+.byte	119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232
+.byte	55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146
+.byte	229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158
+.byte	159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19
+.byte	240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35
+.byte	74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32
+.byte	218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68
+.byte	88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162
+.byte	201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207
+.byte	41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124
+.byte	10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90
+.byte	177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80
+.byte	160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201
+.byte	107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20
+.byte	133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217
+.byte	189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60
+.byte	93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143
+.byte	16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144
+.byte	244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7
+.byte	203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221
+.byte	62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211
+.byte	5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45
+.byte	103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120
+.byte	228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151
+.byte	39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2
+.byte	65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115
+.byte	139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167
+.byte	167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246
+.byte	125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178
+.byte	149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73
+.byte	216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86
+.byte	251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112
+.byte	238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205
+.byte	124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187
+.byte	102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113
+.byte	221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123
+.byte	23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175
+.byte	71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69
+.byte	158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26
+.byte	202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212
+.byte	45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88
+.byte	191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46
+.byte	7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63
+.byte	173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172
+.byte	90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176
+.byte	131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239
+.byte	51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182
+.byte	99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92
+.byte	2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18
+.byte	170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147
+.byte	113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222
+.byte	200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198
+.byte	25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209
+.byte	73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59
+.byte	217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95
+.byte	242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49
+.byte	227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168
+.byte	91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185
+.byte	136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188
+.byte	154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62
+.byte	38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11
+.byte	50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191
+.byte	176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89
+.byte	233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242
+.byte	15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119
+.byte	213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51
+.byte	128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244
+.byte	190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39
+.byte	205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235
+.byte	52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137
+.byte	72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50
+.byte	255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84
+.byte	122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141
+.byte	144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100
+.byte	95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157
+.byte	32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61
+.byte	104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15
+.byte	26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202
+.byte	174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183
+.byte	180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125
+.byte	84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206
+.byte	147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127
+.byte	34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47
+.byte	100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99
+.byte	241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42
+.byte	115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204
+.byte	18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130
+.byte	64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122
+.byte	8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72
+.byte	195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149
+.byte	236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223
+.byte	219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77
+.byte	161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192
+.byte	141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145
+.byte	61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200
+.byte	151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91
+.byte	0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+.byte	207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249
+.byte	43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110
+.byte	118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225
+.byte	130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230
+.byte	214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40
+.byte	27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195
+.byte	181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116
+.byte	175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190
+.byte	106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29
+.byte	80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234
+.byte	69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87
+.byte	243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56
+.byte	48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173
+.byte	239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196
+.byte	63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218
+.byte	85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199
+.byte	162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219
+.byte	234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233
+.byte	101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106
+.byte	186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3
+.byte	47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74
+.byte	192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142
+.byte	222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96
+.byte	28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252
+.byte	253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70
+.byte	77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31
+.byte	146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118
+.byte	117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250
+.byte	6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54
+.byte	138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174
+.byte	178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75
+.byte	230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133
+.byte	14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126
+.byte	31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231
+.byte	98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85
+.byte	212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58
+.byte	168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129
+.byte	150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82
+.byte	249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98
+.byte	197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163
+.byte	37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16
+.byte	89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171
+.byte	132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208
+.byte	114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197
+.byte	57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236
+.byte	76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22
+.byte	94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148
+.byte	120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159
+.byte	56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229
+.byte	140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152
+.byte	209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23
+.byte	165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228
+.byte	226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161
+.byte	97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78
+.byte	179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66
+.byte	33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52
+.byte	156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8
+.byte	30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238
+.byte	67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97
+.byte	199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177
+.byte	252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79
+.byte	4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36
+.byte	81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227
+.byte	153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37
+.byte	109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34
+.byte	13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101
+.byte	250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121
+.byte	223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105
+.byte	126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169
+.byte	36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25
+.byte	59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254
+.byte	171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154
+.byte	206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240
+.byte	17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153
+.byte	143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131
+.byte	78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4
+.byte	183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102
+.byte	235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224
+.byte	60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193
+.byte	129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253
+.byte	148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64
+.byte	247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28
+.byte	185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24
+.byte	19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139
+.byte	44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81
+.byte	211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5
+.byte	231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140
+.byte	110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57
+.byte	196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170
+.byte	3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27
+.byte	86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220
+.byte	68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94
+.byte	127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160
+.byte	169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136
+.byte	42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103
+.byte	187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10
+.byte	193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135
+.byte	83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241
+.byte	220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114
+.byte	11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83
+.byte	157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1
+.byte	108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43
+.byte	49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164
+.byte	116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243
+.byte	246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21
+.byte	70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76
+.byte	172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165
+.byte	137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181
+.byte	20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180
+.byte	225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186
+.byte	22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166
+.byte	58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247
+.byte	105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6
+.byte	9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65
+.byte	112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215
+.byte	182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111
+.byte	208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30
+.byte	237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214
+.byte	204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226
+.byte	66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104
+.byte	152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44
+.byte	164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237
+.byte	40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117
+.byte	92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134
+.byte	248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107
+.byte	134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194
+.byte	24,35,198,232,135,184,1,79
+.byte	54,166,210,245,121,111,145,82
+.byte	96,188,155,142,163,12,123,53
+.byte	29,224,215,194,46,75,254,87
+.byte	21,119,55,229,159,240,74,218
+.byte	88,201,41,10,177,160,107,133
+.byte	189,93,16,244,203,62,5,103
+.byte	228,39,65,139,167,125,149,216
+.byte	251,238,124,102,221,23,71,158
+.byte	202,45,191,7,173,90,131,51
Index: secure/lib/libcrypto/amd64/bn-amd64.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/bn-amd64.c	(revision 0)
+++ secure/lib/libcrypto/amd64/bn-amd64.c	(revision 0)
@@ -0,0 +1,606 @@
+#include "bn/bn_lcl.h"
+#if !(defined(__GNUC__) && __GNUC__>=3D2)
+# include "bn/bn_asm.c"	/* kind of dirty hack for Sun Studio */
+#else
+/*
+ * x86_64 BIGNUM accelerator version 0.1, December 2002.
+ *
+ * Implemented by Andy Polyakov <appro@fy.chalmers.se> for the OpenSSL
+ * project.
+ *
+ * Rights for redistribution and usage in source and binary forms are
+ * granted according to the OpenSSL license. Warranty of any kind is
+ * disclaimed.
+ *
+ * Q. Version 0.1? It doesn't sound like Andy, he used to assign real
+ *    versions, like 1.0...
+ * A. Well, that's because this code is basically a quick-n-dirty
+ *    proof-of-concept hack. As you can see it's implemented with
+ *    inline assembler, which means that you're bound to GCC and that
+ *    there might be enough room for further improvement.
+ *
+ * Q. Why inline assembler?
+ * A. x86_64 features own ABI which I'm not familiar with. This is
+ *    why I decided to let the compiler take care of subroutine
+ *    prologue/epilogue as well as register allocation. For reference.
+ *    Win64 implements different ABI for AMD64, different from Linux.
+ *
+ * Q. How much faster does it get?
+ * A. 'apps/openssl speed rsa dsa' output with no-asm:
+ *
+ *	                  sign    verify    sign/s verify/s
+ *	rsa  512 bits   0.0006s   0.0001s   1683.8  18456.2
+ *	rsa 1024 bits   0.0028s   0.0002s    356.0   6407.0
+ *	rsa 2048 bits   0.0172s   0.0005s     58.0   1957.8
+ *	rsa 4096 bits   0.1155s   0.0018s      8.7    555.6
+ *	                  sign    verify    sign/s verify/s
+ *	dsa  512 bits   0.0005s   0.0006s   2100.8   1768.3
+ *	dsa 1024 bits   0.0014s   0.0018s    692.3    559.2
+ *	dsa 2048 bits   0.0049s   0.0061s    204.7    165.0
+ *
+ *    'apps/openssl speed rsa dsa' output with this module:
+ *
+ *	                  sign    verify    sign/s verify/s
+ *	rsa  512 bits   0.0004s   0.0000s   2767.1  33297.9
+ *	rsa 1024 bits   0.0012s   0.0001s    867.4  14674.7
+ *	rsa 2048 bits   0.0061s   0.0002s    164.0   5270.0
+ *	rsa 4096 bits   0.0384s   0.0006s     26.1   1650.8
+ *	                  sign    verify    sign/s verify/s
+ *	dsa  512 bits   0.0002s   0.0003s   4442.2   3786.3
+ *	dsa 1024 bits   0.0005s   0.0007s   1835.1   1497.4
+ *	dsa 2048 bits   0.0016s   0.0020s    620.4    504.6
+ *
+ *    For the reference. IA-32 assembler implementation performs
+ *    very much like 64-bit code compiled with no-asm on the same
+ *    machine.
+ */
+
+#ifdef _WIN64
+#define BN_ULONG unsigned long long
+#else
+#define BN_ULONG unsigned long
+#endif
+
+#undef mul
+#undef mul_add
+#undef sqr
+
+/*
+ * "m"(a), "+m"(r)	is the way to favor DirectPath =B5-code;
+ * "g"(0)		let the compiler to decide where does it
+ *			want to keep the value of zero;
+ */
+#define mul_add(r,a,word,carry) do {	\
+	register BN_ULONG high,low;	\
+	asm ("mulq %3"			\
+		: "=3Da"(low),"=3Dd"(high)	\
+		: "a"(word),"m"(a)	\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(carry),"+d"(high)\
+		: "a"(low),"g"(0)	\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+m"(r),"+d"(high)	\
+		: "r"(carry),"g"(0)	\
+		: "cc");		\
+	carry=3Dhigh;			\
+	} while (0)
+
+#define mul(r,a,word,carry) do {	\
+	register BN_ULONG high,low;	\
+	asm ("mulq %3"			\
+		: "=3Da"(low),"=3Dd"(high)	\
+		: "a"(word),"g"(a)	\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(carry),"+d"(high)\
+		: "a"(low),"g"(0)	\
+		: "cc");		\
+	(r)=3Dcarry, carry=3Dhigh;		\
+	} while (0)
+
+#define sqr(r0,r1,a)			\
+	asm ("mulq %2"			\
+		: "=3Da"(r0),"=3Dd"(r1)	\
+		: "a"(a)		\
+		: "cc");
+
+BN_ULONG bn_mul_add_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_UL=
ONG w)
+	{
+	BN_ULONG c1=3D0;
+
+	if (num <=3D 0) return(c1);
+
+	while (num&~3)
+		{
+		mul_add(rp[0],ap[0],w,c1);
+		mul_add(rp[1],ap[1],w,c1);
+		mul_add(rp[2],ap[2],w,c1);
+		mul_add(rp[3],ap[3],w,c1);
+		ap+=3D4; rp+=3D4; num-=3D4;
+		}
+	if (num)
+		{
+		mul_add(rp[0],ap[0],w,c1); if (--num=3D=3D0) return c1;
+		mul_add(rp[1],ap[1],w,c1); if (--num=3D=3D0) return c1;
+		mul_add(rp[2],ap[2],w,c1); return c1;
+		}
+=09
+	return(c1);
+	}=20
+
+BN_ULONG bn_mul_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG =
w)
+	{
+	BN_ULONG c1=3D0;
+
+	if (num <=3D 0) return(c1);
+
+	while (num&~3)
+		{
+		mul(rp[0],ap[0],w,c1);
+		mul(rp[1],ap[1],w,c1);
+		mul(rp[2],ap[2],w,c1);
+		mul(rp[3],ap[3],w,c1);
+		ap+=3D4; rp+=3D4; num-=3D4;
+		}
+	if (num)
+		{
+		mul(rp[0],ap[0],w,c1); if (--num =3D=3D 0) return c1;
+		mul(rp[1],ap[1],w,c1); if (--num =3D=3D 0) return c1;
+		mul(rp[2],ap[2],w,c1);
+		}
+	return(c1);
+	}=20
+
+void bn_sqr_words(BN_ULONG *r, const BN_ULONG *a, int n)
+        {
+	if (n <=3D 0) return;
+
+	while (n&~3)
+		{
+		sqr(r[0],r[1],a[0]);
+		sqr(r[2],r[3],a[1]);
+		sqr(r[4],r[5],a[2]);
+		sqr(r[6],r[7],a[3]);
+		a+=3D4; r+=3D8; n-=3D4;
+		}
+	if (n)
+		{
+		sqr(r[0],r[1],a[0]); if (--n =3D=3D 0) return;
+		sqr(r[2],r[3],a[1]); if (--n =3D=3D 0) return;
+		sqr(r[4],r[5],a[2]);
+		}
+	}
+
+BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d)
+{	BN_ULONG ret,waste;
+
+	asm ("divq	%4"
+		: "=3Da"(ret),"=3Dd"(waste)
+		: "a"(l),"d"(h),"g"(d)
+		: "cc");
+
+	return ret;
+}
+
+BN_ULONG bn_add_words (BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *b=
p,int n)
+{ BN_ULONG ret=3D0,i=3D0;
+
+	if (n <=3D 0) return 0;
+
+	asm (
+	"	subq	%2,%2		\n"
+	".p2align 4			\n"
+	"1:	movq	(%4,%2,8),%0	\n"
+	"	adcq	(%5,%2,8),%0	\n"
+	"	movq	%0,(%3,%2,8)	\n"
+	"	leaq	1(%2),%2	\n"
+	"	loop	1b		\n"
+	"	sbbq	%0,%0		\n"
+		: "=3D&a"(ret),"+c"(n),"=3D&r"(i)
+		: "r"(rp),"r"(ap),"r"(bp)
+		: "cc"
+	);
+
+  return ret&1;
+}
+
+#ifndef SIMICS
+BN_ULONG bn_sub_words (BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *b=
p,int n)
+{ BN_ULONG ret=3D0,i=3D0;
+
+	if (n <=3D 0) return 0;
+
+	asm (
+	"	subq	%2,%2		\n"
+	".p2align 4			\n"
+	"1:	movq	(%4,%2,8),%0	\n"
+	"	sbbq	(%5,%2,8),%0	\n"
+	"	movq	%0,(%3,%2,8)	\n"
+	"	leaq	1(%2),%2	\n"
+	"	loop	1b		\n"
+	"	sbbq	%0,%0		\n"
+		: "=3D&a"(ret),"+c"(n),"=3D&r"(i)
+		: "r"(rp),"r"(ap),"r"(bp)
+		: "cc"
+	);
+
+  return ret&1;
+}
+#else
+/* Simics 1.4<7 has buggy sbbq:-( */
+#define BN_MASK2 0xffffffffffffffffL
+BN_ULONG bn_sub_words(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n)
+        {
+	BN_ULONG t1,t2;
+	int c=3D0;
+
+	if (n <=3D 0) return((BN_ULONG)0);
+
+	for (;;)
+		{
+		t1=3Da[0]; t2=3Db[0];
+		r[0]=3D(t1-t2-c)&BN_MASK2;
+		if (t1 !=3D t2) c=3D(t1 < t2);
+		if (--n <=3D 0) break;
+
+		t1=3Da[1]; t2=3Db[1];
+		r[1]=3D(t1-t2-c)&BN_MASK2;
+		if (t1 !=3D t2) c=3D(t1 < t2);
+		if (--n <=3D 0) break;
+
+		t1=3Da[2]; t2=3Db[2];
+		r[2]=3D(t1-t2-c)&BN_MASK2;
+		if (t1 !=3D t2) c=3D(t1 < t2);
+		if (--n <=3D 0) break;
+
+		t1=3Da[3]; t2=3Db[3];
+		r[3]=3D(t1-t2-c)&BN_MASK2;
+		if (t1 !=3D t2) c=3D(t1 < t2);
+		if (--n <=3D 0) break;
+
+		a+=3D4;
+		b+=3D4;
+		r+=3D4;
+		}
+	return(c);
+	}
+#endif
+
+/* mul_add_c(a,b,c0,c1,c2)  -- c+=3Da*b for three word number c=3D(c2,c1,c=
0) */
+/* mul_add_c2(a,b,c0,c1,c2) -- c+=3D2*a*b for three word number c=3D(c2,c1=
,c0) */
+/* sqr_add_c(a,i,c0,c1,c2)  -- c+=3Da[i]^2 for three word number c=3D(c2,c=
1,c0) */
+/* sqr_add_c2(a,i,c0,c1,c2) -- c+=3D2*a[i]*a[j] for three word number c=3D=
(c2,c1,c0) */
+
+#if 0
+/* original macros are kept for reference purposes */
+#define mul_add_c(a,b,c0,c1,c2) {	\
+	BN_ULONG ta=3D(a),tb=3D(b);		\
+	t1 =3D ta * tb;			\
+	t2 =3D BN_UMULT_HIGH(ta,tb);	\
+	c0 +=3D t1; t2 +=3D (c0<t1)?1:0;	\
+	c1 +=3D t2; c2 +=3D (c1<t2)?1:0;	\
+	}
+
+#define mul_add_c2(a,b,c0,c1,c2) {	\
+	BN_ULONG ta=3D(a),tb=3D(b),t0;	\
+	t1 =3D BN_UMULT_HIGH(ta,tb);	\
+	t0 =3D ta * tb;			\
+	t2 =3D t1+t1; c2 +=3D (t2<t1)?1:0;	\
+	t1 =3D t0+t0; t2 +=3D (t1<t0)?1:0;	\
+	c0 +=3D t1; t2 +=3D (c0<t1)?1:0;	\
+	c1 +=3D t2; c2 +=3D (c1<t2)?1:0;	\
+	}
+#else
+#define mul_add_c(a,b,c0,c1,c2)	do {	\
+	asm ("mulq %3"			\
+		: "=3Da"(t1),"=3Dd"(t2)	\
+		: "a"(a),"m"(b)		\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(c0),"+d"(t2)	\
+		: "a"(t1),"g"(0)	\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(c1),"+r"(c2)	\
+		: "d"(t2),"g"(0)	\
+		: "cc");		\
+	} while (0)
+
+#define sqr_add_c(a,i,c0,c1,c2)	do {	\
+	asm ("mulq %2"			\
+		: "=3Da"(t1),"=3Dd"(t2)	\
+		: "a"(a[i])		\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(c0),"+d"(t2)	\
+		: "a"(t1),"g"(0)	\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(c1),"+r"(c2)	\
+		: "d"(t2),"g"(0)	\
+		: "cc");		\
+	} while (0)
+
+#define mul_add_c2(a,b,c0,c1,c2) do {	\
+	asm ("mulq %3"			\
+		: "=3Da"(t1),"=3Dd"(t2)	\
+		: "a"(a),"m"(b)		\
+		: "cc");		\
+	asm ("addq %0,%0; adcq %2,%1"	\
+		: "+d"(t2),"+r"(c2)	\
+		: "g"(0)		\
+		: "cc");		\
+	asm ("addq %0,%0; adcq %2,%1"	\
+		: "+a"(t1),"+d"(t2)	\
+		: "g"(0)		\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(c0),"+d"(t2)	\
+		: "a"(t1),"g"(0)	\
+		: "cc");		\
+	asm ("addq %2,%0; adcq %3,%1"	\
+		: "+r"(c1),"+r"(c2)	\
+		: "d"(t2),"g"(0)	\
+		: "cc");		\
+	} while (0)
+#endif
+
+#define sqr_add_c2(a,i,j,c0,c1,c2)	\
+	mul_add_c2((a)[i],(a)[j],c0,c1,c2)
+
+void bn_mul_comba8(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b)
+	{
+	BN_ULONG t1,t2;
+	BN_ULONG c1,c2,c3;
+
+	c1=3D0;
+	c2=3D0;
+	c3=3D0;
+	mul_add_c(a[0],b[0],c1,c2,c3);
+	r[0]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[0],b[1],c2,c3,c1);
+	mul_add_c(a[1],b[0],c2,c3,c1);
+	r[1]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[2],b[0],c3,c1,c2);
+	mul_add_c(a[1],b[1],c3,c1,c2);
+	mul_add_c(a[0],b[2],c3,c1,c2);
+	r[2]=3Dc3;
+	c3=3D0;
+	mul_add_c(a[0],b[3],c1,c2,c3);
+	mul_add_c(a[1],b[2],c1,c2,c3);
+	mul_add_c(a[2],b[1],c1,c2,c3);
+	mul_add_c(a[3],b[0],c1,c2,c3);
+	r[3]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[4],b[0],c2,c3,c1);
+	mul_add_c(a[3],b[1],c2,c3,c1);
+	mul_add_c(a[2],b[2],c2,c3,c1);
+	mul_add_c(a[1],b[3],c2,c3,c1);
+	mul_add_c(a[0],b[4],c2,c3,c1);
+	r[4]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[0],b[5],c3,c1,c2);
+	mul_add_c(a[1],b[4],c3,c1,c2);
+	mul_add_c(a[2],b[3],c3,c1,c2);
+	mul_add_c(a[3],b[2],c3,c1,c2);
+	mul_add_c(a[4],b[1],c3,c1,c2);
+	mul_add_c(a[5],b[0],c3,c1,c2);
+	r[5]=3Dc3;
+	c3=3D0;
+	mul_add_c(a[6],b[0],c1,c2,c3);
+	mul_add_c(a[5],b[1],c1,c2,c3);
+	mul_add_c(a[4],b[2],c1,c2,c3);
+	mul_add_c(a[3],b[3],c1,c2,c3);
+	mul_add_c(a[2],b[4],c1,c2,c3);
+	mul_add_c(a[1],b[5],c1,c2,c3);
+	mul_add_c(a[0],b[6],c1,c2,c3);
+	r[6]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[0],b[7],c2,c3,c1);
+	mul_add_c(a[1],b[6],c2,c3,c1);
+	mul_add_c(a[2],b[5],c2,c3,c1);
+	mul_add_c(a[3],b[4],c2,c3,c1);
+	mul_add_c(a[4],b[3],c2,c3,c1);
+	mul_add_c(a[5],b[2],c2,c3,c1);
+	mul_add_c(a[6],b[1],c2,c3,c1);
+	mul_add_c(a[7],b[0],c2,c3,c1);
+	r[7]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[7],b[1],c3,c1,c2);
+	mul_add_c(a[6],b[2],c3,c1,c2);
+	mul_add_c(a[5],b[3],c3,c1,c2);
+	mul_add_c(a[4],b[4],c3,c1,c2);
+	mul_add_c(a[3],b[5],c3,c1,c2);
+	mul_add_c(a[2],b[6],c3,c1,c2);
+	mul_add_c(a[1],b[7],c3,c1,c2);
+	r[8]=3Dc3;
+	c3=3D0;
+	mul_add_c(a[2],b[7],c1,c2,c3);
+	mul_add_c(a[3],b[6],c1,c2,c3);
+	mul_add_c(a[4],b[5],c1,c2,c3);
+	mul_add_c(a[5],b[4],c1,c2,c3);
+	mul_add_c(a[6],b[3],c1,c2,c3);
+	mul_add_c(a[7],b[2],c1,c2,c3);
+	r[9]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[7],b[3],c2,c3,c1);
+	mul_add_c(a[6],b[4],c2,c3,c1);
+	mul_add_c(a[5],b[5],c2,c3,c1);
+	mul_add_c(a[4],b[6],c2,c3,c1);
+	mul_add_c(a[3],b[7],c2,c3,c1);
+	r[10]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[4],b[7],c3,c1,c2);
+	mul_add_c(a[5],b[6],c3,c1,c2);
+	mul_add_c(a[6],b[5],c3,c1,c2);
+	mul_add_c(a[7],b[4],c3,c1,c2);
+	r[11]=3Dc3;
+	c3=3D0;
+	mul_add_c(a[7],b[5],c1,c2,c3);
+	mul_add_c(a[6],b[6],c1,c2,c3);
+	mul_add_c(a[5],b[7],c1,c2,c3);
+	r[12]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[6],b[7],c2,c3,c1);
+	mul_add_c(a[7],b[6],c2,c3,c1);
+	r[13]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[7],b[7],c3,c1,c2);
+	r[14]=3Dc3;
+	r[15]=3Dc1;
+	}
+
+void bn_mul_comba4(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b)
+	{
+	BN_ULONG t1,t2;
+	BN_ULONG c1,c2,c3;
+
+	c1=3D0;
+	c2=3D0;
+	c3=3D0;
+	mul_add_c(a[0],b[0],c1,c2,c3);
+	r[0]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[0],b[1],c2,c3,c1);
+	mul_add_c(a[1],b[0],c2,c3,c1);
+	r[1]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[2],b[0],c3,c1,c2);
+	mul_add_c(a[1],b[1],c3,c1,c2);
+	mul_add_c(a[0],b[2],c3,c1,c2);
+	r[2]=3Dc3;
+	c3=3D0;
+	mul_add_c(a[0],b[3],c1,c2,c3);
+	mul_add_c(a[1],b[2],c1,c2,c3);
+	mul_add_c(a[2],b[1],c1,c2,c3);
+	mul_add_c(a[3],b[0],c1,c2,c3);
+	r[3]=3Dc1;
+	c1=3D0;
+	mul_add_c(a[3],b[1],c2,c3,c1);
+	mul_add_c(a[2],b[2],c2,c3,c1);
+	mul_add_c(a[1],b[3],c2,c3,c1);
+	r[4]=3Dc2;
+	c2=3D0;
+	mul_add_c(a[2],b[3],c3,c1,c2);
+	mul_add_c(a[3],b[2],c3,c1,c2);
+	r[5]=3Dc3;
+	c3=3D0;
+	mul_add_c(a[3],b[3],c1,c2,c3);
+	r[6]=3Dc1;
+	r[7]=3Dc2;
+	}
+
+void bn_sqr_comba8(BN_ULONG *r, const BN_ULONG *a)
+	{
+	BN_ULONG t1,t2;
+	BN_ULONG c1,c2,c3;
+
+	c1=3D0;
+	c2=3D0;
+	c3=3D0;
+	sqr_add_c(a,0,c1,c2,c3);
+	r[0]=3Dc1;
+	c1=3D0;
+	sqr_add_c2(a,1,0,c2,c3,c1);
+	r[1]=3Dc2;
+	c2=3D0;
+	sqr_add_c(a,1,c3,c1,c2);
+	sqr_add_c2(a,2,0,c3,c1,c2);
+	r[2]=3Dc3;
+	c3=3D0;
+	sqr_add_c2(a,3,0,c1,c2,c3);
+	sqr_add_c2(a,2,1,c1,c2,c3);
+	r[3]=3Dc1;
+	c1=3D0;
+	sqr_add_c(a,2,c2,c3,c1);
+	sqr_add_c2(a,3,1,c2,c3,c1);
+	sqr_add_c2(a,4,0,c2,c3,c1);
+	r[4]=3Dc2;
+	c2=3D0;
+	sqr_add_c2(a,5,0,c3,c1,c2);
+	sqr_add_c2(a,4,1,c3,c1,c2);
+	sqr_add_c2(a,3,2,c3,c1,c2);
+	r[5]=3Dc3;
+	c3=3D0;
+	sqr_add_c(a,3,c1,c2,c3);
+	sqr_add_c2(a,4,2,c1,c2,c3);
+	sqr_add_c2(a,5,1,c1,c2,c3);
+	sqr_add_c2(a,6,0,c1,c2,c3);
+	r[6]=3Dc1;
+	c1=3D0;
+	sqr_add_c2(a,7,0,c2,c3,c1);
+	sqr_add_c2(a,6,1,c2,c3,c1);
+	sqr_add_c2(a,5,2,c2,c3,c1);
+	sqr_add_c2(a,4,3,c2,c3,c1);
+	r[7]=3Dc2;
+	c2=3D0;
+	sqr_add_c(a,4,c3,c1,c2);
+	sqr_add_c2(a,5,3,c3,c1,c2);
+	sqr_add_c2(a,6,2,c3,c1,c2);
+	sqr_add_c2(a,7,1,c3,c1,c2);
+	r[8]=3Dc3;
+	c3=3D0;
+	sqr_add_c2(a,7,2,c1,c2,c3);
+	sqr_add_c2(a,6,3,c1,c2,c3);
+	sqr_add_c2(a,5,4,c1,c2,c3);
+	r[9]=3Dc1;
+	c1=3D0;
+	sqr_add_c(a,5,c2,c3,c1);
+	sqr_add_c2(a,6,4,c2,c3,c1);
+	sqr_add_c2(a,7,3,c2,c3,c1);
+	r[10]=3Dc2;
+	c2=3D0;
+	sqr_add_c2(a,7,4,c3,c1,c2);
+	sqr_add_c2(a,6,5,c3,c1,c2);
+	r[11]=3Dc3;
+	c3=3D0;
+	sqr_add_c(a,6,c1,c2,c3);
+	sqr_add_c2(a,7,5,c1,c2,c3);
+	r[12]=3Dc1;
+	c1=3D0;
+	sqr_add_c2(a,7,6,c2,c3,c1);
+	r[13]=3Dc2;
+	c2=3D0;
+	sqr_add_c(a,7,c3,c1,c2);
+	r[14]=3Dc3;
+	r[15]=3Dc1;
+	}
+
+void bn_sqr_comba4(BN_ULONG *r, const BN_ULONG *a)
+	{
+	BN_ULONG t1,t2;
+	BN_ULONG c1,c2,c3;
+
+	c1=3D0;
+	c2=3D0;
+	c3=3D0;
+	sqr_add_c(a,0,c1,c2,c3);
+	r[0]=3Dc1;
+	c1=3D0;
+	sqr_add_c2(a,1,0,c2,c3,c1);
+	r[1]=3Dc2;
+	c2=3D0;
+	sqr_add_c(a,1,c3,c1,c2);
+	sqr_add_c2(a,2,0,c3,c1,c2);
+	r[2]=3Dc3;
+	c3=3D0;
+	sqr_add_c2(a,3,0,c1,c2,c3);
+	sqr_add_c2(a,2,1,c1,c2,c3);
+	r[3]=3Dc1;
+	c1=3D0;
+	sqr_add_c(a,2,c2,c3,c1);
+	sqr_add_c2(a,3,1,c2,c3,c1);
+	r[4]=3Dc2;
+	c2=3D0;
+	sqr_add_c2(a,3,2,c3,c1,c2);
+	r[5]=3Dc3;
+	c3=3D0;
+	sqr_add_c(a,3,c1,c2,c3);
+	r[6]=3Dc1;
+	r[7]=3Dc2;
+	}
+#endif
Index: secure/lib/libcrypto/amd64/sha512-amd64.s
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/amd64/sha512-amd64.s	(revision 0)
+++ secure/lib/libcrypto/amd64/sha512-amd64.s	(revision 0)
@@ -0,0 +1,1970 @@
+.text=09
+
+.globl	sha256_block_data_order
+.type	sha256_block_data_order,@function
+.align	16
+sha256_block_data_order:
+	pushq	%rbx
+	pushq	%rbp
+	pushq	%r12
+	pushq	%r13
+	pushq	%r14
+	pushq	%r15
+	movq	%rsp,%r11
+	shlq	$4,%rdx
+	subq	$64+32,%rsp
+	leaq	(%rsi,%rdx,4),%rdx
+	andq	$-64,%rsp
+	movq	%rdi,64+0(%rsp)
+	movq	%rsi,64+8(%rsp)
+	movq	%rdx,64+16(%rsp)
+	movq	%r11,64+24(%rsp)
+.Lprologue:
+
+	leaq	K256(%rip),%rbp
+
+	movl	0(%rdi),%eax
+	movl	4(%rdi),%ebx
+	movl	8(%rdi),%ecx
+	movl	12(%rdi),%edx
+	movl	16(%rdi),%r8d
+	movl	20(%rdi),%r9d
+	movl	24(%rdi),%r10d
+	movl	28(%rdi),%r11d
+	jmp	.Lloop
+
+.align	16
+.Lloop:
+	xorq	%rdi,%rdi
+	movl	0(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+	movl	%r9d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r10d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r8d,%r15d
+	movl	%r12d,0(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r10d,%r15d
+	addl	%r11d,%r12d
+
+	movl	%eax,%r11d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+
+	rorl	$2,%r11d
+	rorl	$13,%r13d
+	movl	%eax,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r11d
+	rorl	$9,%r13d
+	orl	%ecx,%r14d
+
+	xorl	%r13d,%r11d
+	andl	%ecx,%r15d
+	addl	%r12d,%edx
+
+	andl	%ebx,%r14d
+	addl	%r12d,%r11d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r11d
+	movl	4(%rsi),%r12d
+	bswapl	%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+	movl	%r8d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r9d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%edx,%r15d
+	movl	%r12d,4(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r9d,%r15d
+	addl	%r10d,%r12d
+
+	movl	%r11d,%r10d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+
+	rorl	$2,%r10d
+	rorl	$13,%r13d
+	movl	%r11d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r10d
+	rorl	$9,%r13d
+	orl	%ebx,%r14d
+
+	xorl	%r13d,%r10d
+	andl	%ebx,%r15d
+	addl	%r12d,%ecx
+
+	andl	%eax,%r14d
+	addl	%r12d,%r10d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r10d
+	movl	8(%rsi),%r12d
+	bswapl	%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+	movl	%edx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r8d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ecx,%r15d
+	movl	%r12d,8(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r8d,%r15d
+	addl	%r9d,%r12d
+
+	movl	%r10d,%r9d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+
+	rorl	$2,%r9d
+	rorl	$13,%r13d
+	movl	%r10d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r9d
+	rorl	$9,%r13d
+	orl	%eax,%r14d
+
+	xorl	%r13d,%r9d
+	andl	%eax,%r15d
+	addl	%r12d,%ebx
+
+	andl	%r11d,%r14d
+	addl	%r12d,%r9d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r9d
+	movl	12(%rsi),%r12d
+	bswapl	%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+	movl	%ecx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%edx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ebx,%r15d
+	movl	%r12d,12(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%edx,%r15d
+	addl	%r8d,%r12d
+
+	movl	%r9d,%r8d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+
+	rorl	$2,%r8d
+	rorl	$13,%r13d
+	movl	%r9d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r8d
+	rorl	$9,%r13d
+	orl	%r11d,%r14d
+
+	xorl	%r13d,%r8d
+	andl	%r11d,%r15d
+	addl	%r12d,%eax
+
+	andl	%r10d,%r14d
+	addl	%r12d,%r8d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r8d
+	movl	16(%rsi),%r12d
+	bswapl	%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+	movl	%ebx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ecx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%eax,%r15d
+	movl	%r12d,16(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ecx,%r15d
+	addl	%edx,%r12d
+
+	movl	%r8d,%edx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+
+	rorl	$2,%edx
+	rorl	$13,%r13d
+	movl	%r8d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%edx
+	rorl	$9,%r13d
+	orl	%r10d,%r14d
+
+	xorl	%r13d,%edx
+	andl	%r10d,%r15d
+	addl	%r12d,%r11d
+
+	andl	%r9d,%r14d
+	addl	%r12d,%edx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%edx
+	movl	20(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+	movl	%eax,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ebx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r11d,%r15d
+	movl	%r12d,20(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ebx,%r15d
+	addl	%ecx,%r12d
+
+	movl	%edx,%ecx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+
+	rorl	$2,%ecx
+	rorl	$13,%r13d
+	movl	%edx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ecx
+	rorl	$9,%r13d
+	orl	%r9d,%r14d
+
+	xorl	%r13d,%ecx
+	andl	%r9d,%r15d
+	addl	%r12d,%r10d
+
+	andl	%r8d,%r14d
+	addl	%r12d,%ecx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ecx
+	movl	24(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+	movl	%r11d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%eax,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r10d,%r15d
+	movl	%r12d,24(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%eax,%r15d
+	addl	%ebx,%r12d
+
+	movl	%ecx,%ebx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+
+	rorl	$2,%ebx
+	rorl	$13,%r13d
+	movl	%ecx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ebx
+	rorl	$9,%r13d
+	orl	%r8d,%r14d
+
+	xorl	%r13d,%ebx
+	andl	%r8d,%r15d
+	addl	%r12d,%r9d
+
+	andl	%edx,%r14d
+	addl	%r12d,%ebx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ebx
+	movl	28(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+	movl	%r10d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r11d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r9d,%r15d
+	movl	%r12d,28(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r11d,%r15d
+	addl	%eax,%r12d
+
+	movl	%ebx,%eax
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+
+	rorl	$2,%eax
+	rorl	$13,%r13d
+	movl	%ebx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%eax
+	rorl	$9,%r13d
+	orl	%edx,%r14d
+
+	xorl	%r13d,%eax
+	andl	%edx,%r15d
+	addl	%r12d,%r8d
+
+	andl	%ecx,%r14d
+	addl	%r12d,%eax
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%eax
+	movl	32(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+	movl	%r9d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r10d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r8d,%r15d
+	movl	%r12d,32(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r10d,%r15d
+	addl	%r11d,%r12d
+
+	movl	%eax,%r11d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+
+	rorl	$2,%r11d
+	rorl	$13,%r13d
+	movl	%eax,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r11d
+	rorl	$9,%r13d
+	orl	%ecx,%r14d
+
+	xorl	%r13d,%r11d
+	andl	%ecx,%r15d
+	addl	%r12d,%edx
+
+	andl	%ebx,%r14d
+	addl	%r12d,%r11d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r11d
+	movl	36(%rsi),%r12d
+	bswapl	%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+	movl	%r8d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r9d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%edx,%r15d
+	movl	%r12d,36(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r9d,%r15d
+	addl	%r10d,%r12d
+
+	movl	%r11d,%r10d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+
+	rorl	$2,%r10d
+	rorl	$13,%r13d
+	movl	%r11d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r10d
+	rorl	$9,%r13d
+	orl	%ebx,%r14d
+
+	xorl	%r13d,%r10d
+	andl	%ebx,%r15d
+	addl	%r12d,%ecx
+
+	andl	%eax,%r14d
+	addl	%r12d,%r10d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r10d
+	movl	40(%rsi),%r12d
+	bswapl	%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+	movl	%edx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r8d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ecx,%r15d
+	movl	%r12d,40(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r8d,%r15d
+	addl	%r9d,%r12d
+
+	movl	%r10d,%r9d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+
+	rorl	$2,%r9d
+	rorl	$13,%r13d
+	movl	%r10d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r9d
+	rorl	$9,%r13d
+	orl	%eax,%r14d
+
+	xorl	%r13d,%r9d
+	andl	%eax,%r15d
+	addl	%r12d,%ebx
+
+	andl	%r11d,%r14d
+	addl	%r12d,%r9d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r9d
+	movl	44(%rsi),%r12d
+	bswapl	%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+	movl	%ecx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%edx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ebx,%r15d
+	movl	%r12d,44(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%edx,%r15d
+	addl	%r8d,%r12d
+
+	movl	%r9d,%r8d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+
+	rorl	$2,%r8d
+	rorl	$13,%r13d
+	movl	%r9d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r8d
+	rorl	$9,%r13d
+	orl	%r11d,%r14d
+
+	xorl	%r13d,%r8d
+	andl	%r11d,%r15d
+	addl	%r12d,%eax
+
+	andl	%r10d,%r14d
+	addl	%r12d,%r8d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r8d
+	movl	48(%rsi),%r12d
+	bswapl	%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+	movl	%ebx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ecx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%eax,%r15d
+	movl	%r12d,48(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ecx,%r15d
+	addl	%edx,%r12d
+
+	movl	%r8d,%edx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+
+	rorl	$2,%edx
+	rorl	$13,%r13d
+	movl	%r8d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%edx
+	rorl	$9,%r13d
+	orl	%r10d,%r14d
+
+	xorl	%r13d,%edx
+	andl	%r10d,%r15d
+	addl	%r12d,%r11d
+
+	andl	%r9d,%r14d
+	addl	%r12d,%edx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%edx
+	movl	52(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+	movl	%eax,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ebx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r11d,%r15d
+	movl	%r12d,52(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ebx,%r15d
+	addl	%ecx,%r12d
+
+	movl	%edx,%ecx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+
+	rorl	$2,%ecx
+	rorl	$13,%r13d
+	movl	%edx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ecx
+	rorl	$9,%r13d
+	orl	%r9d,%r14d
+
+	xorl	%r13d,%ecx
+	andl	%r9d,%r15d
+	addl	%r12d,%r10d
+
+	andl	%r8d,%r14d
+	addl	%r12d,%ecx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ecx
+	movl	56(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+	movl	%r11d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%eax,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r10d,%r15d
+	movl	%r12d,56(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%eax,%r15d
+	addl	%ebx,%r12d
+
+	movl	%ecx,%ebx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+
+	rorl	$2,%ebx
+	rorl	$13,%r13d
+	movl	%ecx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ebx
+	rorl	$9,%r13d
+	orl	%r8d,%r14d
+
+	xorl	%r13d,%ebx
+	andl	%r8d,%r15d
+	addl	%r12d,%r9d
+
+	andl	%edx,%r14d
+	addl	%r12d,%ebx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ebx
+	movl	60(%rsi),%r12d
+	bswapl	%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+	movl	%r10d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r11d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r9d,%r15d
+	movl	%r12d,60(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r11d,%r15d
+	addl	%eax,%r12d
+
+	movl	%ebx,%eax
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+
+	rorl	$2,%eax
+	rorl	$13,%r13d
+	movl	%ebx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%eax
+	rorl	$9,%r13d
+	orl	%edx,%r14d
+
+	xorl	%r13d,%eax
+	andl	%edx,%r15d
+	addl	%r12d,%r8d
+
+	andl	%ecx,%r14d
+	addl	%r12d,%eax
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%eax
+	jmp	.Lrounds_16_xx
+.align	16
+.Lrounds_16_xx:
+	movl	4(%rsp),%r13d
+	movl	56(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	36(%rsp),%r12d
+
+	addl	0(%rsp),%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+	movl	%r9d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r10d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r8d,%r15d
+	movl	%r12d,0(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r10d,%r15d
+	addl	%r11d,%r12d
+
+	movl	%eax,%r11d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+
+	rorl	$2,%r11d
+	rorl	$13,%r13d
+	movl	%eax,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r11d
+	rorl	$9,%r13d
+	orl	%ecx,%r14d
+
+	xorl	%r13d,%r11d
+	andl	%ecx,%r15d
+	addl	%r12d,%edx
+
+	andl	%ebx,%r14d
+	addl	%r12d,%r11d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r11d
+	movl	8(%rsp),%r13d
+	movl	60(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	40(%rsp),%r12d
+
+	addl	4(%rsp),%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+	movl	%r8d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r9d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%edx,%r15d
+	movl	%r12d,4(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r9d,%r15d
+	addl	%r10d,%r12d
+
+	movl	%r11d,%r10d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+
+	rorl	$2,%r10d
+	rorl	$13,%r13d
+	movl	%r11d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r10d
+	rorl	$9,%r13d
+	orl	%ebx,%r14d
+
+	xorl	%r13d,%r10d
+	andl	%ebx,%r15d
+	addl	%r12d,%ecx
+
+	andl	%eax,%r14d
+	addl	%r12d,%r10d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r10d
+	movl	12(%rsp),%r13d
+	movl	0(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	44(%rsp),%r12d
+
+	addl	8(%rsp),%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+	movl	%edx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r8d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ecx,%r15d
+	movl	%r12d,8(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r8d,%r15d
+	addl	%r9d,%r12d
+
+	movl	%r10d,%r9d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+
+	rorl	$2,%r9d
+	rorl	$13,%r13d
+	movl	%r10d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r9d
+	rorl	$9,%r13d
+	orl	%eax,%r14d
+
+	xorl	%r13d,%r9d
+	andl	%eax,%r15d
+	addl	%r12d,%ebx
+
+	andl	%r11d,%r14d
+	addl	%r12d,%r9d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r9d
+	movl	16(%rsp),%r13d
+	movl	4(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	48(%rsp),%r12d
+
+	addl	12(%rsp),%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+	movl	%ecx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%edx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ebx,%r15d
+	movl	%r12d,12(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%edx,%r15d
+	addl	%r8d,%r12d
+
+	movl	%r9d,%r8d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+
+	rorl	$2,%r8d
+	rorl	$13,%r13d
+	movl	%r9d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r8d
+	rorl	$9,%r13d
+	orl	%r11d,%r14d
+
+	xorl	%r13d,%r8d
+	andl	%r11d,%r15d
+	addl	%r12d,%eax
+
+	andl	%r10d,%r14d
+	addl	%r12d,%r8d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r8d
+	movl	20(%rsp),%r13d
+	movl	8(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	52(%rsp),%r12d
+
+	addl	16(%rsp),%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+	movl	%ebx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ecx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%eax,%r15d
+	movl	%r12d,16(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ecx,%r15d
+	addl	%edx,%r12d
+
+	movl	%r8d,%edx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+
+	rorl	$2,%edx
+	rorl	$13,%r13d
+	movl	%r8d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%edx
+	rorl	$9,%r13d
+	orl	%r10d,%r14d
+
+	xorl	%r13d,%edx
+	andl	%r10d,%r15d
+	addl	%r12d,%r11d
+
+	andl	%r9d,%r14d
+	addl	%r12d,%edx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%edx
+	movl	24(%rsp),%r13d
+	movl	12(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	56(%rsp),%r12d
+
+	addl	20(%rsp),%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+	movl	%eax,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ebx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r11d,%r15d
+	movl	%r12d,20(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ebx,%r15d
+	addl	%ecx,%r12d
+
+	movl	%edx,%ecx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+
+	rorl	$2,%ecx
+	rorl	$13,%r13d
+	movl	%edx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ecx
+	rorl	$9,%r13d
+	orl	%r9d,%r14d
+
+	xorl	%r13d,%ecx
+	andl	%r9d,%r15d
+	addl	%r12d,%r10d
+
+	andl	%r8d,%r14d
+	addl	%r12d,%ecx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ecx
+	movl	28(%rsp),%r13d
+	movl	16(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	60(%rsp),%r12d
+
+	addl	24(%rsp),%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+	movl	%r11d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%eax,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r10d,%r15d
+	movl	%r12d,24(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%eax,%r15d
+	addl	%ebx,%r12d
+
+	movl	%ecx,%ebx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+
+	rorl	$2,%ebx
+	rorl	$13,%r13d
+	movl	%ecx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ebx
+	rorl	$9,%r13d
+	orl	%r8d,%r14d
+
+	xorl	%r13d,%ebx
+	andl	%r8d,%r15d
+	addl	%r12d,%r9d
+
+	andl	%edx,%r14d
+	addl	%r12d,%ebx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ebx
+	movl	32(%rsp),%r13d
+	movl	20(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	0(%rsp),%r12d
+
+	addl	28(%rsp),%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+	movl	%r10d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r11d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r9d,%r15d
+	movl	%r12d,28(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r11d,%r15d
+	addl	%eax,%r12d
+
+	movl	%ebx,%eax
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+
+	rorl	$2,%eax
+	rorl	$13,%r13d
+	movl	%ebx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%eax
+	rorl	$9,%r13d
+	orl	%edx,%r14d
+
+	xorl	%r13d,%eax
+	andl	%edx,%r15d
+	addl	%r12d,%r8d
+
+	andl	%ecx,%r14d
+	addl	%r12d,%eax
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%eax
+	movl	36(%rsp),%r13d
+	movl	24(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	4(%rsp),%r12d
+
+	addl	32(%rsp),%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+	movl	%r9d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r10d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r8d,%r15d
+	movl	%r12d,32(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r10d,%r15d
+	addl	%r11d,%r12d
+
+	movl	%eax,%r11d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+
+	rorl	$2,%r11d
+	rorl	$13,%r13d
+	movl	%eax,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r11d
+	rorl	$9,%r13d
+	orl	%ecx,%r14d
+
+	xorl	%r13d,%r11d
+	andl	%ecx,%r15d
+	addl	%r12d,%edx
+
+	andl	%ebx,%r14d
+	addl	%r12d,%r11d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r11d
+	movl	40(%rsp),%r13d
+	movl	28(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	8(%rsp),%r12d
+
+	addl	36(%rsp),%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+	movl	%r8d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r9d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%edx,%r15d
+	movl	%r12d,36(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r9d,%r15d
+	addl	%r10d,%r12d
+
+	movl	%r11d,%r10d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+
+	rorl	$2,%r10d
+	rorl	$13,%r13d
+	movl	%r11d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r10d
+	rorl	$9,%r13d
+	orl	%ebx,%r14d
+
+	xorl	%r13d,%r10d
+	andl	%ebx,%r15d
+	addl	%r12d,%ecx
+
+	andl	%eax,%r14d
+	addl	%r12d,%r10d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r10d
+	movl	44(%rsp),%r13d
+	movl	32(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	12(%rsp),%r12d
+
+	addl	40(%rsp),%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+	movl	%edx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r8d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ecx,%r15d
+	movl	%r12d,40(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r8d,%r15d
+	addl	%r9d,%r12d
+
+	movl	%r10d,%r9d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+
+	rorl	$2,%r9d
+	rorl	$13,%r13d
+	movl	%r10d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r9d
+	rorl	$9,%r13d
+	orl	%eax,%r14d
+
+	xorl	%r13d,%r9d
+	andl	%eax,%r15d
+	addl	%r12d,%ebx
+
+	andl	%r11d,%r14d
+	addl	%r12d,%r9d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r9d
+	movl	48(%rsp),%r13d
+	movl	36(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	16(%rsp),%r12d
+
+	addl	44(%rsp),%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+	movl	%ecx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%edx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%ebx,%r15d
+	movl	%r12d,44(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%edx,%r15d
+	addl	%r8d,%r12d
+
+	movl	%r9d,%r8d
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+
+	rorl	$2,%r8d
+	rorl	$13,%r13d
+	movl	%r9d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%r8d
+	rorl	$9,%r13d
+	orl	%r11d,%r14d
+
+	xorl	%r13d,%r8d
+	andl	%r11d,%r15d
+	addl	%r12d,%eax
+
+	andl	%r10d,%r14d
+	addl	%r12d,%r8d
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%r8d
+	movl	52(%rsp),%r13d
+	movl	40(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	20(%rsp),%r12d
+
+	addl	48(%rsp),%r12d
+	movl	%eax,%r13d
+	movl	%eax,%r14d
+	movl	%ebx,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ecx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%eax,%r15d
+	movl	%r12d,48(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ecx,%r15d
+	addl	%edx,%r12d
+
+	movl	%r8d,%edx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%r8d,%r13d
+	movl	%r8d,%r14d
+
+	rorl	$2,%edx
+	rorl	$13,%r13d
+	movl	%r8d,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%edx
+	rorl	$9,%r13d
+	orl	%r10d,%r14d
+
+	xorl	%r13d,%edx
+	andl	%r10d,%r15d
+	addl	%r12d,%r11d
+
+	andl	%r9d,%r14d
+	addl	%r12d,%edx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%edx
+	movl	56(%rsp),%r13d
+	movl	44(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	24(%rsp),%r12d
+
+	addl	52(%rsp),%r12d
+	movl	%r11d,%r13d
+	movl	%r11d,%r14d
+	movl	%eax,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%ebx,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r11d,%r15d
+	movl	%r12d,52(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%ebx,%r15d
+	addl	%ecx,%r12d
+
+	movl	%edx,%ecx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%edx,%r13d
+	movl	%edx,%r14d
+
+	rorl	$2,%ecx
+	rorl	$13,%r13d
+	movl	%edx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ecx
+	rorl	$9,%r13d
+	orl	%r9d,%r14d
+
+	xorl	%r13d,%ecx
+	andl	%r9d,%r15d
+	addl	%r12d,%r10d
+
+	andl	%r8d,%r14d
+	addl	%r12d,%ecx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ecx
+	movl	60(%rsp),%r13d
+	movl	48(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	28(%rsp),%r12d
+
+	addl	56(%rsp),%r12d
+	movl	%r10d,%r13d
+	movl	%r10d,%r14d
+	movl	%r11d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%eax,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r10d,%r15d
+	movl	%r12d,56(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%eax,%r15d
+	addl	%ebx,%r12d
+
+	movl	%ecx,%ebx
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ecx,%r13d
+	movl	%ecx,%r14d
+
+	rorl	$2,%ebx
+	rorl	$13,%r13d
+	movl	%ecx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%ebx
+	rorl	$9,%r13d
+	orl	%r8d,%r14d
+
+	xorl	%r13d,%ebx
+	andl	%r8d,%r15d
+	addl	%r12d,%r9d
+
+	andl	%edx,%r14d
+	addl	%r12d,%ebx
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%ebx
+	movl	0(%rsp),%r13d
+	movl	52(%rsp),%r12d
+
+	movl	%r13d,%r15d
+
+	shrl	$3,%r13d
+	rorl	$7,%r15d
+
+	xorl	%r15d,%r13d
+	rorl	$11,%r15d
+
+	xorl	%r15d,%r13d
+	movl	%r12d,%r14d
+
+	shrl	$10,%r12d
+	rorl	$17,%r14d
+
+	xorl	%r14d,%r12d
+	rorl	$2,%r14d
+
+	xorl	%r14d,%r12d
+
+	addl	%r13d,%r12d
+
+	addl	32(%rsp),%r12d
+
+	addl	60(%rsp),%r12d
+	movl	%r9d,%r13d
+	movl	%r9d,%r14d
+	movl	%r10d,%r15d
+
+	rorl	$6,%r13d
+	rorl	$11,%r14d
+	xorl	%r11d,%r15d
+
+	xorl	%r14d,%r13d
+	rorl	$14,%r14d
+	andl	%r9d,%r15d
+	movl	%r12d,60(%rsp)
+
+	xorl	%r14d,%r13d
+	xorl	%r11d,%r15d
+	addl	%eax,%r12d
+
+	movl	%ebx,%eax
+	addl	%r13d,%r12d
+
+	addl	%r15d,%r12d
+	movl	%ebx,%r13d
+	movl	%ebx,%r14d
+
+	rorl	$2,%eax
+	rorl	$13,%r13d
+	movl	%ebx,%r15d
+	addl	(%rbp,%rdi,4),%r12d
+
+	xorl	%r13d,%eax
+	rorl	$9,%r13d
+	orl	%edx,%r14d
+
+	xorl	%r13d,%eax
+	andl	%edx,%r15d
+	addl	%r12d,%r8d
+
+	andl	%ecx,%r14d
+	addl	%r12d,%eax
+
+	orl	%r15d,%r14d
+	leaq	1(%rdi),%rdi
+
+	addl	%r14d,%eax
+	cmpq	$64,%rdi
+	jb	.Lrounds_16_xx
+
+	movq	64+0(%rsp),%rdi
+	leaq	64(%rsi),%rsi
+
+	addl	0(%rdi),%eax
+	addl	4(%rdi),%ebx
+	addl	8(%rdi),%ecx
+	addl	12(%rdi),%edx
+	addl	16(%rdi),%r8d
+	addl	20(%rdi),%r9d
+	addl	24(%rdi),%r10d
+	addl	28(%rdi),%r11d
+
+	cmpq	64+16(%rsp),%rsi
+
+	movl	%eax,0(%rdi)
+	movl	%ebx,4(%rdi)
+	movl	%ecx,8(%rdi)
+	movl	%edx,12(%rdi)
+	movl	%r8d,16(%rdi)
+	movl	%r9d,20(%rdi)
+	movl	%r10d,24(%rdi)
+	movl	%r11d,28(%rdi)
+	jb	.Lloop
+
+	movq	64+24(%rsp),%rsi
+	movq	(%rsi),%r15
+	movq	8(%rsi),%r14
+	movq	16(%rsi),%r13
+	movq	24(%rsi),%r12
+	movq	32(%rsi),%rbp
+	movq	40(%rsi),%rbx
+	leaq	48(%rsi),%rsp
+.Lepilogue:
+	.byte	0xf3,0xc3
+.size	sha256_block_data_order,.-sha256_block_data_order
+.align	64
+.type	K256,@object
+K256:
+.long	0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
+.long	0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
+.long	0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
+.long	0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
+.long	0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
+.long	0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
+.long	0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
+.long	0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
+.long	0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
+.long	0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
+.long	0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
+.long	0xd192e819,0xd6990624,0xf40e3585,0x106aa070
+.long	0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
+.long	0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
+.long	0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
+.long	0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
Index: secure/lib/libcrypto/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libcrypto/Makefile	(revision 218560)
+++ secure/lib/libcrypto/Makefile	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libcrypto/Makefile,v 1.81.10.1 2010/02/10 00:26=
:20 kensmith Exp $
=20
 SHLIBDIR?=3D	/lib
 SUBDIR=3D		engines
@@ -6,7 +6,7 @@
 .include <bsd.own.mk>
=20
 LIB=3D		crypto
=2DSHLIB_MAJOR=3D	6
+SHLIB_MAJOR=3D	7
=20
 NO_LINT=3D
=20
@@ -20,36 +20,43 @@
 .include "Makefile.inc"
=20
 # base sources
=2DSRCS=3D	cpt_err.c cryptlib.c cversion.c ebcdic.c ex_data.c mem.c mem_clr=
=2Ec \
=2D	mem_dbg.c o_dir.c o_str.c o_time.c tmdiff.c uid.c dyn_lck.c \
=2D	o_init.c fips_err.c
=2DINCS=3D	crypto.h ebcdic.h opensslv.h ossl_typ.h symhacks.h tmdiff.h \
+SRCS=3D	cryptlib.c mem.c mem_clr.c mem_dbg.c cversion.c ex_data.c cpt_err.=
c \
+	ebcdic.c uid.c o_time.c o_str.c o_dir.c
+INCS=3D	crypto.h opensslv.h opensslconf.h ebcdic.h symhacks.h \
+	ossl_typ.h cryptlib.h buildinf.h md32_common.h o_time.h o_str.h o_dir.h \
 	../e_os.h ../e_os2.h
=20
 # aes
=2DSRCS+=3D	aes_cbc.c aes_cfb.c aes_core.c aes_ctr.c aes_ecb.c aes_ige.c \
=2D	aes_misc.c aes_ofb.c aes_wrap.c
+SRCS+=3D	aes_misc.c aes_ecb.c aes_cfb.c aes_ofb.c \
+	aes_ctr.c aes_ige.c aes_wrap.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	aes-586.s
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D	aes-amd64.s
+.else
+SRCS+=3D	aes_core.c aes_cbc.c
+.endif
 INCS+=3D	aes.h aes_locl.h
=20
 # asn1
=2DSRCS+=3D	a_bitstr.c a_bool.c a_bytes.c a_d2i_fp.c a_digest.c a_dup.c \
=2D	a_enum.c a_gentm.c a_hdr.c a_i2d_fp.c a_int.c a_mbstr.c \
=2D	a_meth.c a_object.c a_octet.c a_print.c a_set.c a_sign.c \
=2D	a_strex.c a_strnid.c a_time.c a_type.c a_utctm.c a_utf8.c \
=2D	a_verify.c asn1_err.c asn1_gen.c asn1_lib.c asn1_par.c \
=2D	asn_moid.c asn_mime.c asn_pack.c d2i_pr.c d2i_pu.c evp_asn1.c f_enum.c \
=2D	f_int.c f_string.c i2d_pr.c i2d_pu.c n_pkey.c nsseq.c p5_pbe.c \
=2D	p5_pbev2.c p8_pkey.c t_bitst.c t_crl.c t_pkey.c t_req.c \
=2D	t_spki.c t_x509.c t_x509a.c tasn_dec.c tasn_enc.c tasn_fre.c \
=2D	tasn_new.c tasn_typ.c tasn_utl.c x_algor.c x_attrib.c \
=2D	x_bignum.c x_crl.c x_exten.c x_info.c x_long.c x_name.c \
=2D	x_pkey.c x_pubkey.c x_req.c x_sig.c x_spki.c x_val.c x_x509.c \
=2D	x_x509a.c
=2DINCS+=3D	asn1.h asn1_mac.h asn1t.h
+SRCS+=3D	a_object.c a_bitstr.c a_utctm.c a_gentm.c a_time.c a_int.c a_octe=
t.c \
+	a_print.c a_type.c a_set.c a_dup.c a_d2i_fp.c a_i2d_fp.c \
+	a_enum.c a_utf8.c a_sign.c a_digest.c a_verify.c a_mbstr.c a_strex.c \
+	x_algor.c x_val.c x_pubkey.c x_sig.c x_req.c x_attrib.c x_bignum.c \
+	x_long.c x_name.c x_x509.c x_x509a.c x_crl.c x_info.c x_spki.c nsseq.c \
+	x_nx509.c d2i_pu.c d2i_pr.c i2d_pu.c i2d_pr.c\
+	t_req.c t_x509.c t_x509a.c t_crl.c t_pkey.c t_spki.c t_bitst.c \
+	tasn_new.c tasn_fre.c tasn_enc.c tasn_dec.c tasn_utl.c tasn_typ.c \
+	tasn_prn.c ameth_lib.c \
+	f_int.c f_string.c n_pkey.c \
+	f_enum.c x_pkey.c a_bool.c x_exten.c bio_asn1.c bio_ndef.c asn_mime.c \
+	asn1_gen.c asn1_par.c asn1_lib.c asn1_err.c a_bytes.c a_strnid.c \
+	evp_asn1.c asn_pack.c p5_pbe.c p5_pbev2.c p8_pkey.c asn_moid.c
+INCS+=3D	asn1.h asn1_mac.h asn1t.h asn1_locl.h
=20
 # bf
=2DSRCS+=3D	bf_cfb64.c bf_ecb.c bf_ofb64.c bf_skey.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
+SRCS+=3D	bf_skey.c bf_ecb.c bf_cfb64.c bf_ofb64.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
 .if ${MACHINE_CPU:Mi686}
 SRCS+=3D	bf-686.s
 .else
@@ -58,50 +65,63 @@
 .else
 SRCS+=3D	bf_enc.c
 .endif
=2DINCS+=3D	blowfish.h
+INCS+=3D	blowfish.h bf_pi.h bf_locl.h
=20
 # bio
=2DSRCS+=3D	b_dump.c b_print.c b_sock.c bf_buff.c bf_lbuf.c bf_nbio.c \
=2D	bf_null.c bio_cb.c bio_err.c bio_lib.c bss_acpt.c bss_bio.c \
=2D	bss_conn.c bss_dgram.c bss_fd.c bss_file.c bss_log.c bss_mem.c \
=2D	bss_null.c bss_sock.c
+SRCS+=3D	bio_lib.c bio_cb.c bio_err.c \
+	bss_mem.c bss_null.c bss_fd.c \
+	bss_file.c bss_sock.c bss_conn.c \
+	bf_null.c bf_buff.c b_print.c b_dump.c \
+	b_sock.c bss_acpt.c bf_nbio.c bss_log.c bss_bio.c \
+	bss_dgram.c
 INCS+=3D	bio.h bio_lcl.h
=20
 # bn
=2DSRCS+=3D	bn_add.c bn_blind.c bn_const.c bn_ctx.c bn_depr.c bn_div.c \
=2D	bn_err.c bn_exp.c bn_exp2.c bn_gcd.c bn_gf2m.c bn_kron.c \
=2D	bn_lib.c bn_mod.c bn_mont.c bn_mpi.c bn_mul.c bn_nist.c bn_opt.c \
=2D	bn_prime.c bn_print.c bn_rand.c bn_recp.c bn_shift.c bn_sqr.c \
=2D	bn_sqrt.c bn_word.c bn_x931p.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
=2DSRCS+=3D	bn-586.s co-586.s
=2D.elif ${MACHINE_CPUARCH} =3D=3D "amd64"
=2DSRCS+=3D	x86_64-gcc.c
+SRCS+=3D	bn_add.c bn_div.c bn_exp.c bn_lib.c bn_ctx.c bn_mul.c bn_mod.c \
+	bn_print.c bn_rand.c bn_shift.c bn_word.c bn_blind.c bn_mont.c \
+	bn_kron.c bn_sqrt.c bn_gcd.c bn_prime.c bn_err.c bn_sqr.c \
+	bn_recp.c bn_mpi.c bn_exp2.c bn_gf2m.c bn_nist.c \
+	bn_depr.c bn_const.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	bn-586.s co-586.s mont-586.s
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D	bn-amd64.c mont-amd64.s
 .else
 SRCS+=3D	bn_asm.c
 .endif
+INCS+=3D	bn.h bn_lcl.h bn_prime.h
=20
=2DINCS+=3D	bn.h
=2D
 # buffer
=2DSRCS+=3D	buf_err.c buf_str.c buffer.c
+SRCS+=3D	buffer.c buf_err.c
 INCS+=3D	buffer.h
=20
+# camellia
+.if ${MACHINE_ARCH} =3D=3D "i386" || ${MACHINE_ARCH} =3D=3D "amd64"
+
+SRCS+=3D	cmll_ecb.c cmll_ofb.c cmll_cfb.c cmll_ctr.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	cmll_586.s
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D	cmll_amd64.s cmll_misc.c
+.else
+SRCS+=3D	camellia.c cmll_misc.c cmll_cbc.c
+.endif
+INCS+=3D	camellia.h cmll_locl.h
+.endif
+
 # cast
=2DSRCS+=3D	c_cfb64.c c_ecb.c c_ofb64.c c_skey.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
+SRCS+=3D	c_skey.c c_ecb.c c_cfb64.c c_ofb64.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
 SRCS+=3D	cast-586.s
 .else
 SRCS+=3D	c_enc.c
 .endif
=2DINCS+=3D	cast.h
+INCS+=3D	cast.h cast_s.h cast_lcl.h
=20
=2D# camellia
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386" || ${MACHINE_CPUARCH} =3D=3D "amd64"
=2DSRCS+=3D	camellia.c cmll_cbc.c cmll_cfb.c cmll_ctr.c cmll_ecb.c \
=2D	cmll_misc.c cmll_ofb.c
=2DINCS+=3D	camellia.h
=2D.endif
+# cms
+SCRS=3D+	cms_lib.c cms_asn1.c cms_att.c cms_io.c cms_smime.c cms_err.c \
+	cms_sd.c cms_dd.c cms_cd.c cms_env.c cms_enc.c cms_ess.c
+INCS+=3D	cms.h cms_lcl.h
=20
 # comp
 SRCS+=3D	c_rle.c c_zlib.c comp_err.c comp_lib.c
@@ -109,85 +129,92 @@
=20
 # conf
 SRCS+=3D	conf_api.c conf_def.c conf_err.c conf_lib.c conf_mall.c conf_mod.=
c conf_sap.c
=2DINCS+=3D	conf.h conf_api.h
+INCS+=3D	conf.h conf_api.h conf_def.h
=20
 # des
=2DSRCS+=3D	cbc3_enc.c cbc_cksm.c cbc_enc.c cfb64ede.c cfb64enc.c cfb_enc.c=
 \
=2D	des_lib.c des_old.c des_old2.c ecb3_enc.c ecb_enc.c ede_cbcm_enc.c \
=2D	enc_read.c enc_writ.c fcrypt.c ofb64ede.c ofb64enc.c \
=2D	ofb_enc.c pcbc_enc.c qud_cksm.c rand_key.c read2pwd.c \
=2D	rpc_enc.c set_key.c str2key.c xcbc_enc.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
+SRCS+=3D	cbc_cksm.c cbc_enc.c  cfb64enc.c cfb_enc.c  \
+	ecb3_enc.c ecb_enc.c  enc_read.c enc_writ.c \
+	fcrypt.c ofb64enc.c ofb_enc.c  pcbc_enc.c \
+	qud_cksm.c rand_key.c rpc_enc.c  set_key.c  \
+	xcbc_enc.c \
+	str2key.c  cfb64ede.c ofb64ede.c ede_cbcm_enc.c des_old.c des_old2.c \
+	read2pwd.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
 SRCS+=3D	des-586.s crypt586.s
 .else
 SRCS+=3D	des_enc.c fcrypt_b.c
 .endif
=2DINCS+=3D	des.h des_old.h
+INCS+=3D	des.h des_old.h des_locl.h spr.h des_ver.h
=20
 # dh
=2DSRCS+=3D	dh_asn1.c dh_check.c dh_err.c dh_depr.c dh_gen.c dh_key.c dh_li=
b.c
+SRCS+=3D	dh_asn1.c dh_gen.c dh_key.c dh_lib.c dh_check.c dh_err.c dh_depr.=
c \
+	dh_ameth.c dh_pmeth.c dh_prn.c
 INCS+=3D	dh.h
=20
 # dsa
=2DSRCS+=3D	dsa_asn1.c dsa_err.c dsa_depr.c dsa_gen.c dsa_key.c dsa_lib.c \
=2D	dsa_ossl.c dsa_sign.c dsa_vrf.c dsa_utl.c
=2DINCS+=3D	dsa.h
+SRCS+=3D	dsa_gen.c dsa_key.c dsa_lib.c dsa_asn1.c dsa_vrf.c dsa_sign.c \
+	dsa_err.c dsa_ossl.c dsa_depr.c dsa_ameth.c dsa_pmeth.c dsa_prn.c
+INCS+=3D	dsa.h dsa_locl.h
=20
 # dso
=2DSRCS+=3D	dso_dl.c dso_dlfcn.c dso_err.c dso_lib.c dso_null.c dso_openssl=
=2Ec
+SRCS+=3D	dso_dl.c dso_dlfcn.c dso_err.c dso_lib.c dso_null.c \
+	dso_openssl.c dso_win32.c dso_vms.c dso_beos.c
 INCS+=3D	dso.h
=20
 # ec
=2DSRCS+=3D	ec_asn1.c ec_check.c ec_curve.c ec_cvt.c ec_err.c ec_key.c \
=2D	ec_lib.c ec_mult.c ec_print.c ecp_mont.c ecp_nist.c \
=2D	ecp_smpl.c ec2_mult.c ec2_smpl.c
=2DINCS+=3D	ec.h
+SRCS+=3D	ec_lib.c ecp_smpl.c ecp_mont.c ecp_nist.c ec_cvt.c ec_mult.c \
+	ec_err.c ec_curve.c ec_check.c ec_print.c ec_asn1.c ec_key.c \
+	ec2_smpl.c ec2_mult.c ec_ameth.c ec_pmeth.c eck_prn.c
+INCS+=3D	ec.h ec_lcl.h
=20
 # ecdh
 SRCS+=3D	ech_err.c ech_key.c ech_lib.c ech_ossl.c
=2DINCS+=3D	ecdh.h
+INCS+=3D	ecdh.h ech_locl.h
=20
 # ecdsa
 SRCS+=3D	ecs_asn1.c ecs_err.c ecs_lib.c ecs_ossl.c ecs_sign.c ecs_vrf.c
=2DINCS+=3D	ecdsa.h
+INCS+=3D	ecdsa.h ecs_locl.h
=20
 # engine
=2DSRCS+=3D	eng_all.c eng_cnf.c eng_cryptodev.c eng_ctrl.c eng_dyn.c \
=2D	eng_err.c eng_fat.c eng_init.c eng_lib.c eng_list.c \
=2D	eng_openssl.c eng_padlock.c eng_pkey.c eng_table.c tb_cipher.c \
=2D	tb_dh.c tb_digest.c tb_dsa.c tb_ecdh.c tb_ecdsa.c tb_rand.c \
=2D	tb_rsa.c tb_store.c
+SRCS+=3D	eng_err.c eng_lib.c eng_list.c eng_init.c eng_ctrl.c \
+	eng_table.c eng_pkey.c eng_fat.c eng_all.c \
+	tb_rsa.c tb_dsa.c tb_ecdsa.c tb_dh.c tb_ecdh.c tb_rand.c tb_store.c \
+	tb_cipher.c tb_digest.c tb_pkmeth.c tb_asnmth.c \
+	eng_openssl.c eng_cnf.c eng_dyn.c eng_cryptodev.c
 INCS+=3D	engine.h
=20
 # err
=2DSRCS+=3D	err.c err_all.c err_prn.c err_def.c err_str.c err_bio.c
+SRCS+=3D	err.c err_all.c err_prn.c
 INCS+=3D	err.h
=20
 # evp
=2DSRCS+=3D	bio_b64.c bio_enc.c bio_md.c bio_ok.c c_all.c c_allc.c c_alld.c=
 \
=2D	dig_eng.c digest.c e_aes.c e_bf.c e_cast.c e_des.c e_des3.c e_idea.c \
=2D	e_null.c e_old.c e_rc2.c e_rc4.c e_rc5.c e_xcbc_d.c encode.c \
=2D	evp_acnf.c evp_cnf.c evp_enc.c evp_err.c evp_key.c evp_lib.c evp_pbe.c \
=2D	evp_pkey.c e_seed.c enc_min.c m_dss.c m_dss1.c m_ecdsa.c m_md2.c m_md4.=
c m_md5.c \
=2D	m_mdc2.c m_null.c m_ripemd.c m_sha.c m_sha1.c names.c \
=2D	openbsd_hw.c p5_crpt.c p5_crpt2.c p_dec.c p_enc.c p_lib.c \
=2D	p_open.c p_seal.c p_sign.c p_verify.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386" || ${MACHINE_CPUARCH} =3D=3D "amd64"
+SRCS+=3D	encode.c digest.c evp_enc.c evp_key.c evp_acnf.c \
+	e_des.c e_bf.c e_idea.c e_des3.c \
+	e_rc4.c e_aes.c names.c e_seed.c \
+	e_xcbc_d.c e_rc2.c e_cast.c e_rc5.c \
+	m_null.c m_md2.c m_md4.c m_md5.c m_sha.c m_sha1.c m_wp.c \
+	m_dss.c m_dss1.c m_mdc2.c m_ripemd.c m_ecdsa.c \
+	p_open.c p_seal.c p_sign.c p_verify.c p_lib.c p_enc.c p_dec.c \
+	bio_md.c bio_b64.c bio_enc.c evp_err.c e_null.c \
+	c_all.c c_allc.c c_alld.c evp_lib.c bio_ok.c \
+	evp_pkey.c evp_pbe.c p5_crpt.c p5_crpt2.c \
+	e_old.c pmeth_lib.c pmeth_fn.c pmeth_gn.c m_sigver.c
+.if ${MACHINE_ARCH} =3D=3D "i386" || ${MACHINE_ARCH} =3D=3D "amd64"
 SRCS+=3D	e_camellia.c
 .endif
=2DINCS+=3D	evp.h
+INCS+=3D	evp.h evp_locl.h
=20
 # fips
 INCS+=3D	fips.h fips_rand.h
=20
 # hmac
=2DSRCS+=3D	hmac.c
+SRCS+=3D	hmac.c hm_ameth.c hm_pmeth.c
 INCS+=3D	hmac.h
=20
 # idea
 .if ${MK_IDEA} !=3D "no"
 SRCS+=3D	i_cbc.c i_cfb64.c i_ecb.c i_ofb64.c i_skey.c
=2DINCS+=3D	idea.h
+INCS+=3D	idea.h idea_lcl.h
 .endif
=20
 # krb5
@@ -204,22 +231,28 @@
=20
 # md4
 SRCS+=3D	md4_dgst.c md4_one.c
=2DINCS+=3D	md4.h
+INCS+=3D	md4.h md4_locl.h
=20
 # md5
 SRCS+=3D	md5_dgst.c md5_one.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
+.if ${MACHINE_ARCH} =3D=3D "i386"
 SRCS+=3D	md5-586.s
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D	md5-amd64.s
 .endif
=2DINCS+=3D	md5.h
+INCS+=3D	md5.h md5_locl.h
=20
 # mdc2
 SRCS+=3D	mdc2_one.c mdc2dgst.c
 INCS+=3D	mdc2.h
=20
+# modes
+SRCS+=3D	cbc128.c ctr128.c cts128.c cfb128.c ofb128.c
+INCS+=3D	modes.h
+
 # objects
=2DSRCS+=3D	o_names.c obj_dat.c obj_err.c obj_lib.c
=2DINCS+=3D	objects.h obj_mac.h
+SRCS+=3D	o_names.c obj_dat.c obj_err.c obj_lib.c obj_xref.c
+INCS+=3D	objects.h obj_mac.h obj_dat.h obj_xref.h
=20
 # ocsp
 SRCS+=3D	ocsp_asn.c ocsp_cl.c ocsp_err.c ocsp_ext.c ocsp_ht.c \
@@ -228,66 +261,74 @@
=20
 # pem
 SRCS+=3D	pem_all.c pem_err.c pem_info.c pem_lib.c pem_oth.c pem_pk8.c \
=2D	pem_pkey.c pem_seal.c pem_sign.c pem_x509.c pem_xaux.c
+	pem_pkey.c pem_seal.c pem_sign.c pem_x509.c pem_xaux.c pvkfmt.c
 INCS+=3D	pem.h pem2.h
=20
 # pkcs12
 SRCS+=3D	p12_add.c p12_asn.c p12_attr.c p12_crpt.c p12_crt.c \
 	p12_decr.c p12_init.c p12_key.c p12_kiss.c p12_mutl.c \
 	p12_npas.c p12_p8d.c p12_p8e.c p12_utl.c pk12err.c
=2DINCS+=3D	pkcs12.h pkcs7.h
+INCS+=3D	pkcs12.h
=20
 # pkcs7
=2DSRCS+=3D	example.c pk7_asn1.c pk7_attr.c pk7_dgst.c pk7_doit.c \
=2D	pk7_lib.c pk7_mime.c pk7_smime.c pkcs7err.c
+SRCS+=3D	pk7_asn1.c pk7_lib.c pkcs7err.c pk7_doit.c pk7_smime.c pk7_attr.c=
 \
+	pk7_mime.c bio_pk7.c
+INCS+=3D	pkcs7.h
=20
 # pqueue
 SRCS+=3D	pqueue.c
=2DINCS+=3D	pqueue.h pq_compat.h
+INCS+=3D	pqueue.h
=20
 # rand
=2DSRCS+=3D	md_rand.c rand_egd.c rand_err.c rand_lib.c rand_unix.c randfile=
=2Ec rand_eng.c
+SRCS+=3D	md_rand.c randfile.c rand_lib.c rand_err.c rand_egd.c \
+	rand_win.c rand_unix.c rand_os2.c rand_nw.c
 INCS+=3D	rand.h
=20
 # rc2
 SRCS+=3D	rc2_cbc.c rc2_ecb.c rc2_skey.c rc2cfb64.c rc2ofb64.c
=2DINCS+=3D	rc2.h
+INCS+=3D	rc2.h rc2_locl.h
=20
 # rc4
=2DSRCS+=3D	rc4_skey.c rc4_fblk.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
=2DSRCS+=3D	rc4-586.s
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	rc4-586.s rc4_skey.c
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D	rc4-amd64.s
 .else
=2DSRCS+=3D	rc4_enc.c
+SRCS+=3D	rc4_enc.c rc4_skey.c
 .endif
=2DINCS+=3D	rc4.h
+INCS+=3D	rc4.h rc4_locl.h
=20
 # rc5
 SRCS+=3D	rc5_ecb.c rc5_skey.c rc5cfb64.c rc5ofb64.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
+.if ${MACHINE_ARCH} =3D=3D "i386"
 SRCS+=3D	rc5-586.s
 .else
 SRCS+=3D	rc5_enc.c
 .endif
=2DINCS+=3D	rc5.h
+INCS+=3D	rc5.h rc5_locl.h
=20
 # ripemd
 SRCS+=3D	rmd_dgst.c rmd_one.c
=2DINCS+=3D	ripemd.h
+INCS+=3D	ripemd.h rmd_locl.h rmdconst.h
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	rmd-586.s
+.endif
=20
 # rsa
=2DSRCS+=3D	rsa_asn1.c rsa_chk.c rsa_eay.c rsa_err.c rsa_gen.c rsa_lib.c \
=2D	rsa_none.c rsa_null.c rsa_oaep.c rsa_pk1.c rsa_saos.c \
=2D	rsa_sign.c rsa_ssl.c rsa_depr.c rsa_pss.c rsa_x931.c rsa_x931g.c \
=2D	rsa_eng.c
+SRCS+=3D	rsa_eay.c rsa_gen.c rsa_lib.c rsa_sign.c rsa_saos.c rsa_err.c \
+	rsa_pk1.c rsa_ssl.c rsa_none.c rsa_oaep.c rsa_chk.c rsa_null.c \
+	rsa_pss.c rsa_x931.c rsa_asn1.c rsa_depr.c rsa_ameth.c rsa_prn.c \
+	rsa_pmeth.c
 INCS+=3D	rsa.h
=20
 # sha
 SRCS+=3D	sha1_one.c sha1dgst.c sha_dgst.c sha_one.c sha256.c sha512.c
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
=2DSRCS+=3D	sha1-586.s
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	sha1-586.s sha256-586.s sha512-586.s
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D	sha1-amd64.s sha512-amd64.s
 .endif
=2DINCS+=3D	sha.h
+INCS+=3D	sha.h sha_locl.h
=20
 # stack
 SRCS+=3D	stack.c
@@ -295,11 +336,17 @@
=20
 # store
 SRCS+=3D	str_err.c str_lib.c str_meth.c str_mem.c
=2DINCS+=3D	store.h
+INCS+=3D	store.h str_locl.h
=20
 # threads
 SRCS+=3D	th-lock.c
=20
+# ts
+SRCS+=3D	ts_err.c ts_req_utils.c ts_req_print.c ts_rsp_utils.c ts_rsp_prin=
t.c \
+	ts_rsp_sign.c ts_rsp_verify.c ts_verify_ctx.c ts_lib.c ts_conf.c \
+	ts_asn1.c
+INCS+=3D	ts.h
+
 # txt_db
 SRCS+=3D	txt_db.c
 INCS+=3D	txt_db.h
@@ -308,6 +355,17 @@
 SRCS+=3D	ui_compat.c ui_err.c ui_lib.c ui_openssl.c ui_util.c
 INCS+=3D	ui.h ui_compat.h ui_locl.h
=20
+# whrlpool
+SRCS+=3D	wp_dgst.c
+.if ${MACHINE_ARCH} =3D=3D "i386"
+SRCS+=3D	wp_block.c
+.elif ${MACHINE_ARCH} =3D=3D "amd64"
+SRCS+=3D  whirlpool-amd64.s
+.else
+SRCS+=3D	wp_block.c
+.endif
+INCS+=3D	whrlpool.h wp_locl.h
+
 # x509
 SRCS+=3D	by_dir.c by_file.c x509_att.c x509_cmp.c x509_d2.c \
 	x509_def.c x509_err.c x509_ext.c x509_lu.c x509_obj.c \
@@ -324,21 +382,8 @@
 	v3_ia5.c v3_info.c v3_int.c v3_lib.c v3_ncons.c v3_ocsp.c \
 	v3_pci.c v3_pcia.c v3_pcons.c v3_pku.c v3_pmaps.c v3_prn.c \
 	v3_purp.c v3_skey.c v3_sxnet.c v3_utl.c v3err.c
=2DINCS+=3D	x509v3.h
+INCS+=3D	x509v3.h pcy_int.h
=20
=2D# cms
=2D#SRCS+=3D	cms_lib.c cms_asn1.c cms_att.c cms_io.c cms_smime.c cms_err.c \
=2D#	cms_sd.c cms_dd.c cms_cd.c cms_env.c cms_enc.c cms_ess.c
=2D#INCS+=3D	cms.h
=2D
=2D# jpake - is marked experimental
=2D#SRCS+=3D	jpake.c jpake_err.c
=2D#INCS+=3D	jpake.h
=2D
=2D# seed
=2D#SRCS+=3D	seed.c seed_ecb.c seed_cbc.c seed_cfb.c seed_ofb.c
=2D#INCS+=3D	seed.h
=2D
 SRCS+=3D	buildinf.h
 INCS+=3D	opensslconf.h evp.h
 INCSDIR=3D	${INCLUDEDIR}/openssl
@@ -352,18 +397,12 @@
 	echo "  /* auto-generated by crypto/Makefile.ssl for crypto/cversion.c */=
"; \
 	echo "  #define CFLAGS \"$(CC)\""; \
 	echo "  #define PLATFORM \"FreeBSD-${MACHINE_ARCH}\""; \
+	echo "  #define DATE \"`LC_ALL=3DC date`\""; \
 	echo "#endif" ) > ${.TARGET}
=20
=2Dopensslconf.h: opensslconf-${MACHINE_CPUARCH}.h
=2D	cp -f ${.ALLSRC} ${.TARGET}
+opensslconf.h: opensslconf-${MACHINE_ARCH}.h
+	cp ${.ALLSRC} ${.TARGET}
=20
=2Devp.h: ${LCRYPTO_SRC}/crypto/evp/evp.h
=2D.if ${MK_IDEA} =3D=3D "no"
=2D	sed '/^#ifndef OPENSSL_NO_IDEA$$/,/^#endif$$/d' ${.ALLSRC} > ${.TARGET}
=2D.else
=2D	cp -f ${.ALLSRC} ${.TARGET}
=2D.endif
=2D
 # No FIPS support for now
 fips.h:
 	echo '/* dummy fips.h */' > ${.TARGET}
@@ -383,12 +422,12 @@
=20
 .include <bsd.lib.mk>
=20
=2D.if ${MACHINE_CPUARCH} =3D=3D "i386"
+.if ${MACHINE_ARCH} =3D=3D "i386"
 .PATH: ${.CURDIR}/i386
 .endif
=20
=2D.if ${MACHINE_CPUARCH} =3D=3D "amd64"
=2D_bn_asmpath=3D	${LCRYPTO_SRC}/crypto/bn/asm
+.if ${MACHINE_ARCH} =3D=3D "amd64"
+.PATH: ${.CURDIR}/amd64
 .endif
=20
 .if ${MK_IDEA} !=3D "no"
@@ -401,12 +440,11 @@
 	${LCRYPTO_SRC}/crypto/asn1 \
 	${LCRYPTO_SRC}/crypto/bf \
 	${LCRYPTO_SRC}/crypto/bio \
=2D	${_bn_asmpath} \
+	${LCRYPTO_SRC}/crypto/cms \
 	${LCRYPTO_SRC}/crypto/bn \
 	${LCRYPTO_SRC}/crypto/buffer \
 	${LCRYPTO_SRC}/crypto/cast \
 	${LCRYPTO_SRC}/crypto/camellia \
=2D	${LCRYPTO_SRC}/crypto/cms \
 	${LCRYPTO_SRC}/crypto/comp \
 	${LCRYPTO_SRC}/crypto/conf \
 	${LCRYPTO_SRC}/crypto/des \
@@ -421,13 +459,13 @@
 	${LCRYPTO_SRC}/crypto/evp \
 	${LCRYPTO_SRC}/crypto/hmac \
 	${_ideapath} \
=2D	${LCRYPTO_SRC}/crypto/jpake \
 	${LCRYPTO_SRC}/crypto/krb5 \
 	${LCRYPTO_SRC}/crypto/lhash \
 	${LCRYPTO_SRC}/crypto/md2 \
 	${LCRYPTO_SRC}/crypto/md4 \
 	${LCRYPTO_SRC}/crypto/md5 \
 	${LCRYPTO_SRC}/crypto/mdc2 \
+	${LCRYPTO_SRC}/crypto/modes \
 	${LCRYPTO_SRC}/crypto/objects \
 	${LCRYPTO_SRC}/crypto/ocsp \
 	${LCRYPTO_SRC}/crypto/pem \
@@ -440,13 +478,14 @@
 	${LCRYPTO_SRC}/crypto/rc5 \
 	${LCRYPTO_SRC}/crypto/ripemd \
 	${LCRYPTO_SRC}/crypto/rsa \
=2D	${LCRYPTO_SRC}/crypto/seed \
 	${LCRYPTO_SRC}/crypto/sha \
 	${LCRYPTO_SRC}/crypto/stack \
 	${LCRYPTO_SRC}/crypto/store \
 	${LCRYPTO_SRC}/crypto/threads \
+	${LCRYPTO_SRC}/crypto/ts \
 	${LCRYPTO_SRC}/crypto/txt_db \
 	${LCRYPTO_SRC}/crypto/ui \
+	${LCRYPTO_SRC}/crypto/whrlpool \
 	${LCRYPTO_SRC}/crypto/x509 \
 	${LCRYPTO_SRC}/crypto/x509v3 \
 	${LCRYPTO_SRC}/engines \
Index: secure/lib/libssl/Makefile.man
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libssl/Makefile.man	(revision 218560)
+++ secure/lib/libssl/Makefile.man	(working copy)
@@ -1,4 +1,4 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libssl/Makefile.man,v 1.4.12.1 2010/02/10 00:26=
:20 kensmith Exp $
 # DO NOT EDIT: generated from man-makefile-update target
 MAN+=3D SSL_CIPHER_get_name.3
 MAN+=3D SSL_COMP_add_compression_method.3
@@ -135,11 +135,8 @@
 MLINKS+=3D SSL_CTX_set_msg_callback.3 SSL_set_msg_callback.3
 MLINKS+=3D SSL_CTX_set_msg_callback.3 SSL_get_msg_callback_arg.3
 MLINKS+=3D SSL_CTX_set_options.3 SSL_set_options.3
=2DMLINKS+=3D SSL_CTX_set_options.3 SSL_CTX_clear_options.3
=2DMLINKS+=3D SSL_CTX_set_options.3 SSL_clear_options.3
 MLINKS+=3D SSL_CTX_set_options.3 SSL_CTX_get_options.3
 MLINKS+=3D SSL_CTX_set_options.3 SSL_get_options.3
=2DMLINKS+=3D SSL_CTX_set_options.3 SSL_get_secure_renegotiation_support.3
 MLINKS+=3D SSL_CTX_set_quiet_shutdown.3 SSL_CTX_get_quiet_shutdown.3
 MLINKS+=3D SSL_CTX_set_quiet_shutdown.3 SSL_set_quiet_shutdown.3
 MLINKS+=3D SSL_CTX_set_quiet_shutdown.3 SSL_get_quiet_shutdown.3
Index: secure/lib/libssl/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- secure/lib/libssl/Makefile	(revision 218560)
+++ secure/lib/libssl/Makefile	(working copy)
@@ -1,7 +1,7 @@
=2D# $FreeBSD$
+# $FreeBSD: src/secure/lib/libssl/Makefile,v 1.25.10.1 2010/02/10 00:26:20=
 kensmith Exp $
=20
 LIB=3D		ssl
=2DSHLIB_MAJOR=3D	6
+SHLIB_MAJOR=3D	7
=20
 NO_LINT=3D
=20
@@ -10,16 +10,18 @@
 .endif
 .include "../libcrypto/Makefile.inc"
=20
=2DSRCS=3D	bio_ssl.c d1_meth.c d1_srvr.c d1_clnt.c d1_lib.c d1_pkt.c \
+SRCS=3D	s2_meth.c s2_srvr.c s2_clnt.c s2_lib.c s2_enc.c s2_pkt.c \
+	s3_meth.c s3_srvr.c s3_clnt.c s3_lib.c s3_enc.c s3_pkt.c s3_both.c \
+	s23_meth.c s23_srvr.c s23_clnt.c s23_lib.c s23_pkt.c \
+	t1_meth.c   t1_srvr.c t1_clnt.c  t1_lib.c  t1_enc.c \
+	d1_meth.c   d1_srvr.c d1_clnt.c  d1_lib.c  d1_pkt.c \
 	d1_both.c d1_enc.c \
=2D	s23_clnt.c s23_lib.c s23_meth.c s23_pkt.c s23_srvr.c \
=2D	s2_clnt.c s2_enc.c s2_lib.c s2_meth.c s2_pkt.c s2_srvr.c \
=2D	s3_both.c s3_clnt.c s3_enc.c s3_lib.c s3_meth.c s3_pkt.c \
=2D	s3_srvr.c ssl_algs.c ssl_asn1.c ssl_cert.c ssl_ciph.c \
=2D	ssl_err.c ssl_err2.c ssl_lib.c ssl_rsa.c ssl_sess.c ssl_stat.c \
=2D	ssl_txt.c t1_clnt.c t1_enc.c t1_lib.c t1_meth.c t1_reneg.c t1_srvr.c
+	ssl_lib.c ssl_err2.c ssl_cert.c ssl_sess.c \
+	ssl_ciph.c ssl_stat.c ssl_rsa.c \
+	ssl_asn1.c ssl_txt.c ssl_algs.c \
+	bio_ssl.c ssl_err.c kssl.c t1_reneg.c
=20
=2DINCS=3D	dtls1.h kssl.h ssl.h ssl2.h ssl23.h ssl3.h tls1.h
+INCS=3D	ssl.h ssl2.h ssl3.h ssl23.h tls1.h dtls1.h kssl.h ssl_locl.h kssl_=
lcl.h
 INCSDIR=3D${INCLUDEDIR}/openssl
=20
 DPADD=3D	${LIBCRYPTO}
Index: contrib/sendmail/src/tls.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- contrib/sendmail/src/tls.c	(revision 218560)
+++ contrib/sendmail/src/tls.c	(working copy)
@@ -1168,7 +1168,7 @@
 	MACROS_T *mac;
 	bool certreq;
 {
=2D	SSL_CIPHER *c;
+	const SSL_CIPHER *c;
 	int b, r;
 	long verifyok;
 	char *s, *who;
Index: lib/libfetch/common.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=2D-- lib/libfetch/common.h	(revision 214334)
+++ lib/libfetch/common.h	(working copy)
@@ -56,7 +56,7 @@
 	SSL		*ssl;		/* SSL handle */
 	SSL_CTX		*ssl_ctx;	/* SSL context */
 	X509		*ssl_cert;	/* server certificate */
=2D	SSL_METHOD	*ssl_meth;	/* SSL method */
+	const SSL_METHOD *ssl_meth;	/* SSL method */
 #endif
 	int		 ref;		/* reference count */
 };

--Boundary-01=_upPWNzFiu0QAi6n--

--nextPart1429621.SlMcb6ZHAa
Content-Type: application/pgp-signature; name=signature.asc 
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (FreeBSD)

iF4EABEIAAYFAk1Y+nIACgkQVHYVC4W8mziszQD/fuNuik1iHd6lGFuAzKk1diiD
x2JRHHk0Z7aQqwaQRrQA/3/0cU/QV57M6Nl9T6t/03Az1A5SsXKG5VB89fPTcoN6
=/LT3
-----END PGP SIGNATURE-----

--nextPart1429621.SlMcb6ZHAa--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201102141048.34294.alexandre.martins>