406d16:	83 ec 68             	sub    $0x68,%esp
406d19:	8d 45 08             	lea    0x8(%ebp),%eax
406d1c:	89 65 ec             	mov    %esp,-0x14(%ebp)
406d1f:	8b cc                	mov    %esp,%ecx
406d21:	50                   	push   %eax
406d22:	e8 6d 4b 00 00       	call   0x40b894
406d27:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
406d2b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
406d2f:	e8 22 c8 ff ff       	call   0x403556
406d34:	81 c4 d4 00 00 00    	add    $0xd4,%esp
406d3a:	8b f0                	mov    %eax,%esi
406d3c:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
406d40:	8d 4d 08             	lea    0x8(%ebp),%ecx
406d43:	e8 85 76 00 00       	call   0x40e3cd
406d48:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
406d4c:	8d 4d 70             	lea    0x70(%ebp),%ecx
406d4f:	e8 79 76 00 00       	call   0x40e3cd
406d54:	8b c6                	mov    %esi,%eax
406d56:	e8 b8 8c 03 00       	call   0x43fa13
406d5b:	c3                   	ret
406d5c:	55                   	push   %ebp
406d5d:	8b ec                	mov    %esp,%ebp
406d5f:	6a ff                	push   $0xffffffff
406d61:	68 6d a6 48 00       	push   $0x48a66d
406d66:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406d6c:	50                   	push   %eax
406d6d:	51                   	push   %ecx
406d6e:	53                   	push   %ebx
406d6f:	56                   	push   %esi
406d70:	57                   	push   %edi
406d71:	a1 94 80 4b 00       	mov    0x4b8094,%eax
406d76:	33 c5                	xor    %ebp,%eax
406d78:	50                   	push   %eax
406d79:	8d 45 f4             	lea    -0xc(%ebp),%eax
406d7c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
406d82:	8b 7d 0c             	mov    0xc(%ebp),%edi
406d85:	33 db                	xor    %ebx,%ebx
406d87:	53                   	push   %ebx
406d88:	68 78 8b 4b 00       	push   $0x4b8b78
406d8d:	68 58 8b 4b 00       	push   $0x4b8b58
406d92:	89 5d f0             	mov    %ebx,-0x10(%ebp)
406d95:	53                   	push   %ebx
406d96:	ff 37                	push   (%edi)
406d98:	e8 c4 de 03 00       	call   0x444c61
406d9d:	83 c4 14             	add    $0x14,%esp
406da0:	85 c0                	test   %eax,%eax
406da2:	74 1f                	je     0x406dc3
406da4:	8b 75 08             	mov    0x8(%ebp),%esi
406da7:	8b ce                	mov    %esi,%ecx
406da9:	50                   	push   %eax
406daa:	57                   	push   %edi
406dab:	89 1e                	mov    %ebx,(%esi)
406dad:	89 5e 04             	mov    %ebx,0x4(%esi)
406db0:	e8 93 b7 ff ff       	call   0x402548
406db5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406db8:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406dbf:	8b c6                	mov    %esi,%eax
406dc1:	eb 12                	jmp    0x406dd5
406dc3:	8b 45 08             	mov    0x8(%ebp),%eax
406dc6:	89 18                	mov    %ebx,(%eax)
406dc8:	89 58 04             	mov    %ebx,0x4(%eax)
406dcb:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406dce:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406dd5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406dd8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406ddf:	59                   	pop    %ecx
406de0:	5f                   	pop    %edi
406de1:	5e                   	pop    %esi
406de2:	5b                   	pop    %ebx
406de3:	c9                   	leave
406de4:	c3                   	ret
406de5:	55                   	push   %ebp
406de6:	8b ec                	mov    %esp,%ebp
406de8:	6a ff                	push   $0xffffffff
406dea:	68 a1 a6 48 00       	push   $0x48a6a1
406def:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406df5:	50                   	push   %eax
406df6:	51                   	push   %ecx
406df7:	53                   	push   %ebx
406df8:	56                   	push   %esi
406df9:	57                   	push   %edi
406dfa:	a1 94 80 4b 00       	mov    0x4b8094,%eax
406dff:	33 c5                	xor    %ebp,%eax
406e01:	50                   	push   %eax
406e02:	8d 45 f4             	lea    -0xc(%ebp),%eax
406e05:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
406e0b:	8b 7d 0c             	mov    0xc(%ebp),%edi
406e0e:	33 db                	xor    %ebx,%ebx
406e10:	53                   	push   %ebx
406e11:	68 fc 8b 4b 00       	push   $0x4b8bfc
406e16:	68 58 8b 4b 00       	push   $0x4b8b58
406e1b:	89 5d f0             	mov    %ebx,-0x10(%ebp)
406e1e:	53                   	push   %ebx
406e1f:	ff 37                	push   (%edi)
406e21:	e8 3b de 03 00       	call   0x444c61
406e26:	83 c4 14             	add    $0x14,%esp
406e29:	85 c0                	test   %eax,%eax
406e2b:	74 1f                	je     0x406e4c
406e2d:	8b 75 08             	mov    0x8(%ebp),%esi
406e30:	8b ce                	mov    %esi,%ecx
406e32:	50                   	push   %eax
406e33:	57                   	push   %edi
406e34:	89 1e                	mov    %ebx,(%esi)
406e36:	89 5e 04             	mov    %ebx,0x4(%esi)
406e39:	e8 2a b7 ff ff       	call   0x402568
406e3e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406e41:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406e48:	8b c6                	mov    %esi,%eax
406e4a:	eb 12                	jmp    0x406e5e
406e4c:	8b 45 08             	mov    0x8(%ebp),%eax
406e4f:	89 18                	mov    %ebx,(%eax)
406e51:	89 58 04             	mov    %ebx,0x4(%eax)
406e54:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406e57:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406e5e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406e61:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406e68:	59                   	pop    %ecx
406e69:	5f                   	pop    %edi
406e6a:	5e                   	pop    %esi
406e6b:	5b                   	pop    %ebx
406e6c:	c9                   	leave
406e6d:	c3                   	ret
406e6e:	55                   	push   %ebp
406e6f:	8b ec                	mov    %esp,%ebp
406e71:	6a ff                	push   $0xffffffff
406e73:	68 d5 a6 48 00       	push   $0x48a6d5
406e78:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406e7e:	50                   	push   %eax
406e7f:	51                   	push   %ecx
406e80:	53                   	push   %ebx
406e81:	56                   	push   %esi
406e82:	57                   	push   %edi
406e83:	a1 94 80 4b 00       	mov    0x4b8094,%eax
406e88:	33 c5                	xor    %ebp,%eax
406e8a:	50                   	push   %eax
406e8b:	8d 45 f4             	lea    -0xc(%ebp),%eax
406e8e:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
406e94:	8b 7d 0c             	mov    0xc(%ebp),%edi
406e97:	33 db                	xor    %ebx,%ebx
406e99:	53                   	push   %ebx
406e9a:	68 a8 8b 4b 00       	push   $0x4b8ba8
406e9f:	68 58 8b 4b 00       	push   $0x4b8b58
406ea4:	89 5d f0             	mov    %ebx,-0x10(%ebp)
406ea7:	53                   	push   %ebx
406ea8:	ff 37                	push   (%edi)
406eaa:	e8 b2 dd 03 00       	call   0x444c61
406eaf:	83 c4 14             	add    $0x14,%esp
406eb2:	85 c0                	test   %eax,%eax
406eb4:	74 1f                	je     0x406ed5
406eb6:	8b 75 08             	mov    0x8(%ebp),%esi
406eb9:	8b ce                	mov    %esi,%ecx
406ebb:	50                   	push   %eax
406ebc:	57                   	push   %edi
406ebd:	89 1e                	mov    %ebx,(%esi)
406ebf:	89 5e 04             	mov    %ebx,0x4(%esi)
406ec2:	e8 c1 b6 ff ff       	call   0x402588
406ec7:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406eca:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406ed1:	8b c6                	mov    %esi,%eax
406ed3:	eb 12                	jmp    0x406ee7
406ed5:	8b 45 08             	mov    0x8(%ebp),%eax
406ed8:	89 18                	mov    %ebx,(%eax)
406eda:	89 58 04             	mov    %ebx,0x4(%eax)
406edd:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406ee0:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406ee7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406eea:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406ef1:	59                   	pop    %ecx
406ef2:	5f                   	pop    %edi
406ef3:	5e                   	pop    %esi
406ef4:	5b                   	pop    %ebx
406ef5:	c9                   	leave
406ef6:	c3                   	ret
406ef7:	55                   	push   %ebp
406ef8:	8b ec                	mov    %esp,%ebp
406efa:	6a ff                	push   $0xffffffff
406efc:	68 09 a7 48 00       	push   $0x48a709
406f01:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406f07:	50                   	push   %eax
406f08:	51                   	push   %ecx
406f09:	53                   	push   %ebx
406f0a:	56                   	push   %esi
406f0b:	57                   	push   %edi
406f0c:	a1 94 80 4b 00       	mov    0x4b8094,%eax
406f11:	33 c5                	xor    %ebp,%eax
406f13:	50                   	push   %eax
406f14:	8d 45 f4             	lea    -0xc(%ebp),%eax
406f17:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
406f1d:	8b 7d 0c             	mov    0xc(%ebp),%edi
406f20:	33 db                	xor    %ebx,%ebx
406f22:	53                   	push   %ebx
406f23:	68 d4 8b 4b 00       	push   $0x4b8bd4
406f28:	68 58 8b 4b 00       	push   $0x4b8b58
406f2d:	89 5d f0             	mov    %ebx,-0x10(%ebp)
406f30:	53                   	push   %ebx
406f31:	ff 37                	push   (%edi)
406f33:	e8 29 dd 03 00       	call   0x444c61
406f38:	83 c4 14             	add    $0x14,%esp
406f3b:	85 c0                	test   %eax,%eax
406f3d:	74 1f                	je     0x406f5e
406f3f:	8b 75 08             	mov    0x8(%ebp),%esi
406f42:	8b ce                	mov    %esi,%ecx
406f44:	50                   	push   %eax
406f45:	57                   	push   %edi
406f46:	89 1e                	mov    %ebx,(%esi)
406f48:	89 5e 04             	mov    %ebx,0x4(%esi)
406f4b:	e8 58 b6 ff ff       	call   0x4025a8
406f50:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406f53:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406f5a:	8b c6                	mov    %esi,%eax
406f5c:	eb 12                	jmp    0x406f70
406f5e:	8b 45 08             	mov    0x8(%ebp),%eax
406f61:	89 18                	mov    %ebx,(%eax)
406f63:	89 58 04             	mov    %ebx,0x4(%eax)
406f66:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406f69:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406f70:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406f73:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
406f7a:	59                   	pop    %ecx
406f7b:	5f                   	pop    %edi
406f7c:	5e                   	pop    %esi
406f7d:	5b                   	pop    %ebx
406f7e:	c9                   	leave
406f7f:	c3                   	ret
406f80:	55                   	push   %ebp
406f81:	8b ec                	mov    %esp,%ebp
406f83:	6a ff                	push   $0xffffffff
406f85:	68 3d a7 48 00       	push   $0x48a73d
406f8a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
406f90:	50                   	push   %eax
406f91:	51                   	push   %ecx
406f92:	53                   	push   %ebx
406f93:	56                   	push   %esi
406f94:	57                   	push   %edi
406f95:	a1 94 80 4b 00       	mov    0x4b8094,%eax
406f9a:	33 c5                	xor    %ebp,%eax
406f9c:	50                   	push   %eax
406f9d:	8d 45 f4             	lea    -0xc(%ebp),%eax
406fa0:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
406fa6:	8b 7d 0c             	mov    0xc(%ebp),%edi
406fa9:	33 db                	xor    %ebx,%ebx
406fab:	53                   	push   %ebx
406fac:	68 18 8d 4b 00       	push   $0x4b8d18
406fb1:	68 58 8b 4b 00       	push   $0x4b8b58
406fb6:	89 5d f0             	mov    %ebx,-0x10(%ebp)
406fb9:	53                   	push   %ebx
406fba:	ff 37                	push   (%edi)
406fbc:	e8 a0 dc 03 00       	call   0x444c61
406fc1:	83 c4 14             	add    $0x14,%esp
406fc4:	85 c0                	test   %eax,%eax
406fc6:	74 1f                	je     0x406fe7
406fc8:	8b 75 08             	mov    0x8(%ebp),%esi
406fcb:	8b ce                	mov    %esi,%ecx
406fcd:	50                   	push   %eax
406fce:	57                   	push   %edi
406fcf:	89 1e                	mov    %ebx,(%esi)
406fd1:	89 5e 04             	mov    %ebx,0x4(%esi)
406fd4:	e8 ef b5 ff ff       	call   0x4025c8
406fd9:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406fdc:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406fe3:	8b c6                	mov    %esi,%eax
406fe5:	eb 12                	jmp    0x406ff9
406fe7:	8b 45 08             	mov    0x8(%ebp),%eax
406fea:	89 18                	mov    %ebx,(%eax)
406fec:	89 58 04             	mov    %ebx,0x4(%eax)
406fef:	89 5d fc             	mov    %ebx,-0x4(%ebp)
406ff2:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
406ff9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
406ffc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
407003:	59                   	pop    %ecx
407004:	5f                   	pop    %edi
407005:	5e                   	pop    %esi
407006:	5b                   	pop    %ebx
407007:	c9                   	leave
407008:	c3                   	ret
407009:	55                   	push   %ebp
40700a:	8b ec                	mov    %esp,%ebp
40700c:	6a ff                	push   $0xffffffff
40700e:	68 71 a7 48 00       	push   $0x48a771
407013:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
407019:	50                   	push   %eax
40701a:	51                   	push   %ecx
40701b:	53                   	push   %ebx
40701c:	56                   	push   %esi
40701d:	57                   	push   %edi
40701e:	a1 94 80 4b 00       	mov    0x4b8094,%eax
407023:	33 c5                	xor    %ebp,%eax
407025:	50                   	push   %eax
407026:	8d 45 f4             	lea    -0xc(%ebp),%eax
407029:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40702f:	8b 7d 0c             	mov    0xc(%ebp),%edi
407032:	33 db                	xor    %ebx,%ebx
407034:	53                   	push   %ebx
407035:	68 58 8c 4b 00       	push   $0x4b8c58
40703a:	68 58 8b 4b 00       	push   $0x4b8b58
40703f:	89 5d f0             	mov    %ebx,-0x10(%ebp)
407042:	53                   	push   %ebx
407043:	ff 37                	push   (%edi)
407045:	e8 17 dc 03 00       	call   0x444c61
40704a:	83 c4 14             	add    $0x14,%esp
40704d:	85 c0                	test   %eax,%eax
40704f:	74 1f                	je     0x407070
407051:	8b 75 08             	mov    0x8(%ebp),%esi
407054:	8b ce                	mov    %esi,%ecx
407056:	50                   	push   %eax
407057:	57                   	push   %edi
407058:	89 1e                	mov    %ebx,(%esi)
40705a:	89 5e 04             	mov    %ebx,0x4(%esi)
40705d:	e8 86 b5 ff ff       	call   0x4025e8
407062:	89 5d fc             	mov    %ebx,-0x4(%ebp)
407065:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
40706c:	8b c6                	mov    %esi,%eax
40706e:	eb 12                	jmp    0x407082
407070:	8b 45 08             	mov    0x8(%ebp),%eax
407073:	89 18                	mov    %ebx,(%eax)
407075:	89 58 04             	mov    %ebx,0x4(%eax)
407078:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40707b:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
407082:	8b 4d f4             	mov    -0xc(%ebp),%ecx
407085:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40708c:	59                   	pop    %ecx
40708d:	5f                   	pop    %edi
40708e:	5e                   	pop    %esi
40708f:	5b                   	pop    %ebx
407090:	c9                   	leave
407091:	c3                   	ret
407092:	55                   	push   %ebp
407093:	8b ec                	mov    %esp,%ebp
407095:	6a ff                	push   $0xffffffff
407097:	68 a5 a7 48 00       	push   $0x48a7a5
40709c:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4070a2:	50                   	push   %eax
4070a3:	51                   	push   %ecx
4070a4:	53                   	push   %ebx
4070a5:	56                   	push   %esi
4070a6:	57                   	push   %edi
4070a7:	a1 94 80 4b 00       	mov    0x4b8094,%eax
4070ac:	33 c5                	xor    %ebp,%eax
4070ae:	50                   	push   %eax
4070af:	8d 45 f4             	lea    -0xc(%ebp),%eax
4070b2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4070b8:	8b 7d 0c             	mov    0xc(%ebp),%edi
4070bb:	33 db                	xor    %ebx,%ebx
4070bd:	53                   	push   %ebx
4070be:	68 28 8c 4b 00       	push   $0x4b8c28
4070c3:	68 58 8b 4b 00       	push   $0x4b8b58
4070c8:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4070cb:	53                   	push   %ebx
4070cc:	ff 37                	push   (%edi)
4070ce:	e8 8e db 03 00       	call   0x444c61