404cc4:	74 07                	je     0x404ccd
404cc6:	6a 08                	push   $0x8
404cc8:	e8 3e c7 ff ff       	call   0x40140b
404ccd:	39 7d 14             	cmp    %edi,0x14(%ebp)
404cd0:	74 3f                	je     0x404d11
404cd2:	ff 35 94 04 42 00    	push   0x420494
404cd8:	e8 05 c6 ff ff       	call   0x4012e2
404cdd:	8b d8                	mov    %eax,%ebx
404cdf:	53                   	push   %ebx
404ce0:	e8 b4 c5 ff ff       	call   0x401299
404ce5:	33 c0                	xor    %eax,%eax
404ce7:	33 c9                	xor    %ecx,%ecx
404ce9:	3b df                	cmp    %edi,%ebx
404ceb:	7e 0e                	jle    0x404cfb
404ced:	8b 55 f0             	mov    -0x10(%ebp),%edx
404cf0:	39 3c 82             	cmp    %edi,(%edx,%eax,4)
404cf3:	74 01                	je     0x404cf6
404cf5:	41                   	inc    %ecx
404cf6:	40                   	inc    %eax
404cf7:	3b c3                	cmp    %ebx,%eax
404cf9:	7c f2                	jl     0x404ced
404cfb:	57                   	push   %edi
404cfc:	51                   	push   %ecx
404cfd:	68 4e 01 00 00       	push   $0x14e
404d02:	ff 75 f8             	push   -0x8(%ebp)
404d05:	ff d6                	call   *%esi
404d07:	89 5d 14             	mov    %ebx,0x14(%ebp)
404d0a:	c7 45 0c 20 04 00 00 	movl   $0x420,0xc(%ebp)
404d11:	57                   	push   %edi
404d12:	57                   	push   %edi
404d13:	e8 d7 c4 ff ff       	call   0x4011ef
404d18:	a1 94 04 42 00       	mov    0x420494,%eax
404d1d:	39 3d cc 3e 42 00    	cmp    %edi,0x423ecc
404d23:	89 45 e4             	mov    %eax,-0x1c(%ebp)
404d26:	a1 c8 3e 42 00       	mov    0x423ec8,%eax
404d2b:	c7 45 c8 30 f0 00 00 	movl   $0xf030,-0x38(%ebp)
404d32:	89 7d f4             	mov    %edi,-0xc(%ebp)
404d35:	0f 8e 9c 00 00 00    	jle    0x404dd7
404d3b:	8d 58 08             	lea    0x8(%eax),%ebx
404d3e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
404d41:	8b 4d f4             	mov    -0xc(%ebp),%ecx
404d44:	8b 04 88             	mov    (%eax,%ecx,4),%eax
404d47:	3b c7                	cmp    %edi,%eax
404d49:	74 74                	je     0x404dbf
404d4b:	8b 0b                	mov    (%ebx),%ecx
404d4d:	89 45 c0             	mov    %eax,-0x40(%ebp)
404d50:	f6 c5 01             	test   $0x1,%ch
404d53:	c7 45 bc 08 00 00 00 	movl   $0x8,-0x44(%ebp)
404d5a:	74 11                	je     0x404d6d
404d5c:	8d 43 10             	lea    0x10(%ebx),%eax
404d5f:	c7 45 bc 09 00 00 00 	movl   $0x9,-0x44(%ebp)
404d66:	89 45 cc             	mov    %eax,-0x34(%ebp)
404d69:	80 63 01 fe          	andb   $0xfe,0x1(%ebx)
404d6d:	f6 c1 40             	test   $0x40,%cl
404d70:	74 05                	je     0x404d77
404d72:	6a 03                	push   $0x3
404d74:	58                   	pop    %eax
404d75:	eb 0e                	jmp    0x404d85
404d77:	8b c1                	mov    %ecx,%eax
404d79:	83 e0 01             	and    $0x1,%eax
404d7c:	40                   	inc    %eax
404d7d:	f6 c1 10             	test   $0x10,%cl
404d80:	74 03                	je     0x404d85
404d82:	83 c0 03             	add    $0x3,%eax
404d85:	8b d1                	mov    %ecx,%edx
404d87:	ff 75 c0             	push   -0x40(%ebp)
404d8a:	c1 e0 0b             	shl    $0xb,%eax
404d8d:	83 e2 08             	and    $0x8,%edx
404d90:	0b c2                	or     %edx,%eax
404d92:	8b d1                	mov    %ecx,%edx
404d94:	c1 f9 05             	sar    $0x5,%ecx
404d97:	03 c0                	add    %eax,%eax
404d99:	83 e2 20             	and    $0x20,%edx
404d9c:	83 e1 01             	and    $0x1,%ecx
404d9f:	0b c2                	or     %edx,%eax
404da1:	41                   	inc    %ecx
404da2:	89 45 c4             	mov    %eax,-0x3c(%ebp)
404da5:	51                   	push   %ecx
404da6:	68 02 11 00 00       	push   $0x1102
404dab:	ff 75 fc             	push   -0x4(%ebp)
404dae:	ff d6                	call   *%esi
404db0:	8d 45 bc             	lea    -0x44(%ebp),%eax
404db3:	50                   	push   %eax
404db4:	57                   	push   %edi
404db5:	68 0d 11 00 00       	push   $0x110d
404dba:	ff 75 fc             	push   -0x4(%ebp)
404dbd:	ff d6                	call   *%esi
404dbf:	ff 45 f4             	incl   -0xc(%ebp)
404dc2:	81 c3 18 04 00 00    	add    $0x418,%ebx
404dc8:	8b 45 f4             	mov    -0xc(%ebp),%eax
404dcb:	3b 05 cc 3e 42 00    	cmp    0x423ecc,%eax
404dd1:	0f 8c 67 ff ff ff    	jl     0x404d3e
404dd7:	6a 01                	push   $0x1
404dd9:	57                   	push   %edi
404dda:	ff 75 fc             	push   -0x4(%ebp)
404ddd:	ff 15 40 72 40 00    	call   *0x407240
404de3:	a1 7c 36 42 00       	mov    0x42367c,%eax
404de8:	39 78 10             	cmp    %edi,0x10(%eax)
404deb:	74 14                	je     0x404e01
404ded:	6a 05                	push   $0x5
404def:	e8 b2 f9 ff ff       	call   0x4047a6
404df4:	50                   	push   %eax
404df5:	6a fb                	push   $0xfffffffb
404df7:	68 ff 03 00 00       	push   $0x3ff
404dfc:	e8 f0 f8 ff ff       	call   0x4046f1
404e01:	81 7d 0c 20 04 00 00 	cmpl   $0x420,0xc(%ebp)
404e08:	75 35                	jne    0x404e3f
404e0a:	f6 05 b9 3e 42 00 01 	testb  $0x1,0x423eb9
404e11:	74 2c                	je     0x404e3f
404e13:	33 c0                	xor    %eax,%eax
404e15:	83 7d 14 20          	cmpl   $0x20,0x14(%ebp)
404e19:	8b 35 60 72 40 00    	mov    0x407260,%esi
404e1f:	0f 94 c0             	sete   %al
404e22:	c1 e0 03             	shl    $0x3,%eax
404e25:	8b f8                	mov    %eax,%edi
404e27:	57                   	push   %edi
404e28:	ff 75 fc             	push   -0x4(%ebp)
404e2b:	ff d6                	call   *%esi
404e2d:	57                   	push   %edi
404e2e:	68 fe 03 00 00       	push   $0x3fe
404e33:	ff 75 08             	push   0x8(%ebp)
404e36:	ff 15 2c 72 40 00    	call   *0x40722c
404e3c:	50                   	push   %eax
404e3d:	ff d6                	call   *%esi
404e3f:	ff 75 14             	push   0x14(%ebp)
404e42:	ff 75 10             	push   0x10(%ebp)
404e45:	ff 75 0c             	push   0xc(%ebp)
404e48:	e8 32 f1 ff ff       	call   0x403f7f
404e4d:	5f                   	pop    %edi
404e4e:	5e                   	pop    %esi
404e4f:	5b                   	pop    %ebx
404e50:	c9                   	leave
404e51:	c2 10 00             	ret    $0x10
404e54:	55                   	push   %ebp
404e55:	8b ec                	mov    %esp,%ebp
404e57:	81 7d 0c 02 01 00 00 	cmpl   $0x102,0xc(%ebp)
404e5e:	53                   	push   %ebx
404e5f:	56                   	push   %esi
404e60:	75 17                	jne    0x404e79
404e62:	83 7d 10 20          	cmpl   $0x20,0x10(%ebp)
404e66:	75 7d                	jne    0x404ee5
404e68:	68 13 04 00 00       	push   $0x413
404e6d:	e8 f2 f0 ff ff       	call   0x403f64
404e72:	33 c0                	xor    %eax,%eax
404e74:	e9 85 00 00 00       	jmp    0x404efe
404e79:	81 7d 0c 00 02 00 00 	cmpl   $0x200,0xc(%ebp)
404e80:	be 19 04 00 00       	mov    $0x419,%esi
404e85:	75 1e                	jne    0x404ea5
404e87:	ff 75 08             	push   0x8(%ebp)
404e8a:	ff 15 ac 71 40 00    	call   *0x4071ac
404e90:	85 c0                	test   %eax,%eax
404e92:	74 51                	je     0x404ee5
404e94:	6a 01                	push   $0x1
404e96:	ff 75 08             	push   0x8(%ebp)
404e99:	e8 35 f9 ff ff       	call   0x4047d3
404e9e:	8b d8                	mov    %eax,%ebx
404ea0:	89 75 0c             	mov    %esi,0xc(%ebp)
404ea3:	eb 03                	jmp    0x404ea8
404ea5:	8b 5d 14             	mov    0x14(%ebp),%ebx
404ea8:	39 75 0c             	cmp    %esi,0xc(%ebp)
404eab:	75 3b                	jne    0x404ee8
404ead:	39 1d 88 04 42 00    	cmp    %ebx,0x420488
404eb3:	74 33                	je     0x404ee8
404eb5:	57                   	push   %edi
404eb6:	be 00 40 42 00       	mov    $0x424000,%esi
404ebb:	bf a0 04 42 00       	mov    $0x4204a0,%edi
404ec0:	56                   	push   %esi
404ec1:	57                   	push   %edi
404ec2:	89 1d 88 04 42 00    	mov    %ebx,0x420488
404ec8:	e8 99 0c 00 00       	call   0x405b66
404ecd:	53                   	push   %ebx
404ece:	56                   	push   %esi
404ecf:	e8 f0 0b 00 00       	call   0x405ac4
404ed4:	6a 06                	push   $0x6
404ed6:	e8 30 c5 ff ff       	call   0x40140b
404edb:	57                   	push   %edi
404edc:	56                   	push   %esi
404edd:	e8 84 0c 00 00       	call   0x405b66
404ee2:	5f                   	pop    %edi
404ee3:	eb 03                	jmp    0x404ee8
404ee5:	8b 5d 14             	mov    0x14(%ebp),%ebx
404ee8:	53                   	push   %ebx
404ee9:	ff 75 10             	push   0x10(%ebp)
404eec:	ff 75 0c             	push   0xc(%ebp)
404eef:	ff 75 08             	push   0x8(%ebp)
404ef2:	ff 35 90 04 42 00    	push   0x420490
404ef8:	ff 15 a8 71 40 00    	call   *0x4071a8
404efe:	5e                   	pop    %esi
404eff:	5b                   	pop    %ebx
404f00:	5d                   	pop    %ebp
404f01:	c2 10 00             	ret    $0x10
404f04:	55                   	push   %ebp
404f05:	8b ec                	mov    %esp,%ebp
404f07:	83 ec 30             	sub    $0x30,%esp
404f0a:	a1 84 36 42 00       	mov    0x423684,%eax
404f0f:	53                   	push   %ebx
404f10:	33 db                	xor    %ebx,%ebx
404f12:	56                   	push   %esi
404f13:	3b c3                	cmp    %ebx,%eax
404f15:	57                   	push   %edi
404f16:	89 45 fc             	mov    %eax,-0x4(%ebp)
404f19:	0f 84 b0 00 00 00    	je     0x404fcf
404f1f:	a1 54 3f 42 00       	mov    0x423f54,%eax
404f24:	be 78 fc 41 00       	mov    $0x41fc78,%esi
404f29:	8b f8                	mov    %eax,%edi
404f2b:	89 45 f8             	mov    %eax,-0x8(%ebp)
404f2e:	83 e7 01             	and    $0x1,%edi
404f31:	75 09                	jne    0x404f3c
404f33:	ff 75 08             	push   0x8(%ebp)
404f36:	56                   	push   %esi
404f37:	e8 4c 0c 00 00       	call   0x405b88
404f3c:	56                   	push   %esi
404f3d:	e8 3a 0c 00 00       	call   0x405b7c
404f42:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
404f45:	89 45 08             	mov    %eax,0x8(%ebp)
404f48:	74 1b                	je     0x404f65
404f4a:	ff 75 0c             	push   0xc(%ebp)
404f4d:	e8 2a 0c 00 00       	call   0x405b7c
404f52:	03 45 08             	add    0x8(%ebp),%eax
404f55:	3d 00 08 00 00       	cmp    $0x800,%eax
404f5a:	73 73                	jae    0x404fcf
404f5c:	ff 75 0c             	push   0xc(%ebp)
404f5f:	56                   	push   %esi
404f60:	e8 1d 0c 00 00       	call   0x405b82
404f65:	f6 45 f8 04          	testb  $0x4,-0x8(%ebp)
404f69:	75 0d                	jne    0x404f78
404f6b:	56                   	push   %esi
404f6c:	ff 35 68 36 42 00    	push   0x423668
404f72:	ff 15 f4 71 40 00    	call   *0x4071f4
404f78:	f6 45 f8 02          	testb  $0x2,-0x8(%ebp)
404f7c:	75 44                	jne    0x404fc2
404f7e:	53                   	push   %ebx
404f7f:	53                   	push   %ebx
404f80:	68 04 10 00 00       	push   $0x1004
404f85:	89 75 e4             	mov    %esi,-0x1c(%ebp)
404f88:	ff 75 fc             	push   -0x4(%ebp)
404f8b:	8b 35 44 72 40 00    	mov    0x407244,%esi
404f91:	c7 45 d0 01 00 00 00 	movl   $0x1,-0x30(%ebp)
404f98:	ff d6                	call   *%esi
404f9a:	2b c7                	sub    %edi,%eax
404f9c:	89 5d d8             	mov    %ebx,-0x28(%ebp)
404f9f:	89 45 d4             	mov    %eax,-0x2c(%ebp)
404fa2:	8d 45 d0             	lea    -0x30(%ebp),%eax
404fa5:	50                   	push   %eax
404fa6:	b8 07 10 00 00       	mov    $0x1007,%eax
404fab:	2b c7                	sub    %edi,%eax
404fad:	53                   	push   %ebx
404fae:	50                   	push   %eax
404faf:	ff 75 fc             	push   -0x4(%ebp)
404fb2:	ff d6                	call   *%esi
404fb4:	53                   	push   %ebx
404fb5:	ff 75 d4             	push   -0x2c(%ebp)
404fb8:	68 13 10 00 00       	push   $0x1013
404fbd:	ff 75 fc             	push   -0x4(%ebp)
404fc0:	ff d6                	call   *%esi
404fc2:	3b fb                	cmp    %ebx,%edi
404fc4:	74 09                	je     0x404fcf
404fc6:	8b 45 08             	mov    0x8(%ebp),%eax
404fc9:	88 98 78 fc 41 00    	mov    %bl,0x41fc78(%eax)
404fcf:	5f                   	pop    %edi
404fd0:	5e                   	pop    %esi
404fd1:	5b                   	pop    %ebx
404fd2:	c9                   	leave
404fd3:	c2 08 00             	ret    $0x8
404fd6:	56                   	push   %esi
404fd7:	8b 35 c8 3e 42 00    	mov    0x423ec8,%esi
404fdd:	57                   	push   %edi
404fde:	8b 3d cc 3e 42 00    	mov    0x423ecc,%edi
404fe4:	6a 00                	push   $0x0
404fe6:	ff 15 7c 72 40 00    	call   *0x40727c
404fec:	09 05 58 3f 42 00    	or     %eax,0x423f58
404ff2:	6a 00                	push   $0x0
404ff4:	e8 6b ef ff ff       	call   0x403f64
404ff9:	85 ff                	test   %edi,%edi
404ffb:	74 2b                	je     0x405028
404ffd:	83 c6 0c             	add    $0xc,%esi
405000:	4f                   	dec    %edi
405001:	f6 46 fc 01          	testb  $0x1,-0x4(%esi)
405005:	74 0f                	je     0x405016
405007:	ff 74 24 0c          	push   0xc(%esp)
40500b:	ff 36                	push   (%esi)
40500d:	e8 77 c3 ff ff       	call   0x401389
405012:	85 c0                	test   %eax,%eax
405014:	75 0c                	jne    0x405022
405016:	81 c6 18 04 00 00    	add    $0x418,%esi
40501c:	85 ff                	test   %edi,%edi
40501e:	75 e0                	jne    0x405000
405020:	eb 06                	jmp    0x405028
405022:	ff 05 2c 3f 42 00    	incl   0x423f2c
405028:	68 04 04 00 00       	push   $0x404
40502d:	e8 32 ef ff ff       	call   0x403f64
405032:	ff 15 80 72 40 00    	call   *0x407280
405038:	a1 2c 3f 42 00       	mov    0x423f2c,%eax
40503d:	5f                   	pop    %edi
40503e:	5e                   	pop    %esi
40503f:	c2 04 00             	ret    $0x4
405042:	55                   	push   %ebp
405043:	8b ec                	mov    %esp,%ebp
405045:	83 ec 40             	sub    $0x40,%esp
405048:	53                   	push   %ebx
405049:	56                   	push   %esi
40504a:	57                   	push   %edi
40504b:	8b 3d 84 36 42 00    	mov    0x423684,%edi
405051:	33 db                	xor    %ebx,%ebx
405053:	81 7d 0c 10 01 00 00 	cmpl   $0x110,0xc(%ebp)
40505a:	89 7d fc             	mov    %edi,-0x4(%ebp)
40505d:	0f 85 8b 01 00 00    	jne    0x4051ee
405063:	83 4d d0 ff          	orl    $0xffffffff,-0x30(%ebp)
405067:	83 4d dc ff          	orl    $0xffffffff,-0x24(%ebp)
40506b:	33 c0                	xor    %eax,%eax
40506d:	8d 7d e0             	lea    -0x20(%ebp),%edi
405070:	c7 45 c8 02 00 00 00 	movl   $0x2,-0x38(%ebp)
405077:	89 5d cc             	mov    %ebx,-0x34(%ebp)
40507a:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
40507d:	89 5d d8             	mov    %ebx,-0x28(%ebp)
405080:	ab                   	stos   %eax,%es:(%edi)
405081:	ab                   	stos   %eax,%es:(%edi)
405082:	a1 b0 3e 42 00       	mov    0x423eb0,%eax
405087:	8b 3d 2c 72 40 00    	mov    0x40722c,%edi
40508d:	68 03 04 00 00       	push   $0x403
405092:	8b 48 5c             	mov    0x5c(%eax),%ecx
405095:	8b 40 60             	mov    0x60(%eax),%eax
405098:	ff 75 08             	push   0x8(%ebp)
40509b:	89 4d 0c             	mov    %ecx,0xc(%ebp)
40509e:	89 45 10             	mov    %eax,0x10(%ebp)
4050a1:	ff d7                	call   *%edi
4050a3:	68 ee 03 00 00       	push   $0x3ee
4050a8:	a3 70 36 42 00       	mov    %eax,0x423670
4050ad:	ff 75 08             	push   0x8(%ebp)
4050b0:	ff d7                	call   *%edi
4050b2:	68 f8 03 00 00       	push   $0x3f8
4050b7:	a3 68 36 42 00       	mov    %eax,0x423668
4050bc:	ff 75 08             	push   0x8(%ebp)
4050bf:	ff d7                	call   *%edi
4050c1:	ff 35 70 36 42 00    	push   0x423670
4050c7:	a3 84 36 42 00       	mov    %eax,0x423684
4050cc:	89 45 fc             	mov    %eax,-0x4(%ebp)
4050cf:	e8 79 ee ff ff       	call   0x403f4d
4050d4:	6a 04                	push   $0x4
4050d6:	e8 cb f6 ff ff       	call   0x4047a6
4050db:	a3 74 36 42 00       	mov    %eax,0x423674
4050e0:	8d 45 e8             	lea    -0x18(%ebp),%eax
4050e3:	50                   	push   %eax
4050e4:	89 1d 8c 36 42 00    	mov    %ebx,0x42368c
4050ea:	ff 75 fc             	push   -0x4(%ebp)
4050ed:	ff 15 50 72 40 00    	call   *0x407250
4050f3:	6a 15                	push   $0x15
4050f5:	ff 15 cc 71 40 00    	call   *0x4071cc
4050fb:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4050fe:	8b 35 44 72 40 00    	mov    0x407244,%esi