57048f:	eb 24                	jmp    0x5704b5
570491:	6a 00                	push   $0x0
570493:	53                   	push   %ebx
570494:	ff 76 04             	push   0x4(%esi)
570497:	8d 44 24 58          	lea    0x58(%esp),%eax
57049b:	50                   	push   %eax
57049c:	e8 0f 02 00 00       	call   0x5706b0
5704a1:	83 c4 10             	add    $0x10,%esp
5704a4:	85 c0                	test   %eax,%eax
5704a6:	0f 84 b4 01 00 00    	je     0x570660
5704ac:	68 ff 00 00 00       	push   $0xff
5704b1:	53                   	push   %ebx
5704b2:	ff 76 04             	push   0x4(%esi)
5704b5:	8d 44 24 38          	lea    0x38(%esp),%eax
5704b9:	50                   	push   %eax
5704ba:	e8 f1 01 00 00       	call   0x5706b0
5704bf:	83 c4 10             	add    $0x10,%esp
5704c2:	85 c0                	test   %eax,%eax
5704c4:	0f 84 96 01 00 00    	je     0x570660
5704ca:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
5704d0:	57                   	push   %edi
5704d1:	e8 ea 4b f7 ff       	call   0x4e50c0
5704d6:	83 c4 04             	add    $0x4,%esp
5704d9:	3b e8                	cmp    %eax,%ebp
5704db:	0f 8d 95 01 00 00    	jge    0x570676
5704e1:	55                   	push   %ebp
5704e2:	57                   	push   %edi
5704e3:	e8 98 4d f7 ff       	call   0x4e5280
5704e8:	8b f0                	mov    %eax,%esi
5704ea:	83 c4 08             	add    $0x8,%esp
5704ed:	85 f6                	test   %esi,%esi
5704ef:	0f 84 81 01 00 00    	je     0x570676
5704f5:	8b 06                	mov    (%esi),%eax
5704f7:	83 e8 00             	sub    $0x0,%eax
5704fa:	74 33                	je     0x57052f
5704fc:	83 e8 01             	sub    $0x1,%eax
5704ff:	0f 85 71 01 00 00    	jne    0x570676
570505:	50                   	push   %eax
570506:	8b 46 04             	mov    0x4(%esi),%eax
570509:	53                   	push   %ebx
57050a:	ff 30                	push   (%eax)
57050c:	8d 44 24 48          	lea    0x48(%esp),%eax
570510:	50                   	push   %eax
570511:	e8 9a 01 00 00       	call   0x5706b0
570516:	83 c4 10             	add    $0x10,%esp
570519:	85 c0                	test   %eax,%eax
57051b:	0f 84 55 01 00 00    	je     0x570676
570521:	8b 46 04             	mov    0x4(%esi),%eax
570524:	68 ff 00 00 00       	push   $0xff
570529:	53                   	push   %ebx
57052a:	ff 70 04             	push   0x4(%eax)
57052d:	eb 24                	jmp    0x570553
57052f:	6a 00                	push   $0x0
570531:	53                   	push   %ebx
570532:	ff 76 04             	push   0x4(%esi)
570535:	8d 44 24 48          	lea    0x48(%esp),%eax
570539:	50                   	push   %eax
57053a:	e8 71 01 00 00       	call   0x5706b0
57053f:	83 c4 10             	add    $0x10,%esp
570542:	85 c0                	test   %eax,%eax
570544:	0f 84 2c 01 00 00    	je     0x570676
57054a:	68 ff 00 00 00       	push   $0xff
57054f:	53                   	push   %ebx
570550:	ff 76 04             	push   0x4(%esi)
570553:	8d 44 24 28          	lea    0x28(%esp),%eax
570557:	50                   	push   %eax
570558:	e8 53 01 00 00       	call   0x5706b0
57055d:	83 c4 10             	add    $0x10,%esp
570560:	85 c0                	test   %eax,%eax
570562:	0f 84 0e 01 00 00    	je     0x570676
570568:	8b f3                	mov    %ebx,%esi
57056a:	8d 54 24 1c          	lea    0x1c(%esp),%edx
57056e:	8d 44 24 2c          	lea    0x2c(%esp),%eax
570572:	83 ee 04             	sub    $0x4,%esi
570575:	72 11                	jb     0x570588
570577:	8b 0a                	mov    (%edx),%ecx
570579:	3b 08                	cmp    (%eax),%ecx
57057b:	75 12                	jne    0x57058f
57057d:	83 c2 04             	add    $0x4,%edx
570580:	83 c0 04             	add    $0x4,%eax
570583:	83 ee 04             	sub    $0x4,%esi
570586:	73 ef                	jae    0x570577
570588:	33 ff                	xor    %edi,%edi
57058a:	83 fe fc             	cmp    $0xfffffffc,%esi
57058d:	74 3b                	je     0x5705ca
57058f:	0f b6 3a             	movzbl (%edx),%edi
570592:	0f b6 08             	movzbl (%eax),%ecx
570595:	2b f9                	sub    %ecx,%edi
570597:	75 31                	jne    0x5705ca
570599:	83 fe fd             	cmp    $0xfffffffd,%esi
57059c:	74 2c                	je     0x5705ca
57059e:	0f b6 7a 01          	movzbl 0x1(%edx),%edi
5705a2:	0f b6 48 01          	movzbl 0x1(%eax),%ecx
5705a6:	2b f9                	sub    %ecx,%edi
5705a8:	75 20                	jne    0x5705ca
5705aa:	83 fe fe             	cmp    $0xfffffffe,%esi
5705ad:	74 1b                	je     0x5705ca
5705af:	0f b6 7a 02          	movzbl 0x2(%edx),%edi
5705b3:	0f b6 48 02          	movzbl 0x2(%eax),%ecx
5705b7:	2b f9                	sub    %ecx,%edi
5705b9:	75 0f                	jne    0x5705ca
5705bb:	83 fe ff             	cmp    $0xffffffff,%esi
5705be:	74 0a                	je     0x5705ca
5705c0:	0f b6 7a 03          	movzbl 0x3(%edx),%edi
5705c4:	0f b6 40 03          	movzbl 0x3(%eax),%eax
5705c8:	2b f8                	sub    %eax,%edi
5705ca:	85 ff                	test   %edi,%edi
5705cc:	79 0a                	jns    0x5705d8
5705ce:	8b 7c 24 18          	mov    0x18(%esp),%edi
5705d2:	45                   	inc    %ebp
5705d3:	e9 f8 fe ff ff       	jmp    0x5704d0
5705d8:	8b f3                	mov    %ebx,%esi
5705da:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
5705de:	8d 54 24 4c          	lea    0x4c(%esp),%edx
5705e2:	83 ee 04             	sub    $0x4,%esi
5705e5:	72 11                	jb     0x5705f8
5705e7:	8b 01                	mov    (%ecx),%eax
5705e9:	3b 02                	cmp    (%edx),%eax
5705eb:	75 12                	jne    0x5705ff
5705ed:	83 c1 04             	add    $0x4,%ecx
5705f0:	83 c2 04             	add    $0x4,%edx
5705f3:	83 ee 04             	sub    $0x4,%esi
5705f6:	73 ef                	jae    0x5705e7
5705f8:	33 ff                	xor    %edi,%edi
5705fa:	83 fe fc             	cmp    $0xfffffffc,%esi
5705fd:	74 3b                	je     0x57063a
5705ff:	0f b6 39             	movzbl (%ecx),%edi
570602:	0f b6 02             	movzbl (%edx),%eax
570605:	2b f8                	sub    %eax,%edi
570607:	75 31                	jne    0x57063a
570609:	83 fe fd             	cmp    $0xfffffffd,%esi
57060c:	74 2c                	je     0x57063a
57060e:	0f b6 79 01          	movzbl 0x1(%ecx),%edi
570612:	0f b6 42 01          	movzbl 0x1(%edx),%eax
570616:	2b f8                	sub    %eax,%edi
570618:	75 20                	jne    0x57063a
57061a:	83 fe fe             	cmp    $0xfffffffe,%esi
57061d:	74 1b                	je     0x57063a
57061f:	0f b6 79 02          	movzbl 0x2(%ecx),%edi
570623:	0f b6 42 02          	movzbl 0x2(%edx),%eax
570627:	2b f8                	sub    %eax,%edi
570629:	75 0f                	jne    0x57063a
57062b:	83 fe ff             	cmp    $0xffffffff,%esi
57062e:	74 0a                	je     0x57063a
570630:	0f b6 79 03          	movzbl 0x3(%ecx),%edi
570634:	0f b6 42 03          	movzbl 0x3(%edx),%eax
570638:	2b f8                	sub    %eax,%edi
57063a:	85 ff                	test   %edi,%edi
57063c:	7f 38                	jg     0x570676
57063e:	8b 74 24 10          	mov    0x10(%esp),%esi
570642:	ff 74 24 14          	push   0x14(%esp)
570646:	46                   	inc    %esi
570647:	89 74 24 14          	mov    %esi,0x14(%esp)
57064b:	e8 70 4a f7 ff       	call   0x4e50c0
570650:	83 c4 04             	add    $0x4,%esp
570653:	3b f0                	cmp    %eax,%esi
570655:	7d 34                	jge    0x57068b
570657:	8b 7c 24 18          	mov    0x18(%esp),%edi
57065b:	e9 e0 fd ff ff       	jmp    0x570440
570660:	5f                   	pop    %edi
570661:	5e                   	pop    %esi
570662:	5d                   	pop    %ebp
570663:	83 c8 ff             	or     $0xffffffff,%eax
570666:	5b                   	pop    %ebx
570667:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
57066b:	33 cc                	xor    %esp,%ecx
57066d:	e8 b4 13 06 00       	call   0x5d1a26
570672:	83 c4 50             	add    $0x50,%esp
570675:	c3                   	ret
570676:	5f                   	pop    %edi
570677:	5e                   	pop    %esi
570678:	5d                   	pop    %ebp
570679:	33 c0                	xor    %eax,%eax
57067b:	5b                   	pop    %ebx
57067c:	8b 4c 24 4c          	mov    0x4c(%esp),%ecx
570680:	33 cc                	xor    %esp,%ecx
570682:	e8 9f 13 06 00       	call   0x5d1a26
570687:	83 c4 50             	add    $0x50,%esp
57068a:	c3                   	ret
57068b:	8b 4c 24 5c          	mov    0x5c(%esp),%ecx
57068f:	b8 01 00 00 00       	mov    $0x1,%eax
570694:	5f                   	pop    %edi
570695:	5e                   	pop    %esi
570696:	5d                   	pop    %ebp
570697:	5b                   	pop    %ebx
570698:	33 cc                	xor    %esp,%ecx
57069a:	e8 87 13 06 00       	call   0x5d1a26
57069f:	83 c4 50             	add    $0x50,%esp
5706a2:	c3                   	ret
5706a3:	cc                   	int3
5706a4:	cc                   	int3
5706a5:	cc                   	int3
5706a6:	cc                   	int3
5706a7:	cc                   	int3
5706a8:	cc                   	int3
5706a9:	cc                   	int3
5706aa:	cc                   	int3
5706ab:	cc                   	int3
5706ac:	cc                   	int3
5706ad:	cc                   	int3
5706ae:	cc                   	int3
5706af:	cc                   	int3
5706b0:	53                   	push   %ebx
5706b1:	8b 5c 24 08          	mov    0x8(%esp),%ebx
5706b5:	56                   	push   %esi
5706b6:	8b 74 24 10          	mov    0x10(%esp),%esi
5706ba:	57                   	push   %edi
5706bb:	8b 06                	mov    (%esi),%eax
5706bd:	85 c0                	test   %eax,%eax
5706bf:	78 64                	js     0x570725
5706c1:	8b 7c 24 18          	mov    0x18(%esp),%edi
5706c5:	3b c7                	cmp    %edi,%eax
5706c7:	7f 5c                	jg     0x570725
5706c9:	85 c0                	test   %eax,%eax
5706cb:	7e 38                	jle    0x570705
5706cd:	50                   	push   %eax
5706ce:	ff 76 08             	push   0x8(%esi)
5706d1:	53                   	push   %ebx
5706d2:	e8 f9 26 06 00       	call   0x5d2dd0
5706d7:	8b 46 0c             	mov    0xc(%esi),%eax
5706da:	83 c4 0c             	add    $0xc,%esp
5706dd:	83 e0 07             	and    $0x7,%eax
5706e0:	74 23                	je     0x570705
5706e2:	b9 08 00 00 00       	mov    $0x8,%ecx
5706e7:	ba ff 00 00 00       	mov    $0xff,%edx
5706ec:	2b c8                	sub    %eax,%ecx
5706ee:	8b 06                	mov    (%esi),%eax
5706f0:	d3 fa                	sar    %cl,%edx
5706f2:	80 7c 24 1c 00       	cmpb   $0x0,0x1c(%esp)
5706f7:	75 08                	jne    0x570701
5706f9:	f6 d2                	not    %dl
5706fb:	20 54 18 ff          	and    %dl,-0x1(%eax,%ebx,1)
5706ff:	eb 04                	jmp    0x570705
570701:	08 54 18 ff          	or     %dl,-0x1(%eax,%ebx,1)
570705:	8b 0e                	mov    (%esi),%ecx
570707:	2b f9                	sub    %ecx,%edi
570709:	0f b6 44 24 1c       	movzbl 0x1c(%esp),%eax
57070e:	57                   	push   %edi
57070f:	50                   	push   %eax
570710:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
570713:	50                   	push   %eax
570714:	e8 57 25 06 00       	call   0x5d2c70
570719:	83 c4 0c             	add    $0xc,%esp
57071c:	b8 01 00 00 00       	mov    $0x1,%eax
570721:	5f                   	pop    %edi
570722:	5e                   	pop    %esi
570723:	5b                   	pop    %ebx
570724:	c3                   	ret
570725:	5f                   	pop    %edi
570726:	5e                   	pop    %esi
570727:	33 c0                	xor    %eax,%eax
570729:	5b                   	pop    %ebx
57072a:	c3                   	ret
57072b:	cc                   	int3
57072c:	cc                   	int3
57072d:	cc                   	int3
57072e:	cc                   	int3
57072f:	cc                   	int3
570730:	b8 14 00 00 00       	mov    $0x14,%eax
570735:	e8 76 10 06 00       	call   0x5d17b0
57073a:	53                   	push   %ebx
57073b:	55                   	push   %ebp
57073c:	8b 6c 24 24          	mov    0x24(%esp),%ebp
570740:	33 db                	xor    %ebx,%ebx
570742:	56                   	push   %esi
570743:	57                   	push   %edi
570744:	bf 01 00 00 00       	mov    $0x1,%edi
570749:	89 7c 24 14          	mov    %edi,0x14(%esp)
57074d:	85 ed                	test   %ebp,%ebp
57074f:	0f 84 f7 03 00 00    	je     0x570b4c
570755:	55                   	push   %ebp
570756:	e8 65 49 f7 ff       	call   0x4e50c0
57075b:	83 c4 04             	add    $0x4,%esp
57075e:	85 c0                	test   %eax,%eax
570760:	0f 8e e6 03 00 00    	jle    0x570b4c
570766:	8b 74 24 28          	mov    0x28(%esp),%esi
57076a:	85 f6                	test   %esi,%esi
57076c:	75 10                	jne    0x57077e
57076e:	8b 44 24 30          	mov    0x30(%esp),%eax
570772:	85 c0                	test   %eax,%eax
570774:	75 19                	jne    0x57078f
570776:	5f                   	pop    %edi
570777:	5e                   	pop    %esi
570778:	5d                   	pop    %ebp
570779:	5b                   	pop    %ebx
57077a:	83 c4 14             	add    $0x14,%esp
57077d:	c3                   	ret
57077e:	39 5e 1c             	cmp    %ebx,0x1c(%esi)
570781:	0f 84 cd 03 00 00    	je     0x570b54
570787:	8b 44 24 30          	mov    0x30(%esp),%eax
57078b:	85 c0                	test   %eax,%eax
57078d:	74 10                	je     0x57079f
57078f:	33 ed                	xor    %ebp,%ebp
570791:	c7 44 24 10 ff ff ff 	movl   $0xffffffff,0x10(%esp)
570798:	ff
570799:	89 6c 24 18          	mov    %ebp,0x18(%esp)
57079d:	eb 23                	jmp    0x5707c2
57079f:	6a 00                	push   $0x0
5707a1:	55                   	push   %ebp
5707a2:	89 5c 24 18          	mov    %ebx,0x18(%esp)
5707a6:	e8 d5 4a f7 ff       	call   0x4e5280
5707ab:	8b e8                	mov    %eax,%ebp
5707ad:	83 c4 08             	add    $0x8,%esp
5707b0:	89 6c 24 18          	mov    %ebp,0x18(%esp)
5707b4:	8b 85 a8 00 00 00    	mov    0xa8(%ebp),%eax
5707ba:	89 44 24 30          	mov    %eax,0x30(%esp)
5707be:	85 c0                	test   %eax,%eax
5707c0:	74 7d                	je     0x57083f
5707c2:	50                   	push   %eax
5707c3:	e8 68 f6 ff ff       	call   0x56fe30
5707c8:	83 c4 04             	add    $0x4,%esp
5707cb:	85 c0                	test   %eax,%eax
5707cd:	75 2a                	jne    0x5707f9
5707cf:	85 f6                	test   %esi,%esi
5707d1:	74 6a                	je     0x57083d
5707d3:	8b 44 24 10          	mov    0x10(%esp),%eax
5707d7:	89 46 5c             	mov    %eax,0x5c(%esi)
5707da:	8b 46 1c             	mov    0x1c(%esi),%eax
5707dd:	56                   	push   %esi
5707de:	6a 00                	push   $0x0
5707e0:	c7 46 60 29 00 00 00 	movl   $0x29,0x60(%esi)
5707e7:	89 6e 64             	mov    %ebp,0x64(%esi)
5707ea:	ff d0                	call   *%eax
5707ec:	8b f8                	mov    %eax,%edi
5707ee:	83 c4 08             	add    $0x8,%esp
5707f1:	89 7c 24 14          	mov    %edi,0x14(%esp)
5707f5:	85 ff                	test   %edi,%edi
5707f7:	74 46                	je     0x57083f
5707f9:	8b 5c 24 30          	mov    0x30(%esp),%ebx
5707fd:	68 40 f6 56 00       	push   $0x56f640
570802:	53                   	push   %ebx
570803:	e8 d8 49 f7 ff       	call   0x4e51e0
570808:	53                   	push   %ebx
570809:	e8 c2 45 f7 ff       	call   0x4e4dd0
57080e:	8b d8                	mov    %eax,%ebx
570810:	83 c4 0c             	add    $0xc,%esp
570813:	85 db                	test   %ebx,%ebx
570815:	75 3b                	jne    0x570852
570817:	68 bc 04 00 00       	push   $0x4bc
57081c:	68 90 9a 65 00       	push   $0x659a90
570821:	6a 41                	push   $0x41
570823:	68 a6 00 00 00       	push   $0xa6
570828:	6a 22                	push   $0x22
57082a:	e8 51 87 f6 ff       	call   0x4d8f80
57082f:	83 c4 14             	add    $0x14,%esp
570832:	85 f6                	test   %esi,%esi
570834:	74 07                	je     0x57083d
570836:	c7 46 60 11 00 00 00 	movl   $0x11,0x60(%esi)
57083d:	33 ff                	xor    %edi,%edi
57083f:	53                   	push   %ebx