4575e3:	e8 78 eb ff ff       	call   0x456160
4575e8:	8b 70 04             	mov    0x4(%eax),%esi
4575eb:	85 f6                	test   %esi,%esi
4575ed:	74 34                	je     0x457623
4575ef:	3b 77 5c             	cmp    0x5c(%edi),%esi
4575f2:	74 2f                	je     0x457623
4575f4:	8b 76 0c             	mov    0xc(%esi),%esi
4575f7:	85 f6                	test   %esi,%esi
4575f9:	74 28                	je     0x457623
4575fb:	8d 4d 90             	lea    -0x70(%ebp),%ecx
4575fe:	e8 4d f6 ff ff       	call   0x456c50
457603:	8b c6                	mov    %esi,%eax
457605:	8b 4d f4             	mov    -0xc(%ebp),%ecx
457608:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45760f:	59                   	pop    %ecx
457610:	5f                   	pop    %edi
457611:	5e                   	pop    %esi
457612:	5b                   	pop    %ebx
457613:	8b 4d f0             	mov    -0x10(%ebp),%ecx
457616:	33 cd                	xor    %ebp,%ecx
457618:	e8 09 a4 17 00       	call   0x5d1a26
45761d:	8b e5                	mov    %ebp,%esp
45761f:	5d                   	pop    %ebp
457620:	c2 04 00             	ret    $0x4
457623:	8d 4d 90             	lea    -0x70(%ebp),%ecx
457626:	e8 25 f6 ff ff       	call   0x456c50
45762b:	8b 73 08             	mov    0x8(%ebx),%esi
45762e:	e8 8d 67 04 00       	call   0x49ddc0
457633:	39 46 08             	cmp    %eax,0x8(%esi)
457636:	0f 85 53 01 00 00    	jne    0x45778f
45763c:	8b 0e                	mov    (%esi),%ecx
45763e:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
457642:	72 02                	jb     0x457646
457644:	8b 09                	mov    (%ecx),%ecx
457646:	33 d2                	xor    %edx,%edx
457648:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
45764b:	89 55 a0             	mov    %edx,-0x60(%ebp)
45764e:	85 c9                	test   %ecx,%ecx
457650:	74 11                	je     0x457663
457652:	8b d1                	mov    %ecx,%edx
457654:	8d 72 01             	lea    0x1(%edx),%esi
457657:	8a 02                	mov    (%edx),%al
457659:	42                   	inc    %edx
45765a:	84 c0                	test   %al,%al
45765c:	75 f9                	jne    0x457657
45765e:	2b d6                	sub    %esi,%edx
457660:	89 55 a0             	mov    %edx,-0x60(%ebp)
457663:	03 d1                	add    %ecx,%edx
457665:	33 f6                	xor    %esi,%esi
457667:	3b ca                	cmp    %edx,%ecx
457669:	73 12                	jae    0x45767d
45766b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
457670:	0f be 01             	movsbl (%ecx),%eax
457673:	8d 34 b6             	lea    (%esi,%esi,4),%esi
457676:	41                   	inc    %ecx
457677:	03 f0                	add    %eax,%esi
457679:	3b ca                	cmp    %edx,%ecx
45767b:	72 f3                	jb     0x457670
45767d:	56                   	push   %esi
45767e:	8d 45 9c             	lea    -0x64(%ebp),%eax
457681:	50                   	push   %eax
457682:	8d 45 80             	lea    -0x80(%ebp),%eax
457685:	50                   	push   %eax
457686:	8d 4f 04             	lea    0x4(%edi),%ecx
457689:	e8 42 eb ff ff       	call   0x4561d0
45768e:	8b 40 04             	mov    0x4(%eax),%eax
457691:	85 c0                	test   %eax,%eax
457693:	0f 84 b2 00 00 00    	je     0x45774b
457699:	3b 47 08             	cmp    0x8(%edi),%eax
45769c:	0f 84 a9 00 00 00    	je     0x45774b
4576a2:	8b 78 10             	mov    0x10(%eax),%edi
4576a5:	85 ff                	test   %edi,%edi
4576a7:	0f 84 9e 00 00 00    	je     0x45774b
4576ad:	8b 75 a4             	mov    -0x5c(%ebp),%esi
4576b0:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4576b3:	8d 46 24             	lea    0x24(%esi),%eax
4576b6:	50                   	push   %eax
4576b7:	e8 f4 f0 ff ff       	call   0x4567b0
4576bc:	8d 45 94             	lea    -0x6c(%ebp),%eax
4576bf:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4576c6:	50                   	push   %eax
4576c7:	8d 46 58             	lea    0x58(%esi),%eax
4576ca:	50                   	push   %eax
4576cb:	e8 00 e8 ff ff       	call   0x455ed0
4576d0:	8b f0                	mov    %eax,%esi
4576d2:	83 c4 08             	add    $0x8,%esp
4576d5:	85 f6                	test   %esi,%esi
4576d7:	75 6a                	jne    0x457743
4576d9:	57                   	push   %edi
4576da:	e8 81 f2 00 00       	call   0x466960
4576df:	8d 45 94             	lea    -0x6c(%ebp),%eax
4576e2:	50                   	push   %eax
4576e3:	8b 45 a4             	mov    -0x5c(%ebp),%eax
4576e6:	83 c0 58             	add    $0x58,%eax
4576e9:	50                   	push   %eax
4576ea:	e8 e1 e7 ff ff       	call   0x455ed0
4576ef:	8b f0                	mov    %eax,%esi
4576f1:	83 c4 0c             	add    $0xc,%esp
4576f4:	85 f6                	test   %esi,%esi
4576f6:	75 4b                	jne    0x457743
4576f8:	68 08 01 00 00       	push   $0x108
4576fd:	68 d8 5f 60 00       	push   $0x605fd8
457702:	6a 02                	push   $0x2
457704:	8d 4d cc             	lea    -0x34(%ebp),%ecx
457707:	e8 d4 db 01 00       	call   0x4752e0
45770c:	ff 73 04             	push   0x4(%ebx)
45770f:	8b c8                	mov    %eax,%ecx
457711:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
457715:	68 bc 61 60 00       	push   $0x6061bc
45771a:	68 88 61 60 00       	push   $0x606188
45771f:	e8 cc e1 01 00       	call   0x4758f0
457724:	8b c8                	mov    %eax,%ecx
457726:	e8 c5 e1 01 00       	call   0x4758f0
45772b:	8b c8                	mov    %eax,%ecx
45772d:	e8 ce df 01 00       	call   0x475700
457732:	50                   	push   %eax
457733:	8d 4d 9b             	lea    -0x65(%ebp),%ecx
457736:	e8 45 df 01 00       	call   0x475680
45773b:	8d 4d cc             	lea    -0x34(%ebp),%ecx
45773e:	e8 cd de 01 00       	call   0x475610
457743:	8d 4d a0             	lea    -0x60(%ebp),%ecx
457746:	e9 b3 fe ff ff       	jmp    0x4575fe
45774b:	68 f6 00 00 00       	push   $0xf6
457750:	68 d8 5f 60 00       	push   $0x605fd8
457755:	6a 02                	push   $0x2
457757:	8d 4d a8             	lea    -0x58(%ebp),%ecx
45775a:	e8 81 db 01 00       	call   0x4752e0
45775f:	8b 4b 08             	mov    0x8(%ebx),%ecx
457762:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
457769:	ff 31                	push   (%ecx)
45776b:	8b c8                	mov    %eax,%ecx
45776d:	68 48 61 60 00       	push   $0x606148
457772:	e8 79 e1 01 00       	call   0x4758f0
457777:	8b c8                	mov    %eax,%ecx
457779:	e8 82 df 01 00       	call   0x475700
45777e:	50                   	push   %eax
45777f:	8d 4d 9a             	lea    -0x66(%ebp),%ecx
457782:	e8 f9 de 01 00       	call   0x475680
457787:	8d 4d a8             	lea    -0x58(%ebp),%ecx
45778a:	e8 81 de 01 00       	call   0x475610
45778f:	33 c0                	xor    %eax,%eax
457791:	e9 6f fe ff ff       	jmp    0x457605
457796:	e8 4e 87 18 00       	call   0x5dfee9
45779b:	50                   	push   %eax
45779c:	e8 57 96 17 00       	call   0x5d0df8
4577a1:	cc                   	int3
4577a2:	cc                   	int3
4577a3:	cc                   	int3
4577a4:	cc                   	int3
4577a5:	cc                   	int3
4577a6:	cc                   	int3
4577a7:	cc                   	int3
4577a8:	cc                   	int3
4577a9:	cc                   	int3
4577aa:	cc                   	int3
4577ab:	cc                   	int3
4577ac:	cc                   	int3
4577ad:	cc                   	int3
4577ae:	cc                   	int3
4577af:	cc                   	int3
4577b0:	55                   	push   %ebp
4577b1:	8b ec                	mov    %esp,%ebp
4577b3:	8b 01                	mov    (%ecx),%eax
4577b5:	8d 55 f8             	lea    -0x8(%ebp),%edx
4577b8:	83 ec 08             	sub    $0x8,%esp
4577bb:	52                   	push   %edx
4577bc:	ff 50 48             	call   *0x48(%eax)
4577bf:	8b 4d 08             	mov    0x8(%ebp),%ecx
4577c2:	8b 00                	mov    (%eax),%eax
4577c4:	ff 70 04             	push   0x4(%eax)
4577c7:	e8 54 ef ff ff       	call   0x456720
4577cc:	8b 45 08             	mov    0x8(%ebp),%eax
4577cf:	8b e5                	mov    %ebp,%esp
4577d1:	5d                   	pop    %ebp
4577d2:	c2 04 00             	ret    $0x4
4577d5:	cc                   	int3
4577d6:	cc                   	int3
4577d7:	cc                   	int3
4577d8:	cc                   	int3
4577d9:	cc                   	int3
4577da:	cc                   	int3
4577db:	cc                   	int3
4577dc:	cc                   	int3
4577dd:	cc                   	int3
4577de:	cc                   	int3
4577df:	cc                   	int3
4577e0:	55                   	push   %ebp
4577e1:	8b ec                	mov    %esp,%ebp
4577e3:	6a ff                	push   $0xffffffff
4577e5:	68 7e 85 5f 00       	push   $0x5f857e
4577ea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4577f0:	50                   	push   %eax
4577f1:	83 ec 44             	sub    $0x44,%esp
4577f4:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4577f9:	33 c5                	xor    %ebp,%eax
4577fb:	89 45 f0             	mov    %eax,-0x10(%ebp)
4577fe:	53                   	push   %ebx
4577ff:	56                   	push   %esi
457800:	57                   	push   %edi
457801:	50                   	push   %eax
457802:	8d 45 f4             	lea    -0xc(%ebp),%eax
457805:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
45780b:	8b 5d 08             	mov    0x8(%ebp),%ebx
45780e:	89 5d b0             	mov    %ebx,-0x50(%ebp)
457811:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
457818:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
45781f:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
457826:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
45782d:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
457834:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45783b:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
457842:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
457849:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
45784d:	8d 45 bc             	lea    -0x44(%ebp),%eax
457850:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
457854:	50                   	push   %eax
457855:	8d 45 d8             	lea    -0x28(%ebp),%eax
457858:	50                   	push   %eax
457859:	51                   	push   %ecx
45785a:	e8 41 24 01 00       	call   0x469ca0
45785f:	8b 55 ec             	mov    -0x14(%ebp),%edx
457862:	83 c4 0c             	add    $0xc,%esp
457865:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
457869:	83 fa 10             	cmp    $0x10,%edx
45786c:	72 2c                	jb     0x45789a
45786e:	8b 4d d8             	mov    -0x28(%ebp),%ecx
457871:	42                   	inc    %edx
457872:	8b c1                	mov    %ecx,%eax
457874:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45787a:	72 14                	jb     0x457890
45787c:	8b 49 fc             	mov    -0x4(%ecx),%ecx
45787f:	83 c2 23             	add    $0x23,%edx
457882:	2b c1                	sub    %ecx,%eax
457884:	83 c0 fc             	add    $0xfffffffc,%eax
457887:	83 f8 1f             	cmp    $0x1f,%eax
45788a:	0f 87 3e 01 00 00    	ja     0x4579ce
457890:	52                   	push   %edx
457891:	51                   	push   %ecx
457892:	e8 be 99 17 00       	call   0x5d1255
457897:	83 c4 08             	add    $0x8,%esp
45789a:	8b 75 c0             	mov    -0x40(%ebp),%esi
45789d:	8b 7d bc             	mov    -0x44(%ebp),%edi
4578a0:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
4578a6:	c7 43 10 00 00 00 00 	movl   $0x0,0x10(%ebx)
4578ad:	c7 43 14 0f 00 00 00 	movl   $0xf,0x14(%ebx)
4578b4:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4578b8:	c6 03 00             	movb   $0x0,(%ebx)
4578bb:	c7 45 b8 02 00 00 00 	movl   $0x2,-0x48(%ebp)
4578c2:	89 75 b4             	mov    %esi,-0x4c(%ebp)
4578c5:	3b fe                	cmp    %esi,%edi
4578c7:	74 47                	je     0x457910
4578c9:	8b f7                	mov    %edi,%esi
4578cb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4578d0:	3b f7                	cmp    %edi,%esi
4578d2:	74 0e                	je     0x4578e2
4578d4:	6a 02                	push   $0x2
4578d6:	68 f8 60 60 00       	push   $0x6060f8
4578db:	8b cb                	mov    %ebx,%ecx
4578dd:	e8 9e 15 00 00       	call   0x458e80
4578e2:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4578e6:	8b c6                	mov    %esi,%eax
4578e8:	72 02                	jb     0x4578ec
4578ea:	8b 06                	mov    (%esi),%eax
4578ec:	89 45 c8             	mov    %eax,-0x38(%ebp)
4578ef:	8b 46 10             	mov    0x10(%esi),%eax
4578f2:	89 45 cc             	mov    %eax,-0x34(%ebp)
4578f5:	8d 45 c8             	lea    -0x38(%ebp),%eax
4578f8:	50                   	push   %eax
4578f9:	53                   	push   %ebx
4578fa:	e8 c1 89 04 00       	call   0x4a02c0
4578ff:	83 c6 18             	add    $0x18,%esi
457902:	83 c4 08             	add    $0x8,%esp
457905:	3b 75 b4             	cmp    -0x4c(%ebp),%esi
457908:	75 c6                	jne    0x4578d0
45790a:	8b 75 c0             	mov    -0x40(%ebp),%esi
45790d:	8b 7d bc             	mov    -0x44(%ebp),%edi
457910:	85 ff                	test   %edi,%edi
457912:	0f 84 96 00 00 00    	je     0x4579ae
457918:	3b fe                	cmp    %esi,%edi
45791a:	74 52                	je     0x45796e
45791c:	0f 1f 40 00          	nopl   0x0(%eax)
457920:	8b 4f 14             	mov    0x14(%edi),%ecx
457923:	83 f9 10             	cmp    $0x10,%ecx
457926:	72 2b                	jb     0x457953
457928:	8b 07                	mov    (%edi),%eax
45792a:	41                   	inc    %ecx
45792b:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
457931:	72 16                	jb     0x457949
457933:	8b 50 fc             	mov    -0x4(%eax),%edx
457936:	83 c1 23             	add    $0x23,%ecx
457939:	2b c2                	sub    %edx,%eax
45793b:	83 c0 fc             	add    $0xfffffffc,%eax
45793e:	83 f8 1f             	cmp    $0x1f,%eax
457941:	0f 87 8c 00 00 00    	ja     0x4579d3
457947:	8b c2                	mov    %edx,%eax
457949:	51                   	push   %ecx
45794a:	50                   	push   %eax
45794b:	e8 05 99 17 00       	call   0x5d1255
457950:	83 c4 08             	add    $0x8,%esp
457953:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
45795a:	c7 47 14 0f 00 00 00 	movl   $0xf,0x14(%edi)
457961:	c6 07 00             	movb   $0x0,(%edi)
457964:	83 c7 18             	add    $0x18,%edi
457967:	3b fe                	cmp    %esi,%edi
457969:	75 b5                	jne    0x457920
45796b:	8b 7d bc             	mov    -0x44(%ebp),%edi
45796e:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
457971:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
457976:	2b cf                	sub    %edi,%ecx
457978:	f7 e9                	imul   %ecx
45797a:	c1 fa 02             	sar    $0x2,%edx
45797d:	8b c2                	mov    %edx,%eax
45797f:	c1 e8 1f             	shr    $0x1f,%eax
457982:	03 c2                	add    %edx,%eax
457984:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
457987:	8b c7                	mov    %edi,%eax
457989:	c1 e1 03             	shl    $0x3,%ecx
45798c:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
457992:	72 10                	jb     0x4579a4
457994:	8b 7f fc             	mov    -0x4(%edi),%edi
457997:	83 c1 23             	add    $0x23,%ecx
45799a:	2b c7                	sub    %edi,%eax
45799c:	83 c0 fc             	add    $0xfffffffc,%eax
45799f:	83 f8 1f             	cmp    $0x1f,%eax
4579a2:	77 2f                	ja     0x4579d3
4579a4:	51                   	push   %ecx
4579a5:	57                   	push   %edi
4579a6:	e8 aa 98 17 00       	call   0x5d1255
4579ab:	83 c4 08             	add    $0x8,%esp
4579ae:	8b c3                	mov    %ebx,%eax
4579b0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4579b3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4579ba:	59                   	pop    %ecx
4579bb:	5f                   	pop    %edi
4579bc:	5e                   	pop    %esi
4579bd:	5b                   	pop    %ebx
4579be:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4579c1:	33 cd                	xor    %ebp,%ecx
4579c3:	e8 5e a0 17 00       	call   0x5d1a26
4579c8:	8b e5                	mov    %ebp,%esp
4579ca:	5d                   	pop    %ebp
4579cb:	c2 04 00             	ret    $0x4
4579ce:	e8 1d e8 17 00       	call   0x5d61f0
4579d3:	e8 18 e8 17 00       	call   0x5d61f0
4579d8:	cc                   	int3
4579d9:	cc                   	int3
4579da:	cc                   	int3
4579db:	cc                   	int3
4579dc:	cc                   	int3
4579dd:	cc                   	int3