48cf94:	3b f3                	cmp    %ebx,%esi
48cf96:	72 da                	jb     0x48cf72
48cf98:	8b c6                	mov    %esi,%eax
48cf9a:	e9 a4 01 00 00       	jmp    0x48d143
48cf9f:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
48cfa3:	75 56                	jne    0x48cffb
48cfa5:	85 db                	test   %ebx,%ebx
48cfa7:	74 1c                	je     0x48cfc5
48cfa9:	8b c1                	mov    %ecx,%eax
48cfab:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
48cfae:	66 39 30             	cmp    %si,(%eax)
48cfb1:	74 0b                	je     0x48cfbe
48cfb3:	83 c0 02             	add    $0x2,%eax
48cfb6:	83 6d e4 01          	subl   $0x1,-0x1c(%ebp)
48cfba:	75 f2                	jne    0x48cfae
48cfbc:	eb 07                	jmp    0x48cfc5
48cfbe:	8b d8                	mov    %eax,%ebx
48cfc0:	2b d9                	sub    %ecx,%ebx
48cfc2:	d1 fb                	sar    $1,%ebx
48cfc4:	43                   	inc    %ebx
48cfc5:	8d 45 f0             	lea    -0x10(%ebp),%eax
48cfc8:	50                   	push   %eax
48cfc9:	56                   	push   %esi
48cfca:	53                   	push   %ebx
48cfcb:	52                   	push   %edx
48cfcc:	53                   	push   %ebx
48cfcd:	51                   	push   %ecx
48cfce:	56                   	push   %esi
48cfcf:	ff 75 ec             	push   -0x14(%ebp)
48cfd2:	e8 33 1d 00 00       	call   0x48ed0a
48cfd7:	83 c4 20             	add    $0x20,%esp
48cfda:	85 c0                	test   %eax,%eax
48cfdc:	0f 84 53 01 00 00    	je     0x48d135
48cfe2:	39 75 f0             	cmp    %esi,-0x10(%ebp)
48cfe5:	0f 85 4a 01 00 00    	jne    0x48d135
48cfeb:	8b 4d e0             	mov    -0x20(%ebp),%ecx
48cfee:	80 7c 01 ff 00       	cmpb   $0x0,-0x1(%ecx,%eax,1)
48cff3:	0f 85 4a 01 00 00    	jne    0x48d143
48cff9:	eb 26                	jmp    0x48d021
48cffb:	8d 45 f0             	lea    -0x10(%ebp),%eax
48cffe:	50                   	push   %eax
48cfff:	56                   	push   %esi
48d000:	53                   	push   %ebx
48d001:	52                   	push   %edx
48d002:	6a ff                	push   $0xffffffff
48d004:	51                   	push   %ecx
48d005:	56                   	push   %esi
48d006:	ff 75 ec             	push   -0x14(%ebp)
48d009:	e8 fc 1c 00 00       	call   0x48ed0a
48d00e:	83 c4 20             	add    $0x20,%esp
48d011:	89 45 ec             	mov    %eax,-0x14(%ebp)
48d014:	39 75 f0             	cmp    %esi,-0x10(%ebp)
48d017:	0f 85 18 01 00 00    	jne    0x48d135
48d01d:	85 c0                	test   %eax,%eax
48d01f:	74 06                	je     0x48d027
48d021:	48                   	dec    %eax
48d022:	e9 1c 01 00 00       	jmp    0x48d143
48d027:	ff 15 30 e1 49 00    	call   *0x49e130
48d02d:	83 f8 7a             	cmp    $0x7a,%eax
48d030:	0f 85 ff 00 00 00    	jne    0x48d135
48d036:	85 db                	test   %ebx,%ebx
48d038:	0f 84 9a 00 00 00    	je     0x48d0d8
48d03e:	8b 45 e8             	mov    -0x18(%ebp),%eax
48d041:	8b 57 0c             	mov    0xc(%edi),%edx
48d044:	8b 4a 04             	mov    0x4(%edx),%ecx
48d047:	83 f9 05             	cmp    $0x5,%ecx
48d04a:	7e 03                	jle    0x48d04f
48d04c:	6a 05                	push   $0x5
48d04e:	59                   	pop    %ecx
48d04f:	8d 5d f0             	lea    -0x10(%ebp),%ebx
48d052:	53                   	push   %ebx
48d053:	56                   	push   %esi
48d054:	51                   	push   %ecx
48d055:	8d 4d f4             	lea    -0xc(%ebp),%ecx
48d058:	51                   	push   %ecx
48d059:	6a 01                	push   $0x1
48d05b:	50                   	push   %eax
48d05c:	56                   	push   %esi
48d05d:	ff 72 08             	push   0x8(%edx)
48d060:	e8 a5 1c 00 00       	call   0x48ed0a
48d065:	8b 5d 10             	mov    0x10(%ebp),%ebx
48d068:	8b d0                	mov    %eax,%edx
48d06a:	83 c4 20             	add    $0x20,%esp
48d06d:	89 55 dc             	mov    %edx,-0x24(%ebp)
48d070:	85 d2                	test   %edx,%edx
48d072:	0f 84 bd 00 00 00    	je     0x48d135
48d078:	39 75 f0             	cmp    %esi,-0x10(%ebp)
48d07b:	0f 85 b4 00 00 00    	jne    0x48d135
48d081:	85 d2                	test   %edx,%edx
48d083:	0f 88 ac 00 00 00    	js     0x48d135
48d089:	83 fa 05             	cmp    $0x5,%edx
48d08c:	0f 87 a3 00 00 00    	ja     0x48d135
48d092:	8b 4d ec             	mov    -0x14(%ebp),%ecx
48d095:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
48d098:	3b c3                	cmp    %ebx,%eax
48d09a:	77 38                	ja     0x48d0d4
48d09c:	8b c6                	mov    %esi,%eax
48d09e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
48d0a1:	85 d2                	test   %edx,%edx
48d0a3:	7e 1e                	jle    0x48d0c3
48d0a5:	8b 55 e0             	mov    -0x20(%ebp),%edx
48d0a8:	8a 44 05 f4          	mov    -0xc(%ebp,%eax,1),%al
48d0ac:	88 04 0a             	mov    %al,(%edx,%ecx,1)
48d0af:	84 c0                	test   %al,%al
48d0b1:	74 21                	je     0x48d0d4
48d0b3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
48d0b6:	40                   	inc    %eax
48d0b7:	41                   	inc    %ecx
48d0b8:	89 45 e4             	mov    %eax,-0x1c(%ebp)
48d0bb:	89 4d ec             	mov    %ecx,-0x14(%ebp)
48d0be:	3b 45 dc             	cmp    -0x24(%ebp),%eax
48d0c1:	7c e5                	jl     0x48d0a8
48d0c3:	8b 45 e8             	mov    -0x18(%ebp),%eax
48d0c6:	83 c0 02             	add    $0x2,%eax
48d0c9:	89 45 e8             	mov    %eax,-0x18(%ebp)
48d0cc:	3b cb                	cmp    %ebx,%ecx
48d0ce:	0f 82 6d ff ff ff    	jb     0x48d041
48d0d4:	8b c1                	mov    %ecx,%eax
48d0d6:	eb 6b                	jmp    0x48d143
48d0d8:	8b 4d ec             	mov    -0x14(%ebp),%ecx
48d0db:	eb f7                	jmp    0x48d0d4
48d0dd:	39 75 dc             	cmp    %esi,-0x24(%ebp)
48d0e0:	75 30                	jne    0x48d112
48d0e2:	0f b7 01             	movzwl (%ecx),%eax
48d0e5:	66 85 c0             	test   %ax,%ax
48d0e8:	0f 84 aa fe ff ff    	je     0x48cf98
48d0ee:	8b d0                	mov    %eax,%edx
48d0f0:	b8 ff 00 00 00       	mov    $0xff,%eax
48d0f5:	66 3b d0             	cmp    %ax,%dx
48d0f8:	77 3b                	ja     0x48d135
48d0fa:	83 c1 02             	add    $0x2,%ecx
48d0fd:	46                   	inc    %esi
48d0fe:	0f b7 01             	movzwl (%ecx),%eax
48d101:	8b d0                	mov    %eax,%edx
48d103:	66 85 c0             	test   %ax,%ax
48d106:	b8 ff 00 00 00       	mov    $0xff,%eax
48d10b:	75 e8                	jne    0x48d0f5
48d10d:	e9 86 fe ff ff       	jmp    0x48cf98
48d112:	8d 45 f0             	lea    -0x10(%ebp),%eax
48d115:	50                   	push   %eax
48d116:	56                   	push   %esi
48d117:	56                   	push   %esi
48d118:	56                   	push   %esi
48d119:	6a ff                	push   $0xffffffff
48d11b:	51                   	push   %ecx
48d11c:	56                   	push   %esi
48d11d:	ff 75 ec             	push   -0x14(%ebp)
48d120:	e8 e5 1b 00 00       	call   0x48ed0a
48d125:	83 c4 20             	add    $0x20,%esp
48d128:	85 c0                	test   %eax,%eax
48d12a:	74 09                	je     0x48d135
48d12c:	39 75 f0             	cmp    %esi,-0x10(%ebp)
48d12f:	0f 84 ec fe ff ff    	je     0x48d021
48d135:	c7 47 18 2a 00 00 00 	movl   $0x2a,0x18(%edi)
48d13c:	c6 47 1c 01          	movb   $0x1,0x1c(%edi)
48d140:	83 c8 ff             	or     $0xffffffff,%eax
48d143:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48d146:	5f                   	pop    %edi
48d147:	5e                   	pop    %esi
48d148:	33 cd                	xor    %ebp,%ecx
48d14a:	5b                   	pop    %ebx
48d14b:	e8 7a c8 fd ff       	call   0x4699ca
48d150:	c9                   	leave
48d151:	c3                   	ret
48d152:	8b ff                	mov    %edi,%edi
48d154:	55                   	push   %ebp
48d155:	8b ec                	mov    %esp,%ebp
48d157:	83 ec 28             	sub    $0x28,%esp
48d15a:	8d 4d d8             	lea    -0x28(%ebp),%ecx
48d15d:	56                   	push   %esi
48d15e:	ff 75 1c             	push   0x1c(%ebp)
48d161:	e8 7a a1 fe ff       	call   0x4772e0
48d166:	8d 45 d8             	lea    -0x28(%ebp),%eax
48d169:	50                   	push   %eax
48d16a:	ff 75 18             	push   0x18(%ebp)
48d16d:	ff 75 14             	push   0x14(%ebp)
48d170:	ff 75 10             	push   0x10(%ebp)
48d173:	ff 75 0c             	push   0xc(%ebp)
48d176:	ff 75 08             	push   0x8(%ebp)
48d179:	e8 58 fc ff ff       	call   0x48cdd6
48d17e:	83 c4 18             	add    $0x18,%esp
48d181:	8d 4d d8             	lea    -0x28(%ebp),%ecx
48d184:	8b f0                	mov    %eax,%esi
48d186:	e8 b5 a1 fe ff       	call   0x477340
48d18b:	8b c6                	mov    %esi,%eax
48d18d:	5e                   	pop    %esi
48d18e:	c9                   	leave
48d18f:	c3                   	ret
48d190:	8b ff                	mov    %edi,%edi
48d192:	55                   	push   %ebp
48d193:	8b ec                	mov    %esp,%ebp
48d195:	83 ec 18             	sub    $0x18,%esp
48d198:	a1 14 40 4c 00       	mov    0x4c4014,%eax
48d19d:	33 c5                	xor    %ebp,%eax
48d19f:	89 45 fc             	mov    %eax,-0x4(%ebp)
48d1a2:	53                   	push   %ebx
48d1a3:	56                   	push   %esi
48d1a4:	57                   	push   %edi
48d1a5:	ff 75 08             	push   0x8(%ebp)
48d1a8:	8d 4d e8             	lea    -0x18(%ebp),%ecx
48d1ab:	e8 61 c9 fe ff       	call   0x479b11
48d1b0:	8b 45 ec             	mov    -0x14(%ebp),%eax
48d1b3:	33 ff                	xor    %edi,%edi
48d1b5:	57                   	push   %edi
48d1b6:	57                   	push   %edi
48d1b7:	ff 75 10             	push   0x10(%ebp)
48d1ba:	8b 40 08             	mov    0x8(%eax),%eax
48d1bd:	ff 75 0c             	push   0xc(%ebp)
48d1c0:	89 45 f8             	mov    %eax,-0x8(%ebp)
48d1c3:	e8 68 b7 ff ff       	call   0x488930
48d1c8:	8b d8                	mov    %eax,%ebx
48d1ca:	85 db                	test   %ebx,%ebx
48d1cc:	74 7d                	je     0x48d24b
48d1ce:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
48d1d1:	8d 48 08             	lea    0x8(%eax),%ecx
48d1d4:	3b c1                	cmp    %ecx,%eax
48d1d6:	1b c0                	sbb    %eax,%eax
48d1d8:	23 c1                	and    %ecx,%eax
48d1da:	74 66                	je     0x48d242
48d1dc:	3d 00 04 00 00       	cmp    $0x400,%eax
48d1e1:	77 13                	ja     0x48d1f6
48d1e3:	e8 e8 d1 fd ff       	call   0x46a3d0
48d1e8:	8b f4                	mov    %esp,%esi
48d1ea:	85 f6                	test   %esi,%esi
48d1ec:	74 56                	je     0x48d244
48d1ee:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
48d1f4:	eb 13                	jmp    0x48d209
48d1f6:	50                   	push   %eax
48d1f7:	e8 36 86 ff ff       	call   0x485832
48d1fc:	8b f0                	mov    %eax,%esi
48d1fe:	59                   	pop    %ecx
48d1ff:	85 f6                	test   %esi,%esi
48d201:	74 41                	je     0x48d244
48d203:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
48d209:	83 c6 08             	add    $0x8,%esi
48d20c:	85 f6                	test   %esi,%esi
48d20e:	74 34                	je     0x48d244
48d210:	53                   	push   %ebx
48d211:	56                   	push   %esi
48d212:	ff 75 10             	push   0x10(%ebp)
48d215:	ff 75 0c             	push   0xc(%ebp)
48d218:	e8 13 b7 ff ff       	call   0x488930
48d21d:	85 c0                	test   %eax,%eax
48d21f:	74 23                	je     0x48d244
48d221:	8b 45 18             	mov    0x18(%ebp),%eax
48d224:	57                   	push   %edi
48d225:	57                   	push   %edi
48d226:	50                   	push   %eax
48d227:	f7 d8                	neg    %eax
48d229:	1b c0                	sbb    %eax,%eax
48d22b:	23 45 14             	and    0x14(%ebp),%eax
48d22e:	50                   	push   %eax
48d22f:	6a ff                	push   $0xffffffff
48d231:	56                   	push   %esi
48d232:	57                   	push   %edi
48d233:	ff 75 f8             	push   -0x8(%ebp)
48d236:	e8 cf 1a 00 00       	call   0x48ed0a
48d23b:	83 c4 20             	add    $0x20,%esp
48d23e:	8b f8                	mov    %eax,%edi
48d240:	eb 02                	jmp    0x48d244
48d242:	8b f7                	mov    %edi,%esi
48d244:	56                   	push   %esi
48d245:	e8 b0 c4 fd ff       	call   0x4696fa
48d24a:	59                   	pop    %ecx
48d24b:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
48d24f:	74 0a                	je     0x48d25b
48d251:	8b 45 e8             	mov    -0x18(%ebp),%eax
48d254:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
48d25b:	8b c7                	mov    %edi,%eax
48d25d:	8d 65 dc             	lea    -0x24(%ebp),%esp
48d260:	5f                   	pop    %edi
48d261:	5e                   	pop    %esi
48d262:	5b                   	pop    %ebx
48d263:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48d266:	33 cd                	xor    %ebp,%ecx
48d268:	e8 5d c7 fd ff       	call   0x4699ca
48d26d:	c9                   	leave
48d26e:	c3                   	ret
48d26f:	8b ff                	mov    %edi,%edi
48d271:	55                   	push   %ebp
48d272:	8b ec                	mov    %esp,%ebp
48d274:	81 ec 90 00 00 00    	sub    $0x90,%esp
48d27a:	a1 14 40 4c 00       	mov    0x4c4014,%eax
48d27f:	33 c5                	xor    %ebp,%eax
48d281:	89 45 fc             	mov    %eax,-0x4(%ebp)
48d284:	8b 45 0c             	mov    0xc(%ebp),%eax
48d287:	8b 4d 08             	mov    0x8(%ebp),%ecx
48d28a:	53                   	push   %ebx
48d28b:	8b 5d 18             	mov    0x18(%ebp),%ebx
48d28e:	56                   	push   %esi
48d28f:	8b 75 10             	mov    0x10(%ebp),%esi
48d292:	57                   	push   %edi
48d293:	33 ff                	xor    %edi,%edi
48d295:	89 8d 70 ff ff ff    	mov    %ecx,-0x90(%ebp)
48d29b:	89 b5 78 ff ff ff    	mov    %esi,-0x88(%ebp)
48d2a1:	89 3b                	mov    %edi,(%ebx)
48d2a3:	83 f8 01             	cmp    $0x1,%eax
48d2a6:	0f 85 e2 00 00 00    	jne    0x48d38e
48d2ac:	68 80 00 00 00       	push   $0x80
48d2b1:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
48d2b7:	50                   	push   %eax
48d2b8:	ff 75 14             	push   0x14(%ebp)
48d2bb:	56                   	push   %esi
48d2bc:	51                   	push   %ecx
48d2bd:	e8 ce fe ff ff       	call   0x48d190
48d2c2:	83 c4 14             	add    $0x14,%esp
48d2c5:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
48d2cb:	85 c0                	test   %eax,%eax
48d2cd:	74 46                	je     0x48d315
48d2cf:	6a 01                	push   $0x1
48d2d1:	50                   	push   %eax
48d2d2:	e8 66 b0 ff ff       	call   0x48833d
48d2d7:	57                   	push   %edi
48d2d8:	89 03                	mov    %eax,(%ebx)
48d2da:	e8 19 85 ff ff       	call   0x4857f8
48d2df:	83 c4 0c             	add    $0xc,%esp
48d2e2:	39 3b                	cmp    %edi,(%ebx)
48d2e4:	0f 84 18 01 00 00    	je     0x48d402
48d2ea:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
48d2f0:	8d 41 ff             	lea    -0x1(%ecx),%eax
48d2f3:	50                   	push   %eax
48d2f4:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
48d2fa:	50                   	push   %eax
48d2fb:	51                   	push   %ecx
48d2fc:	ff 33                	push   (%ebx)
48d2fe:	e8 00 72 00 00       	call   0x494503
48d303:	83 c4 10             	add    $0x10,%esp
48d306:	85 c0                	test   %eax,%eax
48d308:	0f 85 06 01 00 00    	jne    0x48d414
48d30e:	33 c0                	xor    %eax,%eax
48d310:	e9 f0 00 00 00       	jmp    0x48d405
48d315:	ff 15 30 e1 49 00    	call   *0x49e130
48d31b:	83 f8 7a             	cmp    $0x7a,%eax
48d31e:	0f 85 de 00 00 00    	jne    0x48d402
48d324:	57                   	push   %edi
48d325:	57                   	push   %edi
48d326:	ff 75 14             	push   0x14(%ebp)
48d329:	56                   	push   %esi
48d32a:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
48d330:	e8 5b fe ff ff       	call   0x48d190
48d335:	83 c4 14             	add    $0x14,%esp
48d338:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
48d33e:	85 c0                	test   %eax,%eax
48d340:	0f 84 bc 00 00 00    	je     0x48d402
48d346:	6a 01                	push   $0x1
48d348:	50                   	push   %eax
48d349:	e8 ef af ff ff       	call   0x48833d
48d34e:	8b f0                	mov    %eax,%esi
48d350:	59                   	pop    %ecx
48d351:	59                   	pop    %ecx