43c468:	89 45 08             	mov    %eax,0x8(%ebp)
43c46b:	85 c0                	test   %eax,%eax
43c46d:	0f 84 83 00 00 00    	je     0x43c4f6
43c473:	8b ce                	mov    %esi,%ecx
43c475:	e8 70 e1 ff ff       	call   0x43a5ea
43c47a:	84 c0                	test   %al,%al
43c47c:	75 0c                	jne    0x43c48a
43c47e:	68 8c 2a 4b 00       	push   $0x4b2a8c
43c483:	8b ce                	mov    %esi,%ecx
43c485:	e8 02 8d fc ff       	call   0x40518c
43c48a:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43c48e:	74 2d                	je     0x43c4bd
43c490:	6a 0a                	push   $0xa
43c492:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c498:	50                   	push   %eax
43c499:	ff 75 f8             	push   -0x8(%ebp)
43c49c:	e8 b6 50 fe ff       	call   0x421557
43c4a1:	83 c4 0c             	add    $0xc,%esp
43c4a4:	8b ce                	mov    %esi,%ecx
43c4a6:	6a 23                	push   $0x23
43c4a8:	e8 ec 02 fd ff       	call   0x40c799
43c4ad:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c4b3:	50                   	push   %eax
43c4b4:	8b ce                	mov    %esi,%ecx
43c4b6:	e8 d1 8c fc ff       	call   0x40518c
43c4bb:	eb 17                	jmp    0x43c4d4
43c4bd:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c4c0:	50                   	push   %eax
43c4c1:	57                   	push   %edi
43c4c2:	8b cb                	mov    %ebx,%ecx
43c4c4:	e8 1f 02 00 00       	call   0x43c6e8
43c4c9:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c4cc:	50                   	push   %eax
43c4cd:	8b ce                	mov    %esi,%ecx
43c4cf:	e8 39 8c fc ff       	call   0x40510d
43c4d4:	6a 00                	push   $0x0
43c4d6:	ff 75 14             	push   0x14(%ebp)
43c4d9:	8b cb                	mov    %ebx,%ecx
43c4db:	56                   	push   %esi
43c4dc:	ff 75 0c             	push   0xc(%ebp)
43c4df:	ff 75 08             	push   0x8(%ebp)
43c4e2:	e8 29 ff ff ff       	call   0x43c410
43c4e7:	84 c0                	test   %al,%al
43c4e9:	75 31                	jne    0x43c51c
43c4eb:	8d 45 d8             	lea    -0x28(%ebp),%eax
43c4ee:	50                   	push   %eax
43c4ef:	8b ce                	mov    %esi,%ecx
43c4f1:	e8 f7 a9 fc ff       	call   0x406eed
43c4f6:	3b 7d 0c             	cmp    0xc(%ebp),%edi
43c4f9:	74 3b                	je     0x43c536
43c4fb:	57                   	push   %edi
43c4fc:	6a 01                	push   $0x1
43c4fe:	68 0a 11 00 00       	push   $0x110a
43c503:	ff 33                	push   (%ebx)
43c505:	ff 15 70 d6 48 00    	call   *0x48d670
43c50b:	ff 45 f8             	incl   -0x8(%ebp)
43c50e:	8b f8                	mov    %eax,%edi
43c510:	85 ff                	test   %edi,%edi
43c512:	0f 85 40 ff ff ff    	jne    0x43c458
43c518:	c6 45 10 00          	movb   $0x0,0x10(%ebp)
43c51c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c51f:	e8 13 06 fd ff       	call   0x40cb37
43c524:	8d 4d d8             	lea    -0x28(%ebp),%ecx
43c527:	e8 0b 06 fd ff       	call   0x40cb37
43c52c:	8a 45 10             	mov    0x10(%ebp),%al
43c52f:	5f                   	pop    %edi
43c530:	5e                   	pop    %esi
43c531:	5b                   	pop    %ebx
43c532:	c9                   	leave
43c533:	c2 14 00             	ret    $0x14
43c536:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
43c53a:	74 0c                	je     0x43c548
43c53c:	68 8c 2a 4b 00       	push   $0x4b2a8c
43c541:	8b ce                	mov    %esi,%ecx
43c543:	e8 44 8c fc ff       	call   0x40518c
43c548:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43c54c:	74 2d                	je     0x43c57b
43c54e:	6a 0a                	push   $0xa
43c550:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c556:	50                   	push   %eax
43c557:	ff 75 f8             	push   -0x8(%ebp)
43c55a:	e8 f8 4f fe ff       	call   0x421557
43c55f:	83 c4 0c             	add    $0xc,%esp
43c562:	8b ce                	mov    %esi,%ecx
43c564:	6a 23                	push   $0x23
43c566:	e8 2e 02 fd ff       	call   0x40c799
43c56b:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c571:	50                   	push   %eax
43c572:	8b ce                	mov    %esi,%ecx
43c574:	e8 13 8c fc ff       	call   0x40518c
43c579:	eb a1                	jmp    0x43c51c
43c57b:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c57e:	50                   	push   %eax
43c57f:	57                   	push   %edi
43c580:	8b cb                	mov    %ebx,%ecx
43c582:	e8 61 01 00 00       	call   0x43c6e8
43c587:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c58a:	50                   	push   %eax
43c58b:	8b ce                	mov    %esi,%ecx
43c58d:	e8 7b 8b fc ff       	call   0x40510d
43c592:	eb 88                	jmp    0x43c51c
43c594:	55                   	push   %ebp
43c595:	8b ec                	mov    %esp,%ebp
43c597:	83 ec 1c             	sub    $0x1c,%esp
43c59a:	53                   	push   %ebx
43c59b:	56                   	push   %esi
43c59c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43c59f:	33 db                	xor    %ebx,%ebx
43c5a1:	57                   	push   %edi
43c5a2:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c5a5:	88 5d ff             	mov    %bl,-0x1(%ebp)
43c5a8:	e8 4a 12 fd ff       	call   0x40d7f7
43c5ad:	8b 75 0c             	mov    0xc(%ebp),%esi
43c5b0:	53                   	push   %ebx
43c5b1:	8b ce                	mov    %esi,%ecx
43c5b3:	e8 ee 9b fc ff       	call   0x4061a6
43c5b8:	6a 23                	push   $0x23
43c5ba:	5f                   	pop    %edi
43c5bb:	66 39 38             	cmp    %di,(%eax)
43c5be:	75 1e                	jne    0x43c5de
43c5c0:	6a 01                	push   $0x1
43c5c2:	8b ce                	mov    %esi,%ecx
43c5c4:	e8 dd 9b fc ff       	call   0x4061a6
43c5c9:	66 39 38             	cmp    %di,(%eax)
43c5cc:	74 10                	je     0x43c5de
43c5ce:	6a 01                	push   $0x1
43c5d0:	53                   	push   %ebx
43c5d1:	8b ce                	mov    %esi,%ecx
43c5d3:	e8 b3 eb fc ff       	call   0x40b18b
43c5d8:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
43c5dc:	eb 17                	jmp    0x43c5f5
43c5de:	53                   	push   %ebx
43c5df:	8b ce                	mov    %esi,%ecx
43c5e1:	e8 c0 9b fc ff       	call   0x4061a6
43c5e6:	66 39 38             	cmp    %di,(%eax)
43c5e9:	75 0a                	jne    0x43c5f5
43c5eb:	6a 01                	push   $0x1
43c5ed:	53                   	push   %ebx
43c5ee:	8b ce                	mov    %esi,%ecx
43c5f0:	e8 96 eb fc ff       	call   0x40b18b
43c5f5:	ff 36                	push   (%esi)
43c5f7:	e8 25 50 fe ff       	call   0x421621
43c5fc:	8b 7d 08             	mov    0x8(%ebp),%edi
43c5ff:	59                   	pop    %ecx
43c600:	89 45 0c             	mov    %eax,0xc(%ebp)
43c603:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
43c607:	74 04                	je     0x43c60d
43c609:	3b c3                	cmp    %ebx,%eax
43c60b:	74 3d                	je     0x43c64a
43c60d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43c610:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c613:	50                   	push   %eax
43c614:	57                   	push   %edi
43c615:	e8 ce 00 00 00       	call   0x43c6e8
43c61a:	6a 00                	push   $0x0
43c61c:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c61f:	50                   	push   %eax
43c620:	8b ce                	mov    %esi,%ecx
43c622:	e8 37 0d fe ff       	call   0x41d35e
43c627:	85 c0                	test   %eax,%eax
43c629:	74 1f                	je     0x43c64a
43c62b:	8b 45 f8             	mov    -0x8(%ebp),%eax
43c62e:	57                   	push   %edi
43c62f:	6a 01                	push   $0x1
43c631:	68 0a 11 00 00       	push   $0x110a
43c636:	ff 30                	push   (%eax)
43c638:	ff 15 70 d6 48 00    	call   *0x48d670
43c63e:	8b f8                	mov    %eax,%edi
43c640:	85 ff                	test   %edi,%edi
43c642:	74 06                	je     0x43c64a
43c644:	8b 45 0c             	mov    0xc(%ebp),%eax
43c647:	43                   	inc    %ebx
43c648:	eb b9                	jmp    0x43c603
43c64a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c64d:	e8 e5 04 fd ff       	call   0x40cb37
43c652:	8b c7                	mov    %edi,%eax
43c654:	5f                   	pop    %edi
43c655:	5e                   	pop    %esi
43c656:	5b                   	pop    %ebx
43c657:	c9                   	leave
43c658:	c2 08 00             	ret    $0x8
43c65b:	55                   	push   %ebp
43c65c:	8b ec                	mov    %esp,%ebp
43c65e:	53                   	push   %ebx
43c65f:	56                   	push   %esi
43c660:	6a 00                	push   $0x0
43c662:	6a 09                	push   $0x9
43c664:	8b f1                	mov    %ecx,%esi
43c666:	68 0a 11 00 00       	push   $0x110a
43c66b:	ff 36                	push   (%esi)
43c66d:	ff 15 70 d6 48 00    	call   *0x48d670
43c673:	8b d8                	mov    %eax,%ebx
43c675:	85 db                	test   %ebx,%ebx
43c677:	75 04                	jne    0x43c67d
43c679:	32 c0                	xor    %al,%al
43c67b:	eb 2e                	jmp    0x43c6ab
43c67d:	8b 4d 08             	mov    0x8(%ebp),%ecx
43c680:	68 00 dc 49 00       	push   $0x49dc00
43c685:	e8 d9 a3 fc ff       	call   0x406a63
43c68a:	51                   	push   %ecx
43c68b:	ff 75 0c             	push   0xc(%ebp)
43c68e:	ff 75 08             	push   0x8(%ebp)
43c691:	53                   	push   %ebx
43c692:	6a 00                	push   $0x0
43c694:	6a 00                	push   $0x0
43c696:	68 0a 11 00 00       	push   $0x110a
43c69b:	ff 36                	push   (%esi)
43c69d:	ff 15 70 d6 48 00    	call   *0x48d670
43c6a3:	50                   	push   %eax
43c6a4:	8b ce                	mov    %esi,%ecx
43c6a6:	e8 65 fd ff ff       	call   0x43c410
43c6ab:	5e                   	pop    %esi
43c6ac:	5b                   	pop    %ebx
43c6ad:	5d                   	pop    %ebp
43c6ae:	c2 08 00             	ret    $0x8
43c6b1:	55                   	push   %ebp
43c6b2:	8b ec                	mov    %esp,%ebp
43c6b4:	51                   	push   %ecx
43c6b5:	56                   	push   %esi
43c6b6:	8b f1                	mov    %ecx,%esi
43c6b8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43c6bb:	68 00 dc 49 00       	push   $0x49dc00
43c6c0:	e8 9e a3 fc ff       	call   0x406a63
43c6c5:	ff 75 08             	push   0x8(%ebp)
43c6c8:	8b ce                	mov    %esi,%ecx
43c6ca:	e8 0f fc ff ff       	call   0x43c2de
43c6cf:	85 c0                	test   %eax,%eax
43c6d1:	75 04                	jne    0x43c6d7
43c6d3:	32 c0                	xor    %al,%al
43c6d5:	eb 0b                	jmp    0x43c6e2
43c6d7:	ff 75 0c             	push   0xc(%ebp)
43c6da:	8b ce                	mov    %esi,%ecx
43c6dc:	50                   	push   %eax
43c6dd:	e8 06 00 00 00       	call   0x43c6e8
43c6e2:	5e                   	pop    %esi
43c6e3:	59                   	pop    %ecx
43c6e4:	5d                   	pop    %ebp
43c6e5:	c2 08 00             	ret    $0x8
43c6e8:	55                   	push   %ebp
43c6e9:	8b ec                	mov    %esp,%ebp
43c6eb:	81 ec ac 08 00 00    	sub    $0x8ac,%esp
43c6f1:	53                   	push   %ebx
43c6f2:	56                   	push   %esi
43c6f3:	8b d9                	mov    %ecx,%ebx
43c6f5:	57                   	push   %edi
43c6f6:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c6fc:	e8 0f 5c fc ff       	call   0x402310
43c701:	ff 33                	push   (%ebx)
43c703:	6a 28                	push   $0x28
43c705:	e8 25 7b 00 00       	call   0x44422f
43c70a:	ff 33                	push   (%ebx)
43c70c:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c712:	68 00 08 00 00       	push   $0x800
43c717:	8b f0                	mov    %eax,%esi
43c719:	e8 11 7b 00 00       	call   0x44422f
43c71e:	8b 4d 08             	mov    0x8(%ebp),%ecx
43c721:	6a 28                	push   $0x28
43c723:	8b f8                	mov    %eax,%edi
43c725:	56                   	push   %esi
43c726:	8d 45 d8             	lea    -0x28(%ebp),%eax
43c729:	89 4d dc             	mov    %ecx,-0x24(%ebp)
43c72c:	50                   	push   %eax
43c72d:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c733:	c7 45 d8 11 00 00 00 	movl   $0x11,-0x28(%ebp)
43c73a:	c7 45 ec 00 04 00 00 	movl   $0x400,-0x14(%ebp)
43c741:	89 7d e8             	mov    %edi,-0x18(%ebp)
43c744:	e8 c2 7b 00 00       	call   0x44430b
43c749:	56                   	push   %esi
43c74a:	6a 00                	push   $0x0
43c74c:	68 3e 11 00 00       	push   $0x113e
43c751:	ff 33                	push   (%ebx)
43c753:	ff 15 70 d6 48 00    	call   *0x48d670
43c759:	8b f0                	mov    %eax,%esi
43c75b:	68 00 08 00 00       	push   $0x800
43c760:	8d 85 58 f7 ff ff    	lea    -0x8a8(%ebp),%eax
43c766:	50                   	push   %eax
43c767:	57                   	push   %edi
43c768:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c76e:	e8 63 7b 00 00       	call   0x4442d6
43c773:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43c776:	85 f6                	test   %esi,%esi
43c778:	74 10                	je     0x43c78a
43c77a:	8d 85 58 f7 ff ff    	lea    -0x8a8(%ebp),%eax
43c780:	50                   	push   %eax
43c781:	e8 dd a2 fc ff       	call   0x406a63
43c786:	b3 01                	mov    $0x1,%bl
43c788:	eb 0c                	jmp    0x43c796
43c78a:	68 00 dc 49 00       	push   $0x49dc00
43c78f:	e8 cf a2 fc ff       	call   0x406a63
43c794:	33 db                	xor    %ebx,%ebx
43c796:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c79c:	e8 34 6e fc ff       	call   0x4035d5
43c7a1:	5f                   	pop    %edi
43c7a2:	5e                   	pop    %esi
43c7a3:	8a c3                	mov    %bl,%al
43c7a5:	5b                   	pop    %ebx
43c7a6:	c9                   	leave
43c7a7:	c2 08 00             	ret    $0x8
43c7aa:	55                   	push   %ebp
43c7ab:	8b ec                	mov    %esp,%ebp
43c7ad:	56                   	push   %esi
43c7ae:	ff 75 08             	push   0x8(%ebp)
43c7b1:	8b f1                	mov    %ecx,%esi
43c7b3:	e8 26 fb ff ff       	call   0x43c2de
43c7b8:	85 c0                	test   %eax,%eax
43c7ba:	74 17                	je     0x43c7d3
43c7bc:	68 00 f0 00 00       	push   $0xf000
43c7c1:	50                   	push   %eax
43c7c2:	68 27 11 00 00       	push   $0x1127
43c7c7:	ff 36                	push   (%esi)
43c7c9:	ff 15 70 d6 48 00    	call   *0x48d670
43c7cf:	c1 e8 0c             	shr    $0xc,%eax
43c7d2:	48                   	dec    %eax
43c7d3:	5e                   	pop    %esi
43c7d4:	5d                   	pop    %ebp
43c7d5:	c2 04 00             	ret    $0x4
43c7d8:	55                   	push   %ebp
43c7d9:	8b ec                	mov    %esp,%ebp
43c7db:	51                   	push   %ecx
43c7dc:	53                   	push   %ebx
43c7dd:	57                   	push   %edi
43c7de:	ff 75 08             	push   0x8(%ebp)
43c7e1:	8b f9                	mov    %ecx,%edi
43c7e3:	e8 f6 fa ff ff       	call   0x43c2de
43c7e8:	8b d8                	mov    %eax,%ebx
43c7ea:	85 db                	test   %ebx,%ebx
43c7ec:	75 04                	jne    0x43c7f2
43c7ee:	32 c0                	xor    %al,%al
43c7f0:	eb 25                	jmp    0x43c817
43c7f2:	53                   	push   %ebx
43c7f3:	6a 05                	push   $0x5
43c7f5:	68 0b 11 00 00       	push   $0x110b
43c7fa:	ff 37                	push   (%edi)
43c7fc:	ff 15 70 d6 48 00    	call   *0x48d670
43c802:	53                   	push   %ebx
43c803:	6a 09                	push   $0x9
43c805:	68 0b 11 00 00       	push   $0x110b
43c80a:	ff 37                	push   (%edi)
43c80c:	ff 15 70 d6 48 00    	call   *0x48d670
43c812:	85 c0                	test   %eax,%eax
43c814:	0f 95 c0             	setne  %al
43c817:	5f                   	pop    %edi
43c818:	5b                   	pop    %ebx
43c819:	59                   	pop    %ecx
43c81a:	5d                   	pop    %ebp
43c81b:	c2 04 00             	ret    $0x4
43c81e:	e8 0c 24 fe ff       	call   0x41ec2f
43c823:	33 c9                	xor    %ecx,%ecx
43c825:	84 c0                	test   %al,%al
43c827:	0f 94 c1             	sete   %cl