45861b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45861e:	51                   	push   %ecx
45861f:	56                   	push   %esi
458620:	ff 75 a4             	push   -0x5c(%ebp)
458623:	8b cb                	mov    %ebx,%ecx
458625:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
458629:	ff 50 08             	call   *0x8(%eax)
45862c:	50                   	push   %eax
45862d:	8d 4d c0             	lea    -0x40(%ebp),%ecx
458630:	e8 eb e0 ff ff       	call   0x456720
458635:	8b 55 ec             	mov    -0x14(%ebp),%edx
458638:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
45863c:	83 fa 10             	cmp    $0x10,%edx
45863f:	72 2c                	jb     0x45866d
458641:	8b 4d d8             	mov    -0x28(%ebp),%ecx
458644:	42                   	inc    %edx
458645:	8b c1                	mov    %ecx,%eax
458647:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45864d:	72 14                	jb     0x458663
45864f:	8b 49 fc             	mov    -0x4(%ecx),%ecx
458652:	83 c2 23             	add    $0x23,%edx
458655:	2b c1                	sub    %ecx,%eax
458657:	83 c0 fc             	add    $0xfffffffc,%eax
45865a:	83 f8 1f             	cmp    $0x1f,%eax
45865d:	0f 87 53 01 00 00    	ja     0x4587b6
458663:	52                   	push   %edx
458664:	51                   	push   %ecx
458665:	e8 eb 8b 17 00       	call   0x5d1255
45866a:	83 c4 08             	add    $0x8,%esp
45866d:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
458674:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
45867b:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
45867f:	8d 45 c0             	lea    -0x40(%ebp),%eax
458682:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
458686:	50                   	push   %eax
458687:	8d 4d a8             	lea    -0x58(%ebp),%ecx
45868a:	e8 91 e0 ff ff       	call   0x456720
45868f:	8b 4d a0             	mov    -0x60(%ebp),%ecx
458692:	8d 55 a8             	lea    -0x58(%ebp),%edx
458695:	52                   	push   %edx
458696:	57                   	push   %edi
458697:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
45869b:	8b 01                	mov    (%ecx),%eax
45869d:	ff 50 14             	call   *0x14(%eax)
4586a0:	8b 55 bc             	mov    -0x44(%ebp),%edx
4586a3:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4586a7:	83 fa 10             	cmp    $0x10,%edx
4586aa:	72 2c                	jb     0x4586d8
4586ac:	8b 4d a8             	mov    -0x58(%ebp),%ecx
4586af:	42                   	inc    %edx
4586b0:	8b c1                	mov    %ecx,%eax
4586b2:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4586b8:	72 14                	jb     0x4586ce
4586ba:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4586bd:	83 c2 23             	add    $0x23,%edx
4586c0:	2b c1                	sub    %ecx,%eax
4586c2:	83 c0 fc             	add    $0xfffffffc,%eax
4586c5:	83 f8 1f             	cmp    $0x1f,%eax
4586c8:	0f 87 e8 00 00 00    	ja     0x4587b6
4586ce:	52                   	push   %edx
4586cf:	51                   	push   %ecx
4586d0:	e8 80 8b 17 00       	call   0x5d1255
4586d5:	83 c4 08             	add    $0x8,%esp
4586d8:	8b 55 d4             	mov    -0x2c(%ebp),%edx
4586db:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4586df:	83 fa 10             	cmp    $0x10,%edx
4586e2:	72 2c                	jb     0x458710
4586e4:	8b 4d c0             	mov    -0x40(%ebp),%ecx
4586e7:	42                   	inc    %edx
4586e8:	8b c1                	mov    %ecx,%eax
4586ea:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4586f0:	72 14                	jb     0x458706
4586f2:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4586f5:	83 c2 23             	add    $0x23,%edx
4586f8:	2b c1                	sub    %ecx,%eax
4586fa:	83 c0 fc             	add    $0xfffffffc,%eax
4586fd:	83 f8 1f             	cmp    $0x1f,%eax
458700:	0f 87 b0 00 00 00    	ja     0x4587b6
458706:	52                   	push   %edx
458707:	51                   	push   %ecx
458708:	e8 48 8b 17 00       	call   0x5d1255
45870d:	83 c4 08             	add    $0x8,%esp
458710:	46                   	inc    %esi
458711:	3b 75 9c             	cmp    -0x64(%ebp),%esi
458714:	0f 8c e6 fe ff ff    	jl     0x458600
45871a:	8b cf                	mov    %edi,%ecx
45871c:	e8 9f 58 00 00       	call   0x45dfc0
458721:	8b 13                	mov    (%ebx),%edx
458723:	8b cb                	mov    %ebx,%ecx
458725:	ff 75 a4             	push   -0x5c(%ebp)
458728:	8b f8                	mov    %eax,%edi
45872a:	ff 52 0c             	call   *0xc(%edx)
45872d:	33 f6                	xor    %esi,%esi
45872f:	85 ff                	test   %edi,%edi
458731:	7e 5d                	jle    0x458790
458733:	56                   	push   %esi
458734:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
458737:	e8 a4 4b 00 00       	call   0x45d2e0
45873c:	50                   	push   %eax
45873d:	8d 4d c0             	lea    -0x40(%ebp),%ecx
458740:	e8 db df ff ff       	call   0x456720
458745:	8b 03                	mov    (%ebx),%eax
458747:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45874a:	51                   	push   %ecx
45874b:	ff 75 a4             	push   -0x5c(%ebp)
45874e:	8b cb                	mov    %ebx,%ecx
458750:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
458754:	ff 50 14             	call   *0x14(%eax)
458757:	8b 55 d4             	mov    -0x2c(%ebp),%edx
45875a:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
45875e:	83 fa 10             	cmp    $0x10,%edx
458761:	72 28                	jb     0x45878b
458763:	8b 4d c0             	mov    -0x40(%ebp),%ecx
458766:	42                   	inc    %edx
458767:	8b c1                	mov    %ecx,%eax
458769:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45876f:	72 10                	jb     0x458781
458771:	8b 49 fc             	mov    -0x4(%ecx),%ecx
458774:	83 c2 23             	add    $0x23,%edx
458777:	2b c1                	sub    %ecx,%eax
458779:	83 c0 fc             	add    $0xfffffffc,%eax
45877c:	83 f8 1f             	cmp    $0x1f,%eax
45877f:	77 35                	ja     0x4587b6
458781:	52                   	push   %edx
458782:	51                   	push   %ecx
458783:	e8 cd 8a 17 00       	call   0x5d1255
458788:	83 c4 08             	add    $0x8,%esp
45878b:	46                   	inc    %esi
45878c:	3b f7                	cmp    %edi,%esi
45878e:	7c a3                	jl     0x458733
458790:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
458793:	e8 78 47 00 00       	call   0x45cf10
458798:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45879b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4587a2:	59                   	pop    %ecx
4587a3:	5f                   	pop    %edi
4587a4:	5e                   	pop    %esi
4587a5:	5b                   	pop    %ebx
4587a6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4587a9:	33 cd                	xor    %ebp,%ecx
4587ab:	e8 76 92 17 00       	call   0x5d1a26
4587b0:	8b e5                	mov    %ebp,%esp
4587b2:	5d                   	pop    %ebp
4587b3:	c2 0c 00             	ret    $0xc
4587b6:	e8 35 da 17 00       	call   0x5d61f0
4587bb:	cc                   	int3
4587bc:	cc                   	int3
4587bd:	cc                   	int3
4587be:	cc                   	int3
4587bf:	cc                   	int3
4587c0:	55                   	push   %ebp
4587c1:	8b ec                	mov    %esp,%ebp
4587c3:	ff 75 10             	push   0x10(%ebp)
4587c6:	8b 4d 08             	mov    0x8(%ebp),%ecx
4587c9:	ff 75 0c             	push   0xc(%ebp)
4587cc:	e8 5f 56 00 00       	call   0x45de30
4587d1:	5d                   	pop    %ebp
4587d2:	c2 0c 00             	ret    $0xc
4587d5:	cc                   	int3
4587d6:	cc                   	int3
4587d7:	cc                   	int3
4587d8:	cc                   	int3
4587d9:	cc                   	int3
4587da:	cc                   	int3
4587db:	cc                   	int3
4587dc:	cc                   	int3
4587dd:	cc                   	int3
4587de:	cc                   	int3
4587df:	cc                   	int3
4587e0:	55                   	push   %ebp
4587e1:	8b ec                	mov    %esp,%ebp
4587e3:	ff 75 10             	push   0x10(%ebp)
4587e6:	8b 4d 08             	mov    0x8(%ebp),%ecx
4587e9:	ff 75 0c             	push   0xc(%ebp)
4587ec:	e8 5f 56 00 00       	call   0x45de50
4587f1:	5d                   	pop    %ebp
4587f2:	c2 0c 00             	ret    $0xc
4587f5:	cc                   	int3
4587f6:	cc                   	int3
4587f7:	cc                   	int3
4587f8:	cc                   	int3
4587f9:	cc                   	int3
4587fa:	cc                   	int3
4587fb:	cc                   	int3
4587fc:	cc                   	int3
4587fd:	cc                   	int3
4587fe:	cc                   	int3
4587ff:	cc                   	int3
458800:	55                   	push   %ebp
458801:	8b ec                	mov    %esp,%ebp
458803:	ff 75 10             	push   0x10(%ebp)
458806:	8b 4d 08             	mov    0x8(%ebp),%ecx
458809:	ff 75 0c             	push   0xc(%ebp)
45880c:	e8 6f 56 00 00       	call   0x45de80
458811:	5d                   	pop    %ebp
458812:	c2 0c 00             	ret    $0xc
458815:	cc                   	int3
458816:	cc                   	int3
458817:	cc                   	int3
458818:	cc                   	int3
458819:	cc                   	int3
45881a:	cc                   	int3
45881b:	cc                   	int3
45881c:	cc                   	int3
45881d:	cc                   	int3
45881e:	cc                   	int3
45881f:	cc                   	int3
458820:	55                   	push   %ebp
458821:	8b ec                	mov    %esp,%ebp
458823:	ff 75 10             	push   0x10(%ebp)
458826:	8b 4d 08             	mov    0x8(%ebp),%ecx
458829:	ff 75 0c             	push   0xc(%ebp)
45882c:	e8 7f 56 00 00       	call   0x45deb0
458831:	5d                   	pop    %ebp
458832:	c2 0c 00             	ret    $0xc
458835:	cc                   	int3
458836:	cc                   	int3
458837:	cc                   	int3
458838:	cc                   	int3
458839:	cc                   	int3
45883a:	cc                   	int3
45883b:	cc                   	int3
45883c:	cc                   	int3
45883d:	cc                   	int3
45883e:	cc                   	int3
45883f:	cc                   	int3
458840:	55                   	push   %ebp
458841:	8b ec                	mov    %esp,%ebp
458843:	ff 75 10             	push   0x10(%ebp)
458846:	8b 4d 08             	mov    0x8(%ebp),%ecx
458849:	ff 75 0c             	push   0xc(%ebp)
45884c:	e8 9f 56 00 00       	call   0x45def0
458851:	5d                   	pop    %ebp
458852:	c2 0c 00             	ret    $0xc
458855:	cc                   	int3
458856:	cc                   	int3
458857:	cc                   	int3
458858:	cc                   	int3
458859:	cc                   	int3
45885a:	cc                   	int3
45885b:	cc                   	int3
45885c:	cc                   	int3
45885d:	cc                   	int3
45885e:	cc                   	int3
45885f:	cc                   	int3
458860:	55                   	push   %ebp
458861:	8b ec                	mov    %esp,%ebp
458863:	ff 75 10             	push   0x10(%ebp)
458866:	8b 4d 08             	mov    0x8(%ebp),%ecx
458869:	ff 75 0c             	push   0xc(%ebp)
45886c:	e8 9f 56 00 00       	call   0x45df10
458871:	5d                   	pop    %ebp
458872:	c2 0c 00             	ret    $0xc
458875:	cc                   	int3
458876:	cc                   	int3
458877:	cc                   	int3
458878:	cc                   	int3
458879:	cc                   	int3
45887a:	cc                   	int3
45887b:	cc                   	int3
45887c:	cc                   	int3
45887d:	cc                   	int3
45887e:	cc                   	int3
45887f:	cc                   	int3
458880:	55                   	push   %ebp
458881:	8b ec                	mov    %esp,%ebp
458883:	8b 45 08             	mov    0x8(%ebp),%eax
458886:	56                   	push   %esi
458887:	8b 48 0c             	mov    0xc(%eax),%ecx
45888a:	8b 45 10             	mov    0x10(%ebp),%eax
45888d:	8d 34 81             	lea    (%ecx,%eax,4),%esi
458890:	8b 45 0c             	mov    0xc(%ebp),%eax
458893:	8d 14 81             	lea    (%ecx,%eax,4),%edx
458896:	8b 46 04             	mov    0x4(%esi),%eax
458899:	8b 4a 04             	mov    0x4(%edx),%ecx
45889c:	89 42 04             	mov    %eax,0x4(%edx)
45889f:	89 4e 04             	mov    %ecx,0x4(%esi)
4588a2:	5e                   	pop    %esi
4588a3:	5d                   	pop    %ebp
4588a4:	c2 0c 00             	ret    $0xc
4588a7:	cc                   	int3
4588a8:	cc                   	int3
4588a9:	cc                   	int3
4588aa:	cc                   	int3
4588ab:	cc                   	int3
4588ac:	cc                   	int3
4588ad:	cc                   	int3
4588ae:	cc                   	int3
4588af:	cc                   	int3
4588b0:	55                   	push   %ebp
4588b1:	8b ec                	mov    %esp,%ebp
4588b3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4588b6:	56                   	push   %esi
4588b7:	e8 74 b1 04 00       	call   0x4a3a30
4588bc:	8b 48 0c             	mov    0xc(%eax),%ecx
4588bf:	8b 45 10             	mov    0x10(%ebp),%eax
4588c2:	8d 34 81             	lea    (%ecx,%eax,4),%esi
4588c5:	8b 45 0c             	mov    0xc(%ebp),%eax
4588c8:	8d 14 81             	lea    (%ecx,%eax,4),%edx
4588cb:	8b 46 04             	mov    0x4(%esi),%eax
4588ce:	8b 4a 04             	mov    0x4(%edx),%ecx
4588d1:	89 42 04             	mov    %eax,0x4(%edx)
4588d4:	89 4e 04             	mov    %ecx,0x4(%esi)
4588d7:	5e                   	pop    %esi
4588d8:	5d                   	pop    %ebp
4588d9:	c2 0c 00             	ret    $0xc
4588dc:	cc                   	int3
4588dd:	cc                   	int3
4588de:	cc                   	int3
4588df:	cc                   	int3
4588e0:	55                   	push   %ebp
4588e1:	8b ec                	mov    %esp,%ebp
4588e3:	51                   	push   %ecx
4588e4:	8b c1                	mov    %ecx,%eax
4588e6:	53                   	push   %ebx
4588e7:	57                   	push   %edi
4588e8:	8b 7d 08             	mov    0x8(%ebp),%edi
4588eb:	8b 48 04             	mov    0x4(%eax),%ecx
4588ee:	8b d9                	mov    %ecx,%ebx
4588f0:	8b 10                	mov    (%eax),%edx
4588f2:	2b da                	sub    %edx,%ebx
4588f4:	c1 fb 02             	sar    $0x2,%ebx
4588f7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4588fa:	3b df                	cmp    %edi,%ebx
4588fc:	0f 83 b3 00 00 00    	jae    0x4589b5
458902:	81 ff ff ff ff 3f    	cmp    $0x3fffffff,%edi
458908:	0f 87 c2 00 00 00    	ja     0x4589d0
45890e:	c1 e7 02             	shl    $0x2,%edi
458911:	56                   	push   %esi
458912:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
458918:	72 2a                	jb     0x458944
45891a:	8d 47 23             	lea    0x23(%edi),%eax
45891d:	3b c7                	cmp    %edi,%eax
45891f:	0f 86 ab 00 00 00    	jbe    0x4589d0
458925:	50                   	push   %eax
458926:	e8 fa 88 17 00       	call   0x5d1225
45892b:	83 c4 04             	add    $0x4,%esp
45892e:	85 c0                	test   %eax,%eax
458930:	0f 84 95 00 00 00    	je     0x4589cb
458936:	8d 70 23             	lea    0x23(%eax),%esi
458939:	83 e6 e0             	and    $0xffffffe0,%esi
45893c:	89 46 fc             	mov    %eax,-0x4(%esi)
45893f:	8b 45 fc             	mov    -0x4(%ebp),%eax
458942:	eb 16                	jmp    0x45895a
458944:	85 ff                	test   %edi,%edi
458946:	74 10                	je     0x458958
458948:	57                   	push   %edi
458949:	e8 d7 88 17 00       	call   0x5d1225
45894e:	8b f0                	mov    %eax,%esi
458950:	83 c4 04             	add    $0x4,%esp