487ed8:	56                   	push   %esi
487ed9:	57                   	push   %edi
487eda:	8b f9                	mov    %ecx,%edi
487edc:	8b da                	mov    %edx,%ebx
487ede:	50                   	push   %eax
487edf:	ff 37                	push   (%edi)
487ee1:	ff 15 d8 c0 4a 00    	call   *0x4ac0d8
487ee7:	85 c0                	test   %eax,%eax
487ee9:	74 03                	je     0x487eee
487eeb:	89 47 04             	mov    %eax,0x4(%edi)
487eee:	8b 75 10             	mov    0x10(%ebp),%esi
487ef1:	8d 46 ff             	lea    -0x1(%esi),%eax
487ef4:	83 f8 0f             	cmp    $0xf,%eax
487ef7:	77 5c                	ja     0x487f55
487ef9:	8b 04 b5 5c 48 4a 00 	mov    0x4a485c(,%esi,4),%eax
487f00:	85 c0                	test   %eax,%eax
487f02:	75 25                	jne    0x487f29
487f04:	6a 10                	push   $0x10
487f06:	ff 15 08 c0 4a 00    	call   *0x4ac008
487f0c:	85 c0                	test   %eax,%eax
487f0e:	74 10                	je     0x487f20
487f10:	68 0a 20 26 00       	push   $0x26200a
487f15:	56                   	push   %esi
487f16:	56                   	push   %esi
487f17:	8b c8                	mov    %eax,%ecx
487f19:	e8 de 16 fb ff       	call   0x4395fc
487f1e:	eb 02                	jmp    0x487f22
487f20:	33 c0                	xor    %eax,%eax
487f22:	89 04 b5 5c 48 4a 00 	mov    %eax,0x4a485c(,%esi,4)
487f29:	83 7d fc 03          	cmpl   $0x3,-0x4(%ebp)
487f2d:	8b d3                	mov    %ebx,%edx
487f2f:	56                   	push   %esi
487f30:	50                   	push   %eax
487f31:	75 07                	jne    0x487f3a
487f33:	e8 51 fe ff ff       	call   0x487d89
487f38:	eb 05                	jmp    0x487f3f
487f3a:	e8 5e fc ff ff       	call   0x487b9d
487f3f:	ff 75 0c             	push   0xc(%ebp)
487f42:	8b cf                	mov    %edi,%ecx
487f44:	ff 75 08             	push   0x8(%ebp)
487f47:	ff 34 b5 5c 48 4a 00 	push   0x4a485c(,%esi,4)
487f4e:	e8 d4 a2 ff ff       	call   0x482227
487f53:	eb 42                	jmp    0x487f97
487f55:	68 0a 20 26 00       	push   $0x26200a
487f5a:	56                   	push   %esi
487f5b:	56                   	push   %esi
487f5c:	8d 4d ec             	lea    -0x14(%ebp),%ecx
487f5f:	e8 98 16 fb ff       	call   0x4395fc
487f64:	83 7d fc 03          	cmpl   $0x3,-0x4(%ebp)
487f68:	8d 45 ec             	lea    -0x14(%ebp),%eax
487f6b:	56                   	push   %esi
487f6c:	8b d3                	mov    %ebx,%edx
487f6e:	50                   	push   %eax
487f6f:	75 07                	jne    0x487f78
487f71:	e8 13 fe ff ff       	call   0x487d89
487f76:	eb 05                	jmp    0x487f7d
487f78:	e8 20 fc ff ff       	call   0x487b9d
487f7d:	ff 75 0c             	push   0xc(%ebp)
487f80:	8d 45 ec             	lea    -0x14(%ebp),%eax
487f83:	8b cf                	mov    %edi,%ecx
487f85:	ff 75 08             	push   0x8(%ebp)
487f88:	50                   	push   %eax
487f89:	e8 99 a2 ff ff       	call   0x482227
487f8e:	ff 75 f0             	push   -0x10(%ebp)
487f91:	ff 15 10 c0 4a 00    	call   *0x4ac010
487f97:	5f                   	pop    %edi
487f98:	5e                   	pop    %esi
487f99:	5b                   	pop    %ebx
487f9a:	c9                   	leave
487f9b:	c2 10 00             	ret    $0x10
487f9e:	8b ff                	mov    %edi,%edi
487fa0:	55                   	push   %ebp
487fa1:	8b ec                	mov    %esp,%ebp
487fa3:	83 ec 4c             	sub    $0x4c,%esp
487fa6:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
487fab:	33 c5                	xor    %ebp,%eax
487fad:	89 45 fc             	mov    %eax,-0x4(%ebp)
487fb0:	8b 45 08             	mov    0x8(%ebp),%eax
487fb3:	53                   	push   %ebx
487fb4:	8b d9                	mov    %ecx,%ebx
487fb6:	40                   	inc    %eax
487fb7:	56                   	push   %esi
487fb8:	89 45 e8             	mov    %eax,-0x18(%ebp)
487fbb:	8b 45 0c             	mov    0xc(%ebp),%eax
487fbe:	57                   	push   %edi
487fbf:	33 ff                	xor    %edi,%edi
487fc1:	89 5d c8             	mov    %ebx,-0x38(%ebp)
487fc4:	40                   	inc    %eax
487fc5:	89 3b                	mov    %edi,(%ebx)
487fc7:	57                   	push   %edi
487fc8:	89 45 e0             	mov    %eax,-0x20(%ebp)
487fcb:	89 7b 04             	mov    %edi,0x4(%ebx)
487fce:	89 7b 08             	mov    %edi,0x8(%ebx)
487fd1:	89 7b 0c             	mov    %edi,0xc(%ebx)
487fd4:	ff 15 74 71 4a 00    	call   *0x4a7174
487fda:	8b f0                	mov    %eax,%esi
487fdc:	89 75 d8             	mov    %esi,-0x28(%ebp)
487fdf:	85 f6                	test   %esi,%esi
487fe1:	0f 84 35 02 00 00    	je     0x48821c
487fe7:	ff 75 e0             	push   -0x20(%ebp)
487fea:	ff 75 e8             	push   -0x18(%ebp)
487fed:	56                   	push   %esi
487fee:	ff 15 78 71 4a 00    	call   *0x4a7178
487ff4:	89 45 b8             	mov    %eax,-0x48(%ebp)
487ff7:	85 c0                	test   %eax,%eax
487ff9:	0f 84 1d 02 00 00    	je     0x48821c
487fff:	50                   	push   %eax
488000:	56                   	push   %esi
488001:	ff 15 68 71 4a 00    	call   *0x4a7168
488007:	68 ff ff ff 02       	push   $0x2ffffff
48800c:	89 45 bc             	mov    %eax,-0x44(%ebp)
48800f:	ff 15 40 71 4a 00    	call   *0x4a7140
488015:	8b f0                	mov    %eax,%esi
488017:	89 7d ec             	mov    %edi,-0x14(%ebp)
48801a:	8b 45 e8             	mov    -0x18(%ebp),%eax
48801d:	89 45 f4             	mov    %eax,-0xc(%ebp)
488020:	8b 45 e0             	mov    -0x20(%ebp),%eax
488023:	89 45 f8             	mov    %eax,-0x8(%ebp)
488026:	8d 45 ec             	lea    -0x14(%ebp),%eax
488029:	56                   	push   %esi
48802a:	50                   	push   %eax
48802b:	ff 75 d8             	push   -0x28(%ebp)
48802e:	89 7d f0             	mov    %edi,-0x10(%ebp)
488031:	ff 15 e4 7c 4a 00    	call   *0x4a7ce4
488037:	56                   	push   %esi
488038:	ff 15 60 71 4a 00    	call   *0x4a7160
48803e:	6a 08                	push   $0x8
488040:	ff 15 34 71 4a 00    	call   *0x4a7134
488046:	8b 75 d8             	mov    -0x28(%ebp),%esi
488049:	50                   	push   %eax
48804a:	56                   	push   %esi
48804b:	ff 15 68 71 4a 00    	call   *0x4a7168
488051:	6a 04                	push   $0x4
488053:	ff 15 34 71 4a 00    	call   *0x4a7134
488059:	50                   	push   %eax
48805a:	56                   	push   %esi
48805b:	ff 15 68 71 4a 00    	call   *0x4a7168
488061:	8d 45 e4             	lea    -0x1c(%ebp),%eax
488064:	89 7d e4             	mov    %edi,-0x1c(%ebp)
488067:	50                   	push   %eax
488068:	56                   	push   %esi
488069:	ff 15 28 c0 4a 00    	call   *0x4ac028
48806f:	89 45 c4             	mov    %eax,-0x3c(%ebp)
488072:	8b 45 e4             	mov    -0x1c(%ebp),%eax
488075:	6a 03                	push   $0x3
488077:	50                   	push   %eax
488078:	89 45 c0             	mov    %eax,-0x40(%ebp)
48807b:	ff 15 50 c0 4a 00    	call   *0x4ac050
488081:	85 c0                	test   %eax,%eax
488083:	74 03                	je     0x488088
488085:	89 45 c4             	mov    %eax,-0x3c(%ebp)
488088:	8d 45 e4             	lea    -0x1c(%ebp),%eax
48808b:	c7 45 e4 00 00 00 ff 	movl   $0xff000000,-0x1c(%ebp)
488092:	50                   	push   %eax
488093:	8d 4d f0             	lea    -0x10(%ebp),%ecx
488096:	e8 8b 29 fb ff       	call   0x43aa26
48809b:	51                   	push   %ecx
48809c:	ff 75 e8             	push   -0x18(%ebp)
48809f:	8d 55 f0             	lea    -0x10(%ebp),%edx
4880a2:	57                   	push   %edi
4880a3:	57                   	push   %edi
4880a4:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4880a7:	e8 1c fe ff ff       	call   0x487ec8
4880ac:	8b 45 e8             	mov    -0x18(%ebp),%eax
4880af:	8b f7                	mov    %edi,%esi
4880b1:	48                   	dec    %eax
4880b2:	89 7d cc             	mov    %edi,-0x34(%ebp)
4880b5:	89 7d d0             	mov    %edi,-0x30(%ebp)
4880b8:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4880bb:	85 c0                	test   %eax,%eax
4880bd:	7e 1e                	jle    0x4880dd
4880bf:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4880c2:	57                   	push   %edi
4880c3:	56                   	push   %esi
4880c4:	53                   	push   %ebx
4880c5:	ff 15 b4 70 4a 00    	call   *0x4a70b4
4880cb:	85 c0                	test   %eax,%eax
4880cd:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4880d0:	74 05                	je     0x4880d7
4880d2:	46                   	inc    %esi
4880d3:	3b f0                	cmp    %eax,%esi
4880d5:	7c eb                	jl     0x4880c2
4880d7:	8b 5d c8             	mov    -0x38(%ebp),%ebx
4880da:	89 75 d0             	mov    %esi,-0x30(%ebp)
4880dd:	6b ce 0a             	imul   $0xa,%esi,%ecx
4880e0:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4880e3:	39 7d 14             	cmp    %edi,0x14(%ebp)
4880e6:	75 0e                	jne    0x4880f6
4880e8:	8b 45 e0             	mov    -0x20(%ebp),%eax
4880eb:	89 33                	mov    %esi,(%ebx)
4880ed:	48                   	dec    %eax
4880ee:	89 7b 04             	mov    %edi,0x4(%ebx)
4880f1:	e9 ec 00 00 00       	jmp    0x4881e2
4880f6:	8b d7                	mov    %edi,%edx
4880f8:	89 55 dc             	mov    %edx,-0x24(%ebp)
4880fb:	39 55 e0             	cmp    %edx,-0x20(%ebp)
4880fe:	7e 78                	jle    0x488178
488100:	eb 03                	jmp    0x488105
488102:	8b 45 d4             	mov    -0x2c(%ebp),%eax
488105:	8b cf                	mov    %edi,%ecx
488107:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
48810a:	85 c0                	test   %eax,%eax
48810c:	7e 2c                	jle    0x48813a
48810e:	8b 5d d8             	mov    -0x28(%ebp),%ebx
488111:	8b f7                	mov    %edi,%esi
488113:	8b 7d dc             	mov    -0x24(%ebp),%edi
488116:	57                   	push   %edi
488117:	56                   	push   %esi
488118:	53                   	push   %ebx
488119:	ff 15 b4 70 4a 00    	call   *0x4a70b4
48811f:	85 c0                	test   %eax,%eax
488121:	74 06                	je     0x488129
488123:	46                   	inc    %esi
488124:	3b 75 d4             	cmp    -0x2c(%ebp),%esi
488127:	7c ed                	jl     0x488116
488129:	8b 5d c8             	mov    -0x38(%ebp),%ebx
48812c:	33 ff                	xor    %edi,%edi
48812e:	8b 55 dc             	mov    -0x24(%ebp),%edx
488131:	89 75 e4             	mov    %esi,-0x1c(%ebp)
488134:	8b 75 d0             	mov    -0x30(%ebp),%esi
488137:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
48813a:	8b 45 10             	mov    0x10(%ebp),%eax
48813d:	0f af c2             	imul   %edx,%eax
488140:	6b c0 0a             	imul   $0xa,%eax,%eax
488143:	99                   	cltd
488144:	f7 7d 14             	idivl  0x14(%ebp)
488147:	6b d1 0a             	imul   $0xa,%ecx,%edx
48814a:	2b d0                	sub    %eax,%edx
48814c:	39 55 e8             	cmp    %edx,-0x18(%ebp)
48814f:	7e 12                	jle    0x488163
488151:	8b 45 dc             	mov    -0x24(%ebp),%eax
488154:	8b f1                	mov    %ecx,%esi
488156:	8b ca                	mov    %edx,%ecx
488158:	89 75 d0             	mov    %esi,-0x30(%ebp)
48815b:	89 45 cc             	mov    %eax,-0x34(%ebp)
48815e:	89 4d e8             	mov    %ecx,-0x18(%ebp)
488161:	eb 0a                	jmp    0x48816d
488163:	8b 4d e8             	mov    -0x18(%ebp),%ecx
488166:	3b ca                	cmp    %edx,%ecx
488168:	7c 0e                	jl     0x488178
48816a:	8b 45 dc             	mov    -0x24(%ebp),%eax
48816d:	40                   	inc    %eax
48816e:	8b d0                	mov    %eax,%edx
488170:	89 45 dc             	mov    %eax,-0x24(%ebp)
488173:	3b 45 e0             	cmp    -0x20(%ebp),%eax
488176:	7c 8a                	jl     0x488102
488178:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
48817c:	8b 45 cc             	mov    -0x34(%ebp),%eax
48817f:	89 33                	mov    %esi,(%ebx)
488181:	89 43 04             	mov    %eax,0x4(%ebx)
488184:	7e 55                	jle    0x4881db
488186:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
488189:	85 db                	test   %ebx,%ebx
48818b:	7e 1b                	jle    0x4881a8
48818d:	8b 75 d8             	mov    -0x28(%ebp),%esi
488190:	57                   	push   %edi
488191:	53                   	push   %ebx
488192:	56                   	push   %esi
488193:	ff 15 b4 70 4a 00    	call   *0x4a70b4
488199:	85 c0                	test   %eax,%eax
48819b:	74 05                	je     0x4881a2
48819d:	4b                   	dec    %ebx
48819e:	85 db                	test   %ebx,%ebx
4881a0:	7f ee                	jg     0x488190
4881a2:	8b 75 d0             	mov    -0x30(%ebp),%esi
4881a5:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4881a8:	8b 45 10             	mov    0x10(%ebp),%eax
4881ab:	0f af c7             	imul   %edi,%eax
4881ae:	6b c0 0a             	imul   $0xa,%eax,%eax
4881b1:	99                   	cltd
4881b2:	f7 7d 14             	idivl  0x14(%ebp)
4881b5:	6b d3 0a             	imul   $0xa,%ebx,%edx
4881b8:	2b d0                	sub    %eax,%edx
4881ba:	3b ca                	cmp    %edx,%ecx
4881bc:	7d 0f                	jge    0x4881cd
4881be:	8b f3                	mov    %ebx,%esi
4881c0:	89 7d cc             	mov    %edi,-0x34(%ebp)
4881c3:	8b ca                	mov    %edx,%ecx
4881c5:	89 75 d0             	mov    %esi,-0x30(%ebp)
4881c8:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4881cb:	eb 02                	jmp    0x4881cf
4881cd:	7f 06                	jg     0x4881d5
4881cf:	47                   	inc    %edi
4881d0:	3b 7d e0             	cmp    -0x20(%ebp),%edi
4881d3:	7c b1                	jl     0x488186
4881d5:	8b 5d c8             	mov    -0x38(%ebp),%ebx
4881d8:	8b 45 cc             	mov    -0x34(%ebp),%eax
4881db:	2b 43 04             	sub    0x4(%ebx),%eax
4881de:	8b fe                	mov    %esi,%edi
4881e0:	2b 3b                	sub    (%ebx),%edi
4881e2:	ff 75 bc             	push   -0x44(%ebp)
4881e5:	89 7b 08             	mov    %edi,0x8(%ebx)
4881e8:	89 43 0c             	mov    %eax,0xc(%ebx)
4881eb:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4881ee:	53                   	push   %ebx
4881ef:	ff 15 68 71 4a 00    	call   *0x4a7168
4881f5:	ff 75 b8             	push   -0x48(%ebp)
4881f8:	ff 15 60 71 4a 00    	call   *0x4a7160
4881fe:	53                   	push   %ebx
4881ff:	ff 15 80 71 4a 00    	call   *0x4a7180
488205:	ff 75 f4             	push   -0xc(%ebp)
488208:	ff 15 18 c0 4a 00    	call   *0x4ac018
48820e:	ff 75 c0             	push   -0x40(%ebp)
488211:	ff 15 2c c0 4a 00    	call   *0x4ac02c
488217:	33 c0                	xor    %eax,%eax
488219:	40                   	inc    %eax
48821a:	eb 02                	jmp    0x48821e
48821c:	33 c0                	xor    %eax,%eax
48821e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
488221:	5f                   	pop    %edi
488222:	5e                   	pop    %esi
488223:	33 cd                	xor    %ebp,%ecx
488225:	5b                   	pop    %ebx
488226:	e8 d5 7c 00 00       	call   0x48ff00
48822b:	c9                   	leave
48822c:	c2 10 00             	ret    $0x10
48822f:	8b ff                	mov    %edi,%edi
488231:	55                   	push   %ebp
488232:	8b ec                	mov    %esp,%ebp
488234:	83 ec 3c             	sub    $0x3c,%esp
488237:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
48823c:	33 c5                	xor    %ebp,%eax
48823e:	89 45 fc             	mov    %eax,-0x4(%ebp)
488241:	53                   	push   %ebx
488242:	56                   	push   %esi
488243:	57                   	push   %edi
488244:	6a 06                	push   $0x6
488246:	89 55 c8             	mov    %edx,-0x38(%ebp)
488249:	8d 45 cc             	lea    -0x34(%ebp),%eax
48824c:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
48824f:	5e                   	pop    %esi
488250:	83 60 04 00          	andl   $0x0,0x4(%eax)
488254:	83 20 00             	andl   $0x0,(%eax)
488257:	8d 40 08             	lea    0x8(%eax),%eax
48825a:	83 ee 01             	sub    $0x1,%esi
48825d:	75 f1                	jne    0x488250
48825f:	8b 7d 0c             	mov    0xc(%ebp),%edi
488262:	8b 5d 08             	mov    0x8(%ebp),%ebx
488265:	8b 4d 10             	mov    0x10(%ebp),%ecx
488268:	8b 37                	mov    (%edi),%esi
48826a:	8b 13                	mov    (%ebx),%edx
48826c:	3b f2                	cmp    %edx,%esi
48826e:	7e 1a                	jle    0x48828a
488270:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
488273:	89 55 d4             	mov    %edx,-0x2c(%ebp)
488276:	89 45 ec             	mov    %eax,-0x14(%ebp)
488279:	89 45 e4             	mov    %eax,-0x1c(%ebp)
48827c:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
48827f:	89 55 cc             	mov    %edx,-0x34(%ebp)
488282:	89 75 dc             	mov    %esi,-0x24(%ebp)