47f13f:	59                   	pop    %ecx
47f140:	83 c8 ff             	or     $0xffffffff,%eax
47f143:	33 d2                	xor    %edx,%edx
47f145:	f7 f7                	div    %edi
47f147:	8b f8                	mov    %eax,%edi
47f149:	66 3b f1             	cmp    %cx,%si
47f14c:	0f 82 53 01 00 00    	jb     0x47f2a5
47f152:	6a 3a                	push   $0x3a
47f154:	58                   	pop    %eax
47f155:	66 3b f0             	cmp    %ax,%si
47f158:	73 0b                	jae    0x47f165
47f15a:	0f b7 ce             	movzwl %si,%ecx
47f15d:	83 e9 30             	sub    $0x30,%ecx
47f160:	e9 3b 01 00 00       	jmp    0x47f2a0
47f165:	b8 10 ff 00 00       	mov    $0xff10,%eax
47f16a:	66 3b f0             	cmp    %ax,%si
47f16d:	0f 83 1f 01 00 00    	jae    0x47f292
47f173:	8b 45 f8             	mov    -0x8(%ebp),%eax
47f176:	66 3b f0             	cmp    %ax,%si
47f179:	0f 82 26 01 00 00    	jb     0x47f2a5
47f17f:	66 3b 75 f4          	cmp    -0xc(%ebp),%si
47f183:	0f 82 12 01 00 00    	jb     0x47f29b
47f189:	8b 45 f0             	mov    -0x10(%ebp),%eax
47f18c:	66 3b f0             	cmp    %ax,%si
47f18f:	0f 82 10 01 00 00    	jb     0x47f2a5
47f195:	66 3b 75 ec          	cmp    -0x14(%ebp),%si
47f199:	0f 82 fc 00 00 00    	jb     0x47f29b
47f19f:	8b 45 e8             	mov    -0x18(%ebp),%eax
47f1a2:	66 3b f0             	cmp    %ax,%si
47f1a5:	0f 82 fa 00 00 00    	jb     0x47f2a5
47f1ab:	66 3b 75 e4          	cmp    -0x1c(%ebp),%si
47f1af:	0f 82 e6 00 00 00    	jb     0x47f29b
47f1b5:	8b 45 e0             	mov    -0x20(%ebp),%eax
47f1b8:	66 3b f0             	cmp    %ax,%si
47f1bb:	0f 82 e4 00 00 00    	jb     0x47f2a5
47f1c1:	66 3b 75 dc          	cmp    -0x24(%ebp),%si
47f1c5:	0f 82 d0 00 00 00    	jb     0x47f29b
47f1cb:	8b 45 d8             	mov    -0x28(%ebp),%eax
47f1ce:	66 3b f0             	cmp    %ax,%si
47f1d1:	0f 82 ce 00 00 00    	jb     0x47f2a5
47f1d7:	66 3b 75 d4          	cmp    -0x2c(%ebp),%si
47f1db:	0f 82 ba 00 00 00    	jb     0x47f29b
47f1e1:	8b 45 d0             	mov    -0x30(%ebp),%eax
47f1e4:	66 3b f0             	cmp    %ax,%si
47f1e7:	0f 82 b8 00 00 00    	jb     0x47f2a5
47f1ed:	66 3b 75 cc          	cmp    -0x34(%ebp),%si
47f1f1:	0f 82 a4 00 00 00    	jb     0x47f29b
47f1f7:	8b 45 c8             	mov    -0x38(%ebp),%eax
47f1fa:	66 3b f0             	cmp    %ax,%si
47f1fd:	0f 82 a2 00 00 00    	jb     0x47f2a5
47f203:	66 3b 75 c4          	cmp    -0x3c(%ebp),%si
47f207:	0f 82 8e 00 00 00    	jb     0x47f29b
47f20d:	8b 45 c0             	mov    -0x40(%ebp),%eax
47f210:	66 3b f0             	cmp    %ax,%si
47f213:	0f 82 8c 00 00 00    	jb     0x47f2a5
47f219:	66 3b 75 bc          	cmp    -0x44(%ebp),%si
47f21d:	72 7c                	jb     0x47f29b
47f21f:	8b 45 b8             	mov    -0x48(%ebp),%eax
47f222:	66 3b f0             	cmp    %ax,%si
47f225:	72 7e                	jb     0x47f2a5
47f227:	66 3b 75 b4          	cmp    -0x4c(%ebp),%si
47f22b:	72 6e                	jb     0x47f29b
47f22d:	8b 45 b0             	mov    -0x50(%ebp),%eax
47f230:	66 3b f0             	cmp    %ax,%si
47f233:	72 70                	jb     0x47f2a5
47f235:	66 3b 75 ac          	cmp    -0x54(%ebp),%si
47f239:	72 60                	jb     0x47f29b
47f23b:	8b 45 a8             	mov    -0x58(%ebp),%eax
47f23e:	66 3b f0             	cmp    %ax,%si
47f241:	72 62                	jb     0x47f2a5
47f243:	66 3b 75 a4          	cmp    -0x5c(%ebp),%si
47f247:	72 52                	jb     0x47f29b
47f249:	8b 45 a0             	mov    -0x60(%ebp),%eax
47f24c:	66 3b f0             	cmp    %ax,%si
47f24f:	72 54                	jb     0x47f2a5
47f251:	66 3b 75 9c          	cmp    -0x64(%ebp),%si
47f255:	72 44                	jb     0x47f29b
47f257:	8b 45 98             	mov    -0x68(%ebp),%eax
47f25a:	66 3b f0             	cmp    %ax,%si
47f25d:	72 46                	jb     0x47f2a5
47f25f:	66 3b 75 94          	cmp    -0x6c(%ebp),%si
47f263:	72 36                	jb     0x47f29b
47f265:	8b 45 90             	mov    -0x70(%ebp),%eax
47f268:	66 3b f0             	cmp    %ax,%si
47f26b:	72 38                	jb     0x47f2a5
47f26d:	66 3b 75 8c          	cmp    -0x74(%ebp),%si
47f271:	72 28                	jb     0x47f29b
47f273:	8b 45 88             	mov    -0x78(%ebp),%eax
47f276:	66 3b f0             	cmp    %ax,%si
47f279:	72 2a                	jb     0x47f2a5
47f27b:	66 3b 75 84          	cmp    -0x7c(%ebp),%si
47f27f:	72 1a                	jb     0x47f29b
47f281:	8b 45 80             	mov    -0x80(%ebp),%eax
47f284:	66 3b f0             	cmp    %ax,%si
47f287:	72 1c                	jb     0x47f2a5
47f289:	66 3b b5 7c ff ff ff 	cmp    -0x84(%ebp),%si
47f290:	eb 07                	jmp    0x47f299
47f292:	66 3b b5 78 ff ff ff 	cmp    -0x88(%ebp),%si
47f299:	73 0a                	jae    0x47f2a5
47f29b:	0f b7 ce             	movzwl %si,%ecx
47f29e:	2b c8                	sub    %eax,%ecx
47f2a0:	83 f9 ff             	cmp    $0xffffffff,%ecx
47f2a3:	75 2e                	jne    0x47f2d3
47f2a5:	0f b7 ce             	movzwl %si,%ecx
47f2a8:	83 f9 41             	cmp    $0x41,%ecx
47f2ab:	72 05                	jb     0x47f2b2
47f2ad:	83 f9 5a             	cmp    $0x5a,%ecx
47f2b0:	76 0b                	jbe    0x47f2bd
47f2b2:	83 f9 61             	cmp    $0x61,%ecx
47f2b5:	72 19                	jb     0x47f2d0
47f2b7:	66 83 fe 7a          	cmp    $0x7a,%si
47f2bb:	77 13                	ja     0x47f2d0
47f2bd:	6a 19                	push   $0x19
47f2bf:	8d 46 9f             	lea    -0x61(%esi),%eax
47f2c2:	5a                   	pop    %edx
47f2c3:	66 3b c2             	cmp    %dx,%ax
47f2c6:	77 03                	ja     0x47f2cb
47f2c8:	83 c1 e0             	add    $0xffffffe0,%ecx
47f2cb:	83 c1 c9             	add    $0xffffffc9,%ecx
47f2ce:	eb 03                	jmp    0x47f2d3
47f2d0:	83 c9 ff             	or     $0xffffffff,%ecx
47f2d3:	8b 55 14             	mov    0x14(%ebp),%edx
47f2d6:	3b ca                	cmp    %edx,%ecx
47f2d8:	73 37                	jae    0x47f311
47f2da:	8b 45 fc             	mov    -0x4(%ebp),%eax
47f2dd:	0f af c2             	imul   %edx,%eax
47f2e0:	6a 30                	push   $0x30
47f2e2:	8d 14 08             	lea    (%eax,%ecx,1),%edx
47f2e5:	3b d0                	cmp    %eax,%edx
47f2e7:	1b c9                	sbb    %ecx,%ecx
47f2e9:	f7 d9                	neg    %ecx
47f2eb:	3b 7d fc             	cmp    -0x4(%ebp),%edi
47f2ee:	89 55 fc             	mov    %edx,-0x4(%ebp)
47f2f1:	1b c0                	sbb    %eax,%eax
47f2f3:	f7 d8                	neg    %eax
47f2f5:	0b c8                	or     %eax,%ecx
47f2f7:	c1 e1 02             	shl    $0x2,%ecx
47f2fa:	83 c9 08             	or     $0x8,%ecx
47f2fd:	0b d9                	or     %ecx,%ebx
47f2ff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47f302:	0f b7 31             	movzwl (%ecx),%esi
47f305:	83 c1 02             	add    $0x2,%ecx
47f308:	89 4d 0c             	mov    %ecx,0xc(%ebp)
47f30b:	59                   	pop    %ecx
47f30c:	e9 38 fe ff ff       	jmp    0x47f149
47f311:	56                   	push   %esi
47f312:	8d 4d 0c             	lea    0xc(%ebp),%ecx
47f315:	e8 c0 9d ff ff       	call   0x4790da
47f31a:	f6 c3 08             	test   $0x8,%bl
47f31d:	75 13                	jne    0x47f332
47f31f:	8b 45 10             	mov    0x10(%ebp),%eax
47f322:	85 c0                	test   %eax,%eax
47f324:	74 08                	je     0x47f32e
47f326:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
47f32c:	89 08                	mov    %ecx,(%eax)
47f32e:	33 c0                	xor    %eax,%eax
47f330:	eb 65                	jmp    0x47f397
47f332:	8b 75 fc             	mov    -0x4(%ebp),%esi
47f335:	56                   	push   %esi
47f336:	53                   	push   %ebx
47f337:	e8 22 66 ff ff       	call   0x47595e
47f33c:	59                   	pop    %ecx
47f33d:	59                   	pop    %ecx
47f33e:	84 c0                	test   %al,%al
47f340:	74 40                	je     0x47f382
47f342:	8b 45 08             	mov    0x8(%ebp),%eax
47f345:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
47f349:	c7 40 18 22 00 00 00 	movl   $0x22,0x18(%eax)
47f350:	f6 c3 01             	test   $0x1,%bl
47f353:	75 05                	jne    0x47f35a
47f355:	83 ce ff             	or     $0xffffffff,%esi
47f358:	eb 2f                	jmp    0x47f389
47f35a:	8b 4d 10             	mov    0x10(%ebp),%ecx
47f35d:	f6 c3 02             	test   $0x2,%bl
47f360:	74 10                	je     0x47f372
47f362:	85 c9                	test   %ecx,%ecx
47f364:	74 05                	je     0x47f36b
47f366:	8b 45 0c             	mov    0xc(%ebp),%eax
47f369:	89 01                	mov    %eax,(%ecx)
47f36b:	b8 00 00 00 80       	mov    $0x80000000,%eax
47f370:	eb 25                	jmp    0x47f397
47f372:	85 c9                	test   %ecx,%ecx
47f374:	74 05                	je     0x47f37b
47f376:	8b 45 0c             	mov    0xc(%ebp),%eax
47f379:	89 01                	mov    %eax,(%ecx)
47f37b:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
47f380:	eb 15                	jmp    0x47f397
47f382:	f6 c3 02             	test   $0x2,%bl
47f385:	74 02                	je     0x47f389
47f387:	f7 de                	neg    %esi
47f389:	8b 55 10             	mov    0x10(%ebp),%edx
47f38c:	85 d2                	test   %edx,%edx
47f38e:	74 05                	je     0x47f395
47f390:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47f393:	89 0a                	mov    %ecx,(%edx)
47f395:	8b c6                	mov    %esi,%eax
47f397:	5f                   	pop    %edi
47f398:	5e                   	pop    %esi
47f399:	5b                   	pop    %ebx
47f39a:	c9                   	leave
47f39b:	c3                   	ret
47f39c:	8b ff                	mov    %edi,%edi
47f39e:	55                   	push   %ebp
47f39f:	8b ec                	mov    %esp,%ebp
47f3a1:	81 ec a0 00 00 00    	sub    $0xa0,%esp
47f3a7:	8d 4d 0c             	lea    0xc(%ebp),%ecx
47f3aa:	53                   	push   %ebx
47f3ab:	56                   	push   %esi
47f3ac:	57                   	push   %edi
47f3ad:	e8 b9 9d ff ff       	call   0x47916b
47f3b2:	84 c0                	test   %al,%al
47f3b4:	74 2f                	je     0x47f3e5
47f3b6:	8b 7d 14             	mov    0x14(%ebp),%edi
47f3b9:	85 ff                	test   %edi,%edi
47f3bb:	74 3d                	je     0x47f3fa
47f3bd:	83 ff 02             	cmp    $0x2,%edi
47f3c0:	7c 05                	jl     0x47f3c7
47f3c2:	83 ff 24             	cmp    $0x24,%edi
47f3c5:	7e 33                	jle    0x47f3fa
47f3c7:	8b 45 08             	mov    0x8(%ebp),%eax
47f3ca:	50                   	push   %eax
47f3cb:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
47f3cf:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
47f3d6:	33 c0                	xor    %eax,%eax
47f3d8:	50                   	push   %eax
47f3d9:	50                   	push   %eax
47f3da:	50                   	push   %eax
47f3db:	50                   	push   %eax
47f3dc:	50                   	push   %eax
47f3dd:	e8 c2 a1 ff ff       	call   0x4795a4
47f3e2:	83 c4 18             	add    $0x18,%esp
47f3e5:	8b 4d 10             	mov    0x10(%ebp),%ecx
47f3e8:	85 c9                	test   %ecx,%ecx
47f3ea:	0f 84 af 05 00 00    	je     0x47f99f
47f3f0:	8b 45 0c             	mov    0xc(%ebp),%eax
47f3f3:	89 01                	mov    %eax,(%ecx)
47f3f5:	e9 a5 05 00 00       	jmp    0x47f99f
47f3fa:	8b 45 0c             	mov    0xc(%ebp),%eax
47f3fd:	33 db                	xor    %ebx,%ebx
47f3ff:	8b 4d 08             	mov    0x8(%ebp),%ecx
47f402:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
47f406:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
47f40c:	0f b7 30             	movzwl (%eax),%esi
47f40f:	83 c0 02             	add    $0x2,%eax
47f412:	89 45 0c             	mov    %eax,0xc(%ebp)
47f415:	38 59 14             	cmp    %bl,0x14(%ecx)
47f418:	75 13                	jne    0x47f42d
47f41a:	e8 f1 9c ff ff       	call   0x479110
47f41f:	eb 0c                	jmp    0x47f42d
47f421:	8b 45 0c             	mov    0xc(%ebp),%eax
47f424:	0f b7 30             	movzwl (%eax),%esi
47f427:	83 c0 02             	add    $0x2,%eax
47f42a:	89 45 0c             	mov    %eax,0xc(%ebp)
47f42d:	6a 08                	push   $0x8
47f42f:	56                   	push   %esi
47f430:	e8 6b a4 00 00       	call   0x4898a0
47f435:	59                   	pop    %ecx
47f436:	59                   	pop    %ecx
47f437:	85 c0                	test   %eax,%eax
47f439:	75 e6                	jne    0x47f421
47f43b:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
47f43f:	89 45 fc             	mov    %eax,-0x4(%ebp)
47f442:	66 83 fe 2d          	cmp    $0x2d,%si
47f446:	75 08                	jne    0x47f450
47f448:	83 c8 02             	or     $0x2,%eax
47f44b:	89 45 fc             	mov    %eax,-0x4(%ebp)
47f44e:	eb 06                	jmp    0x47f456
47f450:	66 83 fe 2b          	cmp    $0x2b,%si
47f454:	75 0e                	jne    0x47f464
47f456:	8b 55 0c             	mov    0xc(%ebp),%edx
47f459:	0f b7 32             	movzwl (%edx),%esi
47f45c:	83 c2 02             	add    $0x2,%edx
47f45f:	89 55 0c             	mov    %edx,0xc(%ebp)
47f462:	eb 03                	jmp    0x47f467
47f464:	8b 55 0c             	mov    0xc(%ebp),%edx
47f467:	c7 45 f4 3a 00 00 00 	movl   $0x3a,-0xc(%ebp)
47f46e:	b8 10 ff 00 00       	mov    $0xff10,%eax
47f473:	c7 85 70 ff ff ff 60 	movl   $0x660,-0x90(%ebp)
47f47a:	06 00 00
47f47d:	c7 45 f0 6a 06 00 00 	movl   $0x66a,-0x10(%ebp)
47f484:	c7 45 ec f0 06 00 00 	movl   $0x6f0,-0x14(%ebp)
47f48b:	c7 45 e8 fa 06 00 00 	movl   $0x6fa,-0x18(%ebp)
47f492:	c7 45 e4 66 09 00 00 	movl   $0x966,-0x1c(%ebp)
47f499:	c7 45 e0 70 09 00 00 	movl   $0x970,-0x20(%ebp)
47f4a0:	c7 45 dc e6 09 00 00 	movl   $0x9e6,-0x24(%ebp)
47f4a7:	c7 45 d8 f0 09 00 00 	movl   $0x9f0,-0x28(%ebp)
47f4ae:	c7 45 d4 66 0a 00 00 	movl   $0xa66,-0x2c(%ebp)
47f4b5:	c7 45 d0 70 0a 00 00 	movl   $0xa70,-0x30(%ebp)
47f4bc:	c7 45 cc e6 0a 00 00 	movl   $0xae6,-0x34(%ebp)
47f4c3:	c7 45 c8 f0 0a 00 00 	movl   $0xaf0,-0x38(%ebp)
47f4ca:	c7 45 c4 66 0b 00 00 	movl   $0xb66,-0x3c(%ebp)
47f4d1:	c7 45 c0 70 0b 00 00 	movl   $0xb70,-0x40(%ebp)
47f4d8:	c7 45 bc 66 0c 00 00 	movl   $0xc66,-0x44(%ebp)
47f4df:	c7 45 b8 70 0c 00 00 	movl   $0xc70,-0x48(%ebp)
47f4e6:	c7 45 b4 e6 0c 00 00 	movl   $0xce6,-0x4c(%ebp)
47f4ed:	c7 45 b0 f0 0c 00 00 	movl   $0xcf0,-0x50(%ebp)
47f4f4:	c7 45 ac 66 0d 00 00 	movl   $0xd66,-0x54(%ebp)
47f4fb:	c7 45 a8 70 0d 00 00 	movl   $0xd70,-0x58(%ebp)
47f502:	c7 45 a4 50 0e 00 00 	movl   $0xe50,-0x5c(%ebp)
47f509:	c7 45 a0 5a 0e 00 00 	movl   $0xe5a,-0x60(%ebp)
47f510:	c7 45 9c d0 0e 00 00 	movl   $0xed0,-0x64(%ebp)
47f517:	c7 45 98 da 0e 00 00 	movl   $0xeda,-0x68(%ebp)
47f51e:	c7 45 94 20 0f 00 00 	movl   $0xf20,-0x6c(%ebp)
47f525:	c7 45 90 2a 0f 00 00 	movl   $0xf2a,-0x70(%ebp)
47f52c:	c7 45 8c 40 10 00 00 	movl   $0x1040,-0x74(%ebp)
47f533:	c7 45 88 4a 10 00 00 	movl   $0x104a,-0x78(%ebp)
47f53a:	c7 45 84 e0 17 00 00 	movl   $0x17e0,-0x7c(%ebp)
47f541:	c7 45 80 ea 17 00 00 	movl   $0x17ea,-0x80(%ebp)
47f548:	c7 85 7c ff ff ff 10 	movl   $0x1810,-0x84(%ebp)
47f54f:	18 00 00
47f552:	c7 85 78 ff ff ff 1a 	movl   $0x181a,-0x88(%ebp)
47f559:	18 00 00
47f55c:	c7 85 74 ff ff ff 1a 	movl   $0xff1a,-0x8c(%ebp)
47f563:	ff 00 00
47f566:	6a 30                	push   $0x30
47f568:	59                   	pop    %ecx
47f569:	85 ff                	test   %edi,%edi
47f56b:	74 09                	je     0x47f576
47f56d:	83 ff 10             	cmp    $0x10,%edi
47f570:	0f 85 ea 01 00 00    	jne    0x47f760
47f576:	66 3b f1             	cmp    %cx,%si
47f579:	0f 82 71 01 00 00    	jb     0x47f6f0
47f57f:	66 3b 75 f4          	cmp    -0xc(%ebp),%si
47f583:	73 0a                	jae    0x47f58f
47f585:	0f b7 c6             	movzwl %si,%eax
47f588:	2b c1                	sub    %ecx,%eax
47f58a:	e9 5c 01 00 00       	jmp    0x47f6eb
47f58f:	66 3b f0             	cmp    %ax,%si
47f592:	0f 83 42 01 00 00    	jae    0x47f6da
47f598:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
47f59e:	66 3b f1             	cmp    %cx,%si
47f5a1:	0f 82 49 01 00 00    	jb     0x47f6f0
47f5a7:	66 3b 75 f0          	cmp    -0x10(%ebp),%si
47f5ab:	72 d8                	jb     0x47f585
47f5ad:	8b 4d ec             	mov    -0x14(%ebp),%ecx
47f5b0:	66 3b f1             	cmp    %cx,%si
47f5b3:	0f 82 37 01 00 00    	jb     0x47f6f0
47f5b9:	66 3b 75 e8          	cmp    -0x18(%ebp),%si
47f5bd:	72 c6                	jb     0x47f585
47f5bf:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
47f5c2:	66 3b f1             	cmp    %cx,%si
47f5c5:	0f 82 25 01 00 00    	jb     0x47f6f0
47f5cb:	66 3b 75 e0          	cmp    -0x20(%ebp),%si
47f5cf:	72 b4                	jb     0x47f585
47f5d1:	8b 4d dc             	mov    -0x24(%ebp),%ecx
47f5d4:	66 3b f1             	cmp    %cx,%si
47f5d7:	0f 82 13 01 00 00    	jb     0x47f6f0
47f5dd:	66 3b 75 d8          	cmp    -0x28(%ebp),%si
47f5e1:	72 a2                	jb     0x47f585
47f5e3:	8b 4d d4             	mov    -0x2c(%ebp),%ecx