404b54:	8b ec                	mov    %esp,%ebp
404b56:	83 ec 10             	sub    $0x10,%esp
404b59:	8d 55 f4             	lea    -0xc(%ebp),%edx
404b5c:	56                   	push   %esi
404b5d:	8b f1                	mov    %ecx,%esi
404b5f:	8b 4d 08             	mov    0x8(%ebp),%ecx
404b62:	52                   	push   %edx
404b63:	8b 01                	mov    (%ecx),%eax
404b65:	ff 50 04             	call   *0x4(%eax)
404b68:	50                   	push   %eax
404b69:	8d 4e 04             	lea    0x4(%esi),%ecx
404b6c:	e8 e9 05 00 00       	call   0x40515a
404b71:	8d 4d f4             	lea    -0xc(%ebp),%ecx
404b74:	e8 ed e2 ff ff       	call   0x402e66
404b79:	5e                   	pop    %esi
404b7a:	c9                   	leave
404b7b:	c2 04 00             	ret    $0x4
404b7e:	83 a1 3c 02 00 00 00 	andl   $0x0,0x23c(%ecx)
404b85:	83 c1 04             	add    $0x4,%ecx
404b88:	e9 ac 05 00 00       	jmp    0x405139
404b8d:	55                   	push   %ebp
404b8e:	8b ec                	mov    %esp,%ebp
404b90:	83 ec 18             	sub    $0x18,%esp
404b93:	53                   	push   %ebx
404b94:	8b d9                	mov    %ecx,%ebx
404b96:	56                   	push   %esi
404b97:	57                   	push   %edi
404b98:	89 5d f8             	mov    %ebx,-0x8(%ebp)
404b9b:	8b 43 18             	mov    0x18(%ebx),%eax
404b9e:	85 c0                	test   %eax,%eax
404ba0:	75 35                	jne    0x404bd7
404ba2:	83 7b 14 0c          	cmpl   $0xc,0x14(%ebx)
404ba6:	0f 82 4c 05 00 00    	jb     0x4050f8
404bac:	8b 4b 10             	mov    0x10(%ebx),%ecx
404baf:	81 39 29 bb 66 e4    	cmpl   $0xe466bb29,(%ecx)
404bb5:	75 15                	jne    0x404bcc
404bb7:	8b 41 04             	mov    0x4(%ecx),%eax
404bba:	89 43 28             	mov    %eax,0x28(%ebx)
404bbd:	8b 41 08             	mov    0x8(%ecx),%eax
404bc0:	89 43 2c             	mov    %eax,0x2c(%ebx)
404bc3:	c7 43 18 01 00 00 00 	movl   $0x1,0x18(%ebx)
404bca:	eb 14                	jmp    0x404be0
404bcc:	8d 4b 10             	lea    0x10(%ebx),%ecx
404bcf:	e8 1f e2 ff ff       	call   0x402df3
404bd4:	8b 43 18             	mov    0x18(%ebx),%eax
404bd7:	83 f8 01             	cmp    $0x1,%eax
404bda:	0f 85 18 05 00 00    	jne    0x4050f8
404be0:	8b 43 14             	mov    0x14(%ebx),%eax
404be3:	83 e8 0c             	sub    $0xc,%eax
404be6:	89 45 f0             	mov    %eax,-0x10(%ebp)
404be9:	3b 43 28             	cmp    0x28(%ebx),%eax
404bec:	0f 82 06 05 00 00    	jb     0x4050f8
404bf2:	8b 43 10             	mov    0x10(%ebx),%eax
404bf5:	8d 7b 30             	lea    0x30(%ebx),%edi
404bf8:	ff 73 28             	push   0x28(%ebx)
404bfb:	83 c0 0c             	add    $0xc,%eax
404bfe:	8b cf                	mov    %edi,%ecx
404c00:	50                   	push   %eax
404c01:	e8 bb e1 ff ff       	call   0x402dc1
404c06:	8b 43 2c             	mov    0x2c(%ebx),%eax
404c09:	33 f6                	xor    %esi,%esi
404c0b:	83 f8 20             	cmp    $0x20,%eax
404c0e:	0f 87 7f 02 00 00    	ja     0x404e93
404c14:	0f 84 5c 02 00 00    	je     0x404e76
404c1a:	83 f8 10             	cmp    $0x10,%eax
404c1d:	0f 87 45 01 00 00    	ja     0x404d68
404c23:	6a 08                	push   $0x8
404c25:	59                   	pop    %ecx
404c26:	0f 84 1e 01 00 00    	je     0x404d4a
404c2c:	3b c1                	cmp    %ecx,%eax
404c2e:	0f 87 b3 00 00 00    	ja     0x404ce7
404c34:	0f 84 8c 00 00 00    	je     0x404cc6
404c3a:	2b c6                	sub    %esi,%eax
404c3c:	74 6b                	je     0x404ca9
404c3e:	6a 02                	push   $0x2
404c40:	5a                   	pop    %edx
404c41:	2b c2                	sub    %edx,%eax
404c43:	74 47                	je     0x404c8c
404c45:	2b c2                	sub    %edx,%eax
404c47:	74 26                	je     0x404c6f
404c49:	2b c2                	sub    %edx,%eax
404c4b:	0f 85 24 04 00 00    	jne    0x405075
404c51:	e8 85 0e 00 00       	call   0x405adb
404c56:	8b f0                	mov    %eax,%esi
404c58:	85 f6                	test   %esi,%esi
404c5a:	0f 84 0b 04 00 00    	je     0x40506b
404c60:	c7 06 c4 26 41 00    	movl   $0x4126c4,(%esi)
404c66:	83 66 04 00          	andl   $0x0,0x4(%esi)
404c6a:	e9 fe 03 00 00       	jmp    0x40506d
404c6f:	6a 04                	push   $0x4
404c71:	59                   	pop    %ecx
404c72:	e8 64 0e 00 00       	call   0x405adb
404c77:	8b f0                	mov    %eax,%esi
404c79:	85 f6                	test   %esi,%esi
404c7b:	0f 84 ea 03 00 00    	je     0x40506b
404c81:	c7 06 cc 26 41 00    	movl   $0x4126cc,(%esi)
404c87:	e9 e1 03 00 00       	jmp    0x40506d
404c8c:	6a 04                	push   $0x4
404c8e:	59                   	pop    %ecx
404c8f:	e8 47 0e 00 00       	call   0x405adb
404c94:	8b f0                	mov    %eax,%esi
404c96:	85 f6                	test   %esi,%esi
404c98:	0f 84 cd 03 00 00    	je     0x40506b
404c9e:	c7 06 dc 26 41 00    	movl   $0x4126dc,(%esi)
404ca4:	e9 c4 03 00 00       	jmp    0x40506d
404ca9:	6a 04                	push   $0x4
404cab:	59                   	pop    %ecx
404cac:	e8 2a 0e 00 00       	call   0x405adb
404cb1:	8b f0                	mov    %eax,%esi
404cb3:	85 f6                	test   %esi,%esi
404cb5:	0f 84 b0 03 00 00    	je     0x40506b
404cbb:	c7 06 b4 26 41 00    	movl   $0x4126b4,(%esi)
404cc1:	e9 a7 03 00 00       	jmp    0x40506d
404cc6:	6a 0c                	push   $0xc
404cc8:	59                   	pop    %ecx
404cc9:	e8 0d 0e 00 00       	call   0x405adb
404cce:	8b f0                	mov    %eax,%esi
404cd0:	85 f6                	test   %esi,%esi
404cd2:	0f 84 93 03 00 00    	je     0x40506b
404cd8:	c7 06 a4 26 41 00    	movl   $0x4126a4,(%esi)
404cde:	83 66 08 00          	andl   $0x0,0x8(%esi)
404ce2:	e9 86 03 00 00       	jmp    0x40506d
404ce7:	83 e8 0a             	sub    $0xa,%eax
404cea:	74 44                	je     0x404d30
404cec:	6a 02                	push   $0x2
404cee:	5a                   	pop    %edx
404cef:	2b c2                	sub    %edx,%eax
404cf1:	74 23                	je     0x404d16
404cf3:	2b c2                	sub    %edx,%eax
404cf5:	0f 85 7a 03 00 00    	jne    0x405075
404cfb:	e8 db 0d 00 00       	call   0x405adb
404d00:	85 c0                	test   %eax,%eax
404d02:	0f 84 63 03 00 00    	je     0x40506b
404d08:	8b c8                	mov    %eax,%ecx
404d0a:	e8 24 ec ff ff       	call   0x403933
404d0f:	8b f0                	mov    %eax,%esi
404d11:	e9 57 03 00 00       	jmp    0x40506d
404d16:	e8 c0 0d 00 00       	call   0x405adb
404d1b:	8b f0                	mov    %eax,%esi
404d1d:	85 f6                	test   %esi,%esi
404d1f:	0f 84 46 03 00 00    	je     0x40506b
404d25:	c7 06 bc 26 41 00    	movl   $0x4126bc,(%esi)
404d2b:	e9 3d 03 00 00       	jmp    0x40506d
404d30:	e8 a6 0d 00 00       	call   0x405adb
404d35:	8b f0                	mov    %eax,%esi
404d37:	85 f6                	test   %esi,%esi
404d39:	0f 84 2c 03 00 00    	je     0x40506b
404d3f:	c7 06 94 26 41 00    	movl   $0x412694,(%esi)
404d45:	e9 1c ff ff ff       	jmp    0x404c66
404d4a:	e8 8c 0d 00 00       	call   0x405adb
404d4f:	8b f0                	mov    %eax,%esi
404d51:	85 f6                	test   %esi,%esi
404d53:	0f 84 12 03 00 00    	je     0x40506b
404d59:	83 4e 04 ff          	orl    $0xffffffff,0x4(%esi)
404d5d:	c7 06 00 26 41 00    	movl   $0x412600,(%esi)
404d63:	e9 05 03 00 00       	jmp    0x40506d
404d68:	83 e8 12             	sub    $0x12,%eax
404d6b:	0f 84 e8 00 00 00    	je     0x404e59
404d71:	6a 02                	push   $0x2
404d73:	5a                   	pop    %edx
404d74:	2b c2                	sub    %edx,%eax
404d76:	0f 84 c0 00 00 00    	je     0x404e3c
404d7c:	2b c2                	sub    %edx,%eax
404d7e:	0f 84 9b 00 00 00    	je     0x404e1f
404d84:	2b c2                	sub    %edx,%eax
404d86:	74 7a                	je     0x404e02
404d88:	2b c2                	sub    %edx,%eax
404d8a:	74 59                	je     0x404de5
404d8c:	2b c2                	sub    %edx,%eax
404d8e:	74 2d                	je     0x404dbd
404d90:	2b c2                	sub    %edx,%eax
404d92:	0f 85 dd 02 00 00    	jne    0x405075
404d98:	6a 14                	push   $0x14
404d9a:	59                   	pop    %ecx
404d9b:	e8 3b 0d 00 00       	call   0x405adb
404da0:	8b f0                	mov    %eax,%esi
404da2:	85 f6                	test   %esi,%esi
404da4:	0f 84 c1 02 00 00    	je     0x40506b
404daa:	c7 06 04 27 41 00    	movl   $0x412704,(%esi)
404db0:	83 66 0c 00          	andl   $0x0,0xc(%esi)
404db4:	83 66 10 00          	andl   $0x0,0x10(%esi)
404db8:	e9 b0 02 00 00       	jmp    0x40506d
404dbd:	6a 1c                	push   $0x1c
404dbf:	59                   	pop    %ecx
404dc0:	e8 16 0d 00 00       	call   0x405adb
404dc5:	8b f0                	mov    %eax,%esi
404dc7:	85 f6                	test   %esi,%esi
404dc9:	0f 84 9c 02 00 00    	je     0x40506b
404dcf:	33 c0                	xor    %eax,%eax
404dd1:	c7 06 44 27 41 00    	movl   $0x412744,(%esi)
404dd7:	89 46 08             	mov    %eax,0x8(%esi)
404dda:	89 46 14             	mov    %eax,0x14(%esi)
404ddd:	89 46 18             	mov    %eax,0x18(%esi)
404de0:	e9 88 02 00 00       	jmp    0x40506d
404de5:	6a 04                	push   $0x4
404de7:	59                   	pop    %ecx
404de8:	e8 ee 0c 00 00       	call   0x405adb
404ded:	8b f0                	mov    %eax,%esi
404def:	85 f6                	test   %esi,%esi
404df1:	0f 84 74 02 00 00    	je     0x40506b
404df7:	c7 06 3c 27 41 00    	movl   $0x41273c,(%esi)
404dfd:	e9 6b 02 00 00       	jmp    0x40506d
404e02:	6a 04                	push   $0x4
404e04:	59                   	pop    %ecx
404e05:	e8 d1 0c 00 00       	call   0x405adb
404e0a:	8b f0                	mov    %eax,%esi
404e0c:	85 f6                	test   %esi,%esi
404e0e:	0f 84 57 02 00 00    	je     0x40506b
404e14:	c7 06 ec 26 41 00    	movl   $0x4126ec,(%esi)
404e1a:	e9 4e 02 00 00       	jmp    0x40506d
404e1f:	6a 04                	push   $0x4
404e21:	59                   	pop    %ecx
404e22:	e8 b4 0c 00 00       	call   0x405adb
404e27:	8b f0                	mov    %eax,%esi
404e29:	85 f6                	test   %esi,%esi
404e2b:	0f 84 3a 02 00 00    	je     0x40506b
404e31:	c7 06 34 27 41 00    	movl   $0x412734,(%esi)
404e37:	e9 31 02 00 00       	jmp    0x40506d
404e3c:	6a 08                	push   $0x8
404e3e:	59                   	pop    %ecx
404e3f:	e8 97 0c 00 00       	call   0x405adb
404e44:	8b f0                	mov    %eax,%esi
404e46:	85 f6                	test   %esi,%esi
404e48:	0f 84 1d 02 00 00    	je     0x40506b
404e4e:	c7 06 24 27 41 00    	movl   $0x412724,(%esi)
404e54:	e9 14 02 00 00       	jmp    0x40506d
404e59:	6a 04                	push   $0x4
404e5b:	59                   	pop    %ecx
404e5c:	e8 7a 0c 00 00       	call   0x405adb
404e61:	8b f0                	mov    %eax,%esi
404e63:	85 f6                	test   %esi,%esi
404e65:	0f 84 00 02 00 00    	je     0x40506b
404e6b:	c7 06 e4 26 41 00    	movl   $0x4126e4,(%esi)
404e71:	e9 f7 01 00 00       	jmp    0x40506d
404e76:	6a 04                	push   $0x4
404e78:	59                   	pop    %ecx
404e79:	e8 5d 0c 00 00       	call   0x405adb
404e7e:	8b f0                	mov    %eax,%esi
404e80:	85 f6                	test   %esi,%esi
404e82:	0f 84 e3 01 00 00    	je     0x40506b
404e88:	c7 06 d4 26 41 00    	movl   $0x4126d4,(%esi)
404e8e:	e9 da 01 00 00       	jmp    0x40506d
404e93:	83 f8 30             	cmp    $0x30,%eax
404e96:	0f 87 28 01 00 00    	ja     0x404fc4
404e9c:	0f 84 05 01 00 00    	je     0x404fa7
404ea2:	83 e8 22             	sub    $0x22,%eax
404ea5:	0f 84 df 00 00 00    	je     0x404f8a
404eab:	6a 02                	push   $0x2
404ead:	5a                   	pop    %edx
404eae:	2b c2                	sub    %edx,%eax
404eb0:	0f 84 b7 00 00 00    	je     0x404f6d
404eb6:	2b c2                	sub    %edx,%eax
404eb8:	0f 84 92 00 00 00    	je     0x404f50
404ebe:	2b c2                	sub    %edx,%eax
404ec0:	74 71                	je     0x404f33
404ec2:	2b c2                	sub    %edx,%eax
404ec4:	74 50                	je     0x404f16
404ec6:	2b c2                	sub    %edx,%eax
404ec8:	74 2f                	je     0x404ef9
404eca:	2b c2                	sub    %edx,%eax
404ecc:	0f 85 a3 01 00 00    	jne    0x405075
404ed2:	6a 10                	push   $0x10
404ed4:	59                   	pop    %ecx
404ed5:	e8 01 0c 00 00       	call   0x405adb
404eda:	85 c0                	test   %eax,%eax
404edc:	74 0b                	je     0x404ee9
404ede:	8b c8                	mov    %eax,%ecx
404ee0:	e8 7d ec ff ff       	call   0x403b62
404ee5:	8b f0                	mov    %eax,%esi
404ee7:	eb 02                	jmp    0x404eeb
404ee9:	33 f6                	xor    %esi,%esi
404eeb:	8d 46 04             	lea    0x4(%esi),%eax
404eee:	f7 de                	neg    %esi
404ef0:	1b f6                	sbb    %esi,%esi
404ef2:	23 f0                	and    %eax,%esi
404ef4:	e9 74 01 00 00       	jmp    0x40506d
404ef9:	6a 08                	push   $0x8
404efb:	59                   	pop    %ecx
404efc:	e8 da 0b 00 00       	call   0x405adb
404f01:	8b f0                	mov    %eax,%esi
404f03:	85 f6                	test   %esi,%esi
404f05:	74 e2                	je     0x404ee9
404f07:	c7 06 74 27 41 00    	movl   $0x412774,(%esi)
404f0d:	c7 46 04 6c 27 41 00 	movl   $0x41276c,0x4(%esi)
404f14:	eb d5                	jmp    0x404eeb
404f16:	6a 0c                	push   $0xc
404f18:	59                   	pop    %ecx
404f19:	e8 bd 0b 00 00       	call   0x405adb
404f1e:	8b f0                	mov    %eax,%esi
404f20:	85 f6                	test   %esi,%esi
404f22:	74 c5                	je     0x404ee9
404f24:	c7 06 4c 27 41 00    	movl   $0x41274c,(%esi)
404f2a:	c7 46 04 54 27 41 00 	movl   $0x412754,0x4(%esi)
404f31:	eb b8                	jmp    0x404eeb
404f33:	6a 04                	push   $0x4
404f35:	59                   	pop    %ecx
404f36:	e8 a0 0b 00 00       	call   0x405adb
404f3b:	8b f0                	mov    %eax,%esi
404f3d:	85 f6                	test   %esi,%esi
404f3f:	0f 84 26 01 00 00    	je     0x40506b
404f45:	c7 06 1c 27 41 00    	movl   $0x41271c,(%esi)
404f4b:	e9 1d 01 00 00       	jmp    0x40506d
404f50:	6a 04                	push   $0x4
404f52:	59                   	pop    %ecx
404f53:	e8 83 0b 00 00       	call   0x405adb
404f58:	8b f0                	mov    %eax,%esi
404f5a:	85 f6                	test   %esi,%esi
404f5c:	0f 84 09 01 00 00    	je     0x40506b
404f62:	c7 06 2c 27 41 00    	movl   $0x41272c,(%esi)
404f68:	e9 00 01 00 00       	jmp    0x40506d
404f6d:	6a 04                	push   $0x4
404f6f:	59                   	pop    %ecx
404f70:	e8 66 0b 00 00       	call   0x405adb
404f75:	8b f0                	mov    %eax,%esi
404f77:	85 f6                	test   %esi,%esi
404f79:	0f 84 ec 00 00 00    	je     0x40506b
404f7f:	c7 06 14 27 41 00    	movl   $0x412714,(%esi)
404f85:	e9 e3 00 00 00       	jmp    0x40506d
404f8a:	6a 08                	push   $0x8
404f8c:	59                   	pop    %ecx
404f8d:	e8 49 0b 00 00       	call   0x405adb
404f92:	8b f0                	mov    %eax,%esi
404f94:	85 f6                	test   %esi,%esi
404f96:	0f 84 cf 00 00 00    	je     0x40506b
404f9c:	c7 06 9c 26 41 00    	movl   $0x41269c,(%esi)
404fa2:	e9 bf fc ff ff       	jmp    0x404c66
404fa7:	6a 08                	push   $0x8
404fa9:	59                   	pop    %ecx
404faa:	e8 2c 0b 00 00       	call   0x405adb
404faf:	8b f0                	mov    %eax,%esi
404fb1:	85 f6                	test   %esi,%esi
404fb3:	0f 84 b2 00 00 00    	je     0x40506b
404fb9:	c7 06 78 49 41 00    	movl   $0x414978,(%esi)
404fbf:	e9 a9 00 00 00       	jmp    0x40506d
404fc4:	6a 04                	push   $0x4
404fc6:	59                   	pop    %ecx
404fc7:	83 e8 32             	sub    $0x32,%eax
404fca:	0f 84 88 00 00 00    	je     0x405058
404fd0:	2b c1                	sub    %ecx,%eax
404fd2:	74 6b                	je     0x40503f
404fd4:	6a 02                	push   $0x2
404fd6:	5a                   	pop    %edx
404fd7:	2b c2                	sub    %edx,%eax
404fd9:	74 4e                	je     0x405029
404fdb:	2b c2                	sub    %edx,%eax
404fdd:	74 31                	je     0x405010
404fdf:	2b c2                	sub    %edx,%eax
404fe1:	74 1a                	je     0x404ffd
404fe3:	2b c2                	sub    %edx,%eax
404fe5:	74 0f                	je     0x404ff6