47d068:	8d 04 8a             	lea    (%edx,%ecx,4),%eax
47d06b:	50                   	push   %eax
47d06c:	e8 5f a5 00 00       	call   0x4875d0
47d071:	83 c4 10             	add    $0x10,%esp
47d074:	e9 4c ff ff ff       	jmp    0x47cfc5
47d079:	8b ff                	mov    %edi,%edi
47d07b:	55                   	push   %ebp
47d07c:	8b ec                	mov    %esp,%ebp
47d07e:	81 ec 64 02 00 00    	sub    $0x264,%esp
47d084:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47d089:	33 c5                	xor    %ebp,%eax
47d08b:	89 45 fc             	mov    %eax,-0x4(%ebp)
47d08e:	8b 55 0c             	mov    0xc(%ebp),%edx
47d091:	8b 4d 10             	mov    0x10(%ebp),%ecx
47d094:	53                   	push   %ebx
47d095:	8b 5d 08             	mov    0x8(%ebp),%ebx
47d098:	89 8d a4 fd ff ff    	mov    %ecx,-0x25c(%ebp)
47d09e:	56                   	push   %esi
47d09f:	57                   	push   %edi
47d0a0:	3b d3                	cmp    %ebx,%edx
47d0a2:	74 20                	je     0x47d0c4
47d0a4:	0f b7 02             	movzwl (%edx),%eax
47d0a7:	8d 8d ab fd ff ff    	lea    -0x255(%ebp),%ecx
47d0ad:	50                   	push   %eax
47d0ae:	e8 f3 03 00 00       	call   0x47d4a6
47d0b3:	84 c0                	test   %al,%al
47d0b5:	75 07                	jne    0x47d0be
47d0b7:	83 ea 02             	sub    $0x2,%edx
47d0ba:	3b d3                	cmp    %ebx,%edx
47d0bc:	75 e6                	jne    0x47d0a4
47d0be:	8b 8d a4 fd ff ff    	mov    -0x25c(%ebp),%ecx
47d0c4:	0f b7 32             	movzwl (%edx),%esi
47d0c7:	83 fe 3a             	cmp    $0x3a,%esi
47d0ca:	75 17                	jne    0x47d0e3
47d0cc:	8d 43 02             	lea    0x2(%ebx),%eax
47d0cf:	3b d0                	cmp    %eax,%edx
47d0d1:	74 10                	je     0x47d0e3
47d0d3:	51                   	push   %ecx
47d0d4:	33 ff                	xor    %edi,%edi
47d0d6:	57                   	push   %edi
47d0d7:	57                   	push   %edi
47d0d8:	53                   	push   %ebx
47d0d9:	e8 60 fd ff ff       	call   0x47ce3e
47d0de:	83 c4 10             	add    $0x10,%esp
47d0e1:	eb 72                	jmp    0x47d155
47d0e3:	56                   	push   %esi
47d0e4:	8d 8d ab fd ff ff    	lea    -0x255(%ebp),%ecx
47d0ea:	e8 b7 03 00 00       	call   0x47d4a6
47d0ef:	2b d3                	sub    %ebx,%edx
47d0f1:	0f b6 c0             	movzbl %al,%eax
47d0f4:	d1 fa                	sar    $1,%edx
47d0f6:	42                   	inc    %edx
47d0f7:	f7 d8                	neg    %eax
47d0f9:	68 50 02 00 00       	push   $0x250
47d0fe:	1b c0                	sbb    %eax,%eax
47d100:	33 ff                	xor    %edi,%edi
47d102:	23 c2                	and    %edx,%eax
47d104:	89 85 a0 fd ff ff    	mov    %eax,-0x260(%ebp)
47d10a:	8d 85 ac fd ff ff    	lea    -0x254(%ebp),%eax
47d110:	57                   	push   %edi
47d111:	50                   	push   %eax
47d112:	e8 49 6d fc ff       	call   0x443e60
47d117:	83 c4 0c             	add    $0xc,%esp
47d11a:	8d 85 ac fd ff ff    	lea    -0x254(%ebp),%eax
47d120:	57                   	push   %edi
47d121:	57                   	push   %edi
47d122:	57                   	push   %edi
47d123:	50                   	push   %eax
47d124:	57                   	push   %edi
47d125:	53                   	push   %ebx
47d126:	ff 15 3c 40 49 00    	call   *0x49403c
47d12c:	8b f0                	mov    %eax,%esi
47d12e:	8b 85 a4 fd ff ff    	mov    -0x25c(%ebp),%eax
47d134:	83 fe ff             	cmp    $0xffffffff,%esi
47d137:	75 2d                	jne    0x47d166
47d139:	50                   	push   %eax
47d13a:	57                   	push   %edi
47d13b:	57                   	push   %edi
47d13c:	53                   	push   %ebx
47d13d:	e8 fc fc ff ff       	call   0x47ce3e
47d142:	83 c4 10             	add    $0x10,%esp
47d145:	8b f8                	mov    %eax,%edi
47d147:	83 fe ff             	cmp    $0xffffffff,%esi
47d14a:	74 07                	je     0x47d153
47d14c:	56                   	push   %esi
47d14d:	ff 15 44 40 49 00    	call   *0x494044
47d153:	8b c7                	mov    %edi,%eax
47d155:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47d158:	5f                   	pop    %edi
47d159:	5e                   	pop    %esi
47d15a:	33 cd                	xor    %ebp,%ecx
47d15c:	5b                   	pop    %ebx
47d15d:	e8 a0 28 fc ff       	call   0x43fa02
47d162:	8b e5                	mov    %ebp,%esp
47d164:	5d                   	pop    %ebp
47d165:	c3                   	ret
47d166:	8b 48 04             	mov    0x4(%eax),%ecx
47d169:	2b 08                	sub    (%eax),%ecx
47d16b:	c1 f9 02             	sar    $0x2,%ecx
47d16e:	6a 2e                	push   $0x2e
47d170:	89 8d 9c fd ff ff    	mov    %ecx,-0x264(%ebp)
47d176:	59                   	pop    %ecx
47d177:	66 39 8d d8 fd ff ff 	cmp    %cx,-0x228(%ebp)
47d17e:	75 1b                	jne    0x47d19b
47d180:	66 39 bd da fd ff ff 	cmp    %di,-0x226(%ebp)
47d187:	74 2d                	je     0x47d1b6
47d189:	66 39 8d da fd ff ff 	cmp    %cx,-0x226(%ebp)
47d190:	75 09                	jne    0x47d19b
47d192:	66 39 bd dc fd ff ff 	cmp    %di,-0x224(%ebp)
47d199:	74 1b                	je     0x47d1b6
47d19b:	50                   	push   %eax
47d19c:	ff b5 a0 fd ff ff    	push   -0x260(%ebp)
47d1a2:	8d 85 d8 fd ff ff    	lea    -0x228(%ebp),%eax
47d1a8:	53                   	push   %ebx
47d1a9:	50                   	push   %eax
47d1aa:	e8 8f fc ff ff       	call   0x47ce3e
47d1af:	83 c4 10             	add    $0x10,%esp
47d1b2:	85 c0                	test   %eax,%eax
47d1b4:	75 8f                	jne    0x47d145
47d1b6:	8d 85 ac fd ff ff    	lea    -0x254(%ebp),%eax
47d1bc:	50                   	push   %eax
47d1bd:	56                   	push   %esi
47d1be:	ff 15 34 40 49 00    	call   *0x494034
47d1c4:	6a 2e                	push   $0x2e
47d1c6:	85 c0                	test   %eax,%eax
47d1c8:	8b 85 a4 fd ff ff    	mov    -0x25c(%ebp),%eax
47d1ce:	59                   	pop    %ecx
47d1cf:	75 a6                	jne    0x47d177
47d1d1:	8b 10                	mov    (%eax),%edx
47d1d3:	8b 40 04             	mov    0x4(%eax),%eax
47d1d6:	8b 8d 9c fd ff ff    	mov    -0x264(%ebp),%ecx
47d1dc:	2b c2                	sub    %edx,%eax
47d1de:	c1 f8 02             	sar    $0x2,%eax
47d1e1:	3b c8                	cmp    %eax,%ecx
47d1e3:	0f 84 5e ff ff ff    	je     0x47d147
47d1e9:	68 5d c9 47 00       	push   $0x47c95d
47d1ee:	2b c1                	sub    %ecx,%eax
47d1f0:	6a 04                	push   $0x4
47d1f2:	50                   	push   %eax
47d1f3:	8d 04 8a             	lea    (%edx,%ecx,4),%eax
47d1f6:	50                   	push   %eax
47d1f7:	e8 d4 a3 00 00       	call   0x4875d0
47d1fc:	83 c4 10             	add    $0x10,%esp
47d1ff:	e9 43 ff ff ff       	jmp    0x47d147
47d204:	8b ff                	mov    %edi,%edi
47d206:	55                   	push   %ebp
47d207:	8b ec                	mov    %esp,%ebp
47d209:	8b 45 1c             	mov    0x1c(%ebp),%eax
47d20c:	ff 30                	push   (%eax)
47d20e:	8b 45 18             	mov    0x18(%ebp),%eax
47d211:	ff 30                	push   (%eax)
47d213:	8b 45 14             	mov    0x14(%ebp),%eax
47d216:	ff 30                	push   (%eax)
47d218:	8b 45 10             	mov    0x10(%ebp),%eax
47d21b:	ff 30                	push   (%eax)
47d21d:	8b 45 0c             	mov    0xc(%ebp),%eax
47d220:	ff 30                	push   (%eax)
47d222:	8b 45 08             	mov    0x8(%ebp),%eax
47d225:	ff 30                	push   (%eax)
47d227:	ff 15 40 40 49 00    	call   *0x494040
47d22d:	5d                   	pop    %ebp
47d22e:	c3                   	ret
47d22f:	8b ff                	mov    %edi,%edi
47d231:	55                   	push   %ebp
47d232:	8b ec                	mov    %esp,%ebp
47d234:	8b 45 1c             	mov    0x1c(%ebp),%eax
47d237:	ff 30                	push   (%eax)
47d239:	8b 45 18             	mov    0x18(%ebp),%eax
47d23c:	ff 30                	push   (%eax)
47d23e:	8b 45 14             	mov    0x14(%ebp),%eax
47d241:	ff 30                	push   (%eax)
47d243:	8b 45 10             	mov    0x10(%ebp),%eax
47d246:	ff 30                	push   (%eax)
47d248:	8b 45 0c             	mov    0xc(%ebp),%eax
47d24b:	ff 30                	push   (%eax)
47d24d:	8b 45 08             	mov    0x8(%ebp),%eax
47d250:	ff 30                	push   (%eax)
47d252:	ff 15 3c 40 49 00    	call   *0x49403c
47d258:	5d                   	pop    %ebp
47d259:	c3                   	ret
47d25a:	8b ff                	mov    %edi,%edi
47d25c:	55                   	push   %ebp
47d25d:	8b ec                	mov    %esp,%ebp
47d25f:	8b 45 0c             	mov    0xc(%ebp),%eax
47d262:	ff 30                	push   (%eax)
47d264:	8b 45 08             	mov    0x8(%ebp),%eax
47d267:	ff 30                	push   (%eax)
47d269:	ff 15 38 40 49 00    	call   *0x494038
47d26f:	5d                   	pop    %ebp
47d270:	c3                   	ret
47d271:	8b ff                	mov    %edi,%edi
47d273:	55                   	push   %ebp
47d274:	8b ec                	mov    %esp,%ebp
47d276:	8b 45 0c             	mov    0xc(%ebp),%eax
47d279:	ff 30                	push   (%eax)
47d27b:	8b 45 08             	mov    0x8(%ebp),%eax
47d27e:	ff 30                	push   (%eax)
47d280:	ff 15 34 40 49 00    	call   *0x494034
47d286:	5d                   	pop    %ebp
47d287:	c3                   	ret
47d288:	8b ff                	mov    %edi,%edi
47d28a:	55                   	push   %ebp
47d28b:	8b ec                	mov    %esp,%ebp
47d28d:	8b 45 08             	mov    0x8(%ebp),%eax
47d290:	8b 00                	mov    (%eax),%eax
47d292:	8d 50 01             	lea    0x1(%eax),%edx
47d295:	8a 08                	mov    (%eax),%cl
47d297:	40                   	inc    %eax
47d298:	84 c9                	test   %cl,%cl
47d29a:	75 f9                	jne    0x47d295
47d29c:	2b c2                	sub    %edx,%eax
47d29e:	5d                   	pop    %ebp
47d29f:	c3                   	ret
47d2a0:	8b ff                	mov    %edi,%edi
47d2a2:	55                   	push   %ebp
47d2a3:	8b ec                	mov    %esp,%ebp
47d2a5:	8b 45 08             	mov    0x8(%ebp),%eax
47d2a8:	8b 00                	mov    (%eax),%eax
47d2aa:	8d 50 02             	lea    0x2(%eax),%edx
47d2ad:	66 8b 08             	mov    (%eax),%cx
47d2b0:	83 c0 02             	add    $0x2,%eax
47d2b3:	66 85 c9             	test   %cx,%cx
47d2b6:	75 f5                	jne    0x47d2ad
47d2b8:	2b c2                	sub    %edx,%eax
47d2ba:	d1 f8                	sar    $1,%eax
47d2bc:	5d                   	pop    %ebp
47d2bd:	c3                   	ret
47d2be:	8b ff                	mov    %edi,%edi
47d2c0:	55                   	push   %ebp
47d2c1:	8b ec                	mov    %esp,%ebp
47d2c3:	8b 45 14             	mov    0x14(%ebp),%eax
47d2c6:	ff 30                	push   (%eax)
47d2c8:	8b 45 10             	mov    0x10(%ebp),%eax
47d2cb:	ff 30                	push   (%eax)
47d2cd:	8b 45 0c             	mov    0xc(%ebp),%eax
47d2d0:	ff 30                	push   (%eax)
47d2d2:	8b 45 08             	mov    0x8(%ebp),%eax
47d2d5:	ff 30                	push   (%eax)
47d2d7:	e8 b1 d5 ff ff       	call   0x47a88d
47d2dc:	83 c4 10             	add    $0x10,%esp
47d2df:	5d                   	pop    %ebp
47d2e0:	c3                   	ret
47d2e1:	8b ff                	mov    %edi,%edi
47d2e3:	55                   	push   %ebp
47d2e4:	8b ec                	mov    %esp,%ebp
47d2e6:	8b 45 14             	mov    0x14(%ebp),%eax
47d2e9:	ff 30                	push   (%eax)
47d2eb:	8b 45 10             	mov    0x10(%ebp),%eax
47d2ee:	ff 30                	push   (%eax)
47d2f0:	8b 45 0c             	mov    0xc(%ebp),%eax
47d2f3:	ff 30                	push   (%eax)
47d2f5:	8b 45 08             	mov    0x8(%ebp),%eax
47d2f8:	ff 30                	push   (%eax)
47d2fa:	e8 d3 1c 00 00       	call   0x47efd2
47d2ff:	83 c4 10             	add    $0x10,%esp
47d302:	5d                   	pop    %ebp
47d303:	c3                   	ret
47d304:	8b ff                	mov    %edi,%edi
47d306:	55                   	push   %ebp
47d307:	8b ec                	mov    %esp,%ebp
47d309:	8b 45 14             	mov    0x14(%ebp),%eax
47d30c:	ff 30                	push   (%eax)
47d30e:	8b 45 10             	mov    0x10(%ebp),%eax
47d311:	ff 30                	push   (%eax)
47d313:	8b 45 0c             	mov    0xc(%ebp),%eax
47d316:	ff 30                	push   (%eax)
47d318:	8b 45 08             	mov    0x8(%ebp),%eax
47d31b:	ff 30                	push   (%eax)
47d31d:	e8 6b d5 ff ff       	call   0x47a88d
47d322:	83 c4 10             	add    $0x10,%esp
47d325:	5d                   	pop    %ebp
47d326:	c3                   	ret
47d327:	8b ff                	mov    %edi,%edi
47d329:	55                   	push   %ebp
47d32a:	8b ec                	mov    %esp,%ebp
47d32c:	8b 45 14             	mov    0x14(%ebp),%eax
47d32f:	ff 30                	push   (%eax)
47d331:	8b 45 10             	mov    0x10(%ebp),%eax
47d334:	ff 30                	push   (%eax)
47d336:	8b 45 0c             	mov    0xc(%ebp),%eax
47d339:	ff 30                	push   (%eax)
47d33b:	8b 45 08             	mov    0x8(%ebp),%eax
47d33e:	ff 30                	push   (%eax)
47d340:	e8 48 d5 ff ff       	call   0x47a88d
47d345:	83 c4 10             	add    $0x10,%esp
47d348:	5d                   	pop    %ebp
47d349:	c3                   	ret
47d34a:	8b ff                	mov    %edi,%edi
47d34c:	55                   	push   %ebp
47d34d:	8b ec                	mov    %esp,%ebp
47d34f:	8b 45 14             	mov    0x14(%ebp),%eax
47d352:	ff 30                	push   (%eax)
47d354:	8b 45 10             	mov    0x10(%ebp),%eax
47d357:	ff 30                	push   (%eax)
47d359:	8b 45 0c             	mov    0xc(%ebp),%eax
47d35c:	ff 30                	push   (%eax)
47d35e:	8b 45 08             	mov    0x8(%ebp),%eax
47d361:	ff 30                	push   (%eax)
47d363:	e8 6a 1c 00 00       	call   0x47efd2
47d368:	83 c4 10             	add    $0x10,%esp
47d36b:	5d                   	pop    %ebp
47d36c:	c3                   	ret
47d36d:	8b ff                	mov    %edi,%edi
47d36f:	55                   	push   %ebp
47d370:	8b ec                	mov    %esp,%ebp
47d372:	8b 45 14             	mov    0x14(%ebp),%eax
47d375:	ff 30                	push   (%eax)
47d377:	8b 45 10             	mov    0x10(%ebp),%eax
47d37a:	ff 30                	push   (%eax)
47d37c:	8b 45 0c             	mov    0xc(%ebp),%eax
47d37f:	ff 30                	push   (%eax)
47d381:	8b 45 08             	mov    0x8(%ebp),%eax
47d384:	ff 30                	push   (%eax)
47d386:	e8 47 1c 00 00       	call   0x47efd2
47d38b:	83 c4 10             	add    $0x10,%esp
47d38e:	5d                   	pop    %ebp
47d38f:	c3                   	ret
47d390:	8b ff                	mov    %edi,%edi
47d392:	55                   	push   %ebp
47d393:	8b ec                	mov    %esp,%ebp
47d395:	8b 45 08             	mov    0x8(%ebp),%eax
47d398:	ff 75 0c             	push   0xc(%ebp)
47d39b:	ff 30                	push   (%eax)
47d39d:	e8 ce a5 00 00       	call   0x487970
47d3a2:	59                   	pop    %ecx
47d3a3:	59                   	pop    %ecx
47d3a4:	5d                   	pop    %ebp
47d3a5:	c3                   	ret
47d3a6:	8b ff                	mov    %edi,%edi
47d3a8:	55                   	push   %ebp
47d3a9:	8b ec                	mov    %esp,%ebp
47d3ab:	8b 45 08             	mov    0x8(%ebp),%eax
47d3ae:	ff 75 0c             	push   0xc(%ebp)
47d3b1:	ff 30                	push   (%eax)
47d3b3:	e8 25 31 00 00       	call   0x4804dd
47d3b8:	59                   	pop    %ecx
47d3b9:	59                   	pop    %ecx
47d3ba:	5d                   	pop    %ebp
47d3bb:	c3                   	ret
47d3bc:	8b ff                	mov    %edi,%edi
47d3be:	55                   	push   %ebp
47d3bf:	8b ec                	mov    %esp,%ebp
47d3c1:	8b 45 08             	mov    0x8(%ebp),%eax
47d3c4:	89 01                	mov    %eax,(%ecx)
47d3c6:	8b c1                	mov    %ecx,%eax
47d3c8:	5d                   	pop    %ebp
47d3c9:	c2 04 00             	ret    $0x4
47d3cc:	33 c0                	xor    %eax,%eax
47d3ce:	89 01                	mov    %eax,(%ecx)
47d3d0:	89 41 04             	mov    %eax,0x4(%ecx)