409d06:	85 ff                	test   %edi,%edi
409d08:	0f 9f c1             	setg   %cl
409d0b:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409d12:	85 c9                	test   %ecx,%ecx
409d14:	0f 85 9f 05 00 00    	jne    0x40a2b9
409d1a:	0f b6 7e 16          	movzbl 0x16(%esi),%edi
409d1e:	0f b6 42 16          	movzbl 0x16(%edx),%eax
409d22:	2b f8                	sub    %eax,%edi
409d24:	74 16                	je     0x409d3c
409d26:	33 c9                	xor    %ecx,%ecx
409d28:	85 ff                	test   %edi,%edi
409d2a:	0f 9f c1             	setg   %cl
409d2d:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409d34:	85 c9                	test   %ecx,%ecx
409d36:	0f 85 7d 05 00 00    	jne    0x40a2b9
409d3c:	0f b6 4e 17          	movzbl 0x17(%esi),%ecx
409d40:	0f b6 42 17          	movzbl 0x17(%edx),%eax
409d44:	2b c8                	sub    %eax,%ecx
409d46:	74 12                	je     0x409d5a
409d48:	33 c0                	xor    %eax,%eax
409d4a:	85 c9                	test   %ecx,%ecx
409d4c:	0f 9f c0             	setg   %al
409d4f:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409d56:	eb 02                	jmp    0x409d5a
409d58:	33 c9                	xor    %ecx,%ecx
409d5a:	85 c9                	test   %ecx,%ecx
409d5c:	0f 85 57 05 00 00    	jne    0x40a2b9
409d62:	8b 46 18             	mov    0x18(%esi),%eax
409d65:	3b 42 18             	cmp    0x18(%edx),%eax
409d68:	74 7f                	je     0x409de9
409d6a:	0f b6 f8             	movzbl %al,%edi
409d6d:	0f b6 42 18          	movzbl 0x18(%edx),%eax
409d71:	2b f8                	sub    %eax,%edi
409d73:	74 14                	je     0x409d89
409d75:	85 ff                	test   %edi,%edi
409d77:	0f 9f c1             	setg   %cl
409d7a:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409d81:	85 c9                	test   %ecx,%ecx
409d83:	0f 85 30 05 00 00    	jne    0x40a2b9
409d89:	0f b6 7e 19          	movzbl 0x19(%esi),%edi
409d8d:	0f b6 42 19          	movzbl 0x19(%edx),%eax
409d91:	2b f8                	sub    %eax,%edi
409d93:	74 16                	je     0x409dab
409d95:	33 c9                	xor    %ecx,%ecx
409d97:	85 ff                	test   %edi,%edi
409d99:	0f 9f c1             	setg   %cl
409d9c:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409da3:	85 c9                	test   %ecx,%ecx
409da5:	0f 85 0e 05 00 00    	jne    0x40a2b9
409dab:	0f b6 7e 1a          	movzbl 0x1a(%esi),%edi
409daf:	0f b6 42 1a          	movzbl 0x1a(%edx),%eax
409db3:	2b f8                	sub    %eax,%edi
409db5:	74 16                	je     0x409dcd
409db7:	33 c9                	xor    %ecx,%ecx
409db9:	85 ff                	test   %edi,%edi
409dbb:	0f 9f c1             	setg   %cl
409dbe:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409dc5:	85 c9                	test   %ecx,%ecx
409dc7:	0f 85 ec 04 00 00    	jne    0x40a2b9
409dcd:	0f b6 4e 1b          	movzbl 0x1b(%esi),%ecx
409dd1:	0f b6 42 1b          	movzbl 0x1b(%edx),%eax
409dd5:	2b c8                	sub    %eax,%ecx
409dd7:	74 12                	je     0x409deb
409dd9:	33 c0                	xor    %eax,%eax
409ddb:	85 c9                	test   %ecx,%ecx
409ddd:	0f 9f c0             	setg   %al
409de0:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409de7:	eb 02                	jmp    0x409deb
409de9:	33 c9                	xor    %ecx,%ecx
409deb:	85 c9                	test   %ecx,%ecx
409ded:	0f 85 c6 04 00 00    	jne    0x40a2b9
409df3:	8b 46 1c             	mov    0x1c(%esi),%eax
409df6:	3b 42 1c             	cmp    0x1c(%edx),%eax
409df9:	74 7f                	je     0x409e7a
409dfb:	0f b6 f8             	movzbl %al,%edi
409dfe:	0f b6 42 1c          	movzbl 0x1c(%edx),%eax
409e02:	2b f8                	sub    %eax,%edi
409e04:	74 14                	je     0x409e1a
409e06:	85 ff                	test   %edi,%edi
409e08:	0f 9f c1             	setg   %cl
409e0b:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409e12:	85 c9                	test   %ecx,%ecx
409e14:	0f 85 9f 04 00 00    	jne    0x40a2b9
409e1a:	0f b6 7e 1d          	movzbl 0x1d(%esi),%edi
409e1e:	0f b6 42 1d          	movzbl 0x1d(%edx),%eax
409e22:	2b f8                	sub    %eax,%edi
409e24:	74 16                	je     0x409e3c
409e26:	33 c9                	xor    %ecx,%ecx
409e28:	85 ff                	test   %edi,%edi
409e2a:	0f 9f c1             	setg   %cl
409e2d:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409e34:	85 c9                	test   %ecx,%ecx
409e36:	0f 85 7d 04 00 00    	jne    0x40a2b9
409e3c:	0f b6 7e 1e          	movzbl 0x1e(%esi),%edi
409e40:	0f b6 42 1e          	movzbl 0x1e(%edx),%eax
409e44:	2b f8                	sub    %eax,%edi
409e46:	74 16                	je     0x409e5e
409e48:	33 c9                	xor    %ecx,%ecx
409e4a:	85 ff                	test   %edi,%edi
409e4c:	0f 9f c1             	setg   %cl
409e4f:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409e56:	85 c9                	test   %ecx,%ecx
409e58:	0f 85 5b 04 00 00    	jne    0x40a2b9
409e5e:	0f b6 4e 1f          	movzbl 0x1f(%esi),%ecx
409e62:	0f b6 42 1f          	movzbl 0x1f(%edx),%eax
409e66:	2b c8                	sub    %eax,%ecx
409e68:	74 12                	je     0x409e7c
409e6a:	33 c0                	xor    %eax,%eax
409e6c:	85 c9                	test   %ecx,%ecx
409e6e:	0f 9f c0             	setg   %al
409e71:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409e78:	eb 02                	jmp    0x409e7c
409e7a:	33 c9                	xor    %ecx,%ecx
409e7c:	85 c9                	test   %ecx,%ecx
409e7e:	0f 85 35 04 00 00    	jne    0x40a2b9
409e84:	6a 20                	push   $0x20
409e86:	59                   	pop    %ecx
409e87:	2b d9                	sub    %ecx,%ebx
409e89:	03 f1                	add    %ecx,%esi
409e8b:	03 d1                	add    %ecx,%edx
409e8d:	3b d9                	cmp    %ecx,%ebx
409e8f:	0f 83 5f fb ff ff    	jae    0x4099f4
409e95:	03 f3                	add    %ebx,%esi
409e97:	03 d3                	add    %ebx,%edx
409e99:	83 fb 1f             	cmp    $0x1f,%ebx
409e9c:	0f 87 15 04 00 00    	ja     0x40a2b7
409ea2:	ff 24 9d ad b0 40 00 	jmp    *0x40b0ad(,%ebx,4)
409ea9:	8b 46 e4             	mov    -0x1c(%esi),%eax
409eac:	3b 42 e4             	cmp    -0x1c(%edx),%eax
409eaf:	0f 84 81 00 00 00    	je     0x409f36
409eb5:	0f b6 f8             	movzbl %al,%edi
409eb8:	0f b6 42 e4          	movzbl -0x1c(%edx),%eax
409ebc:	2b f8                	sub    %eax,%edi
409ebe:	74 16                	je     0x409ed6
409ec0:	33 c9                	xor    %ecx,%ecx
409ec2:	85 ff                	test   %edi,%edi
409ec4:	0f 9f c1             	setg   %cl
409ec7:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409ece:	85 c9                	test   %ecx,%ecx
409ed0:	0f 85 e3 03 00 00    	jne    0x40a2b9
409ed6:	0f b6 7e e5          	movzbl -0x1b(%esi),%edi
409eda:	0f b6 42 e5          	movzbl -0x1b(%edx),%eax
409ede:	2b f8                	sub    %eax,%edi
409ee0:	74 16                	je     0x409ef8
409ee2:	33 c9                	xor    %ecx,%ecx
409ee4:	85 ff                	test   %edi,%edi
409ee6:	0f 9f c1             	setg   %cl
409ee9:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409ef0:	85 c9                	test   %ecx,%ecx
409ef2:	0f 85 c1 03 00 00    	jne    0x40a2b9
409ef8:	0f b6 7e e6          	movzbl -0x1a(%esi),%edi
409efc:	0f b6 42 e6          	movzbl -0x1a(%edx),%eax
409f00:	2b f8                	sub    %eax,%edi
409f02:	74 16                	je     0x409f1a
409f04:	33 c9                	xor    %ecx,%ecx
409f06:	85 ff                	test   %edi,%edi
409f08:	0f 9f c1             	setg   %cl
409f0b:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409f12:	85 c9                	test   %ecx,%ecx
409f14:	0f 85 9f 03 00 00    	jne    0x40a2b9
409f1a:	0f b6 4e e7          	movzbl -0x19(%esi),%ecx
409f1e:	0f b6 42 e7          	movzbl -0x19(%edx),%eax
409f22:	2b c8                	sub    %eax,%ecx
409f24:	74 12                	je     0x409f38
409f26:	33 c0                	xor    %eax,%eax
409f28:	85 c9                	test   %ecx,%ecx
409f2a:	0f 9f c0             	setg   %al
409f2d:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409f34:	eb 02                	jmp    0x409f38
409f36:	33 c9                	xor    %ecx,%ecx
409f38:	85 c9                	test   %ecx,%ecx
409f3a:	0f 85 79 03 00 00    	jne    0x40a2b9
409f40:	8b 46 e8             	mov    -0x18(%esi),%eax
409f43:	3b 42 e8             	cmp    -0x18(%edx),%eax
409f46:	0f 84 81 00 00 00    	je     0x409fcd
409f4c:	0f b6 f8             	movzbl %al,%edi
409f4f:	0f b6 42 e8          	movzbl -0x18(%edx),%eax
409f53:	2b f8                	sub    %eax,%edi
409f55:	74 16                	je     0x409f6d
409f57:	33 c9                	xor    %ecx,%ecx
409f59:	85 ff                	test   %edi,%edi
409f5b:	0f 9f c1             	setg   %cl
409f5e:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409f65:	85 c9                	test   %ecx,%ecx
409f67:	0f 85 4c 03 00 00    	jne    0x40a2b9
409f6d:	0f b6 7e e9          	movzbl -0x17(%esi),%edi
409f71:	0f b6 42 e9          	movzbl -0x17(%edx),%eax
409f75:	2b f8                	sub    %eax,%edi
409f77:	74 16                	je     0x409f8f
409f79:	33 c9                	xor    %ecx,%ecx
409f7b:	85 ff                	test   %edi,%edi
409f7d:	0f 9f c1             	setg   %cl
409f80:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409f87:	85 c9                	test   %ecx,%ecx
409f89:	0f 85 2a 03 00 00    	jne    0x40a2b9
409f8f:	0f b6 7e ea          	movzbl -0x16(%esi),%edi
409f93:	0f b6 42 ea          	movzbl -0x16(%edx),%eax
409f97:	2b f8                	sub    %eax,%edi
409f99:	74 16                	je     0x409fb1
409f9b:	33 c9                	xor    %ecx,%ecx
409f9d:	85 ff                	test   %edi,%edi
409f9f:	0f 9f c1             	setg   %cl
409fa2:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409fa9:	85 c9                	test   %ecx,%ecx
409fab:	0f 85 08 03 00 00    	jne    0x40a2b9
409fb1:	0f b6 4e eb          	movzbl -0x15(%esi),%ecx
409fb5:	0f b6 42 eb          	movzbl -0x15(%edx),%eax
409fb9:	2b c8                	sub    %eax,%ecx
409fbb:	74 12                	je     0x409fcf
409fbd:	33 c0                	xor    %eax,%eax
409fbf:	85 c9                	test   %ecx,%ecx
409fc1:	0f 9f c0             	setg   %al
409fc4:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409fcb:	eb 02                	jmp    0x409fcf
409fcd:	33 c9                	xor    %ecx,%ecx
409fcf:	85 c9                	test   %ecx,%ecx
409fd1:	0f 85 e2 02 00 00    	jne    0x40a2b9
409fd7:	8b 46 ec             	mov    -0x14(%esi),%eax
409fda:	3b 42 ec             	cmp    -0x14(%edx),%eax
409fdd:	0f 84 81 00 00 00    	je     0x40a064
409fe3:	0f b6 f8             	movzbl %al,%edi
409fe6:	0f b6 42 ec          	movzbl -0x14(%edx),%eax
409fea:	2b f8                	sub    %eax,%edi
409fec:	74 16                	je     0x40a004
409fee:	33 c9                	xor    %ecx,%ecx
409ff0:	85 ff                	test   %edi,%edi
409ff2:	0f 9f c1             	setg   %cl
409ff5:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409ffc:	85 c9                	test   %ecx,%ecx
409ffe:	0f 85 b5 02 00 00    	jne    0x40a2b9
40a004:	0f b6 7e ed          	movzbl -0x13(%esi),%edi
40a008:	0f b6 42 ed          	movzbl -0x13(%edx),%eax
40a00c:	2b f8                	sub    %eax,%edi
40a00e:	74 16                	je     0x40a026
40a010:	33 c9                	xor    %ecx,%ecx
40a012:	85 ff                	test   %edi,%edi
40a014:	0f 9f c1             	setg   %cl
40a017:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a01e:	85 c9                	test   %ecx,%ecx
40a020:	0f 85 93 02 00 00    	jne    0x40a2b9
40a026:	0f b6 7e ee          	movzbl -0x12(%esi),%edi
40a02a:	0f b6 42 ee          	movzbl -0x12(%edx),%eax
40a02e:	2b f8                	sub    %eax,%edi
40a030:	74 16                	je     0x40a048
40a032:	33 c9                	xor    %ecx,%ecx
40a034:	85 ff                	test   %edi,%edi
40a036:	0f 9f c1             	setg   %cl
40a039:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a040:	85 c9                	test   %ecx,%ecx
40a042:	0f 85 71 02 00 00    	jne    0x40a2b9
40a048:	0f b6 4e ef          	movzbl -0x11(%esi),%ecx
40a04c:	0f b6 42 ef          	movzbl -0x11(%edx),%eax
40a050:	2b c8                	sub    %eax,%ecx
40a052:	74 12                	je     0x40a066
40a054:	33 c0                	xor    %eax,%eax
40a056:	85 c9                	test   %ecx,%ecx
40a058:	0f 9f c0             	setg   %al
40a05b:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
40a062:	eb 02                	jmp    0x40a066
40a064:	33 c9                	xor    %ecx,%ecx
40a066:	85 c9                	test   %ecx,%ecx
40a068:	0f 85 4b 02 00 00    	jne    0x40a2b9
40a06e:	8b 46 f0             	mov    -0x10(%esi),%eax
40a071:	3b 42 f0             	cmp    -0x10(%edx),%eax
40a074:	0f 84 81 00 00 00    	je     0x40a0fb
40a07a:	0f b6 f8             	movzbl %al,%edi
40a07d:	0f b6 42 f0          	movzbl -0x10(%edx),%eax
40a081:	2b f8                	sub    %eax,%edi
40a083:	74 16                	je     0x40a09b
40a085:	33 c9                	xor    %ecx,%ecx
40a087:	85 ff                	test   %edi,%edi
40a089:	0f 9f c1             	setg   %cl
40a08c:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a093:	85 c9                	test   %ecx,%ecx
40a095:	0f 85 1e 02 00 00    	jne    0x40a2b9
40a09b:	0f b6 7e f1          	movzbl -0xf(%esi),%edi
40a09f:	0f b6 42 f1          	movzbl -0xf(%edx),%eax
40a0a3:	2b f8                	sub    %eax,%edi
40a0a5:	74 16                	je     0x40a0bd
40a0a7:	33 c9                	xor    %ecx,%ecx
40a0a9:	85 ff                	test   %edi,%edi
40a0ab:	0f 9f c1             	setg   %cl
40a0ae:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a0b5:	85 c9                	test   %ecx,%ecx
40a0b7:	0f 85 fc 01 00 00    	jne    0x40a2b9
40a0bd:	0f b6 7e f2          	movzbl -0xe(%esi),%edi
40a0c1:	0f b6 42 f2          	movzbl -0xe(%edx),%eax
40a0c5:	2b f8                	sub    %eax,%edi
40a0c7:	74 16                	je     0x40a0df
40a0c9:	33 c9                	xor    %ecx,%ecx
40a0cb:	85 ff                	test   %edi,%edi
40a0cd:	0f 9f c1             	setg   %cl
40a0d0:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a0d7:	85 c9                	test   %ecx,%ecx
40a0d9:	0f 85 da 01 00 00    	jne    0x40a2b9
40a0df:	0f b6 4e f3          	movzbl -0xd(%esi),%ecx
40a0e3:	0f b6 42 f3          	movzbl -0xd(%edx),%eax
40a0e7:	2b c8                	sub    %eax,%ecx
40a0e9:	74 12                	je     0x40a0fd
40a0eb:	33 c0                	xor    %eax,%eax
40a0ed:	85 c9                	test   %ecx,%ecx
40a0ef:	0f 9f c0             	setg   %al
40a0f2:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
40a0f9:	eb 02                	jmp    0x40a0fd
40a0fb:	33 c9                	xor    %ecx,%ecx
40a0fd:	85 c9                	test   %ecx,%ecx
40a0ff:	0f 85 b4 01 00 00    	jne    0x40a2b9
40a105:	8b 46 f4             	mov    -0xc(%esi),%eax
40a108:	3b 42 f4             	cmp    -0xc(%edx),%eax
40a10b:	0f 84 82 00 00 00    	je     0x40a193
40a111:	0f b6 42 f4          	movzbl -0xc(%edx),%eax
40a115:	0f b6 7e f4          	movzbl -0xc(%esi),%edi
40a119:	2b f8                	sub    %eax,%edi
40a11b:	74 16                	je     0x40a133
40a11d:	33 c9                	xor    %ecx,%ecx
40a11f:	85 ff                	test   %edi,%edi
40a121:	0f 9f c1             	setg   %cl
40a124:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a12b:	85 c9                	test   %ecx,%ecx
40a12d:	0f 85 86 01 00 00    	jne    0x40a2b9
40a133:	0f b6 7e f5          	movzbl -0xb(%esi),%edi
40a137:	0f b6 42 f5          	movzbl -0xb(%edx),%eax
40a13b:	2b f8                	sub    %eax,%edi
40a13d:	74 16                	je     0x40a155
40a13f:	33 c9                	xor    %ecx,%ecx
40a141:	85 ff                	test   %edi,%edi
40a143:	0f 9f c1             	setg   %cl
40a146:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a14d:	85 c9                	test   %ecx,%ecx
40a14f:	0f 85 64 01 00 00    	jne    0x40a2b9
40a155:	0f b6 7e f6          	movzbl -0xa(%esi),%edi
40a159:	0f b6 42 f6          	movzbl -0xa(%edx),%eax
40a15d:	2b f8                	sub    %eax,%edi
40a15f:	74 16                	je     0x40a177
40a161:	33 c9                	xor    %ecx,%ecx
40a163:	85 ff                	test   %edi,%edi
40a165:	0f 9f c1             	setg   %cl
40a168:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
40a16f:	85 c9                	test   %ecx,%ecx
40a171:	0f 85 42 01 00 00    	jne    0x40a2b9
40a177:	0f b6 4e f7          	movzbl -0x9(%esi),%ecx
40a17b:	0f b6 42 f7          	movzbl -0x9(%edx),%eax
40a17f:	2b c8                	sub    %eax,%ecx
40a181:	74 12                	je     0x40a195
40a183:	33 c0                	xor    %eax,%eax
40a185:	85 c9                	test   %ecx,%ecx
40a187:	0f 9f c0             	setg   %al
40a18a:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
40a191:	eb 02                	jmp    0x40a195
40a193:	33 c9                	xor    %ecx,%ecx