40c33e:	84 d2                	test   %dl,%dl
40c340:	74 08                	je     0x40c34a
40c342:	83 c4 f0             	add    $0xfffffff0,%esp
40c345:	e8 ce 78 ff ff       	call   0x403c18
40c34a:	8b f1                	mov    %ecx,%esi
40c34c:	8b da                	mov    %edx,%ebx
40c34e:	8b f8                	mov    %eax,%edi
40c350:	33 c0                	xor    %eax,%eax
40c352:	55                   	push   %ebp
40c353:	68 a0 c3 40 00       	push   $0x40c3a0
40c358:	64 ff 30             	push   %fs:(%eax)
40c35b:	64 89 20             	mov    %esp,%fs:(%eax)
40c35e:	8d 45 fc             	lea    -0x4(%ebp),%eax
40c361:	50                   	push   %eax
40c362:	8d 55 f8             	lea    -0x8(%ebp),%edx
40c365:	8b c6                	mov    %esi,%eax
40c367:	e8 98 a2 ff ff       	call   0x406604
40c36c:	8b 45 f8             	mov    -0x8(%ebp),%eax
40c36f:	8b 55 0c             	mov    0xc(%ebp),%edx
40c372:	8b 4d 08             	mov    0x8(%ebp),%ecx
40c375:	e8 52 d5 ff ff       	call   0x4098cc
40c37a:	8b 55 fc             	mov    -0x4(%ebp),%edx
40c37d:	8d 47 04             	lea    0x4(%edi),%eax
40c380:	e8 ef 83 ff ff       	call   0x404774
40c385:	33 c0                	xor    %eax,%eax
40c387:	5a                   	pop    %edx
40c388:	59                   	pop    %ecx
40c389:	59                   	pop    %ecx
40c38a:	64 89 10             	mov    %edx,%fs:(%eax)
40c38d:	68 a7 c3 40 00       	push   $0x40c3a7
40c392:	8d 45 f8             	lea    -0x8(%ebp),%eax
40c395:	ba 02 00 00 00       	mov    $0x2,%edx
40c39a:	e8 a5 83 ff ff       	call   0x404744
40c39f:	c3                   	ret
40c3a0:	e9 e3 7c ff ff       	jmp    0x404088
40c3a5:	eb eb                	jmp    0x40c392
40c3a7:	8b c7                	mov    %edi,%eax
40c3a9:	84 db                	test   %bl,%bl
40c3ab:	74 0f                	je     0x40c3bc
40c3ad:	e8 be 78 ff ff       	call   0x403c70
40c3b2:	64 8f 05 00 00 00 00 	pop    %fs:0x0
40c3b9:	83 c4 0c             	add    $0xc,%esp
40c3bc:	8b c7                	mov    %edi,%eax
40c3be:	5f                   	pop    %edi
40c3bf:	5e                   	pop    %esi
40c3c0:	5b                   	pop    %ebx
40c3c1:	59                   	pop    %ecx
40c3c2:	59                   	pop    %ecx
40c3c3:	5d                   	pop    %ebp
40c3c4:	c2 08 00             	ret    $0x8
40c3c7:	90                   	nop
40c3c8:	55                   	push   %ebp
40c3c9:	8b ec                	mov    %esp,%ebp
40c3cb:	53                   	push   %ebx
40c3cc:	56                   	push   %esi
40c3cd:	57                   	push   %edi
40c3ce:	84 d2                	test   %dl,%dl
40c3d0:	74 08                	je     0x40c3da
40c3d2:	83 c4 f0             	add    $0xfffffff0,%esp
40c3d5:	e8 3e 78 ff ff       	call   0x403c18
40c3da:	8b f1                	mov    %ecx,%esi
40c3dc:	8b da                	mov    %edx,%ebx
40c3de:	8b f8                	mov    %eax,%edi
40c3e0:	8d 47 04             	lea    0x4(%edi),%eax
40c3e3:	8b d6                	mov    %esi,%edx
40c3e5:	e8 8a 83 ff ff       	call   0x404774
40c3ea:	8b 45 08             	mov    0x8(%ebp),%eax
40c3ed:	89 47 08             	mov    %eax,0x8(%edi)
40c3f0:	8b c7                	mov    %edi,%eax
40c3f2:	84 db                	test   %bl,%bl
40c3f4:	74 0f                	je     0x40c405
40c3f6:	e8 75 78 ff ff       	call   0x403c70
40c3fb:	64 8f 05 00 00 00 00 	pop    %fs:0x0
40c402:	83 c4 0c             	add    $0xc,%esp
40c405:	8b c7                	mov    %edi,%eax
40c407:	5f                   	pop    %edi
40c408:	5e                   	pop    %esi
40c409:	5b                   	pop    %ebx
40c40a:	5d                   	pop    %ebp
40c40b:	c2 04 00             	ret    $0x4
40c40e:	8b c0                	mov    %eax,%eax
40c410:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
40c414:	74 05                	je     0x40c41b
40c416:	e8 8d 74 ff ff       	call   0x4038a8
40c41b:	c3                   	ret
40c41c:	20 c4                	and    %al,%ah
40c41e:	40                   	inc    %eax
40c41f:	00 0e                	add    %cl,(%esi)
40c421:	09 54 45 72          	or     %edx,0x72(%ebp,%eax,2)
40c425:	72 6f                	jb     0x40c496
40c427:	72 52                	jb     0x40c47b
40c429:	65 63 08             	arpl   %ecx,%gs:(%eax)
40c42c:	00 00                	add    %al,(%eax)
40c42e:	00 01                	add    %al,(%ecx)
40c430:	00 00                	add    %al,(%eax)
40c432:	00 94 10 40 00 04 00 	add    %dl,0x40040(%eax,%edx,1)
40c439:	00 00                	add    %al,(%eax)
40c43b:	90                   	nop
40c43c:	53                   	push   %ebx
40c43d:	56                   	push   %esi
40c43e:	83 c4 f8             	add    $0xfffffff8,%esp
40c441:	33 db                	xor    %ebx,%ebx
40c443:	e8 74 6a ff ff       	call   0x402ebc
40c448:	8b f0                	mov    %eax,%esi
40c44a:	eb 01                	jmp    0x40c44d
40c44c:	43                   	inc    %ebx
40c44d:	83 fb 06             	cmp    $0x6,%ebx
40c450:	7f 09                	jg     0x40c45b
40c452:	3b 34 dd 20 09 46 00 	cmp    0x460920(,%ebx,8),%esi
40c459:	75 f1                	jne    0x40c44c
40c45b:	83 fb 06             	cmp    $0x6,%ebx
40c45e:	7f 15                	jg     0x40c475
40c460:	8b 0c dd 24 09 46 00 	mov    0x460924(,%ebx,8),%ecx
40c467:	b2 01                	mov    $0x1,%dl
40c469:	a1 60 7b 40 00       	mov    0x407b60,%eax
40c46e:	e8 c9 fd ff ff       	call   0x40c23c
40c473:	eb 1d                	jmp    0x40c492
40c475:	89 34 24             	mov    %esi,(%esp)
40c478:	c6 44 24 04 00       	movb   $0x0,0x4(%esp)
40c47d:	54                   	push   %esp
40c47e:	6a 00                	push   $0x0
40c480:	8b 0d 78 d4 46 00    	mov    0x46d478,%ecx
40c486:	b2 01                	mov    $0x1,%dl
40c488:	a1 60 7b 40 00       	mov    0x407b60,%eax
40c48d:	e8 a2 fe ff ff       	call   0x40c334
40c492:	89 70 0c             	mov    %esi,0xc(%eax)
40c495:	59                   	pop    %ecx
40c496:	5a                   	pop    %edx
40c497:	5e                   	pop    %esi
40c498:	5b                   	pop    %ebx
40c499:	c3                   	ret
40c49a:	8b c0                	mov    %eax,%eax
40c49c:	a0 c4 40 00 0e       	mov    0xe0040c4,%al
40c4a1:	0a 54 45 78          	or     0x78(%ebp,%eax,2),%dl
40c4a5:	63 65 70             	arpl   %esp,0x70(%ebp)
40c4a8:	74 52                	je     0x40c4fc
40c4aa:	65 63 08             	arpl   %ecx,%gs:(%eax)
40c4ad:	00 00                	add    %al,(%eax)
40c4af:	00 01                	add    %al,(%ecx)
40c4b1:	00 00                	add    %al,(%eax)
40c4b3:	00 94 10 40 00 04 00 	add    %dl,0x40040(%eax,%edx,1)
40c4ba:	00 00                	add    %al,(%eax)
40c4bc:	53                   	push   %ebx
40c4bd:	8b da                	mov    %edx,%ebx
40c4bf:	8b d0                	mov    %eax,%edx
40c4c1:	fe ca                	dec    %dl
40c4c3:	74 0c                	je     0x40c4d1
40c4c5:	fe ca                	dec    %dl
40c4c7:	74 10                	je     0x40c4d9
40c4c9:	4a                   	dec    %edx
40c4ca:	80 ea 16             	sub    $0x16,%dl
40c4cd:	72 12                	jb     0x40c4e1
40c4cf:	eb 2a                	jmp    0x40c4fb
40c4d1:	8b 15 1c 09 47 00    	mov    0x47091c,%edx
40c4d7:	eb 29                	jmp    0x40c502
40c4d9:	8b 15 20 09 47 00    	mov    0x470920,%edx
40c4df:	eb 21                	jmp    0x40c502
40c4e1:	0f b6 c0             	movzbl %al,%eax
40c4e4:	8d 04 c5 40 09 46 00 	lea    0x460940(,%eax,8),%eax
40c4eb:	8b 48 04             	mov    0x4(%eax),%ecx
40c4ee:	8b 00                	mov    (%eax),%eax
40c4f0:	b2 01                	mov    $0x1,%dl
40c4f2:	e8 45 fd ff ff       	call   0x40c23c
40c4f7:	8b d0                	mov    %eax,%edx
40c4f9:	eb 07                	jmp    0x40c502
40c4fb:	e8 3c ff ff ff       	call   0x40c43c
40c500:	8b d0                	mov    %eax,%edx
40c502:	53                   	push   %ebx
40c503:	8b c2                	mov    %edx,%eax
40c505:	e9 5e 7c ff ff       	jmp    0x404168
40c50a:	5b                   	pop    %ebx
40c50b:	c3                   	ret
40c50c:	55                   	push   %ebp
40c50d:	8b ec                	mov    %esp,%ebp
40c50f:	83 c4 e0             	add    $0xffffffe0,%esp
40c512:	53                   	push   %ebx
40c513:	56                   	push   %esi
40c514:	57                   	push   %edi
40c515:	33 db                	xor    %ebx,%ebx
40c517:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40c51a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40c51d:	8b f9                	mov    %ecx,%edi
40c51f:	8b f2                	mov    %edx,%esi
40c521:	8b d8                	mov    %eax,%ebx
40c523:	33 c0                	xor    %eax,%eax
40c525:	55                   	push   %ebp
40c526:	68 a8 c5 40 00       	push   $0x40c5a8
40c52b:	64 ff 30             	push   %fs:(%eax)
40c52e:	64 89 20             	mov    %esp,%fs:(%eax)
40c531:	85 db                	test   %ebx,%ebx
40c533:	74 0c                	je     0x40c541
40c535:	8d 45 fc             	lea    -0x4(%ebp),%eax
40c538:	8b d3                	mov    %ebx,%edx
40c53a:	e8 79 82 ff ff       	call   0x4047b8
40c53f:	eb 0d                	jmp    0x40c54e
40c541:	8d 55 fc             	lea    -0x4(%ebp),%edx
40c544:	a1 bc d6 46 00       	mov    0x46d6bc,%eax
40c549:	e8 b6 a0 ff ff       	call   0x406604
40c54e:	8b 45 fc             	mov    -0x4(%ebp),%eax
40c551:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40c554:	c6 45 e8 0b          	movb   $0xb,-0x18(%ebp)
40c558:	89 75 ec             	mov    %esi,-0x14(%ebp)
40c55b:	c6 45 f0 0b          	movb   $0xb,-0x10(%ebp)
40c55f:	89 7d f4             	mov    %edi,-0xc(%ebp)
40c562:	c6 45 f8 00          	movb   $0x0,-0x8(%ebp)
40c566:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40c569:	50                   	push   %eax
40c56a:	6a 02                	push   $0x2
40c56c:	8d 55 e0             	lea    -0x20(%ebp),%edx
40c56f:	a1 28 d7 46 00       	mov    0x46d728,%eax
40c574:	e8 8b a0 ff ff       	call   0x406604
40c579:	8b 4d e0             	mov    -0x20(%ebp),%ecx
40c57c:	b2 01                	mov    $0x1,%dl
40c57e:	a1 68 82 40 00       	mov    0x408268,%eax
40c583:	e8 f0 fc ff ff       	call   0x40c278
40c588:	8b d8                	mov    %eax,%ebx
40c58a:	33 c0                	xor    %eax,%eax
40c58c:	5a                   	pop    %edx
40c58d:	59                   	pop    %ecx
40c58e:	59                   	pop    %ecx
40c58f:	64 89 10             	mov    %edx,%fs:(%eax)
40c592:	68 af c5 40 00       	push   $0x40c5af
40c597:	8d 45 e0             	lea    -0x20(%ebp),%eax
40c59a:	e8 81 81 ff ff       	call   0x404720
40c59f:	8d 45 fc             	lea    -0x4(%ebp),%eax
40c5a2:	e8 79 81 ff ff       	call   0x404720
40c5a7:	c3                   	ret
40c5a8:	e9 db 7a ff ff       	jmp    0x404088
40c5ad:	eb e8                	jmp    0x40c597
40c5af:	8b c3                	mov    %ebx,%eax
40c5b1:	5f                   	pop    %edi
40c5b2:	5e                   	pop    %esi
40c5b3:	5b                   	pop    %ebx
40c5b4:	8b e5                	mov    %ebp,%esp
40c5b6:	5d                   	pop    %ebp
40c5b7:	c3                   	ret
40c5b8:	89 cc                	mov    %ecx,%esp
40c5ba:	89 14 24             	mov    %edx,(%esp)
40c5bd:	8b 6d 00             	mov    0x0(%ebp),%ebp
40c5c0:	e9 a3 7b ff ff       	jmp    0x404168
40c5c5:	c3                   	ret
40c5c6:	8b c0                	mov    %eax,%eax
40c5c8:	55                   	push   %ebp
40c5c9:	8b ec                	mov    %esp,%ebp
40c5cb:	e8 3c ff ff ff       	call   0x40c50c
40c5d0:	8d 4d 08             	lea    0x8(%ebp),%ecx
40c5d3:	83 c1 04             	add    $0x4,%ecx
40c5d6:	8b 55 08             	mov    0x8(%ebp),%edx
40c5d9:	e8 da ff ff ff       	call   0x40c5b8
40c5de:	5d                   	pop    %ebp
40c5df:	c2 04 00             	ret    $0x4
40c5e2:	8b c0                	mov    %eax,%eax
40c5e4:	8b 0d a0 d4 46 00    	mov    0x46d4a0,%ecx
40c5ea:	b2 01                	mov    $0x1,%dl
40c5ec:	a1 c8 82 40 00       	mov    0x4082c8,%eax
40c5f1:	e8 02 fd ff ff       	call   0x40c2f8
40c5f6:	e8 6d 7b ff ff       	call   0x404168
40c5fb:	c3                   	ret
40c5fc:	8b 00                	mov    (%eax),%eax
40c5fe:	3d 92 00 00 c0       	cmp    $0xc0000092,%eax
40c603:	7f 2c                	jg     0x40c631
40c605:	74 59                	je     0x40c660
40c607:	3d 8e 00 00 c0       	cmp    $0xc000008e,%eax
40c60c:	7f 15                	jg     0x40c623
40c60e:	74 53                	je     0x40c663
40c610:	2d 05 00 00 c0       	sub    $0xc0000005,%eax
40c615:	74 55                	je     0x40c66c
40c617:	2d 87 00 00 00       	sub    $0x87,%eax
40c61c:	74 3c                	je     0x40c65a
40c61e:	48                   	dec    %eax
40c61f:	74 48                	je     0x40c669
40c621:	eb 55                	jmp    0x40c678
40c623:	05 71 ff ff 3f       	add    $0x3fffff71,%eax
40c628:	83 e8 02             	sub    $0x2,%eax
40c62b:	72 33                	jb     0x40c660
40c62d:	74 37                	je     0x40c666
40c62f:	eb 47                	jmp    0x40c678
40c631:	3d 96 00 00 c0       	cmp    $0xc0000096,%eax
40c636:	7f 11                	jg     0x40c649
40c638:	74 35                	je     0x40c66f
40c63a:	2d 93 00 00 c0       	sub    $0xc0000093,%eax
40c63f:	74 28                	je     0x40c669
40c641:	48                   	dec    %eax
40c642:	74 13                	je     0x40c657
40c644:	48                   	dec    %eax
40c645:	74 16                	je     0x40c65d
40c647:	eb 2f                	jmp    0x40c678
40c649:	2d fd 00 00 c0       	sub    $0xc00000fd,%eax
40c64e:	74 25                	je     0x40c675
40c650:	83 e8 3d             	sub    $0x3d,%eax
40c653:	74 1d                	je     0x40c672
40c655:	eb 21                	jmp    0x40c678
40c657:	b0 03                	mov    $0x3,%al
40c659:	c3                   	ret
40c65a:	b0 04                	mov    $0x4,%al
40c65c:	c3                   	ret
40c65d:	b0 05                	mov    $0x5,%al
40c65f:	c3                   	ret
40c660:	b0 06                	mov    $0x6,%al
40c662:	c3                   	ret
40c663:	b0 07                	mov    $0x7,%al
40c665:	c3                   	ret
40c666:	b0 08                	mov    $0x8,%al
40c668:	c3                   	ret
40c669:	b0 09                	mov    $0x9,%al
40c66b:	c3                   	ret
40c66c:	b0 0b                	mov    $0xb,%al
40c66e:	c3                   	ret
40c66f:	b0 0c                	mov    $0xc,%al
40c671:	c3                   	ret
40c672:	b0 0d                	mov    $0xd,%al
40c674:	c3                   	ret
40c675:	b0 0e                	mov    $0xe,%al
40c677:	c3                   	ret
40c678:	b0 16                	mov    $0x16,%al
40c67a:	c3                   	ret
40c67b:	90                   	nop
40c67c:	53                   	push   %ebx
40c67d:	8b d8                	mov    %eax,%ebx
40c67f:	8b c3                	mov    %ebx,%eax
40c681:	e8 76 ff ff ff       	call   0x40c5fc
40c686:	0f b6 c0             	movzbl %al,%eax
40c689:	8b 04 c5 40 09 46 00 	mov    0x460940(,%eax,8),%eax
40c690:	5b                   	pop    %ebx
40c691:	c3                   	ret
40c692:	8b c0                	mov    %eax,%eax
40c694:	55                   	push   %ebp
40c695:	8b ec                	mov    %esp,%ebp
40c697:	81 c4 90 fe ff ff    	add    $0xfffffe90,%esp
40c69d:	53                   	push   %ebx
40c69e:	56                   	push   %esi
40c69f:	33 c0                	xor    %eax,%eax
40c6a1:	89 85 90 fe ff ff    	mov    %eax,-0x170(%ebp)
40c6a7:	89 85 b4 fe ff ff    	mov    %eax,-0x14c(%ebp)
40c6ad:	89 85 ac fe ff ff    	mov    %eax,-0x154(%ebp)
40c6b3:	89 85 b0 fe ff ff    	mov    %eax,-0x150(%ebp)
40c6b9:	89 45 fc             	mov    %eax,-0x4(%ebp)
40c6bc:	33 c0                	xor    %eax,%eax
40c6be:	55                   	push   %ebp
40c6bf:	68 4f c8 40 00       	push   $0x40c84f
40c6c4:	64 ff 30             	push   %fs:(%eax)
40c6c7:	64 89 20             	mov    %esp,%fs:(%eax)
40c6ca:	8b 45 08             	mov    0x8(%ebp),%eax
40c6cd:	8b 58 fc             	mov    -0x4(%eax),%ebx
40c6d0:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
40c6d4:	75 0f                	jne    0x40c6e5
40c6d6:	8d 55 fc             	lea    -0x4(%ebp),%edx
40c6d9:	a1 10 d8 46 00       	mov    0x46d810,%eax
40c6de:	e8 21 9f ff ff       	call   0x406604
40c6e3:	eb 0d                	jmp    0x40c6f2