4fd20f:	0f af 4b 08          	imul   0x8(%ebx),%ecx
4fd213:	e8 fc 06 00 00       	call   0x4fd914
4fd218:	c7 43 28 01 00 00 00 	movl   $0x1,0x28(%ebx)
4fd21f:	8b 53 10             	mov    0x10(%ebx),%edx
4fd222:	8b c7                	mov    %edi,%eax
4fd224:	52                   	push   %edx
4fd225:	ba 01 00 00 00       	mov    $0x1,%edx
4fd22a:	8b 4b 08             	mov    0x8(%ebx),%ecx
4fd22d:	e8 7e fc ff ff       	call   0x4fceb0
4fd232:	89 03                	mov    %eax,(%ebx)
4fd234:	33 c0                	xor    %eax,%eax
4fd236:	8b 4d 4c             	mov    0x4c(%ebp),%ecx
4fd239:	33 d2                	xor    %edx,%edx
4fd23b:	89 4b 14             	mov    %ecx,0x14(%ebx)
4fd23e:	89 43 18             	mov    %eax,0x18(%ebx)
4fd241:	89 53 1c             	mov    %edx,0x1c(%ebx)
4fd244:	33 c9                	xor    %ecx,%ecx
4fd246:	89 4b 24             	mov    %ecx,0x24(%ebx)
4fd249:	8b 5b 2c             	mov    0x2c(%ebx),%ebx
4fd24c:	85 db                	test   %ebx,%ebx
4fd24e:	75 95                	jne    0x4fd1e5
4fd250:	8b 5d 44             	mov    0x44(%ebp),%ebx
4fd253:	85 db                	test   %ebx,%ebx
4fd255:	74 6e                	je     0x4fd2c5
4fd257:	83 3b 00             	cmpl   $0x0,(%ebx)
4fd25a:	75 62                	jne    0x4fd2be
4fd25c:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd25f:	8b c1                	mov    %ecx,%eax
4fd261:	48                   	dec    %eax
4fd262:	33 d2                	xor    %edx,%edx
4fd264:	f7 73 0c             	divl   0xc(%ebx)
4fd267:	40                   	inc    %eax
4fd268:	3b f0                	cmp    %eax,%esi
4fd26a:	7c 05                	jl     0x4fd271
4fd26c:	89 4b 10             	mov    %ecx,0x10(%ebx)
4fd26f:	eb 23                	jmp    0x4fd294
4fd271:	8b c6                	mov    %esi,%eax
4fd273:	f7 6b 0c             	imull  0xc(%ebx)
4fd276:	89 43 10             	mov    %eax,0x10(%ebx)
4fd279:	8b c7                	mov    %edi,%eax
4fd27b:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd27e:	8d 53 30             	lea    0x30(%ebx),%edx
4fd281:	0f af 4b 08          	imul   0x8(%ebx),%ecx
4fd285:	c1 e1 07             	shl    $0x7,%ecx
4fd288:	e8 87 06 00 00       	call   0x4fd914
4fd28d:	c7 43 28 01 00 00 00 	movl   $0x1,0x28(%ebx)
4fd294:	8b 53 10             	mov    0x10(%ebx),%edx
4fd297:	8b c7                	mov    %edi,%eax
4fd299:	52                   	push   %edx
4fd29a:	ba 01 00 00 00       	mov    $0x1,%edx
4fd29f:	8b 4b 08             	mov    0x8(%ebx),%ecx
4fd2a2:	e8 dd fc ff ff       	call   0x4fcf84
4fd2a7:	89 03                	mov    %eax,(%ebx)
4fd2a9:	33 c0                	xor    %eax,%eax
4fd2ab:	8b 4d 4c             	mov    0x4c(%ebp),%ecx
4fd2ae:	33 d2                	xor    %edx,%edx
4fd2b0:	89 4b 14             	mov    %ecx,0x14(%ebx)
4fd2b3:	89 43 18             	mov    %eax,0x18(%ebx)
4fd2b6:	89 53 1c             	mov    %edx,0x1c(%ebx)
4fd2b9:	33 c9                	xor    %ecx,%ecx
4fd2bb:	89 4b 24             	mov    %ecx,0x24(%ebx)
4fd2be:	8b 5b 2c             	mov    0x2c(%ebx),%ebx
4fd2c1:	85 db                	test   %ebx,%ebx
4fd2c3:	75 92                	jne    0x4fd257
4fd2c5:	5a                   	pop    %edx
4fd2c6:	5d                   	pop    %ebp
4fd2c7:	5f                   	pop    %edi
4fd2c8:	5e                   	pop    %esi
4fd2c9:	5b                   	pop    %ebx
4fd2ca:	c3                   	ret
4fd2cb:	90                   	nop
4fd2cc:	53                   	push   %ebx
4fd2cd:	56                   	push   %esi
4fd2ce:	57                   	push   %edi
4fd2cf:	83 c4 f0             	add    $0xfffffff0,%esp
4fd2d2:	89 4c 24 04          	mov    %ecx,0x4(%esp)
4fd2d6:	8b da                	mov    %edx,%ebx
4fd2d8:	89 04 24             	mov    %eax,(%esp)
4fd2db:	8b 43 08             	mov    0x8(%ebx),%eax
4fd2de:	89 44 24 08          	mov    %eax,0x8(%esp)
4fd2e2:	8b 53 18             	mov    0x18(%ebx),%edx
4fd2e5:	0f af 54 24 08       	imul   0x8(%esp),%edx
4fd2ea:	89 54 24 0c          	mov    %edx,0xc(%esp)
4fd2ee:	33 f6                	xor    %esi,%esi
4fd2f0:	eb 77                	jmp    0x4fd369
4fd2f2:	2b c6                	sub    %esi,%eax
4fd2f4:	3b 43 14             	cmp    0x14(%ebx),%eax
4fd2f7:	7e 05                	jle    0x4fd2fe
4fd2f9:	8b 43 14             	mov    0x14(%ebx),%eax
4fd2fc:	eb 05                	jmp    0x4fd303
4fd2fe:	8b 43 10             	mov    0x10(%ebx),%eax
4fd301:	2b c6                	sub    %esi,%eax
4fd303:	8b 53 18             	mov    0x18(%ebx),%edx
4fd306:	03 d6                	add    %esi,%edx
4fd308:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
4fd30b:	2b ca                	sub    %edx,%ecx
4fd30d:	3b c1                	cmp    %ecx,%eax
4fd30f:	7c 05                	jl     0x4fd316
4fd311:	8b 43 1c             	mov    0x1c(%ebx),%eax
4fd314:	2b c2                	sub    %edx,%eax
4fd316:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd319:	2b ca                	sub    %edx,%ecx
4fd31b:	3b c1                	cmp    %ecx,%eax
4fd31d:	7c 05                	jl     0x4fd324
4fd31f:	8b 43 04             	mov    0x4(%ebx),%eax
4fd322:	2b c2                	sub    %edx,%eax
4fd324:	85 c0                	test   %eax,%eax
4fd326:	7e 48                	jle    0x4fd370
4fd328:	8b f8                	mov    %eax,%edi
4fd32a:	0f af 7c 24 08       	imul   0x8(%esp),%edi
4fd32f:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
4fd334:	74 17                	je     0x4fd34d
4fd336:	8b 44 24 0c          	mov    0xc(%esp),%eax
4fd33a:	50                   	push   %eax
4fd33b:	57                   	push   %edi
4fd33c:	8b 13                	mov    (%ebx),%edx
4fd33e:	8b 44 24 08          	mov    0x8(%esp),%eax
4fd342:	8b 0c b2             	mov    (%edx,%esi,4),%ecx
4fd345:	8d 53 30             	lea    0x30(%ebx),%edx
4fd348:	ff 53 34             	call   *0x34(%ebx)
4fd34b:	eb 15                	jmp    0x4fd362
4fd34d:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4fd351:	8d 53 30             	lea    0x30(%ebx),%edx
4fd354:	51                   	push   %ecx
4fd355:	57                   	push   %edi
4fd356:	8b 03                	mov    (%ebx),%eax
4fd358:	8b 0c b0             	mov    (%eax,%esi,4),%ecx
4fd35b:	8b 44 24 08          	mov    0x8(%esp),%eax
4fd35f:	ff 53 30             	call   *0x30(%ebx)
4fd362:	01 7c 24 0c          	add    %edi,0xc(%esp)
4fd366:	03 73 14             	add    0x14(%ebx),%esi
4fd369:	8b 43 10             	mov    0x10(%ebx),%eax
4fd36c:	3b f0                	cmp    %eax,%esi
4fd36e:	7c 82                	jl     0x4fd2f2
4fd370:	83 c4 10             	add    $0x10,%esp
4fd373:	5f                   	pop    %edi
4fd374:	5e                   	pop    %esi
4fd375:	5b                   	pop    %ebx
4fd376:	c3                   	ret
4fd377:	90                   	nop
4fd378:	53                   	push   %ebx
4fd379:	56                   	push   %esi
4fd37a:	57                   	push   %edi
4fd37b:	83 c4 f0             	add    $0xfffffff0,%esp
4fd37e:	89 4c 24 04          	mov    %ecx,0x4(%esp)
4fd382:	8b da                	mov    %edx,%ebx
4fd384:	89 04 24             	mov    %eax,(%esp)
4fd387:	8b 43 08             	mov    0x8(%ebx),%eax
4fd38a:	c1 e0 07             	shl    $0x7,%eax
4fd38d:	89 44 24 08          	mov    %eax,0x8(%esp)
4fd391:	8b 53 18             	mov    0x18(%ebx),%edx
4fd394:	0f af 54 24 08       	imul   0x8(%esp),%edx
4fd399:	89 54 24 0c          	mov    %edx,0xc(%esp)
4fd39d:	33 f6                	xor    %esi,%esi
4fd39f:	eb 77                	jmp    0x4fd418
4fd3a1:	2b c6                	sub    %esi,%eax
4fd3a3:	3b 43 14             	cmp    0x14(%ebx),%eax
4fd3a6:	7e 05                	jle    0x4fd3ad
4fd3a8:	8b 43 14             	mov    0x14(%ebx),%eax
4fd3ab:	eb 05                	jmp    0x4fd3b2
4fd3ad:	8b 43 10             	mov    0x10(%ebx),%eax
4fd3b0:	2b c6                	sub    %esi,%eax
4fd3b2:	8b 53 18             	mov    0x18(%ebx),%edx
4fd3b5:	03 d6                	add    %esi,%edx
4fd3b7:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
4fd3ba:	2b ca                	sub    %edx,%ecx
4fd3bc:	3b c1                	cmp    %ecx,%eax
4fd3be:	7c 05                	jl     0x4fd3c5
4fd3c0:	8b 43 1c             	mov    0x1c(%ebx),%eax
4fd3c3:	2b c2                	sub    %edx,%eax
4fd3c5:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd3c8:	2b ca                	sub    %edx,%ecx
4fd3ca:	3b c1                	cmp    %ecx,%eax
4fd3cc:	7c 05                	jl     0x4fd3d3
4fd3ce:	8b 43 04             	mov    0x4(%ebx),%eax
4fd3d1:	2b c2                	sub    %edx,%eax
4fd3d3:	85 c0                	test   %eax,%eax
4fd3d5:	7e 48                	jle    0x4fd41f
4fd3d7:	8b f8                	mov    %eax,%edi
4fd3d9:	0f af 7c 24 08       	imul   0x8(%esp),%edi
4fd3de:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
4fd3e3:	74 17                	je     0x4fd3fc
4fd3e5:	8b 44 24 0c          	mov    0xc(%esp),%eax
4fd3e9:	50                   	push   %eax
4fd3ea:	57                   	push   %edi
4fd3eb:	8b 13                	mov    (%ebx),%edx
4fd3ed:	8b 44 24 08          	mov    0x8(%esp),%eax
4fd3f1:	8b 0c b2             	mov    (%edx,%esi,4),%ecx
4fd3f4:	8d 53 30             	lea    0x30(%ebx),%edx
4fd3f7:	ff 53 34             	call   *0x34(%ebx)
4fd3fa:	eb 15                	jmp    0x4fd411
4fd3fc:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4fd400:	8d 53 30             	lea    0x30(%ebx),%edx
4fd403:	51                   	push   %ecx
4fd404:	57                   	push   %edi
4fd405:	8b 03                	mov    (%ebx),%eax
4fd407:	8b 0c b0             	mov    (%eax,%esi,4),%ecx
4fd40a:	8b 44 24 08          	mov    0x8(%esp),%eax
4fd40e:	ff 53 30             	call   *0x30(%ebx)
4fd411:	01 7c 24 0c          	add    %edi,0xc(%esp)
4fd415:	03 73 14             	add    0x14(%ebx),%esi
4fd418:	8b 43 10             	mov    0x10(%ebx),%eax
4fd41b:	3b f0                	cmp    %eax,%esi
4fd41d:	7c 82                	jl     0x4fd3a1
4fd41f:	83 c4 10             	add    $0x10,%esp
4fd422:	5f                   	pop    %edi
4fd423:	5e                   	pop    %esi
4fd424:	5b                   	pop    %ebx
4fd425:	c3                   	ret
4fd426:	90                   	nop
4fd427:	90                   	nop
4fd428:	55                   	push   %ebp
4fd429:	8b ec                	mov    %esp,%ebp
4fd42b:	83 c4 f4             	add    $0xfffffff4,%esp
4fd42e:	53                   	push   %ebx
4fd42f:	56                   	push   %esi
4fd430:	57                   	push   %edi
4fd431:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4fd434:	8b da                	mov    %edx,%ebx
4fd436:	89 45 fc             	mov    %eax,-0x4(%ebp)
4fd439:	8b 45 0c             	mov    0xc(%ebp),%eax
4fd43c:	8b 7d f8             	mov    -0x8(%ebp),%edi
4fd43f:	03 f8                	add    %eax,%edi
4fd441:	3b 7b 04             	cmp    0x4(%ebx),%edi
4fd444:	77 0a                	ja     0x4fd450
4fd446:	3b 43 0c             	cmp    0xc(%ebx),%eax
4fd449:	77 05                	ja     0x4fd450
4fd44b:	83 3b 00             	cmpl   $0x0,(%ebx)
4fd44e:	75 13                	jne    0x4fd463
4fd450:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd453:	8b 10                	mov    (%eax),%edx
4fd455:	c7 42 14 14 00 00 00 	movl   $0x14,0x14(%edx)
4fd45c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd45f:	8b 10                	mov    (%eax),%edx
4fd461:	ff 12                	call   *(%edx)
4fd463:	8b 43 18             	mov    0x18(%ebx),%eax
4fd466:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4fd469:	77 07                	ja     0x4fd472
4fd46b:	03 43 10             	add    0x10(%ebx),%eax
4fd46e:	3b f8                	cmp    %eax,%edi
4fd470:	76 5d                	jbe    0x4fd4cf
4fd472:	83 7b 28 00          	cmpl   $0x0,0x28(%ebx)
4fd476:	75 13                	jne    0x4fd48b
4fd478:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fd47b:	8b 0a                	mov    (%edx),%ecx
4fd47d:	c7 41 14 44 00 00 00 	movl   $0x44,0x14(%ecx)
4fd484:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd487:	8b 10                	mov    (%eax),%edx
4fd489:	ff 12                	call   *(%edx)
4fd48b:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
4fd48f:	74 14                	je     0x4fd4a5
4fd491:	b9 01 00 00 00       	mov    $0x1,%ecx
4fd496:	8b d3                	mov    %ebx,%edx
4fd498:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd49b:	e8 2c fe ff ff       	call   0x4fd2cc
4fd4a0:	33 c9                	xor    %ecx,%ecx
4fd4a2:	89 4b 24             	mov    %ecx,0x24(%ebx)
4fd4a5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4fd4a8:	3b 43 18             	cmp    0x18(%ebx),%eax
4fd4ab:	76 08                	jbe    0x4fd4b5
4fd4ad:	8b 55 f8             	mov    -0x8(%ebp),%edx
4fd4b0:	89 53 18             	mov    %edx,0x18(%ebx)
4fd4b3:	eb 0e                	jmp    0x4fd4c3
4fd4b5:	8b c7                	mov    %edi,%eax
4fd4b7:	2b 43 10             	sub    0x10(%ebx),%eax
4fd4ba:	85 c0                	test   %eax,%eax
4fd4bc:	7d 02                	jge    0x4fd4c0
4fd4be:	33 c0                	xor    %eax,%eax
4fd4c0:	89 43 18             	mov    %eax,0x18(%ebx)
4fd4c3:	33 c9                	xor    %ecx,%ecx
4fd4c5:	8b d3                	mov    %ebx,%edx
4fd4c7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd4ca:	e8 fd fd ff ff       	call   0x4fd2cc
4fd4cf:	8b 43 1c             	mov    0x1c(%ebx),%eax
4fd4d2:	3b f8                	cmp    %eax,%edi
4fd4d4:	76 7a                	jbe    0x4fd550
4fd4d6:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4fd4d9:	73 1e                	jae    0x4fd4f9
4fd4db:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4fd4df:	74 13                	je     0x4fd4f4
4fd4e1:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fd4e4:	8b 0a                	mov    (%edx),%ecx
4fd4e6:	c7 41 14 14 00 00 00 	movl   $0x14,0x14(%ecx)
4fd4ed:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd4f0:	8b 10                	mov    (%eax),%edx
4fd4f2:	ff 12                	call   *(%edx)
4fd4f4:	8b 75 f8             	mov    -0x8(%ebp),%esi
4fd4f7:	eb 03                	jmp    0x4fd4fc
4fd4f9:	8b 73 1c             	mov    0x1c(%ebx),%esi
4fd4fc:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4fd500:	74 03                	je     0x4fd505
4fd502:	89 7b 1c             	mov    %edi,0x1c(%ebx)
4fd505:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
4fd509:	74 2c                	je     0x4fd537
4fd50b:	8b 43 08             	mov    0x8(%ebx),%eax
4fd50e:	89 45 f4             	mov    %eax,-0xc(%ebp)
4fd511:	8b 43 18             	mov    0x18(%ebx),%eax
4fd514:	2b f0                	sub    %eax,%esi
4fd516:	2b f8                	sub    %eax,%edi
4fd518:	3b fe                	cmp    %esi,%edi
4fd51a:	76 34                	jbe    0x4fd550
4fd51c:	8b 55 f4             	mov    -0xc(%ebp),%edx
4fd51f:	52                   	push   %edx
4fd520:	6a 00                	push   $0x0
4fd522:	8b 0b                	mov    (%ebx),%ecx
4fd524:	8b 04 b1             	mov    (%ecx,%esi,4),%eax
4fd527:	50                   	push   %eax
4fd528:	e8 87 dd ff ff       	call   0x4fb2b4
4fd52d:	83 c4 0c             	add    $0xc,%esp
4fd530:	46                   	inc    %esi
4fd531:	3b fe                	cmp    %esi,%edi
4fd533:	77 e7                	ja     0x4fd51c
4fd535:	eb 19                	jmp    0x4fd550
4fd537:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4fd53b:	75 13                	jne    0x4fd550
4fd53d:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fd540:	8b 0a                	mov    (%edx),%ecx
4fd542:	c7 41 14 14 00 00 00 	movl   $0x14,0x14(%ecx)
4fd549:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd54c:	8b 10                	mov    (%eax),%edx
4fd54e:	ff 12                	call   *(%edx)
4fd550:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4fd554:	74 07                	je     0x4fd55d
4fd556:	c7 43 24 01 00 00 00 	movl   $0x1,0x24(%ebx)
4fd55d:	8b 45 f8             	mov    -0x8(%ebp),%eax
4fd560:	2b 43 18             	sub    0x18(%ebx),%eax
4fd563:	c1 e0 02             	shl    $0x2,%eax
4fd566:	03 03                	add    (%ebx),%eax
4fd568:	5f                   	pop    %edi
4fd569:	5e                   	pop    %esi
4fd56a:	5b                   	pop    %ebx
4fd56b:	8b e5                	mov    %ebp,%esp
4fd56d:	5d                   	pop    %ebp
4fd56e:	c2 08 00             	ret    $0x8
4fd571:	90                   	nop
4fd572:	90                   	nop
4fd573:	90                   	nop
4fd574:	55                   	push   %ebp
4fd575:	8b ec                	mov    %esp,%ebp
4fd577:	83 c4 f4             	add    $0xfffffff4,%esp
4fd57a:	53                   	push   %ebx
4fd57b:	56                   	push   %esi
4fd57c:	57                   	push   %edi
4fd57d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4fd580:	8b da                	mov    %edx,%ebx
4fd582:	89 45 fc             	mov    %eax,-0x4(%ebp)
4fd585:	8b 45 0c             	mov    0xc(%ebp),%eax
4fd588:	8b 7d f8             	mov    -0x8(%ebp),%edi
4fd58b:	03 f8                	add    %eax,%edi
4fd58d:	3b 7b 04             	cmp    0x4(%ebx),%edi