40e063:	68 28 7e 40 00       	push   $0x407e28
40e068:	56                   	push   %esi
40e069:	50                   	push   %eax
40e06a:	ff d7                	call   *%edi
40e06c:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40e06f:	ff 15 ac 11 40 00    	call   *0x4011ac
40e075:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40e078:	ff 15 b0 11 40 00    	call   *0x4011b0
40e07e:	b8 0a 00 00 00       	mov    $0xa,%eax
40e083:	8d 55 bc             	lea    -0x44(%ebp),%edx
40e086:	52                   	push   %edx
40e087:	89 45 bc             	mov    %eax,-0x44(%ebp)
40e08a:	89 45 cc             	mov    %eax,-0x34(%ebp)
40e08d:	8d 45 cc             	lea    -0x34(%ebp),%eax
40e090:	50                   	push   %eax
40e091:	68 00 00 f0 3f       	push   $0x3ff00000
40e096:	53                   	push   %ebx
40e097:	68 00 00 f0 3f       	push   $0x3ff00000
40e09c:	53                   	push   %ebx
40e09d:	68 00 00 f0 3f       	push   $0x3ff00000
40e0a2:	53                   	push   %ebx
40e0a3:	b9 04 00 02 80       	mov    $0x80020004,%ecx
40e0a8:	68 00 00 f0 3f       	push   $0x3ff00000
40e0ad:	53                   	push   %ebx
40e0ae:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
40e0b1:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
40e0b4:	ff 15 dc 10 40 00    	call   *0x4010dc
40e0ba:	ff 15 9c 10 40 00    	call   *0x40109c
40e0c0:	dc 1d 10 12 40 00    	fcompl 0x401210
40e0c6:	df e0                	fnstsw %ax
40e0c8:	f6 c4 40             	test   $0x40,%ah
40e0cb:	75 07                	jne    0x40e0d4
40e0cd:	b8 01 00 00 00       	mov    $0x1,%eax
40e0d2:	eb 02                	jmp    0x40e0d6
40e0d4:	33 c0                	xor    %eax,%eax
40e0d6:	8d 4d bc             	lea    -0x44(%ebp),%ecx
40e0d9:	51                   	push   %ecx
40e0da:	8d 55 cc             	lea    -0x34(%ebp),%edx
40e0dd:	52                   	push   %edx
40e0de:	f7 d8                	neg    %eax
40e0e0:	6a 02                	push   $0x2
40e0e2:	66 8b f0             	mov    %ax,%si
40e0e5:	ff 15 28 10 40 00    	call   *0x401028
40e0eb:	83 c4 0c             	add    $0xc,%esp
40e0ee:	66 3b f3             	cmp    %bx,%si
40e0f1:	74 75                	je     0x40e168
40e0f3:	39 1d 38 03 41 00    	cmp    %ebx,0x410338
40e0f9:	75 10                	jne    0x40e10b
40e0fb:	68 38 03 41 00       	push   $0x410338
40e100:	68 b0 7c 40 00       	push   $0x407cb0
40e105:	ff 15 24 11 40 00    	call   *0x401124
40e10b:	8b 35 38 03 41 00    	mov    0x410338,%esi
40e111:	8b 06                	mov    (%esi),%eax
40e113:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40e116:	51                   	push   %ecx
40e117:	56                   	push   %esi
40e118:	ff 50 4c             	call   *0x4c(%eax)
40e11b:	db e2                	fnclex
40e11d:	3b c3                	cmp    %ebx,%eax
40e11f:	7d 0b                	jge    0x40e12c
40e121:	6a 4c                	push   $0x4c
40e123:	68 a0 7c 40 00       	push   $0x407ca0
40e128:	56                   	push   %esi
40e129:	50                   	push   %eax
40e12a:	ff d7                	call   *%edi
40e12c:	8b 45 dc             	mov    -0x24(%ebp),%eax
40e12f:	8b 10                	mov    (%eax),%edx
40e131:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40e134:	51                   	push   %ecx
40e135:	68 c8 84 40 00       	push   $0x4084c8
40e13a:	68 ac 84 40 00       	push   $0x4084ac
40e13f:	50                   	push   %eax
40e140:	8b f0                	mov    %eax,%esi
40e142:	ff 52 24             	call   *0x24(%edx)
40e145:	db e2                	fnclex
40e147:	3b c3                	cmp    %ebx,%eax
40e149:	7d 0b                	jge    0x40e156
40e14b:	6a 24                	push   $0x24
40e14d:	68 28 7e 40 00       	push   $0x407e28
40e152:	56                   	push   %esi
40e153:	50                   	push   %eax
40e154:	ff d7                	call   *%edi
40e156:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40e159:	ff 15 ac 11 40 00    	call   *0x4011ac
40e15f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40e162:	ff 15 b0 11 40 00    	call   *0x4011b0
40e168:	9b                   	fwait
40e169:	68 a0 e1 40 00       	push   $0x40e1a0
40e16e:	eb 26                	jmp    0x40e196
40e170:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40e173:	ff 15 ac 11 40 00    	call   *0x4011ac
40e179:	8d 4d dc             	lea    -0x24(%ebp),%ecx
40e17c:	ff 15 b0 11 40 00    	call   *0x4011b0
40e182:	8d 55 bc             	lea    -0x44(%ebp),%edx
40e185:	52                   	push   %edx
40e186:	8d 45 cc             	lea    -0x34(%ebp),%eax
40e189:	50                   	push   %eax
40e18a:	6a 02                	push   $0x2
40e18c:	ff 15 28 10 40 00    	call   *0x401028
40e192:	83 c4 0c             	add    $0xc,%esp
40e195:	c3                   	ret
40e196:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40e199:	ff 15 ac 11 40 00    	call   *0x4011ac
40e19f:	c3                   	ret
40e1a0:	8b 45 08             	mov    0x8(%ebp),%eax
40e1a3:	8b 08                	mov    (%eax),%ecx
40e1a5:	50                   	push   %eax
40e1a6:	ff 51 08             	call   *0x8(%ecx)
40e1a9:	66 8b 45 e8          	mov    -0x18(%ebp),%ax
40e1ad:	8b 55 20             	mov    0x20(%ebp),%edx
40e1b0:	66 89 02             	mov    %ax,(%edx)
40e1b3:	8b 45 fc             	mov    -0x4(%ebp),%eax
40e1b6:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40e1b9:	5f                   	pop    %edi
40e1ba:	5e                   	pop    %esi
40e1bb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40e1c2:	5b                   	pop    %ebx
40e1c3:	8b e5                	mov    %ebp,%esp
40e1c5:	5d                   	pop    %ebp
40e1c6:	c2 1c 00             	ret    $0x1c
40e1c9:	90                   	nop
40e1ca:	90                   	nop
40e1cb:	90                   	nop
40e1cc:	90                   	nop
40e1cd:	90                   	nop
40e1ce:	90                   	nop
40e1cf:	90                   	nop
40e1d0:	55                   	push   %ebp
40e1d1:	8b ec                	mov    %esp,%ebp
40e1d3:	83 ec 08             	sub    $0x8,%esp
40e1d6:	68 b6 12 40 00       	push   $0x4012b6
40e1db:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40e1e1:	50                   	push   %eax
40e1e2:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
40e1e9:	81 ec 28 01 00 00    	sub    $0x128,%esp
40e1ef:	53                   	push   %ebx
40e1f0:	56                   	push   %esi
40e1f1:	57                   	push   %edi
40e1f2:	89 65 f8             	mov    %esp,-0x8(%ebp)
40e1f5:	c7 45 fc 90 12 40 00 	movl   $0x401290,-0x4(%ebp)
40e1fc:	33 f6                	xor    %esi,%esi
40e1fe:	68 dc 84 40 00       	push   $0x4084dc
40e203:	68 ec 84 40 00       	push   $0x4084ec
40e208:	89 75 e0             	mov    %esi,-0x20(%ebp)
40e20b:	89 75 d0             	mov    %esi,-0x30(%ebp)
40e20e:	89 75 c0             	mov    %esi,-0x40(%ebp)
40e211:	89 75 bc             	mov    %esi,-0x44(%ebp)
40e214:	89 75 ac             	mov    %esi,-0x54(%ebp)
40e217:	89 75 9c             	mov    %esi,-0x64(%ebp)
40e21a:	89 75 8c             	mov    %esi,-0x74(%ebp)
40e21d:	89 b5 7c ff ff ff    	mov    %esi,-0x84(%ebp)
40e223:	89 b5 6c ff ff ff    	mov    %esi,-0x94(%ebp)
40e229:	89 b5 5c ff ff ff    	mov    %esi,-0xa4(%ebp)
40e22f:	89 b5 4c ff ff ff    	mov    %esi,-0xb4(%ebp)
40e235:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40e23b:	89 b5 44 ff ff ff    	mov    %esi,-0xbc(%ebp)
40e241:	89 b5 34 ff ff ff    	mov    %esi,-0xcc(%ebp)
40e247:	89 b5 24 ff ff ff    	mov    %esi,-0xdc(%ebp)
40e24d:	89 b5 14 ff ff ff    	mov    %esi,-0xec(%ebp)
40e253:	89 b5 04 ff ff ff    	mov    %esi,-0xfc(%ebp)
40e259:	ff 15 3c 10 40 00    	call   *0x40103c
40e25f:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e265:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40e26b:	50                   	push   %eax
40e26c:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e272:	bb 08 00 00 00       	mov    $0x8,%ebx
40e277:	51                   	push   %ecx
40e278:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e27e:	ff 15 90 11 40 00    	call   *0x401190
40e284:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40e28a:	52                   	push   %edx
40e28b:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40e291:	50                   	push   %eax
40e292:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40e299:	00 00 00
40e29c:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40e2a3:	80 00 00
40e2a6:	ff 15 60 11 40 00    	call   *0x401160
40e2ac:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e2b2:	51                   	push   %ecx
40e2b3:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e2b9:	52                   	push   %edx
40e2ba:	6a 02                	push   $0x2
40e2bc:	66 8b f8             	mov    %ax,%di
40e2bf:	ff 15 28 10 40 00    	call   *0x401028
40e2c5:	83 c4 0c             	add    $0xc,%esp
40e2c8:	66 3b fe             	cmp    %si,%di
40e2cb:	0f 84 de 00 00 00    	je     0x40e3af
40e2d1:	39 35 38 03 41 00    	cmp    %esi,0x410338
40e2d7:	75 10                	jne    0x40e2e9
40e2d9:	68 38 03 41 00       	push   $0x410338
40e2de:	68 b0 7c 40 00       	push   $0x407cb0
40e2e3:	ff 15 24 11 40 00    	call   *0x401124
40e2e9:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40e2ef:	8b 07                	mov    (%edi),%eax
40e2f1:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40e2f7:	51                   	push   %ecx
40e2f8:	57                   	push   %edi
40e2f9:	ff 50 1c             	call   *0x1c(%eax)
40e2fc:	db e2                	fnclex
40e2fe:	3b c6                	cmp    %esi,%eax
40e300:	7d 0f                	jge    0x40e311
40e302:	6a 1c                	push   $0x1c
40e304:	68 a0 7c 40 00       	push   $0x407ca0
40e309:	57                   	push   %edi
40e30a:	50                   	push   %eax
40e30b:	ff 15 48 10 40 00    	call   *0x401048
40e311:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40e317:	8d bd 48 ff ff ff    	lea    -0xb8(%ebp),%edi
40e31d:	57                   	push   %edi
40e31e:	83 ec 10             	sub    $0x10,%esp
40e321:	b9 0a 00 00 00       	mov    $0xa,%ecx
40e326:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
40e32c:	8b fc                	mov    %esp,%edi
40e32e:	89 0f                	mov    %ecx,(%edi)
40e330:	8b 8d 08 ff ff ff    	mov    -0xf8(%ebp),%ecx
40e336:	89 4f 04             	mov    %ecx,0x4(%edi)
40e339:	c7 85 0c ff ff ff 04 	movl   $0x80020004,-0xf4(%ebp)
40e340:	00 02 80
40e343:	8b 8d 0c ff ff ff    	mov    -0xf4(%ebp),%ecx
40e349:	8b 10                	mov    (%eax),%edx
40e34b:	89 4f 08             	mov    %ecx,0x8(%edi)
40e34e:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40e354:	50                   	push   %eax
40e355:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40e35b:	89 4f 0c             	mov    %ecx,0xc(%edi)
40e35e:	ff 52 5c             	call   *0x5c(%edx)
40e361:	db e2                	fnclex
40e363:	3b c6                	cmp    %esi,%eax
40e365:	7d 15                	jge    0x40e37c
40e367:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40e36d:	6a 5c                	push   $0x5c
40e36f:	68 c0 7c 40 00       	push   $0x407cc0
40e374:	52                   	push   %edx
40e375:	50                   	push   %eax
40e376:	ff 15 48 10 40 00    	call   *0x401048
40e37c:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40e382:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e388:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40e38b:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40e391:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e397:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e39d:	ff 15 0c 10 40 00    	call   *0x40100c
40e3a3:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40e3a9:	ff 15 b0 11 40 00    	call   *0x4011b0
40e3af:	68 dc 84 40 00       	push   $0x4084dc
40e3b4:	68 ec 84 40 00       	push   $0x4084ec
40e3b9:	ff 15 3c 10 40 00    	call   *0x40103c
40e3bf:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e3c5:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40e3cb:	50                   	push   %eax
40e3cc:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e3d2:	51                   	push   %ecx
40e3d3:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e3d9:	ff 15 90 11 40 00    	call   *0x401190
40e3df:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40e3e5:	52                   	push   %edx
40e3e6:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40e3ec:	50                   	push   %eax
40e3ed:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40e3f4:	00 00 00
40e3f7:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40e3fe:	80 00 00
40e401:	ff 15 60 11 40 00    	call   *0x401160
40e407:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e40d:	51                   	push   %ecx
40e40e:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e414:	52                   	push   %edx
40e415:	6a 02                	push   $0x2
40e417:	66 8b f8             	mov    %ax,%di
40e41a:	ff 15 28 10 40 00    	call   *0x401028
40e420:	83 c4 0c             	add    $0xc,%esp
40e423:	66 3b fe             	cmp    %si,%di
40e426:	0f 84 e1 00 00 00    	je     0x40e50d
40e42c:	39 35 38 03 41 00    	cmp    %esi,0x410338
40e432:	75 10                	jne    0x40e444
40e434:	68 38 03 41 00       	push   $0x410338
40e439:	68 b0 7c 40 00       	push   $0x407cb0
40e43e:	ff 15 24 11 40 00    	call   *0x401124
40e444:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40e44a:	8b 07                	mov    (%edi),%eax
40e44c:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40e452:	51                   	push   %ecx
40e453:	57                   	push   %edi
40e454:	ff 50 1c             	call   *0x1c(%eax)
40e457:	db e2                	fnclex
40e459:	3b c6                	cmp    %esi,%eax
40e45b:	7d 0f                	jge    0x40e46c
40e45d:	6a 1c                	push   $0x1c
40e45f:	68 a0 7c 40 00       	push   $0x407ca0
40e464:	57                   	push   %edi
40e465:	50                   	push   %eax
40e466:	ff 15 48 10 40 00    	call   *0x401048
40e46c:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40e472:	8d bd 48 ff ff ff    	lea    -0xb8(%ebp),%edi
40e478:	57                   	push   %edi
40e479:	83 ec 10             	sub    $0x10,%esp
40e47c:	b9 0a 00 00 00       	mov    $0xa,%ecx
40e481:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
40e487:	8b fc                	mov    %esp,%edi
40e489:	89 0f                	mov    %ecx,(%edi)
40e48b:	8b 8d 08 ff ff ff    	mov    -0xf8(%ebp),%ecx
40e491:	89 4f 04             	mov    %ecx,0x4(%edi)
40e494:	c7 85 0c ff ff ff 04 	movl   $0x80020004,-0xf4(%ebp)
40e49b:	00 02 80
40e49e:	8b 8d 0c ff ff ff    	mov    -0xf4(%ebp),%ecx
40e4a4:	8b 10                	mov    (%eax),%edx
40e4a6:	89 4f 08             	mov    %ecx,0x8(%edi)
40e4a9:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40e4af:	50                   	push   %eax
40e4b0:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40e4b6:	89 4f 0c             	mov    %ecx,0xc(%edi)
40e4b9:	ff 52 5c             	call   *0x5c(%edx)
40e4bc:	db e2                	fnclex
40e4be:	3b c6                	cmp    %esi,%eax
40e4c0:	7d 15                	jge    0x40e4d7
40e4c2:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40e4c8:	6a 5c                	push   $0x5c
40e4ca:	68 c0 7c 40 00       	push   $0x407cc0
40e4cf:	52                   	push   %edx
40e4d0:	50                   	push   %eax
40e4d1:	ff 15 48 10 40 00    	call   *0x401048
40e4d7:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40e4dd:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e4e3:	8d 8d 5c ff ff ff    	lea    -0xa4(%ebp),%ecx
40e4e9:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40e4ef:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e4f5:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e4fb:	ff 15 0c 10 40 00    	call   *0x40100c
40e501:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40e507:	ff 15 b0 11 40 00    	call   *0x4011b0
40e50d:	68 dc 84 40 00       	push   $0x4084dc
40e512:	68 ec 84 40 00       	push   $0x4084ec
40e517:	ff 15 3c 10 40 00    	call   *0x40103c
40e51d:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e523:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40e529:	50                   	push   %eax
40e52a:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e530:	51                   	push   %ecx
40e531:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e537:	ff 15 90 11 40 00    	call   *0x401190
40e53d:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40e543:	52                   	push   %edx
40e544:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40e54a:	50                   	push   %eax
40e54b:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40e552:	00 00 00
40e555:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40e55c:	80 00 00
40e55f:	ff 15 60 11 40 00    	call   *0x401160