51418f:	cc                   	int3
514190:	56                   	push   %esi
514191:	8b 74 24 08          	mov    0x8(%esp),%esi
514195:	57                   	push   %edi
514196:	56                   	push   %esi
514197:	e8 34 bf fd ff       	call   0x4f00d0
51419c:	83 c4 04             	add    $0x4,%esp
51419f:	8b f8                	mov    %eax,%edi
5141a1:	57                   	push   %edi
5141a2:	56                   	push   %esi
5141a3:	e8 88 bf fd ff       	call   0x4f0130
5141a8:	83 c4 04             	add    $0x4,%esp
5141ab:	c1 e0 03             	shl    $0x3,%eax
5141ae:	50                   	push   %eax
5141af:	ff 74 24 18          	push   0x18(%esp)
5141b3:	e8 e8 3a f0 ff       	call   0x417ca0
5141b8:	83 c4 0c             	add    $0xc,%esp
5141bb:	85 c0                	test   %eax,%eax
5141bd:	79 23                	jns    0x5141e2
5141bf:	68 dd 00 00 00       	push   $0xdd
5141c4:	68 14 12 63 00       	push   $0x631214
5141c9:	68 9d 00 00 00       	push   $0x9d
5141ce:	68 9f 00 00 00       	push   $0x9f
5141d3:	6a 06                	push   $0x6
5141d5:	e8 a6 4d fc ff       	call   0x4d8f80
5141da:	83 c4 14             	add    $0x14,%esp
5141dd:	33 c0                	xor    %eax,%eax
5141df:	5f                   	pop    %edi
5141e0:	5e                   	pop    %esi
5141e1:	c3                   	ret
5141e2:	56                   	push   %esi
5141e3:	e8 d8 be fd ff       	call   0x4f00c0
5141e8:	50                   	push   %eax
5141e9:	e8 c2 c0 fd ff       	call   0x4f02b0
5141ee:	25 07 00 0f 00       	and    $0xf0007,%eax
5141f3:	83 c4 08             	add    $0x8,%esp
5141f6:	83 f8 01             	cmp    $0x1,%eax
5141f9:	74 05                	je     0x514200
5141fb:	83 f8 02             	cmp    $0x2,%eax
5141fe:	75 13                	jne    0x514213
514200:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
514205:	75 0c                	jne    0x514213
514207:	33 c9                	xor    %ecx,%ecx
514209:	83 f8 02             	cmp    $0x2,%eax
51420c:	b8 90 6f 41 00       	mov    $0x416f90,%eax
514211:	eb 0a                	jmp    0x51421d
514213:	33 c9                	xor    %ecx,%ecx
514215:	83 f8 02             	cmp    $0x2,%eax
514218:	b8 60 6b 41 00       	mov    $0x416b60,%eax
51421d:	ba 40 8d 41 00       	mov    $0x418d40,%edx
514222:	89 87 18 01 00 00    	mov    %eax,0x118(%edi)
514228:	0f 44 ca             	cmove  %edx,%ecx
51422b:	b8 01 00 00 00       	mov    $0x1,%eax
514230:	89 8f 1c 01 00 00    	mov    %ecx,0x11c(%edi)
514236:	5f                   	pop    %edi
514237:	5e                   	pop    %esi
514238:	c3                   	ret
514239:	cc                   	int3
51423a:	cc                   	int3
51423b:	cc                   	int3
51423c:	cc                   	int3
51423d:	cc                   	int3
51423e:	cc                   	int3
51423f:	cc                   	int3
514240:	56                   	push   %esi
514241:	8b 74 24 08          	mov    0x8(%esp),%esi
514245:	57                   	push   %edi
514246:	56                   	push   %esi
514247:	e8 84 be fd ff       	call   0x4f00d0
51424c:	83 c4 04             	add    $0x4,%esp
51424f:	8b f8                	mov    %eax,%edi
514251:	83 bf 1c 01 00 00 00 	cmpl   $0x0,0x11c(%edi)
514258:	56                   	push   %esi
514259:	74 33                	je     0x51428e
51425b:	e8 f0 2f fd ff       	call   0x4e7250
514260:	83 c4 04             	add    $0x4,%esp
514263:	50                   	push   %eax
514264:	56                   	push   %esi
514265:	e8 b6 be fd ff       	call   0x4f0120
51426a:	83 c4 04             	add    $0x4,%esp
51426d:	50                   	push   %eax
51426e:	8b 87 1c 01 00 00    	mov    0x11c(%edi),%eax
514274:	57                   	push   %edi
514275:	ff 74 24 24          	push   0x24(%esp)
514279:	ff 74 24 20          	push   0x20(%esp)
51427d:	ff 74 24 28          	push   0x28(%esp)
514281:	ff d0                	call   *%eax
514283:	83 c4 18             	add    $0x18,%esp
514286:	b8 01 00 00 00       	mov    $0x1,%eax
51428b:	5f                   	pop    %edi
51428c:	5e                   	pop    %esi
51428d:	c3                   	ret
51428e:	e8 bd 2f fd ff       	call   0x4e7250
514293:	8b 8f 18 01 00 00    	mov    0x118(%edi),%ecx
514299:	83 c4 04             	add    $0x4,%esp
51429c:	51                   	push   %ecx
51429d:	56                   	push   %esi
51429e:	85 c0                	test   %eax,%eax
5142a0:	74 26                	je     0x5142c8
5142a2:	e8 79 be fd ff       	call   0x4f0120
5142a7:	83 c4 04             	add    $0x4,%esp
5142aa:	50                   	push   %eax
5142ab:	57                   	push   %edi
5142ac:	ff 74 24 24          	push   0x24(%esp)
5142b0:	ff 74 24 20          	push   0x20(%esp)
5142b4:	ff 74 24 28          	push   0x28(%esp)
5142b8:	e8 d3 eb fd ff       	call   0x4f2e90
5142bd:	83 c4 18             	add    $0x18,%esp
5142c0:	b8 01 00 00 00       	mov    $0x1,%eax
5142c5:	5f                   	pop    %edi
5142c6:	5e                   	pop    %esi
5142c7:	c3                   	ret
5142c8:	e8 53 be fd ff       	call   0x4f0120
5142cd:	83 c4 04             	add    $0x4,%esp
5142d0:	50                   	push   %eax
5142d1:	57                   	push   %edi
5142d2:	ff 74 24 24          	push   0x24(%esp)
5142d6:	ff 74 24 20          	push   0x20(%esp)
5142da:	ff 74 24 28          	push   0x28(%esp)
5142de:	e8 ad e8 fd ff       	call   0x4f2b90
5142e3:	83 c4 18             	add    $0x18,%esp
5142e6:	b8 01 00 00 00       	mov    $0x1,%eax
5142eb:	5f                   	pop    %edi
5142ec:	5e                   	pop    %esi
5142ed:	c3                   	ret
5142ee:	cc                   	int3
5142ef:	cc                   	int3
5142f0:	b8 04 00 00 00       	mov    $0x4,%eax
5142f5:	e8 b6 d4 0b 00       	call   0x5d17b0
5142fa:	53                   	push   %ebx
5142fb:	55                   	push   %ebp
5142fc:	56                   	push   %esi
5142fd:	8b 74 24 14          	mov    0x14(%esp),%esi
514301:	56                   	push   %esi
514302:	e8 99 bd fd ff       	call   0x4f00a0
514307:	56                   	push   %esi
514308:	8b d8                	mov    %eax,%ebx
51430a:	e8 c1 bd fd ff       	call   0x4f00d0
51430f:	8b 6c 24 28          	mov    0x28(%esp),%ebp
514313:	83 c4 08             	add    $0x8,%esp
514316:	8b c8                	mov    %eax,%ecx
514318:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
51431c:	3b eb                	cmp    %ebx,%ebp
51431e:	72 34                	jb     0x514354
514320:	8b 44 24 18          	mov    0x18(%esp),%eax
514324:	2b eb                	sub    %ebx,%ebp
514326:	8b 74 24 1c          	mov    0x1c(%esp),%esi
51432a:	57                   	push   %edi
51432b:	33 ff                	xor    %edi,%edi
51432d:	2b c6                	sub    %esi,%eax
51432f:	89 44 24 1c          	mov    %eax,0x1c(%esp)
514333:	51                   	push   %ecx
514334:	03 c6                	add    %esi,%eax
514336:	50                   	push   %eax
514337:	8b 81 18 01 00 00    	mov    0x118(%ecx),%eax
51433d:	56                   	push   %esi
51433e:	ff d0                	call   *%eax
514340:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
514344:	03 fb                	add    %ebx,%edi
514346:	8b 44 24 28          	mov    0x28(%esp),%eax
51434a:	83 c4 0c             	add    $0xc,%esp
51434d:	03 f3                	add    %ebx,%esi
51434f:	3b fd                	cmp    %ebp,%edi
514351:	76 e0                	jbe    0x514333
514353:	5f                   	pop    %edi
514354:	5e                   	pop    %esi
514355:	5d                   	pop    %ebp
514356:	b8 01 00 00 00       	mov    $0x1,%eax
51435b:	5b                   	pop    %ebx
51435c:	59                   	pop    %ecx
51435d:	c3                   	ret
51435e:	cc                   	int3
51435f:	cc                   	int3
514360:	b8 04 00 00 00       	mov    $0x4,%eax
514365:	e8 46 d4 0b 00       	call   0x5d17b0
51436a:	56                   	push   %esi
51436b:	57                   	push   %edi
51436c:	8b 7c 24 10          	mov    0x10(%esp),%edi
514370:	57                   	push   %edi
514371:	e8 5a bd fd ff       	call   0x4f00d0
514376:	57                   	push   %edi
514377:	8b f0                	mov    %eax,%esi
514379:	e8 c2 bd fd ff       	call   0x4f0140
51437e:	83 c4 08             	add    $0x8,%esp
514381:	89 44 24 08          	mov    %eax,0x8(%esp)
514385:	8d 44 24 08          	lea    0x8(%esp),%eax
514389:	ff b6 18 01 00 00    	push   0x118(%esi)
51438f:	50                   	push   %eax
514390:	57                   	push   %edi
514391:	e8 8a bd fd ff       	call   0x4f0120
514396:	83 c4 04             	add    $0x4,%esp
514399:	50                   	push   %eax
51439a:	56                   	push   %esi
51439b:	ff 74 24 2c          	push   0x2c(%esp)
51439f:	ff 74 24 28          	push   0x28(%esp)
5143a3:	ff 74 24 30          	push   0x30(%esp)
5143a7:	e8 74 ef fd ff       	call   0x4f3320
5143ac:	ff 74 24 24          	push   0x24(%esp)
5143b0:	57                   	push   %edi
5143b1:	e8 aa bd fd ff       	call   0x4f0160
5143b6:	83 c4 24             	add    $0x24,%esp
5143b9:	b8 01 00 00 00       	mov    $0x1,%eax
5143be:	5f                   	pop    %edi
5143bf:	5e                   	pop    %esi
5143c0:	59                   	pop    %ecx
5143c1:	c3                   	ret
5143c2:	cc                   	int3
5143c3:	cc                   	int3
5143c4:	cc                   	int3
5143c5:	cc                   	int3
5143c6:	cc                   	int3
5143c7:	cc                   	int3
5143c8:	cc                   	int3
5143c9:	cc                   	int3
5143ca:	cc                   	int3
5143cb:	cc                   	int3
5143cc:	cc                   	int3
5143cd:	cc                   	int3
5143ce:	cc                   	int3
5143cf:	cc                   	int3
5143d0:	b8 04 00 00 00       	mov    $0x4,%eax
5143d5:	e8 d6 d3 0b 00       	call   0x5d17b0
5143da:	56                   	push   %esi
5143db:	57                   	push   %edi
5143dc:	8b 7c 24 10          	mov    0x10(%esp),%edi
5143e0:	57                   	push   %edi
5143e1:	e8 ea bc fd ff       	call   0x4f00d0
5143e6:	57                   	push   %edi
5143e7:	8b f0                	mov    %eax,%esi
5143e9:	e8 52 bd fd ff       	call   0x4f0140
5143ee:	83 c4 08             	add    $0x8,%esp
5143f1:	89 44 24 08          	mov    %eax,0x8(%esp)
5143f5:	ff b6 18 01 00 00    	push   0x118(%esi)
5143fb:	57                   	push   %edi
5143fc:	e8 4f 2e fd ff       	call   0x4e7250
514401:	83 c4 04             	add    $0x4,%esp
514404:	50                   	push   %eax
514405:	8d 44 24 10          	lea    0x10(%esp),%eax
514409:	50                   	push   %eax
51440a:	57                   	push   %edi
51440b:	e8 10 bd fd ff       	call   0x4f0120
514410:	83 c4 04             	add    $0x4,%esp
514413:	50                   	push   %eax
514414:	56                   	push   %esi
514415:	ff 74 24 30          	push   0x30(%esp)
514419:	ff 74 24 2c          	push   0x2c(%esp)
51441d:	ff 74 24 34          	push   0x34(%esp)
514421:	e8 4a f2 fd ff       	call   0x4f3670
514426:	ff 74 24 28          	push   0x28(%esp)
51442a:	57                   	push   %edi
51442b:	e8 30 bd fd ff       	call   0x4f0160
514430:	83 c4 28             	add    $0x28,%esp
514433:	b8 01 00 00 00       	mov    $0x1,%eax
514438:	5f                   	pop    %edi
514439:	5e                   	pop    %esi
51443a:	59                   	pop    %ecx
51443b:	c3                   	ret
51443c:	cc                   	int3
51443d:	cc                   	int3
51443e:	cc                   	int3
51443f:	cc                   	int3
514440:	b8 04 00 00 00       	mov    $0x4,%eax
514445:	e8 66 d3 0b 00       	call   0x5d17b0
51444a:	56                   	push   %esi
51444b:	57                   	push   %edi
51444c:	8b 7c 24 10          	mov    0x10(%esp),%edi
514450:	57                   	push   %edi
514451:	e8 7a bc fd ff       	call   0x4f00d0
514456:	57                   	push   %edi
514457:	8b f0                	mov    %eax,%esi
514459:	e8 e2 bc fd ff       	call   0x4f0140
51445e:	83 c4 08             	add    $0x8,%esp
514461:	89 44 24 08          	mov    %eax,0x8(%esp)
514465:	ff b6 18 01 00 00    	push   0x118(%esi)
51446b:	57                   	push   %edi
51446c:	e8 df 2d fd ff       	call   0x4e7250
514471:	83 c4 04             	add    $0x4,%esp
514474:	50                   	push   %eax
514475:	8d 44 24 10          	lea    0x10(%esp),%eax
514479:	50                   	push   %eax
51447a:	57                   	push   %edi
51447b:	e8 a0 bc fd ff       	call   0x4f0120
514480:	83 c4 04             	add    $0x4,%esp
514483:	50                   	push   %eax
514484:	56                   	push   %esi
514485:	ff 74 24 30          	push   0x30(%esp)
514489:	ff 74 24 2c          	push   0x2c(%esp)
51448d:	ff 74 24 34          	push   0x34(%esp)
514491:	e8 3a f1 fd ff       	call   0x4f35d0
514496:	ff 74 24 28          	push   0x28(%esp)
51449a:	57                   	push   %edi
51449b:	e8 c0 bc fd ff       	call   0x4f0160
5144a0:	83 c4 28             	add    $0x28,%esp
5144a3:	b8 01 00 00 00       	mov    $0x1,%eax
5144a8:	5f                   	pop    %edi
5144a9:	5e                   	pop    %esi
5144aa:	59                   	pop    %ecx
5144ab:	c3                   	ret
5144ac:	cc                   	int3
5144ad:	cc                   	int3
5144ae:	cc                   	int3
5144af:	cc                   	int3
5144b0:	b8 0c 00 00 00       	mov    $0xc,%eax
5144b5:	e8 f6 d2 0b 00       	call   0x5d17b0
5144ba:	53                   	push   %ebx
5144bb:	56                   	push   %esi
5144bc:	8b 74 24 18          	mov    0x18(%esp),%esi
5144c0:	56                   	push   %esi
5144c1:	e8 0a bc fd ff       	call   0x4f00d0
5144c6:	8b d8                	mov    %eax,%ebx
5144c8:	68 00 20 00 00       	push   $0x2000
5144cd:	56                   	push   %esi
5144ce:	89 5c 24 14          	mov    %ebx,0x14(%esp)
5144d2:	e8 99 bc fd ff       	call   0x4f0170
5144d7:	83 c4 0c             	add    $0xc,%esp
5144da:	85 c0                	test   %eax,%eax
5144dc:	74 56                	je     0x514534
5144de:	56                   	push   %esi
5144df:	e8 5c bc fd ff       	call   0x4f0140
5144e4:	83 c4 04             	add    $0x4,%esp
5144e7:	89 44 24 08          	mov    %eax,0x8(%esp)
5144eb:	ff b3 18 01 00 00    	push   0x118(%ebx)
5144f1:	56                   	push   %esi
5144f2:	e8 59 2d fd ff       	call   0x4e7250
5144f7:	83 c4 04             	add    $0x4,%esp
5144fa:	50                   	push   %eax
5144fb:	8d 44 24 10          	lea    0x10(%esp),%eax
5144ff:	50                   	push   %eax
514500:	56                   	push   %esi
514501:	e8 1a bc fd ff       	call   0x4f0120
514506:	83 c4 04             	add    $0x4,%esp
514509:	50                   	push   %eax
51450a:	53                   	push   %ebx
51450b:	ff 74 24 38          	push   0x38(%esp)
51450f:	ff 74 24 34          	push   0x34(%esp)
514513:	ff 74 24 3c          	push   0x3c(%esp)
514517:	e8 24 ef fd ff       	call   0x4f3440
51451c:	ff 74 24 28          	push   0x28(%esp)
514520:	56                   	push   %esi
514521:	e8 3a bc fd ff       	call   0x4f0160
514526:	83 c4 28             	add    $0x28,%esp
514529:	b8 01 00 00 00       	mov    $0x1,%eax
51452e:	5e                   	pop    %esi
51452f:	5b                   	pop    %ebx
514530:	83 c4 0c             	add    $0xc,%esp
514533:	c3                   	ret
514534:	8b 5c 24 20          	mov    0x20(%esp),%ebx
514538:	55                   	push   %ebp
514539:	8b 6c 24 20          	mov    0x20(%esp),%ebp
51453d:	57                   	push   %edi