55756f:	e8 0c 42 f9 ff       	call   0x4eb780
557574:	68 20 be 56 00       	push   $0x56be20
557579:	ff 76 64             	push   0x64(%esi)
55757c:	e8 6f db f8 ff       	call   0x4e50f0
557581:	83 c4 18             	add    $0x18,%esp
557584:	a1 a4 e3 68 00       	mov    0x68e3a4,%eax
557589:	89 46 7c             	mov    %eax,0x7c(%esi)
55758c:	b8 01 00 00 00       	mov    $0x1,%eax
557591:	c7 46 50 00 00 00 00 	movl   $0x0,0x50(%esi)
557598:	c7 46 4c 00 00 00 00 	movl   $0x0,0x4c(%esi)
55759f:	c7 46 48 00 00 00 00 	movl   $0x0,0x48(%esi)
5575a6:	c7 46 54 00 00 00 00 	movl   $0x0,0x54(%esi)
5575ad:	c7 46 58 7f 80 00 00 	movl   $0x807f,0x58(%esi)
5575b4:	c7 86 80 00 00 00 00 	movl   $0x0,0x80(%esi)
5575bb:	00 00 00
5575be:	c7 46 64 00 00 00 00 	movl   $0x0,0x64(%esi)
5575c5:	c7 46 5c 00 00 00 00 	movl   $0x0,0x5c(%esi)
5575cc:	c7 46 60 00 00 00 00 	movl   $0x0,0x60(%esi)
5575d3:	5e                   	pop    %esi
5575d4:	c3                   	ret
5575d5:	8d 46 68             	lea    0x68(%esi),%eax
5575d8:	6a 00                	push   $0x0
5575da:	50                   	push   %eax
5575db:	e8 30 ef fb ff       	call   0x516510
5575e0:	50                   	push   %eax
5575e1:	56                   	push   %esi
5575e2:	e8 79 44 01 00       	call   0x56ba60
5575e7:	83 c4 10             	add    $0x10,%esp
5575ea:	85 c0                	test   %eax,%eax
5575ec:	75 07                	jne    0x5575f5
5575ee:	81 4e 48 80 00 00 00 	orl    $0x80,0x48(%esi)
5575f5:	53                   	push   %ebx
5575f6:	55                   	push   %ebp
5575f7:	57                   	push   %edi
5575f8:	6a 00                	push   $0x0
5575fa:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5575fe:	50                   	push   %eax
5575ff:	68 02 03 00 00       	push   $0x302
557604:	56                   	push   %esi
557605:	e8 a6 a4 01 00       	call   0x571ab0
55760a:	8b f8                	mov    %eax,%edi
55760c:	83 c4 10             	add    $0x10,%esp
55760f:	89 7e 50             	mov    %edi,0x50(%esi)
557612:	85 ff                	test   %edi,%edi
557614:	0f 84 a2 00 00 00    	je     0x5576bc
55761a:	8b 4e 54             	mov    0x54(%esi),%ecx
55761d:	33 c0                	xor    %eax,%eax
55761f:	83 c9 01             	or     $0x1,%ecx
557622:	89 4e 54             	mov    %ecx,0x54(%esi)
557625:	39 47 04             	cmp    %eax,0x4(%edi)
557628:	7e 0b                	jle    0x557635
55762a:	83 c9 04             	or     $0x4,%ecx
55762d:	b8 01 00 00 00       	mov    $0x1,%eax
557632:	89 4e 54             	mov    %ecx,0x54(%esi)
557635:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
557639:	7e 07                	jle    0x557642
55763b:	40                   	inc    %eax
55763c:	83 c9 08             	or     $0x8,%ecx
55763f:	89 4e 54             	mov    %ecx,0x54(%esi)
557642:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
557646:	7e 07                	jle    0x55764f
557648:	40                   	inc    %eax
557649:	83 c9 10             	or     $0x10,%ecx
55764c:	89 4e 54             	mov    %ecx,0x54(%esi)
55764f:	83 f8 01             	cmp    $0x1,%eax
557652:	76 06                	jbe    0x55765a
557654:	83 c9 02             	or     $0x2,%ecx
557657:	89 4e 54             	mov    %ecx,0x54(%esi)
55765a:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
55765e:	7e 06                	jle    0x557666
557660:	83 c9 20             	or     $0x20,%ecx
557663:	89 4e 54             	mov    %ecx,0x54(%esi)
557666:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
55766a:	74 39                	je     0x5576a5
55766c:	83 c9 40             	or     $0x40,%ecx
55766f:	89 4e 54             	mov    %ecx,0x54(%esi)
557672:	8b 47 0c             	mov    0xc(%edi),%eax
557675:	83 38 00             	cmpl   $0x0,(%eax)
557678:	7e 1f                	jle    0x557699
55767a:	8b 40 08             	mov    0x8(%eax),%eax
55767d:	0f b6 08             	movzbl (%eax),%ecx
557680:	89 4e 58             	mov    %ecx,0x58(%esi)
557683:	8b 47 0c             	mov    0xc(%edi),%eax
557686:	83 38 01             	cmpl   $0x1,(%eax)
557689:	7e 11                	jle    0x55769c
55768b:	8b 40 08             	mov    0x8(%eax),%eax
55768e:	0f b6 40 01          	movzbl 0x1(%eax),%eax
557692:	c1 e0 08             	shl    $0x8,%eax
557695:	0b c8                	or     %eax,%ecx
557697:	eb 03                	jmp    0x55769c
557699:	8b 4e 58             	mov    0x58(%esi),%ecx
55769c:	81 e1 7f 80 00 00    	and    $0x807f,%ecx
5576a2:	89 4e 58             	mov    %ecx,0x58(%esi)
5576a5:	56                   	push   %esi
5576a6:	e8 95 fb f8 ff       	call   0x4e7240
5576ab:	50                   	push   %eax
5576ac:	ff 37                	push   (%edi)
5576ae:	e8 4d 50 01 00       	call   0x56c700
5576b3:	83 c4 0c             	add    $0xc,%esp
5576b6:	85 c0                	test   %eax,%eax
5576b8:	75 10                	jne    0x5576ca
5576ba:	eb 07                	jmp    0x5576c3
5576bc:	83 7c 24 18 ff       	cmpl   $0xffffffff,0x18(%esp)
5576c1:	74 07                	je     0x5576ca
5576c3:	81 4e 48 80 00 00 00 	orl    $0x80,0x48(%esi)
5576ca:	6a 00                	push   $0x0
5576cc:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5576d0:	50                   	push   %eax
5576d1:	6a 5a                	push   $0x5a
5576d3:	56                   	push   %esi
5576d4:	e8 d7 a3 01 00       	call   0x571ab0
5576d9:	83 c4 10             	add    $0x10,%esp
5576dc:	89 46 4c             	mov    %eax,0x4c(%esi)
5576df:	85 c0                	test   %eax,%eax
5576e1:	75 0e                	jne    0x5576f1
5576e3:	83 7c 24 18 ff       	cmpl   $0xffffffff,0x18(%esp)
5576e8:	74 07                	je     0x5576f1
5576ea:	81 4e 48 80 00 00 00 	orl    $0x80,0x48(%esi)
5576f1:	6a 00                	push   $0x0
5576f3:	8d 44 24 1c          	lea    0x1c(%esp),%eax
5576f7:	50                   	push   %eax
5576f8:	6a 58                	push   $0x58
5576fa:	56                   	push   %esi
5576fb:	e8 b0 a3 01 00       	call   0x571ab0
557700:	83 c4 10             	add    $0x10,%esp
557703:	89 46 5c             	mov    %eax,0x5c(%esi)
557706:	85 c0                	test   %eax,%eax
557708:	75 0e                	jne    0x557718
55770a:	83 7c 24 18 ff       	cmpl   $0xffffffff,0x18(%esp)
55770f:	74 07                	je     0x557718
557711:	81 4e 48 80 00 00 00 	orl    $0x80,0x48(%esi)
557718:	6a 00                	push   $0x0
55771a:	8d 44 24 1c          	lea    0x1c(%esp),%eax
55771e:	50                   	push   %eax
55771f:	68 8c 00 00 00       	push   $0x8c
557724:	56                   	push   %esi
557725:	e8 86 a3 01 00       	call   0x571ab0
55772a:	83 c4 10             	add    $0x10,%esp
55772d:	89 46 60             	mov    %eax,0x60(%esi)
557730:	85 c0                	test   %eax,%eax
557732:	75 09                	jne    0x55773d
557734:	83 7c 24 18 ff       	cmpl   $0xffffffff,0x18(%esp)
557739:	74 0f                	je     0x55774a
55773b:	eb 06                	jmp    0x557743
55773d:	83 7e 5c 00          	cmpl   $0x0,0x5c(%esi)
557741:	75 07                	jne    0x55774a
557743:	81 4e 48 80 00 00 00 	orl    $0x80,0x48(%esi)
55774a:	8b 6e 1c             	mov    0x1c(%esi),%ebp
55774d:	33 db                	xor    %ebx,%ebx
55774f:	55                   	push   %ebp
557750:	89 6c 24 18          	mov    %ebp,0x18(%esp)
557754:	e8 67 d9 f8 ff       	call   0x4e50c0
557759:	83 c4 04             	add    $0x4,%esp
55775c:	85 c0                	test   %eax,%eax
55775e:	7e 66                	jle    0x5577c6
557760:	53                   	push   %ebx
557761:	55                   	push   %ebp
557762:	e8 19 db f8 ff       	call   0x4e5280
557767:	8b e8                	mov    %eax,%ebp
557769:	55                   	push   %ebp
55776a:	e8 01 90 f9 ff       	call   0x4f0770
55776f:	50                   	push   %eax
557770:	e8 8b 7e f9 ff       	call   0x4ef600
557775:	8b f8                	mov    %eax,%edi
557777:	83 c4 10             	add    $0x10,%esp
55777a:	81 ff 59 03 00 00    	cmp    $0x359,%edi
557780:	75 07                	jne    0x557789
557782:	81 4e 48 00 10 00 00 	orl    $0x1000,0x48(%esi)
557789:	55                   	push   %ebp
55778a:	e8 f1 a3 01 00       	call   0x571b80
55778f:	83 c4 04             	add    $0x4,%esp
557792:	85 c0                	test   %eax,%eax
557794:	74 15                	je     0x5577ab
557796:	81 ff 02 03 00 00    	cmp    $0x302,%edi
55779c:	74 0d                	je     0x5577ab
55779e:	83 ff 5a             	cmp    $0x5a,%edi
5577a1:	74 08                	je     0x5577ab
5577a3:	81 ff 8c 00 00 00    	cmp    $0x8c,%edi
5577a9:	75 14                	jne    0x5577bf
5577ab:	8b 6c 24 14          	mov    0x14(%esp),%ebp
5577af:	43                   	inc    %ebx
5577b0:	55                   	push   %ebp
5577b1:	e8 0a d9 f8 ff       	call   0x4e50c0
5577b6:	83 c4 04             	add    $0x4,%esp
5577b9:	3b d8                	cmp    %eax,%ebx
5577bb:	7c a3                	jl     0x557760
5577bd:	eb 07                	jmp    0x5577c6
5577bf:	81 4e 48 00 02 00 00 	orl    $0x200,0x48(%esi)
5577c6:	56                   	push   %esi
5577c7:	e8 44 01 00 00       	call   0x557910
5577cc:	83 c4 04             	add    $0x4,%esp
5577cf:	5f                   	pop    %edi
5577d0:	5d                   	pop    %ebp
5577d1:	5b                   	pop    %ebx
5577d2:	85 c0                	test   %eax,%eax
5577d4:	74 36                	je     0x55780c
5577d6:	8b 46 7c             	mov    0x7c(%esi),%eax
5577d9:	8b 40 04             	mov    0x4(%eax),%eax
5577dc:	85 c0                	test   %eax,%eax
5577de:	74 0a                	je     0x5577ea
5577e0:	56                   	push   %esi
5577e1:	ff d0                	call   *%eax
5577e3:	83 c4 04             	add    $0x4,%esp
5577e6:	85 c0                	test   %eax,%eax
5577e8:	74 22                	je     0x55780c
5577ea:	81 4e 48 00 01 00 00 	orl    $0x100,0x48(%esi)
5577f1:	b8 01 00 00 00       	mov    $0x1,%eax
5577f6:	5e                   	pop    %esi
5577f7:	c3                   	ret
5577f8:	8b 46 7c             	mov    0x7c(%esi),%eax
5577fb:	8b 40 08             	mov    0x8(%eax),%eax
5577fe:	85 c0                	test   %eax,%eax
557800:	74 0e                	je     0x557810
557802:	56                   	push   %esi
557803:	ff d0                	call   *%eax
557805:	83 c4 04             	add    $0x4,%esp
557808:	85 c0                	test   %eax,%eax
55780a:	75 04                	jne    0x557810
55780c:	33 c0                	xor    %eax,%eax
55780e:	5e                   	pop    %esi
55780f:	c3                   	ret
557810:	ff 76 4c             	push   0x4c(%esi)
557813:	e8 98 45 01 00       	call   0x56bdb0
557818:	ff 76 50             	push   0x50(%esi)
55781b:	e8 80 4f 01 00       	call   0x56c7a0
557820:	ff 76 5c             	push   0x5c(%esi)
557823:	e8 58 3f f9 ff       	call   0x4eb780
557828:	ff 76 60             	push   0x60(%esi)
55782b:	e8 50 3f f9 ff       	call   0x4eb780
557830:	68 20 be 56 00       	push   $0x56be20
557835:	ff 76 64             	push   0x64(%esi)
557838:	e8 b3 d8 f8 ff       	call   0x4e50f0
55783d:	83 c4 18             	add    $0x18,%esp
557840:	b8 01 00 00 00       	mov    $0x1,%eax
557845:	5e                   	pop    %esi
557846:	c3                   	ret
557847:	90                   	nop
557848:	84 75 55             	test   %dh,0x55(%ebp)
55784b:	00 40 78             	add    %al,0x78(%eax)
55784e:	55                   	push   %ebp
55784f:	00 f8                	add    %bh,%al
557851:	77 55                	ja     0x5578a8
557853:	00 3c 75 55 00 d5 75 	add    %bh,0x75d50055(,%esi,2)
55785a:	55                   	push   %ebp
55785b:	00 cc                	add    %cl,%ah
55785d:	cc                   	int3
55785e:	cc                   	int3
55785f:	cc                   	int3
557860:	68 b4 ee 64 00       	push   $0x64eeb4
557865:	ff 74 24 08          	push   0x8(%esp)
557869:	e8 52 4a f9 ff       	call   0x4ec2c0
55786e:	83 c4 08             	add    $0x8,%esp
557871:	c3                   	ret
557872:	cc                   	int3
557873:	cc                   	int3
557874:	cc                   	int3
557875:	cc                   	int3
557876:	cc                   	int3
557877:	cc                   	int3
557878:	cc                   	int3
557879:	cc                   	int3
55787a:	cc                   	int3
55787b:	cc                   	int3
55787c:	cc                   	int3
55787d:	cc                   	int3
55787e:	cc                   	int3
55787f:	cc                   	int3
557880:	53                   	push   %ebx
557881:	57                   	push   %edi
557882:	8b 7c 24 0c          	mov    0xc(%esp),%edi
557886:	8b 5f 7c             	mov    0x7c(%edi),%ebx
557889:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
55788d:	74 2a                	je     0x5578b9
55788f:	ff 74 24 14          	push   0x14(%esp)
557893:	e8 f8 9f f9 ff       	call   0x4f1890
557898:	83 c4 04             	add    $0x4,%esp
55789b:	50                   	push   %eax
55789c:	ff 74 24 18          	push   0x18(%esp)
5578a0:	e8 ab 08 00 00       	call   0x558150
5578a5:	83 c4 04             	add    $0x4,%esp
5578a8:	50                   	push   %eax
5578a9:	ff 74 24 18          	push   0x18(%esp)
5578ad:	8b 43 0c             	mov    0xc(%ebx),%eax
5578b0:	57                   	push   %edi
5578b1:	ff d0                	call   *%eax
5578b3:	83 c4 10             	add    $0x10,%esp
5578b6:	5f                   	pop    %edi
5578b7:	5b                   	pop    %ebx
5578b8:	c3                   	ret
5578b9:	5f                   	pop    %edi
5578ba:	33 c0                	xor    %eax,%eax
5578bc:	5b                   	pop    %ebx
5578bd:	c3                   	ret
5578be:	cc                   	int3
5578bf:	cc                   	int3
5578c0:	b8 b4 ee 64 00       	mov    $0x64eeb4,%eax
5578c5:	c3                   	ret
5578c6:	cc                   	int3
5578c7:	cc                   	int3
5578c8:	cc                   	int3
5578c9:	cc                   	int3
5578ca:	cc                   	int3
5578cb:	cc                   	int3
5578cc:	cc                   	int3
5578cd:	cc                   	int3
5578ce:	cc                   	int3
5578cf:	cc                   	int3
5578d0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5578d4:	8b 41 7c             	mov    0x7c(%ecx),%eax
5578d7:	8b 40 10             	mov    0x10(%eax),%eax
5578da:	85 c0                	test   %eax,%eax
5578dc:	74 06                	je     0x5578e4
5578de:	89 4c 24 04          	mov    %ecx,0x4(%esp)
5578e2:	ff e0                	jmp    *%eax
5578e4:	33 c0                	xor    %eax,%eax
5578e6:	c3                   	ret
5578e7:	cc                   	int3
5578e8:	cc                   	int3
5578e9:	cc                   	int3
5578ea:	cc                   	int3
5578eb:	cc                   	int3
5578ec:	cc                   	int3
5578ed:	cc                   	int3
5578ee:	cc                   	int3
5578ef:	cc                   	int3
5578f0:	8b 44 24 08          	mov    0x8(%esp),%eax
5578f4:	ff 30                	push   (%eax)
5578f6:	8b 44 24 08          	mov    0x8(%esp),%eax
5578fa:	ff 30                	push   (%eax)
5578fc:	e8 af 25 fb ff       	call   0x509eb0
557901:	83 c4 08             	add    $0x8,%esp
557904:	c3                   	ret
557905:	cc                   	int3
557906:	cc                   	int3
557907:	cc                   	int3
557908:	cc                   	int3
557909:	cc                   	int3
55790a:	cc                   	int3
55790b:	cc                   	int3
55790c:	cc                   	int3
55790d:	cc                   	int3
55790e:	cc                   	int3
55790f:	cc                   	int3
557910:	b8 0c 00 00 00       	mov    $0xc,%eax
557915:	e8 96 9e 07 00       	call   0x5d17b0
55791a:	53                   	push   %ebx
55791b:	8b 5c 24 14          	mov    0x14(%esp),%ebx
55791f:	55                   	push   %ebp
557920:	56                   	push   %esi
557921:	57                   	push   %edi