4e93fa:	57                   	push   %edi
4e93fb:	55                   	push   %ebp
4e93fc:	83 c4 e4             	add    $0xffffffe4,%esp
4e93ff:	89 04 24             	mov    %eax,(%esp)
4e9402:	8b 04 24             	mov    (%esp),%eax
4e9405:	8b 90 b8 01 00 00    	mov    0x1b8(%eax),%edx
4e940b:	89 54 24 04          	mov    %edx,0x4(%esp)
4e940f:	33 d2                	xor    %edx,%edx
4e9411:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4e9415:	8b 81 a4 00 00 00    	mov    0xa4(%ecx),%eax
4e941b:	89 44 24 08          	mov    %eax,0x8(%esp)
4e941f:	89 54 24 10          	mov    %edx,0x10(%esp)
4e9423:	8b 0c 24             	mov    (%esp),%ecx
4e9426:	8b 41 18             	mov    0x18(%ecx),%eax
4e9429:	89 44 24 14          	mov    %eax,0x14(%esp)
4e942d:	8b 44 24 14          	mov    0x14(%esp),%eax
4e9431:	8b 54 24 14          	mov    0x14(%esp),%edx
4e9435:	8b 58 04             	mov    0x4(%eax),%ebx
4e9438:	8b 44 24 08          	mov    0x8(%esp),%eax
4e943c:	85 c0                	test   %eax,%eax
4e943e:	8b 32                	mov    (%edx),%esi
4e9440:	0f 85 35 01 00 00    	jne    0x4e957b
4e9446:	85 db                	test   %ebx,%ebx
4e9448:	75 22                	jne    0x4e946c
4e944a:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4e944e:	8b 04 24             	mov    (%esp),%eax
4e9451:	ff 53 0c             	call   *0xc(%ebx)
4e9454:	85 c0                	test   %eax,%eax
4e9456:	75 07                	jne    0x4e945f
4e9458:	33 c0                	xor    %eax,%eax
4e945a:	e9 9b 02 00 00       	jmp    0x4e96fa
4e945f:	8b 54 24 14          	mov    0x14(%esp),%edx
4e9463:	8b 44 24 14          	mov    0x14(%esp),%eax
4e9467:	8b 58 04             	mov    0x4(%eax),%ebx
4e946a:	8b 32                	mov    (%edx),%esi
4e946c:	33 c0                	xor    %eax,%eax
4e946e:	4b                   	dec    %ebx
4e946f:	8a 06                	mov    (%esi),%al
4e9471:	46                   	inc    %esi
4e9472:	c1 e0 08             	shl    $0x8,%eax
4e9475:	85 db                	test   %ebx,%ebx
4e9477:	89 44 24 10          	mov    %eax,0x10(%esp)
4e947b:	75 22                	jne    0x4e949f
4e947d:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4e9481:	8b 04 24             	mov    (%esp),%eax
4e9484:	ff 53 0c             	call   *0xc(%ebx)
4e9487:	85 c0                	test   %eax,%eax
4e9489:	75 07                	jne    0x4e9492
4e948b:	33 c0                	xor    %eax,%eax
4e948d:	e9 68 02 00 00       	jmp    0x4e96fa
4e9492:	8b 54 24 14          	mov    0x14(%esp),%edx
4e9496:	8b 44 24 14          	mov    0x14(%esp),%eax
4e949a:	8b 58 04             	mov    0x4(%eax),%ebx
4e949d:	8b 32                	mov    (%edx),%esi
4e949f:	4b                   	dec    %ebx
4e94a0:	33 c0                	xor    %eax,%eax
4e94a2:	8a 06                	mov    (%esi),%al
4e94a4:	01 44 24 10          	add    %eax,0x10(%esp)
4e94a8:	46                   	inc    %esi
4e94a9:	83 6c 24 10 02       	subl   $0x2,0x10(%esp)
4e94ae:	8b 54 24 10          	mov    0x10(%esp),%edx
4e94b2:	85 d2                	test   %edx,%edx
4e94b4:	0f 8c b5 00 00 00    	jl     0x4e956f
4e94ba:	8b 0c 24             	mov    (%esp),%ecx
4e94bd:	8b 81 a0 01 00 00    	mov    0x1a0(%ecx),%eax
4e94c3:	3d fe 00 00 00       	cmp    $0xfe,%eax
4e94c8:	75 0d                	jne    0x4e94d7
4e94ca:	8b 54 24 04          	mov    0x4(%esp),%edx
4e94ce:	8b 4a 60             	mov    0x60(%edx),%ecx
4e94d1:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4e94d5:	eb 0f                	jmp    0x4e94e6
4e94d7:	8b 54 24 04          	mov    0x4(%esp),%edx
4e94db:	8b 84 82 e4 fc ff ff 	mov    -0x31c(%edx,%eax,4),%eax
4e94e2:	89 44 24 18          	mov    %eax,0x18(%esp)
4e94e6:	8b 7c 24 10          	mov    0x10(%esp),%edi
4e94ea:	8b 44 24 18          	mov    0x18(%esp),%eax
4e94ee:	3b f8                	cmp    %eax,%edi
4e94f0:	73 04                	jae    0x4e94f6
4e94f2:	89 7c 24 18          	mov    %edi,0x18(%esp)
4e94f6:	8b 04 24             	mov    (%esp),%eax
4e94f9:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4e94fd:	83 c1 14             	add    $0x14,%ecx
4e9500:	ba 01 00 00 00       	mov    $0x1,%edx
4e9505:	8b 68 04             	mov    0x4(%eax),%ebp
4e9508:	ff 55 04             	call   *0x4(%ebp)
4e950b:	89 44 24 08          	mov    %eax,0x8(%esp)
4e950f:	33 d2                	xor    %edx,%edx
4e9511:	8b 44 24 08          	mov    0x8(%esp),%eax
4e9515:	89 10                	mov    %edx,(%eax)
4e9517:	8b 0c 24             	mov    (%esp),%ecx
4e951a:	8b 54 24 08          	mov    0x8(%esp),%edx
4e951e:	8a 81 a0 01 00 00    	mov    0x1a0(%ecx),%al
4e9524:	88 42 04             	mov    %al,0x4(%edx)
4e9527:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4e952b:	89 79 08             	mov    %edi,0x8(%ecx)
4e952e:	8b 44 24 08          	mov    0x8(%esp),%eax
4e9532:	8b 54 24 18          	mov    0x18(%esp),%edx
4e9536:	89 50 0c             	mov    %edx,0xc(%eax)
4e9539:	8b 44 24 08          	mov    0x8(%esp),%eax
4e953d:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4e9541:	83 c1 14             	add    $0x14,%ecx
4e9544:	89 48 10             	mov    %ecx,0x10(%eax)
4e9547:	8b e9                	mov    %ecx,%ebp
4e9549:	8b 44 24 04          	mov    0x4(%esp),%eax
4e954d:	8b 54 24 08          	mov    0x8(%esp),%edx
4e9551:	89 90 a4 00 00 00    	mov    %edx,0xa4(%eax)
4e9557:	33 c0                	xor    %eax,%eax
4e9559:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4e955d:	33 ff                	xor    %edi,%edi
4e955f:	89 81 a8 00 00 00    	mov    %eax,0xa8(%ecx)
4e9565:	8b 44 24 18          	mov    0x18(%esp),%eax
4e9569:	89 44 24 0c          	mov    %eax,0xc(%esp)
4e956d:	eb 2a                	jmp    0x4e9599
4e956f:	33 d2                	xor    %edx,%edx
4e9571:	89 54 24 0c          	mov    %edx,0xc(%esp)
4e9575:	8b fa                	mov    %edx,%edi
4e9577:	33 ed                	xor    %ebp,%ebp
4e9579:	eb 1e                	jmp    0x4e9599
4e957b:	8b 44 24 04          	mov    0x4(%esp),%eax
4e957f:	8b b8 a8 00 00 00    	mov    0xa8(%eax),%edi
4e9585:	8b 44 24 08          	mov    0x8(%esp),%eax
4e9589:	8b 50 0c             	mov    0xc(%eax),%edx
4e958c:	89 54 24 0c          	mov    %edx,0xc(%esp)
4e9590:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4e9594:	8b 69 10             	mov    0x10(%ecx),%ebp
4e9597:	03 ef                	add    %edi,%ebp
4e9599:	8b 44 24 0c          	mov    0xc(%esp),%eax
4e959d:	3b f8                	cmp    %eax,%edi
4e959f:	73 5c                	jae    0x4e95fd
4e95a1:	8b 54 24 14          	mov    0x14(%esp),%edx
4e95a5:	85 db                	test   %ebx,%ebx
4e95a7:	89 32                	mov    %esi,(%edx)
4e95a9:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4e95ad:	89 59 04             	mov    %ebx,0x4(%ecx)
4e95b0:	8b 44 24 04          	mov    0x4(%esp),%eax
4e95b4:	89 b8 a8 00 00 00    	mov    %edi,0xa8(%eax)
4e95ba:	75 2d                	jne    0x4e95e9
4e95bc:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4e95c0:	8b 04 24             	mov    (%esp),%eax
4e95c3:	ff 53 0c             	call   *0xc(%ebx)
4e95c6:	85 c0                	test   %eax,%eax
4e95c8:	75 07                	jne    0x4e95d1
4e95ca:	33 c0                	xor    %eax,%eax
4e95cc:	e9 29 01 00 00       	jmp    0x4e96fa
4e95d1:	8b 54 24 14          	mov    0x14(%esp),%edx
4e95d5:	8b 44 24 14          	mov    0x14(%esp),%eax
4e95d9:	8b 58 04             	mov    0x4(%eax),%ebx
4e95dc:	8b 32                	mov    (%edx),%esi
4e95de:	eb 09                	jmp    0x4e95e9
4e95e0:	8a 06                	mov    (%esi),%al
4e95e2:	46                   	inc    %esi
4e95e3:	88 45 00             	mov    %al,0x0(%ebp)
4e95e6:	45                   	inc    %ebp
4e95e7:	4b                   	dec    %ebx
4e95e8:	47                   	inc    %edi
4e95e9:	8b 54 24 0c          	mov    0xc(%esp),%edx
4e95ed:	3b fa                	cmp    %edx,%edi
4e95ef:	73 04                	jae    0x4e95f5
4e95f1:	85 db                	test   %ebx,%ebx
4e95f3:	77 eb                	ja     0x4e95e0
4e95f5:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4e95f9:	3b f9                	cmp    %ecx,%edi
4e95fb:	72 a4                	jb     0x4e95a1
4e95fd:	8b 44 24 08          	mov    0x8(%esp),%eax
4e9601:	85 c0                	test   %eax,%eax
4e9603:	74 4d                	je     0x4e9652
4e9605:	8b 14 24             	mov    (%esp),%edx
4e9608:	8b 8a 30 01 00 00    	mov    0x130(%edx),%ecx
4e960e:	85 c9                	test   %ecx,%ecx
4e9610:	75 0f                	jne    0x4e9621
4e9612:	8b 04 24             	mov    (%esp),%eax
4e9615:	8b 54 24 08          	mov    0x8(%esp),%edx
4e9619:	89 90 30 01 00 00    	mov    %edx,0x130(%eax)
4e961f:	eb 19                	jmp    0x4e963a
4e9621:	8b 0c 24             	mov    (%esp),%ecx
4e9624:	8b 81 30 01 00 00    	mov    0x130(%ecx),%eax
4e962a:	eb 02                	jmp    0x4e962e
4e962c:	8b c2                	mov    %edx,%eax
4e962e:	8b 10                	mov    (%eax),%edx
4e9630:	85 d2                	test   %edx,%edx
4e9632:	75 f8                	jne    0x4e962c
4e9634:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4e9638:	89 08                	mov    %ecx,(%eax)
4e963a:	8b 44 24 08          	mov    0x8(%esp),%eax
4e963e:	8b 68 10             	mov    0x10(%eax),%ebp
4e9641:	8b 44 24 08          	mov    0x8(%esp),%eax
4e9645:	8b 50 08             	mov    0x8(%eax),%edx
4e9648:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4e964c:	2b d1                	sub    %ecx,%edx
4e964e:	89 54 24 10          	mov    %edx,0x10(%esp)
4e9652:	8b 44 24 04          	mov    0x4(%esp),%eax
4e9656:	33 d2                	xor    %edx,%edx
4e9658:	89 90 a4 00 00 00    	mov    %edx,0xa4(%eax)
4e965e:	8b 0c 24             	mov    (%esp),%ecx
4e9661:	8b 81 a0 01 00 00    	mov    0x1a0(%ecx),%eax
4e9667:	2d e0 00 00 00       	sub    $0xe0,%eax
4e966c:	74 07                	je     0x4e9675
4e966e:	83 e8 0e             	sub    $0xe,%eax
4e9671:	74 18                	je     0x4e968b
4e9673:	eb 2c                	jmp    0x4e96a1
4e9675:	8b 54 24 10          	mov    0x10(%esp),%edx
4e9679:	52                   	push   %edx
4e967a:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4e967e:	8b d5                	mov    %ebp,%edx
4e9680:	8b 44 24 04          	mov    0x4(%esp),%eax
4e9684:	e8 93 f8 ff ff       	call   0x4e8f1c
4e9689:	eb 48                	jmp    0x4e96d3
4e968b:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4e968f:	51                   	push   %ecx
4e9690:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4e9694:	8b d5                	mov    %ebp,%edx
4e9696:	8b 44 24 04          	mov    0x4(%esp),%eax
4e969a:	e8 fd fa ff ff       	call   0x4e919c
4e969f:	eb 32                	jmp    0x4e96d3
4e96a1:	8b 04 24             	mov    (%esp),%eax
4e96a4:	8b 00                	mov    (%eax),%eax
4e96a6:	c7 40 14 5b 00 00 00 	movl   $0x5b,0x14(%eax)
4e96ad:	8b 14 24             	mov    (%esp),%edx
4e96b0:	8b 8a a0 01 00 00    	mov    0x1a0(%edx),%ecx
4e96b6:	89 48 18             	mov    %ecx,0x18(%eax)
4e96b9:	8b 54 24 0c          	mov    0xc(%esp),%edx
4e96bd:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4e96c1:	03 d1                	add    %ecx,%edx
4e96c3:	89 50 1c             	mov    %edx,0x1c(%eax)
4e96c6:	ba 01 00 00 00       	mov    $0x1,%edx
4e96cb:	8b 04 24             	mov    (%esp),%eax
4e96ce:	8b 08                	mov    (%eax),%ecx
4e96d0:	ff 51 04             	call   *0x4(%ecx)
4e96d3:	8b 44 24 14          	mov    0x14(%esp),%eax
4e96d7:	89 30                	mov    %esi,(%eax)
4e96d9:	8b 54 24 14          	mov    0x14(%esp),%edx
4e96dd:	89 5a 04             	mov    %ebx,0x4(%edx)
4e96e0:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4e96e4:	85 c9                	test   %ecx,%ecx
4e96e6:	7e 0d                	jle    0x4e96f5
4e96e8:	8b 54 24 10          	mov    0x10(%esp),%edx
4e96ec:	8b 04 24             	mov    (%esp),%eax
4e96ef:	8b 48 18             	mov    0x18(%eax),%ecx
4e96f2:	ff 51 10             	call   *0x10(%ecx)
4e96f5:	b8 01 00 00 00       	mov    $0x1,%eax
4e96fa:	83 c4 1c             	add    $0x1c,%esp
4e96fd:	5d                   	pop    %ebp
4e96fe:	5f                   	pop    %edi
4e96ff:	5e                   	pop    %esi
4e9700:	5b                   	pop    %ebx
4e9701:	c3                   	ret
4e9702:	90                   	nop
4e9703:	90                   	nop
4e9704:	53                   	push   %ebx
4e9705:	56                   	push   %esi
4e9706:	57                   	push   %edi
4e9707:	8b f0                	mov    %eax,%esi
4e9709:	55                   	push   %ebp
4e970a:	51                   	push   %ecx
4e970b:	8b 5e 18             	mov    0x18(%esi),%ebx
4e970e:	8b 6b 04             	mov    0x4(%ebx),%ebp
4e9711:	8b 3b                	mov    (%ebx),%edi
4e9713:	85 ed                	test   %ebp,%ebp
4e9715:	75 12                	jne    0x4e9729
4e9717:	8b c6                	mov    %esi,%eax
4e9719:	ff 53 0c             	call   *0xc(%ebx)
4e971c:	85 c0                	test   %eax,%eax
4e971e:	75 04                	jne    0x4e9724
4e9720:	33 c0                	xor    %eax,%eax
4e9722:	eb 74                	jmp    0x4e9798
4e9724:	8b 3b                	mov    (%ebx),%edi
4e9726:	8b 6b 04             	mov    0x4(%ebx),%ebp
4e9729:	33 c0                	xor    %eax,%eax
4e972b:	4d                   	dec    %ebp
4e972c:	8a 07                	mov    (%edi),%al
4e972e:	47                   	inc    %edi
4e972f:	c1 e0 08             	shl    $0x8,%eax
4e9732:	85 ed                	test   %ebp,%ebp
4e9734:	89 04 24             	mov    %eax,(%esp)
4e9737:	75 12                	jne    0x4e974b
4e9739:	8b c6                	mov    %esi,%eax
4e973b:	ff 53 0c             	call   *0xc(%ebx)
4e973e:	85 c0                	test   %eax,%eax
4e9740:	75 04                	jne    0x4e9746
4e9742:	33 c0                	xor    %eax,%eax
4e9744:	eb 52                	jmp    0x4e9798
4e9746:	8b 3b                	mov    (%ebx),%edi
4e9748:	8b 6b 04             	mov    0x4(%ebx),%ebp
4e974b:	33 c0                	xor    %eax,%eax
4e974d:	4d                   	dec    %ebp
4e974e:	8a 07                	mov    (%edi),%al
4e9750:	47                   	inc    %edi
4e9751:	01 04 24             	add    %eax,(%esp)
4e9754:	83 2c 24 02          	subl   $0x2,(%esp)
4e9758:	8b 06                	mov    (%esi),%eax
4e975a:	c7 40 14 5b 00 00 00 	movl   $0x5b,0x14(%eax)
4e9761:	8b 96 a0 01 00 00    	mov    0x1a0(%esi),%edx
4e9767:	89 50 18             	mov    %edx,0x18(%eax)
4e976a:	ba 01 00 00 00       	mov    $0x1,%edx
4e976f:	8b 0c 24             	mov    (%esp),%ecx
4e9772:	89 48 1c             	mov    %ecx,0x1c(%eax)
4e9775:	8b c6                	mov    %esi,%eax
4e9777:	8b 08                	mov    (%eax),%ecx
4e9779:	ff 51 04             	call   *0x4(%ecx)
4e977c:	89 3b                	mov    %edi,(%ebx)
4e977e:	89 6b 04             	mov    %ebp,0x4(%ebx)
4e9781:	8b 04 24             	mov    (%esp),%eax
4e9784:	85 c0                	test   %eax,%eax
4e9786:	7e 0b                	jle    0x4e9793
4e9788:	8b 14 24             	mov    (%esp),%edx
4e978b:	8b c6                	mov    %esi,%eax
4e978d:	8b 48 18             	mov    0x18(%eax),%ecx
4e9790:	ff 51 10             	call   *0x10(%ecx)
4e9793:	b8 01 00 00 00       	mov    $0x1,%eax
4e9798:	5a                   	pop    %edx
4e9799:	5d                   	pop    %ebp
4e979a:	5f                   	pop    %edi
4e979b:	5e                   	pop    %esi
4e979c:	5b                   	pop    %ebx
4e979d:	c3                   	ret
4e979e:	90                   	nop
4e979f:	90                   	nop
4e97a0:	53                   	push   %ebx
4e97a1:	56                   	push   %esi
4e97a2:	57                   	push   %edi
4e97a3:	55                   	push   %ebp
4e97a4:	51                   	push   %ecx
4e97a5:	89 04 24             	mov    %eax,(%esp)
4e97a8:	8b 04 24             	mov    (%esp),%eax
4e97ab:	8b 78 18             	mov    0x18(%eax),%edi
4e97ae:	8b 1f                	mov    (%edi),%ebx
4e97b0:	8b 77 04             	mov    0x4(%edi),%esi
4e97b3:	85 f6                	test   %esi,%esi
4e97b5:	75 16                	jne    0x4e97cd
4e97b7:	8b 04 24             	mov    (%esp),%eax
4e97ba:	ff 57 0c             	call   *0xc(%edi)
4e97bd:	85 c0                	test   %eax,%eax
4e97bf:	75 07                	jne    0x4e97c8
4e97c1:	33 c0                	xor    %eax,%eax
4e97c3:	e9 e6 00 00 00       	jmp    0x4e98ae
4e97c8:	8b 1f                	mov    (%edi),%ebx
4e97ca:	8b 77 04             	mov    0x4(%edi),%esi
4e97cd:	0f b6 2b             	movzbl (%ebx),%ebp
4e97d0:	43                   	inc    %ebx
4e97d1:	4e                   	dec    %esi
4e97d2:	81 fd ff 00 00 00    	cmp    $0xff,%ebp
4e97d8:	74 38                	je     0x4e9812
4e97da:	8b 04 24             	mov    (%esp),%eax
4e97dd:	8b 90 b8 01 00 00    	mov    0x1b8(%eax),%edx
4e97e3:	ff 42 18             	incl   0x18(%edx)
4e97e6:	89 1f                	mov    %ebx,(%edi)
4e97e8:	89 77 04             	mov    %esi,0x4(%edi)
4e97eb:	85 f6                	test   %esi,%esi
4e97ed:	75 16                	jne    0x4e9805
4e97ef:	8b 04 24             	mov    (%esp),%eax