54daec:	ff 44 24 68          	incl   0x68(%esp)
54daf0:	8b 03                	mov    (%ebx),%eax
54daf2:	8b 54 24 68          	mov    0x68(%esp),%edx
54daf6:	3b c2                	cmp    %edx,%eax
54daf8:	77 b7                	ja     0x54dab1
54dafa:	8b 4c 24 08          	mov    0x8(%esp),%ecx
54dafe:	89 0b                	mov    %ecx,(%ebx)
54db00:	33 c0                	xor    %eax,%eax
54db02:	8a 43 0b             	mov    0xb(%ebx),%al
54db05:	f7 6c 24 08          	imull  0x8(%esp)
54db09:	83 c0 07             	add    $0x7,%eax
54db0c:	c1 e8 03             	shr    $0x3,%eax
54db0f:	89 43 04             	mov    %eax,0x4(%ebx)
54db12:	83 c4 74             	add    $0x74,%esp
54db15:	5d                   	pop    %ebp
54db16:	5f                   	pop    %edi
54db17:	5e                   	pop    %esi
54db18:	5b                   	pop    %ebx
54db19:	c3                   	ret
54db1a:	90                   	nop
54db1b:	90                   	nop
54db1c:	55                   	push   %ebp
54db1d:	8b ec                	mov    %esp,%ebp
54db1f:	83 c4 c8             	add    $0xffffffc8,%esp
54db22:	53                   	push   %ebx
54db23:	56                   	push   %esi
54db24:	57                   	push   %edi
54db25:	89 45 fc             	mov    %eax,-0x4(%ebp)
54db28:	8b 45 08             	mov    0x8(%ebp),%eax
54db2b:	8b f1                	mov    %ecx,%esi
54db2d:	83 f8 04             	cmp    $0x4,%eax
54db30:	0f 87 ef 01 00 00    	ja     0x54dd25
54db36:	ff 24 85 3d db 54 00 	jmp    *0x54db3d(,%eax,4)
54db3d:	35 dd 54 00 56       	xor    $0x560054dd,%eax
54db42:	db 54 00 96          	fistl  -0x6a(%eax,%eax,1)
54db46:	db 54 00 c6          	fistl  -0x3a(%eax,%eax,1)
54db4a:	db 54 00 3d          	fistl  0x3d(%eax,%eax,1)
54db4e:	dc 54 00 e9          	fcoml  -0x17(%eax,%eax,1)
54db52:	df 01                	filds  (%ecx)
54db54:	00 00                	add    %al,(%eax)
54db56:	8b 4a 04             	mov    0x4(%edx),%ecx
54db59:	89 4d f8             	mov    %ecx,-0x8(%ebp)
54db5c:	0f b6 52 0b          	movzbl 0xb(%edx),%edx
54db60:	83 c2 07             	add    $0x7,%edx
54db63:	c1 fa 03             	sar    $0x3,%edx
54db66:	89 55 f4             	mov    %edx,-0xc(%ebp)
54db69:	8b d6                	mov    %esi,%edx
54db6b:	8b 45 f4             	mov    -0xc(%ebp),%eax
54db6e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
54db71:	03 c6                	add    %esi,%eax
54db73:	8b 5d f8             	mov    -0x8(%ebp),%ebx
54db76:	3b cb                	cmp    %ebx,%ecx
54db78:	0f 83 b7 01 00 00    	jae    0x54dd35
54db7e:	8a 18                	mov    (%eax),%bl
54db80:	41                   	inc    %ecx
54db81:	02 1a                	add    (%edx),%bl
54db83:	42                   	inc    %edx
54db84:	80 e3 ff             	and    $0xff,%bl
54db87:	88 18                	mov    %bl,(%eax)
54db89:	40                   	inc    %eax
54db8a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
54db8d:	3b cb                	cmp    %ebx,%ecx
54db8f:	72 ed                	jb     0x54db7e
54db91:	e9 9f 01 00 00       	jmp    0x54dd35
54db96:	8b 42 04             	mov    0x4(%edx),%eax
54db99:	33 c9                	xor    %ecx,%ecx
54db9b:	89 45 f0             	mov    %eax,-0x10(%ebp)
54db9e:	8b c6                	mov    %esi,%eax
54dba0:	8b 5d f0             	mov    -0x10(%ebp),%ebx
54dba3:	8b 55 0c             	mov    0xc(%ebp),%edx
54dba6:	3b cb                	cmp    %ebx,%ecx
54dba8:	0f 83 87 01 00 00    	jae    0x54dd35
54dbae:	8a 18                	mov    (%eax),%bl
54dbb0:	41                   	inc    %ecx
54dbb1:	02 1a                	add    (%edx),%bl
54dbb3:	42                   	inc    %edx
54dbb4:	80 e3 ff             	and    $0xff,%bl
54dbb7:	88 18                	mov    %bl,(%eax)
54dbb9:	40                   	inc    %eax
54dbba:	8b 5d f0             	mov    -0x10(%ebp),%ebx
54dbbd:	3b cb                	cmp    %ebx,%ecx
54dbbf:	72 ed                	jb     0x54dbae
54dbc1:	e9 6f 01 00 00       	jmp    0x54dd35
54dbc6:	33 db                	xor    %ebx,%ebx
54dbc8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
54dbcb:	8a 5a 0b             	mov    0xb(%edx),%bl
54dbce:	8b c6                	mov    %esi,%eax
54dbd0:	83 c3 07             	add    $0x7,%ebx
54dbd3:	c1 fb 03             	sar    $0x3,%ebx
54dbd6:	89 5d ec             	mov    %ebx,-0x14(%ebp)
54dbd9:	8b 5d ec             	mov    -0x14(%ebp),%ebx
54dbdc:	8b 52 04             	mov    0x4(%edx),%edx
54dbdf:	2b d3                	sub    %ebx,%edx
54dbe1:	89 55 e8             	mov    %edx,-0x18(%ebp)
54dbe4:	33 d2                	xor    %edx,%edx
54dbe6:	8b 5d ec             	mov    -0x14(%ebp),%ebx
54dbe9:	3b d3                	cmp    %ebx,%edx
54dbeb:	73 1c                	jae    0x54dc09
54dbed:	33 db                	xor    %ebx,%ebx
54dbef:	8a 19                	mov    (%ecx),%bl
54dbf1:	d1 fb                	sar    $1,%ebx
54dbf3:	79 03                	jns    0x54dbf8
54dbf5:	83 d3 00             	adc    $0x0,%ebx
54dbf8:	02 18                	add    (%eax),%bl
54dbfa:	41                   	inc    %ecx
54dbfb:	80 e3 ff             	and    $0xff,%bl
54dbfe:	42                   	inc    %edx
54dbff:	88 18                	mov    %bl,(%eax)
54dc01:	40                   	inc    %eax
54dc02:	8b 5d ec             	mov    -0x14(%ebp),%ebx
54dc05:	3b d3                	cmp    %ebx,%edx
54dc07:	72 e4                	jb     0x54dbed
54dc09:	33 d2                	xor    %edx,%edx
54dc0b:	8b 5d e8             	mov    -0x18(%ebp),%ebx
54dc0e:	3b d3                	cmp    %ebx,%edx
54dc10:	0f 83 1f 01 00 00    	jae    0x54dd35
54dc16:	33 db                	xor    %ebx,%ebx
54dc18:	8a 19                	mov    (%ecx),%bl
54dc1a:	0f b6 3e             	movzbl (%esi),%edi
54dc1d:	03 df                	add    %edi,%ebx
54dc1f:	d1 fb                	sar    $1,%ebx
54dc21:	79 03                	jns    0x54dc26
54dc23:	83 d3 00             	adc    $0x0,%ebx
54dc26:	02 18                	add    (%eax),%bl
54dc28:	46                   	inc    %esi
54dc29:	80 e3 ff             	and    $0xff,%bl
54dc2c:	41                   	inc    %ecx
54dc2d:	88 18                	mov    %bl,(%eax)
54dc2f:	40                   	inc    %eax
54dc30:	8b 5d e8             	mov    -0x18(%ebp),%ebx
54dc33:	42                   	inc    %edx
54dc34:	3b d3                	cmp    %ebx,%edx
54dc36:	72 de                	jb     0x54dc16
54dc38:	e9 f8 00 00 00       	jmp    0x54dd35
54dc3d:	8b 45 0c             	mov    0xc(%ebp),%eax
54dc40:	8b ce                	mov    %esi,%ecx
54dc42:	89 45 e4             	mov    %eax,-0x1c(%ebp)
54dc45:	89 75 e0             	mov    %esi,-0x20(%ebp)
54dc48:	8b 45 0c             	mov    0xc(%ebp),%eax
54dc4b:	33 f6                	xor    %esi,%esi
54dc4d:	89 45 dc             	mov    %eax,-0x24(%ebp)
54dc50:	33 c0                	xor    %eax,%eax
54dc52:	8a 42 0b             	mov    0xb(%edx),%al
54dc55:	8b 52 04             	mov    0x4(%edx),%edx
54dc58:	83 c0 07             	add    $0x7,%eax
54dc5b:	c1 f8 03             	sar    $0x3,%eax
54dc5e:	2b d0                	sub    %eax,%edx
54dc60:	3b c6                	cmp    %esi,%eax
54dc62:	89 55 d8             	mov    %edx,-0x28(%ebp)
54dc65:	76 17                	jbe    0x54dc7e
54dc67:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
54dc6a:	8a 11                	mov    (%ecx),%dl
54dc6c:	46                   	inc    %esi
54dc6d:	8a 1b                	mov    (%ebx),%bl
54dc6f:	02 d3                	add    %bl,%dl
54dc71:	80 e2 ff             	and    $0xff,%dl
54dc74:	88 11                	mov    %dl,(%ecx)
54dc76:	41                   	inc    %ecx
54dc77:	ff 45 e4             	incl   -0x1c(%ebp)
54dc7a:	3b c6                	cmp    %esi,%eax
54dc7c:	77 e9                	ja     0x54dc67
54dc7e:	33 f6                	xor    %esi,%esi
54dc80:	8b 45 d8             	mov    -0x28(%ebp),%eax
54dc83:	3b f0                	cmp    %eax,%esi
54dc85:	0f 83 aa 00 00 00    	jae    0x54dd35
54dc8b:	8b 55 e0             	mov    -0x20(%ebp),%edx
54dc8e:	33 c0                	xor    %eax,%eax
54dc90:	8a 02                	mov    (%edx),%al
54dc92:	89 45 d4             	mov    %eax,-0x2c(%ebp)
54dc95:	33 c0                	xor    %eax,%eax
54dc97:	ff 45 e0             	incl   -0x20(%ebp)
54dc9a:	8b 55 e4             	mov    -0x1c(%ebp),%edx
54dc9d:	8a 02                	mov    (%edx),%al
54dc9f:	89 45 d0             	mov    %eax,-0x30(%ebp)
54dca2:	ff 45 e4             	incl   -0x1c(%ebp)
54dca5:	8b 55 dc             	mov    -0x24(%ebp),%edx
54dca8:	0f b6 3a             	movzbl (%edx),%edi
54dcab:	ff 45 dc             	incl   -0x24(%ebp)
54dcae:	8b 55 d0             	mov    -0x30(%ebp),%edx
54dcb1:	8b 45 d4             	mov    -0x2c(%ebp),%eax
54dcb4:	2b c7                	sub    %edi,%eax
54dcb6:	2b d7                	sub    %edi,%edx
54dcb8:	85 d2                	test   %edx,%edx
54dcba:	7d 06                	jge    0x54dcc2
54dcbc:	8b da                	mov    %edx,%ebx
54dcbe:	f7 db                	neg    %ebx
54dcc0:	eb 02                	jmp    0x54dcc4
54dcc2:	8b da                	mov    %edx,%ebx
54dcc4:	89 5d cc             	mov    %ebx,-0x34(%ebp)
54dcc7:	85 c0                	test   %eax,%eax
54dcc9:	7d 06                	jge    0x54dcd1
54dccb:	8b d8                	mov    %eax,%ebx
54dccd:	f7 db                	neg    %ebx
54dccf:	eb 02                	jmp    0x54dcd3
54dcd1:	8b d8                	mov    %eax,%ebx
54dcd3:	89 5d c8             	mov    %ebx,-0x38(%ebp)
54dcd6:	8d 1c 10             	lea    (%eax,%edx,1),%ebx
54dcd9:	85 db                	test   %ebx,%ebx
54dcdb:	7d 07                	jge    0x54dce4
54dcdd:	8d 1c 10             	lea    (%eax,%edx,1),%ebx
54dce0:	f7 db                	neg    %ebx
54dce2:	eb 03                	jmp    0x54dce7
54dce4:	8d 1c 10             	lea    (%eax,%edx,1),%ebx
54dce7:	8b c3                	mov    %ebx,%eax
54dce9:	8b 55 cc             	mov    -0x34(%ebp),%edx
54dcec:	8b 5d c8             	mov    -0x38(%ebp),%ebx
54dcef:	3b d3                	cmp    %ebx,%edx
54dcf1:	7f 0c                	jg     0x54dcff
54dcf3:	8b 55 cc             	mov    -0x34(%ebp),%edx
54dcf6:	3b c2                	cmp    %edx,%eax
54dcf8:	7c 05                	jl     0x54dcff
54dcfa:	8b 55 d4             	mov    -0x2c(%ebp),%edx
54dcfd:	eb 0e                	jmp    0x54dd0d
54dcff:	8b 55 c8             	mov    -0x38(%ebp),%edx
54dd02:	3b c2                	cmp    %edx,%eax
54dd04:	7c 05                	jl     0x54dd0b
54dd06:	8b 55 d0             	mov    -0x30(%ebp),%edx
54dd09:	eb 02                	jmp    0x54dd0d
54dd0b:	8b d7                	mov    %edi,%edx
54dd0d:	8a 01                	mov    (%ecx),%al
54dd0f:	02 d0                	add    %al,%dl
54dd11:	80 e2 ff             	and    $0xff,%dl
54dd14:	88 11                	mov    %dl,(%ecx)
54dd16:	41                   	inc    %ecx
54dd17:	46                   	inc    %esi
54dd18:	8b 45 d8             	mov    -0x28(%ebp),%eax
54dd1b:	3b f0                	cmp    %eax,%esi
54dd1d:	0f 82 68 ff ff ff    	jb     0x54dc8b
54dd23:	eb 10                	jmp    0x54dd35
54dd25:	ba 1e bc 69 00       	mov    $0x69bc1e,%edx
54dd2a:	8b 45 fc             	mov    -0x4(%ebp),%eax
54dd2d:	e8 2a d2 ff ff       	call   0x54af5c
54dd32:	c6 06 00             	movb   $0x0,(%esi)
54dd35:	5f                   	pop    %edi
54dd36:	5e                   	pop    %esi
54dd37:	5b                   	pop    %ebx
54dd38:	8b e5                	mov    %ebp,%esp
54dd3a:	5d                   	pop    %ebp
54dd3b:	c2 08 00             	ret    $0x8
54dd3e:	90                   	nop
54dd3f:	90                   	nop
54dd40:	53                   	push   %ebx
54dd41:	8b d8                	mov    %eax,%ebx
54dd43:	56                   	push   %esi
54dd44:	57                   	push   %edi
54dd45:	ff 83 a4 00 00 00    	incl   0xa4(%ebx)
54dd4b:	83 c4 f8             	add    $0xfffffff8,%esp
54dd4e:	8b 83 a4 00 00 00    	mov    0xa4(%ebx),%eax
54dd54:	8b 93 90 00 00 00    	mov    0x90(%ebx),%edx
54dd5a:	3b c2                	cmp    %edx,%eax
54dd5c:	0f 82 61 02 00 00    	jb     0x54dfc3
54dd62:	8a 8b e3 00 00 00    	mov    0xe3(%ebx),%cl
54dd68:	84 c9                	test   %cl,%cl
54dd6a:	0f 84 e8 00 00 00    	je     0x54de58
54dd70:	33 c0                	xor    %eax,%eax
54dd72:	89 83 a4 00 00 00    	mov    %eax,0xa4(%ebx)
54dd78:	8b c3                	mov    %ebx,%eax
54dd7a:	8b 93 98 00 00 00    	mov    0x98(%ebx),%edx
54dd80:	42                   	inc    %edx
54dd81:	33 c9                	xor    %ecx,%ecx
54dd83:	52                   	push   %edx
54dd84:	8b 93 a8 00 00 00    	mov    0xa8(%ebx),%edx
54dd8a:	e8 d5 d0 ff ff       	call   0x54ae64
54dd8f:	fe 83 e4 00 00 00    	incb   0xe4(%ebx)
54dd95:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
54dd9b:	80 f9 07             	cmp    $0x7,%cl
54dd9e:	0f 83 a5 00 00 00    	jae    0x54de49
54dda4:	8b f1                	mov    %ecx,%esi
54dda6:	8b 93 88 00 00 00    	mov    0x88(%ebx),%edx
54ddac:	81 e6 ff 00 00 00    	and    $0xff,%esi
54ddb2:	8b 04 b5 f8 bd 69 00 	mov    0x69bdf8(,%esi,4),%eax
54ddb9:	8b 0c b5 dc bd 69 00 	mov    0x69bddc(,%esi,4),%ecx
54ddc0:	03 c2                	add    %edx,%eax
54ddc2:	33 d2                	xor    %edx,%edx
54ddc4:	8a 93 e4 00 00 00    	mov    0xe4(%ebx),%dl
54ddca:	48                   	dec    %eax
54ddcb:	2b c1                	sub    %ecx,%eax
54ddcd:	8b 0c 95 f8 bd 69 00 	mov    0x69bdf8(,%edx,4),%ecx
54ddd4:	33 d2                	xor    %edx,%edx
54ddd6:	f7 f1                	div    %ecx
54ddd8:	8b f8                	mov    %eax,%edi
54ddda:	33 c0                	xor    %eax,%eax
54dddc:	89 bb a0 00 00 00    	mov    %edi,0xa0(%ebx)
54dde2:	8a 83 e9 00 00 00    	mov    0xe9(%ebx),%al
54dde8:	f7 ef                	imul   %edi
54ddea:	83 c0 07             	add    $0x7,%eax
54dded:	c1 e8 03             	shr    $0x3,%eax
54ddf0:	40                   	inc    %eax
54ddf1:	89 83 9c 00 00 00    	mov    %eax,0x9c(%ebx)
54ddf7:	f6 43 30 02          	testb  $0x2,0x30(%ebx)
54ddfb:	75 4c                	jne    0x54de49
54ddfd:	33 c9                	xor    %ecx,%ecx
54ddff:	8b 93 8c 00 00 00    	mov    0x8c(%ebx),%edx
54de05:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
54de0b:	8b 04 8d 30 be 69 00 	mov    0x69be30(,%ecx,4),%eax
54de12:	8b 0c 8d 14 be 69 00 	mov    0x69be14(,%ecx,4),%ecx
54de19:	03 c2                	add    %edx,%eax
54de1b:	33 d2                	xor    %edx,%edx
54de1d:	8a 93 e4 00 00 00    	mov    0xe4(%ebx),%dl
54de23:	48                   	dec    %eax
54de24:	2b c1                	sub    %ecx,%eax
54de26:	8b 0c 95 30 be 69 00 	mov    0x69be30(,%edx,4),%ecx
54de2d:	33 d2                	xor    %edx,%edx
54de2f:	f7 f1                	div    %ecx
54de31:	8b f0                	mov    %eax,%esi
54de33:	89 b3 90 00 00 00    	mov    %esi,0x90(%ebx)
54de39:	85 f6                	test   %esi,%esi
54de3b:	8b 83 a0 00 00 00    	mov    0xa0(%ebx),%eax
54de41:	85 c0                	test   %eax,%eax
54de43:	0f 84 46 ff ff ff    	je     0x54dd8f
54de49:	8a 93 e4 00 00 00    	mov    0xe4(%ebx),%dl
54de4f:	80 fa 07             	cmp    $0x7,%dl
54de52:	0f 82 6b 01 00 00    	jb     0x54dfc3
54de58:	f6 43 2c 20          	testb  $0x20,0x2c(%ebx)
54de5c:	0f 85 38 01 00 00    	jne    0x54df9a
54de62:	8b cc                	mov    %esp,%ecx
54de64:	89 4b 40             	mov    %ecx,0x40(%ebx)
54de67:	c7 43 44 01 00 00 00 	movl   $0x1,0x44(%ebx)
54de6e:	8b 43 38             	mov    0x38(%ebx),%eax
54de71:	85 c0                	test   %eax,%eax
54de73:	0f 85 a1 00 00 00    	jne    0x54df1a
54de79:	eb 63                	jmp    0x54dede
54de7b:	33 d2                	xor    %edx,%edx
54de7d:	8b c3                	mov    %ebx,%eax
54de7f:	e8 c0 d2 ff ff       	call   0x54b144
54de84:	8d 54 24 04          	lea    0x4(%esp),%edx
54de88:	b9 04 00 00 00       	mov    $0x4,%ecx
54de8d:	8b c3                	mov    %ebx,%eax
54de8f:	e8 c4 cd ff ff       	call   0x54ac58
54de94:	8d 44 24 04          	lea    0x4(%esp),%eax
54de98:	e8 27 d2 ff ff       	call   0x54b0c4
54de9d:	89 83 cc 00 00 00    	mov    %eax,0xcc(%ebx)
54dea3:	8b c3                	mov    %ebx,%eax
54dea5:	e8 22 0e 00 00       	call   0x54eccc
54deaa:	8d b3 dc 00 00 00    	lea    0xdc(%ebx),%esi
54deb0:	8b d6                	mov    %esi,%edx
54deb2:	b9 04 00 00 00       	mov    $0x4,%ecx
54deb7:	8b c3                	mov    %ebx,%eax
54deb9:	e8 62 d2 ff ff       	call   0x54b120
54debe:	6a 04                	push   $0x4
54dec0:	68 77 bd 69 00       	push   $0x69bd77
54dec5:	56                   	push   %esi
54dec6:	e8 71 84 fd ff       	call   0x52633c
54decb:	83 c4 0c             	add    $0xc,%esp
54dece:	85 c0                	test   %eax,%eax
54ded0:	74 0c                	je     0x54dede
54ded2:	ba 40 bc 69 00       	mov    $0x69bc40,%edx
54ded7:	8b c3                	mov    %ebx,%eax
54ded9:	e8 e2 cf ff ff       	call   0x54aec0
54dede:	8b 8b cc 00 00 00    	mov    0xcc(%ebx),%ecx