40ea2a:	bb 08 00 00 00       	mov    $0x8,%ebx
40ea2f:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40ea35:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
40ea3b:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40ea41:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ea47:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ea4d:	ff 15 0c 10 40 00    	call   *0x40100c
40ea53:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40ea59:	ff 15 ac 11 40 00    	call   *0x4011ac
40ea5f:	68 e8 84 40 00       	push   $0x4084e8
40ea64:	68 f8 84 40 00       	push   $0x4084f8
40ea69:	ff 15 3c 10 40 00    	call   *0x40103c
40ea6f:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ea75:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40ea7b:	50                   	push   %eax
40ea7c:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40ea82:	51                   	push   %ecx
40ea83:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ea89:	ff 15 94 11 40 00    	call   *0x401194
40ea8f:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40ea95:	52                   	push   %edx
40ea96:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40ea9c:	50                   	push   %eax
40ea9d:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40eaa4:	00 00 00
40eaa7:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40eaae:	80 00 00
40eab1:	ff 15 68 11 40 00    	call   *0x401168
40eab7:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40eabd:	51                   	push   %ecx
40eabe:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40eac4:	52                   	push   %edx
40eac5:	6a 02                	push   $0x2
40eac7:	66 8b f8             	mov    %ax,%di
40eaca:	ff 15 28 10 40 00    	call   *0x401028
40ead0:	83 c4 0c             	add    $0xc,%esp
40ead3:	66 3b fe             	cmp    %si,%di
40ead6:	0f 84 de 00 00 00    	je     0x40ebba
40eadc:	39 35 38 03 41 00    	cmp    %esi,0x410338
40eae2:	75 10                	jne    0x40eaf4
40eae4:	68 38 03 41 00       	push   $0x410338
40eae9:	68 a8 7c 40 00       	push   $0x407ca8
40eaee:	ff 15 2c 11 40 00    	call   *0x40112c
40eaf4:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40eafa:	8b 07                	mov    (%edi),%eax
40eafc:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40eb02:	51                   	push   %ecx
40eb03:	57                   	push   %edi
40eb04:	ff 50 1c             	call   *0x1c(%eax)
40eb07:	db e2                	fnclex
40eb09:	3b c6                	cmp    %esi,%eax
40eb0b:	7d 0f                	jge    0x40eb1c
40eb0d:	6a 1c                	push   $0x1c
40eb0f:	68 98 7c 40 00       	push   $0x407c98
40eb14:	57                   	push   %edi
40eb15:	50                   	push   %eax
40eb16:	ff 15 48 10 40 00    	call   *0x401048
40eb1c:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40eb22:	8d 9d 48 ff ff ff    	lea    -0xb8(%ebp),%ebx
40eb28:	53                   	push   %ebx
40eb29:	83 ec 10             	sub    $0x10,%esp
40eb2c:	ba 0a 00 00 00       	mov    $0xa,%edx
40eb31:	8b dc                	mov    %esp,%ebx
40eb33:	89 13                	mov    %edx,(%ebx)
40eb35:	89 95 04 ff ff ff    	mov    %edx,-0xfc(%ebp)
40eb3b:	8b 95 08 ff ff ff    	mov    -0xf8(%ebp),%edx
40eb41:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40eb46:	89 53 04             	mov    %edx,0x4(%ebx)
40eb49:	89 8d 0c ff ff ff    	mov    %ecx,-0xf4(%ebp)
40eb4f:	8b 38                	mov    (%eax),%edi
40eb51:	89 4b 08             	mov    %ecx,0x8(%ebx)
40eb54:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40eb5a:	50                   	push   %eax
40eb5b:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40eb61:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40eb64:	ff 57 5c             	call   *0x5c(%edi)
40eb67:	db e2                	fnclex
40eb69:	3b c6                	cmp    %esi,%eax
40eb6b:	7d 15                	jge    0x40eb82
40eb6d:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40eb73:	6a 5c                	push   $0x5c
40eb75:	68 b8 7c 40 00       	push   $0x407cb8
40eb7a:	52                   	push   %edx
40eb7b:	50                   	push   %eax
40eb7c:	ff 15 48 10 40 00    	call   *0x401048
40eb82:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40eb88:	bb 08 00 00 00       	mov    $0x8,%ebx
40eb8d:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40eb93:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40eb96:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40eb9c:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40eba2:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40eba8:	ff 15 0c 10 40 00    	call   *0x40100c
40ebae:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40ebb4:	ff 15 ac 11 40 00    	call   *0x4011ac
40ebba:	68 e8 84 40 00       	push   $0x4084e8
40ebbf:	68 f8 84 40 00       	push   $0x4084f8
40ebc4:	ff 15 3c 10 40 00    	call   *0x40103c
40ebca:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ebd0:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40ebd6:	50                   	push   %eax
40ebd7:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40ebdd:	51                   	push   %ecx
40ebde:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ebe4:	ff 15 94 11 40 00    	call   *0x401194
40ebea:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40ebf0:	52                   	push   %edx
40ebf1:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40ebf7:	50                   	push   %eax
40ebf8:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40ebff:	00 00 00
40ec02:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40ec09:	80 00 00
40ec0c:	ff 15 68 11 40 00    	call   *0x401168
40ec12:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40ec18:	51                   	push   %ecx
40ec19:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40ec1f:	52                   	push   %edx
40ec20:	6a 02                	push   $0x2
40ec22:	66 8b f8             	mov    %ax,%di
40ec25:	ff 15 28 10 40 00    	call   *0x401028
40ec2b:	83 c4 0c             	add    $0xc,%esp
40ec2e:	66 3b fe             	cmp    %si,%di
40ec31:	0f 84 de 00 00 00    	je     0x40ed15
40ec37:	39 35 38 03 41 00    	cmp    %esi,0x410338
40ec3d:	75 10                	jne    0x40ec4f
40ec3f:	68 38 03 41 00       	push   $0x410338
40ec44:	68 a8 7c 40 00       	push   $0x407ca8
40ec49:	ff 15 2c 11 40 00    	call   *0x40112c
40ec4f:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40ec55:	8b 07                	mov    (%edi),%eax
40ec57:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40ec5d:	51                   	push   %ecx
40ec5e:	57                   	push   %edi
40ec5f:	ff 50 1c             	call   *0x1c(%eax)
40ec62:	db e2                	fnclex
40ec64:	3b c6                	cmp    %esi,%eax
40ec66:	7d 0f                	jge    0x40ec77
40ec68:	6a 1c                	push   $0x1c
40ec6a:	68 98 7c 40 00       	push   $0x407c98
40ec6f:	57                   	push   %edi
40ec70:	50                   	push   %eax
40ec71:	ff 15 48 10 40 00    	call   *0x401048
40ec77:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40ec7d:	8d 9d 48 ff ff ff    	lea    -0xb8(%ebp),%ebx
40ec83:	53                   	push   %ebx
40ec84:	83 ec 10             	sub    $0x10,%esp
40ec87:	ba 0a 00 00 00       	mov    $0xa,%edx
40ec8c:	8b dc                	mov    %esp,%ebx
40ec8e:	89 13                	mov    %edx,(%ebx)
40ec90:	89 95 04 ff ff ff    	mov    %edx,-0xfc(%ebp)
40ec96:	8b 95 08 ff ff ff    	mov    -0xf8(%ebp),%edx
40ec9c:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40eca1:	89 53 04             	mov    %edx,0x4(%ebx)
40eca4:	89 8d 0c ff ff ff    	mov    %ecx,-0xf4(%ebp)
40ecaa:	8b 38                	mov    (%eax),%edi
40ecac:	89 4b 08             	mov    %ecx,0x8(%ebx)
40ecaf:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40ecb5:	50                   	push   %eax
40ecb6:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40ecbc:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40ecbf:	ff 57 5c             	call   *0x5c(%edi)
40ecc2:	db e2                	fnclex
40ecc4:	3b c6                	cmp    %esi,%eax
40ecc6:	7d 15                	jge    0x40ecdd
40ecc8:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40ecce:	6a 5c                	push   $0x5c
40ecd0:	68 b8 7c 40 00       	push   $0x407cb8
40ecd5:	52                   	push   %edx
40ecd6:	50                   	push   %eax
40ecd7:	ff 15 48 10 40 00    	call   *0x401048
40ecdd:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40ece3:	bb 08 00 00 00       	mov    $0x8,%ebx
40ece8:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40ecee:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
40ecf1:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40ecf7:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ecfd:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ed03:	ff 15 0c 10 40 00    	call   *0x40100c
40ed09:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40ed0f:	ff 15 ac 11 40 00    	call   *0x4011ac
40ed15:	68 e8 84 40 00       	push   $0x4084e8
40ed1a:	68 f8 84 40 00       	push   $0x4084f8
40ed1f:	ff 15 3c 10 40 00    	call   *0x40103c
40ed25:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ed2b:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40ed31:	50                   	push   %eax
40ed32:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40ed38:	51                   	push   %ecx
40ed39:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ed3f:	ff 15 94 11 40 00    	call   *0x401194
40ed45:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40ed4b:	52                   	push   %edx
40ed4c:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40ed52:	50                   	push   %eax
40ed53:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40ed5a:	00 00 00
40ed5d:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40ed64:	80 00 00
40ed67:	ff 15 68 11 40 00    	call   *0x401168
40ed6d:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40ed73:	51                   	push   %ecx
40ed74:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40ed7a:	52                   	push   %edx
40ed7b:	6a 02                	push   $0x2
40ed7d:	66 8b f8             	mov    %ax,%di
40ed80:	ff 15 28 10 40 00    	call   *0x401028
40ed86:	83 c4 0c             	add    $0xc,%esp
40ed89:	66 3b fe             	cmp    %si,%di
40ed8c:	0f 84 de 00 00 00    	je     0x40ee70
40ed92:	39 35 38 03 41 00    	cmp    %esi,0x410338
40ed98:	75 10                	jne    0x40edaa
40ed9a:	68 38 03 41 00       	push   $0x410338
40ed9f:	68 a8 7c 40 00       	push   $0x407ca8
40eda4:	ff 15 2c 11 40 00    	call   *0x40112c
40edaa:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40edb0:	8b 07                	mov    (%edi),%eax
40edb2:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40edb8:	51                   	push   %ecx
40edb9:	57                   	push   %edi
40edba:	ff 50 1c             	call   *0x1c(%eax)
40edbd:	db e2                	fnclex
40edbf:	3b c6                	cmp    %esi,%eax
40edc1:	7d 0f                	jge    0x40edd2
40edc3:	6a 1c                	push   $0x1c
40edc5:	68 98 7c 40 00       	push   $0x407c98
40edca:	57                   	push   %edi
40edcb:	50                   	push   %eax
40edcc:	ff 15 48 10 40 00    	call   *0x401048
40edd2:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40edd8:	8d 9d 48 ff ff ff    	lea    -0xb8(%ebp),%ebx
40edde:	53                   	push   %ebx
40eddf:	83 ec 10             	sub    $0x10,%esp
40ede2:	ba 0a 00 00 00       	mov    $0xa,%edx
40ede7:	8b dc                	mov    %esp,%ebx
40ede9:	89 13                	mov    %edx,(%ebx)
40edeb:	89 95 04 ff ff ff    	mov    %edx,-0xfc(%ebp)
40edf1:	8b 95 08 ff ff ff    	mov    -0xf8(%ebp),%edx
40edf7:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40edfc:	89 53 04             	mov    %edx,0x4(%ebx)
40edff:	89 8d 0c ff ff ff    	mov    %ecx,-0xf4(%ebp)
40ee05:	8b 38                	mov    (%eax),%edi
40ee07:	89 4b 08             	mov    %ecx,0x8(%ebx)
40ee0a:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40ee10:	50                   	push   %eax
40ee11:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40ee17:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40ee1a:	ff 57 5c             	call   *0x5c(%edi)
40ee1d:	db e2                	fnclex
40ee1f:	3b c6                	cmp    %esi,%eax
40ee21:	7d 15                	jge    0x40ee38
40ee23:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40ee29:	6a 5c                	push   $0x5c
40ee2b:	68 b8 7c 40 00       	push   $0x407cb8
40ee30:	52                   	push   %edx
40ee31:	50                   	push   %eax
40ee32:	ff 15 48 10 40 00    	call   *0x401048
40ee38:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40ee3e:	bb 08 00 00 00       	mov    $0x8,%ebx
40ee43:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40ee49:	8d 4d ac             	lea    -0x54(%ebp),%ecx
40ee4c:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40ee52:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ee58:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ee5e:	ff 15 0c 10 40 00    	call   *0x40100c
40ee64:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40ee6a:	ff 15 ac 11 40 00    	call   *0x4011ac
40ee70:	68 e8 84 40 00       	push   $0x4084e8
40ee75:	68 f8 84 40 00       	push   $0x4084f8
40ee7a:	ff 15 3c 10 40 00    	call   *0x40103c
40ee80:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40ee86:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40ee8c:	50                   	push   %eax
40ee8d:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40ee93:	51                   	push   %ecx
40ee94:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40ee9a:	ff 15 94 11 40 00    	call   *0x401194
40eea0:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40eea6:	52                   	push   %edx
40eea7:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40eead:	50                   	push   %eax
40eeae:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40eeb5:	00 00 00
40eeb8:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40eebf:	80 00 00
40eec2:	ff 15 68 11 40 00    	call   *0x401168
40eec8:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40eece:	51                   	push   %ecx
40eecf:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40eed5:	52                   	push   %edx
40eed6:	6a 02                	push   $0x2
40eed8:	66 8b f8             	mov    %ax,%di
40eedb:	ff 15 28 10 40 00    	call   *0x401028
40eee1:	83 c4 0c             	add    $0xc,%esp
40eee4:	66 3b fe             	cmp    %si,%di
40eee7:	0f 84 e0 00 00 00    	je     0x40efcd
40eeed:	39 35 38 03 41 00    	cmp    %esi,0x410338
40eef3:	75 10                	jne    0x40ef05
40eef5:	68 38 03 41 00       	push   $0x410338
40eefa:	68 a8 7c 40 00       	push   $0x407ca8
40eeff:	ff 15 2c 11 40 00    	call   *0x40112c
40ef05:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40ef0b:	8b 07                	mov    (%edi),%eax
40ef0d:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40ef13:	51                   	push   %ecx
40ef14:	57                   	push   %edi
40ef15:	ff 50 1c             	call   *0x1c(%eax)
40ef18:	db e2                	fnclex
40ef1a:	3b c6                	cmp    %esi,%eax
40ef1c:	7d 0f                	jge    0x40ef2d
40ef1e:	6a 1c                	push   $0x1c
40ef20:	68 98 7c 40 00       	push   $0x407c98
40ef25:	57                   	push   %edi
40ef26:	50                   	push   %eax
40ef27:	ff 15 48 10 40 00    	call   *0x401048
40ef2d:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40ef33:	8d 9d 48 ff ff ff    	lea    -0xb8(%ebp),%ebx
40ef39:	53                   	push   %ebx
40ef3a:	83 ec 10             	sub    $0x10,%esp
40ef3d:	ba 0a 00 00 00       	mov    $0xa,%edx
40ef42:	8b dc                	mov    %esp,%ebx
40ef44:	89 13                	mov    %edx,(%ebx)
40ef46:	89 95 04 ff ff ff    	mov    %edx,-0xfc(%ebp)
40ef4c:	8b 95 08 ff ff ff    	mov    -0xf8(%ebp),%edx
40ef52:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40ef57:	89 53 04             	mov    %edx,0x4(%ebx)
40ef5a:	89 8d 0c ff ff ff    	mov    %ecx,-0xf4(%ebp)
40ef60:	8b 38                	mov    (%eax),%edi
40ef62:	89 4b 08             	mov    %ecx,0x8(%ebx)
40ef65:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40ef6b:	50                   	push   %eax
40ef6c:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40ef72:	89 4b 0c             	mov    %ecx,0xc(%ebx)
40ef75:	ff 57 5c             	call   *0x5c(%edi)
40ef78:	db e2                	fnclex
40ef7a:	3b c6                	cmp    %esi,%eax
40ef7c:	7d 15                	jge    0x40ef93
40ef7e:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40ef84:	6a 5c                	push   $0x5c
40ef86:	68 b8 7c 40 00       	push   $0x407cb8
40ef8b:	52                   	push   %edx
40ef8c:	50                   	push   %eax
40ef8d:	ff 15 48 10 40 00    	call   *0x401048
40ef93:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40ef99:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40ef9f:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
40efa5:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40efab:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40efb1:	c7 85 34 ff ff ff 08 	movl   $0x8,-0xcc(%ebp)
40efb8:	00 00 00