4e52e9:	56                   	push   %esi
4e52ea:	57                   	push   %edi
4e52eb:	8b 7c 24 0c          	mov    0xc(%esp),%edi
4e52ef:	8b 0f                	mov    (%edi),%ecx
4e52f1:	2b c1                	sub    %ecx,%eax
4e52f3:	3b d0                	cmp    %eax,%edx
4e52f5:	7f 53                	jg     0x4e534a
4e52f7:	8d 34 11             	lea    (%ecx,%edx,1),%esi
4e52fa:	b8 04 00 00 00       	mov    $0x4,%eax
4e52ff:	3b f0                	cmp    %eax,%esi
4e5301:	0f 4c f0             	cmovl  %eax,%esi
4e5304:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
4e5308:	75 45                	jne    0x4e534f
4e530a:	68 b4 00 00 00       	push   $0xb4
4e530f:	8d 04 b5 00 00 00 00 	lea    0x0(,%esi,4),%eax
4e5316:	68 d8 3f 61 00       	push   $0x613fd8
4e531b:	50                   	push   %eax
4e531c:	e8 1f b7 ff ff       	call   0x4e0a40
4e5321:	83 c4 0c             	add    $0xc,%esp
4e5324:	89 47 04             	mov    %eax,0x4(%edi)
4e5327:	85 c0                	test   %eax,%eax
4e5329:	0f 85 88 00 00 00    	jne    0x4e53b7
4e532f:	68 b5 00 00 00       	push   $0xb5
4e5334:	68 d8 3f 61 00       	push   $0x613fd8
4e5339:	6a 41                	push   $0x41
4e533b:	68 81 00 00 00       	push   $0x81
4e5340:	6a 0f                	push   $0xf
4e5342:	e8 39 3c ff ff       	call   0x4d8f80
4e5347:	83 c4 14             	add    $0x14,%esp
4e534a:	5f                   	pop    %edi
4e534b:	33 c0                	xor    %eax,%eax
4e534d:	5e                   	pop    %esi
4e534e:	c3                   	ret
4e534f:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
4e5354:	8b 4f 0c             	mov    0xc(%edi),%ecx
4e5357:	75 36                	jne    0x4e538f
4e5359:	3b f1                	cmp    %ecx,%esi
4e535b:	7e 5d                	jle    0x4e53ba
4e535d:	0f 1f 00             	nopl   (%eax)
4e5360:	81 f9 ff ff ff 3f    	cmp    $0x3fffffff,%ecx
4e5366:	7d e2                	jge    0x4e534a
4e5368:	81 f9 aa aa aa 2a    	cmp    $0x2aaaaaaa,%ecx
4e536e:	7d 0b                	jge    0x4e537b
4e5370:	8b c1                	mov    %ecx,%eax
4e5372:	99                   	cltd
4e5373:	2b c2                	sub    %edx,%eax
4e5375:	d1 f8                	sar    $1,%eax
4e5377:	03 c8                	add    %eax,%ecx
4e5379:	eb 05                	jmp    0x4e5380
4e537b:	b9 ff ff ff 3f       	mov    $0x3fffffff,%ecx
4e5380:	3b ce                	cmp    %esi,%ecx
4e5382:	7c dc                	jl     0x4e5360
4e5384:	8b f1                	mov    %ecx,%esi
4e5386:	85 c9                	test   %ecx,%ecx
4e5388:	75 09                	jne    0x4e5393
4e538a:	5f                   	pop    %edi
4e538b:	33 c0                	xor    %eax,%eax
4e538d:	5e                   	pop    %esi
4e538e:	c3                   	ret
4e538f:	3b f1                	cmp    %ecx,%esi
4e5391:	74 27                	je     0x4e53ba
4e5393:	68 c6 00 00 00       	push   $0xc6
4e5398:	68 d8 3f 61 00       	push   $0x613fd8
4e539d:	8d 04 b5 00 00 00 00 	lea    0x0(,%esi,4),%eax
4e53a4:	50                   	push   %eax
4e53a5:	ff 77 04             	push   0x4(%edi)
4e53a8:	e8 f3 b3 ff ff       	call   0x4e07a0
4e53ad:	83 c4 10             	add    $0x10,%esp
4e53b0:	85 c0                	test   %eax,%eax
4e53b2:	74 96                	je     0x4e534a
4e53b4:	89 47 04             	mov    %eax,0x4(%edi)
4e53b7:	89 77 0c             	mov    %esi,0xc(%edi)
4e53ba:	5f                   	pop    %edi
4e53bb:	b8 01 00 00 00       	mov    $0x1,%eax
4e53c0:	5e                   	pop    %esi
4e53c1:	c3                   	ret
4e53c2:	cc                   	int3
4e53c3:	cc                   	int3
4e53c4:	cc                   	int3
4e53c5:	cc                   	int3
4e53c6:	cc                   	int3
4e53c7:	cc                   	int3
4e53c8:	cc                   	int3
4e53c9:	cc                   	int3
4e53ca:	cc                   	int3
4e53cb:	cc                   	int3
4e53cc:	cc                   	int3
4e53cd:	cc                   	int3
4e53ce:	cc                   	int3
4e53cf:	cc                   	int3
4e53d0:	56                   	push   %esi
4e53d1:	8b 74 24 10          	mov    0x10(%esp),%esi
4e53d5:	83 3e 00             	cmpl   $0x0,(%esi)
4e53d8:	0f 84 0d 01 00 00    	je     0x4e54eb
4e53de:	8b 4e 04             	mov    0x4(%esi),%ecx
4e53e1:	85 c9                	test   %ecx,%ecx
4e53e3:	0f 84 02 01 00 00    	je     0x4e54eb
4e53e9:	8b 46 14             	mov    0x14(%esi),%eax
4e53ec:	57                   	push   %edi
4e53ed:	8b 7c 24 18          	mov    0x18(%esp),%edi
4e53f1:	83 f8 ff             	cmp    $0xffffffff,%eax
4e53f4:	75 0c                	jne    0x4e5402
4e53f6:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
4e53fd:	e9 9a 00 00 00       	jmp    0x4e549c
4e5402:	40                   	inc    %eax
4e5403:	53                   	push   %ebx
4e5404:	33 db                	xor    %ebx,%ebx
4e5406:	89 46 14             	mov    %eax,0x14(%esi)
4e5409:	83 f8 20             	cmp    $0x20,%eax
4e540c:	75 1b                	jne    0x4e5429
4e540e:	39 5e 08             	cmp    %ebx,0x8(%esi)
4e5411:	74 16                	je     0x4e5429
4e5413:	f6 46 18 02          	testb  $0x2,0x18(%esi)
4e5417:	75 10                	jne    0x4e5429
4e5419:	53                   	push   %ebx
4e541a:	53                   	push   %ebx
4e541b:	57                   	push   %edi
4e541c:	53                   	push   %ebx
4e541d:	53                   	push   %ebx
4e541e:	56                   	push   %esi
4e541f:	e8 ec 00 00 00       	call   0x4e5510
4e5424:	83 c4 18             	add    $0x18,%esp
4e5427:	eb 58                	jmp    0x4e5481
4e5429:	f6 46 18 01          	testb  $0x1,0x18(%esi)
4e542d:	75 56                	jne    0x4e5485
4e542f:	8b 46 1c             	mov    0x1c(%esi),%eax
4e5432:	57                   	push   %edi
4e5433:	85 c0                	test   %eax,%eax
4e5435:	74 27                	je     0x4e545e
4e5437:	50                   	push   %eax
4e5438:	51                   	push   %ecx
4e5439:	51                   	push   %ecx
4e543a:	51                   	push   %ecx
4e543b:	e8 b0 f6 ff ff       	call   0x4e4af0
4e5440:	83 c4 14             	add    $0x14,%esp
4e5443:	85 c0                	test   %eax,%eax
4e5445:	74 43                	je     0x4e548a
4e5447:	8b 06                	mov    (%esi),%eax
4e5449:	57                   	push   %edi
4e544a:	ff 76 1c             	push   0x1c(%esi)
4e544d:	50                   	push   %eax
4e544e:	50                   	push   %eax
4e544f:	50                   	push   %eax
4e5450:	e8 9b f6 ff ff       	call   0x4e4af0
4e5455:	83 c4 14             	add    $0x14,%esp
4e5458:	85 c0                	test   %eax,%eax
4e545a:	75 29                	jne    0x4e5485
4e545c:	eb 2c                	jmp    0x4e548a
4e545e:	ff 76 0c             	push   0xc(%esi)
4e5461:	51                   	push   %ecx
4e5462:	51                   	push   %ecx
4e5463:	51                   	push   %ecx
4e5464:	e8 e7 81 01 00       	call   0x4fd650
4e5469:	83 c4 14             	add    $0x14,%esp
4e546c:	85 c0                	test   %eax,%eax
4e546e:	74 1a                	je     0x4e548a
4e5470:	8b 06                	mov    (%esi),%eax
4e5472:	57                   	push   %edi
4e5473:	ff 76 0c             	push   0xc(%esi)
4e5476:	50                   	push   %eax
4e5477:	50                   	push   %eax
4e5478:	50                   	push   %eax
4e5479:	e8 d2 81 01 00       	call   0x4fd650
4e547e:	83 c4 14             	add    $0x14,%esp
4e5481:	85 c0                	test   %eax,%eax
4e5483:	74 05                	je     0x4e548a
4e5485:	bb 01 00 00 00       	mov    $0x1,%ebx
4e548a:	83 7e 14 20          	cmpl   $0x20,0x14(%esi)
4e548e:	75 07                	jne    0x4e5497
4e5490:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
4e5497:	85 db                	test   %ebx,%ebx
4e5499:	5b                   	pop    %ebx
4e549a:	74 4a                	je     0x4e54e6
4e549c:	8b 44 24 10          	mov    0x10(%esp),%eax
4e54a0:	85 c0                	test   %eax,%eax
4e54a2:	74 10                	je     0x4e54b4
4e54a4:	ff 76 04             	push   0x4(%esi)
4e54a7:	50                   	push   %eax
4e54a8:	e8 33 46 ff ff       	call   0x4d9ae0
4e54ad:	83 c4 08             	add    $0x8,%esp
4e54b0:	85 c0                	test   %eax,%eax
4e54b2:	74 32                	je     0x4e54e6
4e54b4:	8b 46 1c             	mov    0x1c(%esi),%eax
4e54b7:	8b 0e                	mov    (%esi),%ecx
4e54b9:	57                   	push   %edi
4e54ba:	85 c0                	test   %eax,%eax
4e54bc:	74 13                	je     0x4e54d1
4e54be:	50                   	push   %eax
4e54bf:	8b 44 24 14          	mov    0x14(%esp),%eax
4e54c3:	51                   	push   %ecx
4e54c4:	50                   	push   %eax
4e54c5:	50                   	push   %eax
4e54c6:	e8 05 f2 ff ff       	call   0x4e46d0
4e54cb:	83 c4 14             	add    $0x14,%esp
4e54ce:	5f                   	pop    %edi
4e54cf:	5e                   	pop    %esi
4e54d0:	c3                   	ret
4e54d1:	ff 76 0c             	push   0xc(%esi)
4e54d4:	8b 44 24 14          	mov    0x14(%esp),%eax
4e54d8:	51                   	push   %ecx
4e54d9:	50                   	push   %eax
4e54da:	50                   	push   %eax
4e54db:	e8 70 81 01 00       	call   0x4fd650
4e54e0:	83 c4 14             	add    $0x14,%esp
4e54e3:	5f                   	pop    %edi
4e54e4:	5e                   	pop    %esi
4e54e5:	c3                   	ret
4e54e6:	5f                   	pop    %edi
4e54e7:	33 c0                	xor    %eax,%eax
4e54e9:	5e                   	pop    %esi
4e54ea:	c3                   	ret
4e54eb:	68 8d 00 00 00       	push   $0x8d
4e54f0:	68 f0 3f 61 00       	push   $0x613ff0
4e54f5:	6a 6b                	push   $0x6b
4e54f7:	6a 64                	push   $0x64
4e54f9:	6a 03                	push   $0x3
4e54fb:	e8 80 3a ff ff       	call   0x4d8f80
4e5500:	83 c4 14             	add    $0x14,%esp
4e5503:	33 c0                	xor    %eax,%eax
4e5505:	5e                   	pop    %esi
4e5506:	c3                   	ret
4e5507:	cc                   	int3
4e5508:	cc                   	int3
4e5509:	cc                   	int3
4e550a:	cc                   	int3
4e550b:	cc                   	int3
4e550c:	cc                   	int3
4e550d:	cc                   	int3
4e550e:	cc                   	int3
4e550f:	cc                   	int3
4e5510:	53                   	push   %ebx
4e5511:	55                   	push   %ebp
4e5512:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
4e5516:	56                   	push   %esi
4e5517:	57                   	push   %edi
4e5518:	bf 20 00 00 00       	mov    $0x20,%edi
4e551d:	85 ed                	test   %ebp,%ebp
4e551f:	0f 85 9d 00 00 00    	jne    0x4e55c2
4e5525:	6a 24                	push   $0x24
4e5527:	68 f0 3f 61 00       	push   $0x613ff0
4e552c:	6a 28                	push   $0x28
4e552e:	e8 0d b5 ff ff       	call   0x4e0a40
4e5533:	8b f0                	mov    %eax,%esi
4e5535:	83 c4 0c             	add    $0xc,%esp
4e5538:	85 f6                	test   %esi,%esi
4e553a:	75 1c                	jne    0x4e5558
4e553c:	6a 25                	push   $0x25
4e553e:	68 f0 3f 61 00       	push   $0x613ff0
4e5543:	6a 41                	push   $0x41
4e5545:	6a 66                	push   $0x66
4e5547:	6a 03                	push   $0x3
4e5549:	e8 32 3a ff ff       	call   0x4d8f80
4e554e:	83 c4 14             	add    $0x14,%esp
4e5551:	8b c6                	mov    %esi,%eax
4e5553:	5f                   	pop    %edi
4e5554:	5e                   	pop    %esi
4e5555:	5d                   	pop    %ebp
4e5556:	5b                   	pop    %ebx
4e5557:	c3                   	ret
4e5558:	e8 23 ca ff ff       	call   0x4e1f80
4e555d:	89 46 24             	mov    %eax,0x24(%esi)
4e5560:	85 c0                	test   %eax,%eax
4e5562:	75 19                	jne    0x4e557d
4e5564:	6a 2b                	push   $0x2b
4e5566:	68 f0 3f 61 00       	push   $0x613ff0
4e556b:	6a 41                	push   $0x41
4e556d:	6a 66                	push   $0x66
4e556f:	6a 03                	push   $0x3
4e5571:	e8 0a 3a ff ff       	call   0x4d8f80
4e5576:	6a 2c                	push   $0x2c
4e5578:	e9 bb 01 00 00       	jmp    0x4e5738
4e557d:	e8 6e c9 ff ff       	call   0x4e1ef0
4e5582:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
4e5586:	53                   	push   %ebx
4e5587:	89 46 10             	mov    %eax,0x10(%esi)
4e558a:	e8 c1 45 ff ff       	call   0x4d9b50
4e558f:	83 c4 04             	add    $0x4,%esp
4e5592:	89 46 0c             	mov    %eax,0xc(%esi)
4e5595:	85 c0                	test   %eax,%eax
4e5597:	0f 84 72 01 00 00    	je     0x4e570f
4e559d:	6a 04                	push   $0x4
4e559f:	53                   	push   %ebx
4e55a0:	e8 db 46 ff ff       	call   0x4d9c80
4e55a5:	83 c4 08             	add    $0x8,%esp
4e55a8:	85 c0                	test   %eax,%eax
4e55aa:	74 0d                	je     0x4e55b9
4e55ac:	6a 04                	push   $0x4
4e55ae:	ff 76 0c             	push   0xc(%esi)
4e55b1:	e8 ea 4a ff ff       	call   0x4da0a0
4e55b6:	83 c4 08             	add    $0x8,%esp
4e55b9:	c7 46 14 ff ff ff ff 	movl   $0xffffffff,0x14(%esi)
4e55c0:	eb 02                	jmp    0x4e55c4
4e55c2:	8b f5                	mov    %ebp,%esi
4e55c4:	83 3e 00             	cmpl   $0x0,(%esi)
4e55c7:	75 0f                	jne    0x4e55d8
4e55c9:	e8 12 48 ff ff       	call   0x4d9de0
4e55ce:	89 06                	mov    %eax,(%esi)
4e55d0:	85 c0                	test   %eax,%eax
4e55d2:	0f 84 2f 01 00 00    	je     0x4e5707
4e55d8:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
4e55dc:	75 10                	jne    0x4e55ee
4e55de:	e8 fd 47 ff ff       	call   0x4d9de0
4e55e3:	89 46 04             	mov    %eax,0x4(%esi)
4e55e6:	85 c0                	test   %eax,%eax
4e55e8:	0f 84 19 01 00 00    	je     0x4e5707
4e55ee:	8b 5c 24 18          	mov    0x18(%esp),%ebx
4e55f2:	85 db                	test   %ebx,%ebx
4e55f4:	74 14                	je     0x4e560a
4e55f6:	ff 76 08             	push   0x8(%esi)
4e55f9:	e8 22 46 ff ff       	call   0x4d9c20
4e55fe:	53                   	push   %ebx
4e55ff:	e8 4c 45 ff ff       	call   0x4d9b50
4e5604:	83 c4 08             	add    $0x8,%esp
4e5607:	89 46 08             	mov    %eax,0x8(%esi)
4e560a:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4e560e:	0f 84 f3 00 00 00    	je     0x4e5707
4e5614:	8b 44 24 24          	mov    0x24(%esp),%eax
4e5618:	85 c0                	test   %eax,%eax
4e561a:	74 03                	je     0x4e561f
4e561c:	89 46 20             	mov    %eax,0x20(%esi)
4e561f:	8b 44 24 28          	mov    0x28(%esp),%eax
4e5623:	85 c0                	test   %eax,%eax
4e5625:	74 03                	je     0x4e562a
4e5627:	89 46 1c             	mov    %eax,0x1c(%esi)
4e562a:	ff 76 0c             	push   0xc(%esi)
4e562d:	ff 36                	push   (%esi)
4e562f:	e8 fc 7a 01 00       	call   0x4fd130
4e5634:	83 c4 08             	add    $0x8,%esp
4e5637:	85 c0                	test   %eax,%eax
4e5639:	0f 84 c8 00 00 00    	je     0x4e5707
4e563f:	8b 5c 24 20          	mov    0x20(%esp),%ebx
4e5643:	8d 44 24 14          	lea    0x14(%esp),%eax
4e5647:	50                   	push   %eax
4e5648:	53                   	push   %ebx
4e5649:	ff 76 0c             	push   0xc(%esi)
4e564c:	ff 36                	push   (%esi)
4e564e:	ff 76 04             	push   0x4(%esi)
4e5651:	e8 fa 3c 00 00       	call   0x4e9350
4e5656:	83 c4 14             	add    $0x14,%esp
4e5659:	85 c0                	test   %eax,%eax
4e565b:	75 44                	jne    0x4e56a1
4e565d:	39 44 24 14          	cmp    %eax,0x14(%esp)
4e5661:	0f 84 a0 00 00 00    	je     0x4e5707
4e5667:	8b c7                	mov    %edi,%eax
4e5669:	4f                   	dec    %edi
4e566a:	85 c0                	test   %eax,%eax
4e566c:	74 16                	je     0x4e5684
4e566e:	ff 76 0c             	push   0xc(%esi)
4e5671:	ff 36                	push   (%esi)
4e5673:	e8 b8 7a 01 00       	call   0x4fd130