53fc2f:	eb 4e                	jmp    0x53fc7f
53fc31:	8b 43 18             	mov    0x18(%ebx),%eax
53fc34:	8b 10                	mov    (%eax),%edx
53fc36:	ff 52 10             	call   *0x10(%edx)
53fc39:	3c 02                	cmp    $0x2,%al
53fc3b:	75 40                	jne    0x53fc7d
53fc3d:	8b 43 18             	mov    0x18(%ebx),%eax
53fc40:	8b 10                	mov    (%eax),%edx
53fc42:	ff 52 20             	call   *0x20(%edx)
53fc45:	48                   	dec    %eax
53fc46:	85 c0                	test   %eax,%eax
53fc48:	7c 35                	jl     0x53fc7f
53fc4a:	40                   	inc    %eax
53fc4b:	89 45 fc             	mov    %eax,-0x4(%ebp)
53fc4e:	33 f6                	xor    %esi,%esi
53fc50:	8d 4d f9             	lea    -0x7(%ebp),%ecx
53fc53:	8b d6                	mov    %esi,%edx
53fc55:	8b 43 18             	mov    0x18(%ebx),%eax
53fc58:	8b 38                	mov    (%eax),%edi
53fc5a:	ff 57 18             	call   *0x18(%edi)
53fc5d:	8a 45 fb             	mov    -0x5(%ebp),%al
53fc60:	3a 45 0a             	cmp    0xa(%ebp),%al
53fc63:	75 10                	jne    0x53fc75
53fc65:	8a 45 fa             	mov    -0x6(%ebp),%al
53fc68:	3a 45 09             	cmp    0x9(%ebp),%al
53fc6b:	75 08                	jne    0x53fc75
53fc6d:	8a 45 f9             	mov    -0x7(%ebp),%al
53fc70:	3a 45 08             	cmp    0x8(%ebp),%al
53fc73:	74 0a                	je     0x53fc7f
53fc75:	46                   	inc    %esi
53fc76:	ff 4d fc             	decl   -0x4(%ebp)
53fc79:	75 d5                	jne    0x53fc50
53fc7b:	eb 02                	jmp    0x53fc7f
53fc7d:	33 f6                	xor    %esi,%esi
53fc7f:	8b c6                	mov    %esi,%eax
53fc81:	5f                   	pop    %edi
53fc82:	5e                   	pop    %esi
53fc83:	5b                   	pop    %ebx
53fc84:	8b e5                	mov    %ebp,%esp
53fc86:	5d                   	pop    %ebp
53fc87:	c2 04 00             	ret    $0x4
53fc8a:	00 00                	add    %al,(%eax)
53fc8c:	00 00                	add    %al,(%eax)
53fc8e:	80 43 55 8b          	addb   $0x8b,0x55(%ebx)
53fc92:	ec                   	in     (%dx),%al
53fc93:	33 c0                	xor    %eax,%eax
53fc95:	55                   	push   %ebp
53fc96:	68 b5 fc 53 00       	push   $0x53fcb5
53fc9b:	64 ff 30             	push   %fs:(%eax)
53fc9e:	64 89 20             	mov    %esp,%fs:(%eax)
53fca1:	ff 05 f0 b3 6a 00    	incl   0x6ab3f0
53fca7:	33 c0                	xor    %eax,%eax
53fca9:	5a                   	pop    %edx
53fcaa:	59                   	pop    %ecx
53fcab:	59                   	pop    %ecx
53fcac:	64 89 10             	mov    %edx,%fs:(%eax)
53fcaf:	68 bc fc 53 00       	push   $0x53fcbc
53fcb4:	c3                   	ret
53fcb5:	e9 52 45 ec ff       	jmp    0x40420c
53fcba:	eb f8                	jmp    0x53fcb4
53fcbc:	5d                   	pop    %ebp
53fcbd:	c3                   	ret
53fcbe:	8b c0                	mov    %eax,%eax
53fcc0:	83 2d f0 b3 6a 00 01 	subl   $0x1,0x6ab3f0
53fcc7:	c3                   	ret
53fcc8:	53                   	push   %ebx
53fcc9:	56                   	push   %esi
53fcca:	57                   	push   %edi
53fccb:	8b f9                	mov    %ecx,%edi
53fccd:	8b da                	mov    %edx,%ebx
53fccf:	8b f0                	mov    %eax,%esi
53fcd1:	8b c3                	mov    %ebx,%eax
53fcd3:	e8 14 ea ed ff       	call   0x41e6ec
53fcd8:	50                   	push   %eax
53fcd9:	8b c3                	mov    %ebx,%eax
53fcdb:	e8 d8 e9 ed ff       	call   0x41e6b8
53fce0:	5a                   	pop    %edx
53fce1:	2b d0                	sub    %eax,%edx
53fce3:	8b c7                	mov    %edi,%eax
53fce5:	e8 32 97 06 00       	call   0x5a941c
53fcea:	99                   	cltd
53fceb:	52                   	push   %edx
53fcec:	50                   	push   %eax
53fced:	8b d3                	mov    %ebx,%edx
53fcef:	8b c6                	mov    %esi,%eax
53fcf1:	e8 5e ec ed ff       	call   0x41e954
53fcf6:	5f                   	pop    %edi
53fcf7:	5e                   	pop    %esi
53fcf8:	5b                   	pop    %ebx
53fcf9:	c3                   	ret
53fcfa:	8b c0                	mov    %eax,%eax
53fcfc:	55                   	push   %ebp
53fcfd:	8b ec                	mov    %esp,%ebp
53fcff:	83 c4 c0             	add    $0xffffffc0,%esp
53fd02:	53                   	push   %ebx
53fd03:	56                   	push   %esi
53fd04:	57                   	push   %edi
53fd05:	88 4d f7             	mov    %cl,-0x9(%ebp)
53fd08:	89 55 f8             	mov    %edx,-0x8(%ebp)
53fd0b:	89 45 fc             	mov    %eax,-0x4(%ebp)
53fd0e:	8b 45 fc             	mov    -0x4(%ebp),%eax
53fd11:	e8 f2 4f ec ff       	call   0x404d08
53fd16:	8d 5d de             	lea    -0x22(%ebp),%ebx
53fd19:	33 c0                	xor    %eax,%eax
53fd1b:	55                   	push   %ebp
53fd1c:	68 ad 01 54 00       	push   $0x5401ad
53fd21:	64 ff 30             	push   %fs:(%eax)
53fd24:	64 89 20             	mov    %esp,%fs:(%eax)
53fd27:	33 c0                	xor    %eax,%eax
53fd29:	89 45 f0             	mov    %eax,-0x10(%ebp)
53fd2c:	33 f6                	xor    %esi,%esi
53fd2e:	33 c0                	xor    %eax,%eax
53fd30:	89 45 d0             	mov    %eax,-0x30(%ebp)
53fd33:	b2 01                	mov    $0x1,%dl
53fd35:	a1 78 9d 41 00       	mov    0x419d78,%eax
53fd3a:	e8 09 3d ec ff       	call   0x403a48
53fd3f:	89 45 e8             	mov    %eax,-0x18(%ebp)
53fd42:	6a 20                	push   $0x20
53fd44:	8b 4d fc             	mov    -0x4(%ebp),%ecx
53fd47:	b2 01                	mov    $0x1,%dl
53fd49:	a1 88 9c 41 00       	mov    0x419c88,%eax
53fd4e:	e8 81 ee ed ff       	call   0x41ebd4
53fd53:	89 45 ec             	mov    %eax,-0x14(%ebp)
53fd56:	33 c9                	xor    %ecx,%ecx
53fd58:	55                   	push   %ebp
53fd59:	68 90 01 54 00       	push   $0x540190
53fd5e:	64 ff 31             	push   %fs:(%ecx)
53fd61:	64 89 21             	mov    %esp,%fs:(%ecx)
53fd64:	8d 55 c3             	lea    -0x3d(%ebp),%edx
53fd67:	b9 0d 00 00 00       	mov    $0xd,%ecx
53fd6c:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fd6f:	8b 38                	mov    (%eax),%edi
53fd71:	ff 57 08             	call   *0x8(%edi)
53fd74:	80 7d c3 47          	cmpb   $0x47,-0x3d(%ebp)
53fd78:	75 0c                	jne    0x53fd86
53fd7a:	80 7d c4 49          	cmpb   $0x49,-0x3c(%ebp)
53fd7e:	75 06                	jne    0x53fd86
53fd80:	80 7d c5 46          	cmpb   $0x46,-0x3b(%ebp)
53fd84:	74 0f                	je     0x53fd95
53fd86:	33 c0                	xor    %eax,%eax
53fd88:	89 45 f0             	mov    %eax,-0x10(%ebp)
53fd8b:	e8 60 45 ec ff       	call   0x4042f0
53fd90:	e9 02 04 00 00       	jmp    0x540197
53fd95:	c6 45 c6 38          	movb   $0x38,-0x3a(%ebp)
53fd99:	c6 45 c7 39          	movb   $0x39,-0x39(%ebp)
53fd9d:	c6 45 c8 61          	movb   $0x61,-0x38(%ebp)
53fda1:	8d 55 c3             	lea    -0x3d(%ebp),%edx
53fda4:	b9 0d 00 00 00       	mov    $0xd,%ecx
53fda9:	8b 45 e8             	mov    -0x18(%ebp),%eax
53fdac:	8b 38                	mov    (%eax),%edi
53fdae:	ff 57 0c             	call   *0xc(%edi)
53fdb1:	8a 55 cd             	mov    -0x33(%ebp),%dl
53fdb4:	8b c2                	mov    %edx,%eax
53fdb6:	24 07                	and    $0x7,%al
53fdb8:	25 ff 00 00 00       	and    $0xff,%eax
53fdbd:	f6 c2 80             	test   $0x80,%dl
53fdc0:	0f 95 c2             	setne  %dl
53fdc3:	84 d2                	test   %dl,%dl
53fdc5:	74 17                	je     0x53fdde
53fdc7:	8b c8                	mov    %eax,%ecx
53fdc9:	b8 02 00 00 00       	mov    $0x2,%eax
53fdce:	d3 e0                	shl    %cl,%eax
53fdd0:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
53fdd3:	8b 55 ec             	mov    -0x14(%ebp),%edx
53fdd6:	8b 45 e8             	mov    -0x18(%ebp),%eax
53fdd9:	e8 ea fe ff ff       	call   0x53fcc8
53fdde:	8b d3                	mov    %ebx,%edx
53fde0:	b9 01 00 00 00       	mov    $0x1,%ecx
53fde5:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fde8:	8b 38                	mov    (%eax),%edi
53fdea:	ff 57 08             	call   *0x8(%edi)
53fded:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fdf0:	e8 c3 e8 ed ff       	call   0x41e6b8
53fdf5:	52                   	push   %edx
53fdf6:	50                   	push   %eax
53fdf7:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fdfa:	e8 ed e8 ed ff       	call   0x41e6ec
53fdff:	3b 54 24 04          	cmp    0x4(%esp),%edx
53fe03:	75 09                	jne    0x53fe0e
53fe05:	3b 04 24             	cmp    (%esp),%eax
53fe08:	5a                   	pop    %edx
53fe09:	58                   	pop    %eax
53fe0a:	77 09                	ja     0x53fe15
53fe0c:	eb 04                	jmp    0x53fe12
53fe0e:	5a                   	pop    %edx
53fe0f:	58                   	pop    %eax
53fe10:	7f 03                	jg     0x53fe15
53fe12:	c6 03 3b             	movb   $0x3b,(%ebx)
53fe15:	8a 03                	mov    (%ebx),%al
53fe17:	2c 21                	sub    $0x21,%al
53fe19:	0f 84 c7 01 00 00    	je     0x53ffe6
53fe1f:	2c 0b                	sub    $0xb,%al
53fe21:	74 0a                	je     0x53fe2d
53fe23:	2c 0f                	sub    $0xf,%al
53fe25:	0f 84 1e 03 00 00    	je     0x540149
53fe2b:	eb b1                	jmp    0x53fdde
53fe2d:	8d 55 df             	lea    -0x21(%ebp),%edx
53fe30:	b9 09 00 00 00       	mov    $0x9,%ecx
53fe35:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fe38:	8b 38                	mov    (%eax),%edi
53fe3a:	ff 57 08             	call   *0x8(%edi)
53fe3d:	8a 45 e7             	mov    -0x19(%ebp),%al
53fe40:	8b d0                	mov    %eax,%edx
53fe42:	80 e2 07             	and    $0x7,%dl
53fe45:	81 e2 ff 00 00 00    	and    $0xff,%edx
53fe4b:	89 55 d8             	mov    %edx,-0x28(%ebp)
53fe4e:	a8 80                	test   $0x80,%al
53fe50:	0f 95 45 d7          	setne  -0x29(%ebp)
53fe54:	3b 75 f8             	cmp    -0x8(%ebp),%esi
53fe57:	0f 84 0c 01 00 00    	je     0x53ff69
53fe5d:	ff 45 d0             	incl   -0x30(%ebp)
53fe60:	8b d3                	mov    %ebx,%edx
53fe62:	b9 01 00 00 00       	mov    $0x1,%ecx
53fe67:	8b 45 e8             	mov    -0x18(%ebp),%eax
53fe6a:	8b 38                	mov    (%eax),%edi
53fe6c:	ff 57 0c             	call   *0xc(%edi)
53fe6f:	8d 55 df             	lea    -0x21(%ebp),%edx
53fe72:	b9 09 00 00 00       	mov    $0x9,%ecx
53fe77:	8b 45 e8             	mov    -0x18(%ebp),%eax
53fe7a:	8b 38                	mov    (%eax),%edi
53fe7c:	ff 57 0c             	call   *0xc(%edi)
53fe7f:	80 7d d7 00          	cmpb   $0x0,-0x29(%ebp)
53fe83:	74 18                	je     0x53fe9d
53fe85:	8b 4d d8             	mov    -0x28(%ebp),%ecx
53fe88:	b8 02 00 00 00       	mov    $0x2,%eax
53fe8d:	d3 e0                	shl    %cl,%eax
53fe8f:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
53fe92:	8b 55 ec             	mov    -0x14(%ebp),%edx
53fe95:	8b 45 e8             	mov    -0x18(%ebp),%eax
53fe98:	e8 2b fe ff ff       	call   0x53fcc8
53fe9d:	8b d3                	mov    %ebx,%edx
53fe9f:	b9 01 00 00 00       	mov    $0x1,%ecx
53fea4:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fea7:	8b 38                	mov    (%eax),%edi
53fea9:	ff 57 08             	call   *0x8(%edi)
53feac:	8b d3                	mov    %ebx,%edx
53feae:	b9 01 00 00 00       	mov    $0x1,%ecx
53feb3:	8b 45 e8             	mov    -0x18(%ebp),%eax
53feb6:	8b 38                	mov    (%eax),%edi
53feb8:	ff 57 0c             	call   *0xc(%edi)
53febb:	8b d3                	mov    %ebx,%edx
53febd:	b9 01 00 00 00       	mov    $0x1,%ecx
53fec2:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fec5:	8b 38                	mov    (%eax),%edi
53fec7:	ff 57 08             	call   *0x8(%edi)
53feca:	8b d3                	mov    %ebx,%edx
53fecc:	b9 01 00 00 00       	mov    $0x1,%ecx
53fed1:	8b 45 e8             	mov    -0x18(%ebp),%eax
53fed4:	8b 38                	mov    (%eax),%edi
53fed6:	ff 57 0c             	call   *0xc(%edi)
53fed9:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fedc:	e8 d7 e7 ed ff       	call   0x41e6b8
53fee1:	52                   	push   %edx
53fee2:	50                   	push   %eax
53fee3:	33 c0                	xor    %eax,%eax
53fee5:	8a 03                	mov    (%ebx),%al
53fee7:	33 d2                	xor    %edx,%edx
53fee9:	03 04 24             	add    (%esp),%eax
53feec:	13 54 24 04          	adc    0x4(%esp),%edx
53fef0:	83 c4 08             	add    $0x8,%esp
53fef3:	52                   	push   %edx
53fef4:	50                   	push   %eax
53fef5:	8b 45 ec             	mov    -0x14(%ebp),%eax
53fef8:	e8 ef e7 ed ff       	call   0x41e6ec
53fefd:	3b 54 24 04          	cmp    0x4(%esp),%edx
53ff01:	75 09                	jne    0x53ff0c
53ff03:	3b 04 24             	cmp    (%esp),%eax
53ff06:	5a                   	pop    %edx
53ff07:	58                   	pop    %eax
53ff08:	73 10                	jae    0x53ff1a
53ff0a:	eb 04                	jmp    0x53ff10
53ff0c:	5a                   	pop    %edx
53ff0d:	58                   	pop    %eax
53ff0e:	7d 0a                	jge    0x53ff1a
53ff10:	e8 db 43 ec ff       	call   0x4042f0
53ff15:	e9 7d 02 00 00       	jmp    0x540197
53ff1a:	80 3b 00             	cmpb   $0x0,(%ebx)
53ff1d:	76 0f                	jbe    0x53ff2e
53ff1f:	33 c9                	xor    %ecx,%ecx
53ff21:	8a 0b                	mov    (%ebx),%cl
53ff23:	8b 55 ec             	mov    -0x14(%ebp),%edx
53ff26:	8b 45 e8             	mov    -0x18(%ebp),%eax
53ff29:	e8 9a fd ff ff       	call   0x53fcc8
53ff2e:	80 3b 00             	cmpb   $0x0,(%ebx)
53ff31:	0f 84 a9 00 00 00    	je     0x53ffe0
53ff37:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ff3a:	e8 79 e7 ed ff       	call   0x41e6b8
53ff3f:	52                   	push   %edx
53ff40:	50                   	push   %eax
53ff41:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ff44:	e8 a3 e7 ed ff       	call   0x41e6ec
53ff49:	3b 54 24 04          	cmp    0x4(%esp),%edx
53ff4d:	75 10                	jne    0x53ff5f
53ff4f:	3b 04 24             	cmp    (%esp),%eax
53ff52:	5a                   	pop    %edx
53ff53:	58                   	pop    %eax
53ff54:	0f 87 61 ff ff ff    	ja     0x53febb
53ff5a:	e9 81 00 00 00       	jmp    0x53ffe0
53ff5f:	5a                   	pop    %edx
53ff60:	58                   	pop    %eax
53ff61:	0f 8f 54 ff ff ff    	jg     0x53febb
53ff67:	eb 77                	jmp    0x53ffe0
53ff69:	80 7d d7 00          	cmpb   $0x0,-0x29(%ebp)
53ff6d:	74 19                	je     0x53ff88
53ff6f:	8b 4d d8             	mov    -0x28(%ebp),%ecx
53ff72:	b8 02 00 00 00       	mov    $0x2,%eax
53ff77:	d3 e0                	shl    %cl,%eax
53ff79:	8d 14 40             	lea    (%eax,%eax,2),%edx
53ff7c:	66 b9 01 00          	mov    $0x1,%cx
53ff80:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ff83:	8b 38                	mov    (%eax),%edi
53ff85:	ff 57 10             	call   *0x10(%edi)
53ff88:	8b d3                	mov    %ebx,%edx
53ff8a:	b9 01 00 00 00       	mov    $0x1,%ecx
53ff8f:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ff92:	8b 38                	mov    (%eax),%edi
53ff94:	ff 57 08             	call   *0x8(%edi)
53ff97:	8b d3                	mov    %ebx,%edx
53ff99:	b9 01 00 00 00       	mov    $0x1,%ecx
53ff9e:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ffa1:	8b 38                	mov    (%eax),%edi
53ffa3:	ff 57 08             	call   *0x8(%edi)
53ffa6:	33 d2                	xor    %edx,%edx
53ffa8:	8a 13                	mov    (%ebx),%dl
53ffaa:	66 b9 01 00          	mov    $0x1,%cx
53ffae:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ffb1:	8b 38                	mov    (%eax),%edi
53ffb3:	ff 57 10             	call   *0x10(%edi)
53ffb6:	80 3b 00             	cmpb   $0x0,(%ebx)
53ffb9:	74 25                	je     0x53ffe0
53ffbb:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ffbe:	e8 f5 e6 ed ff       	call   0x41e6b8
53ffc3:	52                   	push   %edx
53ffc4:	50                   	push   %eax
53ffc5:	8b 45 ec             	mov    -0x14(%ebp),%eax
53ffc8:	e8 1f e7 ed ff       	call   0x41e6ec
53ffcd:	3b 54 24 04          	cmp    0x4(%esp),%edx
53ffd1:	75 09                	jne    0x53ffdc
53ffd3:	3b 04 24             	cmp    (%esp),%eax
53ffd6:	5a                   	pop    %edx
53ffd7:	58                   	pop    %eax
53ffd8:	77 bd                	ja     0x53ff97
53ffda:	eb 04                	jmp    0x53ffe0
53ffdc:	5a                   	pop    %edx
53ffdd:	58                   	pop    %eax
53ffde:	7f b7                	jg     0x53ff97
53ffe0:	46                   	inc    %esi
53ffe1:	e9 f8 fd ff ff       	jmp    0x53fdde
53ffe6:	8d 55 d6             	lea    -0x2a(%ebp),%edx
53ffe9:	b9 01 00 00 00       	mov    $0x1,%ecx