41b2a1:	50                   	push   %eax
41b2a2:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
41b2a8:	8d 34 4e             	lea    (%esi,%ecx,2),%esi
41b2ab:	56                   	push   %esi
41b2ac:	50                   	push   %eax
41b2ad:	ff 15 cc a1 44 00    	call   *0x44a1cc
41b2b3:	85 c0                	test   %eax,%eax
41b2b5:	74 13                	je     0x41b2ca
41b2b7:	56                   	push   %esi
41b2b8:	ba 00 08 00 00       	mov    $0x800,%edx
41b2bd:	8d 8d fc ef ff ff    	lea    -0x1004(%ebp),%ecx
41b2c3:	e8 d8 40 ff ff       	call   0x40f3a0
41b2c8:	eb 09                	jmp    0x41b2d3
41b2ca:	33 c0                	xor    %eax,%eax
41b2cc:	66 89 85 fc ef ff ff 	mov    %ax,-0x1004(%ebp)
41b2d3:	8b b5 ec ef ff ff    	mov    -0x1014(%ebp),%esi
41b2d9:	66 83 bd fc ef ff ff 	cmpw   $0x0,-0x1004(%ebp)
41b2e0:	00
41b2e1:	0f 84 4d d2 fe ff    	je     0x408534
41b2e7:	8d 8d fc ef ff ff    	lea    -0x1004(%ebp),%ecx
41b2ed:	e8 be f9 fe ff       	call   0x40acb0
41b2f2:	89 07                	mov    %eax,(%edi)
41b2f4:	e9 3b d2 fe ff       	jmp    0x408534
41b2f9:	ba 94 39 40 00       	mov    $0x403994,%edx
41b2fe:	8b cf                	mov    %edi,%ecx
41b300:	2b d6                	sub    %esi,%edx
41b302:	8d 81 f6 ff ff 7f    	lea    0x7ffffff6(%ecx),%eax
41b308:	85 c0                	test   %eax,%eax
41b30a:	74 14                	je     0x41b320
41b30c:	0f b7 04 32          	movzwl (%edx,%esi,1),%eax
41b310:	66 85 c0             	test   %ax,%ax
41b313:	74 0b                	je     0x41b320
41b315:	66 89 06             	mov    %ax,(%esi)
41b318:	83 c6 02             	add    $0x2,%esi
41b31b:	83 e9 01             	sub    $0x1,%ecx
41b31e:	75 e2                	jne    0x41b302
41b320:	85 c9                	test   %ecx,%ecx
41b322:	75 03                	jne    0x41b327
41b324:	83 ee 02             	sub    $0x2,%esi
41b327:	33 c0                	xor    %eax,%eax
41b329:	66 89 06             	mov    %ax,(%esi)
41b32c:	e9 7b d2 fe ff       	jmp    0x4085ac
41b331:	83 e8 01             	sub    $0x1,%eax
41b334:	74 22                	je     0x41b358
41b336:	83 e8 01             	sub    $0x1,%eax
41b339:	0f 85 ff d2 fe ff    	jne    0x40863e
41b33f:	c7 05 8c e5 42 00 02 	movl   $0x2,0x42e58c
41b346:	00 00 00
41b349:	c7 05 88 e5 42 00 ac 	movl   $0x4039ac,0x42e588
41b350:	39 40 00
41b353:	e9 e6 d2 fe ff       	jmp    0x40863e
41b358:	c7 05 8c e5 42 00 01 	movl   $0x1,0x42e58c
41b35f:	00 00 00
41b362:	c7 05 88 e5 42 00 98 	movl   $0x403998,0x42e588
41b369:	39 40 00
41b36c:	e9 cd d2 fe ff       	jmp    0x40863e
41b371:	ba e0 37 40 00       	mov    $0x4037e0,%edx
41b376:	8b cf                	mov    %edi,%ecx
41b378:	2b d6                	sub    %esi,%edx
41b37a:	8d 81 f6 ff ff 7f    	lea    0x7ffffff6(%ecx),%eax
41b380:	85 c0                	test   %eax,%eax
41b382:	74 14                	je     0x41b398
41b384:	0f b7 04 32          	movzwl (%edx,%esi,1),%eax
41b388:	66 85 c0             	test   %ax,%ax
41b38b:	74 0b                	je     0x41b398
41b38d:	66 89 06             	mov    %ax,(%esi)
41b390:	83 c6 02             	add    $0x2,%esi
41b393:	83 e9 01             	sub    $0x1,%ecx
41b396:	75 e2                	jne    0x41b37a
41b398:	85 c9                	test   %ecx,%ecx
41b39a:	75 03                	jne    0x41b39f
41b39c:	83 ee 02             	sub    $0x2,%esi
41b39f:	33 c0                	xor    %eax,%eax
41b3a1:	66 89 06             	mov    %ax,(%esi)
41b3a4:	e9 e2 d2 fe ff       	jmp    0x40868b
41b3a9:	ba c0 39 40 00       	mov    $0x4039c0,%edx
41b3ae:	8b ce                	mov    %esi,%ecx
41b3b0:	2b d7                	sub    %edi,%edx
41b3b2:	8d 81 de ff ff 7f    	lea    0x7fffffde(%ecx),%eax
41b3b8:	85 c0                	test   %eax,%eax
41b3ba:	74 14                	je     0x41b3d0
41b3bc:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b3c0:	66 85 c0             	test   %ax,%ax
41b3c3:	74 0b                	je     0x41b3d0
41b3c5:	66 89 07             	mov    %ax,(%edi)
41b3c8:	83 c7 02             	add    $0x2,%edi
41b3cb:	83 e9 01             	sub    $0x1,%ecx
41b3ce:	75 e2                	jne    0x41b3b2
41b3d0:	85 c9                	test   %ecx,%ecx
41b3d2:	75 03                	jne    0x41b3d7
41b3d4:	83 ef 02             	sub    $0x2,%edi
41b3d7:	33 c0                	xor    %eax,%eax
41b3d9:	66 89 07             	mov    %ax,(%edi)
41b3dc:	e9 c5 d2 fe ff       	jmp    0x4086a6
41b3e1:	ba c8 39 40 00       	mov    $0x4039c8,%edx
41b3e6:	8b ce                	mov    %esi,%ecx
41b3e8:	2b d7                	sub    %edi,%edx
41b3ea:	8d 81 de ff ff 7f    	lea    0x7fffffde(%ecx),%eax
41b3f0:	85 c0                	test   %eax,%eax
41b3f2:	74 14                	je     0x41b408
41b3f4:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b3f8:	66 85 c0             	test   %ax,%ax
41b3fb:	74 0b                	je     0x41b408
41b3fd:	66 89 07             	mov    %ax,(%edi)
41b400:	83 c7 02             	add    $0x2,%edi
41b403:	83 e9 01             	sub    $0x1,%ecx
41b406:	75 e2                	jne    0x41b3ea
41b408:	85 c9                	test   %ecx,%ecx
41b40a:	75 03                	jne    0x41b40f
41b40c:	83 ef 02             	sub    $0x2,%edi
41b40f:	33 c0                	xor    %eax,%eax
41b411:	66 89 07             	mov    %ax,(%edi)
41b414:	e9 a5 d2 fe ff       	jmp    0x4086be
41b419:	ba d0 39 40 00       	mov    $0x4039d0,%edx
41b41e:	8b ce                	mov    %esi,%ecx
41b420:	2b d7                	sub    %edi,%edx
41b422:	8d 81 de ff ff 7f    	lea    0x7fffffde(%ecx),%eax
41b428:	85 c0                	test   %eax,%eax
41b42a:	74 14                	je     0x41b440
41b42c:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b430:	66 85 c0             	test   %ax,%ax
41b433:	74 0b                	je     0x41b440
41b435:	66 89 07             	mov    %ax,(%edi)
41b438:	83 c7 02             	add    $0x2,%edi
41b43b:	83 e9 01             	sub    $0x1,%ecx
41b43e:	75 e2                	jne    0x41b422
41b440:	85 c9                	test   %ecx,%ecx
41b442:	75 03                	jne    0x41b447
41b444:	83 ef 02             	sub    $0x2,%edi
41b447:	33 c0                	xor    %eax,%eax
41b449:	66 89 07             	mov    %ax,(%edi)
41b44c:	e9 85 d2 fe ff       	jmp    0x4086d6
41b451:	ba d8 39 40 00       	mov    $0x4039d8,%edx
41b456:	8b ce                	mov    %esi,%ecx
41b458:	2b d7                	sub    %edi,%edx
41b45a:	8d 81 de ff ff 7f    	lea    0x7fffffde(%ecx),%eax
41b460:	85 c0                	test   %eax,%eax
41b462:	74 14                	je     0x41b478
41b464:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b468:	66 85 c0             	test   %ax,%ax
41b46b:	74 0b                	je     0x41b478
41b46d:	66 89 07             	mov    %ax,(%edi)
41b470:	83 c7 02             	add    $0x2,%edi
41b473:	83 e9 01             	sub    $0x1,%ecx
41b476:	75 e2                	jne    0x41b45a
41b478:	85 c9                	test   %ecx,%ecx
41b47a:	75 03                	jne    0x41b47f
41b47c:	83 ef 02             	sub    $0x2,%edi
41b47f:	33 c0                	xor    %eax,%eax
41b481:	66 89 07             	mov    %ax,(%edi)
41b484:	e9 65 d2 fe ff       	jmp    0x4086ee
41b489:	ba e0 39 40 00       	mov    $0x4039e0,%edx
41b48e:	8b ce                	mov    %esi,%ecx
41b490:	2b d7                	sub    %edi,%edx
41b492:	8d 81 de ff ff 7f    	lea    0x7fffffde(%ecx),%eax
41b498:	85 c0                	test   %eax,%eax
41b49a:	74 14                	je     0x41b4b0
41b49c:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b4a0:	66 85 c0             	test   %ax,%ax
41b4a3:	74 0b                	je     0x41b4b0
41b4a5:	66 89 07             	mov    %ax,(%edi)
41b4a8:	83 c7 02             	add    $0x2,%edi
41b4ab:	83 e9 01             	sub    $0x1,%ecx
41b4ae:	75 e2                	jne    0x41b492
41b4b0:	85 c9                	test   %ecx,%ecx
41b4b2:	75 03                	jne    0x41b4b7
41b4b4:	83 ef 02             	sub    $0x2,%edi
41b4b7:	33 c0                	xor    %eax,%eax
41b4b9:	66 89 07             	mov    %ax,(%edi)
41b4bc:	e9 45 d2 fe ff       	jmp    0x408706
41b4c1:	ba e8 39 40 00       	mov    $0x4039e8,%edx
41b4c6:	8b ce                	mov    %esi,%ecx
41b4c8:	2b d7                	sub    %edi,%edx
41b4ca:	8d 81 de ff ff 7f    	lea    0x7fffffde(%ecx),%eax
41b4d0:	85 c0                	test   %eax,%eax
41b4d2:	74 14                	je     0x41b4e8
41b4d4:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b4d8:	66 85 c0             	test   %ax,%ax
41b4db:	74 0b                	je     0x41b4e8
41b4dd:	66 89 07             	mov    %ax,(%edi)
41b4e0:	83 c7 02             	add    $0x2,%edi
41b4e3:	83 e9 01             	sub    $0x1,%ecx
41b4e6:	75 e2                	jne    0x41b4ca
41b4e8:	85 c9                	test   %ecx,%ecx
41b4ea:	75 03                	jne    0x41b4ef
41b4ec:	83 ef 02             	sub    $0x2,%edi
41b4ef:	33 c0                	xor    %eax,%eax
41b4f1:	66 89 07             	mov    %ax,(%edi)
41b4f4:	e9 25 d2 fe ff       	jmp    0x40871e
41b4f9:	b9 f0 39 40 00       	mov    $0x4039f0,%ecx
41b4fe:	2b cf                	sub    %edi,%ecx
41b500:	8d 86 de ff ff 7f    	lea    0x7fffffde(%esi),%eax
41b506:	85 c0                	test   %eax,%eax
41b508:	74 14                	je     0x41b51e
41b50a:	0f b7 04 39          	movzwl (%ecx,%edi,1),%eax
41b50e:	66 85 c0             	test   %ax,%ax
41b511:	74 0b                	je     0x41b51e
41b513:	66 89 07             	mov    %ax,(%edi)
41b516:	83 c7 02             	add    $0x2,%edi
41b519:	83 ee 01             	sub    $0x1,%esi
41b51c:	75 e2                	jne    0x41b500
41b51e:	85 f6                	test   %esi,%esi
41b520:	75 03                	jne    0x41b525
41b522:	83 ef 02             	sub    $0x2,%edi
41b525:	33 c0                	xor    %eax,%eax
41b527:	66 89 07             	mov    %ax,(%edi)
41b52a:	e9 07 d2 fe ff       	jmp    0x408736
41b52f:	ba 34 24 40 00       	mov    $0x402434,%edx
41b534:	8b cf                	mov    %edi,%ecx
41b536:	2b d6                	sub    %esi,%edx
41b538:	8d 81 f6 ff ff 7f    	lea    0x7ffffff6(%ecx),%eax
41b53e:	85 c0                	test   %eax,%eax
41b540:	74 14                	je     0x41b556
41b542:	0f b7 04 32          	movzwl (%edx,%esi,1),%eax
41b546:	66 85 c0             	test   %ax,%ax
41b549:	74 0b                	je     0x41b556
41b54b:	66 89 06             	mov    %ax,(%esi)
41b54e:	83 c6 02             	add    $0x2,%esi
41b551:	83 e9 01             	sub    $0x1,%ecx
41b554:	75 e2                	jne    0x41b538
41b556:	85 c9                	test   %ecx,%ecx
41b558:	75 03                	jne    0x41b55d
41b55a:	83 ee 02             	sub    $0x2,%esi
41b55d:	33 c0                	xor    %eax,%eax
41b55f:	66 89 06             	mov    %ax,(%esi)
41b562:	e9 ea d1 fe ff       	jmp    0x408751
41b567:	b9 f8 39 40 00       	mov    $0x4039f8,%ecx
41b56c:	2b ce                	sub    %esi,%ecx
41b56e:	8d 87 f6 ff ff 7f    	lea    0x7ffffff6(%edi),%eax
41b574:	85 c0                	test   %eax,%eax
41b576:	74 14                	je     0x41b58c
41b578:	0f b7 04 31          	movzwl (%ecx,%esi,1),%eax
41b57c:	66 85 c0             	test   %ax,%ax
41b57f:	74 0b                	je     0x41b58c
41b581:	66 89 06             	mov    %ax,(%esi)
41b584:	83 c6 02             	add    $0x2,%esi
41b587:	83 ef 01             	sub    $0x1,%edi
41b58a:	75 e2                	jne    0x41b56e
41b58c:	85 ff                	test   %edi,%edi
41b58e:	75 03                	jne    0x41b593
41b590:	83 ee 02             	sub    $0x2,%esi
41b593:	33 c0                	xor    %eax,%eax
41b595:	66 89 06             	mov    %ax,(%esi)
41b598:	e9 cc d1 fe ff       	jmp    0x408769
41b59d:	56                   	push   %esi
41b59e:	57                   	push   %edi
41b59f:	8d 3c 81             	lea    (%ecx,%eax,4),%edi
41b5a2:	8b ca                	mov    %edx,%ecx
41b5a4:	8d 77 04             	lea    0x4(%edi),%esi
41b5a7:	2b c8                	sub    %eax,%ecx
41b5a9:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41b5ab:	5f                   	pop    %edi
41b5ac:	5e                   	pop    %esi
41b5ad:	e9 c2 d5 fe ff       	jmp    0x408b74
41b5b2:	56                   	push   %esi
41b5b3:	6a 00                	push   $0x0
41b5b5:	ff 15 34 a1 44 00    	call   *0x44a134
41b5bb:	50                   	push   %eax
41b5bc:	ff 15 3c a1 44 00    	call   *0x44a13c
41b5c2:	6a 00                	push   $0x0
41b5c4:	68 3a 23 00 00       	push   $0x233a
41b5c9:	e8 16 c3 fe ff       	call   0x4078e4
41b5ce:	59                   	pop    %ecx
41b5cf:	59                   	pop    %ecx
41b5d0:	33 c0                	xor    %eax,%eax
41b5d2:	5e                   	pop    %esi
41b5d3:	c3                   	ret
41b5d4:	66 39 46 02          	cmp    %ax,0x2(%esi)
41b5d8:	0f 85 0c d6 fe ff    	jne    0x408bea
41b5de:	b8 c9 23 00 40       	mov    $0x400023c9,%eax
41b5e3:	e9 7f d8 fe ff       	jmp    0x408e67
41b5e8:	8d 41 fe             	lea    -0x2(%ecx),%eax
41b5eb:	e9 5f d6 fe ff       	jmp    0x408c4f
41b5f0:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b5f6:	e9 7b d6 fe ff       	jmp    0x408c76
41b5fb:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b601:	e9 85 d6 fe ff       	jmp    0x408c8b
41b606:	66 89 5d da          	mov    %bx,-0x26(%ebp)
41b60a:	e9 c0 d6 fe ff       	jmp    0x408ccf
41b60f:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b615:	e9 ca d6 fe ff       	jmp    0x408ce4
41b61a:	ff 15 80 a0 44 00    	call   *0x44a080
41b620:	8b f0                	mov    %eax,%esi
41b622:	eb 03                	jmp    0x41b627
41b624:	6a 03                	push   $0x3
41b626:	5e                   	pop    %esi
41b627:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b62d:	e8 b4 ab ff ff       	call   0x4161e6
41b632:	6a fe                	push   $0xfffffffe
41b634:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b637:	50                   	push   %eax
41b638:	68 b4 e0 42 00       	push   $0x42e0b4
41b63d:	e8 69 c9 ff ff       	call   0x417fab
41b642:	83 c4 0c             	add    $0xc,%esp
41b645:	8b c6                	mov    %esi,%eax
41b647:	e9 1b d8 fe ff       	jmp    0x408e67
41b64c:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b652:	e8 8f ab ff ff       	call   0x4161e6
41b657:	6a fe                	push   $0xfffffffe
41b659:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b65c:	50                   	push   %eax
41b65d:	68 b4 e0 42 00       	push   $0x42e0b4
41b662:	e8 44 c9 ff ff       	call   0x417fab
41b667:	83 c4 0c             	add    $0xc,%esp
41b66a:	b8 ce 00 00 00       	mov    $0xce,%eax
41b66f:	e9 f3 d7 fe ff       	jmp    0x408e67
41b674:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b67a:	e9 95 d6 fe ff       	jmp    0x408d14
41b67f:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b685:	e9 9f d6 fe ff       	jmp    0x408d29
41b68a:	8d 95 bc fd ff ff    	lea    -0x244(%ebp),%edx
41b690:	e9 a8 d6 fe ff       	jmp    0x408d3d
41b695:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b69b:	e9 b8 d6 fe ff       	jmp    0x408d58
41b6a0:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b6a6:	e9 e7 d6 fe ff       	jmp    0x408d92
41b6ab:	ff 15 80 a0 44 00    	call   *0x44a080
41b6b1:	8b f0                	mov    %eax,%esi
41b6b3:	83 fe 02             	cmp    $0x2,%esi
41b6b6:	0f 84 e6 d6 fe ff    	je     0x408da2
41b6bc:	83 fe 03             	cmp    $0x3,%esi
41b6bf:	0f 84 dd d6 fe ff    	je     0x408da2
41b6c5:	83 fe 7b             	cmp    $0x7b,%esi
41b6c8:	0f 85 59 ff ff ff    	jne    0x41b627
41b6ce:	e9 cf d6 fe ff       	jmp    0x408da2
41b6d3:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b6d9:	e9 d8 d6 fe ff       	jmp    0x408db6
41b6de:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b6e4:	e9 f6 d6 fe ff       	jmp    0x408ddf
41b6e9:	ff 15 80 a0 44 00    	call   *0x44a080
41b6ef:	8b f0                	mov    %eax,%esi
41b6f1:	83 fe 02             	cmp    $0x2,%esi
41b6f4:	0f 85 2d ff ff ff    	jne    0x41b627
41b6fa:	e9 25 ff ff ff       	jmp    0x41b624
41b6ff:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b705:	e8 dc aa ff ff       	call   0x4161e6
41b70a:	6a fe                	push   $0xfffffffe
41b70c:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b70f:	50                   	push   %eax
41b710:	68 b4 e0 42 00       	push   $0x42e0b4
41b715:	e8 91 c8 ff ff       	call   0x417fab
41b71a:	83 c4 0c             	add    $0xc,%esp
41b71d:	b8 0b 01 00 00       	mov    $0x10b,%eax
41b722:	e9 40 d7 fe ff       	jmp    0x408e67
41b727:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b72d:	e8 b4 aa ff ff       	call   0x4161e6
41b732:	6a fe                	push   $0xfffffffe
41b734:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b737:	50                   	push   %eax
41b738:	68 b4 e0 42 00       	push   $0x42e0b4