54aa6e:	5b                   	pop    %ebx
54aa6f:	8b e5                	mov    %ebp,%esp
54aa71:	5d                   	pop    %ebp
54aa72:	c3                   	ret
54aa73:	8b 8b 98 00 00 00    	mov    0x98(%ebx),%ecx
54aa79:	b8 04 00 00 00       	mov    $0x4,%eax
54aa7e:	80 e1 0c             	and    $0xc,%cl
54aa81:	3a c8                	cmp    %al,%cl
54aa83:	75 5b                	jne    0x54aae0
54aa85:	66 89 47 08          	mov    %ax,0x8(%edi)
54aa89:	8b c6                	mov    %esi,%eax
54aa8b:	8b 75 08             	mov    0x8(%ebp),%esi
54aa8e:	99                   	cltd
54aa8f:	89 07                	mov    %eax,(%edi)
54aa91:	b8 02 0a 00 00       	mov    $0xa02,%eax
54aa96:	89 57 04             	mov    %edx,0x4(%edi)
54aa99:	66 89 47 30          	mov    %ax,0x30(%edi)
54aa9d:	0f b6 06             	movzbl (%esi),%eax
54aaa0:	8b 0c 85 e0 2c 6b 00 	mov    0x6b2ce0(,%eax,4),%ecx
54aaa7:	89 4f 38             	mov    %ecx,0x38(%edi)
54aaaa:	85 c9                	test   %ecx,%ecx
54aaac:	75 0f                	jne    0x54aabd
54aaae:	89 4f 34             	mov    %ecx,0x34(%edi)
54aab1:	8d 41 04             	lea    0x4(%ecx),%eax
54aab4:	c6 47 32 01          	movb   $0x1,0x32(%edi)
54aab8:	83 c7 50             	add    $0x50,%edi
54aabb:	eb 26                	jmp    0x54aae3
54aabd:	8d 51 01             	lea    0x1(%ecx),%edx
54aac0:	8a 01                	mov    (%ecx),%al
54aac2:	41                   	inc    %ecx
54aac3:	84 c0                	test   %al,%al
54aac5:	75 f9                	jne    0x54aac0
54aac7:	2b ca                	sub    %edx,%ecx
54aac9:	c6 47 32 01          	movb   $0x1,0x32(%edi)
54aacd:	81 e1 ff ff ff 3f    	and    $0x3fffffff,%ecx
54aad3:	b8 04 00 00 00       	mov    $0x4,%eax
54aad8:	89 4f 34             	mov    %ecx,0x34(%edi)
54aadb:	83 c7 50             	add    $0x50,%edi
54aade:	eb 03                	jmp    0x54aae3
54aae0:	8b 75 08             	mov    0x8(%ebp),%esi
54aae3:	66 89 47 08          	mov    %ax,0x8(%edi)
54aae7:	b9 04 00 00 00       	mov    $0x4,%ecx
54aaec:	8b 46 04             	mov    0x4(%esi),%eax
54aaef:	99                   	cltd
54aaf0:	89 07                	mov    %eax,(%edi)
54aaf2:	89 57 04             	mov    %edx,0x4(%edi)
54aaf5:	66 89 4f 30          	mov    %cx,0x30(%edi)
54aaf9:	8b 46 08             	mov    0x8(%esi),%eax
54aafc:	99                   	cltd
54aafd:	89 47 28             	mov    %eax,0x28(%edi)
54ab00:	89 57 2c             	mov    %edx,0x2c(%edi)
54ab03:	66 89 4f 58          	mov    %cx,0x58(%edi)
54ab07:	8b 46 0c             	mov    0xc(%esi),%eax
54ab0a:	99                   	cltd
54ab0b:	89 47 50             	mov    %eax,0x50(%edi)
54ab0e:	89 57 54             	mov    %edx,0x54(%edi)
54ab11:	83 c7 78             	add    $0x78,%edi
54ab14:	83 7f 18 64          	cmpl   $0x64,0x18(%edi)
54ab18:	7d 1d                	jge    0x54ab37
54ab1a:	6a 00                	push   $0x0
54ab1c:	6a 64                	push   $0x64
54ab1e:	57                   	push   %edi
54ab1f:	e8 cc 09 00 00       	call   0x54b4f0
54ab24:	83 c4 0c             	add    $0xc,%esp
54ab27:	85 c0                	test   %eax,%eax
54ab29:	74 17                	je     0x54ab42
54ab2b:	5f                   	pop    %edi
54ab2c:	5e                   	pop    %esi
54ab2d:	b8 01 00 00 00       	mov    $0x1,%eax
54ab32:	5b                   	pop    %ebx
54ab33:	8b e5                	mov    %ebp,%esp
54ab35:	5d                   	pop    %ebp
54ab36:	c3                   	ret
54ab37:	8b 47 14             	mov    0x14(%edi),%eax
54ab3a:	66 83 67 08 2d       	andw   $0x2d,0x8(%edi)
54ab3f:	89 47 10             	mov    %eax,0x10(%edi)
54ab42:	ff 77 18             	push   0x18(%edi)
54ab45:	b8 02 02 00 00       	mov    $0x202,%eax
54ab4a:	ff 77 10             	push   0x10(%edi)
54ab4d:	66 89 47 08          	mov    %ax,0x8(%edi)
54ab51:	56                   	push   %esi
54ab52:	e8 c9 34 fb ff       	call   0x4fe020
54ab57:	8b 4f 10             	mov    0x10(%edi),%ecx
54ab5a:	83 c4 0c             	add    $0xc,%esp
54ab5d:	89 45 e0             	mov    %eax,-0x20(%ebp)
54ab60:	ba 01 00 00 00       	mov    $0x1,%edx
54ab65:	3b c1                	cmp    %ecx,%eax
54ab67:	74 73                	je     0x54abdc
54ab69:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
54ab70:	85 c0                	test   %eax,%eax
54ab72:	75 1c                	jne    0x54ab90
54ab74:	b8 00 24 00 00       	mov    $0x2400,%eax
54ab79:	66 85 47 08          	test   %ax,0x8(%edi)
54ab7d:	74 0b                	je     0x54ab8a
54ab7f:	57                   	push   %edi
54ab80:	e8 cb 02 01 00       	call   0x55ae50
54ab85:	83 c4 04             	add    $0x4,%esp
54ab88:	eb 6f                	jmp    0x54abf9
54ab8a:	66 89 57 08          	mov    %dx,0x8(%edi)
54ab8e:	eb 69                	jmp    0x54abf9
54ab90:	8b f0                	mov    %eax,%esi
54ab92:	8d 4e 01             	lea    0x1(%esi),%ecx
54ab95:	8a 06                	mov    (%esi),%al
54ab97:	46                   	inc    %esi
54ab98:	84 c0                	test   %al,%al
54ab9a:	75 f9                	jne    0x54ab95
54ab9c:	2b f1                	sub    %ecx,%esi
54ab9e:	b8 00 24 00 00       	mov    $0x2400,%eax
54aba3:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
54aba9:	66 85 47 08          	test   %ax,0x8(%edi)
54abad:	75 06                	jne    0x54abb5
54abaf:	83 7f 18 00          	cmpl   $0x0,0x18(%edi)
54abb3:	74 09                	je     0x54abbe
54abb5:	57                   	push   %edi
54abb6:	e8 55 02 01 00       	call   0x55ae10
54abbb:	83 c4 04             	add    $0x4,%esp
54abbe:	8b 45 e0             	mov    -0x20(%ebp),%eax
54abc1:	89 47 10             	mov    %eax,0x10(%edi)
54abc4:	b8 02 0a 00 00       	mov    $0xa02,%eax
54abc9:	89 77 0c             	mov    %esi,0xc(%edi)
54abcc:	8b 75 08             	mov    0x8(%ebp),%esi
54abcf:	c7 47 24 00 00 00 00 	movl   $0x0,0x24(%edi)
54abd6:	66 89 47 08          	mov    %ax,0x8(%edi)
54abda:	eb 19                	jmp    0x54abf5
54abdc:	85 c9                	test   %ecx,%ecx
54abde:	74 12                	je     0x54abf2
54abe0:	8d 51 01             	lea    0x1(%ecx),%edx
54abe3:	8a 01                	mov    (%ecx),%al
54abe5:	41                   	inc    %ecx
54abe6:	84 c0                	test   %al,%al
54abe8:	75 f9                	jne    0x54abe3
54abea:	2b ca                	sub    %edx,%ecx
54abec:	81 e1 ff ff ff 3f    	and    $0x3fffffff,%ecx
54abf2:	89 4f 0c             	mov    %ecx,0xc(%edi)
54abf5:	c6 47 0a 01          	movb   $0x1,0xa(%edi)
54abf9:	8b 83 98 00 00 00    	mov    0x98(%ebx),%eax
54abff:	83 c7 28             	add    $0x28,%edi
54ac02:	24 0c                	and    $0xc,%al
54ac04:	3c 04                	cmp    $0x4,%al
54ac06:	75 62                	jne    0x54ac6a
54ac08:	83 7f 18 04          	cmpl   $0x4,0x18(%edi)
54ac0c:	7d 1d                	jge    0x54ac2b
54ac0e:	6a 00                	push   $0x0
54ac10:	6a 04                	push   $0x4
54ac12:	57                   	push   %edi
54ac13:	e8 d8 08 00 00       	call   0x54b4f0
54ac18:	83 c4 0c             	add    $0xc,%esp
54ac1b:	85 c0                	test   %eax,%eax
54ac1d:	74 17                	je     0x54ac36
54ac1f:	5f                   	pop    %edi
54ac20:	5e                   	pop    %esi
54ac21:	b8 01 00 00 00       	mov    $0x1,%eax
54ac26:	5b                   	pop    %ebx
54ac27:	8b e5                	mov    %ebp,%esp
54ac29:	5d                   	pop    %ebp
54ac2a:	c3                   	ret
54ac2b:	8b 47 14             	mov    0x14(%edi),%eax
54ac2e:	66 83 67 08 2d       	andw   $0x2d,0x8(%edi)
54ac33:	89 47 10             	mov    %eax,0x10(%edi)
54ac36:	b8 02 02 00 00       	mov    $0x202,%eax
54ac3b:	c7 47 0c 02 00 00 00 	movl   $0x2,0xc(%edi)
54ac42:	66 89 47 08          	mov    %ax,0x8(%edi)
54ac46:	0f b7 46 02          	movzwl 0x2(%esi),%eax
54ac4a:	50                   	push   %eax
54ac4b:	68 a8 86 6b 00       	push   $0x6b86a8
54ac50:	ff 77 10             	push   0x10(%edi)
54ac53:	6a 03                	push   $0x3
54ac55:	e8 96 fb f9 ff       	call   0x4ea7f0
54ac5a:	b8 01 00 00 00       	mov    $0x1,%eax
54ac5f:	c6 47 0a 01          	movb   $0x1,0xa(%edi)
54ac63:	83 c4 10             	add    $0x10,%esp
54ac66:	66 89 47 30          	mov    %ax,0x30(%edi)
54ac6a:	8b 8b 98 00 00 00    	mov    0x98(%ebx),%ecx
54ac70:	b8 03 00 00 00       	mov    $0x3,%eax
54ac75:	c1 e9 02             	shr    $0x2,%ecx
54ac78:	be 64 00 00 00       	mov    $0x64,%esi
54ac7d:	83 e1 03             	and    $0x3,%ecx
54ac80:	c7 43 28 00 00 00 00 	movl   $0x0,0x28(%ebx)
54ac87:	2b c1                	sub    %ecx,%eax
54ac89:	c1 e0 02             	shl    $0x2,%eax
54ac8c:	66 89 83 90 00 00 00 	mov    %ax,0x90(%ebx)
54ac93:	8b 43 58             	mov    0x58(%ebx),%eax
54ac96:	83 c0 28             	add    $0x28,%eax
54ac99:	89 43 78             	mov    %eax,0x78(%ebx)
54ac9c:	8b c6                	mov    %esi,%eax
54ac9e:	5f                   	pop    %edi
54ac9f:	5e                   	pop    %esi
54aca0:	5b                   	pop    %ebx
54aca1:	8b e5                	mov    %ebp,%esp
54aca3:	5d                   	pop    %ebp
54aca4:	c3                   	ret
54aca5:	cc                   	int3
54aca6:	cc                   	int3
54aca7:	cc                   	int3
54aca8:	cc                   	int3
54aca9:	cc                   	int3
54acaa:	cc                   	int3
54acab:	cc                   	int3
54acac:	cc                   	int3
54acad:	cc                   	int3
54acae:	cc                   	int3
54acaf:	cc                   	int3
54acb0:	55                   	push   %ebp
54acb1:	8b ec                	mov    %esp,%ebp
54acb3:	6a 00                	push   $0x0
54acb5:	ff 75 10             	push   0x10(%ebp)
54acb8:	6a 00                	push   $0x0
54acba:	ff 75 0c             	push   0xc(%ebp)
54acbd:	6a 00                	push   $0x0
54acbf:	6a 73                	push   $0x73
54acc1:	ff 75 08             	push   0x8(%ebp)
54acc4:	e8 c7 6e ff ff       	call   0x541b90
54acc9:	83 c4 1c             	add    $0x1c,%esp
54accc:	5d                   	pop    %ebp
54accd:	c3                   	ret
54acce:	cc                   	int3
54accf:	cc                   	int3
54acd0:	55                   	push   %ebp
54acd1:	8b ec                	mov    %esp,%ebp
54acd3:	83 ec 54             	sub    $0x54,%esp
54acd6:	8b 55 0c             	mov    0xc(%ebp),%edx
54acd9:	53                   	push   %ebx
54acda:	56                   	push   %esi
54acdb:	57                   	push   %edi
54acdc:	8b 7d 08             	mov    0x8(%ebp),%edi
54acdf:	8b 4a 28             	mov    0x28(%edx),%ecx
54ace2:	8b 5a 2c             	mov    0x2c(%edx),%ebx
54ace5:	03 d9                	add    %ecx,%ebx
54ace7:	89 4d d8             	mov    %ecx,-0x28(%ebp)
54acea:	8b 07                	mov    (%edi),%eax
54acec:	89 45 dc             	mov    %eax,-0x24(%ebp)
54acef:	0f bf 82 c4 00 00 00 	movswl 0xc4(%edx),%eax
54acf6:	89 45 e8             	mov    %eax,-0x18(%ebp)
54acf9:	8b 42 60             	mov    0x60(%edx),%eax
54acfc:	89 45 d4             	mov    %eax,-0x2c(%ebp)
54acff:	85 c9                	test   %ecx,%ecx
54ad01:	75 05                	jne    0x54ad08
54ad03:	85 db                	test   %ebx,%ebx
54ad05:	7e 01                	jle    0x54ad08
54ad07:	43                   	inc    %ebx
54ad08:	8b 47 6c             	mov    0x6c(%edi),%eax
54ad0b:	8d 04 80             	lea    (%eax,%eax,4),%eax
54ad0e:	8d 0c 85 07 00 00 00 	lea    0x7(,%eax,4),%ecx
54ad15:	8b 47 68             	mov    0x68(%edi),%eax
54ad18:	83 e1 f8             	and    $0xfffffff8,%ecx
54ad1b:	03 c1                	add    %ecx,%eax
54ad1d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
54ad20:	8b 42 30             	mov    0x30(%edx),%eax
54ad23:	2b c1                	sub    %ecx,%eax
54ad25:	83 e0 f8             	and    $0xfffffff8,%eax
54ad28:	99                   	cltd
54ad29:	8b f0                	mov    %eax,%esi
54ad2b:	89 55 f8             	mov    %edx,-0x8(%ebp)
54ad2e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54ad31:	89 75 fc             	mov    %esi,-0x4(%ebp)
54ad34:	50                   	push   %eax
54ad35:	57                   	push   %edi
54ad36:	e8 35 99 fc ff       	call   0x514670
54ad3b:	8b 55 0c             	mov    0xc(%ebp),%edx
54ad3e:	83 c4 08             	add    $0x8,%esp
54ad41:	80 7a 14 00          	cmpb   $0x0,0x14(%edx)
54ad45:	74 0d                	je     0x54ad54
54ad47:	80 7a 15 00          	cmpb   $0x0,0x15(%edx)
54ad4b:	74 07                	je     0x54ad54
54ad4d:	b9 80 00 00 00       	mov    $0x80,%ecx
54ad52:	eb 02                	jmp    0x54ad56
54ad54:	33 c9                	xor    %ecx,%ecx
54ad56:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
54ad5c:	25 7f ff ff ff       	and    $0xffffff7f,%eax
54ad61:	0b c1                	or     %ecx,%eax
54ad63:	89 87 98 00 00 00    	mov    %eax,0x98(%edi)
54ad69:	8a 82 c7 00 00 00    	mov    0xc7(%edx),%al
54ad6f:	84 c0                	test   %al,%al
54ad71:	0f 84 f4 00 00 00    	je     0x54ae6b
54ad77:	b9 0a 00 00 00       	mov    $0xa,%ecx
54ad7c:	3b d9                	cmp    %ecx,%ebx
54ad7e:	0f 4c d9             	cmovl  %ecx,%ebx
54ad81:	89 5d f4             	mov    %ebx,-0xc(%ebp)
54ad84:	3c 02                	cmp    $0x2,%al
54ad86:	75 19                	jne    0x54ada1
54ad88:	6a 04                	push   $0x4
54ad8a:	57                   	push   %edi
54ad8b:	e8 30 22 00 00       	call   0x54cfc0
54ad90:	83 c4 08             	add    $0x8,%esp
54ad93:	c7 45 f0 0c 00 00 00 	movl   $0xc,-0x10(%ebp)
54ad9a:	b8 08 00 00 00       	mov    $0x8,%eax
54ad9f:	eb 14                	jmp    0x54adb5
54ada1:	6a 08                	push   $0x8
54ada3:	57                   	push   %edi
54ada4:	e8 17 22 00 00       	call   0x54cfc0
54ada9:	83 c4 08             	add    $0x8,%esp
54adac:	c7 45 f0 08 00 00 00 	movl   $0x8,-0x10(%ebp)
54adb3:	33 c0                	xor    %eax,%eax
54adb5:	33 d2                	xor    %edx,%edx
54adb7:	89 45 e0             	mov    %eax,-0x20(%ebp)
54adba:	89 55 ec             	mov    %edx,-0x14(%ebp)
54adbd:	be 00 24 00 00       	mov    $0x2400,%esi
54adc2:	8b 0c 85 a0 2f 6b 00 	mov    0x6b2fa0(,%eax,4),%ecx
54adc9:	8b 07                	mov    (%edi),%eax
54adcb:	89 4d d0             	mov    %ecx,-0x30(%ebp)
54adce:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
54add2:	75 7b                	jne    0x54ae4f
54add4:	8b 5f 74             	mov    0x74(%edi),%ebx
54add7:	03 da                	add    %edx,%ebx
54add9:	85 c9                	test   %ecx,%ecx
54addb:	75 1b                	jne    0x54adf8
54addd:	66 85 73 08          	test   %si,0x8(%ebx)
54ade1:	74 0e                	je     0x54adf1
54ade3:	53                   	push   %ebx
54ade4:	e8 67 00 01 00       	call   0x55ae50
54ade9:	8b 55 ec             	mov    -0x14(%ebp),%edx
54adec:	83 c4 04             	add    $0x4,%esp
54adef:	eb 5e                	jmp    0x54ae4f
54adf1:	b8 01 00 00 00       	mov    $0x1,%eax
54adf6:	eb 53                	jmp    0x54ae4b
54adf8:	8b f1                	mov    %ecx,%esi
54adfa:	8d 46 01             	lea    0x1(%esi),%eax
54adfd:	89 45 cc             	mov    %eax,-0x34(%ebp)
54ae00:	8a 06                	mov    (%esi),%al
54ae02:	46                   	inc    %esi
54ae03:	84 c0                	test   %al,%al
54ae05:	75 f9                	jne    0x54ae00
54ae07:	2b 75 cc             	sub    -0x34(%ebp),%esi
54ae0a:	b8 00 24 00 00       	mov    $0x2400,%eax
54ae0f:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
54ae15:	66 85 43 08          	test   %ax,0x8(%ebx)
54ae19:	75 06                	jne    0x54ae21
54ae1b:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
54ae1f:	74 0f                	je     0x54ae30
54ae21:	53                   	push   %ebx
54ae22:	e8 e9 ff 00 00       	call   0x55ae10
54ae27:	8b 4d d0             	mov    -0x30(%ebp),%ecx
54ae2a:	83 c4 04             	add    $0x4,%esp
54ae2d:	8b 55 ec             	mov    -0x14(%ebp),%edx
54ae30:	89 73 0c             	mov    %esi,0xc(%ebx)
54ae33:	b8 02 0a 00 00       	mov    $0xa02,%eax
54ae38:	89 4b 10             	mov    %ecx,0x10(%ebx)
54ae3b:	be 00 24 00 00       	mov    $0x2400,%esi
54ae40:	c7 43 24 00 00 00 00 	movl   $0x0,0x24(%ebx)
54ae47:	c6 43 0a 01          	movb   $0x1,0xa(%ebx)
54ae4b:	66 89 43 08          	mov    %ax,0x8(%ebx)
54ae4f:	8b 45 e0             	mov    -0x20(%ebp),%eax
54ae52:	83 c2 28             	add    $0x28,%edx
54ae55:	40                   	inc    %eax
54ae56:	89 55 ec             	mov    %edx,-0x14(%ebp)
54ae59:	89 45 e0             	mov    %eax,-0x20(%ebp)
54ae5c:	3b 45 f0             	cmp    -0x10(%ebp),%eax
54ae5f:	0f 8c 5d ff ff ff    	jl     0x54adc2
54ae65:	8b 5d f4             	mov    -0xc(%ebp),%ebx
54ae68:	8b 75 fc             	mov    -0x4(%ebp),%esi