4a948a:	57                   	push   %edi
4a948b:	83 cf ff             	or     $0xffffffff,%edi
4a948e:	f6 46 0c 40          	testb  $0x40,0xc(%esi)
4a9492:	74 06                	je     0x4a949a
4a9494:	83 66 0c 00          	andl   $0x0,0xc(%esi)
4a9498:	eb 17                	jmp    0x4a94b1
4a949a:	56                   	push   %esi
4a949b:	e8 d1 61 00 00       	call   0x4af671
4a94a0:	56                   	push   %esi
4a94a1:	e8 10 00 00 00       	call   0x4a94b6
4a94a6:	56                   	push   %esi
4a94a7:	8b f8                	mov    %eax,%edi
4a94a9:	e8 15 62 00 00       	call   0x4af6c3
4a94ae:	83 c4 0c             	add    $0xc,%esp
4a94b1:	8b c7                	mov    %edi,%eax
4a94b3:	5f                   	pop    %edi
4a94b4:	5e                   	pop    %esi
4a94b5:	c3                   	ret
4a94b6:	56                   	push   %esi
4a94b7:	8b 74 24 08          	mov    0x8(%esp),%esi
4a94bb:	57                   	push   %edi
4a94bc:	83 cf ff             	or     $0xffffffff,%edi
4a94bf:	f6 46 0c 83          	testb  $0x83,0xc(%esi)
4a94c3:	74 34                	je     0x4a94f9
4a94c5:	56                   	push   %esi
4a94c6:	e8 83 63 00 00       	call   0x4af84e
4a94cb:	56                   	push   %esi
4a94cc:	8b f8                	mov    %eax,%edi
4a94ce:	e8 22 63 00 00       	call   0x4af7f5
4a94d3:	ff 76 10             	push   0x10(%esi)
4a94d6:	e8 3a 62 00 00       	call   0x4af715
4a94db:	83 c4 0c             	add    $0xc,%esp
4a94de:	85 c0                	test   %eax,%eax
4a94e0:	7d 05                	jge    0x4a94e7
4a94e2:	83 cf ff             	or     $0xffffffff,%edi
4a94e5:	eb 12                	jmp    0x4a94f9
4a94e7:	8b 46 1c             	mov    0x1c(%esi),%eax
4a94ea:	85 c0                	test   %eax,%eax
4a94ec:	74 0b                	je     0x4a94f9
4a94ee:	50                   	push   %eax
4a94ef:	e8 d9 ef ff ff       	call   0x4a84cd
4a94f4:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
4a94f8:	59                   	pop    %ecx
4a94f9:	83 66 0c 00          	andl   $0x0,0xc(%esi)
4a94fd:	8b c7                	mov    %edi,%eax
4a94ff:	5f                   	pop    %edi
4a9500:	5e                   	pop    %esi
4a9501:	c3                   	ret
4a9502:	53                   	push   %ebx
4a9503:	33 db                	xor    %ebx,%ebx
4a9505:	39 1d 68 cb 51 00    	cmp    %ebx,0x51cb68
4a950b:	75 13                	jne    0x4a9520
4a950d:	8b 44 24 08          	mov    0x8(%esp),%eax
4a9511:	83 f8 41             	cmp    $0x41,%eax
4a9514:	7c 59                	jl     0x4a956f
4a9516:	83 f8 5a             	cmp    $0x5a,%eax
4a9519:	7f 54                	jg     0x4a956f
4a951b:	83 c0 20             	add    $0x20,%eax
4a951e:	5b                   	pop    %ebx
4a951f:	c3                   	ret
4a9520:	56                   	push   %esi
4a9521:	be 2c cf 51 00       	mov    $0x51cf2c,%esi
4a9526:	57                   	push   %edi
4a9527:	56                   	push   %esi
4a9528:	ff 15 58 31 4b 00    	call   *0x4b3158
4a952e:	39 1d 28 cf 51 00    	cmp    %ebx,0x51cf28
4a9534:	8b 3d 5c 31 4b 00    	mov    0x4b315c,%edi
4a953a:	74 0e                	je     0x4a954a
4a953c:	56                   	push   %esi
4a953d:	ff d7                	call   *%edi
4a953f:	6a 13                	push   $0x13
4a9541:	e8 f8 41 00 00       	call   0x4ad73e
4a9546:	59                   	pop    %ecx
4a9547:	6a 01                	push   $0x1
4a9549:	5b                   	pop    %ebx
4a954a:	ff 74 24 10          	push   0x10(%esp)
4a954e:	e8 1e 00 00 00       	call   0x4a9571
4a9553:	85 db                	test   %ebx,%ebx
4a9555:	59                   	pop    %ecx
4a9556:	89 44 24 10          	mov    %eax,0x10(%esp)
4a955a:	74 0a                	je     0x4a9566
4a955c:	6a 13                	push   $0x13
4a955e:	e8 3c 42 00 00       	call   0x4ad79f
4a9563:	59                   	pop    %ecx
4a9564:	eb 03                	jmp    0x4a9569
4a9566:	56                   	push   %esi
4a9567:	ff d7                	call   *%edi
4a9569:	8b 44 24 10          	mov    0x10(%esp),%eax
4a956d:	5f                   	pop    %edi
4a956e:	5e                   	pop    %esi
4a956f:	5b                   	pop    %ebx
4a9570:	c3                   	ret
4a9571:	55                   	push   %ebp
4a9572:	8b ec                	mov    %esp,%ebp
4a9574:	51                   	push   %ecx
4a9575:	83 3d 68 cb 51 00 00 	cmpl   $0x0,0x51cb68
4a957c:	53                   	push   %ebx
4a957d:	56                   	push   %esi
4a957e:	57                   	push   %edi
4a957f:	75 1d                	jne    0x4a959e
4a9581:	8b 45 08             	mov    0x8(%ebp),%eax
4a9584:	83 f8 41             	cmp    $0x41,%eax
4a9587:	0f 8c aa 00 00 00    	jl     0x4a9637
4a958d:	83 f8 5a             	cmp    $0x5a,%eax
4a9590:	0f 8f a1 00 00 00    	jg     0x4a9637
4a9596:	83 c0 20             	add    $0x20,%eax
4a9599:	e9 99 00 00 00       	jmp    0x4a9637
4a959e:	8b 5d 08             	mov    0x8(%ebp),%ebx
4a95a1:	bf 00 01 00 00       	mov    $0x100,%edi
4a95a6:	6a 01                	push   $0x1
4a95a8:	3b df                	cmp    %edi,%ebx
4a95aa:	5e                   	pop    %esi
4a95ab:	7d 25                	jge    0x4a95d2
4a95ad:	39 35 ec a6 50 00    	cmp    %esi,0x50a6ec
4a95b3:	7e 0b                	jle    0x4a95c0
4a95b5:	56                   	push   %esi
4a95b6:	53                   	push   %ebx
4a95b7:	e8 21 27 00 00       	call   0x4abcdd
4a95bc:	59                   	pop    %ecx
4a95bd:	59                   	pop    %ecx
4a95be:	eb 0a                	jmp    0x4a95ca
4a95c0:	a1 e0 a4 50 00       	mov    0x50a4e0,%eax
4a95c5:	8a 04 58             	mov    (%eax,%ebx,2),%al
4a95c8:	23 c6                	and    %esi,%eax
4a95ca:	85 c0                	test   %eax,%eax
4a95cc:	75 04                	jne    0x4a95d2
4a95ce:	8b c3                	mov    %ebx,%eax
4a95d0:	eb 65                	jmp    0x4a9637
4a95d2:	8b 15 e0 a4 50 00    	mov    0x50a4e0,%edx
4a95d8:	8b c3                	mov    %ebx,%eax
4a95da:	c1 f8 08             	sar    $0x8,%eax
4a95dd:	0f b6 c8             	movzbl %al,%ecx
4a95e0:	f6 44 4a 01 80       	testb  $0x80,0x1(%edx,%ecx,2)
4a95e5:	74 0f                	je     0x4a95f6
4a95e7:	80 65 0a 00          	andb   $0x0,0xa(%ebp)
4a95eb:	6a 02                	push   $0x2
4a95ed:	88 45 08             	mov    %al,0x8(%ebp)
4a95f0:	88 5d 09             	mov    %bl,0x9(%ebp)
4a95f3:	58                   	pop    %eax
4a95f4:	eb 09                	jmp    0x4a95ff
4a95f6:	80 65 09 00          	andb   $0x0,0x9(%ebp)
4a95fa:	88 5d 08             	mov    %bl,0x8(%ebp)
4a95fd:	8b c6                	mov    %esi,%eax
4a95ff:	56                   	push   %esi
4a9600:	6a 00                	push   $0x0
4a9602:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4a9605:	6a 03                	push   $0x3
4a9607:	51                   	push   %ecx
4a9608:	50                   	push   %eax
4a9609:	8d 45 08             	lea    0x8(%ebp),%eax
4a960c:	50                   	push   %eax
4a960d:	57                   	push   %edi
4a960e:	ff 35 68 cb 51 00    	push   0x51cb68
4a9614:	e8 06 66 00 00       	call   0x4afc1f
4a9619:	83 c4 20             	add    $0x20,%esp
4a961c:	85 c0                	test   %eax,%eax
4a961e:	74 ae                	je     0x4a95ce
4a9620:	3b c6                	cmp    %esi,%eax
4a9622:	75 06                	jne    0x4a962a
4a9624:	0f b6 45 fc          	movzbl -0x4(%ebp),%eax
4a9628:	eb 0d                	jmp    0x4a9637
4a962a:	0f b6 45 fd          	movzbl -0x3(%ebp),%eax
4a962e:	0f b6 4d fc          	movzbl -0x4(%ebp),%ecx
4a9632:	c1 e0 08             	shl    $0x8,%eax
4a9635:	0b c1                	or     %ecx,%eax
4a9637:	5f                   	pop    %edi
4a9638:	5e                   	pop    %esi
4a9639:	5b                   	pop    %ebx
4a963a:	c9                   	leave
4a963b:	c3                   	ret
4a963c:	53                   	push   %ebx
4a963d:	33 db                	xor    %ebx,%ebx
4a963f:	39 1d 68 cb 51 00    	cmp    %ebx,0x51cb68
4a9645:	75 13                	jne    0x4a965a
4a9647:	8b 44 24 08          	mov    0x8(%esp),%eax
4a964b:	83 f8 61             	cmp    $0x61,%eax
4a964e:	7c 59                	jl     0x4a96a9
4a9650:	83 f8 7a             	cmp    $0x7a,%eax
4a9653:	7f 54                	jg     0x4a96a9
4a9655:	83 e8 20             	sub    $0x20,%eax
4a9658:	5b                   	pop    %ebx
4a9659:	c3                   	ret
4a965a:	56                   	push   %esi
4a965b:	be 2c cf 51 00       	mov    $0x51cf2c,%esi
4a9660:	57                   	push   %edi
4a9661:	56                   	push   %esi
4a9662:	ff 15 58 31 4b 00    	call   *0x4b3158
4a9668:	39 1d 28 cf 51 00    	cmp    %ebx,0x51cf28
4a966e:	8b 3d 5c 31 4b 00    	mov    0x4b315c,%edi
4a9674:	74 0e                	je     0x4a9684
4a9676:	56                   	push   %esi
4a9677:	ff d7                	call   *%edi
4a9679:	6a 13                	push   $0x13
4a967b:	e8 be 40 00 00       	call   0x4ad73e
4a9680:	59                   	pop    %ecx
4a9681:	6a 01                	push   $0x1
4a9683:	5b                   	pop    %ebx
4a9684:	ff 74 24 10          	push   0x10(%esp)
4a9688:	e8 1e 00 00 00       	call   0x4a96ab
4a968d:	85 db                	test   %ebx,%ebx
4a968f:	59                   	pop    %ecx
4a9690:	89 44 24 10          	mov    %eax,0x10(%esp)
4a9694:	74 0a                	je     0x4a96a0
4a9696:	6a 13                	push   $0x13
4a9698:	e8 02 41 00 00       	call   0x4ad79f
4a969d:	59                   	pop    %ecx
4a969e:	eb 03                	jmp    0x4a96a3
4a96a0:	56                   	push   %esi
4a96a1:	ff d7                	call   *%edi
4a96a3:	8b 44 24 10          	mov    0x10(%esp),%eax
4a96a7:	5f                   	pop    %edi
4a96a8:	5e                   	pop    %esi
4a96a9:	5b                   	pop    %ebx
4a96aa:	c3                   	ret
4a96ab:	55                   	push   %ebp
4a96ac:	8b ec                	mov    %esp,%ebp
4a96ae:	51                   	push   %ecx
4a96af:	83 3d 68 cb 51 00 00 	cmpl   $0x0,0x51cb68
4a96b6:	53                   	push   %ebx
4a96b7:	75 1d                	jne    0x4a96d6
4a96b9:	8b 45 08             	mov    0x8(%ebp),%eax
4a96bc:	83 f8 61             	cmp    $0x61,%eax
4a96bf:	0f 8c af 00 00 00    	jl     0x4a9774
4a96c5:	83 f8 7a             	cmp    $0x7a,%eax
4a96c8:	0f 8f a6 00 00 00    	jg     0x4a9774
4a96ce:	83 e8 20             	sub    $0x20,%eax
4a96d1:	e9 9e 00 00 00       	jmp    0x4a9774
4a96d6:	8b 5d 08             	mov    0x8(%ebp),%ebx
4a96d9:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
4a96df:	7d 28                	jge    0x4a9709
4a96e1:	83 3d ec a6 50 00 01 	cmpl   $0x1,0x50a6ec
4a96e8:	7e 0c                	jle    0x4a96f6
4a96ea:	6a 02                	push   $0x2
4a96ec:	53                   	push   %ebx
4a96ed:	e8 eb 25 00 00       	call   0x4abcdd
4a96f2:	59                   	pop    %ecx
4a96f3:	59                   	pop    %ecx
4a96f4:	eb 0b                	jmp    0x4a9701
4a96f6:	a1 e0 a4 50 00       	mov    0x50a4e0,%eax
4a96fb:	8a 04 58             	mov    (%eax,%ebx,2),%al
4a96fe:	83 e0 02             	and    $0x2,%eax
4a9701:	85 c0                	test   %eax,%eax
4a9703:	75 04                	jne    0x4a9709
4a9705:	8b c3                	mov    %ebx,%eax
4a9707:	eb 6b                	jmp    0x4a9774
4a9709:	8b 15 e0 a4 50 00    	mov    0x50a4e0,%edx
4a970f:	8b c3                	mov    %ebx,%eax
4a9711:	c1 f8 08             	sar    $0x8,%eax
4a9714:	0f b6 c8             	movzbl %al,%ecx
4a9717:	f6 44 4a 01 80       	testb  $0x80,0x1(%edx,%ecx,2)
4a971c:	74 0e                	je     0x4a972c
4a971e:	80 65 0a 00          	andb   $0x0,0xa(%ebp)
4a9722:	88 45 08             	mov    %al,0x8(%ebp)
4a9725:	88 5d 09             	mov    %bl,0x9(%ebp)
4a9728:	6a 02                	push   $0x2
4a972a:	eb 09                	jmp    0x4a9735
4a972c:	80 65 09 00          	andb   $0x0,0x9(%ebp)
4a9730:	88 5d 08             	mov    %bl,0x8(%ebp)
4a9733:	6a 01                	push   $0x1
4a9735:	58                   	pop    %eax
4a9736:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4a9739:	6a 01                	push   $0x1
4a973b:	6a 00                	push   $0x0
4a973d:	6a 03                	push   $0x3
4a973f:	51                   	push   %ecx
4a9740:	50                   	push   %eax
4a9741:	8d 45 08             	lea    0x8(%ebp),%eax
4a9744:	50                   	push   %eax
4a9745:	68 00 02 00 00       	push   $0x200
4a974a:	ff 35 68 cb 51 00    	push   0x51cb68
4a9750:	e8 ca 64 00 00       	call   0x4afc1f
4a9755:	83 c4 20             	add    $0x20,%esp
4a9758:	85 c0                	test   %eax,%eax
4a975a:	74 a9                	je     0x4a9705
4a975c:	83 f8 01             	cmp    $0x1,%eax
4a975f:	75 06                	jne    0x4a9767
4a9761:	0f b6 45 fc          	movzbl -0x4(%ebp),%eax
4a9765:	eb 0d                	jmp    0x4a9774
4a9767:	0f b6 45 fd          	movzbl -0x3(%ebp),%eax
4a976b:	0f b6 4d fc          	movzbl -0x4(%ebp),%ecx
4a976f:	c1 e0 08             	shl    $0x8,%eax
4a9772:	0b c1                	or     %ecx,%eax
4a9774:	5b                   	pop    %ebx
4a9775:	c9                   	leave
4a9776:	c3                   	ret
4a9777:	cc                   	int3
4a9778:	56                   	push   %esi
4a9779:	43                   	inc    %ebx
4a977a:	32 30                	xor    (%eax),%dh
4a977c:	58                   	pop    %eax
4a977d:	43                   	inc    %ebx
4a977e:	30 30                	xor    %dh,(%eax)
4a9780:	55                   	push   %ebp
4a9781:	8b ec                	mov    %esp,%ebp
4a9783:	83 ec 08             	sub    $0x8,%esp
4a9786:	53                   	push   %ebx
4a9787:	56                   	push   %esi
4a9788:	57                   	push   %edi
4a9789:	55                   	push   %ebp
4a978a:	fc                   	cld
4a978b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4a978e:	8b 45 08             	mov    0x8(%ebp),%eax
4a9791:	f7 40 04 06 00 00 00 	testl  $0x6,0x4(%eax)
4a9798:	0f 85 82 00 00 00    	jne    0x4a9820
4a979e:	89 45 f8             	mov    %eax,-0x8(%ebp)
4a97a1:	8b 45 10             	mov    0x10(%ebp),%eax
4a97a4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4a97a7:	8d 45 f8             	lea    -0x8(%ebp),%eax
4a97aa:	89 43 fc             	mov    %eax,-0x4(%ebx)
4a97ad:	8b 73 0c             	mov    0xc(%ebx),%esi
4a97b0:	8b 7b 08             	mov    0x8(%ebx),%edi
4a97b3:	83 fe ff             	cmp    $0xffffffff,%esi
4a97b6:	74 61                	je     0x4a9819
4a97b8:	8d 0c 76             	lea    (%esi,%esi,2),%ecx
4a97bb:	83 7c 8f 04 00       	cmpl   $0x0,0x4(%edi,%ecx,4)
4a97c0:	74 45                	je     0x4a9807
4a97c2:	56                   	push   %esi
4a97c3:	55                   	push   %ebp
4a97c4:	8d 6b 10             	lea    0x10(%ebx),%ebp
4a97c7:	ff 54 8f 04          	call   *0x4(%edi,%ecx,4)
4a97cb:	5d                   	pop    %ebp
4a97cc:	5e                   	pop    %esi
4a97cd:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4a97d0:	0b c0                	or     %eax,%eax
4a97d2:	74 33                	je     0x4a9807
4a97d4:	78 3c                	js     0x4a9812
4a97d6:	8b 7b 08             	mov    0x8(%ebx),%edi
4a97d9:	53                   	push   %ebx
4a97da:	e8 e5 f3 ff ff       	call   0x4a8bc4
4a97df:	83 c4 04             	add    $0x4,%esp
4a97e2:	8d 6b 10             	lea    0x10(%ebx),%ebp
4a97e5:	56                   	push   %esi
4a97e6:	53                   	push   %ebx
4a97e7:	e8 1a f4 ff ff       	call   0x4a8c06
4a97ec:	83 c4 08             	add    $0x8,%esp
4a97ef:	8d 0c 76             	lea    (%esi,%esi,2),%ecx
4a97f2:	6a 01                	push   $0x1
4a97f4:	8b 44 8f 08          	mov    0x8(%edi,%ecx,4),%eax
4a97f8:	e8 9d f4 ff ff       	call   0x4a8c9a
4a97fd:	8b 04 8f             	mov    (%edi,%ecx,4),%eax
4a9800:	89 43 0c             	mov    %eax,0xc(%ebx)
4a9803:	ff 54 8f 08          	call   *0x8(%edi,%ecx,4)
4a9807:	8b 7b 08             	mov    0x8(%ebx),%edi
4a980a:	8d 0c 76             	lea    (%esi,%esi,2),%ecx
4a980d:	8b 34 8f             	mov    (%edi,%ecx,4),%esi
4a9810:	eb a1                	jmp    0x4a97b3
4a9812:	b8 00 00 00 00       	mov    $0x0,%eax
4a9817:	eb 1c                	jmp    0x4a9835
4a9819:	b8 01 00 00 00       	mov    $0x1,%eax
4a981e:	eb 15                	jmp    0x4a9835