40e192:	83 c4 0c             	add    $0xc,%esp
40e195:	c3                   	ret
40e196:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40e199:	ff 15 a8 11 40 00    	call   *0x4011a8
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 c6 12 40 00       	push   $0x4012c6
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 04 85 40 00       	push   $0x408504
40e203:	68 14 85 40 00       	push   $0x408514
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 94 11 40 00    	call   *0x401194
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 64 11 40 00    	call   *0x401164
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 c4 7c 40 00       	push   $0x407cc4
40e2e3:	ff 15 28 11 40 00    	call   *0x401128
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 b4 7c 40 00       	push   $0x407cb4
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 d4 7c 40 00       	push   $0x407cd4
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 ac 11 40 00    	call   *0x4011ac
40e3af:	68 04 85 40 00       	push   $0x408504
40e3b4:	68 14 85 40 00       	push   $0x408514
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 94 11 40 00    	call   *0x401194
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 64 11 40 00    	call   *0x401164
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 c4 7c 40 00       	push   $0x407cc4
40e43e:	ff 15 28 11 40 00    	call   *0x401128
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 b4 7c 40 00       	push   $0x407cb4
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 d4 7c 40 00       	push   $0x407cd4
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 ac 11 40 00    	call   *0x4011ac
40e50d:	68 04 85 40 00       	push   $0x408504
40e512:	68 14 85 40 00       	push   $0x408514
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 94 11 40 00    	call   *0x401194
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 64 11 40 00    	call   *0x401164
40e565:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e56b:	51                   	push   %ecx
40e56c:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e572:	52                   	push   %edx
40e573:	6a 02                	push   $0x2
40e575:	66 8b f8             	mov    %ax,%di
40e578:	ff 15 28 10 40 00    	call   *0x401028
40e57e:	83 c4 0c             	add    $0xc,%esp
40e581:	66 3b fe             	cmp    %si,%di
40e584:	0f 84 e1 00 00 00    	je     0x40e66b
40e58a:	39 35 38 03 41 00    	cmp    %esi,0x410338
40e590:	75 10                	jne    0x40e5a2
40e592:	68 38 03 41 00       	push   $0x410338
40e597:	68 c4 7c 40 00       	push   $0x407cc4
40e59c:	ff 15 28 11 40 00    	call   *0x401128
40e5a2:	8b 3d 38 03 41 00    	mov    0x410338,%edi
40e5a8:	8b 07                	mov    (%edi),%eax
40e5aa:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40e5b0:	51                   	push   %ecx
40e5b1:	57                   	push   %edi
40e5b2:	ff 50 1c             	call   *0x1c(%eax)
40e5b5:	db e2                	fnclex
40e5b7:	3b c6                	cmp    %esi,%eax
40e5b9:	7d 0f                	jge    0x40e5ca
40e5bb:	6a 1c                	push   $0x1c
40e5bd:	68 b4 7c 40 00       	push   $0x407cb4
40e5c2:	57                   	push   %edi
40e5c3:	50                   	push   %eax
40e5c4:	ff 15 48 10 40 00    	call   *0x401048
40e5ca:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
40e5d0:	8d bd 48 ff ff ff    	lea    -0xb8(%ebp),%edi
40e5d6:	57                   	push   %edi
40e5d7:	83 ec 10             	sub    $0x10,%esp
40e5da:	b9 0a 00 00 00       	mov    $0xa,%ecx
40e5df:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
40e5e5:	8b fc                	mov    %esp,%edi
40e5e7:	89 0f                	mov    %ecx,(%edi)
40e5e9:	8b 8d 08 ff ff ff    	mov    -0xf8(%ebp),%ecx
40e5ef:	89 4f 04             	mov    %ecx,0x4(%edi)
40e5f2:	c7 85 0c ff ff ff 04 	movl   $0x80020004,-0xf4(%ebp)
40e5f9:	00 02 80
40e5fc:	8b 8d 0c ff ff ff    	mov    -0xf4(%ebp),%ecx
40e602:	8b 10                	mov    (%eax),%edx
40e604:	89 4f 08             	mov    %ecx,0x8(%edi)
40e607:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
40e60d:	50                   	push   %eax
40e60e:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
40e614:	89 4f 0c             	mov    %ecx,0xc(%edi)
40e617:	ff 52 5c             	call   *0x5c(%edx)
40e61a:	db e2                	fnclex
40e61c:	3b c6                	cmp    %esi,%eax
40e61e:	7d 15                	jge    0x40e635
40e620:	8b 95 f8 fe ff ff    	mov    -0x108(%ebp),%edx
40e626:	6a 5c                	push   $0x5c
40e628:	68 d4 7c 40 00       	push   $0x407cd4
40e62d:	52                   	push   %edx
40e62e:	50                   	push   %eax
40e62f:	ff 15 48 10 40 00    	call   *0x401048
40e635:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
40e63b:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e641:	8d 8d 4c ff ff ff    	lea    -0xb4(%ebp),%ecx
40e647:	89 b5 48 ff ff ff    	mov    %esi,-0xb8(%ebp)
40e64d:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e653:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e659:	ff 15 0c 10 40 00    	call   *0x40100c
40e65f:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
40e665:	ff 15 ac 11 40 00    	call   *0x4011ac
40e66b:	68 04 85 40 00       	push   $0x408504
40e670:	68 14 85 40 00       	push   $0x408514
40e675:	ff 15 3c 10 40 00    	call   *0x40103c
40e67b:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
40e681:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
40e687:	50                   	push   %eax
40e688:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e68e:	51                   	push   %ecx
40e68f:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
40e695:	ff 15 94 11 40 00    	call   *0x401194
40e69b:	8d 95 24 ff ff ff    	lea    -0xdc(%ebp),%edx
40e6a1:	52                   	push   %edx
40e6a2:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
40e6a8:	50                   	push   %eax
40e6a9:	c7 85 0c ff ff ff 03 	movl   $0x3,-0xf4(%ebp)
40e6b0:	00 00 00
40e6b3:	c7 85 04 ff ff ff 02 	movl   $0x8002,-0xfc(%ebp)
40e6ba:	80 00 00
40e6bd:	ff 15 64 11 40 00    	call   *0x401164
40e6c3:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
40e6c9:	51                   	push   %ecx
40e6ca:	8d 95 34 ff ff ff    	lea    -0xcc(%ebp),%edx
40e6d0:	52                   	push   %edx
40e6d1:	6a 02                	push   $0x2
40e6d3:	66 8b f8             	mov    %ax,%di
40e6d6:	ff 15 28 10 40 00    	call   *0x401028
40e6dc:	83 c4 0c             	add    $0xc,%esp
40e6df:	66 3b fe             	cmp    %si,%di
40e6e2:	0f 84 de 00 00 00    	je     0x40e7c6
40e6e8:	39 35 38 03 41 00    	cmp    %esi,0x410338
40e6ee:	75 10                	jne    0x40e700
40e6f0:	68 38 03 41 00       	push   $0x410338