4ad41e:	53                   	push   %ebx
4ad41f:	57                   	push   %edi
4ad420:	8b 1e                	mov    (%esi),%ebx
4ad422:	85 db                	test   %ebx,%ebx
4ad424:	74 41                	je     0x4ad467
4ad426:	8b 43 08             	mov    0x8(%ebx),%eax
4ad429:	8d 7b 08             	lea    0x8(%ebx),%edi
4ad42c:	8b cf                	mov    %edi,%ecx
4ad42e:	ff 70 04             	push   0x4(%eax)
4ad431:	57                   	push   %edi
4ad432:	e8 49 02 00 00       	call   0x4ad680
4ad437:	6a 20                	push   $0x20
4ad439:	ff 37                	push   (%edi)
4ad43b:	e8 15 3e 12 00       	call   0x5d1255
4ad440:	8b 03                	mov    (%ebx),%eax
4ad442:	83 c4 08             	add    $0x8,%esp
4ad445:	8b cb                	mov    %ebx,%ecx
4ad447:	ff 70 04             	push   0x4(%eax)
4ad44a:	53                   	push   %ebx
4ad44b:	e8 e0 01 00 00       	call   0x4ad630
4ad450:	6a 20                	push   $0x20
4ad452:	ff 33                	push   (%ebx)
4ad454:	e8 fc 3d 12 00       	call   0x5d1255
4ad459:	6a 10                	push   $0x10
4ad45b:	53                   	push   %ebx
4ad45c:	e8 f4 3d 12 00       	call   0x5d1255
4ad461:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad464:	83 c4 10             	add    $0x10,%esp
4ad467:	83 c6 04             	add    $0x4,%esi
4ad46a:	3b f0                	cmp    %eax,%esi
4ad46c:	75 b2                	jne    0x4ad420
4ad46e:	5f                   	pop    %edi
4ad46f:	5b                   	pop    %ebx
4ad470:	5e                   	pop    %esi
4ad471:	5d                   	pop    %ebp
4ad472:	c3                   	ret
4ad473:	cc                   	int3
4ad474:	cc                   	int3
4ad475:	cc                   	int3
4ad476:	cc                   	int3
4ad477:	cc                   	int3
4ad478:	cc                   	int3
4ad479:	cc                   	int3
4ad47a:	cc                   	int3
4ad47b:	cc                   	int3
4ad47c:	cc                   	int3
4ad47d:	cc                   	int3
4ad47e:	cc                   	int3
4ad47f:	cc                   	int3
4ad480:	55                   	push   %ebp
4ad481:	8b ec                	mov    %esp,%ebp
4ad483:	83 ec 08             	sub    $0x8,%esp
4ad486:	53                   	push   %ebx
4ad487:	56                   	push   %esi
4ad488:	8b 75 08             	mov    0x8(%ebp),%esi
4ad48b:	8b c6                	mov    %esi,%eax
4ad48d:	57                   	push   %edi
4ad48e:	8b f9                	mov    %ecx,%edi
4ad490:	8b 0f                	mov    (%edi),%ecx
4ad492:	2b c1                	sub    %ecx,%eax
4ad494:	c1 f8 02             	sar    $0x2,%eax
4ad497:	89 45 08             	mov    %eax,0x8(%ebp)
4ad49a:	8b 47 04             	mov    0x4(%edi),%eax
4ad49d:	2b c1                	sub    %ecx,%eax
4ad49f:	c1 f8 02             	sar    $0x2,%eax
4ad4a2:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
4ad4a7:	0f 84 77 01 00 00    	je     0x4ad624
4ad4ad:	8b 57 08             	mov    0x8(%edi),%edx
4ad4b0:	8d 58 01             	lea    0x1(%eax),%ebx
4ad4b3:	2b d1                	sub    %ecx,%edx
4ad4b5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4ad4b8:	c1 fa 02             	sar    $0x2,%edx
4ad4bb:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax
4ad4c0:	8b ca                	mov    %edx,%ecx
4ad4c2:	d1 e9                	shr    $1,%ecx
4ad4c4:	2b c1                	sub    %ecx,%eax
4ad4c6:	3b d0                	cmp    %eax,%edx
4ad4c8:	0f 87 51 01 00 00    	ja     0x4ad61f
4ad4ce:	8d 04 11             	lea    (%ecx,%edx,1),%eax
4ad4d1:	8b cb                	mov    %ebx,%ecx
4ad4d3:	3b c3                	cmp    %ebx,%eax
4ad4d5:	0f 43 c8             	cmovae %eax,%ecx
4ad4d8:	81 f9 ff ff ff 3f    	cmp    $0x3fffffff,%ecx
4ad4de:	0f 87 3b 01 00 00    	ja     0x4ad61f
4ad4e4:	c1 e1 02             	shl    $0x2,%ecx
4ad4e7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ad4ea:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4ad4f0:	72 27                	jb     0x4ad519
4ad4f2:	8d 41 23             	lea    0x23(%ecx),%eax
4ad4f5:	3b c1                	cmp    %ecx,%eax
4ad4f7:	0f 86 22 01 00 00    	jbe    0x4ad61f
4ad4fd:	50                   	push   %eax
4ad4fe:	e8 22 3d 12 00       	call   0x5d1225
4ad503:	83 c4 04             	add    $0x4,%esp
4ad506:	85 c0                	test   %eax,%eax
4ad508:	0f 84 1b 01 00 00    	je     0x4ad629
4ad50e:	8d 58 23             	lea    0x23(%eax),%ebx
4ad511:	83 e3 e0             	and    $0xffffffe0,%ebx
4ad514:	89 43 fc             	mov    %eax,-0x4(%ebx)
4ad517:	eb 13                	jmp    0x4ad52c
4ad519:	85 c9                	test   %ecx,%ecx
4ad51b:	74 0d                	je     0x4ad52a
4ad51d:	51                   	push   %ecx
4ad51e:	e8 02 3d 12 00       	call   0x5d1225
4ad523:	83 c4 04             	add    $0x4,%esp
4ad526:	8b d8                	mov    %eax,%ebx
4ad528:	eb 02                	jmp    0x4ad52c
4ad52a:	33 db                	xor    %ebx,%ebx
4ad52c:	8b 45 08             	mov    0x8(%ebp),%eax
4ad52f:	8b d3                	mov    %ebx,%edx
4ad531:	8d 0c 83             	lea    (%ebx,%eax,4),%ecx
4ad534:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad537:	89 4d 08             	mov    %ecx,0x8(%ebp)
4ad53a:	8b 00                	mov    (%eax),%eax
4ad53c:	89 01                	mov    %eax,(%ecx)
4ad53e:	8b 47 04             	mov    0x4(%edi),%eax
4ad541:	8b 0f                	mov    (%edi),%ecx
4ad543:	3b f0                	cmp    %eax,%esi
4ad545:	75 1f                	jne    0x4ad566
4ad547:	8b f0                	mov    %eax,%esi
4ad549:	3b ce                	cmp    %esi,%ecx
4ad54b:	74 67                	je     0x4ad5b4
4ad54d:	0f 1f 00             	nopl   (%eax)
4ad550:	8b 01                	mov    (%ecx),%eax
4ad552:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4ad558:	83 c1 04             	add    $0x4,%ecx
4ad55b:	89 02                	mov    %eax,(%edx)
4ad55d:	83 c2 04             	add    $0x4,%edx
4ad560:	3b ce                	cmp    %esi,%ecx
4ad562:	75 ec                	jne    0x4ad550
4ad564:	eb 4e                	jmp    0x4ad5b4
4ad566:	3b ce                	cmp    %esi,%ecx
4ad568:	74 1a                	je     0x4ad584
4ad56a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4ad570:	8b 01                	mov    (%ecx),%eax
4ad572:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4ad578:	83 c1 04             	add    $0x4,%ecx
4ad57b:	89 02                	mov    %eax,(%edx)
4ad57d:	83 c2 04             	add    $0x4,%edx
4ad580:	3b ce                	cmp    %esi,%ecx
4ad582:	75 ec                	jne    0x4ad570
4ad584:	57                   	push   %edi
4ad585:	52                   	push   %edx
4ad586:	52                   	push   %edx
4ad587:	e8 84 fe ff ff       	call   0x4ad410
4ad58c:	8b 55 08             	mov    0x8(%ebp),%edx
4ad58f:	83 c4 0c             	add    $0xc,%esp
4ad592:	8b 4f 04             	mov    0x4(%edi),%ecx
4ad595:	83 c2 04             	add    $0x4,%edx
4ad598:	3b f1                	cmp    %ecx,%esi
4ad59a:	74 18                	je     0x4ad5b4
4ad59c:	0f 1f 40 00          	nopl   0x0(%eax)
4ad5a0:	8b 06                	mov    (%esi),%eax
4ad5a2:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4ad5a8:	83 c6 04             	add    $0x4,%esi
4ad5ab:	89 02                	mov    %eax,(%edx)
4ad5ad:	83 c2 04             	add    $0x4,%edx
4ad5b0:	3b f1                	cmp    %ecx,%esi
4ad5b2:	75 ec                	jne    0x4ad5a0
4ad5b4:	57                   	push   %edi
4ad5b5:	52                   	push   %edx
4ad5b6:	52                   	push   %edx
4ad5b7:	e8 54 fe ff ff       	call   0x4ad410
4ad5bc:	8b 07                	mov    (%edi),%eax
4ad5be:	83 c4 0c             	add    $0xc,%esp
4ad5c1:	85 c0                	test   %eax,%eax
4ad5c3:	74 3b                	je     0x4ad600
4ad5c5:	57                   	push   %edi
4ad5c6:	ff 77 04             	push   0x4(%edi)
4ad5c9:	50                   	push   %eax
4ad5ca:	e8 41 fe ff ff       	call   0x4ad410
4ad5cf:	8b 4f 08             	mov    0x8(%edi),%ecx
4ad5d2:	83 c4 0c             	add    $0xc,%esp
4ad5d5:	8b 07                	mov    (%edi),%eax
4ad5d7:	2b c8                	sub    %eax,%ecx
4ad5d9:	83 e1 fc             	and    $0xfffffffc,%ecx
4ad5dc:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4ad5e2:	72 12                	jb     0x4ad5f6
4ad5e4:	8b 50 fc             	mov    -0x4(%eax),%edx
4ad5e7:	83 c1 23             	add    $0x23,%ecx
4ad5ea:	2b c2                	sub    %edx,%eax
4ad5ec:	83 c0 fc             	add    $0xfffffffc,%eax
4ad5ef:	83 f8 1f             	cmp    $0x1f,%eax
4ad5f2:	77 35                	ja     0x4ad629
4ad5f4:	8b c2                	mov    %edx,%eax
4ad5f6:	51                   	push   %ecx
4ad5f7:	50                   	push   %eax
4ad5f8:	e8 58 3c 12 00       	call   0x5d1255
4ad5fd:	83 c4 08             	add    $0x8,%esp
4ad600:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad603:	89 1f                	mov    %ebx,(%edi)
4ad605:	8d 0c 83             	lea    (%ebx,%eax,4),%ecx
4ad608:	8b 45 08             	mov    0x8(%ebp),%eax
4ad60b:	89 4f 04             	mov    %ecx,0x4(%edi)
4ad60e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ad611:	03 cb                	add    %ebx,%ecx
4ad613:	89 4f 08             	mov    %ecx,0x8(%edi)
4ad616:	5f                   	pop    %edi
4ad617:	5e                   	pop    %esi
4ad618:	5b                   	pop    %ebx
4ad619:	8b e5                	mov    %ebp,%esp
4ad61b:	5d                   	pop    %ebp
4ad61c:	c2 08 00             	ret    $0x8
4ad61f:	e8 cc 9f f9 ff       	call   0x4475f0
4ad624:	e8 77 f1 fa ff       	call   0x45c7a0
4ad629:	e8 c2 8b 12 00       	call   0x5d61f0
4ad62e:	cc                   	int3
4ad62f:	cc                   	int3
4ad630:	55                   	push   %ebp
4ad631:	8b ec                	mov    %esp,%ebp
4ad633:	51                   	push   %ecx
4ad634:	56                   	push   %esi
4ad635:	8b 75 0c             	mov    0xc(%ebp),%esi
4ad638:	8b c1                	mov    %ecx,%eax
4ad63a:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ad63d:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
4ad641:	75 34                	jne    0x4ad677
4ad643:	53                   	push   %ebx
4ad644:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad647:	57                   	push   %edi
4ad648:	ff 76 08             	push   0x8(%esi)
4ad64b:	8b c8                	mov    %eax,%ecx
4ad64d:	53                   	push   %ebx
4ad64e:	e8 dd ff ff ff       	call   0x4ad630
4ad653:	8b fe                	mov    %esi,%edi
4ad655:	8b 36                	mov    (%esi),%esi
4ad657:	8d 47 10             	lea    0x10(%edi),%eax
4ad65a:	50                   	push   %eax
4ad65b:	53                   	push   %ebx
4ad65c:	e8 4f 11 00 00       	call   0x4ae7b0
4ad661:	6a 20                	push   $0x20
4ad663:	57                   	push   %edi
4ad664:	e8 ec 3b 12 00       	call   0x5d1255
4ad669:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad66c:	83 c4 10             	add    $0x10,%esp
4ad66f:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
4ad673:	74 d3                	je     0x4ad648
4ad675:	5f                   	pop    %edi
4ad676:	5b                   	pop    %ebx
4ad677:	5e                   	pop    %esi
4ad678:	8b e5                	mov    %ebp,%esp
4ad67a:	5d                   	pop    %ebp
4ad67b:	c2 08 00             	ret    $0x8
4ad67e:	cc                   	int3
4ad67f:	cc                   	int3
4ad680:	55                   	push   %ebp
4ad681:	8b ec                	mov    %esp,%ebp
4ad683:	51                   	push   %ecx
4ad684:	56                   	push   %esi
4ad685:	8b 75 0c             	mov    0xc(%ebp),%esi
4ad688:	8b c1                	mov    %ecx,%eax
4ad68a:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ad68d:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
4ad691:	75 32                	jne    0x4ad6c5
4ad693:	53                   	push   %ebx
4ad694:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad697:	57                   	push   %edi
4ad698:	ff 76 08             	push   0x8(%esi)
4ad69b:	8b c8                	mov    %eax,%ecx
4ad69d:	53                   	push   %ebx
4ad69e:	e8 dd ff ff ff       	call   0x4ad680
4ad6a3:	8b fe                	mov    %esi,%edi
4ad6a5:	8b 36                	mov    (%esi),%esi
4ad6a7:	8d 4f 14             	lea    0x14(%edi),%ecx
4ad6aa:	e8 61 1a 00 00       	call   0x4af110
4ad6af:	6a 20                	push   $0x20
4ad6b1:	57                   	push   %edi
4ad6b2:	e8 9e 3b 12 00       	call   0x5d1255
4ad6b7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad6ba:	83 c4 08             	add    $0x8,%esp
4ad6bd:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
4ad6c1:	74 d5                	je     0x4ad698
4ad6c3:	5f                   	pop    %edi
4ad6c4:	5b                   	pop    %ebx
4ad6c5:	5e                   	pop    %esi
4ad6c6:	8b e5                	mov    %ebp,%esp
4ad6c8:	5d                   	pop    %ebp
4ad6c9:	c2 08 00             	ret    $0x8
4ad6cc:	cc                   	int3
4ad6cd:	cc                   	int3
4ad6ce:	cc                   	int3
4ad6cf:	cc                   	int3
4ad6d0:	55                   	push   %ebp
4ad6d1:	8b ec                	mov    %esp,%ebp
4ad6d3:	6a ff                	push   $0xffffffff
4ad6d5:	68 e5 97 5f 00       	push   $0x5f97e5
4ad6da:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4ad6e0:	50                   	push   %eax
4ad6e1:	81 ec 88 00 00 00    	sub    $0x88,%esp
4ad6e7:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4ad6ec:	33 c5                	xor    %ebp,%eax
4ad6ee:	89 45 f0             	mov    %eax,-0x10(%ebp)
4ad6f1:	53                   	push   %ebx
4ad6f2:	56                   	push   %esi
4ad6f3:	57                   	push   %edi
4ad6f4:	50                   	push   %eax
4ad6f5:	8d 45 f4             	lea    -0xc(%ebp),%eax
4ad6f8:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4ad6fe:	83 7d 10 20          	cmpl   $0x20,0x10(%ebp)
4ad702:	8b 7d 08             	mov    0x8(%ebp),%edi
4ad705:	89 bd 78 ff ff ff    	mov    %edi,-0x88(%ebp)
4ad70b:	0f 8e 62 01 00 00    	jle    0x4ad873
4ad711:	8b 45 14             	mov    0x14(%ebp),%eax
4ad714:	8d 8f 80 00 00 00    	lea    0x80(%edi),%ecx
4ad71a:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
4ad720:	89 45 84             	mov    %eax,-0x7c(%ebp)
4ad723:	3b f9                	cmp    %ecx,%edi
4ad725:	0f 84 2e 01 00 00    	je     0x4ad859
4ad72b:	8d 77 04             	lea    0x4(%edi),%esi
4ad72e:	89 b5 7c ff ff ff    	mov    %esi,-0x84(%ebp)
4ad734:	3b f1                	cmp    %ecx,%esi
4ad736:	0f 84 1d 01 00 00    	je     0x4ad859
4ad73c:	0f 1f 40 00          	nopl   0x0(%eax)
4ad740:	ff 37                	push   (%edi)
4ad742:	8b 1e                	mov    (%esi),%ebx
4ad744:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
4ad747:	53                   	push   %ebx
4ad748:	89 75 88             	mov    %esi,-0x78(%ebp)
4ad74b:	89 5d 80             	mov    %ebx,-0x80(%ebp)
4ad74e:	e8 cd 1a 00 00       	call   0x4af220
4ad753:	84 c0                	test   %al,%al
4ad755:	74 1d                	je     0x4ad774
4ad757:	8b ce                	mov    %esi,%ecx
4ad759:	8b c6                	mov    %esi,%eax
4ad75b:	2b cf                	sub    %edi,%ecx
4ad75d:	51                   	push   %ecx
4ad75e:	2b c1                	sub    %ecx,%eax
4ad760:	83 c0 04             	add    $0x4,%eax
4ad763:	57                   	push   %edi
4ad764:	50                   	push   %eax
4ad765:	e8 66 56 12 00       	call   0x5d2dd0
4ad76a:	83 c4 0c             	add    $0xc,%esp
4ad76d:	89 1f                	mov    %ebx,(%edi)
4ad76f:	e9 ce 00 00 00       	jmp    0x4ad842
4ad774:	8b fe                	mov    %esi,%edi
4ad776:	8b 75 84             	mov    -0x7c(%ebp),%esi
4ad779:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4ad780:	8b 47 fc             	mov    -0x4(%edi),%eax
4ad783:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
4ad789:	83 ef 04             	sub    $0x4,%edi
4ad78c:	89 45 94             	mov    %eax,-0x6c(%ebp)
4ad78f:	8b 03                	mov    (%ebx),%eax
4ad791:	51                   	push   %ecx
4ad792:	8b cb                	mov    %ebx,%ecx
4ad794:	ff 50 48             	call   *0x48(%eax)
4ad797:	8b ce                	mov    %esi,%ecx
4ad799:	8b 40 04             	mov    0x4(%eax),%eax
4ad79c:	89 45 98             	mov    %eax,-0x68(%ebp)
4ad79f:	e8 fc b9 fa ff       	call   0x4591a0
4ad7a4:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax