406d08:	50                   	push   %eax
406d09:	8b 45 1c             	mov    0x1c(%ebp),%eax
406d0c:	50                   	push   %eax
406d0d:	8b 45 20             	mov    0x20(%ebp),%eax
406d10:	50                   	push   %eax
406d11:	8b 45 24             	mov    0x24(%ebp),%eax
406d14:	50                   	push   %eax
406d15:	8b 45 fc             	mov    -0x4(%ebp),%eax
406d18:	50                   	push   %eax
406d19:	57                   	push   %edi
406d1a:	56                   	push   %esi
406d1b:	6a 00                	push   $0x0
406d1d:	e8 5e ff ff ff       	call   0x406c80
406d22:	8b f0                	mov    %eax,%esi
406d24:	8b c3                	mov    %ebx,%eax
406d26:	e8 5d bd ff ff       	call   0x402a88
406d2b:	8b c6                	mov    %esi,%eax
406d2d:	5f                   	pop    %edi
406d2e:	5e                   	pop    %esi
406d2f:	5b                   	pop    %ebx
406d30:	59                   	pop    %ecx
406d31:	5d                   	pop    %ebp
406d32:	c2 20 00             	ret    $0x20
406d35:	8d 40 00             	lea    0x0(%eax),%eax
406d38:	55                   	push   %ebp
406d39:	8b ec                	mov    %esp,%ebp
406d3b:	51                   	push   %ecx
406d3c:	53                   	push   %ebx
406d3d:	56                   	push   %esi
406d3e:	57                   	push   %edi
406d3f:	8b f9                	mov    %ecx,%edi
406d41:	8b f2                	mov    %edx,%esi
406d43:	89 45 fc             	mov    %eax,-0x4(%ebp)
406d46:	68 d4 6d 40 00       	push   $0x406dd4
406d4b:	68 e8 6d 40 00       	push   $0x406de8
406d50:	e8 a7 fa ff ff       	call   0x4067fc
406d55:	8b d8                	mov    %eax,%ebx
406d57:	68 f0 6d 40 00       	push   $0x406df0
406d5c:	e8 23 fd ff ff       	call   0x406a84
406d61:	8b 55 fc             	mov    -0x4(%ebp),%edx
406d64:	89 02                	mov    %eax,(%edx)
406d66:	68 00 6e 40 00       	push   $0x406e00
406d6b:	e8 14 fd ff ff       	call   0x406a84
406d70:	89 06                	mov    %eax,(%esi)
406d72:	68 18 6e 40 00       	push   $0x406e18
406d77:	e8 08 fd ff ff       	call   0x406a84
406d7c:	89 07                	mov    %eax,(%edi)
406d7e:	83 3e 00             	cmpl   $0x0,(%esi)
406d81:	74 18                	je     0x406d9b
406d83:	85 db                	test   %ebx,%ebx
406d85:	74 14                	je     0x406d9b
406d87:	6a 00                	push   $0x0
406d89:	6a 00                	push   $0x0
406d8b:	8b 06                	mov    (%esi),%eax
406d8d:	50                   	push   %eax
406d8e:	53                   	push   %ebx
406d8f:	e8 28 fd ff ff       	call   0x406abc
406d94:	8b 55 0c             	mov    0xc(%ebp),%edx
406d97:	89 02                	mov    %eax,(%edx)
406d99:	eb 07                	jmp    0x406da2
406d9b:	8b 45 0c             	mov    0xc(%ebp),%eax
406d9e:	33 d2                	xor    %edx,%edx
406da0:	89 10                	mov    %edx,(%eax)
406da2:	83 3f 00             	cmpl   $0x0,(%edi)
406da5:	74 18                	je     0x406dbf
406da7:	85 db                	test   %ebx,%ebx
406da9:	74 14                	je     0x406dbf
406dab:	6a 00                	push   $0x0
406dad:	6a 00                	push   $0x0
406daf:	8b 07                	mov    (%edi),%eax
406db1:	50                   	push   %eax
406db2:	53                   	push   %ebx
406db3:	e8 04 fd ff ff       	call   0x406abc
406db8:	8b 55 08             	mov    0x8(%ebp),%edx
406dbb:	89 02                	mov    %eax,(%edx)
406dbd:	eb 09                	jmp    0x406dc8
406dbf:	8b 45 08             	mov    0x8(%ebp),%eax
406dc2:	c7 00 03 00 00 00    	movl   $0x3,(%eax)
406dc8:	8b c3                	mov    %ebx,%eax
406dca:	5f                   	pop    %edi
406dcb:	5e                   	pop    %esi
406dcc:	5b                   	pop    %ebx
406dcd:	59                   	pop    %ecx
406dce:	5d                   	pop    %ebp
406dcf:	c2 08 00             	ret    $0x8
406dd2:	00 00                	add    %al,(%eax)
406dd4:	4d                   	dec    %ebp
406dd5:	61                   	popa
406dd6:	67 65 6c             	gs insb (%dx),%es:(%di)
406dd9:	6c                   	insb   (%dx),%es:(%edi)
406dda:	61                   	popa
406ddb:	6e                   	outsb  %ds:(%esi),(%dx)
406ddc:	20 4d 53             	and    %cl,0x53(%ebp)
406ddf:	57                   	push   %edi
406de0:	48                   	dec    %eax
406de1:	45                   	inc    %ebp
406de2:	45                   	inc    %ebp
406de3:	4c                   	dec    %esp
406de4:	00 00                	add    %al,(%eax)
406de6:	00 00                	add    %al,(%eax)
406de8:	4d                   	dec    %ebp
406de9:	6f                   	outsl  %ds:(%esi),(%dx)
406dea:	75 73                	jne    0x406e5f
406dec:	65 5a                	gs pop %edx
406dee:	00 00                	add    %al,(%eax)
406df0:	4d                   	dec    %ebp
406df1:	53                   	push   %ebx
406df2:	57                   	push   %edi
406df3:	48                   	dec    %eax
406df4:	45                   	inc    %ebp
406df5:	45                   	inc    %ebp
406df6:	4c                   	dec    %esp
406df7:	5f                   	pop    %edi
406df8:	52                   	push   %edx
406df9:	4f                   	dec    %edi
406dfa:	4c                   	dec    %esp
406dfb:	4c                   	dec    %esp
406dfc:	4d                   	dec    %ebp
406dfd:	53                   	push   %ebx
406dfe:	47                   	inc    %edi
406dff:	00 4d 53             	add    %cl,0x53(%ebp)
406e02:	48                   	dec    %eax
406e03:	5f                   	pop    %edi
406e04:	57                   	push   %edi
406e05:	48                   	dec    %eax
406e06:	45                   	inc    %ebp
406e07:	45                   	inc    %ebp
406e08:	4c                   	dec    %esp
406e09:	53                   	push   %ebx
406e0a:	55                   	push   %ebp
406e0b:	50                   	push   %eax
406e0c:	50                   	push   %eax
406e0d:	4f                   	dec    %edi
406e0e:	52                   	push   %edx
406e0f:	54                   	push   %esp
406e10:	5f                   	pop    %edi
406e11:	4d                   	dec    %ebp
406e12:	53                   	push   %ebx
406e13:	47                   	inc    %edi
406e14:	00 00                	add    %al,(%eax)
406e16:	00 00                	add    %al,(%eax)
406e18:	4d                   	dec    %ebp
406e19:	53                   	push   %ebx
406e1a:	48                   	dec    %eax
406e1b:	5f                   	pop    %edi
406e1c:	53                   	push   %ebx
406e1d:	43                   	inc    %ebx
406e1e:	52                   	push   %edx
406e1f:	4f                   	dec    %edi
406e20:	4c                   	dec    %esp
406e21:	4c                   	dec    %esp
406e22:	5f                   	pop    %edi
406e23:	4c                   	dec    %esp
406e24:	49                   	dec    %ecx
406e25:	4e                   	dec    %esi
406e26:	45                   	inc    %ebp
406e27:	53                   	push   %ebx
406e28:	5f                   	pop    %edi
406e29:	4d                   	dec    %ebp
406e2a:	53                   	push   %ebx
406e2b:	47                   	inc    %edi
406e2c:	00 00                	add    %al,(%eax)
406e2e:	00 00                	add    %al,(%eax)
406e30:	55                   	push   %ebp
406e31:	8b ec                	mov    %esp,%ebp
406e33:	33 c0                	xor    %eax,%eax
406e35:	55                   	push   %ebp
406e36:	68 55 6e 40 00       	push   $0x406e55
406e3b:	64 ff 30             	push   %fs:(%eax)
406e3e:	64 89 20             	mov    %esp,%fs:(%eax)
406e41:	ff 05 74 56 47 00    	incl   0x475674
406e47:	33 c0                	xor    %eax,%eax
406e49:	5a                   	pop    %edx
406e4a:	59                   	pop    %ecx
406e4b:	59                   	pop    %ecx
406e4c:	64 89 10             	mov    %edx,%fs:(%eax)
406e4f:	68 5c 6e 40 00       	push   $0x406e5c
406e54:	c3                   	ret
406e55:	e9 fa cb ff ff       	jmp    0x403a54
406e5a:	eb f8                	jmp    0x406e54
406e5c:	5d                   	pop    %ebp
406e5d:	c3                   	ret
406e5e:	8b c0                	mov    %eax,%eax
406e60:	83 2d 74 56 47 00 01 	subl   $0x1,0x475674
406e67:	c3                   	ret
406e68:	55                   	push   %ebp
406e69:	8b ec                	mov    %esp,%ebp
406e6b:	33 c0                	xor    %eax,%eax
406e6d:	55                   	push   %ebp
406e6e:	68 8d 6e 40 00       	push   $0x406e8d
406e73:	64 ff 30             	push   %fs:(%eax)
406e76:	64 89 20             	mov    %esp,%fs:(%eax)
406e79:	ff 05 78 56 47 00    	incl   0x475678
406e7f:	33 c0                	xor    %eax,%eax
406e81:	5a                   	pop    %edx
406e82:	59                   	pop    %ecx
406e83:	59                   	pop    %ecx
406e84:	64 89 10             	mov    %edx,%fs:(%eax)
406e87:	68 94 6e 40 00       	push   $0x406e94
406e8c:	c3                   	ret
406e8d:	e9 c2 cb ff ff       	jmp    0x403a54
406e92:	eb f8                	jmp    0x406e8c
406e94:	5d                   	pop    %ebp
406e95:	c3                   	ret
406e96:	8b c0                	mov    %eax,%eax
406e98:	83 2d 78 56 47 00 01 	subl   $0x1,0x475678
406e9f:	c3                   	ret
406ea0:	64 56                	fs push %esi
406ea2:	47                   	inc    %edi
406ea3:	00 f0                	add    %dh,%al
406ea5:	ff 00                	incl   (%eax)
406ea7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406eab:	00 f1                	add    %dh,%cl
406ead:	ff 00                	incl   (%eax)
406eaf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406eb3:	00 f2                	add    %dh,%dl
406eb5:	ff 00                	incl   (%eax)
406eb7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ebb:	00 f3                	add    %dh,%bl
406ebd:	ff 00                	incl   (%eax)
406ebf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ec3:	00 f4                	add    %dh,%ah
406ec5:	ff 00                	incl   (%eax)
406ec7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ecb:	00 f5                	add    %dh,%ch
406ecd:	ff 00                	incl   (%eax)
406ecf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ed3:	00 f6                	add    %dh,%dh
406ed5:	ff 00                	incl   (%eax)
406ed7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406edb:	00 f7                	add    %dh,%bh
406edd:	ff 00                	incl   (%eax)
406edf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ee3:	00 f8                	add    %bh,%al
406ee5:	ff 00                	incl   (%eax)
406ee7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406eeb:	00 f9                	add    %bh,%cl
406eed:	ff 00                	incl   (%eax)
406eef:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ef3:	00 fa                	add    %bh,%dl
406ef5:	ff 00                	incl   (%eax)
406ef7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406efb:	00 fb                	add    %bh,%bl
406efd:	ff 00                	incl   (%eax)
406eff:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f03:	00 fc                	add    %bh,%ah
406f05:	ff 00                	incl   (%eax)
406f07:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f0b:	00 fd                	add    %bh,%ch
406f0d:	ff 00                	incl   (%eax)
406f0f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f13:	00 fe                	add    %bh,%dh
406f15:	ff 00                	incl   (%eax)
406f17:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f1b:	00 ff                	add    %bh,%bh
406f1d:	ff 00                	incl   (%eax)
406f1f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f23:	00 e0                	add    %ah,%al
406f25:	ff 00                	incl   (%eax)
406f27:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f2b:	00 e1                	add    %ah,%cl
406f2d:	ff 00                	incl   (%eax)
406f2f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f33:	00 e2                	add    %ah,%dl
406f35:	ff 00                	incl   (%eax)
406f37:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f3b:	00 e3                	add    %ah,%bl
406f3d:	ff 00                	incl   (%eax)
406f3f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f43:	00 e4                	add    %ah,%ah
406f45:	ff 00                	incl   (%eax)
406f47:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f4b:	00 e5                	add    %ah,%ch
406f4d:	ff 00                	incl   (%eax)
406f4f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f53:	00 e6                	add    %ah,%dh
406f55:	ff 00                	incl   (%eax)
406f57:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f5b:	00 e7                	add    %ah,%bh
406f5d:	ff 00                	incl   (%eax)
406f5f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f63:	00 e8                	add    %ch,%al
406f65:	ff 00                	incl   (%eax)
406f67:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f6b:	00 e9                	add    %ch,%cl
406f6d:	ff 00                	incl   (%eax)
406f6f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f73:	00 ea                	add    %ch,%dl
406f75:	ff 00                	incl   (%eax)
406f77:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f7b:	00 eb                	add    %ch,%bl
406f7d:	ff 00                	incl   (%eax)
406f7f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f83:	00 ec                	add    %ch,%ah
406f85:	ff 00                	incl   (%eax)
406f87:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f8b:	00 ed                	add    %ch,%ch
406f8d:	ff 00                	incl   (%eax)
406f8f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f93:	00 ee                	add    %ch,%dh
406f95:	ff 00                	incl   (%eax)
406f97:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406f9b:	00 ef                	add    %ch,%bh
406f9d:	ff 00                	incl   (%eax)
406f9f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fa3:	00 d0                	add    %dl,%al
406fa5:	ff 00                	incl   (%eax)
406fa7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fab:	00 d1                	add    %dl,%cl
406fad:	ff 00                	incl   (%eax)
406faf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fb3:	00 d2                	add    %dl,%dl
406fb5:	ff 00                	incl   (%eax)
406fb7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fbb:	00 d3                	add    %dl,%bl
406fbd:	ff 00                	incl   (%eax)
406fbf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fc3:	00 d4                	add    %dl,%ah
406fc5:	ff 00                	incl   (%eax)
406fc7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fcb:	00 d5                	add    %dl,%ch
406fcd:	ff 00                	incl   (%eax)
406fcf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fd3:	00 d6                	add    %dl,%dh
406fd5:	ff 00                	incl   (%eax)
406fd7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fdb:	00 d7                	add    %dl,%bh
406fdd:	ff 00                	incl   (%eax)
406fdf:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406fe3:	00 d8                	add    %bl,%al
406fe5:	ff 00                	incl   (%eax)
406fe7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406feb:	00 d9                	add    %bl,%cl
406fed:	ff 00                	incl   (%eax)
406fef:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ff3:	00 da                	add    %bl,%dl
406ff5:	ff 00                	incl   (%eax)
406ff7:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
406ffb:	00 db                	add    %bl,%bl
406ffd:	ff 00                	incl   (%eax)
406fff:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
407003:	00 dc                	add    %bl,%ah
407005:	ff 00                	incl   (%eax)
407007:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
40700b:	00 dd                	add    %bl,%ch
40700d:	ff 00                	incl   (%eax)
40700f:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)
407013:	00 de                	add    %bl,%dh
407015:	ff 00                	incl   (%eax)
407017:	00 64 56 47          	add    %ah,0x47(%esi,%edx,2)