47342f:	5d                   	pop    %ebp
473430:	c2 04 00             	ret    $0x4
473433:	cc                   	int3
473434:	cc                   	int3
473435:	cc                   	int3
473436:	cc                   	int3
473437:	cc                   	int3
473438:	cc                   	int3
473439:	cc                   	int3
47343a:	cc                   	int3
47343b:	cc                   	int3
47343c:	cc                   	int3
47343d:	cc                   	int3
47343e:	cc                   	int3
47343f:	cc                   	int3
473440:	55                   	push   %ebp
473441:	8b ec                	mov    %esp,%ebp
473443:	83 ec 08             	sub    $0x8,%esp
473446:	53                   	push   %ebx
473447:	56                   	push   %esi
473448:	8b 75 0c             	mov    0xc(%ebp),%esi
47344b:	57                   	push   %edi
47344c:	8b fe                	mov    %esi,%edi
47344e:	c1 ef 03             	shr    $0x3,%edi
473451:	85 ff                	test   %edi,%edi
473453:	0f 84 a0 00 00 00    	je     0x4734f9
473459:	8b c6                	mov    %esi,%eax
47345b:	83 e0 07             	and    $0x7,%eax
47345e:	83 f8 05             	cmp    $0x5,%eax
473461:	0f 87 92 00 00 00    	ja     0x4734f9
473467:	ff 24 85 84 35 47 00 	jmp    *0x473584(,%eax,4)
47346e:	8b 4d 08             	mov    0x8(%ebp),%ecx
473471:	8d 45 f8             	lea    -0x8(%ebp),%eax
473474:	50                   	push   %eax
473475:	e8 56 f8 ff ff       	call   0x472cd0
47347a:	84 c0                	test   %al,%al
47347c:	74 7b                	je     0x4734f9
47347e:	8b 4d 10             	mov    0x10(%ebp),%ecx
473481:	85 c9                	test   %ecx,%ecx
473483:	0f 84 f1 00 00 00    	je     0x47357a
473489:	ff 75 fc             	push   -0x4(%ebp)
47348c:	ff 75 f8             	push   -0x8(%ebp)
47348f:	57                   	push   %edi
473490:	e8 8b d2 fe ff       	call   0x460720
473495:	5f                   	pop    %edi
473496:	5e                   	pop    %esi
473497:	b0 01                	mov    $0x1,%al
473499:	5b                   	pop    %ebx
47349a:	8b e5                	mov    %ebp,%esp
47349c:	5d                   	pop    %ebp
47349d:	c3                   	ret
47349e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4734a1:	8d 45 f8             	lea    -0x8(%ebp),%eax
4734a4:	50                   	push   %eax
4734a5:	e8 66 f7 ff ff       	call   0x472c10
4734aa:	84 c0                	test   %al,%al
4734ac:	74 4b                	je     0x4734f9
4734ae:	8b 4d 10             	mov    0x10(%ebp),%ecx
4734b1:	85 c9                	test   %ecx,%ecx
4734b3:	0f 84 c1 00 00 00    	je     0x47357a
4734b9:	ff 75 fc             	push   -0x4(%ebp)
4734bc:	ff 75 f8             	push   -0x8(%ebp)
4734bf:	57                   	push   %edi
4734c0:	e8 fb d0 fe ff       	call   0x4605c0
4734c5:	5f                   	pop    %edi
4734c6:	5e                   	pop    %esi
4734c7:	b0 01                	mov    $0x1,%al
4734c9:	5b                   	pop    %ebx
4734ca:	8b e5                	mov    %ebp,%esp
4734cc:	5d                   	pop    %ebp
4734cd:	c3                   	ret
4734ce:	8b 75 08             	mov    0x8(%ebp),%esi
4734d1:	8d 45 0c             	lea    0xc(%ebp),%eax
4734d4:	50                   	push   %eax
4734d5:	8b ce                	mov    %esi,%ecx
4734d7:	e8 b4 f7 ff ff       	call   0x472c90
4734dc:	84 c0                	test   %al,%al
4734de:	74 19                	je     0x4734f9
4734e0:	8b 4d 10             	mov    0x10(%ebp),%ecx
4734e3:	ff 75 0c             	push   0xc(%ebp)
4734e6:	85 c9                	test   %ecx,%ecx
4734e8:	75 18                	jne    0x473502
4734ea:	8b ce                	mov    %esi,%ecx
4734ec:	e8 0f ff ff ff       	call   0x473400
4734f1:	84 c0                	test   %al,%al
4734f3:	0f 85 81 00 00 00    	jne    0x47357a
4734f9:	5f                   	pop    %edi
4734fa:	5e                   	pop    %esi
4734fb:	32 c0                	xor    %al,%al
4734fd:	5b                   	pop    %ebx
4734fe:	8b e5                	mov    %ebp,%esp
473500:	5d                   	pop    %ebp
473501:	c3                   	ret
473502:	57                   	push   %edi
473503:	e8 98 d1 fe ff       	call   0x4606a0
473508:	50                   	push   %eax
473509:	8b ce                	mov    %esi,%ecx
47350b:	e8 d0 65 fe ff       	call   0x459ae0
473510:	eb df                	jmp    0x4734f1
473512:	8b 5d 08             	mov    0x8(%ebp),%ebx
473515:	83 43 28 ff          	addl   $0xffffffff,0x28(%ebx)
473519:	78 de                	js     0x4734f9
47351b:	8b 4d 10             	mov    0x10(%ebp),%ecx
47351e:	85 c9                	test   %ecx,%ecx
473520:	75 04                	jne    0x473526
473522:	33 c0                	xor    %eax,%eax
473524:	eb 06                	jmp    0x47352c
473526:	57                   	push   %edi
473527:	e8 f4 d0 fe ff       	call   0x460620
47352c:	50                   	push   %eax
47352d:	53                   	push   %ebx
47352e:	e8 6d 00 00 00       	call   0x4735a0
473533:	83 c4 08             	add    $0x8,%esp
473536:	84 c0                	test   %al,%al
473538:	74 bf                	je     0x4734f9
47353a:	8b 43 28             	mov    0x28(%ebx),%eax
47353d:	3b 43 2c             	cmp    0x2c(%ebx),%eax
473540:	7d 04                	jge    0x473546
473542:	40                   	inc    %eax
473543:	89 43 28             	mov    %eax,0x28(%ebx)
473546:	83 e6 fc             	and    $0xfffffffc,%esi
473549:	83 ce 04             	or     $0x4,%esi
47354c:	39 73 14             	cmp    %esi,0x14(%ebx)
47354f:	74 29                	je     0x47357a
473551:	5f                   	pop    %edi
473552:	5e                   	pop    %esi
473553:	32 c0                	xor    %al,%al
473555:	5b                   	pop    %ebx
473556:	8b e5                	mov    %ebp,%esp
473558:	5d                   	pop    %ebp
473559:	c3                   	ret
47355a:	8b 4d 08             	mov    0x8(%ebp),%ecx
47355d:	8d 45 0c             	lea    0xc(%ebp),%eax
473560:	50                   	push   %eax
473561:	e8 7a f6 ff ff       	call   0x472be0
473566:	84 c0                	test   %al,%al
473568:	74 8f                	je     0x4734f9
47356a:	8b 4d 10             	mov    0x10(%ebp),%ecx
47356d:	85 c9                	test   %ecx,%ecx
47356f:	74 09                	je     0x47357a
473571:	ff 75 0c             	push   0xc(%ebp)
473574:	57                   	push   %edi
473575:	e8 f6 cf fe ff       	call   0x460570
47357a:	5f                   	pop    %edi
47357b:	5e                   	pop    %esi
47357c:	b0 01                	mov    $0x1,%al
47357e:	5b                   	pop    %ebx
47357f:	8b e5                	mov    %ebp,%esp
473581:	5d                   	pop    %ebp
473582:	c3                   	ret
473583:	90                   	nop
473584:	6e                   	outsb  %ds:(%esi),(%dx)
473585:	34 47                	xor    $0x47,%al
473587:	00 9e 34 47 00 ce    	add    %bl,-0x31ffb8cc(%esi)
47358d:	34 47                	xor    $0x47,%al
47358f:	00 12                	add    %dl,(%edx)
473591:	35 47 00 f9 34       	xor    $0x34f90047,%eax
473596:	47                   	inc    %edi
473597:	00 5a 35             	add    %bl,0x35(%edx)
47359a:	47                   	inc    %edi
47359b:	00 cc                	add    %cl,%ah
47359d:	cc                   	int3
47359e:	cc                   	int3
47359f:	cc                   	int3
4735a0:	55                   	push   %ebp
4735a1:	8b ec                	mov    %esp,%ebp
4735a3:	56                   	push   %esi
4735a4:	8b 75 08             	mov    0x8(%ebp),%esi
4735a7:	57                   	push   %edi
4735a8:	8b 7d 0c             	mov    0xc(%ebp),%edi
4735ab:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4735b0:	8b 0e                	mov    (%esi),%ecx
4735b2:	33 c0                	xor    %eax,%eax
4735b4:	3b 4e 04             	cmp    0x4(%esi),%ecx
4735b7:	73 0f                	jae    0x4735c8
4735b9:	0f b6 01             	movzbl (%ecx),%eax
4735bc:	3d 80 00 00 00       	cmp    $0x80,%eax
4735c1:	73 05                	jae    0x4735c8
4735c3:	41                   	inc    %ecx
4735c4:	89 0e                	mov    %ecx,(%esi)
4735c6:	eb 08                	jmp    0x4735d0
4735c8:	50                   	push   %eax
4735c9:	8b ce                	mov    %esi,%ecx
4735cb:	e8 b0 67 fe ff       	call   0x459d80
4735d0:	89 46 14             	mov    %eax,0x14(%esi)
4735d3:	85 c0                	test   %eax,%eax
4735d5:	74 1d                	je     0x4735f4
4735d7:	8b c8                	mov    %eax,%ecx
4735d9:	80 e1 07             	and    $0x7,%cl
4735dc:	80 f9 04             	cmp    $0x4,%cl
4735df:	74 13                	je     0x4735f4
4735e1:	57                   	push   %edi
4735e2:	50                   	push   %eax
4735e3:	56                   	push   %esi
4735e4:	e8 57 fe ff ff       	call   0x473440
4735e9:	83 c4 0c             	add    $0xc,%esp
4735ec:	84 c0                	test   %al,%al
4735ee:	75 c0                	jne    0x4735b0
4735f0:	5f                   	pop    %edi
4735f1:	5e                   	pop    %esi
4735f2:	5d                   	pop    %ebp
4735f3:	c3                   	ret
4735f4:	5f                   	pop    %edi
4735f5:	b0 01                	mov    $0x1,%al
4735f7:	5e                   	pop    %esi
4735f8:	5d                   	pop    %ebp
4735f9:	c3                   	ret
4735fa:	cc                   	int3
4735fb:	cc                   	int3
4735fc:	cc                   	int3
4735fd:	cc                   	int3
4735fe:	cc                   	int3
4735ff:	cc                   	int3
473600:	55                   	push   %ebp
473601:	8b ec                	mov    %esp,%ebp
473603:	6a ff                	push   $0xffffffff
473605:	68 98 9e 5f 00       	push   $0x5f9e98
47360a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
473610:	50                   	push   %eax
473611:	b8 4c 10 00 00       	mov    $0x104c,%eax
473616:	e8 95 e1 15 00       	call   0x5d17b0
47361b:	a1 c0 14 69 00       	mov    0x6914c0,%eax
473620:	33 c5                	xor    %ebp,%eax
473622:	89 45 f0             	mov    %eax,-0x10(%ebp)
473625:	53                   	push   %ebx
473626:	56                   	push   %esi
473627:	57                   	push   %edi
473628:	50                   	push   %eax
473629:	8d 45 f4             	lea    -0xc(%ebp),%eax
47362c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
473632:	8b 5d 08             	mov    0x8(%ebp),%ebx
473635:	8b 45 18             	mov    0x18(%ebp),%eax
473638:	8b 75 0c             	mov    0xc(%ebp),%esi
47363b:	89 9d b8 ef ff ff    	mov    %ebx,-0x1048(%ebp)
473641:	c7 85 dc ef ff ff 00 	movl   $0x0,-0x1024(%ebp)
473648:	00 00 00
47364b:	89 9d d8 ef ff ff    	mov    %ebx,-0x1028(%ebp)
473651:	89 85 e0 ef ff ff    	mov    %eax,-0x1020(%ebp)
473657:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
47365d:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
473664:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
47366b:	8b 45 10             	mov    0x10(%ebp),%eax
47366e:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
473675:	c7 85 dc ef ff ff 01 	movl   $0x1,-0x1024(%ebp)
47367c:	00 00 00
47367f:	85 c0                	test   %eax,%eax
473681:	74 13                	je     0x473696
473683:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
473688:	0f 87 af 02 00 00    	ja     0x47393d
47368e:	50                   	push   %eax
47368f:	8b cb                	mov    %ebx,%ecx
473691:	e8 aa 5b ff ff       	call   0x469240
473696:	8b 06                	mov    (%esi),%eax
473698:	8d 8d cc ef ff ff    	lea    -0x1034(%ebp),%ecx
47369e:	51                   	push   %ecx
47369f:	8b ce                	mov    %esi,%ecx
4736a1:	ff 50 48             	call   *0x48(%eax)
4736a4:	8b 9d e0 ef ff ff    	mov    -0x1020(%ebp),%ebx
4736aa:	6a 00                	push   $0x0
4736ac:	6a 0a                	push   $0xa
4736ae:	8b 78 04             	mov    0x4(%eax),%edi
4736b1:	8b cf                	mov    %edi,%ecx
4736b3:	53                   	push   %ebx
4736b4:	56                   	push   %esi
4736b5:	e8 d6 34 ff ff       	call   0x466b90
4736ba:	53                   	push   %ebx
4736bb:	8b cf                	mov    %edi,%ecx
4736bd:	89 85 e4 ef ff ff    	mov    %eax,-0x101c(%ebp)
4736c3:	e8 e8 46 fe ff       	call   0x457db0
4736c8:	8b cf                	mov    %edi,%ecx
4736ca:	8b f0                	mov    %eax,%esi
4736cc:	e8 8f 15 ff ff       	call   0x464c60
4736d1:	8b 8d e0 ef ff ff    	mov    -0x1020(%ebp),%ecx
4736d7:	8b f8                	mov    %eax,%edi
4736d9:	8b 1f                	mov    (%edi),%ebx
4736db:	e8 40 af 02 00       	call   0x49e620
4736e0:	50                   	push   %eax
4736e1:	8b cf                	mov    %edi,%ecx
4736e3:	ff 53 04             	call   *0x4(%ebx)
4736e6:	8b c8                	mov    %eax,%ecx
4736e8:	8b 10                	mov    (%eax),%edx
4736ea:	ff 52 0c             	call   *0xc(%edx)
4736ed:	8b bd e4 ef ff ff    	mov    -0x101c(%ebp),%edi
4736f3:	8b ce                	mov    %esi,%ecx
4736f5:	89 85 d4 ef ff ff    	mov    %eax,-0x102c(%ebp)
4736fb:	8b 06                	mov    (%esi),%eax
4736fd:	57                   	push   %edi
4736fe:	89 bd bc ef ff ff    	mov    %edi,-0x1044(%ebp)
473704:	89 b5 c0 ef ff ff    	mov    %esi,-0x1040(%ebp)
47370a:	ff 50 24             	call   *0x24(%eax)
47370d:	8b d8                	mov    %eax,%ebx
47370f:	c7 85 dc ef ff ff 03 	movl   $0x3,-0x1024(%ebp)
473716:	00 00 00
473719:	8b 85 d4 ef ff ff    	mov    -0x102c(%ebp),%eax
47371f:	89 9d c4 ef ff ff    	mov    %ebx,-0x103c(%ebp)
473725:	89 85 c8 ef ff ff    	mov    %eax,-0x1038(%ebp)
47372b:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
473732:	89 bd a8 ef ff ff    	mov    %edi,-0x1058(%ebp)
473738:	89 b5 ac ef ff ff    	mov    %esi,-0x1054(%ebp)
47373e:	c7 85 b4 ef ff ff 00 	movl   $0x0,-0x104c(%ebp)
473745:	00 00 00
473748:	8b 06                	mov    (%esi),%eax
47374a:	8b ce                	mov    %esi,%ecx
47374c:	57                   	push   %edi
47374d:	ff 50 28             	call   *0x28(%eax)
473750:	83 8d dc ef ff ff 04 	orl    $0x4,-0x1024(%ebp)
473757:	8b f8                	mov    %eax,%edi
473759:	89 bd b0 ef ff ff    	mov    %edi,-0x1050(%ebp)
47375f:	8b 06                	mov    (%esi),%eax
473761:	8b ce                	mov    %esi,%ecx
473763:	57                   	push   %edi
473764:	53                   	push   %ebx
473765:	ff b5 e4 ef ff ff    	push   -0x101c(%ebp)
47376b:	8b 40 34             	mov    0x34(%eax),%eax
47376e:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
473772:	ff d0                	call   *%eax
473774:	8a d8                	mov    %al,%bl
473776:	8b 06                	mov    (%esi),%eax
473778:	8b ce                	mov    %esi,%ecx
47377a:	57                   	push   %edi
47377b:	ff b5 e4 ef ff ff    	push   -0x101c(%ebp)
473781:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
473785:	ff 50 38             	call   *0x38(%eax)
473788:	8b 06                	mov    (%esi),%eax
47378a:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
47378e:	84 db                	test   %bl,%bl
473790:	75 61                	jne    0x4737f3
473792:	ff b5 d4 ef ff ff    	push   -0x102c(%ebp)
473798:	8b bd c4 ef ff ff    	mov    -0x103c(%ebp),%edi
47379e:	8b ce                	mov    %esi,%ecx
4737a0:	57                   	push   %edi
4737a1:	ff b5 e4 ef ff ff    	push   -0x101c(%ebp)
4737a7:	ff 50 3c             	call   *0x3c(%eax)
4737aa:	8b d0                	mov    %eax,%edx
4737ac:	8b 85 d8 ef ff ff    	mov    -0x1028(%ebp),%eax
4737b2:	89 95 d0 ef ff ff    	mov    %edx,-0x1030(%ebp)
4737b8:	8b 48 04             	mov    0x4(%eax),%ecx
4737bb:	3b 48 08             	cmp    0x8(%eax),%ecx
4737be:	74 08                	je     0x4737c8
4737c0:	89 11                	mov    %edx,(%ecx)
4737c2:	83 40 04 04          	addl   $0x4,0x4(%eax)
4737c6:	eb 0f                	jmp    0x4737d7
4737c8:	8d 95 d0 ef ff ff    	lea    -0x1030(%ebp),%edx
4737ce:	52                   	push   %edx
4737cf:	51                   	push   %ecx
4737d0:	8b c8                	mov    %eax,%ecx
4737d2:	e8 b9 e4 fe ff       	call   0x461c90
4737d7:	8b 06                	mov    (%esi),%eax
4737d9:	8b ce                	mov    %esi,%ecx
4737db:	57                   	push   %edi