47b3df:	66 8b 57 0e          	mov    0xe(%edi),%dx
47b3e3:	66 81 e2 ff 00       	and    $0xff,%dx
47b3e8:	0f b7 d2             	movzwl %dx,%edx
47b3eb:	3b c2                	cmp    %edx,%eax
47b3ed:	75 06                	jne    0x47b3f5
47b3ef:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
47b3f3:	eb 06                	jmp    0x47b3fb
47b3f5:	46                   	inc    %esi
47b3f6:	83 fe 6a             	cmp    $0x6a,%esi
47b3f9:	75 dc                	jne    0x47b3d7
47b3fb:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
47b3ff:	0f 85 d8 00 00 00    	jne    0x47b4dd
47b405:	8b 45 08             	mov    0x8(%ebp),%eax
47b408:	8b 40 fc             	mov    -0x4(%eax),%eax
47b40b:	8a 15 80 b5 47 00    	mov    0x47b580,%dl
47b411:	88 50 34             	mov    %dl,0x34(%eax)
47b414:	e8 d7 8e f8 ff       	call   0x4042f0
47b419:	e9 5b 01 00 00       	jmp    0x47b579
47b41e:	83 7f 08 12          	cmpl   $0x12,0x8(%edi)
47b422:	0f 85 b5 00 00 00    	jne    0x47b4dd
47b428:	8b 45 08             	mov    0x8(%ebp),%eax
47b42b:	8b 40 fc             	mov    -0x4(%eax),%eax
47b42e:	8a 15 80 b5 47 00    	mov    0x47b580,%dl
47b434:	88 50 34             	mov    %dl,0x34(%eax)
47b437:	e8 b4 8e f8 ff       	call   0x4042f0
47b43c:	e9 38 01 00 00       	jmp    0x47b579
47b441:	8b 45 08             	mov    0x8(%ebp),%eax
47b444:	8b 40 fc             	mov    -0x4(%eax),%eax
47b447:	8b 40 30             	mov    0x30(%eax),%eax
47b44a:	e8 05 3b fd ff       	call   0x44ef54
47b44f:	3b 07                	cmp    (%edi),%eax
47b451:	0f 84 86 00 00 00    	je     0x47b4dd
47b457:	e8 94 8e f8 ff       	call   0x4042f0
47b45c:	e9 18 01 00 00       	jmp    0x47b579
47b461:	e8 62 c5 f8 ff       	call   0x4079c8
47b466:	8b 55 08             	mov    0x8(%ebp),%edx
47b469:	3b 42 f8             	cmp    -0x8(%edx),%eax
47b46c:	75 21                	jne    0x47b48f
47b46e:	8b 45 08             	mov    0x8(%ebp),%eax
47b471:	8b 40 fc             	mov    -0x4(%eax),%eax
47b474:	8b 40 30             	mov    0x30(%eax),%eax
47b477:	e8 d8 3a fd ff       	call   0x44ef54
47b47c:	8d 57 14             	lea    0x14(%edi),%edx
47b47f:	e8 30 fe ff ff       	call   0x47b2b4
47b484:	84 c0                	test   %al,%al
47b486:	74 36                	je     0x47b4be
47b488:	e8 43 c8 f8 ff       	call   0x407cd0
47b48d:	eb 2f                	jmp    0x47b4be
47b48f:	e8 34 c5 f8 ff       	call   0x4079c8
47b494:	85 c0                	test   %eax,%eax
47b496:	75 26                	jne    0x47b4be
47b498:	8b 45 08             	mov    0x8(%ebp),%eax
47b49b:	8b 40 fc             	mov    -0x4(%eax),%eax
47b49e:	8b 40 30             	mov    0x30(%eax),%eax
47b4a1:	e8 ae 3a fd ff       	call   0x44ef54
47b4a6:	8d 57 14             	lea    0x14(%edi),%edx
47b4a9:	e8 06 fe ff ff       	call   0x47b2b4
47b4ae:	84 c0                	test   %al,%al
47b4b0:	75 0c                	jne    0x47b4be
47b4b2:	8b 45 08             	mov    0x8(%ebp),%eax
47b4b5:	8b 40 f8             	mov    -0x8(%eax),%eax
47b4b8:	50                   	push   %eax
47b4b9:	e8 72 c8 f8 ff       	call   0x407d30
47b4be:	e8 05 c5 f8 ff       	call   0x4079c8
47b4c3:	8b 55 08             	mov    0x8(%ebp),%edx
47b4c6:	3b 42 f8             	cmp    -0x8(%edx),%eax
47b4c9:	75 12                	jne    0x47b4dd
47b4cb:	68 00 7f 00 00       	push   $0x7f00
47b4d0:	6a 00                	push   $0x0
47b4d2:	e8 41 c7 f8 ff       	call   0x407c18
47b4d7:	50                   	push   %eax
47b4d8:	e8 73 c8 f8 ff       	call   0x407d50
47b4dd:	6a 03                	push   $0x3
47b4df:	6a 00                	push   $0x0
47b4e1:	6a 00                	push   $0x0
47b4e3:	6a 00                	push   $0x0
47b4e5:	57                   	push   %edi
47b4e6:	e8 9d c7 f8 ff       	call   0x407c88
47b4eb:	85 c0                	test   %eax,%eax
47b4ed:	74 27                	je     0x47b516
47b4ef:	8b 47 04             	mov    0x4(%edi),%eax
47b4f2:	3d 00 02 00 00       	cmp    $0x200,%eax
47b4f7:	72 11                	jb     0x47b50a
47b4f9:	3d 0a 02 00 00       	cmp    $0x20a,%eax
47b4fe:	77 0a                	ja     0x47b50a
47b500:	8b 45 08             	mov    0x8(%ebp),%eax
47b503:	8b 40 f8             	mov    -0x8(%eax),%eax
47b506:	3b 07                	cmp    (%edi),%eax
47b508:	74 0c                	je     0x47b516
47b50a:	57                   	push   %edi
47b50b:	e8 30 c9 f8 ff       	call   0x407e40
47b510:	57                   	push   %edi
47b511:	e8 da c3 f8 ff       	call   0x4078f0
47b516:	55                   	push   %ebp
47b517:	e8 cc fd ff ff       	call   0x47b2e8
47b51c:	59                   	pop    %ecx
47b51d:	84 c0                	test   %al,%al
47b51f:	74 16                	je     0x47b537
47b521:	6a 00                	push   $0x0
47b523:	6a 00                	push   $0x0
47b525:	6a 00                	push   $0x0
47b527:	6a 00                	push   $0x0
47b529:	57                   	push   %edi
47b52a:	e8 59 c7 f8 ff       	call   0x407c88
47b52f:	85 c0                	test   %eax,%eax
47b531:	0f 85 2a fe ff ff    	jne    0x47b361
47b537:	55                   	push   %ebp
47b538:	e8 ab fd ff ff       	call   0x47b2e8
47b53d:	59                   	pop    %ecx
47b53e:	84 c0                	test   %al,%al
47b540:	0f 85 0b fe ff ff    	jne    0x47b351
47b546:	33 c0                	xor    %eax,%eax
47b548:	5a                   	pop    %edx
47b549:	59                   	pop    %ecx
47b54a:	59                   	pop    %ecx
47b54b:	64 89 10             	mov    %edx,%fs:(%eax)
47b54e:	68 79 b5 47 00       	push   $0x47b579
47b553:	ba 03 01 00 00       	mov    $0x103,%edx
47b558:	b8 02 01 00 00       	mov    $0x102,%eax
47b55d:	e8 02 09 ff ff       	call   0x46be64
47b562:	ba 07 01 00 00       	mov    $0x107,%edx
47b567:	b8 06 01 00 00       	mov    $0x106,%eax
47b56c:	e8 f3 08 ff ff       	call   0x46be64
47b571:	c3                   	ret
47b572:	e9 95 8c f8 ff       	jmp    0x40420c
47b577:	eb da                	jmp    0x47b553
47b579:	5f                   	pop    %edi
47b57a:	5e                   	pop    %esi
47b57b:	5b                   	pop    %ebx
47b57c:	8b e5                	mov    %ebp,%esp
47b57e:	5d                   	pop    %ebp
47b57f:	c3                   	ret
47b580:	04 00                	add    $0x0,%al
47b582:	00 00                	add    %al,(%eax)
47b584:	55                   	push   %ebp
47b585:	8b ec                	mov    %esp,%ebp
47b587:	81 c4 c4 fe ff ff    	add    $0xfffffec4,%esp
47b58d:	53                   	push   %ebx
47b58e:	56                   	push   %esi
47b58f:	33 c9                	xor    %ecx,%ecx
47b591:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
47b594:	89 4d e8             	mov    %ecx,-0x18(%ebp)
47b597:	89 55 f8             	mov    %edx,-0x8(%ebp)
47b59a:	89 45 fc             	mov    %eax,-0x4(%ebp)
47b59d:	33 c0                	xor    %eax,%eax
47b59f:	55                   	push   %ebp
47b5a0:	68 ed b8 47 00       	push   $0x47b8ed
47b5a5:	64 ff 30             	push   %fs:(%eax)
47b5a8:	64 89 20             	mov    %esp,%fs:(%eax)
47b5ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b5ae:	8b 40 1c             	mov    0x1c(%eax),%eax
47b5b1:	89 45 f4             	mov    %eax,-0xc(%ebp)
47b5b4:	8d 55 d8             	lea    -0x28(%ebp),%edx
47b5b7:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b5ba:	8b 08                	mov    (%eax),%ecx
47b5bc:	ff 51 58             	call   *0x58(%ecx)
47b5bf:	8d 45 d8             	lea    -0x28(%ebp),%eax
47b5c2:	50                   	push   %eax
47b5c3:	e8 18 c6 f8 ff       	call   0x407be0
47b5c8:	85 c0                	test   %eax,%eax
47b5ca:	74 07                	je     0x47b5d3
47b5cc:	33 db                	xor    %ebx,%ebx
47b5ce:	e9 fc 02 00 00       	jmp    0x47b8cf
47b5d3:	e8 e0 c3 f8 ff       	call   0x4079b8
47b5d8:	89 45 f0             	mov    %eax,-0x10(%ebp)
47b5db:	e8 58 c4 f8 ff       	call   0x407a38
47b5e0:	89 45 ec             	mov    %eax,-0x14(%ebp)
47b5e3:	6a fd                	push   $0xfffffffd
47b5e5:	6a fd                	push   $0xfffffffd
47b5e7:	8d 45 d8             	lea    -0x28(%ebp),%eax
47b5ea:	50                   	push   %eax
47b5eb:	e8 98 c5 f8 ff       	call   0x407b88
47b5f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b5f3:	8b 10                	mov    (%eax),%edx
47b5f5:	ff 52 54             	call   *0x54(%edx)
47b5f8:	33 c9                	xor    %ecx,%ecx
47b5fa:	b2 01                	mov    $0x1,%dl
47b5fc:	ff 50 2c             	call   *0x2c(%eax)
47b5ff:	8b d8                	mov    %eax,%ebx
47b601:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b604:	89 58 30             	mov    %ebx,0x30(%eax)
47b607:	33 c0                	xor    %eax,%eax
47b609:	55                   	push   %ebp
47b60a:	68 a6 b7 47 00       	push   $0x47b7a6
47b60f:	64 ff 30             	push   %fs:(%eax)
47b612:	64 89 20             	mov    %esp,%fs:(%eax)
47b615:	8d 45 d4             	lea    -0x2c(%ebp),%eax
47b618:	50                   	push   %eax
47b619:	8d 95 c4 fe ff ff    	lea    -0x13c(%ebp),%edx
47b61f:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b622:	8b 00                	mov    (%eax),%eax
47b624:	e8 9f 83 f8 ff       	call   0x4039c8
47b629:	8d 85 c4 fe ff ff    	lea    -0x13c(%ebp),%eax
47b62f:	89 45 c4             	mov    %eax,-0x3c(%ebp)
47b632:	c6 45 c8 04          	movb   $0x4,-0x38(%ebp)
47b636:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b639:	8b 40 30             	mov    0x30(%eax),%eax
47b63c:	89 45 cc             	mov    %eax,-0x34(%ebp)
47b63f:	c6 45 d0 05          	movb   $0x5,-0x30(%ebp)
47b643:	8d 55 c4             	lea    -0x3c(%ebp),%edx
47b646:	b9 01 00 00 00       	mov    $0x1,%ecx
47b64b:	b8 04 b9 47 00       	mov    $0x47b904,%eax
47b650:	e8 87 ef f8 ff       	call   0x40a5dc
47b655:	8b 55 d4             	mov    -0x2c(%ebp),%edx
47b658:	8b c3                	mov    %ebx,%eax
47b65a:	8b 08                	mov    (%eax),%ecx
47b65c:	ff 51 18             	call   *0x18(%ecx)
47b65f:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b662:	8b 40 30             	mov    0x30(%eax),%eax
47b665:	33 d2                	xor    %edx,%edx
47b667:	e8 80 d0 fc ff       	call   0x4486ec
47b66c:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b66f:	8b 40 30             	mov    0x30(%eax),%eax
47b672:	33 d2                	xor    %edx,%edx
47b674:	e8 7b d8 fb ff       	call   0x438ef4
47b679:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b67c:	8b 40 30             	mov    0x30(%eax),%eax
47b67f:	33 d2                	xor    %edx,%edx
47b681:	8b 08                	mov    (%eax),%ecx
47b683:	ff 51 5c             	call   *0x5c(%ecx)
47b686:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b689:	8b 40 24             	mov    0x24(%eax),%eax
47b68c:	8b 10                	mov    (%eax),%edx
47b68e:	ff 52 50             	call   *0x50(%edx)
47b691:	8b d0                	mov    %eax,%edx
47b693:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b696:	8b 40 30             	mov    0x30(%eax),%eax
47b699:	8b 40 68             	mov    0x68(%eax),%eax
47b69c:	8b 08                	mov    (%eax),%ecx
47b69e:	ff 51 08             	call   *0x8(%ecx)
47b6a1:	8b 45 f4             	mov    -0xc(%ebp),%eax
47b6a4:	8b 90 d8 00 00 00    	mov    0xd8(%eax),%edx
47b6aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b6ad:	8b 40 30             	mov    0x30(%eax),%eax
47b6b0:	e8 47 d1 fc ff       	call   0x4487fc
47b6b5:	8b 45 f4             	mov    -0xc(%ebp),%eax
47b6b8:	8a 90 b0 00 00 00    	mov    0xb0(%eax),%dl
47b6be:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b6c1:	8b 40 30             	mov    0x30(%eax),%eax
47b6c4:	e8 4f d8 fb ff       	call   0x438f18
47b6c9:	8b 45 f4             	mov    -0xc(%ebp),%eax
47b6cc:	8b 90 c4 00 00 00    	mov    0xc4(%eax),%edx
47b6d2:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b6d5:	8b 40 30             	mov    0x30(%eax),%eax
47b6d8:	e8 63 d8 fb ff       	call   0x438f40
47b6dd:	8d 55 d8             	lea    -0x28(%ebp),%edx
47b6e0:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b6e3:	8b 40 30             	mov    0x30(%eax),%eax
47b6e6:	e8 a1 ca fc ff       	call   0x44818c
47b6eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b6ee:	8b 58 30             	mov    0x30(%eax),%ebx
47b6f1:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b6f4:	89 43 3c             	mov    %eax,0x3c(%ebx)
47b6f7:	c7 43 38 80 ae 47 00 	movl   $0x47ae80,0x38(%ebx)
47b6fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b701:	8b 40 24             	mov    0x24(%eax),%eax
47b704:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
47b70a:	e8 45 38 fd ff       	call   0x44ef54
47b70f:	8b d0                	mov    %eax,%edx
47b711:	8b c3                	mov    %ebx,%eax
47b713:	e8 d4 0f fd ff       	call   0x44c6ec
47b718:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b71b:	8b 40 30             	mov    0x30(%eax),%eax
47b71e:	e8 a5 da fb ff       	call   0x4391c8
47b723:	8b 55 fc             	mov    -0x4(%ebp),%edx
47b726:	8b 45 f4             	mov    -0xc(%ebp),%eax
47b729:	8b 08                	mov    (%eax),%ecx
47b72b:	ff 51 60             	call   *0x60(%ecx)
47b72e:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b731:	8b 40 30             	mov    0x30(%eax),%eax
47b734:	b2 01                	mov    $0x1,%dl
47b736:	e8 b1 cf fc ff       	call   0x4486ec
47b73b:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b73e:	8b 40 30             	mov    0x30(%eax),%eax
47b741:	8b 10                	mov    (%eax),%edx
47b743:	ff 92 c0 00 00 00    	call   *0xc0(%edx)
47b749:	e8 6a c2 f8 ff       	call   0x4079b8
47b74e:	3b 45 f0             	cmp    -0x10(%ebp),%eax
47b751:	74 14                	je     0x47b767
47b753:	6a 00                	push   $0x0
47b755:	6a 01                	push   $0x1
47b757:	68 86 00 00 00       	push   $0x86
47b75c:	8b 45 f0             	mov    -0x10(%ebp),%eax
47b75f:	50                   	push   %eax
47b760:	e8 ab c5 f8 ff       	call   0x407d10
47b765:	eb 05                	jmp    0x47b76c
47b767:	33 c0                	xor    %eax,%eax
47b769:	89 45 f0             	mov    %eax,-0x10(%ebp)
47b76c:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b76f:	8a 15 18 b9 47 00    	mov    0x47b918,%dl
47b775:	88 50 34             	mov    %dl,0x34(%eax)
47b778:	55                   	push   %ebp
47b779:	e8 b2 fb ff ff       	call   0x47b330
47b77e:	59                   	pop    %ecx
47b77f:	33 c0                	xor    %eax,%eax
47b781:	5a                   	pop    %edx
47b782:	59                   	pop    %ecx
47b783:	59                   	pop    %ecx
47b784:	64 89 10             	mov    %edx,%fs:(%eax)
47b787:	68 ad b7 47 00       	push   $0x47b7ad
47b78c:	8d 55 e8             	lea    -0x18(%ebp),%edx
47b78f:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b792:	8b 40 30             	mov    0x30(%eax),%eax
47b795:	e8 32 d0 fc ff       	call   0x4487cc
47b79a:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b79d:	83 c0 30             	add    $0x30,%eax
47b7a0:	e8 b7 32 f9 ff       	call   0x40ea5c
47b7a5:	c3                   	ret
47b7a6:	e9 61 8a f8 ff       	jmp    0x40420c
47b7ab:	eb df                	jmp    0x47b78c
47b7ad:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b7b0:	8a 15 18 b9 47 00    	mov    0x47b918,%dl
47b7b6:	3a 50 34             	cmp    0x34(%eax),%dl
47b7b9:	75 2c                	jne    0x47b7e7
47b7bb:	8b 45 f4             	mov    -0xc(%ebp),%eax
47b7be:	80 b8 c0 00 00 00 00 	cmpb   $0x0,0xc0(%eax)
47b7c5:	74 20                	je     0x47b7e7
47b7c7:	8d 55 e8             	lea    -0x18(%ebp),%edx
47b7ca:	8b 5d f4             	mov    -0xc(%ebp),%ebx
47b7cd:	8b c3                	mov    %ebx,%eax
47b7cf:	8b 08                	mov    (%eax),%ecx
47b7d1:	ff 51 5c             	call   *0x5c(%ecx)
47b7d4:	84 c0                	test   %al,%al
47b7d6:	74 0f                	je     0x47b7e7
47b7d8:	b9 02 00 00 00       	mov    $0x2,%ecx
47b7dd:	8b 55 e8             	mov    -0x18(%ebp),%edx
47b7e0:	8b c3                	mov    %ebx,%eax
47b7e2:	e8 a5 f5 ff ff       	call   0x47ad8c
47b7e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b7ea:	8b 40 24             	mov    0x24(%eax),%eax
47b7ed:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
47b7f3:	8b 10                	mov    (%eax),%edx
47b7f5:	ff 92 88 00 00 00    	call   *0x88(%edx)
47b7fb:	e8 b8 c1 f8 ff       	call   0x4079b8
47b800:	85 c0                	test   %eax,%eax
47b802:	74 1b                	je     0x47b81f
47b804:	8b 45 ec             	mov    -0x14(%ebp),%eax
47b807:	50                   	push   %eax
47b808:	e8 53 c5 f8 ff       	call   0x407d60
47b80d:	e8 b6 c1 f8 ff       	call   0x4079c8
47b812:	85 c0                	test   %eax,%eax
47b814:	75 09                	jne    0x47b81f
47b816:	8b 45 f8             	mov    -0x8(%ebp),%eax
47b819:	50                   	push   %eax
47b81a:	e8 11 c5 f8 ff       	call   0x407d30
47b81f:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
47b823:	74 1f                	je     0x47b844
47b825:	6a 00                	push   $0x0
47b827:	e8 8c c1 f8 ff       	call   0x4079b8
47b82c:	3b 45 f0             	cmp    -0x10(%ebp),%eax