54176c:	33 fe                	xor    %esi,%edi
54176e:	c1 e8 08             	shr    $0x8,%eax
541771:	0f b6 c0             	movzbl %al,%eax
541774:	8b 0c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%ecx
54177b:	33 0c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ecx
541782:	8b c2                	mov    %edx,%eax
541784:	c1 e8 18             	shr    $0x18,%eax
541787:	33 0c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ecx
54178e:	0f b6 c2             	movzbl %dl,%eax
541791:	8b d7                	mov    %edi,%edx
541793:	81 e2 00 00 ff 00    	and    $0xff0000,%edx
541799:	33 0c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%ecx
5417a0:	8b c7                	mov    %edi,%eax
5417a2:	c1 e8 10             	shr    $0x10,%eax
5417a5:	33 ce                	xor    %esi,%ecx
5417a7:	33 d0                	xor    %eax,%edx
5417a9:	33 d9                	xor    %ecx,%ebx
5417ab:	8b c7                	mov    %edi,%eax
5417ad:	c1 ea 08             	shr    $0x8,%edx
5417b0:	c1 e7 10             	shl    $0x10,%edi
5417b3:	25 00 ff 00 00       	and    $0xff00,%eax
5417b8:	33 c7                	xor    %edi,%eax
5417ba:	33 f3                	xor    %ebx,%esi
5417bc:	c1 e0 08             	shl    $0x8,%eax
5417bf:	8b fe                	mov    %esi,%edi
5417c1:	33 d0                	xor    %eax,%edx
5417c3:	c1 ef 08             	shr    $0x8,%edi
5417c6:	8b c6                	mov    %esi,%eax
5417c8:	c1 c3 10             	rol    $0x10,%ebx
5417cb:	c1 e0 08             	shl    $0x8,%eax
5417ce:	33 f8                	xor    %eax,%edi
5417d0:	c1 e6 08             	shl    $0x8,%esi
5417d3:	81 e7 ff 00 ff 00    	and    $0xff00ff,%edi
5417d9:	33 fe                	xor    %esi,%edi
5417db:	33 fb                	xor    %ebx,%edi
5417dd:	33 da                	xor    %edx,%ebx
5417df:	33 cf                	xor    %edi,%ecx
5417e1:	33 d7                	xor    %edi,%edx
5417e3:	33 d9                	xor    %ecx,%ebx
5417e5:	89 4c 24 34          	mov    %ecx,0x34(%esp)
5417e9:	33 fb                	xor    %ebx,%edi
5417eb:	89 5c 24 38          	mov    %ebx,0x38(%esp)
5417ef:	8b 5c 24 60          	mov    0x60(%esp),%ebx
5417f3:	89 54 24 30          	mov    %edx,0x30(%esp)
5417f7:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
5417fd:	0f 8e 8c 00 00 00    	jle    0x54188f
541803:	0f b6 4d 10          	movzbl 0x10(%ebp),%ecx
541807:	0f b6 45 11          	movzbl 0x11(%ebp),%eax
54180b:	0f b6 55 14          	movzbl 0x14(%ebp),%edx
54180f:	c1 e1 08             	shl    $0x8,%ecx
541812:	33 c8                	xor    %eax,%ecx
541814:	c1 e2 08             	shl    $0x8,%edx
541817:	0f b6 45 12          	movzbl 0x12(%ebp),%eax
54181b:	c1 e1 08             	shl    $0x8,%ecx
54181e:	33 c8                	xor    %eax,%ecx
541820:	0f b6 45 13          	movzbl 0x13(%ebp),%eax
541824:	c1 e1 08             	shl    $0x8,%ecx
541827:	33 c8                	xor    %eax,%ecx
541829:	0f b6 45 15          	movzbl 0x15(%ebp),%eax
54182d:	33 d0                	xor    %eax,%edx
54182f:	0f b6 45 16          	movzbl 0x16(%ebp),%eax
541833:	c1 e2 08             	shl    $0x8,%edx
541836:	33 d0                	xor    %eax,%edx
541838:	0f b6 45 17          	movzbl 0x17(%ebp),%eax
54183c:	c1 e2 08             	shl    $0x8,%edx
54183f:	33 d0                	xor    %eax,%edx
541841:	81 fb c0 00 00 00    	cmp    $0xc0,%ebx
541847:	7e 40                	jle    0x541889
541849:	0f b6 5d 18          	movzbl 0x18(%ebp),%ebx
54184d:	0f b6 45 19          	movzbl 0x19(%ebp),%eax
541851:	0f b6 75 1c          	movzbl 0x1c(%ebp),%esi
541855:	c1 e3 08             	shl    $0x8,%ebx
541858:	33 d8                	xor    %eax,%ebx
54185a:	c1 e6 08             	shl    $0x8,%esi
54185d:	0f b6 45 1a          	movzbl 0x1a(%ebp),%eax
541861:	c1 e3 08             	shl    $0x8,%ebx
541864:	33 d8                	xor    %eax,%ebx
541866:	0f b6 45 1b          	movzbl 0x1b(%ebp),%eax
54186a:	c1 e3 08             	shl    $0x8,%ebx
54186d:	33 d8                	xor    %eax,%ebx
54186f:	0f b6 45 1d          	movzbl 0x1d(%ebp),%eax
541873:	33 f0                	xor    %eax,%esi
541875:	0f b6 45 1e          	movzbl 0x1e(%ebp),%eax
541879:	c1 e6 08             	shl    $0x8,%esi
54187c:	33 f0                	xor    %eax,%esi
54187e:	0f b6 45 1f          	movzbl 0x1f(%ebp),%eax
541882:	c1 e6 08             	shl    $0x8,%esi
541885:	33 f0                	xor    %eax,%esi
541887:	eb 0e                	jmp    0x541897
541889:	33 f6                	xor    %esi,%esi
54188b:	33 db                	xor    %ebx,%ebx
54188d:	eb 08                	jmp    0x541897
54188f:	33 f6                	xor    %esi,%esi
541891:	33 db                	xor    %ebx,%ebx
541893:	33 d2                	xor    %edx,%edx
541895:	33 c9                	xor    %ecx,%ecx
541897:	33 4c 24 34          	xor    0x34(%esp),%ecx
54189b:	33 d7                	xor    %edi,%edx
54189d:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
5418a1:	33 74 24 30          	xor    0x30(%esp),%esi
5418a5:	33 5c 24 38          	xor    0x38(%esp),%ebx
5418a9:	89 4c 24 20          	mov    %ecx,0x20(%esp)
5418ad:	8b 45 10             	mov    0x10(%ebp),%eax
5418b0:	33 c1                	xor    %ecx,%eax
5418b2:	89 54 24 3c          	mov    %edx,0x3c(%esp)
5418b6:	89 44 24 30          	mov    %eax,0x30(%esp)
5418ba:	8b 45 14             	mov    0x14(%ebp),%eax
5418bd:	33 c2                	xor    %edx,%eax
5418bf:	89 5c 24 40          	mov    %ebx,0x40(%esp)
5418c3:	8b 55 18             	mov    0x18(%ebp),%edx
5418c6:	89 44 24 38          	mov    %eax,0x38(%esp)
5418ca:	33 d3                	xor    %ebx,%edx
5418cc:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
5418cf:	8b c2                	mov    %edx,%eax
5418d1:	c1 e8 10             	shr    $0x10,%eax
5418d4:	33 de                	xor    %esi,%ebx
5418d6:	0f b6 c8             	movzbl %al,%ecx
5418d9:	8b c2                	mov    %edx,%eax
5418db:	c1 e8 08             	shr    $0x8,%eax
5418de:	0f b6 c0             	movzbl %al,%eax
5418e1:	89 74 24 44          	mov    %esi,0x44(%esp)
5418e5:	8b 0c 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%ecx
5418ec:	33 0c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ecx
5418f3:	8b c2                	mov    %edx,%eax
5418f5:	c1 e8 18             	shr    $0x18,%eax
5418f8:	33 0c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ecx
5418ff:	0f b6 c2             	movzbl %dl,%eax
541902:	8b 54 24 38          	mov    0x38(%esp),%edx
541906:	33 0c 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%ecx
54190d:	8b c3                	mov    %ebx,%eax
54190f:	c1 e8 10             	shr    $0x10,%eax
541912:	89 4c 24 34          	mov    %ecx,0x34(%esp)
541916:	0f b6 c8             	movzbl %al,%ecx
541919:	8b c3                	mov    %ebx,%eax
54191b:	c1 e8 08             	shr    $0x8,%eax
54191e:	0f b6 c0             	movzbl %al,%eax
541921:	8b 3c 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%edi
541928:	33 3c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%edi
54192f:	8b c3                	mov    %ebx,%eax
541931:	c1 e8 18             	shr    $0x18,%eax
541934:	33 3c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%edi
54193b:	0f b6 c3             	movzbl %bl,%eax
54193e:	8b 5c 24 34          	mov    0x34(%esp),%ebx
541942:	33 3c 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%edi
541949:	8b c2                	mov    %edx,%eax
54194b:	c1 e8 10             	shr    $0x10,%eax
54194e:	0f b6 c8             	movzbl %al,%ecx
541951:	8b c2                	mov    %edx,%eax
541953:	c1 e8 08             	shr    $0x8,%eax
541956:	0f b6 c0             	movzbl %al,%eax
541959:	8b 34 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%esi
541960:	33 34 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%esi
541967:	8b c2                	mov    %edx,%eax
541969:	c1 e8 18             	shr    $0x18,%eax
54196c:	33 34 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%esi
541973:	0f b6 c2             	movzbl %dl,%eax
541976:	8b 54 24 30          	mov    0x30(%esp),%edx
54197a:	33 34 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%esi
541981:	8b c2                	mov    %edx,%eax
541983:	c1 e8 10             	shr    $0x10,%eax
541986:	33 f3                	xor    %ebx,%esi
541988:	0f b6 c8             	movzbl %al,%ecx
54198b:	33 df                	xor    %edi,%ebx
54198d:	8b c2                	mov    %edx,%eax
54198f:	33 fe                	xor    %esi,%edi
541991:	c1 e8 08             	shr    $0x8,%eax
541994:	0f b6 c0             	movzbl %al,%eax
541997:	8b 0c 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%ecx
54199e:	33 0c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ecx
5419a5:	8b c2                	mov    %edx,%eax
5419a7:	c1 e8 18             	shr    $0x18,%eax
5419aa:	33 0c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ecx
5419b1:	0f b6 c2             	movzbl %dl,%eax
5419b4:	33 0c 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%ecx
5419bb:	33 ce                	xor    %esi,%ecx
5419bd:	89 4c 24 28          	mov    %ecx,0x28(%esp)
5419c1:	33 d9                	xor    %ecx,%ebx
5419c3:	33 f3                	xor    %ebx,%esi
5419c5:	8b d7                	mov    %edi,%edx
5419c7:	c1 ea 08             	shr    $0x8,%edx
5419ca:	8b c7                	mov    %edi,%eax
5419cc:	c1 e0 08             	shl    $0x8,%eax
5419cf:	8b ce                	mov    %esi,%ecx
5419d1:	33 d0                	xor    %eax,%edx
5419d3:	c1 e7 08             	shl    $0x8,%edi
5419d6:	81 e1 00 00 ff 00    	and    $0xff0000,%ecx
5419dc:	8b c6                	mov    %esi,%eax
5419de:	c1 e8 10             	shr    $0x10,%eax
5419e1:	81 e2 ff 00 ff 00    	and    $0xff00ff,%edx
5419e7:	33 c8                	xor    %eax,%ecx
5419e9:	33 d7                	xor    %edi,%edx
5419eb:	c1 e9 08             	shr    $0x8,%ecx
5419ee:	8b c6                	mov    %esi,%eax
5419f0:	25 00 ff 00 00       	and    $0xff00,%eax
5419f5:	c1 e6 10             	shl    $0x10,%esi
5419f8:	33 c6                	xor    %esi,%eax
5419fa:	c1 e0 08             	shl    $0x8,%eax
5419fd:	33 c8                	xor    %eax,%ecx
5419ff:	8b 44 24 28          	mov    0x28(%esp),%eax
541a03:	c1 c0 10             	rol    $0x10,%eax
541a06:	33 cb                	xor    %ebx,%ecx
541a08:	33 c1                	xor    %ecx,%eax
541a0a:	33 da                	xor    %edx,%ebx
541a0c:	33 d8                	xor    %eax,%ebx
541a0e:	33 d1                	xor    %ecx,%edx
541a10:	33 44 24 5c          	xor    0x5c(%esp),%eax
541a14:	89 44 24 28          	mov    %eax,0x28(%esp)
541a18:	8b 44 24 10          	mov    0x10(%esp),%eax
541a1c:	33 c3                	xor    %ebx,%eax
541a1e:	33 54 24 18          	xor    0x18(%esp),%edx
541a22:	33 5c 24 14          	xor    0x14(%esp),%ebx
541a26:	33 c8                	xor    %eax,%ecx
541a28:	8b 44 24 28          	mov    0x28(%esp),%eax
541a2c:	89 44 24 48          	mov    %eax,0x48(%esp)
541a30:	89 44 24 2c          	mov    %eax,0x2c(%esp)
541a34:	33 45 20             	xor    0x20(%ebp),%eax
541a37:	89 44 24 28          	mov    %eax,0x28(%esp)
541a3b:	89 5c 24 54          	mov    %ebx,0x54(%esp)
541a3f:	89 5c 24 34          	mov    %ebx,0x34(%esp)
541a43:	33 5d 28             	xor    0x28(%ebp),%ebx
541a46:	8b c3                	mov    %ebx,%eax
541a48:	89 4c 24 50          	mov    %ecx,0x50(%esp)
541a4c:	c1 e8 10             	shr    $0x10,%eax
541a4f:	89 4c 24 30          	mov    %ecx,0x30(%esp)
541a53:	33 4d 24             	xor    0x24(%ebp),%ecx
541a56:	89 4c 24 24          	mov    %ecx,0x24(%esp)
541a5a:	0f b6 c8             	movzbl %al,%ecx
541a5d:	8b c3                	mov    %ebx,%eax
541a5f:	c1 e8 08             	shr    $0x8,%eax
541a62:	0f b6 c0             	movzbl %al,%eax
541a65:	89 54 24 4c          	mov    %edx,0x4c(%esp)
541a69:	89 54 24 38          	mov    %edx,0x38(%esp)
541a6d:	33 55 2c             	xor    0x2c(%ebp),%edx
541a70:	8b 2c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%ebp
541a77:	33 2c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ebp
541a7e:	8b c3                	mov    %ebx,%eax
541a80:	c1 e8 18             	shr    $0x18,%eax
541a83:	33 2c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ebp
541a8a:	0f b6 c3             	movzbl %bl,%eax
541a8d:	33 2c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%ebp
541a94:	8b c2                	mov    %edx,%eax
541a96:	c1 e8 10             	shr    $0x10,%eax
541a99:	0f b6 c8             	movzbl %al,%ecx
541a9c:	8b c2                	mov    %edx,%eax
541a9e:	c1 e8 08             	shr    $0x8,%eax
541aa1:	0f b6 c0             	movzbl %al,%eax
541aa4:	8b 1c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%ebx
541aab:	33 1c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ebx
541ab2:	8b c2                	mov    %edx,%eax
541ab4:	c1 e8 18             	shr    $0x18,%eax
541ab7:	33 1c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ebx
541abe:	0f b6 c2             	movzbl %dl,%eax
541ac1:	8b 54 24 24          	mov    0x24(%esp),%edx
541ac5:	33 1c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%ebx
541acc:	8b c2                	mov    %edx,%eax
541ace:	c1 e8 10             	shr    $0x10,%eax
541ad1:	0f b6 c8             	movzbl %al,%ecx
541ad4:	8b c2                	mov    %edx,%eax
541ad6:	8b 3c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%edi
541add:	c1 e8 08             	shr    $0x8,%eax
541ae0:	0f b6 c0             	movzbl %al,%eax
541ae3:	33 3c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%edi
541aea:	8b c2                	mov    %edx,%eax
541aec:	c1 e8 18             	shr    $0x18,%eax
541aef:	33 3c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%edi
541af6:	0f b6 c2             	movzbl %dl,%eax
541af9:	8b 54 24 28          	mov    0x28(%esp),%edx
541afd:	33 3c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%edi
541b04:	8b c2                	mov    %edx,%eax
541b06:	c1 e8 10             	shr    $0x10,%eax
541b09:	33 fd                	xor    %ebp,%edi
541b0b:	0f b6 c8             	movzbl %al,%ecx
541b0e:	33 eb                	xor    %ebx,%ebp
541b10:	8b c2                	mov    %edx,%eax
541b12:	33 df                	xor    %edi,%ebx
541b14:	c1 e8 08             	shr    $0x8,%eax
541b17:	0f b6 c0             	movzbl %al,%eax
541b1a:	8b 34 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%esi
541b21:	33 34 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%esi
541b28:	8b c2                	mov    %edx,%eax
541b2a:	c1 e8 18             	shr    $0x18,%eax
541b2d:	33 34 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%esi
541b34:	0f b6 c2             	movzbl %dl,%eax
541b37:	8b d3                	mov    %ebx,%edx
541b39:	81 e2 00 00 ff 00    	and    $0xff0000,%edx
541b3f:	33 34 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%esi
541b46:	8b c3                	mov    %ebx,%eax
541b48:	c1 e8 10             	shr    $0x10,%eax
541b4b:	33 f7                	xor    %edi,%esi
541b4d:	33 d0                	xor    %eax,%edx
541b4f:	33 ee                	xor    %esi,%ebp
541b51:	33 fd                	xor    %ebp,%edi
541b53:	c1 ea 08             	shr    $0x8,%edx
541b56:	8b c3                	mov    %ebx,%eax
541b58:	c1 c5 10             	rol    $0x10,%ebp
541b5b:	25 00 ff 00 00       	and    $0xff00,%eax
541b60:	c1 e3 10             	shl    $0x10,%ebx
541b63:	33 c3                	xor    %ebx,%eax
541b65:	8b cf                	mov    %edi,%ecx
541b67:	8b 5c 24 20          	mov    0x20(%esp),%ebx
541b6b:	c1 e0 08             	shl    $0x8,%eax
541b6e:	33 d0                	xor    %eax,%edx
541b70:	c1 e9 08             	shr    $0x8,%ecx
541b73:	8b c7                	mov    %edi,%eax
541b75:	c1 e7 08             	shl    $0x8,%edi
541b78:	c1 e0 08             	shl    $0x8,%eax
541b7b:	33 c8                	xor    %eax,%ecx
541b7d:	8b c2                	mov    %edx,%eax
541b7f:	81 e1 ff 00 ff 00    	and    $0xff00ff,%ecx
541b85:	33 c5                	xor    %ebp,%eax
541b87:	33 cf                	xor    %edi,%ecx
541b89:	8b fb                	mov    %ebx,%edi
541b8b:	33 cd                	xor    %ebp,%ecx
541b8d:	33 f1                	xor    %ecx,%esi
541b8f:	33 c6                	xor    %esi,%eax
541b91:	33 fe                	xor    %esi,%edi
541b93:	8b 74 24 3c          	mov    0x3c(%esp),%esi
541b97:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
541b9b:	8b fe                	mov    %esi,%edi
541b9d:	33 f8                	xor    %eax,%edi
541b9f:	33 f9                	xor    %ecx,%edi
541ba1:	89 7c 24 20          	mov    %edi,0x20(%esp)
541ba5:	8b 7c 24 40          	mov    0x40(%esp),%edi
541ba9:	8b ef                	mov    %edi,%ebp
541bab:	33 e8                	xor    %eax,%ebp
541bad:	89 6c 24 24          	mov    %ebp,0x24(%esp)
541bb1:	8b 6c 24 44          	mov    0x44(%esp),%ebp
541bb5:	8b c5                	mov    %ebp,%eax
541bb7:	33 c2                	xor    %edx,%eax
541bb9:	8b 54 24 64          	mov    0x64(%esp),%edx
541bbd:	33 c1                	xor    %ecx,%eax
541bbf:	8b cb                	mov    %ebx,%ecx
541bc1:	89 44 24 28          	mov    %eax,0x28(%esp)
541bc5:	8b c5                	mov    %ebp,%eax
541bc7:	c1 e9 13             	shr    $0x13,%ecx
541bca:	c1 e0 0d             	shl    $0xd,%eax
541bcd:	33 c8                	xor    %eax,%ecx
541bcf:	33 4c 24 5c          	xor    0x5c(%esp),%ecx
541bd3:	89 0a                	mov    %ecx,(%edx)
541bd5:	8b ce                	mov    %esi,%ecx
541bd7:	8b c3                	mov    %ebx,%eax
541bd9:	c1 e9 13             	shr    $0x13,%ecx
541bdc:	c1 e0 0d             	shl    $0xd,%eax
541bdf:	33 c8                	xor    %eax,%ecx
541be1:	8b c7                	mov    %edi,%eax
541be3:	33 4c 24 10          	xor    0x10(%esp),%ecx
541be7:	89 4a 04             	mov    %ecx,0x4(%edx)
541bea:	8b ce                	mov    %esi,%ecx
541bec:	c1 e1 0d             	shl    $0xd,%ecx
541bef:	c1 e8 13             	shr    $0x13,%eax