5026bd:	5b                   	pop    %ebx
5026be:	8b e5                	mov    %ebp,%esp
5026c0:	5d                   	pop    %ebp
5026c1:	c3                   	ret
5026c2:	8b 45 f0             	mov    -0x10(%ebp),%eax
5026c5:	8b 55 14             	mov    0x14(%ebp),%edx
5026c8:	83 f8 07             	cmp    $0x7,%eax
5026cb:	74 13                	je     0x5026e0
5026cd:	83 f8 0a             	cmp    $0xa,%eax
5026d0:	75 09                	jne    0x5026db
5026d2:	85 d2                	test   %edx,%edx
5026d4:	75 05                	jne    0x5026db
5026d6:	c6 07 7e             	movb   $0x7e,(%edi)
5026d9:	eb 08                	jmp    0x5026e3
5026db:	c6 07 7f             	movb   $0x7f,(%edi)
5026de:	eb 03                	jmp    0x5026e3
5026e0:	c6 07 88             	movb   $0x88,(%edi)
5026e3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5026e6:	85 d2                	test   %edx,%edx
5026e8:	89 77 04             	mov    %esi,0x4(%edi)
5026eb:	8b 41 48             	mov    0x48(%ecx),%eax
5026ee:	89 46 14             	mov    %eax,0x14(%esi)
5026f1:	8b 49 48             	mov    0x48(%ecx),%ecx
5026f4:	8b 45 dc             	mov    -0x24(%ebp),%eax
5026f7:	89 4e 18             	mov    %ecx,0x18(%esi)
5026fa:	0f 95 c1             	setne  %cl
5026fd:	80 c1 7e             	add    $0x7e,%cl
502700:	89 30                	mov    %esi,(%eax)
502702:	88 4e 08             	mov    %cl,0x8(%esi)
502705:	8b c6                	mov    %esi,%eax
502707:	5e                   	pop    %esi
502708:	5f                   	pop    %edi
502709:	5b                   	pop    %ebx
50270a:	8b e5                	mov    %ebp,%esp
50270c:	5d                   	pop    %ebp
50270d:	c3                   	ret
50270e:	cc                   	int3
50270f:	cc                   	int3
502710:	55                   	push   %ebp
502711:	8b ec                	mov    %esp,%ebp
502713:	8b 55 0c             	mov    0xc(%ebp),%edx
502716:	33 c9                	xor    %ecx,%ecx
502718:	53                   	push   %ebx
502719:	56                   	push   %esi
50271a:	57                   	push   %edi
50271b:	8b 7a 14             	mov    0x14(%edx),%edi
50271e:	85 ff                	test   %edi,%edi
502720:	7e 30                	jle    0x502752
502722:	8b 5d 14             	mov    0x14(%ebp),%ebx
502725:	83 c2 24             	add    $0x24,%edx
502728:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
50272f:	00
502730:	8b 32                	mov    (%edx),%esi
502732:	8b 45 10             	mov    0x10(%ebp),%eax
502735:	83 3c b0 00          	cmpl   $0x0,(%eax,%esi,4)
502739:	7d 1e                	jge    0x502759
50273b:	8b 45 08             	mov    0x8(%ebp),%eax
50273e:	0f bf 40 28          	movswl 0x28(%eax),%eax
502742:	3b f0                	cmp    %eax,%esi
502744:	75 04                	jne    0x50274a
502746:	85 db                	test   %ebx,%ebx
502748:	75 0f                	jne    0x502759
50274a:	41                   	inc    %ecx
50274b:	83 c2 08             	add    $0x8,%edx
50274e:	3b cf                	cmp    %edi,%ecx
502750:	7c de                	jl     0x502730
502752:	5f                   	pop    %edi
502753:	5e                   	pop    %esi
502754:	33 c0                	xor    %eax,%eax
502756:	5b                   	pop    %ebx
502757:	5d                   	pop    %ebp
502758:	c3                   	ret
502759:	5f                   	pop    %edi
50275a:	5e                   	pop    %esi
50275b:	b8 01 00 00 00       	mov    $0x1,%eax
502760:	5b                   	pop    %ebx
502761:	5d                   	pop    %ebp
502762:	c3                   	ret
502763:	cc                   	int3
502764:	cc                   	int3
502765:	cc                   	int3
502766:	cc                   	int3
502767:	cc                   	int3
502768:	cc                   	int3
502769:	cc                   	int3
50276a:	cc                   	int3
50276b:	cc                   	int3
50276c:	cc                   	int3
50276d:	cc                   	int3
50276e:	cc                   	int3
50276f:	cc                   	int3
502770:	55                   	push   %ebp
502771:	8b ec                	mov    %esp,%ebp
502773:	83 ec 1c             	sub    $0x1c,%esp
502776:	53                   	push   %ebx
502777:	8b 5d 08             	mov    0x8(%ebp),%ebx
50277a:	56                   	push   %esi
50277b:	57                   	push   %edi
50277c:	8b 73 08             	mov    0x8(%ebx),%esi
50277f:	85 f6                	test   %esi,%esi
502781:	75 1c                	jne    0x50279f
502783:	39 73 74             	cmp    %esi,0x74(%ebx)
502786:	75 0c                	jne    0x502794
502788:	8b 03                	mov    (%ebx),%eax
50278a:	f6 40 4c 08          	testb  $0x8,0x4c(%eax)
50278e:	75 04                	jne    0x502794
502790:	c6 43 17 01          	movb   $0x1,0x17(%ebx)
502794:	53                   	push   %ebx
502795:	e8 76 fc 03 00       	call   0x542410
50279a:	83 c4 04             	add    $0x4,%esp
50279d:	8b f0                	mov    %eax,%esi
50279f:	8b 43 28             	mov    0x28(%ebx),%eax
5027a2:	ff 4b 38             	decl   0x38(%ebx)
5027a5:	48                   	dec    %eax
5027a6:	83 7d 24 00          	cmpl   $0x0,0x24(%ebp)
5027aa:	8b 53 38             	mov    0x38(%ebx),%edx
5027ad:	89 45 f8             	mov    %eax,-0x8(%ebp)
5027b0:	89 55 fc             	mov    %edx,-0x4(%ebp)
5027b3:	7d 4b                	jge    0x502800
5027b5:	8b 45 18             	mov    0x18(%ebp),%eax
5027b8:	8b 4e 6c             	mov    0x6c(%esi),%ecx
5027bb:	0f b6 78 18          	movzbl 0x18(%eax),%edi
5027bf:	39 4e 70             	cmp    %ecx,0x70(%esi)
5027c2:	7f 11                	jg     0x5027d5
5027c4:	6a 00                	push   $0x0
5027c6:	52                   	push   %edx
5027c7:	57                   	push   %edi
5027c8:	6a 2f                	push   $0x2f
5027ca:	56                   	push   %esi
5027cb:	e8 30 3d 00 00       	call   0x506500
5027d0:	83 c4 14             	add    $0x14,%esp
5027d3:	eb 2b                	jmp    0x502800
5027d5:	8d 41 01             	lea    0x1(%ecx),%eax
5027d8:	89 46 6c             	mov    %eax,0x6c(%esi)
5027db:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5027de:	8b 46 68             	mov    0x68(%esi),%eax
5027e1:	c7 04 88 2f 00 00 00 	movl   $0x2f,(%eax,%ecx,4)
5027e8:	89 7c 88 04          	mov    %edi,0x4(%eax,%ecx,4)
5027ec:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
5027f0:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
5027f7:	00
5027f8:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
5027ff:	00
502800:	8b 4d 18             	mov    0x18(%ebp),%ecx
502803:	33 ff                	xor    %edi,%edi
502805:	39 79 14             	cmp    %edi,0x14(%ecx)
502808:	7e 72                	jle    0x50287c
50280a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
50280d:	0f 1f 00             	nopl   (%eax)
502810:	8b 45 1c             	mov    0x1c(%ebp),%eax
502813:	0f b7 04 b8          	movzwl (%eax,%edi,4),%eax
502817:	50                   	push   %eax
502818:	ff 31                	push   (%ecx)
50281a:	e8 31 b6 03 00       	call   0x53de50
50281f:	8b 55 20             	mov    0x20(%ebp),%edx
502822:	83 c4 08             	add    $0x8,%esp
502825:	8b 4e 6c             	mov    0x6c(%esi),%ecx
502828:	42                   	inc    %edx
502829:	98                   	cwtl
50282a:	03 d0                	add    %eax,%edx
50282c:	39 4e 70             	cmp    %ecx,0x70(%esi)
50282f:	7f 11                	jg     0x502842
502831:	6a 00                	push   $0x0
502833:	53                   	push   %ebx
502834:	52                   	push   %edx
502835:	6a 32                	push   $0x32
502837:	56                   	push   %esi
502838:	e8 c3 3c 00 00       	call   0x506500
50283d:	83 c4 14             	add    $0x14,%esp
502840:	eb 2e                	jmp    0x502870
502842:	8b 5d fc             	mov    -0x4(%ebp),%ebx
502845:	8d 41 01             	lea    0x1(%ecx),%eax
502848:	89 46 6c             	mov    %eax,0x6c(%esi)
50284b:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
50284e:	8b 46 68             	mov    0x68(%esi),%eax
502851:	c7 04 88 32 00 00 00 	movl   $0x32,(%eax,%ecx,4)
502858:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
50285c:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
502860:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
502867:	00
502868:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50286f:	00
502870:	8b 4d 18             	mov    0x18(%ebp),%ecx
502873:	47                   	inc    %edi
502874:	3b 79 14             	cmp    0x14(%ecx),%edi
502877:	7c 97                	jl     0x502810
502879:	8b 5d 08             	mov    0x8(%ebp),%ebx
50287c:	83 7d 28 00          	cmpl   $0x0,0x28(%ebp)
502880:	0f 85 b6 06 00 00    	jne    0x502f3c
502886:	8b 55 14             	mov    0x14(%ebp),%edx
502889:	85 d2                	test   %edx,%edx
50288b:	0f 85 53 02 00 00    	jne    0x502ae4
502891:	8a 43 13             	mov    0x13(%ebx),%al
502894:	84 c0                	test   %al,%al
502896:	75 08                	jne    0x5028a0
502898:	ff 43 2c             	incl   0x2c(%ebx)
50289b:	8b 7b 2c             	mov    0x2c(%ebx),%edi
50289e:	eb 0f                	jmp    0x5028af
5028a0:	fe c8                	dec    %al
5028a2:	88 43 13             	mov    %al,0x13(%ebx)
5028a5:	0f b6 c0             	movzbl %al,%eax
5028a8:	8b bc 83 94 00 00 00 	mov    0x94(%ebx,%eax,4),%edi
5028af:	8b 45 1c             	mov    0x1c(%ebp),%eax
5028b2:	89 7d 28             	mov    %edi,0x28(%ebp)
5028b5:	0f b7 00             	movzwl (%eax),%eax
5028b8:	50                   	push   %eax
5028b9:	ff 31                	push   (%ecx)
5028bb:	e8 90 b5 03 00       	call   0x53de50
5028c0:	8b 55 20             	mov    0x20(%ebp),%edx
5028c3:	83 c4 08             	add    $0x8,%esp
5028c6:	8b 4e 6c             	mov    0x6c(%esi),%ecx
5028c9:	42                   	inc    %edx
5028ca:	98                   	cwtl
5028cb:	03 d0                	add    %eax,%edx
5028cd:	39 4e 70             	cmp    %ecx,0x70(%esi)
5028d0:	7f 11                	jg     0x5028e3
5028d2:	6a 00                	push   $0x0
5028d4:	57                   	push   %edi
5028d5:	52                   	push   %edx
5028d6:	6a 4e                	push   $0x4e
5028d8:	56                   	push   %esi
5028d9:	e8 22 3c 00 00       	call   0x506500
5028de:	83 c4 14             	add    $0x14,%esp
5028e1:	eb 2e                	jmp    0x502911
5028e3:	8b 5d 08             	mov    0x8(%ebp),%ebx
5028e6:	8d 41 01             	lea    0x1(%ecx),%eax
5028e9:	89 46 6c             	mov    %eax,0x6c(%esi)
5028ec:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5028ef:	8b 46 68             	mov    0x68(%esi),%eax
5028f2:	c7 04 88 4e 00 00 00 	movl   $0x4e,(%eax,%ecx,4)
5028f9:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
5028fd:	89 7c 88 08          	mov    %edi,0x8(%eax,%ecx,4)
502901:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
502908:	00
502909:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
502910:	00
502911:	8b 56 6c             	mov    0x6c(%esi),%edx
502914:	89 55 08             	mov    %edx,0x8(%ebp)
502917:	39 56 70             	cmp    %edx,0x70(%esi)
50291a:	7f 15                	jg     0x502931
50291c:	6a 00                	push   $0x0
50291e:	6a 00                	push   $0x0
502920:	57                   	push   %edi
502921:	6a 0f                	push   $0xf
502923:	56                   	push   %esi
502924:	e8 d7 3b 00 00       	call   0x506500
502929:	83 c4 14             	add    $0x14,%esp
50292c:	89 45 08             	mov    %eax,0x8(%ebp)
50292f:	eb 2f                	jmp    0x502960
502931:	8d 42 01             	lea    0x1(%edx),%eax
502934:	89 46 6c             	mov    %eax,0x6c(%esi)
502937:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
50293a:	8b 46 68             	mov    0x68(%esi),%eax
50293d:	c7 04 88 0f 00 00 00 	movl   $0xf,(%eax,%ecx,4)
502944:	89 7c 88 04          	mov    %edi,0x4(%eax,%ecx,4)
502948:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
50294f:	00
502950:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
502957:	00
502958:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50295f:	00
502960:	8b 45 18             	mov    0x18(%ebp),%eax
502963:	8b 4d 10             	mov    0x10(%ebp),%ecx
502966:	3b 08                	cmp    (%eax),%ecx
502968:	75 6e                	jne    0x5029d8
50296a:	83 7d 24 01          	cmpl   $0x1,0x24(%ebp)
50296e:	75 68                	jne    0x5029d8
502970:	8b 4e 6c             	mov    0x6c(%esi),%ecx
502973:	39 4e 70             	cmp    %ecx,0x70(%esi)
502976:	7f 17                	jg     0x50298f
502978:	57                   	push   %edi
502979:	ff 75 fc             	push   -0x4(%ebp)
50297c:	ff 75 20             	push   0x20(%ebp)
50297f:	6a 35                	push   $0x35
502981:	56                   	push   %esi
502982:	e8 79 3b 00 00       	call   0x506500
502987:	8b 7d fc             	mov    -0x4(%ebp),%edi
50298a:	83 c4 14             	add    $0x14,%esp
50298d:	eb 30                	jmp    0x5029bf
50298f:	8b 55 20             	mov    0x20(%ebp),%edx
502992:	8d 41 01             	lea    0x1(%ecx),%eax
502995:	8b 7d fc             	mov    -0x4(%ebp),%edi
502998:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
50299b:	89 46 6c             	mov    %eax,0x6c(%esi)
50299e:	8b 46 68             	mov    0x68(%esi),%eax
5029a1:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
5029a5:	8b 55 28             	mov    0x28(%ebp),%edx
5029a8:	c7 04 88 35 00 00 00 	movl   $0x35,(%eax,%ecx,4)
5029af:	89 7c 88 08          	mov    %edi,0x8(%eax,%ecx,4)
5029b3:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
5029b7:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
5029be:	00
5029bf:	8b 46 6c             	mov    0x6c(%esi),%eax
5029c2:	85 c0                	test   %eax,%eax
5029c4:	7e 15                	jle    0x5029db
5029c6:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
5029c9:	ba 90 00 00 00       	mov    $0x90,%edx
5029ce:	8b 46 68             	mov    0x68(%esi),%eax
5029d1:	66 89 54 88 ee       	mov    %dx,-0x12(%eax,%ecx,4)
5029d6:	eb 03                	jmp    0x5029db
5029d8:	8b 7d fc             	mov    -0x4(%ebp),%edi
5029db:	6a 60                	push   $0x60
5029dd:	ff 75 10             	push   0x10(%ebp)
5029e0:	ff 75 0c             	push   0xc(%ebp)
5029e3:	ff 75 f8             	push   -0x8(%ebp)
5029e6:	53                   	push   %ebx
5029e7:	e8 64 ef 02 00       	call   0x531950
5029ec:	8b 4e 6c             	mov    0x6c(%esi),%ecx
5029ef:	83 c4 14             	add    $0x14,%esp
5029f2:	39 4e 70             	cmp    %ecx,0x70(%esi)
5029f5:	7f 15                	jg     0x502a0c
5029f7:	ff 75 28             	push   0x28(%ebp)
5029fa:	6a 00                	push   $0x0
5029fc:	ff 75 f8             	push   -0x8(%ebp)
5029ff:	6a 20                	push   $0x20
502a01:	56                   	push   %esi
502a02:	e8 f9 3a 00 00       	call   0x506500
502a07:	83 c4 14             	add    $0x14,%esp
502a0a:	eb 31                	jmp    0x502a3d
502a0c:	8b 55 f8             	mov    -0x8(%ebp),%edx
502a0f:	8d 41 01             	lea    0x1(%ecx),%eax
502a12:	89 46 6c             	mov    %eax,0x6c(%esi)
502a15:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
502a18:	8b 46 68             	mov    0x68(%esi),%eax
502a1b:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
502a1f:	8b 55 28             	mov    0x28(%ebp),%edx
502a22:	c7 04 88 20 00 00 00 	movl   $0x20,(%eax,%ecx,4)
502a29:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
502a30:	00
502a31:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
502a35:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
502a3c:	00
502a3d:	8b 4e 6c             	mov    0x6c(%esi),%ecx
502a40:	39 4e 70             	cmp    %ecx,0x70(%esi)
502a43:	7f 14                	jg     0x502a59
502a45:	6a 00                	push   $0x0
502a47:	ff 75 fc             	push   -0x4(%ebp)
502a4a:	6a 00                	push   $0x0
502a4c:	6a 0b                	push   $0xb
502a4e:	56                   	push   %esi
502a4f:	e8 ac 3a 00 00       	call   0x506500
502a54:	83 c4 14             	add    $0x14,%esp
502a57:	eb 2f                	jmp    0x502a88
502a59:	8d 41 01             	lea    0x1(%ecx),%eax
502a5c:	89 46 6c             	mov    %eax,0x6c(%esi)
502a5f:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
502a62:	8b 46 68             	mov    0x68(%esi),%eax
502a65:	c7 04 88 0b 00 00 00 	movl   $0xb,(%eax,%ecx,4)
502a6c:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
502a73:	00