40ee59:	ff 15 f8 30 43 00    	call   *0x4330f8
40ee5f:	c9                   	leave
40ee60:	c3                   	ret
40ee61:	cc                   	int3
40ee62:	cc                   	int3
40ee63:	cc                   	int3
40ee64:	cc                   	int3
40ee65:	cc                   	int3
40ee66:	cc                   	int3
40ee67:	cc                   	int3
40ee68:	cc                   	int3
40ee69:	cc                   	int3
40ee6a:	cc                   	int3
40ee6b:	cc                   	int3
40ee6c:	cc                   	int3
40ee6d:	cc                   	int3
40ee6e:	cc                   	int3
40ee6f:	cc                   	int3
40ee70:	8b ff                	mov    %edi,%edi
40ee72:	55                   	push   %ebp
40ee73:	8b ec                	mov    %esp,%ebp
40ee75:	a1 40 13 41 00       	mov    0x411340,%eax
40ee7a:	81 ec 9c 00 00 00    	sub    $0x9c,%esp
40ee80:	56                   	push   %esi
40ee81:	8b 75 08             	mov    0x8(%ebp),%esi
40ee84:	57                   	push   %edi
40ee85:	8b f9                	mov    %ecx,%edi
40ee87:	8b 56 08             	mov    0x8(%esi),%edx
40ee8a:	89 15 40 13 41 00    	mov    %edx,0x411340
40ee90:	3b c2                	cmp    %edx,%eax
40ee92:	0f 84 e4 00 00 00    	je     0x40ef7c
40ee98:	e8 b4 9f ff ff       	call   0x408e51
40ee9d:	8b c8                	mov    %eax,%ecx
40ee9f:	83 39 02             	cmpl   $0x2,(%ecx)
40eea2:	0f 86 dd 01 00 00    	jbe    0x40f085
40eea8:	68 00 20 00 00       	push   $0x2000
40eead:	6a 00                	push   $0x0
40eeaf:	e8 f3 36 ff ff       	call   0x4025a7
40eeb4:	84 c0                	test   %al,%al
40eeb6:	0f 84 c9 01 00 00    	je     0x40f085
40eebc:	8b 46 40             	mov    0x40(%esi),%eax
40eebf:	ba 26 1c 40 00       	mov    $0x401c26,%edx
40eec4:	89 45 f8             	mov    %eax,-0x8(%ebp)
40eec7:	8b 46 3c             	mov    0x3c(%esi),%eax
40eeca:	89 45 f4             	mov    %eax,-0xc(%ebp)
40eecd:	8b 46 38             	mov    0x38(%esi),%eax
40eed0:	89 45 f0             	mov    %eax,-0x10(%ebp)
40eed3:	8b 46 34             	mov    0x34(%esi),%eax
40eed6:	89 45 ec             	mov    %eax,-0x14(%ebp)
40eed9:	8b 46 30             	mov    0x30(%esi),%eax
40eedc:	89 45 e8             	mov    %eax,-0x18(%ebp)
40eedf:	8b 46 2c             	mov    0x2c(%esi),%eax
40eee2:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40eee5:	8b 46 28             	mov    0x28(%esi),%eax
40eee8:	89 45 e0             	mov    %eax,-0x20(%ebp)
40eeeb:	8b 46 10             	mov    0x10(%esi),%eax
40eeee:	89 45 dc             	mov    %eax,-0x24(%ebp)
40eef1:	8b 46 0c             	mov    0xc(%esi),%eax
40eef4:	89 45 d8             	mov    %eax,-0x28(%ebp)
40eef7:	8b 06                	mov    (%esi),%eax
40eef9:	89 45 d4             	mov    %eax,-0x2c(%ebp)
40eefc:	8b 46 44             	mov    0x44(%esi),%eax
40eeff:	89 45 d0             	mov    %eax,-0x30(%ebp)
40ef02:	8b 46 20             	mov    0x20(%esi),%eax
40ef05:	89 45 cc             	mov    %eax,-0x34(%ebp)
40ef08:	8b 46 1c             	mov    0x1c(%esi),%eax
40ef0b:	89 45 c8             	mov    %eax,-0x38(%ebp)
40ef0e:	8b 46 04             	mov    0x4(%esi),%eax
40ef11:	89 45 c4             	mov    %eax,-0x3c(%ebp)
40ef14:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
40ef1a:	89 45 c0             	mov    %eax,-0x40(%ebp)
40ef1d:	8d 45 f8             	lea    -0x8(%ebp),%eax
40ef20:	50                   	push   %eax
40ef21:	8d 45 f4             	lea    -0xc(%ebp),%eax
40ef24:	83 a5 74 ff ff ff 00 	andl   $0x0,-0x8c(%ebp)
40ef2b:	50                   	push   %eax
40ef2c:	8d 45 f0             	lea    -0x10(%ebp),%eax
40ef2f:	c7 85 70 ff ff ff 00 	movl   $0x1000000,-0x90(%ebp)
40ef36:	00 00 01
40ef39:	50                   	push   %eax
40ef3a:	8d 45 ec             	lea    -0x14(%ebp),%eax
40ef3d:	50                   	push   %eax
40ef3e:	8d 45 e8             	lea    -0x18(%ebp),%eax
40ef41:	50                   	push   %eax
40ef42:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40ef45:	50                   	push   %eax
40ef46:	8d 45 e0             	lea    -0x20(%ebp),%eax
40ef49:	50                   	push   %eax
40ef4a:	8d 45 dc             	lea    -0x24(%ebp),%eax
40ef4d:	50                   	push   %eax
40ef4e:	8d 45 d8             	lea    -0x28(%ebp),%eax
40ef51:	50                   	push   %eax
40ef52:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40ef55:	50                   	push   %eax
40ef56:	8d 45 d0             	lea    -0x30(%ebp),%eax
40ef59:	50                   	push   %eax
40ef5a:	8d 45 cc             	lea    -0x34(%ebp),%eax
40ef5d:	50                   	push   %eax
40ef5e:	8d 45 c8             	lea    -0x38(%ebp),%eax
40ef61:	50                   	push   %eax
40ef62:	8d 45 c4             	lea    -0x3c(%ebp),%eax
40ef65:	50                   	push   %eax
40ef66:	8d 45 c0             	lea    -0x40(%ebp),%eax
40ef69:	50                   	push   %eax
40ef6a:	8b 47 18             	mov    0x18(%edi),%eax
40ef6d:	51                   	push   %ecx
40ef6e:	83 c0 08             	add    $0x8,%eax
40ef71:	50                   	push   %eax
40ef72:	e8 65 36 ff ff       	call   0x4025dc
40ef77:	e9 09 01 00 00       	jmp    0x40f085
40ef7c:	e8 d0 9e ff ff       	call   0x408e51
40ef81:	8b c8                	mov    %eax,%ecx
40ef83:	83 39 02             	cmpl   $0x2,(%ecx)
40ef86:	0f 86 f9 00 00 00    	jbe    0x40f085
40ef8c:	68 00 20 00 00       	push   $0x2000
40ef91:	6a 00                	push   $0x0
40ef93:	e8 0f 36 ff ff       	call   0x4025a7
40ef98:	84 c0                	test   %al,%al
40ef9a:	0f 84 e5 00 00 00    	je     0x40f085
40efa0:	8b 46 18             	mov    0x18(%esi),%eax
40efa3:	ba ee 1a 40 00       	mov    $0x401aee,%edx
40efa8:	89 45 bc             	mov    %eax,-0x44(%ebp)
40efab:	8b 46 24             	mov    0x24(%esi),%eax
40efae:	89 45 b8             	mov    %eax,-0x48(%ebp)
40efb1:	8b 46 08             	mov    0x8(%esi),%eax
40efb4:	89 45 b4             	mov    %eax,-0x4c(%ebp)
40efb7:	8b 46 40             	mov    0x40(%esi),%eax
40efba:	89 45 b0             	mov    %eax,-0x50(%ebp)
40efbd:	8b 46 3c             	mov    0x3c(%esi),%eax
40efc0:	89 45 ac             	mov    %eax,-0x54(%ebp)
40efc3:	8b 46 38             	mov    0x38(%esi),%eax
40efc6:	89 45 a8             	mov    %eax,-0x58(%ebp)
40efc9:	8b 46 34             	mov    0x34(%esi),%eax
40efcc:	89 45 a4             	mov    %eax,-0x5c(%ebp)
40efcf:	8b 46 30             	mov    0x30(%esi),%eax
40efd2:	89 45 a0             	mov    %eax,-0x60(%ebp)
40efd5:	8b 46 2c             	mov    0x2c(%esi),%eax
40efd8:	89 45 9c             	mov    %eax,-0x64(%ebp)
40efdb:	8b 46 28             	mov    0x28(%esi),%eax
40efde:	89 45 98             	mov    %eax,-0x68(%ebp)
40efe1:	8b 46 10             	mov    0x10(%esi),%eax
40efe4:	89 45 94             	mov    %eax,-0x6c(%ebp)
40efe7:	8b 46 0c             	mov    0xc(%esi),%eax
40efea:	89 45 90             	mov    %eax,-0x70(%ebp)
40efed:	8b 06                	mov    (%esi),%eax
40efef:	89 45 8c             	mov    %eax,-0x74(%ebp)
40eff2:	8b 46 44             	mov    0x44(%esi),%eax
40eff5:	89 45 88             	mov    %eax,-0x78(%ebp)
40eff8:	8b 46 20             	mov    0x20(%esi),%eax
40effb:	89 45 84             	mov    %eax,-0x7c(%ebp)
40effe:	8b 46 1c             	mov    0x1c(%esi),%eax
40f001:	89 45 80             	mov    %eax,-0x80(%ebp)
40f004:	8b 46 04             	mov    0x4(%esi),%eax
40f007:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
40f00d:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
40f013:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
40f019:	8d 45 bc             	lea    -0x44(%ebp),%eax
40f01c:	50                   	push   %eax
40f01d:	8d 45 b8             	lea    -0x48(%ebp),%eax
40f020:	83 a5 6c ff ff ff 00 	andl   $0x0,-0x94(%ebp)
40f027:	50                   	push   %eax
40f028:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40f02b:	c7 85 68 ff ff ff 00 	movl   $0x1000000,-0x98(%ebp)
40f032:	00 00 01
40f035:	50                   	push   %eax
40f036:	8d 45 b0             	lea    -0x50(%ebp),%eax
40f039:	50                   	push   %eax
40f03a:	8d 45 ac             	lea    -0x54(%ebp),%eax
40f03d:	50                   	push   %eax
40f03e:	8d 45 a8             	lea    -0x58(%ebp),%eax
40f041:	50                   	push   %eax
40f042:	8d 45 a4             	lea    -0x5c(%ebp),%eax
40f045:	50                   	push   %eax
40f046:	8d 45 a0             	lea    -0x60(%ebp),%eax
40f049:	50                   	push   %eax
40f04a:	8d 45 9c             	lea    -0x64(%ebp),%eax
40f04d:	50                   	push   %eax
40f04e:	8d 45 98             	lea    -0x68(%ebp),%eax
40f051:	50                   	push   %eax
40f052:	8d 45 94             	lea    -0x6c(%ebp),%eax
40f055:	50                   	push   %eax
40f056:	8d 45 90             	lea    -0x70(%ebp),%eax
40f059:	50                   	push   %eax
40f05a:	8d 45 8c             	lea    -0x74(%ebp),%eax
40f05d:	50                   	push   %eax
40f05e:	8d 45 88             	lea    -0x78(%ebp),%eax
40f061:	50                   	push   %eax
40f062:	8d 45 84             	lea    -0x7c(%ebp),%eax
40f065:	50                   	push   %eax
40f066:	8d 45 80             	lea    -0x80(%ebp),%eax
40f069:	50                   	push   %eax
40f06a:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
40f070:	50                   	push   %eax
40f071:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
40f077:	50                   	push   %eax
40f078:	8b 47 18             	mov    0x18(%edi),%eax
40f07b:	51                   	push   %ecx
40f07c:	83 c0 08             	add    $0x8,%eax
40f07f:	50                   	push   %eax
40f080:	e8 08 37 ff ff       	call   0x40278d
40f085:	8d 45 fc             	lea    -0x4(%ebp),%eax
40f088:	8b cf                	mov    %edi,%ecx
40f08a:	50                   	push   %eax
40f08b:	e8 b5 02 00 00       	call   0x40f345
40f090:	8b 4f 18             	mov    0x18(%edi),%ecx
40f093:	8b 46 04             	mov    0x4(%esi),%eax
40f096:	3b 41 44             	cmp    0x44(%ecx),%eax
40f099:	74 14                	je     0x40f0af
40f09b:	3b 41 3c             	cmp    0x3c(%ecx),%eax
40f09e:	75 06                	jne    0x40f0a6
40f0a0:	83 79 3c 00          	cmpl   $0x0,0x3c(%ecx)
40f0a4:	7c 09                	jl     0x40f0af
40f0a6:	56                   	push   %esi
40f0a7:	83 c1 40             	add    $0x40,%ecx
40f0aa:	e8 29 8c ff ff       	call   0x407cd8
40f0af:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40f0b3:	74 09                	je     0x40f0be
40f0b5:	ff 75 fc             	push   -0x4(%ebp)
40f0b8:	ff 15 f8 30 43 00    	call   *0x4330f8
40f0be:	5f                   	pop    %edi
40f0bf:	b0 01                	mov    $0x1,%al
40f0c1:	5e                   	pop    %esi
40f0c2:	c9                   	leave
40f0c3:	c2 04 00             	ret    $0x4
40f0c6:	8b ff                	mov    %edi,%edi
40f0c8:	55                   	push   %ebp
40f0c9:	8b ec                	mov    %esp,%ebp
40f0cb:	83 e4 f8             	and    $0xfffffff8,%esp
40f0ce:	83 ec 14             	sub    $0x14,%esp
40f0d1:	53                   	push   %ebx
40f0d2:	56                   	push   %esi
40f0d3:	57                   	push   %edi
40f0d4:	8d 44 24 0c          	lea    0xc(%esp),%eax
40f0d8:	8b f1                	mov    %ecx,%esi
40f0da:	50                   	push   %eax
40f0db:	e8 65 02 00 00       	call   0x40f345
40f0e0:	8b 4e 18             	mov    0x18(%esi),%ecx
40f0e3:	8d 44 24 10          	lea    0x10(%esp),%eax
40f0e7:	50                   	push   %eax
40f0e8:	6a 00                	push   $0x0
40f0ea:	e8 ff 01 00 00       	call   0x40f2ee
40f0ef:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
40f0f4:	8a d8                	mov    %al,%bl
40f0f6:	74 0a                	je     0x40f102
40f0f8:	ff 74 24 0c          	push   0xc(%esp)
40f0fc:	ff 15 f8 30 43 00    	call   *0x4330f8
40f102:	84 db                	test   %bl,%bl
40f104:	74 09                	je     0x40f10f
40f106:	8b ce                	mov    %esi,%ecx
40f108:	e8 53 9f ff ff       	call   0x409060
40f10d:	eb 65                	jmp    0x40f174
40f10f:	e8 3d 9d ff ff       	call   0x408e51
40f114:	8b f8                	mov    %eax,%edi
40f116:	83 3f 05             	cmpl   $0x5,(%edi)
40f119:	76 59                	jbe    0x40f174
40f11b:	68 00 20 00 00       	push   $0x2000
40f120:	6a 00                	push   $0x0
40f122:	8b cf                	mov    %edi,%ecx
40f124:	e8 7e 34 ff ff       	call   0x4025a7
40f129:	84 c0                	test   %al,%al
40f12b:	74 47                	je     0x40f174
40f12d:	ff 15 50 31 43 00    	call   *0x433150
40f133:	83 64 24 1c 00       	andl   $0x0,0x1c(%esp)
40f138:	ba 95 1a 40 00       	mov    $0x401a95,%edx
40f13d:	83 64 24 14 00       	andl   $0x0,0x14(%esp)
40f142:	89 44 24 0c          	mov    %eax,0xc(%esp)
40f146:	8d 44 24 18          	lea    0x18(%esp),%eax
40f14a:	89 44 24 10          	mov    %eax,0x10(%esp)
40f14e:	8d 44 24 0c          	lea    0xc(%esp),%eax
40f152:	50                   	push   %eax
40f153:	8d 44 24 18          	lea    0x18(%esp),%eax
40f157:	c7 44 24 1c 00 00 00 	movl   $0x1000000,0x1c(%esp)
40f15e:	01
40f15f:	50                   	push   %eax
40f160:	8d 44 24 18          	lea    0x18(%esp),%eax
40f164:	50                   	push   %eax
40f165:	8b 46 18             	mov    0x18(%esi),%eax
40f168:	51                   	push   %ecx
40f169:	83 c0 08             	add    $0x8,%eax
40f16c:	8b cf                	mov    %edi,%ecx
40f16e:	50                   	push   %eax
40f16f:	e8 ef 39 ff ff       	call   0x402b63
40f174:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
40f178:	74 08                	je     0x40f182
40f17a:	8d 4e 04             	lea    0x4(%esi),%ecx
40f17d:	e8 f5 97 ff ff       	call   0x408977
40f182:	5f                   	pop    %edi
40f183:	5e                   	pop    %esi
40f184:	5b                   	pop    %ebx
40f185:	8b e5                	mov    %ebp,%esp
40f187:	5d                   	pop    %ebp
40f188:	c2 04 00             	ret    $0x4
40f18b:	8b ff                	mov    %edi,%edi
40f18d:	55                   	push   %ebp
40f18e:	8b ec                	mov    %esp,%ebp
40f190:	51                   	push   %ecx
40f191:	51                   	push   %ecx
40f192:	53                   	push   %ebx
40f193:	56                   	push   %esi
40f194:	57                   	push   %edi
40f195:	8d 45 fc             	lea    -0x4(%ebp),%eax
40f198:	33 db                	xor    %ebx,%ebx
40f19a:	50                   	push   %eax
40f19b:	8d 45 f8             	lea    -0x8(%ebp),%eax
40f19e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40f1a1:	50                   	push   %eax
40f1a2:	53                   	push   %ebx
40f1a3:	68 fc 26 43 00       	push   $0x4326fc
40f1a8:	ff 15 e8 30 43 00    	call   *0x4330e8
40f1ae:	85 c0                	test   %eax,%eax
40f1b0:	74 5e                	je     0x40f210
40f1b2:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
40f1b5:	74 59                	je     0x40f210
40f1b7:	ff 75 08             	push   0x8(%ebp)
40f1ba:	bf 00 27 43 00       	mov    $0x432700,%edi
40f1bf:	c7 05 00 27 43 00 58 	movl   $0x401058,0x432700
40f1c6:	10 40 00
40f1c9:	89 7d fc             	mov    %edi,-0x4(%ebp)
40f1cc:	e8 10 15 00 00       	call   0x4106e1
40f1d1:	59                   	pop    %ecx
40f1d2:	e8 7a 9c ff ff       	call   0x408e51
40f1d7:	a3 04 27 43 00       	mov    %eax,0x432704
40f1dc:	a1 00 27 43 00       	mov    0x432700,%eax
40f1e1:	88 1d 08 27 43 00    	mov    %bl,0x432708
40f1e7:	c7 05 0c 27 43 00 01 	movl   $0x1,0x43270c
40f1ee:	00 00 00
40f1f1:	8b 70 04             	mov    0x4(%eax),%esi
40f1f4:	8b ce                	mov    %esi,%ecx
40f1f6:	ff 15 18 34 43 00    	call   *0x433418
40f1fc:	b9 00 27 43 00       	mov    $0x432700,%ecx
40f201:	ff d6                	call   *%esi
40f203:	57                   	push   %edi
40f204:	53                   	push   %ebx
40f205:	68 fc 26 43 00       	push   $0x4326fc
40f20a:	ff 15 ec 30 43 00    	call   *0x4330ec
40f210:	8b 45 fc             	mov    -0x4(%ebp),%eax
40f213:	5f                   	pop    %edi
40f214:	5e                   	pop    %esi
40f215:	5b                   	pop    %ebx
40f216:	c9                   	leave
40f217:	c2 04 00             	ret    $0x4
40f21a:	8b ff                	mov    %edi,%edi
40f21c:	55                   	push   %ebp
40f21d:	8b ec                	mov    %esp,%ebp
40f21f:	51                   	push   %ecx
40f220:	53                   	push   %ebx
40f221:	56                   	push   %esi
40f222:	8b 35 88 26 43 00    	mov    0x432688,%esi
40f228:	57                   	push   %edi
40f229:	ff 15 50 31 43 00    	call   *0x433150