5408b1:	c1 e8 10             	shr    $0x10,%eax
5408b4:	88 03                	mov    %al,(%ebx)
5408b6:	8b c1                	mov    %ecx,%eax
5408b8:	c1 e8 08             	shr    $0x8,%eax
5408bb:	88 42 02             	mov    %al,0x2(%edx)
5408be:	88 4a 03             	mov    %cl,0x3(%edx)
5408c1:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5408c5:	8b c1                	mov    %ecx,%eax
5408c7:	c1 e8 18             	shr    $0x18,%eax
5408ca:	88 42 04             	mov    %al,0x4(%edx)
5408cd:	8b c1                	mov    %ecx,%eax
5408cf:	c1 e8 10             	shr    $0x10,%eax
5408d2:	88 42 05             	mov    %al,0x5(%edx)
5408d5:	8b c1                	mov    %ecx,%eax
5408d7:	c1 e8 08             	shr    $0x8,%eax
5408da:	88 42 06             	mov    %al,0x6(%edx)
5408dd:	8b 44 24 34          	mov    0x34(%esp),%eax
5408e1:	88 4a 07             	mov    %cl,0x7(%edx)
5408e4:	8a 04 28             	mov    (%eax,%ebp,1),%al
5408e7:	32 04 16             	xor    (%esi,%edx,1),%al
5408ea:	88 45 00             	mov    %al,0x0(%ebp)
5408ed:	45                   	inc    %ebp
5408ee:	88 04 16             	mov    %al,(%esi,%edx,1)
5408f1:	46                   	inc    %esi
5408f2:	8b 44 24 34          	mov    0x34(%esp),%eax
5408f6:	83 e6 07             	and    $0x7,%esi
5408f9:	83 6c 24 24 01       	subl   $0x1,0x24(%esp)
5408fe:	0f 85 3c ff ff ff    	jne    0x540840
540904:	8b 44 24 30          	mov    0x30(%esp),%eax
540908:	5f                   	pop    %edi
540909:	5b                   	pop    %ebx
54090a:	89 30                	mov    %esi,(%eax)
54090c:	5e                   	pop    %esi
54090d:	5d                   	pop    %ebp
54090e:	83 c4 08             	add    $0x8,%esp
540911:	c3                   	ret
540912:	8b 44 24 20          	mov    0x20(%esp),%eax
540916:	89 44 24 34          	mov    %eax,0x34(%esp)
54091a:	8b 44 24 1c          	mov    0x1c(%esp),%eax
54091e:	89 44 24 24          	mov    %eax,0x24(%esp)
540922:	85 f6                	test   %esi,%esi
540924:	0f 85 9c 00 00 00    	jne    0x5409c6
54092a:	0f b6 0a             	movzbl (%edx),%ecx
54092d:	8d 5a 01             	lea    0x1(%edx),%ebx
540930:	0f b6 03             	movzbl (%ebx),%eax
540933:	0f b6 53 03          	movzbl 0x3(%ebx),%edx
540937:	ff 74 24 28          	push   0x28(%esp)
54093b:	c1 e1 08             	shl    $0x8,%ecx
54093e:	0b c8                	or     %eax,%ecx
540940:	c1 e2 18             	shl    $0x18,%edx
540943:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
540947:	c1 e1 10             	shl    $0x10,%ecx
54094a:	c1 e0 08             	shl    $0x8,%eax
54094d:	0b c8                	or     %eax,%ecx
54094f:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
540953:	0b c8                	or     %eax,%ecx
540955:	0f b6 43 04          	movzbl 0x4(%ebx),%eax
540959:	89 4c 24 14          	mov    %ecx,0x14(%esp)
54095d:	0f b6 4b 05          	movzbl 0x5(%ebx),%ecx
540961:	c1 e0 10             	shl    $0x10,%eax
540964:	0b d0                	or     %eax,%edx
540966:	c1 e1 08             	shl    $0x8,%ecx
540969:	0f b6 43 06          	movzbl 0x6(%ebx),%eax
54096d:	0b c8                	or     %eax,%ecx
54096f:	8d 44 24 14          	lea    0x14(%esp),%eax
540973:	0b ca                	or     %edx,%ecx
540975:	50                   	push   %eax
540976:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
54097a:	e8 c1 56 ed ff       	call   0x416040
54097f:	8b 54 24 34          	mov    0x34(%esp),%edx
540983:	83 c4 08             	add    $0x8,%esp
540986:	8b 4c 24 10          	mov    0x10(%esp),%ecx
54098a:	8b c1                	mov    %ecx,%eax
54098c:	c1 e8 18             	shr    $0x18,%eax
54098f:	88 02                	mov    %al,(%edx)
540991:	8b c1                	mov    %ecx,%eax
540993:	c1 e8 10             	shr    $0x10,%eax
540996:	88 03                	mov    %al,(%ebx)
540998:	8b c1                	mov    %ecx,%eax
54099a:	c1 e8 08             	shr    $0x8,%eax
54099d:	88 42 02             	mov    %al,0x2(%edx)
5409a0:	88 4a 03             	mov    %cl,0x3(%edx)
5409a3:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5409a7:	8b c1                	mov    %ecx,%eax
5409a9:	c1 e8 18             	shr    $0x18,%eax
5409ac:	88 42 04             	mov    %al,0x4(%edx)
5409af:	8b c1                	mov    %ecx,%eax
5409b1:	c1 e8 10             	shr    $0x10,%eax
5409b4:	88 42 05             	mov    %al,0x5(%edx)
5409b7:	8b c1                	mov    %ecx,%eax
5409b9:	c1 e8 08             	shr    $0x8,%eax
5409bc:	88 42 06             	mov    %al,0x6(%edx)
5409bf:	8b 44 24 24          	mov    0x24(%esp),%eax
5409c3:	88 4a 07             	mov    %cl,0x7(%edx)
5409c6:	8a 08                	mov    (%eax),%cl
5409c8:	40                   	inc    %eax
5409c9:	89 44 24 24          	mov    %eax,0x24(%esp)
5409cd:	8a 04 16             	mov    (%esi,%edx,1),%al
5409d0:	88 0c 16             	mov    %cl,(%esi,%edx,1)
5409d3:	32 c8                	xor    %al,%cl
5409d5:	8b 44 24 34          	mov    0x34(%esp),%eax
5409d9:	46                   	inc    %esi
5409da:	83 e6 07             	and    $0x7,%esi
5409dd:	88 08                	mov    %cl,(%eax)
5409df:	40                   	inc    %eax
5409e0:	89 44 24 34          	mov    %eax,0x34(%esp)
5409e4:	8b 44 24 24          	mov    0x24(%esp),%eax
5409e8:	83 ed 01             	sub    $0x1,%ebp
5409eb:	0f 85 31 ff ff ff    	jne    0x540922
5409f1:	8b 44 24 30          	mov    0x30(%esp),%eax
5409f5:	5f                   	pop    %edi
5409f6:	5b                   	pop    %ebx
5409f7:	89 30                	mov    %esi,(%eax)
5409f9:	5e                   	pop    %esi
5409fa:	5d                   	pop    %ebp
5409fb:	83 c4 08             	add    $0x8,%esp
5409fe:	c3                   	ret
5409ff:	cc                   	int3
540a00:	b8 28 00 00 00       	mov    $0x28,%eax
540a05:	e8 a6 0d 09 00       	call   0x5d17b0
540a0a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
540a0f:	33 c4                	xor    %esp,%eax
540a11:	89 44 24 24          	mov    %eax,0x24(%esp)
540a15:	8b 44 24 30          	mov    0x30(%esp),%eax
540a19:	89 04 24             	mov    %eax,(%esp)
540a1c:	8b 44 24 38          	mov    0x38(%esp),%eax
540a20:	89 44 24 10          	mov    %eax,0x10(%esp)
540a24:	8b 44 24 3c          	mov    0x3c(%esp),%eax
540a28:	89 44 24 18          	mov    %eax,0x18(%esp)
540a2c:	53                   	push   %ebx
540a2d:	55                   	push   %ebp
540a2e:	0f b6 18             	movzbl (%eax),%ebx
540a31:	8d 68 01             	lea    0x1(%eax),%ebp
540a34:	8b d5                	mov    %ebp,%edx
540a36:	c1 e3 18             	shl    $0x18,%ebx
540a39:	56                   	push   %esi
540a3a:	57                   	push   %edi
540a3b:	8b 7c 24 50          	mov    0x50(%esp),%edi
540a3f:	0f b6 02             	movzbl (%edx),%eax
540a42:	0f b6 4a 03          	movzbl 0x3(%edx),%ecx
540a46:	c1 e0 10             	shl    $0x10,%eax
540a49:	0b d8                	or     %eax,%ebx
540a4b:	c1 e1 18             	shl    $0x18,%ecx
540a4e:	0f b6 42 01          	movzbl 0x1(%edx),%eax
540a52:	c1 e0 08             	shl    $0x8,%eax
540a55:	0b d8                	or     %eax,%ebx
540a57:	8b 37                	mov    (%edi),%esi
540a59:	0f b6 42 02          	movzbl 0x2(%edx),%eax
540a5d:	0b d8                	or     %eax,%ebx
540a5f:	89 7c 24 14          	mov    %edi,0x14(%esp)
540a63:	0f b6 42 04          	movzbl 0x4(%edx),%eax
540a67:	c1 e0 10             	shl    $0x10,%eax
540a6a:	0b c8                	or     %eax,%ecx
540a6c:	89 6c 24 24          	mov    %ebp,0x24(%esp)
540a70:	0f b6 42 06          	movzbl 0x6(%edx),%eax
540a74:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
540a78:	0f b6 4a 05          	movzbl 0x5(%edx),%ecx
540a7c:	8b 54 24 2c          	mov    0x2c(%esp),%edx
540a80:	c1 e1 08             	shl    $0x8,%ecx
540a83:	0b c8                	or     %eax,%ecx
540a85:	89 5c 24 18          	mov    %ebx,0x18(%esp)
540a89:	8b c3                	mov    %ebx,%eax
540a8b:	88 5c 24 2f          	mov    %bl,0x2f(%esp)
540a8f:	c1 e8 18             	shr    $0x18,%eax
540a92:	0b d1                	or     %ecx,%edx
540a94:	88 44 24 2c          	mov    %al,0x2c(%esp)
540a98:	8b c3                	mov    %ebx,%eax
540a9a:	c1 e8 10             	shr    $0x10,%eax
540a9d:	88 44 24 2d          	mov    %al,0x2d(%esp)
540aa1:	8b c3                	mov    %ebx,%eax
540aa3:	c1 e8 08             	shr    $0x8,%eax
540aa6:	88 44 24 2e          	mov    %al,0x2e(%esp)
540aaa:	8b c2                	mov    %edx,%eax
540aac:	c1 e8 18             	shr    $0x18,%eax
540aaf:	88 44 24 30          	mov    %al,0x30(%esp)
540ab3:	8b c2                	mov    %edx,%eax
540ab5:	c1 e8 10             	shr    $0x10,%eax
540ab8:	88 44 24 31          	mov    %al,0x31(%esp)
540abc:	8b c2                	mov    %edx,%eax
540abe:	c1 e8 08             	shr    $0x8,%eax
540ac1:	88 44 24 32          	mov    %al,0x32(%esp)
540ac5:	8b 44 24 44          	mov    0x44(%esp),%eax
540ac9:	89 54 24 1c          	mov    %edx,0x1c(%esp)
540acd:	88 54 24 33          	mov    %dl,0x33(%esp)
540ad1:	85 c0                	test   %eax,%eax
540ad3:	0f 84 ec 00 00 00    	je     0x540bc5
540ad9:	8b 4c 24 10          	mov    0x10(%esp),%ecx
540add:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
540ae1:	2b cf                	sub    %edi,%ecx
540ae3:	89 4c 24 10          	mov    %ecx,0x10(%esp)
540ae7:	33 ed                	xor    %ebp,%ebp
540ae9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
540af0:	48                   	dec    %eax
540af1:	89 44 24 44          	mov    %eax,0x44(%esp)
540af5:	85 f6                	test   %esi,%esi
540af7:	75 5c                	jne    0x540b55
540af9:	ff 74 24 20          	push   0x20(%esp)
540afd:	8d 44 24 1c          	lea    0x1c(%esp),%eax
540b01:	50                   	push   %eax
540b02:	e8 39 55 ed ff       	call   0x416040
540b07:	8b 5c 24 20          	mov    0x20(%esp),%ebx
540b0b:	83 c4 08             	add    $0x8,%esp
540b0e:	8b 54 24 1c          	mov    0x1c(%esp),%edx
540b12:	8b c3                	mov    %ebx,%eax
540b14:	c1 e8 18             	shr    $0x18,%eax
540b17:	88 44 24 2c          	mov    %al,0x2c(%esp)
540b1b:	8b c3                	mov    %ebx,%eax
540b1d:	8b 4c 24 10          	mov    0x10(%esp),%ecx
540b21:	c1 e8 10             	shr    $0x10,%eax
540b24:	88 44 24 2d          	mov    %al,0x2d(%esp)
540b28:	8b c3                	mov    %ebx,%eax
540b2a:	c1 e8 08             	shr    $0x8,%eax
540b2d:	88 44 24 2e          	mov    %al,0x2e(%esp)
540b31:	8b c2                	mov    %edx,%eax
540b33:	c1 e8 18             	shr    $0x18,%eax
540b36:	88 44 24 30          	mov    %al,0x30(%esp)
540b3a:	8b c2                	mov    %edx,%eax
540b3c:	c1 e8 10             	shr    $0x10,%eax
540b3f:	88 44 24 31          	mov    %al,0x31(%esp)
540b43:	8b c2                	mov    %edx,%eax
540b45:	c1 e8 08             	shr    $0x8,%eax
540b48:	45                   	inc    %ebp
540b49:	88 5c 24 2f          	mov    %bl,0x2f(%esp)
540b4d:	88 44 24 32          	mov    %al,0x32(%esp)
540b51:	88 54 24 33          	mov    %dl,0x33(%esp)
540b55:	8a 44 34 2c          	mov    0x2c(%esp,%esi,1),%al
540b59:	46                   	inc    %esi
540b5a:	32 07                	xor    (%edi),%al
540b5c:	83 e6 07             	and    $0x7,%esi
540b5f:	88 04 39             	mov    %al,(%ecx,%edi,1)
540b62:	47                   	inc    %edi
540b63:	8b 44 24 44          	mov    0x44(%esp),%eax
540b67:	85 c0                	test   %eax,%eax
540b69:	75 85                	jne    0x540af0
540b6b:	85 ed                	test   %ebp,%ebp
540b6d:	8b 6c 24 24          	mov    0x24(%esp),%ebp
540b71:	74 39                	je     0x540bac
540b73:	8b 4c 24 28          	mov    0x28(%esp),%ecx
540b77:	8b c3                	mov    %ebx,%eax
540b79:	c1 e8 18             	shr    $0x18,%eax
540b7c:	88 5d 02             	mov    %bl,0x2(%ebp)
540b7f:	88 55 06             	mov    %dl,0x6(%ebp)
540b82:	88 01                	mov    %al,(%ecx)
540b84:	8b c3                	mov    %ebx,%eax
540b86:	c1 e8 10             	shr    $0x10,%eax
540b89:	88 45 00             	mov    %al,0x0(%ebp)
540b8c:	8b c3                	mov    %ebx,%eax
540b8e:	c1 e8 08             	shr    $0x8,%eax
540b91:	88 45 01             	mov    %al,0x1(%ebp)
540b94:	8b c2                	mov    %edx,%eax
540b96:	c1 e8 18             	shr    $0x18,%eax
540b99:	88 45 03             	mov    %al,0x3(%ebp)
540b9c:	8b c2                	mov    %edx,%eax
540b9e:	c1 e8 10             	shr    $0x10,%eax
540ba1:	88 45 04             	mov    %al,0x4(%ebp)
540ba4:	8b c2                	mov    %edx,%eax
540ba6:	c1 e8 08             	shr    $0x8,%eax
540ba9:	88 45 05             	mov    %al,0x5(%ebp)
540bac:	8b 44 24 14          	mov    0x14(%esp),%eax
540bb0:	5f                   	pop    %edi
540bb1:	89 30                	mov    %esi,(%eax)
540bb3:	5e                   	pop    %esi
540bb4:	5d                   	pop    %ebp
540bb5:	5b                   	pop    %ebx
540bb6:	8b 4c 24 24          	mov    0x24(%esp),%ecx
540bba:	33 cc                	xor    %esp,%ecx
540bbc:	e8 65 0e 09 00       	call   0x5d1a26
540bc1:	83 c4 28             	add    $0x28,%esp
540bc4:	c3                   	ret
540bc5:	8b 4c 24 34          	mov    0x34(%esp),%ecx
540bc9:	89 37                	mov    %esi,(%edi)
540bcb:	5f                   	pop    %edi
540bcc:	5e                   	pop    %esi
540bcd:	5d                   	pop    %ebp
540bce:	5b                   	pop    %ebx
540bcf:	33 cc                	xor    %esp,%ecx
540bd1:	e8 50 0e 09 00       	call   0x5d1a26
540bd6:	83 c4 28             	add    $0x28,%esp
540bd9:	c3                   	ret
540bda:	cc                   	int3
540bdb:	cc                   	int3
540bdc:	cc                   	int3
540bdd:	cc                   	int3
540bde:	cc                   	int3
540bdf:	cc                   	int3
540be0:	b8 10 00 00 00       	mov    $0x10,%eax
540be5:	e8 c6 0b 09 00       	call   0x5d17b0
540bea:	8b 54 24 14          	mov    0x14(%esp),%edx
540bee:	85 d2                	test   %edx,%edx
540bf0:	0f 84 dd 06 00 00    	je     0x5412d3
540bf6:	55                   	push   %ebp
540bf7:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
540bfb:	85 ed                	test   %ebp,%ebp
540bfd:	0f 84 cf 06 00 00    	je     0x5412d2
540c03:	56                   	push   %esi
540c04:	8b 74 24 24          	mov    0x24(%esp),%esi
540c08:	85 f6                	test   %esi,%esi
540c0a:	0f 84 c1 06 00 00    	je     0x5412d1
540c10:	8b 86 10 01 00 00    	mov    0x110(%esi),%eax
540c16:	89 44 24 0c          	mov    %eax,0xc(%esp)
540c1a:	83 f8 0c             	cmp    $0xc,%eax
540c1d:	74 0e                	je     0x540c2d
540c1f:	83 f8 0e             	cmp    $0xe,%eax
540c22:	74 09                	je     0x540c2d
540c24:	83 f8 10             	cmp    $0x10,%eax
540c27:	0f 85 a4 06 00 00    	jne    0x5412d1
540c2d:	0f b6 0a             	movzbl (%edx),%ecx
540c30:	c1 e1 08             	shl    $0x8,%ecx
540c33:	0f b6 42 01          	movzbl 0x1(%edx),%eax
540c37:	33 c8                	xor    %eax,%ecx
540c39:	0f b6 42 02          	movzbl 0x2(%edx),%eax
540c3d:	c1 e1 08             	shl    $0x8,%ecx
540c40:	33 c8                	xor    %eax,%ecx
540c42:	0f b6 42 03          	movzbl 0x3(%edx),%eax
540c46:	c1 e1 08             	shl    $0x8,%ecx
540c49:	33 c8                	xor    %eax,%ecx
540c4b:	0f b6 42 05          	movzbl 0x5(%edx),%eax
540c4f:	33 0e                	xor    (%esi),%ecx
540c51:	89 4c 24 10          	mov    %ecx,0x10(%esp)
540c55:	0f b6 4a 04          	movzbl 0x4(%edx),%ecx
540c59:	c1 e1 08             	shl    $0x8,%ecx
540c5c:	33 c8                	xor    %eax,%ecx
540c5e:	0f b6 42 06          	movzbl 0x6(%edx),%eax
540c62:	c1 e1 08             	shl    $0x8,%ecx
540c65:	33 c8                	xor    %eax,%ecx
540c67:	0f b6 42 07          	movzbl 0x7(%edx),%eax
540c6b:	c1 e1 08             	shl    $0x8,%ecx
540c6e:	33 c8                	xor    %eax,%ecx
540c70:	0f b6 42 09          	movzbl 0x9(%edx),%eax
540c74:	33 4e 04             	xor    0x4(%esi),%ecx
540c77:	89 4c 24 14          	mov    %ecx,0x14(%esp)
540c7b:	0f b6 4a 0c          	movzbl 0xc(%edx),%ecx
540c7f:	53                   	push   %ebx
540c80:	0f b6 5a 08          	movzbl 0x8(%edx),%ebx
540c84:	c1 e3 08             	shl    $0x8,%ebx
540c87:	33 d8                	xor    %eax,%ebx
540c89:	c1 e1 08             	shl    $0x8,%ecx
540c8c:	0f b6 42 0a          	movzbl 0xa(%edx),%eax
540c90:	c1 e3 08             	shl    $0x8,%ebx
540c93:	33 d8                	xor    %eax,%ebx
540c95:	0f b6 42 0b          	movzbl 0xb(%edx),%eax
540c99:	c1 e3 08             	shl    $0x8,%ebx
540c9c:	33 d8                	xor    %eax,%ebx
540c9e:	0f b6 42 0d          	movzbl 0xd(%edx),%eax
540ca2:	33 c8                	xor    %eax,%ecx
540ca4:	33 5e 08             	xor    0x8(%esi),%ebx
540ca7:	0f b6 42 0e          	movzbl 0xe(%edx),%eax
540cab:	c1 e1 08             	shl    $0x8,%ecx
540cae:	33 c8                	xor    %eax,%ecx
540cb0:	0f b6 42 0f          	movzbl 0xf(%edx),%eax