409e1a:	50                   	push   %eax
409e1b:	0f b7 45 f2          	movzwl -0xe(%ebp),%eax
409e1f:	ba 04 00 00 00       	mov    $0x4,%edx
409e24:	e8 fb fa ff ff       	call   0x409924
409e29:	59                   	pop    %ecx
409e2a:	e9 a5 05 00 00       	jmp    0x40a3d4
409e2f:	55                   	push   %ebp
409e30:	e8 3b fb ff ff       	call   0x409970
409e35:	59                   	pop    %ecx
409e36:	55                   	push   %ebp
409e37:	e8 60 fb ff ff       	call   0x40999c
409e3c:	59                   	pop    %ecx
409e3d:	8b 45 08             	mov    0x8(%ebp),%eax
409e40:	50                   	push   %eax
409e41:	55                   	push   %ebp
409e42:	8d 55 dc             	lea    -0x24(%ebp),%edx
409e45:	8b 45 f4             	mov    -0xc(%ebp),%eax
409e48:	e8 c7 fb ff ff       	call   0x409a14
409e4d:	59                   	pop    %ecx
409e4e:	8b 45 dc             	mov    -0x24(%ebp),%eax
409e51:	e8 ae fa ff ff       	call   0x409904
409e56:	59                   	pop    %ecx
409e57:	e9 78 05 00 00       	jmp    0x40a3d4
409e5c:	55                   	push   %ebp
409e5d:	e8 0e fb ff ff       	call   0x409970
409e62:	59                   	pop    %ecx
409e63:	55                   	push   %ebp
409e64:	e8 33 fb ff ff       	call   0x40999c
409e69:	59                   	pop    %ecx
409e6a:	8b 45 08             	mov    0x8(%ebp),%eax
409e6d:	50                   	push   %eax
409e6e:	55                   	push   %ebp
409e6f:	8d 55 d8             	lea    -0x28(%ebp),%edx
409e72:	8b 45 f4             	mov    -0xc(%ebp),%eax
409e75:	e8 02 fd ff ff       	call   0x409b7c
409e7a:	59                   	pop    %ecx
409e7b:	8b 45 d8             	mov    -0x28(%ebp),%eax
409e7e:	e8 81 fa ff ff       	call   0x409904
409e83:	59                   	pop    %ecx
409e84:	e9 4b 05 00 00       	jmp    0x40a3d4
409e89:	55                   	push   %ebp
409e8a:	e8 e1 fa ff ff       	call   0x409970
409e8f:	59                   	pop    %ecx
409e90:	55                   	push   %ebp
409e91:	e8 06 fb ff ff       	call   0x40999c
409e96:	59                   	pop    %ecx
409e97:	8b 45 f4             	mov    -0xc(%ebp),%eax
409e9a:	48                   	dec    %eax
409e9b:	83 e8 02             	sub    $0x2,%eax
409e9e:	72 04                	jb     0x409ea4
409ea0:	74 18                	je     0x409eba
409ea2:	eb 30                	jmp    0x409ed4
409ea4:	8b 45 08             	mov    0x8(%ebp),%eax
409ea7:	50                   	push   %eax
409ea8:	0f b7 45 f0          	movzwl -0x10(%ebp),%eax
409eac:	8b 55 f4             	mov    -0xc(%ebp),%edx
409eaf:	e8 70 fa ff ff       	call   0x409924
409eb4:	59                   	pop    %ecx
409eb5:	e9 1a 05 00 00       	jmp    0x40a3d4
409eba:	8b 45 08             	mov    0x8(%ebp),%eax
409ebd:	50                   	push   %eax
409ebe:	0f b7 45 f0          	movzwl -0x10(%ebp),%eax
409ec2:	8b 04 85 a4 e6 46 00 	mov    0x46e6a4(,%eax,4),%eax
409ec9:	e8 36 fa ff ff       	call   0x409904
409ece:	59                   	pop    %ecx
409ecf:	e9 00 05 00 00       	jmp    0x40a3d4
409ed4:	8b 45 08             	mov    0x8(%ebp),%eax
409ed7:	50                   	push   %eax
409ed8:	0f b7 45 f0          	movzwl -0x10(%ebp),%eax
409edc:	8b 04 85 d4 e6 46 00 	mov    0x46e6d4(,%eax,4),%eax
409ee3:	e8 1c fa ff ff       	call   0x409904
409ee8:	59                   	pop    %ecx
409ee9:	e9 e6 04 00 00       	jmp    0x40a3d4
409eee:	55                   	push   %ebp
409eef:	e8 7c fa ff ff       	call   0x409970
409ef4:	59                   	pop    %ecx
409ef5:	8b 45 f4             	mov    -0xc(%ebp),%eax
409ef8:	48                   	dec    %eax
409ef9:	83 e8 02             	sub    $0x2,%eax
409efc:	72 0a                	jb     0x409f08
409efe:	74 25                	je     0x409f25
409f00:	48                   	dec    %eax
409f01:	74 49                	je     0x409f4c
409f03:	48                   	dec    %eax
409f04:	74 6d                	je     0x409f73
409f06:	eb 7f                	jmp    0x409f87
409f08:	55                   	push   %ebp
409f09:	e8 8e fa ff ff       	call   0x40999c
409f0e:	59                   	pop    %ecx
409f0f:	8b 45 08             	mov    0x8(%ebp),%eax
409f12:	50                   	push   %eax
409f13:	0f b7 45 ee          	movzwl -0x12(%ebp),%eax
409f17:	8b 55 f4             	mov    -0xc(%ebp),%edx
409f1a:	e8 05 fa ff ff       	call   0x409924
409f1f:	59                   	pop    %ecx
409f20:	e9 af 04 00 00       	jmp    0x40a3d4
409f25:	8b 45 08             	mov    0x8(%ebp),%eax
409f28:	50                   	push   %eax
409f29:	8b 45 08             	mov    0x8(%ebp),%eax
409f2c:	ff 70 0c             	push   0xc(%eax)
409f2f:	ff 70 08             	push   0x8(%eax)
409f32:	e8 4d f9 ff ff       	call   0x409884
409f37:	0f b7 c0             	movzwl %ax,%eax
409f3a:	8b 04 85 04 e7 46 00 	mov    0x46e704(,%eax,4),%eax
409f41:	e8 be f9 ff ff       	call   0x409904
409f46:	59                   	pop    %ecx
409f47:	e9 88 04 00 00       	jmp    0x40a3d4
409f4c:	8b 45 08             	mov    0x8(%ebp),%eax
409f4f:	50                   	push   %eax
409f50:	8b 45 08             	mov    0x8(%ebp),%eax
409f53:	ff 70 0c             	push   0xc(%eax)
409f56:	ff 70 08             	push   0x8(%eax)
409f59:	e8 26 f9 ff ff       	call   0x409884
409f5e:	0f b7 c0             	movzwl %ax,%eax
409f61:	8b 04 85 20 e7 46 00 	mov    0x46e720(,%eax,4),%eax
409f68:	e8 97 f9 ff ff       	call   0x409904
409f6d:	59                   	pop    %ecx
409f6e:	e9 61 04 00 00       	jmp    0x40a3d4
409f73:	8b 45 08             	mov    0x8(%ebp),%eax
409f76:	50                   	push   %eax
409f77:	a1 8c e6 46 00       	mov    0x46e68c,%eax
409f7c:	e8 03 fd ff ff       	call   0x409c84
409f81:	59                   	pop    %ecx
409f82:	e9 4d 04 00 00       	jmp    0x40a3d4
409f87:	8b 45 08             	mov    0x8(%ebp),%eax
409f8a:	50                   	push   %eax
409f8b:	a1 90 e6 46 00       	mov    0x46e690,%eax
409f90:	e8 ef fc ff ff       	call   0x409c84
409f95:	59                   	pop    %ecx
409f96:	e9 39 04 00 00       	jmp    0x40a3d4
409f9b:	55                   	push   %ebp
409f9c:	e8 cf f9 ff ff       	call   0x409970
409fa1:	59                   	pop    %ecx
409fa2:	55                   	push   %ebp
409fa3:	e8 2c fa ff ff       	call   0x4099d4
409fa8:	59                   	pop    %ecx
409fa9:	c6 45 e1 00          	movb   $0x0,-0x1f(%ebp)
409fad:	8b 75 fc             	mov    -0x4(%ebp),%esi
409fb0:	e9 95 00 00 00       	jmp    0x40a04a
409fb5:	25 ff 00 00 00       	and    $0xff,%eax
409fba:	0f a3 05 0c 31 46 00 	bt     %eax,0x46310c
409fc1:	73 0b                	jae    0x409fce
409fc3:	8b c6                	mov    %esi,%eax
409fc5:	e8 82 21 00 00       	call   0x40c14c
409fca:	8b f0                	mov    %eax,%esi
409fcc:	eb 7c                	jmp    0x40a04a
409fce:	33 c0                	xor    %eax,%eax
409fd0:	8a 06                	mov    (%esi),%al
409fd2:	83 f8 48             	cmp    $0x48,%eax
409fd5:	7f 13                	jg     0x409fea
409fd7:	74 7b                	je     0x40a054
409fd9:	83 e8 22             	sub    $0x22,%eax
409fdc:	74 63                	je     0x40a041
409fde:	83 e8 05             	sub    $0x5,%eax
409fe1:	74 5e                	je     0x40a041
409fe3:	83 e8 1a             	sub    $0x1a,%eax
409fe6:	74 0e                	je     0x409ff6
409fe8:	eb 5f                	jmp    0x40a049
409fea:	83 e8 61             	sub    $0x61,%eax
409fed:	74 07                	je     0x409ff6
409fef:	83 e8 07             	sub    $0x7,%eax
409ff2:	74 60                	je     0x40a054
409ff4:	eb 53                	jmp    0x40a049
409ff6:	80 7d e1 00          	cmpb   $0x0,-0x1f(%ebp)
409ffa:	75 4d                	jne    0x40a049
409ffc:	ba 14 a4 40 00       	mov    $0x40a414,%edx
40a001:	b9 05 00 00 00       	mov    $0x5,%ecx
40a006:	8b c6                	mov    %esi,%eax
40a008:	e8 3f e7 ff ff       	call   0x40874c
40a00d:	85 c0                	test   %eax,%eax
40a00f:	74 2a                	je     0x40a03b
40a011:	ba 1c a4 40 00       	mov    $0x40a41c,%edx
40a016:	b9 03 00 00 00       	mov    $0x3,%ecx
40a01b:	8b c6                	mov    %esi,%eax
40a01d:	e8 2a e7 ff ff       	call   0x40874c
40a022:	85 c0                	test   %eax,%eax
40a024:	74 15                	je     0x40a03b
40a026:	ba 20 a4 40 00       	mov    $0x40a420,%edx
40a02b:	b9 04 00 00 00       	mov    $0x4,%ecx
40a030:	8b c6                	mov    %esi,%eax
40a032:	e8 15 e7 ff ff       	call   0x40874c
40a037:	85 c0                	test   %eax,%eax
40a039:	75 19                	jne    0x40a054
40a03b:	c6 45 e2 01          	movb   $0x1,-0x1e(%ebp)
40a03f:	eb 13                	jmp    0x40a054
40a041:	8a 45 e1             	mov    -0x1f(%ebp),%al
40a044:	34 01                	xor    $0x1,%al
40a046:	88 45 e1             	mov    %al,-0x1f(%ebp)
40a049:	46                   	inc    %esi
40a04a:	8a 06                	mov    (%esi),%al
40a04c:	84 c0                	test   %al,%al
40a04e:	0f 85 61 ff ff ff    	jne    0x409fb5
40a054:	66 8b 45 ea          	mov    -0x16(%ebp),%ax
40a058:	80 7d e2 00          	cmpb   $0x0,-0x1e(%ebp)
40a05c:	74 15                	je     0x40a073
40a05e:	66 85 c0             	test   %ax,%ax
40a061:	75 06                	jne    0x40a069
40a063:	66 b8 0c 00          	mov    $0xc,%ax
40a067:	eb 0a                	jmp    0x40a073
40a069:	66 83 f8 0c          	cmp    $0xc,%ax
40a06d:	76 04                	jbe    0x40a073
40a06f:	66 83 e8 0c          	sub    $0xc,%ax
40a073:	83 7d f4 02          	cmpl   $0x2,-0xc(%ebp)
40a077:	7e 07                	jle    0x40a080
40a079:	c7 45 f4 02 00 00 00 	movl   $0x2,-0xc(%ebp)
40a080:	8b 55 08             	mov    0x8(%ebp),%edx
40a083:	52                   	push   %edx
40a084:	0f b7 c0             	movzwl %ax,%eax
40a087:	8b 55 f4             	mov    -0xc(%ebp),%edx
40a08a:	e8 95 f8 ff ff       	call   0x409924
40a08f:	59                   	pop    %ecx
40a090:	e9 3f 03 00 00       	jmp    0x40a3d4
40a095:	55                   	push   %ebp
40a096:	e8 d5 f8 ff ff       	call   0x409970
40a09b:	59                   	pop    %ecx
40a09c:	55                   	push   %ebp
40a09d:	e8 32 f9 ff ff       	call   0x4099d4
40a0a2:	59                   	pop    %ecx
40a0a3:	83 7d f4 02          	cmpl   $0x2,-0xc(%ebp)
40a0a7:	7e 07                	jle    0x40a0b0
40a0a9:	c7 45 f4 02 00 00 00 	movl   $0x2,-0xc(%ebp)
40a0b0:	8b 45 08             	mov    0x8(%ebp),%eax
40a0b3:	50                   	push   %eax
40a0b4:	0f b7 45 e8          	movzwl -0x18(%ebp),%eax
40a0b8:	8b 55 f4             	mov    -0xc(%ebp),%edx
40a0bb:	e8 64 f8 ff ff       	call   0x409924
40a0c0:	59                   	pop    %ecx
40a0c1:	e9 0e 03 00 00       	jmp    0x40a3d4
40a0c6:	55                   	push   %ebp
40a0c7:	e8 a4 f8 ff ff       	call   0x409970
40a0cc:	59                   	pop    %ecx
40a0cd:	55                   	push   %ebp
40a0ce:	e8 01 f9 ff ff       	call   0x4099d4
40a0d3:	59                   	pop    %ecx
40a0d4:	83 7d f4 02          	cmpl   $0x2,-0xc(%ebp)
40a0d8:	7e 07                	jle    0x40a0e1
40a0da:	c7 45 f4 02 00 00 00 	movl   $0x2,-0xc(%ebp)
40a0e1:	8b 45 08             	mov    0x8(%ebp),%eax
40a0e4:	50                   	push   %eax
40a0e5:	0f b7 45 e6          	movzwl -0x1a(%ebp),%eax
40a0e9:	8b 55 f4             	mov    -0xc(%ebp),%edx
40a0ec:	e8 33 f8 ff ff       	call   0x409924
40a0f1:	59                   	pop    %ecx
40a0f2:	e9 dd 02 00 00       	jmp    0x40a3d4
40a0f7:	55                   	push   %ebp
40a0f8:	e8 73 f8 ff ff       	call   0x409970
40a0fd:	59                   	pop    %ecx
40a0fe:	83 7d f4 01          	cmpl   $0x1,-0xc(%ebp)
40a102:	75 14                	jne    0x40a118
40a104:	8b 45 08             	mov    0x8(%ebp),%eax
40a107:	50                   	push   %eax
40a108:	a1 a0 e6 46 00       	mov    0x46e6a0,%eax
40a10d:	e8 72 fb ff ff       	call   0x409c84
40a112:	59                   	pop    %ecx
40a113:	e9 bc 02 00 00       	jmp    0x40a3d4
40a118:	8b 45 08             	mov    0x8(%ebp),%eax
40a11b:	50                   	push   %eax
40a11c:	a1 a4 e6 46 00       	mov    0x46e6a4,%eax
40a121:	e8 5e fb ff ff       	call   0x409c84
40a126:	59                   	pop    %ecx
40a127:	e9 a8 02 00 00       	jmp    0x40a3d4
40a12c:	55                   	push   %ebp
40a12d:	e8 3e f8 ff ff       	call   0x409970
40a132:	59                   	pop    %ecx
40a133:	55                   	push   %ebp
40a134:	e8 9b f8 ff ff       	call   0x4099d4
40a139:	59                   	pop    %ecx
40a13a:	83 7d f4 03          	cmpl   $0x3,-0xc(%ebp)
40a13e:	7e 07                	jle    0x40a147
40a140:	c7 45 f4 03 00 00 00 	movl   $0x3,-0xc(%ebp)
40a147:	8b 45 08             	mov    0x8(%ebp),%eax
40a14a:	50                   	push   %eax
40a14b:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
40a14f:	8b 55 f4             	mov    -0xc(%ebp),%edx
40a152:	e8 cd f7 ff ff       	call   0x409924
40a157:	59                   	pop    %ecx
40a158:	e9 77 02 00 00       	jmp    0x40a3d4
40a15d:	55                   	push   %ebp
40a15e:	e8 71 f8 ff ff       	call   0x4099d4
40a163:	59                   	pop    %ecx
40a164:	8b 75 fc             	mov    -0x4(%ebp),%esi
40a167:	4e                   	dec    %esi
40a168:	ba 14 a4 40 00       	mov    $0x40a414,%edx
40a16d:	b9 05 00 00 00       	mov    $0x5,%ecx
40a172:	8b c6                	mov    %esi,%eax
40a174:	e8 d3 e5 ff ff       	call   0x40874c
40a179:	85 c0                	test   %eax,%eax
40a17b:	75 28                	jne    0x40a1a5
40a17d:	66 83 7d ea 0c       	cmpw   $0xc,-0x16(%ebp)
40a182:	72 03                	jb     0x40a187
40a184:	83 c6 03             	add    $0x3,%esi
40a187:	8b 45 08             	mov    0x8(%ebp),%eax
40a18a:	50                   	push   %eax
40a18b:	ba 02 00 00 00       	mov    $0x2,%edx
40a190:	8b c6                	mov    %esi,%eax
40a192:	e8 29 f7 ff ff       	call   0x4098c0
40a197:	59                   	pop    %ecx
40a198:	83 45 fc 04          	addl   $0x4,-0x4(%ebp)
40a19c:	c6 45 e2 01          	movb   $0x1,-0x1e(%ebp)
40a1a0:	e9 2f 02 00 00       	jmp    0x40a3d4
40a1a5:	ba 1c a4 40 00       	mov    $0x40a41c,%edx
40a1aa:	b9 03 00 00 00       	mov    $0x3,%ecx
40a1af:	8b c6                	mov    %esi,%eax
40a1b1:	e8 96 e5 ff ff       	call   0x40874c
40a1b6:	85 c0                	test   %eax,%eax
40a1b8:	75 28                	jne    0x40a1e2
40a1ba:	66 83 7d ea 0c       	cmpw   $0xc,-0x16(%ebp)
40a1bf:	72 03                	jb     0x40a1c4
40a1c1:	83 c6 02             	add    $0x2,%esi
40a1c4:	8b 45 08             	mov    0x8(%ebp),%eax
40a1c7:	50                   	push   %eax
40a1c8:	ba 01 00 00 00       	mov    $0x1,%edx
40a1cd:	8b c6                	mov    %esi,%eax
40a1cf:	e8 ec f6 ff ff       	call   0x4098c0
40a1d4:	59                   	pop    %ecx
40a1d5:	83 45 fc 02          	addl   $0x2,-0x4(%ebp)
40a1d9:	c6 45 e2 01          	movb   $0x1,-0x1e(%ebp)
40a1dd:	e9 f2 01 00 00       	jmp    0x40a3d4
40a1e2:	ba 20 a4 40 00       	mov    $0x40a420,%edx
40a1e7:	b9 04 00 00 00       	mov    $0x4,%ecx
40a1ec:	8b c6                	mov    %esi,%eax
40a1ee:	e8 59 e5 ff ff       	call   0x40874c
40a1f3:	85 c0                	test   %eax,%eax
40a1f5:	75 34                	jne    0x40a22b
40a1f7:	66 83 7d ea 0c       	cmpw   $0xc,-0x16(%ebp)
40a1fc:	73 11                	jae    0x40a20f
40a1fe:	8b 45 08             	mov    0x8(%ebp),%eax
40a201:	50                   	push   %eax
40a202:	a1 98 e6 46 00       	mov    0x46e698,%eax
40a207:	e8 f8 f6 ff ff       	call   0x409904
40a20c:	59                   	pop    %ecx
40a20d:	eb 0f                	jmp    0x40a21e
40a20f:	8b 45 08             	mov    0x8(%ebp),%eax
40a212:	50                   	push   %eax
40a213:	a1 9c e6 46 00       	mov    0x46e69c,%eax
40a218:	e8 e7 f6 ff ff       	call   0x409904
40a21d:	59                   	pop    %ecx
40a21e:	83 45 fc 03          	addl   $0x3,-0x4(%ebp)
40a222:	c6 45 e2 01          	movb   $0x1,-0x1e(%ebp)
40a226:	e9 a9 01 00 00       	jmp    0x40a3d4
40a22b:	ba 28 a4 40 00       	mov    $0x40a428,%edx
40a230:	b9 04 00 00 00       	mov    $0x4,%ecx
40a235:	8b c6                	mov    %esi,%eax
40a237:	e8 10 e5 ff ff       	call   0x40874c
40a23c:	85 c0                	test   %eax,%eax
40a23e:	75 32                	jne    0x40a272
40a240:	55                   	push   %ebp
40a241:	e8 56 f7 ff ff       	call   0x40999c
40a246:	59                   	pop    %ecx
40a247:	8b 45 08             	mov    0x8(%ebp),%eax