4b339f:	83 c0 18             	add    $0x18,%eax
4b33a2:	03 c1                	add    %ecx,%eax
4b33a4:	c3                   	ret
4b33a5:	c1 e8 10             	shr    $0x10,%eax
4b33a8:	c1 e1 05             	shl    $0x5,%ecx
4b33ab:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b33b2:	83 c0 10             	add    $0x10,%eax
4b33b5:	03 c1                	add    %ecx,%eax
4b33b7:	c3                   	ret
4b33b8:	a9 00 ff 00 00       	test   $0xff00,%eax
4b33bd:	74 13                	je     0x4b33d2
4b33bf:	c1 e8 08             	shr    $0x8,%eax
4b33c2:	c1 e1 05             	shl    $0x5,%ecx
4b33c5:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b33cc:	83 c0 08             	add    $0x8,%eax
4b33cf:	03 c1                	add    %ecx,%eax
4b33d1:	c3                   	ret
4b33d2:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b33d9:	c1 e1 05             	shl    $0x5,%ecx
4b33dc:	03 c1                	add    %ecx,%eax
4b33de:	c3                   	ret
4b33df:	cc                   	int3
4b33e0:	8b 44 24 04          	mov    0x4(%esp),%eax
4b33e4:	a9 00 00 ff ff       	test   $0xffff0000,%eax
4b33e9:	74 23                	je     0x4b340e
4b33eb:	a9 00 00 00 ff       	test   $0xff000000,%eax
4b33f0:	74 0e                	je     0x4b3400
4b33f2:	c1 e8 18             	shr    $0x18,%eax
4b33f5:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b33fc:	83 c0 18             	add    $0x18,%eax
4b33ff:	c3                   	ret
4b3400:	c1 e8 10             	shr    $0x10,%eax
4b3403:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b340a:	83 c0 10             	add    $0x10,%eax
4b340d:	c3                   	ret
4b340e:	a9 00 ff 00 00       	test   $0xff00,%eax
4b3413:	74 0e                	je     0x4b3423
4b3415:	c1 e8 08             	shr    $0x8,%eax
4b3418:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b341f:	83 c0 08             	add    $0x8,%eax
4b3422:	c3                   	ret
4b3423:	0f b6 80 c0 a1 6a 00 	movzbl 0x6aa1c0(%eax),%eax
4b342a:	c3                   	ret
4b342b:	cc                   	int3
4b342c:	cc                   	int3
4b342d:	cc                   	int3
4b342e:	cc                   	int3
4b342f:	cc                   	int3
4b3430:	53                   	push   %ebx
4b3431:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
4b3435:	85 db                	test   %ebx,%ebx
4b3437:	79 04                	jns    0x4b343d
4b3439:	33 c0                	xor    %eax,%eax
4b343b:	5b                   	pop    %ebx
4b343c:	c3                   	ret
4b343d:	8b c3                	mov    %ebx,%eax
4b343f:	99                   	cltd
4b3440:	83 e2 1f             	and    $0x1f,%edx
4b3443:	55                   	push   %ebp
4b3444:	56                   	push   %esi
4b3445:	57                   	push   %edi
4b3446:	8d 2c 02             	lea    (%edx,%eax,1),%ebp
4b3449:	c1 fd 05             	sar    $0x5,%ebp
4b344c:	81 e3 1f 00 00 80    	and    $0x8000001f,%ebx
4b3452:	79 05                	jns    0x4b3459
4b3454:	4b                   	dec    %ebx
4b3455:	83 cb e0             	or     $0xffffffe0,%ebx
4b3458:	43                   	inc    %ebx
4b3459:	8b 74 24 14          	mov    0x14(%esp),%esi
4b345d:	39 6e 04             	cmp    %ebp,0x4(%esi)
4b3460:	7f 3f                	jg     0x4b34a1
4b3462:	8d 7d 01             	lea    0x1(%ebp),%edi
4b3465:	3b 7e 08             	cmp    0x8(%esi),%edi
4b3468:	7f 04                	jg     0x4b346e
4b346a:	8b c6                	mov    %esi,%eax
4b346c:	eb 0a                	jmp    0x4b3478
4b346e:	57                   	push   %edi
4b346f:	56                   	push   %esi
4b3470:	e8 2b 02 00 00       	call   0x4b36a0
4b3475:	83 c4 08             	add    $0x8,%esp
4b3478:	85 c0                	test   %eax,%eax
4b347a:	75 05                	jne    0x4b3481
4b347c:	5f                   	pop    %edi
4b347d:	5e                   	pop    %esi
4b347e:	5d                   	pop    %ebp
4b347f:	5b                   	pop    %ebx
4b3480:	c3                   	ret
4b3481:	8b 46 04             	mov    0x4(%esi),%eax
4b3484:	3b c7                	cmp    %edi,%eax
4b3486:	7d 16                	jge    0x4b349e
4b3488:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
4b348f:	00
4b3490:	8b 0e                	mov    (%esi),%ecx
4b3492:	c7 04 81 00 00 00 00 	movl   $0x0,(%ecx,%eax,4)
4b3499:	40                   	inc    %eax
4b349a:	3b c7                	cmp    %edi,%eax
4b349c:	7c f2                	jl     0x4b3490
4b349e:	89 7e 04             	mov    %edi,0x4(%esi)
4b34a1:	8b 06                	mov    (%esi),%eax
4b34a3:	5f                   	pop    %edi
4b34a4:	5e                   	pop    %esi
4b34a5:	8d 0c a8             	lea    (%eax,%ebp,4),%ecx
4b34a8:	8b 01                	mov    (%ecx),%eax
4b34aa:	0f ab d8             	bts    %ebx,%eax
4b34ad:	5d                   	pop    %ebp
4b34ae:	89 01                	mov    %eax,(%ecx)
4b34b0:	b8 01 00 00 00       	mov    $0x1,%eax
4b34b5:	5b                   	pop    %ebx
4b34b6:	c3                   	ret
4b34b7:	cc                   	int3
4b34b8:	cc                   	int3
4b34b9:	cc                   	int3
4b34ba:	cc                   	int3
4b34bb:	cc                   	int3
4b34bc:	cc                   	int3
4b34bd:	cc                   	int3
4b34be:	cc                   	int3
4b34bf:	cc                   	int3
4b34c0:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
4b34c5:	8b 44 24 04          	mov    0x4(%esp),%eax
4b34c9:	74 0e                	je     0x4b34d9
4b34cb:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
4b34cf:	74 08                	je     0x4b34d9
4b34d1:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%eax)
4b34d8:	c3                   	ret
4b34d9:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
4b34e0:	c3                   	ret
4b34e1:	cc                   	int3
4b34e2:	cc                   	int3
4b34e3:	cc                   	int3
4b34e4:	cc                   	int3
4b34e5:	cc                   	int3
4b34e6:	cc                   	int3
4b34e7:	cc                   	int3
4b34e8:	cc                   	int3
4b34e9:	cc                   	int3
4b34ea:	cc                   	int3
4b34eb:	cc                   	int3
4b34ec:	cc                   	int3
4b34ed:	cc                   	int3
4b34ee:	cc                   	int3
4b34ef:	cc                   	int3
4b34f0:	56                   	push   %esi
4b34f1:	8b 74 24 08          	mov    0x8(%esp),%esi
4b34f5:	57                   	push   %edi
4b34f6:	83 7e 08 01          	cmpl   $0x1,0x8(%esi)
4b34fa:	7d 29                	jge    0x4b3525
4b34fc:	6a 01                	push   $0x1
4b34fe:	56                   	push   %esi
4b34ff:	e8 dc 01 00 00       	call   0x4b36e0
4b3504:	8b f8                	mov    %eax,%edi
4b3506:	83 c4 08             	add    $0x8,%esp
4b3509:	85 ff                	test   %edi,%edi
4b350b:	74 39                	je     0x4b3546
4b350d:	8b 06                	mov    (%esi),%eax
4b350f:	85 c0                	test   %eax,%eax
4b3511:	74 09                	je     0x4b351c
4b3513:	50                   	push   %eax
4b3514:	e8 17 cc fe ff       	call   0x4a0130
4b3519:	83 c4 04             	add    $0x4,%esp
4b351c:	89 3e                	mov    %edi,(%esi)
4b351e:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
4b3525:	8b 06                	mov    (%esi),%eax
4b3527:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4b352b:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
4b3532:	5f                   	pop    %edi
4b3533:	89 08                	mov    %ecx,(%eax)
4b3535:	33 c0                	xor    %eax,%eax
4b3537:	85 c9                	test   %ecx,%ecx
4b3539:	0f 95 c0             	setne  %al
4b353c:	89 46 04             	mov    %eax,0x4(%esi)
4b353f:	b8 01 00 00 00       	mov    $0x1,%eax
4b3544:	5e                   	pop    %esi
4b3545:	c3                   	ret
4b3546:	5f                   	pop    %edi
4b3547:	33 c0                	xor    %eax,%eax
4b3549:	5e                   	pop    %esi
4b354a:	c3                   	ret
4b354b:	cc                   	int3
4b354c:	cc                   	int3
4b354d:	cc                   	int3
4b354e:	cc                   	int3
4b354f:	cc                   	int3
4b3550:	8b 54 24 08          	mov    0x8(%esp),%edx
4b3554:	57                   	push   %edi
4b3555:	8b 7c 24 08          	mov    0x8(%esp),%edi
4b3559:	8b 4f 04             	mov    0x4(%edi),%ecx
4b355c:	8b c1                	mov    %ecx,%eax
4b355e:	2b 42 04             	sub    0x4(%edx),%eax
4b3561:	75 23                	jne    0x4b3586
4b3563:	83 c1 ff             	add    $0xffffffff,%ecx
4b3566:	8b 3f                	mov    (%edi),%edi
4b3568:	8b 12                	mov    (%edx),%edx
4b356a:	56                   	push   %esi
4b356b:	78 16                	js     0x4b3583
4b356d:	8d 04 8a             	lea    (%edx,%ecx,4),%eax
4b3570:	2b fa                	sub    %edx,%edi
4b3572:	8b 14 07             	mov    (%edi,%eax,1),%edx
4b3575:	8b 30                	mov    (%eax),%esi
4b3577:	3b f2                	cmp    %edx,%esi
4b3579:	75 0d                	jne    0x4b3588
4b357b:	83 e8 04             	sub    $0x4,%eax
4b357e:	83 e9 01             	sub    $0x1,%ecx
4b3581:	79 ef                	jns    0x4b3572
4b3583:	33 c0                	xor    %eax,%eax
4b3585:	5e                   	pop    %esi
4b3586:	5f                   	pop    %edi
4b3587:	c3                   	ret
4b3588:	1b c0                	sbb    %eax,%eax
4b358a:	83 e0 02             	and    $0x2,%eax
4b358d:	5e                   	pop    %esi
4b358e:	48                   	dec    %eax
4b358f:	5f                   	pop    %edi
4b3590:	c3                   	ret
4b3591:	cc                   	int3
4b3592:	cc                   	int3
4b3593:	cc                   	int3
4b3594:	cc                   	int3
4b3595:	cc                   	int3
4b3596:	cc                   	int3
4b3597:	cc                   	int3
4b3598:	cc                   	int3
4b3599:	cc                   	int3
4b359a:	cc                   	int3
4b359b:	cc                   	int3
4b359c:	cc                   	int3
4b359d:	cc                   	int3
4b359e:	cc                   	int3
4b359f:	cc                   	int3
4b35a0:	b8 ac a1 6a 00       	mov    $0x6aa1ac,%eax
4b35a5:	c3                   	ret
4b35a6:	cc                   	int3
4b35a7:	cc                   	int3
4b35a8:	cc                   	int3
4b35a9:	cc                   	int3
4b35aa:	cc                   	int3
4b35ab:	cc                   	int3
4b35ac:	cc                   	int3
4b35ad:	cc                   	int3
4b35ae:	cc                   	int3
4b35af:	cc                   	int3
4b35b0:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4b35b4:	53                   	push   %ebx
4b35b5:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4b35b9:	55                   	push   %ebp
4b35ba:	56                   	push   %esi
4b35bb:	8b 74 24 14          	mov    0x14(%esp),%esi
4b35bf:	8d 6b ff             	lea    -0x1(%ebx),%ebp
4b35c2:	85 c9                	test   %ecx,%ecx
4b35c4:	79 17                	jns    0x4b35dd
4b35c6:	8b c5                	mov    %ebp,%eax
4b35c8:	8b d1                	mov    %ecx,%edx
4b35ca:	2b c1                	sub    %ecx,%eax
4b35cc:	8d 04 86             	lea    (%esi,%eax,4),%eax
4b35cf:	90                   	nop
4b35d0:	83 38 00             	cmpl   $0x0,(%eax)
4b35d3:	75 41                	jne    0x4b3616
4b35d5:	83 e8 04             	sub    $0x4,%eax
4b35d8:	83 c2 01             	add    $0x1,%edx
4b35db:	78 f3                	js     0x4b35d0
4b35dd:	57                   	push   %edi
4b35de:	8b 7c 24 14          	mov    0x14(%esp),%edi
4b35e2:	85 c9                	test   %ecx,%ecx
4b35e4:	7e 17                	jle    0x4b35fd
4b35e6:	8d 04 29             	lea    (%ecx,%ebp,1),%eax
4b35e9:	8d 04 87             	lea    (%edi,%eax,4),%eax
4b35ec:	0f 1f 40 00          	nopl   0x0(%eax)
4b35f0:	83 38 00             	cmpl   $0x0,(%eax)
4b35f3:	75 28                	jne    0x4b361d
4b35f5:	49                   	dec    %ecx
4b35f6:	83 e8 04             	sub    $0x4,%eax
4b35f9:	85 c9                	test   %ecx,%ecx
4b35fb:	7f f3                	jg     0x4b35f0
4b35fd:	8b 44 9f fc          	mov    -0x4(%edi,%ebx,4),%eax
4b3601:	8b 4c 9e fc          	mov    -0x4(%esi,%ebx,4),%ecx
4b3605:	3b c1                	cmp    %ecx,%eax
4b3607:	74 1e                	je     0x4b3627
4b3609:	3b c8                	cmp    %eax,%ecx
4b360b:	5f                   	pop    %edi
4b360c:	1b c0                	sbb    %eax,%eax
4b360e:	5e                   	pop    %esi
4b360f:	83 e0 02             	and    $0x2,%eax
4b3612:	5d                   	pop    %ebp
4b3613:	48                   	dec    %eax
4b3614:	5b                   	pop    %ebx
4b3615:	c3                   	ret
4b3616:	5e                   	pop    %esi
4b3617:	5d                   	pop    %ebp
4b3618:	83 c8 ff             	or     $0xffffffff,%eax
4b361b:	5b                   	pop    %ebx
4b361c:	c3                   	ret
4b361d:	5f                   	pop    %edi
4b361e:	5e                   	pop    %esi
4b361f:	5d                   	pop    %ebp
4b3620:	b8 01 00 00 00       	mov    $0x1,%eax
4b3625:	5b                   	pop    %ebx
4b3626:	c3                   	ret
4b3627:	8d 4b fe             	lea    -0x2(%ebx),%ecx
4b362a:	85 c9                	test   %ecx,%ecx
4b362c:	78 16                	js     0x4b3644
4b362e:	8d 04 8e             	lea    (%esi,%ecx,4),%eax
4b3631:	2b fe                	sub    %esi,%edi
4b3633:	8b 14 07             	mov    (%edi,%eax,1),%edx
4b3636:	8b 30                	mov    (%eax),%esi
4b3638:	3b f2                	cmp    %edx,%esi
4b363a:	75 cf                	jne    0x4b360b
4b363c:	83 e8 04             	sub    $0x4,%eax
4b363f:	83 e9 01             	sub    $0x1,%ecx
4b3642:	79 ef                	jns    0x4b3633
4b3644:	5f                   	pop    %edi
4b3645:	5e                   	pop    %esi
4b3646:	5d                   	pop    %ebp
4b3647:	33 c0                	xor    %eax,%eax
4b3649:	5b                   	pop    %ebx
4b364a:	c3                   	ret
4b364b:	cc                   	int3
4b364c:	cc                   	int3
4b364d:	cc                   	int3
4b364e:	cc                   	int3
4b364f:	cc                   	int3
4b3650:	8b 54 24 08          	mov    0x8(%esp),%edx
4b3654:	56                   	push   %esi
4b3655:	8b 74 24 10          	mov    0x10(%esp),%esi
4b3659:	57                   	push   %edi
4b365a:	8b 7c 24 0c          	mov    0xc(%esp),%edi
4b365e:	8b 4c b2 fc          	mov    -0x4(%edx,%esi,4),%ecx
4b3662:	8b 44 b7 fc          	mov    -0x4(%edi,%esi,4),%eax
4b3666:	3b c1                	cmp    %ecx,%eax
4b3668:	74 0b                	je     0x4b3675
4b366a:	3b c8                	cmp    %eax,%ecx
4b366c:	1b c0                	sbb    %eax,%eax
4b366e:	83 e0 02             	and    $0x2,%eax
4b3671:	5f                   	pop    %edi
4b3672:	48                   	dec    %eax
4b3673:	5e                   	pop    %esi
4b3674:	c3                   	ret
4b3675:	8d 4e fe             	lea    -0x2(%esi),%ecx
4b3678:	85 c9                	test   %ecx,%ecx
4b367a:	78 16                	js     0x4b3692
4b367c:	8d 04 8a             	lea    (%edx,%ecx,4),%eax
4b367f:	2b fa                	sub    %edx,%edi
4b3681:	8b 14 07             	mov    (%edi,%eax,1),%edx
4b3684:	8b 30                	mov    (%eax),%esi
4b3686:	3b f2                	cmp    %edx,%esi
4b3688:	75 e2                	jne    0x4b366c
4b368a:	83 e8 04             	sub    $0x4,%eax
4b368d:	83 e9 01             	sub    $0x1,%ecx
4b3690:	79 ef                	jns    0x4b3681
4b3692:	5f                   	pop    %edi
4b3693:	33 c0                	xor    %eax,%eax