4098ef:	0f 95 c0             	setne  %al
4098f2:	c3                   	ret
4098f3:	cc                   	int3
4098f4:	cc                   	int3
4098f5:	cc                   	int3
4098f6:	cc                   	int3
4098f7:	cc                   	int3
4098f8:	cc                   	int3
4098f9:	cc                   	int3
4098fa:	cc                   	int3
4098fb:	cc                   	int3
4098fc:	cc                   	int3
4098fd:	cc                   	int3
4098fe:	cc                   	int3
4098ff:	cc                   	int3
409900:	8b 44 24 0c          	mov    0xc(%esp),%eax
409904:	53                   	push   %ebx
409905:	85 c0                	test   %eax,%eax
409907:	74 52                	je     0x40995b
409909:	8b 54 24 08          	mov    0x8(%esp),%edx
40990d:	33 db                	xor    %ebx,%ebx
40990f:	8a 5c 24 0c          	mov    0xc(%esp),%bl
409913:	f7 c2 03 00 00 00    	test   $0x3,%edx
409919:	74 16                	je     0x409931
40991b:	8a 0a                	mov    (%edx),%cl
40991d:	83 c2 01             	add    $0x1,%edx
409920:	32 cb                	xor    %bl,%cl
409922:	74 72                	je     0x409996
409924:	83 e8 01             	sub    $0x1,%eax
409927:	74 32                	je     0x40995b
409929:	f7 c2 03 00 00 00    	test   $0x3,%edx
40992f:	75 ea                	jne    0x40991b
409931:	83 e8 04             	sub    $0x4,%eax
409934:	72 12                	jb     0x409948
409936:	57                   	push   %edi
409937:	8b fb                	mov    %ebx,%edi
409939:	c1 e3 08             	shl    $0x8,%ebx
40993c:	03 df                	add    %edi,%ebx
40993e:	8b fb                	mov    %ebx,%edi
409940:	c1 e3 10             	shl    $0x10,%ebx
409943:	03 df                	add    %edi,%ebx
409945:	eb 1b                	jmp    0x409962
409947:	5f                   	pop    %edi
409948:	83 c0 04             	add    $0x4,%eax
40994b:	74 0e                	je     0x40995b
40994d:	8a 0a                	mov    (%edx),%cl
40994f:	83 c2 01             	add    $0x1,%edx
409952:	32 cb                	xor    %bl,%cl
409954:	74 40                	je     0x409996
409956:	83 e8 01             	sub    $0x1,%eax
409959:	75 f2                	jne    0x40994d
40995b:	5b                   	pop    %ebx
40995c:	c3                   	ret
40995d:	83 e8 04             	sub    $0x4,%eax
409960:	72 e5                	jb     0x409947
409962:	8b 0a                	mov    (%edx),%ecx
409964:	33 cb                	xor    %ebx,%ecx
409966:	bf ff fe fe 7e       	mov    $0x7efefeff,%edi
40996b:	03 f9                	add    %ecx,%edi
40996d:	83 f1 ff             	xor    $0xffffffff,%ecx
409970:	33 cf                	xor    %edi,%ecx
409972:	83 c2 04             	add    $0x4,%edx
409975:	81 e1 00 01 01 81    	and    $0x81010100,%ecx
40997b:	74 e0                	je     0x40995d
40997d:	8b 4a fc             	mov    -0x4(%edx),%ecx
409980:	32 cb                	xor    %bl,%cl
409982:	74 23                	je     0x4099a7
409984:	32 eb                	xor    %bl,%ch
409986:	74 19                	je     0x4099a1
409988:	c1 e9 10             	shr    $0x10,%ecx
40998b:	32 cb                	xor    %bl,%cl
40998d:	74 0c                	je     0x40999b
40998f:	32 eb                	xor    %bl,%ch
409991:	74 02                	je     0x409995
409993:	eb c8                	jmp    0x40995d
409995:	5f                   	pop    %edi
409996:	8d 42 ff             	lea    -0x1(%edx),%eax
409999:	5b                   	pop    %ebx
40999a:	c3                   	ret
40999b:	8d 42 fe             	lea    -0x2(%edx),%eax
40999e:	5f                   	pop    %edi
40999f:	5b                   	pop    %ebx
4099a0:	c3                   	ret
4099a1:	8d 42 fd             	lea    -0x3(%edx),%eax
4099a4:	5f                   	pop    %edi
4099a5:	5b                   	pop    %ebx
4099a6:	c3                   	ret
4099a7:	8d 42 fc             	lea    -0x4(%edx),%eax
4099aa:	5f                   	pop    %edi
4099ab:	5b                   	pop    %ebx
4099ac:	c3                   	ret
4099ad:	55                   	push   %ebp
4099ae:	8b ec                	mov    %esp,%ebp
4099b0:	53                   	push   %ebx
4099b1:	8b 5d 10             	mov    0x10(%ebp),%ebx
4099b4:	8b c3                	mov    %ebx,%eax
4099b6:	56                   	push   %esi
4099b7:	83 e8 00             	sub    $0x0,%eax
4099ba:	0f 84 e5 16 00 00    	je     0x40b0a5
4099c0:	83 e8 01             	sub    $0x1,%eax
4099c3:	0f 84 cb 16 00 00    	je     0x40b094
4099c9:	83 e8 01             	sub    $0x1,%eax
4099cc:	0f 84 93 16 00 00    	je     0x40b065
4099d2:	83 e8 01             	sub    $0x1,%eax
4099d5:	0f 84 40 16 00 00    	je     0x40b01b
4099db:	8b 55 0c             	mov    0xc(%ebp),%edx
4099de:	83 e8 01             	sub    $0x1,%eax
4099e1:	0f 84 ac 15 00 00    	je     0x40af93
4099e7:	8b 75 08             	mov    0x8(%ebp),%esi
4099ea:	57                   	push   %edi
4099eb:	83 fb 20             	cmp    $0x20,%ebx
4099ee:	0f 82 a1 04 00 00    	jb     0x409e95
4099f4:	8b 06                	mov    (%esi),%eax
4099f6:	3b 02                	cmp    (%edx),%eax
4099f8:	0f 84 80 00 00 00    	je     0x409a7e
4099fe:	0f b6 f8             	movzbl %al,%edi
409a01:	0f b6 02             	movzbl (%edx),%eax
409a04:	2b f8                	sub    %eax,%edi
409a06:	74 16                	je     0x409a1e
409a08:	33 c9                	xor    %ecx,%ecx
409a0a:	85 ff                	test   %edi,%edi
409a0c:	0f 9f c1             	setg   %cl
409a0f:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409a16:	85 c9                	test   %ecx,%ecx
409a18:	0f 85 9b 08 00 00    	jne    0x40a2b9
409a1e:	0f b6 7e 01          	movzbl 0x1(%esi),%edi
409a22:	0f b6 42 01          	movzbl 0x1(%edx),%eax
409a26:	2b f8                	sub    %eax,%edi
409a28:	74 16                	je     0x409a40
409a2a:	33 c9                	xor    %ecx,%ecx
409a2c:	85 ff                	test   %edi,%edi
409a2e:	0f 9f c1             	setg   %cl
409a31:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409a38:	85 c9                	test   %ecx,%ecx
409a3a:	0f 85 79 08 00 00    	jne    0x40a2b9
409a40:	0f b6 7e 02          	movzbl 0x2(%esi),%edi
409a44:	0f b6 42 02          	movzbl 0x2(%edx),%eax
409a48:	2b f8                	sub    %eax,%edi
409a4a:	74 16                	je     0x409a62
409a4c:	33 c9                	xor    %ecx,%ecx
409a4e:	85 ff                	test   %edi,%edi
409a50:	0f 9f c1             	setg   %cl
409a53:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409a5a:	85 c9                	test   %ecx,%ecx
409a5c:	0f 85 57 08 00 00    	jne    0x40a2b9
409a62:	0f b6 4e 03          	movzbl 0x3(%esi),%ecx
409a66:	0f b6 42 03          	movzbl 0x3(%edx),%eax
409a6a:	2b c8                	sub    %eax,%ecx
409a6c:	74 12                	je     0x409a80
409a6e:	33 c0                	xor    %eax,%eax
409a70:	85 c9                	test   %ecx,%ecx
409a72:	0f 9f c0             	setg   %al
409a75:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409a7c:	eb 02                	jmp    0x409a80
409a7e:	33 c9                	xor    %ecx,%ecx
409a80:	85 c9                	test   %ecx,%ecx
409a82:	0f 85 31 08 00 00    	jne    0x40a2b9
409a88:	8b 46 04             	mov    0x4(%esi),%eax
409a8b:	3b 42 04             	cmp    0x4(%edx),%eax
409a8e:	74 7f                	je     0x409b0f
409a90:	0f b6 f8             	movzbl %al,%edi
409a93:	0f b6 42 04          	movzbl 0x4(%edx),%eax
409a97:	2b f8                	sub    %eax,%edi
409a99:	74 14                	je     0x409aaf
409a9b:	85 ff                	test   %edi,%edi
409a9d:	0f 9f c1             	setg   %cl
409aa0:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409aa7:	85 c9                	test   %ecx,%ecx
409aa9:	0f 85 0a 08 00 00    	jne    0x40a2b9
409aaf:	0f b6 7e 05          	movzbl 0x5(%esi),%edi
409ab3:	0f b6 42 05          	movzbl 0x5(%edx),%eax
409ab7:	2b f8                	sub    %eax,%edi
409ab9:	74 16                	je     0x409ad1
409abb:	33 c9                	xor    %ecx,%ecx
409abd:	85 ff                	test   %edi,%edi
409abf:	0f 9f c1             	setg   %cl
409ac2:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409ac9:	85 c9                	test   %ecx,%ecx
409acb:	0f 85 e8 07 00 00    	jne    0x40a2b9
409ad1:	0f b6 7e 06          	movzbl 0x6(%esi),%edi
409ad5:	0f b6 42 06          	movzbl 0x6(%edx),%eax
409ad9:	2b f8                	sub    %eax,%edi
409adb:	74 16                	je     0x409af3
409add:	33 c9                	xor    %ecx,%ecx
409adf:	85 ff                	test   %edi,%edi
409ae1:	0f 9f c1             	setg   %cl
409ae4:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409aeb:	85 c9                	test   %ecx,%ecx
409aed:	0f 85 c6 07 00 00    	jne    0x40a2b9
409af3:	0f b6 4e 07          	movzbl 0x7(%esi),%ecx
409af7:	0f b6 42 07          	movzbl 0x7(%edx),%eax
409afb:	2b c8                	sub    %eax,%ecx
409afd:	74 12                	je     0x409b11
409aff:	33 c0                	xor    %eax,%eax
409b01:	85 c9                	test   %ecx,%ecx
409b03:	0f 9f c0             	setg   %al
409b06:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409b0d:	eb 02                	jmp    0x409b11
409b0f:	33 c9                	xor    %ecx,%ecx
409b11:	85 c9                	test   %ecx,%ecx
409b13:	0f 85 a0 07 00 00    	jne    0x40a2b9
409b19:	8b 46 08             	mov    0x8(%esi),%eax
409b1c:	3b 42 08             	cmp    0x8(%edx),%eax
409b1f:	74 7f                	je     0x409ba0
409b21:	0f b6 f8             	movzbl %al,%edi
409b24:	0f b6 42 08          	movzbl 0x8(%edx),%eax
409b28:	2b f8                	sub    %eax,%edi
409b2a:	74 14                	je     0x409b40
409b2c:	85 ff                	test   %edi,%edi
409b2e:	0f 9f c1             	setg   %cl
409b31:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409b38:	85 c9                	test   %ecx,%ecx
409b3a:	0f 85 79 07 00 00    	jne    0x40a2b9
409b40:	0f b6 7e 09          	movzbl 0x9(%esi),%edi
409b44:	0f b6 42 09          	movzbl 0x9(%edx),%eax
409b48:	2b f8                	sub    %eax,%edi
409b4a:	74 16                	je     0x409b62
409b4c:	33 c9                	xor    %ecx,%ecx
409b4e:	85 ff                	test   %edi,%edi
409b50:	0f 9f c1             	setg   %cl
409b53:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409b5a:	85 c9                	test   %ecx,%ecx
409b5c:	0f 85 57 07 00 00    	jne    0x40a2b9
409b62:	0f b6 7e 0a          	movzbl 0xa(%esi),%edi
409b66:	0f b6 42 0a          	movzbl 0xa(%edx),%eax
409b6a:	2b f8                	sub    %eax,%edi
409b6c:	74 16                	je     0x409b84
409b6e:	33 c9                	xor    %ecx,%ecx
409b70:	85 ff                	test   %edi,%edi
409b72:	0f 9f c1             	setg   %cl
409b75:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409b7c:	85 c9                	test   %ecx,%ecx
409b7e:	0f 85 35 07 00 00    	jne    0x40a2b9
409b84:	0f b6 4e 0b          	movzbl 0xb(%esi),%ecx
409b88:	0f b6 42 0b          	movzbl 0xb(%edx),%eax
409b8c:	2b c8                	sub    %eax,%ecx
409b8e:	74 12                	je     0x409ba2
409b90:	33 c0                	xor    %eax,%eax
409b92:	85 c9                	test   %ecx,%ecx
409b94:	0f 9f c0             	setg   %al
409b97:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409b9e:	eb 02                	jmp    0x409ba2
409ba0:	33 c9                	xor    %ecx,%ecx
409ba2:	85 c9                	test   %ecx,%ecx
409ba4:	0f 85 0f 07 00 00    	jne    0x40a2b9
409baa:	8b 46 0c             	mov    0xc(%esi),%eax
409bad:	3b 42 0c             	cmp    0xc(%edx),%eax
409bb0:	74 7f                	je     0x409c31
409bb2:	0f b6 f8             	movzbl %al,%edi
409bb5:	0f b6 42 0c          	movzbl 0xc(%edx),%eax
409bb9:	2b f8                	sub    %eax,%edi
409bbb:	74 14                	je     0x409bd1
409bbd:	85 ff                	test   %edi,%edi
409bbf:	0f 9f c1             	setg   %cl
409bc2:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409bc9:	85 c9                	test   %ecx,%ecx
409bcb:	0f 85 e8 06 00 00    	jne    0x40a2b9
409bd1:	0f b6 7e 0d          	movzbl 0xd(%esi),%edi
409bd5:	0f b6 42 0d          	movzbl 0xd(%edx),%eax
409bd9:	2b f8                	sub    %eax,%edi
409bdb:	74 16                	je     0x409bf3
409bdd:	33 c9                	xor    %ecx,%ecx
409bdf:	85 ff                	test   %edi,%edi
409be1:	0f 9f c1             	setg   %cl
409be4:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409beb:	85 c9                	test   %ecx,%ecx
409bed:	0f 85 c6 06 00 00    	jne    0x40a2b9
409bf3:	0f b6 7e 0e          	movzbl 0xe(%esi),%edi
409bf7:	0f b6 42 0e          	movzbl 0xe(%edx),%eax
409bfb:	2b f8                	sub    %eax,%edi
409bfd:	74 16                	je     0x409c15
409bff:	33 c9                	xor    %ecx,%ecx
409c01:	85 ff                	test   %edi,%edi
409c03:	0f 9f c1             	setg   %cl
409c06:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409c0d:	85 c9                	test   %ecx,%ecx
409c0f:	0f 85 a4 06 00 00    	jne    0x40a2b9
409c15:	0f b6 4e 0f          	movzbl 0xf(%esi),%ecx
409c19:	0f b6 42 0f          	movzbl 0xf(%edx),%eax
409c1d:	2b c8                	sub    %eax,%ecx
409c1f:	74 12                	je     0x409c33
409c21:	33 c0                	xor    %eax,%eax
409c23:	85 c9                	test   %ecx,%ecx
409c25:	0f 9f c0             	setg   %al
409c28:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409c2f:	eb 02                	jmp    0x409c33
409c31:	33 c9                	xor    %ecx,%ecx
409c33:	85 c9                	test   %ecx,%ecx
409c35:	0f 85 7e 06 00 00    	jne    0x40a2b9
409c3b:	8b 46 10             	mov    0x10(%esi),%eax
409c3e:	3b 42 10             	cmp    0x10(%edx),%eax
409c41:	0f 84 80 00 00 00    	je     0x409cc7
409c47:	0f b6 42 10          	movzbl 0x10(%edx),%eax
409c4b:	0f b6 7e 10          	movzbl 0x10(%esi),%edi
409c4f:	2b f8                	sub    %eax,%edi
409c51:	74 14                	je     0x409c67
409c53:	85 ff                	test   %edi,%edi
409c55:	0f 9f c1             	setg   %cl
409c58:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409c5f:	85 c9                	test   %ecx,%ecx
409c61:	0f 85 52 06 00 00    	jne    0x40a2b9
409c67:	0f b6 7e 11          	movzbl 0x11(%esi),%edi
409c6b:	0f b6 42 11          	movzbl 0x11(%edx),%eax
409c6f:	2b f8                	sub    %eax,%edi
409c71:	74 16                	je     0x409c89
409c73:	33 c9                	xor    %ecx,%ecx
409c75:	85 ff                	test   %edi,%edi
409c77:	0f 9f c1             	setg   %cl
409c7a:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409c81:	85 c9                	test   %ecx,%ecx
409c83:	0f 85 30 06 00 00    	jne    0x40a2b9
409c89:	0f b6 7e 12          	movzbl 0x12(%esi),%edi
409c8d:	0f b6 42 12          	movzbl 0x12(%edx),%eax
409c91:	2b f8                	sub    %eax,%edi
409c93:	74 16                	je     0x409cab
409c95:	33 c9                	xor    %ecx,%ecx
409c97:	85 ff                	test   %edi,%edi
409c99:	0f 9f c1             	setg   %cl
409c9c:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409ca3:	85 c9                	test   %ecx,%ecx
409ca5:	0f 85 0e 06 00 00    	jne    0x40a2b9
409cab:	0f b6 4e 13          	movzbl 0x13(%esi),%ecx
409caf:	0f b6 42 13          	movzbl 0x13(%edx),%eax
409cb3:	2b c8                	sub    %eax,%ecx
409cb5:	74 12                	je     0x409cc9
409cb7:	33 c0                	xor    %eax,%eax
409cb9:	85 c9                	test   %ecx,%ecx
409cbb:	0f 9f c0             	setg   %al
409cbe:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409cc5:	eb 02                	jmp    0x409cc9
409cc7:	33 c9                	xor    %ecx,%ecx
409cc9:	85 c9                	test   %ecx,%ecx
409ccb:	0f 85 e8 05 00 00    	jne    0x40a2b9
409cd1:	8b 46 14             	mov    0x14(%esi),%eax
409cd4:	3b 42 14             	cmp    0x14(%edx),%eax
409cd7:	74 7f                	je     0x409d58
409cd9:	0f b6 f8             	movzbl %al,%edi
409cdc:	0f b6 42 14          	movzbl 0x14(%edx),%eax
409ce0:	2b f8                	sub    %eax,%edi
409ce2:	74 14                	je     0x409cf8
409ce4:	85 ff                	test   %edi,%edi
409ce6:	0f 9f c1             	setg   %cl
409ce9:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409cf0:	85 c9                	test   %ecx,%ecx
409cf2:	0f 85 c1 05 00 00    	jne    0x40a2b9
409cf8:	0f b6 7e 15          	movzbl 0x15(%esi),%edi
409cfc:	0f b6 42 15          	movzbl 0x15(%edx),%eax
409d00:	2b f8                	sub    %eax,%edi
409d02:	74 16                	je     0x409d1a
409d04:	33 c9                	xor    %ecx,%ecx