41b3af:	ff 15 24 40 42 00    	call   *0x424024
41b3b5:	8b f0                	mov    %eax,%esi
41b3b7:	85 f6                	test   %esi,%esi
41b3b9:	75 04                	jne    0x41b3bf
41b3bb:	33 ff                	xor    %edi,%edi
41b3bd:	eb 37                	jmp    0x41b3f6
41b3bf:	53                   	push   %ebx
41b3c0:	56                   	push   %esi
41b3c1:	e8 ae ff ff ff       	call   0x41b374
41b3c6:	8b d8                	mov    %eax,%ebx
41b3c8:	2b de                	sub    %esi,%ebx
41b3ca:	83 e3 fe             	and    $0xfffffffe,%ebx
41b3cd:	53                   	push   %ebx
41b3ce:	e8 93 87 ff ff       	call   0x413b66
41b3d3:	8b f8                	mov    %eax,%edi
41b3d5:	59                   	pop    %ecx
41b3d6:	59                   	pop    %ecx
41b3d7:	85 ff                	test   %edi,%edi
41b3d9:	74 0b                	je     0x41b3e6
41b3db:	53                   	push   %ebx
41b3dc:	56                   	push   %esi
41b3dd:	57                   	push   %edi
41b3de:	e8 8d d5 fe ff       	call   0x408970
41b3e3:	83 c4 0c             	add    $0xc,%esp
41b3e6:	6a 00                	push   $0x0
41b3e8:	e8 1e 7d ff ff       	call   0x41310b
41b3ed:	59                   	pop    %ecx
41b3ee:	56                   	push   %esi
41b3ef:	ff 15 20 40 42 00    	call   *0x424020
41b3f5:	5b                   	pop    %ebx
41b3f6:	8b c7                	mov    %edi,%eax
41b3f8:	5f                   	pop    %edi
41b3f9:	5e                   	pop    %esi
41b3fa:	c3                   	ret
41b3fb:	8b ff                	mov    %edi,%edi
41b3fd:	55                   	push   %ebp
41b3fe:	8b ec                	mov    %esp,%ebp
41b400:	51                   	push   %ecx
41b401:	64 a1 30 00 00 00    	mov    %fs:0x30,%eax
41b407:	56                   	push   %esi
41b408:	33 f6                	xor    %esi,%esi
41b40a:	89 75 fc             	mov    %esi,-0x4(%ebp)
41b40d:	8b 40 10             	mov    0x10(%eax),%eax
41b410:	39 70 08             	cmp    %esi,0x8(%eax)
41b413:	7c 0f                	jl     0x41b424
41b415:	8d 45 fc             	lea    -0x4(%ebp),%eax
41b418:	50                   	push   %eax
41b419:	e8 47 80 ff ff       	call   0x413465
41b41e:	83 7d fc 01          	cmpl   $0x1,-0x4(%ebp)
41b422:	74 03                	je     0x41b427
41b424:	33 f6                	xor    %esi,%esi
41b426:	46                   	inc    %esi
41b427:	8b c6                	mov    %esi,%eax
41b429:	5e                   	pop    %esi
41b42a:	c9                   	leave
41b42b:	c3                   	ret
41b42c:	8b ff                	mov    %edi,%edi
41b42e:	55                   	push   %ebp
41b42f:	8b ec                	mov    %esp,%ebp
41b431:	51                   	push   %ecx
41b432:	51                   	push   %ecx
41b433:	53                   	push   %ebx
41b434:	56                   	push   %esi
41b435:	6a 38                	push   $0x38
41b437:	6a 40                	push   $0x40
41b439:	e8 70 7c ff ff       	call   0x4130ae
41b43e:	8b f0                	mov    %eax,%esi
41b440:	33 db                	xor    %ebx,%ebx
41b442:	89 75 f8             	mov    %esi,-0x8(%ebp)
41b445:	59                   	pop    %ecx
41b446:	59                   	pop    %ecx
41b447:	85 f6                	test   %esi,%esi
41b449:	75 04                	jne    0x41b44f
41b44b:	8b f3                	mov    %ebx,%esi
41b44d:	eb 4b                	jmp    0x41b49a
41b44f:	8d 86 00 0e 00 00    	lea    0xe00(%esi),%eax
41b455:	3b f0                	cmp    %eax,%esi
41b457:	74 41                	je     0x41b49a
41b459:	57                   	push   %edi
41b45a:	8d 7e 20             	lea    0x20(%esi),%edi
41b45d:	8b f0                	mov    %eax,%esi
41b45f:	53                   	push   %ebx
41b460:	68 a0 0f 00 00       	push   $0xfa0
41b465:	8d 47 e0             	lea    -0x20(%edi),%eax
41b468:	50                   	push   %eax
41b469:	e8 24 82 ff ff       	call   0x413692
41b46e:	83 4f f8 ff          	orl    $0xffffffff,-0x8(%edi)
41b472:	80 67 0d f8          	andb   $0xf8,0xd(%edi)
41b476:	89 1f                	mov    %ebx,(%edi)
41b478:	8d 7f 38             	lea    0x38(%edi),%edi
41b47b:	89 5f cc             	mov    %ebx,-0x34(%edi)
41b47e:	8d 47 e0             	lea    -0x20(%edi),%eax
41b481:	c7 47 d0 00 00 0a 0a 	movl   $0xa0a0000,-0x30(%edi)
41b488:	c6 47 d4 0a          	movb   $0xa,-0x2c(%edi)
41b48c:	89 5f d6             	mov    %ebx,-0x2a(%edi)
41b48f:	88 5f da             	mov    %bl,-0x26(%edi)
41b492:	3b c6                	cmp    %esi,%eax
41b494:	75 c9                	jne    0x41b45f
41b496:	8b 75 f8             	mov    -0x8(%ebp),%esi
41b499:	5f                   	pop    %edi
41b49a:	53                   	push   %ebx
41b49b:	e8 6b 7c ff ff       	call   0x41310b
41b4a0:	59                   	pop    %ecx
41b4a1:	8b c6                	mov    %esi,%eax
41b4a3:	5e                   	pop    %esi
41b4a4:	5b                   	pop    %ebx
41b4a5:	c9                   	leave
41b4a6:	c3                   	ret
41b4a7:	8b ff                	mov    %edi,%edi
41b4a9:	55                   	push   %ebp
41b4aa:	8b ec                	mov    %esp,%ebp
41b4ac:	56                   	push   %esi
41b4ad:	8b 75 08             	mov    0x8(%ebp),%esi
41b4b0:	85 f6                	test   %esi,%esi
41b4b2:	74 25                	je     0x41b4d9
41b4b4:	53                   	push   %ebx
41b4b5:	8d 9e 00 0e 00 00    	lea    0xe00(%esi),%ebx
41b4bb:	57                   	push   %edi
41b4bc:	8b fe                	mov    %esi,%edi
41b4be:	3b f3                	cmp    %ebx,%esi
41b4c0:	74 0e                	je     0x41b4d0
41b4c2:	57                   	push   %edi
41b4c3:	ff 15 44 40 42 00    	call   *0x424044
41b4c9:	83 c7 38             	add    $0x38,%edi
41b4cc:	3b fb                	cmp    %ebx,%edi
41b4ce:	75 f2                	jne    0x41b4c2
41b4d0:	56                   	push   %esi
41b4d1:	e8 35 7c ff ff       	call   0x41310b
41b4d6:	59                   	pop    %ecx
41b4d7:	5f                   	pop    %edi
41b4d8:	5b                   	pop    %ebx
41b4d9:	5e                   	pop    %esi
41b4da:	5d                   	pop    %ebp
41b4db:	c3                   	ret
41b4dc:	6a 10                	push   $0x10
41b4de:	68 e0 19 43 00       	push   $0x4319e0
41b4e3:	e8 d8 ca fe ff       	call   0x407fc0
41b4e8:	81 7d 08 00 20 00 00 	cmpl   $0x2000,0x8(%ebp)
41b4ef:	72 21                	jb     0x41b512
41b4f1:	e8 05 39 ff ff       	call   0x40edfb
41b4f6:	6a 09                	push   $0x9
41b4f8:	5e                   	pop    %esi
41b4f9:	89 30                	mov    %esi,(%eax)
41b4fb:	e8 81 1b ff ff       	call   0x40d081
41b500:	8b c6                	mov    %esi,%eax
41b502:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41b505:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41b50c:	59                   	pop    %ecx
41b50d:	5f                   	pop    %edi
41b50e:	5e                   	pop    %esi
41b50f:	5b                   	pop    %ebx
41b510:	c9                   	leave
41b511:	c3                   	ret
41b512:	33 f6                	xor    %esi,%esi
41b514:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41b517:	6a 07                	push   $0x7
41b519:	e8 05 1c ff ff       	call   0x40d123
41b51e:	59                   	pop    %ecx
41b51f:	89 75 fc             	mov    %esi,-0x4(%ebp)
41b522:	8b fe                	mov    %esi,%edi
41b524:	a1 c0 4c 43 00       	mov    0x434cc0,%eax
41b529:	89 7d e0             	mov    %edi,-0x20(%ebp)
41b52c:	39 45 08             	cmp    %eax,0x8(%ebp)
41b52f:	7c 1f                	jl     0x41b550
41b531:	39 34 bd c0 4a 43 00 	cmp    %esi,0x434ac0(,%edi,4)
41b538:	75 31                	jne    0x41b56b
41b53a:	e8 ed fe ff ff       	call   0x41b42c
41b53f:	89 04 bd c0 4a 43 00 	mov    %eax,0x434ac0(,%edi,4)
41b546:	85 c0                	test   %eax,%eax
41b548:	75 14                	jne    0x41b55e
41b54a:	6a 0c                	push   $0xc
41b54c:	5e                   	pop    %esi
41b54d:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41b550:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41b557:	e8 15 00 00 00       	call   0x41b571
41b55c:	eb a2                	jmp    0x41b500
41b55e:	a1 c0 4c 43 00       	mov    0x434cc0,%eax
41b563:	83 c0 40             	add    $0x40,%eax
41b566:	a3 c0 4c 43 00       	mov    %eax,0x434cc0
41b56b:	47                   	inc    %edi
41b56c:	eb bb                	jmp    0x41b529
41b56e:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41b571:	6a 07                	push   $0x7
41b573:	e8 f3 1b ff ff       	call   0x40d16b
41b578:	59                   	pop    %ecx
41b579:	c3                   	ret
41b57a:	8b ff                	mov    %edi,%edi
41b57c:	55                   	push   %ebp
41b57d:	8b ec                	mov    %esp,%ebp
41b57f:	8b 45 08             	mov    0x8(%ebp),%eax
41b582:	8b c8                	mov    %eax,%ecx
41b584:	83 e0 3f             	and    $0x3f,%eax
41b587:	c1 f9 06             	sar    $0x6,%ecx
41b58a:	6b c0 38             	imul   $0x38,%eax,%eax
41b58d:	03 04 8d c0 4a 43 00 	add    0x434ac0(,%ecx,4),%eax
41b594:	50                   	push   %eax
41b595:	ff 15 38 40 42 00    	call   *0x424038
41b59b:	5d                   	pop    %ebp
41b59c:	c3                   	ret
41b59d:	8b ff                	mov    %edi,%edi
41b59f:	55                   	push   %ebp
41b5a0:	8b ec                	mov    %esp,%ebp
41b5a2:	51                   	push   %ecx
41b5a3:	53                   	push   %ebx
41b5a4:	56                   	push   %esi
41b5a5:	8b 75 08             	mov    0x8(%ebp),%esi
41b5a8:	85 f6                	test   %esi,%esi
41b5aa:	78 69                	js     0x41b615
41b5ac:	3b 35 c0 4c 43 00    	cmp    0x434cc0,%esi
41b5b2:	73 61                	jae    0x41b615
41b5b4:	8b c6                	mov    %esi,%eax
41b5b6:	8b de                	mov    %esi,%ebx
41b5b8:	83 e0 3f             	and    $0x3f,%eax
41b5bb:	c1 fb 06             	sar    $0x6,%ebx
41b5be:	6b c8 38             	imul   $0x38,%eax,%ecx
41b5c1:	8b 04 9d c0 4a 43 00 	mov    0x434ac0(,%ebx,4),%eax
41b5c8:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41b5cb:	83 7c 01 18 ff       	cmpl   $0xffffffff,0x18(%ecx,%eax,1)
41b5d0:	75 43                	jne    0x41b615
41b5d2:	57                   	push   %edi
41b5d3:	e8 56 46 ff ff       	call   0x40fc2e
41b5d8:	8b 7d 0c             	mov    0xc(%ebp),%edi
41b5db:	83 f8 01             	cmp    $0x1,%eax
41b5de:	75 22                	jne    0x41b602
41b5e0:	83 ee 00             	sub    $0x0,%esi
41b5e3:	74 14                	je     0x41b5f9
41b5e5:	83 ee 01             	sub    $0x1,%esi
41b5e8:	74 0a                	je     0x41b5f4
41b5ea:	83 ee 01             	sub    $0x1,%esi
41b5ed:	75 13                	jne    0x41b602
41b5ef:	57                   	push   %edi
41b5f0:	6a f4                	push   $0xfffffff4
41b5f2:	eb 08                	jmp    0x41b5fc
41b5f4:	57                   	push   %edi
41b5f5:	6a f5                	push   $0xfffffff5
41b5f7:	eb 03                	jmp    0x41b5fc
41b5f9:	57                   	push   %edi
41b5fa:	6a f6                	push   $0xfffffff6
41b5fc:	ff 15 1c 40 42 00    	call   *0x42401c
41b602:	8b 04 9d c0 4a 43 00 	mov    0x434ac0(,%ebx,4),%eax
41b609:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41b60c:	89 7c 01 18          	mov    %edi,0x18(%ecx,%eax,1)
41b610:	33 c0                	xor    %eax,%eax
41b612:	5f                   	pop    %edi
41b613:	eb 16                	jmp    0x41b62b
41b615:	e8 e1 37 ff ff       	call   0x40edfb
41b61a:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
41b620:	e8 c3 37 ff ff       	call   0x40ede8
41b625:	83 20 00             	andl   $0x0,(%eax)
41b628:	83 c8 ff             	or     $0xffffffff,%eax
41b62b:	5e                   	pop    %esi
41b62c:	5b                   	pop    %ebx
41b62d:	c9                   	leave
41b62e:	c3                   	ret
41b62f:	8b ff                	mov    %edi,%edi
41b631:	55                   	push   %ebp
41b632:	8b ec                	mov    %esp,%ebp
41b634:	8b 45 08             	mov    0x8(%ebp),%eax
41b637:	8b c8                	mov    %eax,%ecx
41b639:	83 e0 3f             	and    $0x3f,%eax
41b63c:	c1 f9 06             	sar    $0x6,%ecx
41b63f:	6b c0 38             	imul   $0x38,%eax,%eax
41b642:	03 04 8d c0 4a 43 00 	add    0x434ac0(,%ecx,4),%eax
41b649:	50                   	push   %eax
41b64a:	ff 15 3c 40 42 00    	call   *0x42403c
41b650:	5d                   	pop    %ebp
41b651:	c3                   	ret
41b652:	6a 1c                	push   $0x1c
41b654:	68 c0 19 43 00       	push   $0x4319c0
41b659:	e8 62 c9 fe ff       	call   0x407fc0
41b65e:	6a 07                	push   $0x7
41b660:	e8 be 1a ff ff       	call   0x40d123
41b665:	59                   	pop    %ecx
41b666:	83 cb ff             	or     $0xffffffff,%ebx
41b669:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
41b66c:	33 ff                	xor    %edi,%edi
41b66e:	89 7d fc             	mov    %edi,-0x4(%ebp)
41b671:	89 7d d4             	mov    %edi,-0x2c(%ebp)
41b674:	81 ff 80 00 00 00    	cmp    $0x80,%edi
41b67a:	7d 44                	jge    0x41b6c0
41b67c:	8b 04 bd c0 4a 43 00 	mov    0x434ac0(,%edi,4),%eax
41b683:	89 45 d8             	mov    %eax,-0x28(%ebp)
41b686:	85 c0                	test   %eax,%eax
41b688:	75 54                	jne    0x41b6de
41b68a:	e8 9d fd ff ff       	call   0x41b42c
41b68f:	89 04 bd c0 4a 43 00 	mov    %eax,0x434ac0(,%edi,4)
41b696:	85 c0                	test   %eax,%eax
41b698:	74 26                	je     0x41b6c0
41b69a:	83 05 c0 4c 43 00 40 	addl   $0x40,0x434cc0
41b6a1:	8b df                	mov    %edi,%ebx
41b6a3:	c1 e3 06             	shl    $0x6,%ebx
41b6a6:	53                   	push   %ebx
41b6a7:	e8 ce fe ff ff       	call   0x41b57a
41b6ac:	59                   	pop    %ecx
41b6ad:	8b c3                	mov    %ebx,%eax
41b6af:	c1 f8 06             	sar    $0x6,%eax
41b6b2:	8b 04 85 c0 4a 43 00 	mov    0x434ac0(,%eax,4),%eax
41b6b9:	c6 40 28 01          	movb   $0x1,0x28(%eax)
41b6bd:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
41b6c0:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41b6c7:	e8 90 00 00 00       	call   0x41b75c
41b6cc:	8b c3                	mov    %ebx,%eax
41b6ce:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41b6d1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41b6d8:	59                   	pop    %ecx
41b6d9:	5f                   	pop    %edi
41b6da:	5e                   	pop    %esi
41b6db:	5b                   	pop    %ebx
41b6dc:	c9                   	leave
41b6dd:	c3                   	ret
41b6de:	8d 88 00 0e 00 00    	lea    0xe00(%eax),%ecx
41b6e4:	89 4d e0             	mov    %ecx,-0x20(%ebp)
41b6e7:	8b f0                	mov    %eax,%esi
41b6e9:	6a 38                	push   $0x38
41b6eb:	58                   	pop    %eax
41b6ec:	89 75 dc             	mov    %esi,-0x24(%ebp)
41b6ef:	3b f1                	cmp    %ecx,%esi
41b6f1:	74 60                	je     0x41b753
41b6f3:	f6 46 28 01          	testb  $0x1,0x28(%esi)
41b6f7:	75 1a                	jne    0x41b713
41b6f9:	56                   	push   %esi
41b6fa:	ff 15 38 40 42 00    	call   *0x424038
41b700:	f6 46 28 01          	testb  $0x1,0x28(%esi)
41b704:	74 11                	je     0x41b717
41b706:	56                   	push   %esi
41b707:	ff 15 3c 40 42 00    	call   *0x42403c
41b70d:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b710:	6a 38                	push   $0x38
41b712:	58                   	pop    %eax
41b713:	03 f0                	add    %eax,%esi
41b715:	eb d5                	jmp    0x41b6ec
41b717:	2b 75 d8             	sub    -0x28(%ebp),%esi
41b71a:	8b c6                	mov    %esi,%eax
41b71c:	99                   	cltd
41b71d:	6a 38                	push   $0x38
41b71f:	59                   	pop    %ecx
41b720:	f7 f9                	idiv   %ecx
41b722:	c1 e7 06             	shl    $0x6,%edi
41b725:	8d 34 07             	lea    (%edi,%eax,1),%esi
41b728:	8b d6                	mov    %esi,%edx
41b72a:	c1 fa 06             	sar    $0x6,%edx
41b72d:	8b ce                	mov    %esi,%ecx
41b72f:	83 e1 3f             	and    $0x3f,%ecx
41b732:	6b c9 38             	imul   $0x38,%ecx,%ecx
41b735:	8b 04 95 c0 4a 43 00 	mov    0x434ac0(,%edx,4),%eax
41b73c:	c6 44 08 28 01       	movb   $0x1,0x28(%eax,%ecx,1)
41b741:	8b 04 95 c0 4a 43 00 	mov    0x434ac0(,%edx,4),%eax
41b748:	89 5c 08 18          	mov    %ebx,0x18(%eax,%ecx,1)
41b74c:	8b de                	mov    %esi,%ebx
41b74e:	e9 6a ff ff ff       	jmp    0x41b6bd