5517aa:	57                   	push   %edi
5517ab:	8b f2                	mov    %edx,%esi
5517ad:	8b 38                	mov    (%eax),%edi
5517af:	80 78 0a 04          	cmpb   $0x4,0xa(%eax)
5517b3:	0f 85 f0 00 00 00    	jne    0x5518a9
5517b9:	80 78 09 08          	cmpb   $0x8,0x9(%eax)
5517bd:	75 5b                	jne    0x55181a
5517bf:	f6 c1 80             	test   $0x80,%cl
5517c2:	74 29                	je     0x5517ed
5517c4:	83 c2 03             	add    $0x3,%edx
5517c7:	83 c6 04             	add    $0x4,%esi
5517ca:	b9 01 00 00 00       	mov    $0x1,%ecx
5517cf:	3b f9                	cmp    %ecx,%edi
5517d1:	76 38                	jbe    0x55180b
5517d3:	8a 1e                	mov    (%esi),%bl
5517d5:	46                   	inc    %esi
5517d6:	88 1a                	mov    %bl,(%edx)
5517d8:	42                   	inc    %edx
5517d9:	8a 1e                	mov    (%esi),%bl
5517db:	46                   	inc    %esi
5517dc:	88 1a                	mov    %bl,(%edx)
5517de:	42                   	inc    %edx
5517df:	8a 1e                	mov    (%esi),%bl
5517e1:	46                   	inc    %esi
5517e2:	88 1a                	mov    %bl,(%edx)
5517e4:	42                   	inc    %edx
5517e5:	46                   	inc    %esi
5517e6:	41                   	inc    %ecx
5517e7:	3b f9                	cmp    %ecx,%edi
5517e9:	77 e8                	ja     0x5517d3
5517eb:	eb 1e                	jmp    0x55180b
5517ed:	33 c9                	xor    %ecx,%ecx
5517ef:	3b f9                	cmp    %ecx,%edi
5517f1:	76 18                	jbe    0x55180b
5517f3:	46                   	inc    %esi
5517f4:	41                   	inc    %ecx
5517f5:	8a 1e                	mov    (%esi),%bl
5517f7:	46                   	inc    %esi
5517f8:	88 1a                	mov    %bl,(%edx)
5517fa:	42                   	inc    %edx
5517fb:	8a 1e                	mov    (%esi),%bl
5517fd:	46                   	inc    %esi
5517fe:	88 1a                	mov    %bl,(%edx)
551800:	42                   	inc    %edx
551801:	8a 1e                	mov    (%esi),%bl
551803:	46                   	inc    %esi
551804:	88 1a                	mov    %bl,(%edx)
551806:	42                   	inc    %edx
551807:	3b f9                	cmp    %ecx,%edi
551809:	77 e8                	ja     0x5517f3
55180b:	c6 40 0b 18          	movb   $0x18,0xb(%eax)
55180f:	8d 14 7f             	lea    (%edi,%edi,2),%edx
551812:	89 50 04             	mov    %edx,0x4(%eax)
551815:	e9 82 00 00 00       	jmp    0x55189c
55181a:	f6 c1 80             	test   $0x80,%cl
55181d:	74 3d                	je     0x55185c
55181f:	83 c6 08             	add    $0x8,%esi
551822:	83 c2 06             	add    $0x6,%edx
551825:	b9 01 00 00 00       	mov    $0x1,%ecx
55182a:	3b f9                	cmp    %ecx,%edi
55182c:	76 60                	jbe    0x55188e
55182e:	8a 1e                	mov    (%esi),%bl
551830:	46                   	inc    %esi
551831:	88 1a                	mov    %bl,(%edx)
551833:	42                   	inc    %edx
551834:	8a 1e                	mov    (%esi),%bl
551836:	46                   	inc    %esi
551837:	88 1a                	mov    %bl,(%edx)
551839:	42                   	inc    %edx
55183a:	8a 1e                	mov    (%esi),%bl
55183c:	46                   	inc    %esi
55183d:	88 1a                	mov    %bl,(%edx)
55183f:	42                   	inc    %edx
551840:	8a 1e                	mov    (%esi),%bl
551842:	46                   	inc    %esi
551843:	88 1a                	mov    %bl,(%edx)
551845:	42                   	inc    %edx
551846:	8a 1e                	mov    (%esi),%bl
551848:	46                   	inc    %esi
551849:	88 1a                	mov    %bl,(%edx)
55184b:	42                   	inc    %edx
55184c:	8a 1e                	mov    (%esi),%bl
55184e:	46                   	inc    %esi
55184f:	88 1a                	mov    %bl,(%edx)
551851:	42                   	inc    %edx
551852:	83 c6 02             	add    $0x2,%esi
551855:	41                   	inc    %ecx
551856:	3b f9                	cmp    %ecx,%edi
551858:	77 d4                	ja     0x55182e
55185a:	eb 32                	jmp    0x55188e
55185c:	33 c9                	xor    %ecx,%ecx
55185e:	3b f9                	cmp    %ecx,%edi
551860:	76 2c                	jbe    0x55188e
551862:	83 c6 02             	add    $0x2,%esi
551865:	41                   	inc    %ecx
551866:	8a 1e                	mov    (%esi),%bl
551868:	46                   	inc    %esi
551869:	88 1a                	mov    %bl,(%edx)
55186b:	42                   	inc    %edx
55186c:	8a 1e                	mov    (%esi),%bl
55186e:	46                   	inc    %esi
55186f:	88 1a                	mov    %bl,(%edx)
551871:	42                   	inc    %edx
551872:	8a 1e                	mov    (%esi),%bl
551874:	46                   	inc    %esi
551875:	88 1a                	mov    %bl,(%edx)
551877:	42                   	inc    %edx
551878:	8a 1e                	mov    (%esi),%bl
55187a:	46                   	inc    %esi
55187b:	88 1a                	mov    %bl,(%edx)
55187d:	42                   	inc    %edx
55187e:	8a 1e                	mov    (%esi),%bl
551880:	46                   	inc    %esi
551881:	88 1a                	mov    %bl,(%edx)
551883:	42                   	inc    %edx
551884:	8a 1e                	mov    (%esi),%bl
551886:	46                   	inc    %esi
551887:	88 1a                	mov    %bl,(%edx)
551889:	42                   	inc    %edx
55188a:	3b f9                	cmp    %ecx,%edi
55188c:	77 d4                	ja     0x551862
55188e:	8b d7                	mov    %edi,%edx
551890:	03 d2                	add    %edx,%edx
551892:	c6 40 0b 30          	movb   $0x30,0xb(%eax)
551896:	8d 14 52             	lea    (%edx,%edx,2),%edx
551899:	89 50 04             	mov    %edx,0x4(%eax)
55189c:	c6 40 0a 03          	movb   $0x3,0xa(%eax)
5518a0:	80 60 08 fb          	andb   $0xfb,0x8(%eax)
5518a4:	e9 9d 00 00 00       	jmp    0x551946
5518a9:	8a 58 0a             	mov    0xa(%eax),%bl
5518ac:	80 fb 02             	cmp    $0x2,%bl
5518af:	0f 85 91 00 00 00    	jne    0x551946
5518b5:	8a 58 09             	mov    0x9(%eax),%bl
5518b8:	80 fb 08             	cmp    $0x8,%bl
5518bb:	75 34                	jne    0x5518f1
5518bd:	f6 c1 80             	test   $0x80,%cl
5518c0:	74 14                	je     0x5518d6
5518c2:	33 c9                	xor    %ecx,%ecx
5518c4:	3b f9                	cmp    %ecx,%edi
5518c6:	76 20                	jbe    0x5518e8
5518c8:	8a 1e                	mov    (%esi),%bl
5518ca:	46                   	inc    %esi
5518cb:	88 1a                	mov    %bl,(%edx)
5518cd:	42                   	inc    %edx
5518ce:	46                   	inc    %esi
5518cf:	41                   	inc    %ecx
5518d0:	3b f9                	cmp    %ecx,%edi
5518d2:	77 f4                	ja     0x5518c8
5518d4:	eb 12                	jmp    0x5518e8
5518d6:	33 c9                	xor    %ecx,%ecx
5518d8:	3b f9                	cmp    %ecx,%edi
5518da:	76 0c                	jbe    0x5518e8
5518dc:	46                   	inc    %esi
5518dd:	41                   	inc    %ecx
5518de:	8a 1e                	mov    (%esi),%bl
5518e0:	46                   	inc    %esi
5518e1:	88 1a                	mov    %bl,(%edx)
5518e3:	42                   	inc    %edx
5518e4:	3b f9                	cmp    %ecx,%edi
5518e6:	77 f4                	ja     0x5518dc
5518e8:	c6 40 0b 08          	movb   $0x8,0xb(%eax)
5518ec:	89 78 04             	mov    %edi,0x4(%eax)
5518ef:	eb 4d                	jmp    0x55193e
5518f1:	f6 c1 80             	test   $0x80,%cl
5518f4:	74 25                	je     0x55191b
5518f6:	83 c6 04             	add    $0x4,%esi
5518f9:	83 c2 02             	add    $0x2,%edx
5518fc:	b9 01 00 00 00       	mov    $0x1,%ecx
551901:	3b f9                	cmp    %ecx,%edi
551903:	76 30                	jbe    0x551935
551905:	8a 1e                	mov    (%esi),%bl
551907:	46                   	inc    %esi
551908:	88 1a                	mov    %bl,(%edx)
55190a:	42                   	inc    %edx
55190b:	8a 1e                	mov    (%esi),%bl
55190d:	46                   	inc    %esi
55190e:	88 1a                	mov    %bl,(%edx)
551910:	42                   	inc    %edx
551911:	83 c6 02             	add    $0x2,%esi
551914:	41                   	inc    %ecx
551915:	3b f9                	cmp    %ecx,%edi
551917:	77 ec                	ja     0x551905
551919:	eb 1a                	jmp    0x551935
55191b:	33 c9                	xor    %ecx,%ecx
55191d:	3b f9                	cmp    %ecx,%edi
55191f:	76 14                	jbe    0x551935
551921:	83 c6 02             	add    $0x2,%esi
551924:	41                   	inc    %ecx
551925:	8a 1e                	mov    (%esi),%bl
551927:	46                   	inc    %esi
551928:	88 1a                	mov    %bl,(%edx)
55192a:	42                   	inc    %edx
55192b:	8a 1e                	mov    (%esi),%bl
55192d:	46                   	inc    %esi
55192e:	88 1a                	mov    %bl,(%edx)
551930:	42                   	inc    %edx
551931:	3b f9                	cmp    %ecx,%edi
551933:	77 ec                	ja     0x551921
551935:	c6 40 0b 10          	movb   $0x10,0xb(%eax)
551939:	03 ff                	add    %edi,%edi
55193b:	89 78 04             	mov    %edi,0x4(%eax)
55193e:	c6 40 0a 01          	movb   $0x1,0xa(%eax)
551942:	80 60 08 fb          	andb   $0xfb,0x8(%eax)
551946:	5f                   	pop    %edi
551947:	5e                   	pop    %esi
551948:	5b                   	pop    %ebx
551949:	c3                   	ret
55194a:	90                   	nop
55194b:	90                   	nop
55194c:	53                   	push   %ebx
55194d:	56                   	push   %esi
55194e:	57                   	push   %edi
55194f:	8b fa                	mov    %edx,%edi
551951:	8a 50 08             	mov    0x8(%eax),%dl
551954:	f6 c2 02             	test   $0x2,%dl
551957:	0f 84 bc 00 00 00    	je     0x551a19
55195d:	80 78 09 08          	cmpb   $0x8,0x9(%eax)
551961:	8b 08                	mov    (%eax),%ecx
551963:	75 4f                	jne    0x5519b4
551965:	80 fa 02             	cmp    $0x2,%dl
551968:	75 23                	jne    0x55198d
55196a:	33 f6                	xor    %esi,%esi
55196c:	8b c7                	mov    %edi,%eax
55196e:	3b ce                	cmp    %esi,%ecx
551970:	0f 86 a3 00 00 00    	jbe    0x551a19
551976:	8a 10                	mov    (%eax),%dl
551978:	8a 58 02             	mov    0x2(%eax),%bl
55197b:	88 18                	mov    %bl,(%eax)
55197d:	88 50 02             	mov    %dl,0x2(%eax)
551980:	46                   	inc    %esi
551981:	83 c0 03             	add    $0x3,%eax
551984:	3b ce                	cmp    %esi,%ecx
551986:	77 ee                	ja     0x551976
551988:	e9 8c 00 00 00       	jmp    0x551a19
55198d:	8a 40 08             	mov    0x8(%eax),%al
551990:	3c 06                	cmp    $0x6,%al
551992:	0f 85 81 00 00 00    	jne    0x551a19
551998:	33 f6                	xor    %esi,%esi
55199a:	8b c7                	mov    %edi,%eax
55199c:	3b ce                	cmp    %esi,%ecx
55199e:	76 79                	jbe    0x551a19
5519a0:	8a 10                	mov    (%eax),%dl
5519a2:	8a 58 02             	mov    0x2(%eax),%bl
5519a5:	88 18                	mov    %bl,(%eax)
5519a7:	88 50 02             	mov    %dl,0x2(%eax)
5519aa:	46                   	inc    %esi
5519ab:	83 c0 04             	add    $0x4,%eax
5519ae:	3b ce                	cmp    %esi,%ecx
5519b0:	77 ee                	ja     0x5519a0
5519b2:	eb 65                	jmp    0x551a19
5519b4:	8a 50 09             	mov    0x9(%eax),%dl
5519b7:	80 fa 10             	cmp    $0x10,%dl
5519ba:	75 5d                	jne    0x551a19
5519bc:	8a 50 08             	mov    0x8(%eax),%dl
5519bf:	80 fa 02             	cmp    $0x2,%dl
5519c2:	75 28                	jne    0x5519ec
5519c4:	33 f6                	xor    %esi,%esi
5519c6:	8b c7                	mov    %edi,%eax
5519c8:	3b ce                	cmp    %esi,%ecx
5519ca:	76 4d                	jbe    0x551a19
5519cc:	8a 10                	mov    (%eax),%dl
5519ce:	8a 58 04             	mov    0x4(%eax),%bl
5519d1:	88 18                	mov    %bl,(%eax)
5519d3:	88 50 04             	mov    %dl,0x4(%eax)
5519d6:	8a 50 01             	mov    0x1(%eax),%dl
5519d9:	8a 58 05             	mov    0x5(%eax),%bl
5519dc:	88 58 01             	mov    %bl,0x1(%eax)
5519df:	88 50 05             	mov    %dl,0x5(%eax)
5519e2:	46                   	inc    %esi
5519e3:	83 c0 06             	add    $0x6,%eax
5519e6:	3b ce                	cmp    %esi,%ecx
5519e8:	77 e2                	ja     0x5519cc
5519ea:	eb 2d                	jmp    0x551a19
5519ec:	8a 40 08             	mov    0x8(%eax),%al
5519ef:	3c 06                	cmp    $0x6,%al
5519f1:	75 26                	jne    0x551a19
5519f3:	33 f6                	xor    %esi,%esi
5519f5:	8b c7                	mov    %edi,%eax
5519f7:	3b ce                	cmp    %esi,%ecx
5519f9:	76 1e                	jbe    0x551a19
5519fb:	8a 10                	mov    (%eax),%dl
5519fd:	8a 58 04             	mov    0x4(%eax),%bl
551a00:	88 18                	mov    %bl,(%eax)
551a02:	88 50 04             	mov    %dl,0x4(%eax)
551a05:	8a 50 01             	mov    0x1(%eax),%dl
551a08:	8a 58 05             	mov    0x5(%eax),%bl
551a0b:	88 58 01             	mov    %bl,0x1(%eax)
551a0e:	88 50 05             	mov    %dl,0x5(%eax)
551a11:	46                   	inc    %esi
551a12:	83 c0 08             	add    $0x8,%eax
551a15:	3b ce                	cmp    %esi,%ecx
551a17:	77 e2                	ja     0x5519fb
551a19:	5f                   	pop    %edi
551a1a:	5e                   	pop    %esi
551a1b:	5b                   	pop    %ebx
551a1c:	c3                   	ret
551a1d:	90                   	nop
551a1e:	90                   	nop
551a1f:	90                   	nop
551a20:	55                   	push   %ebp
551a21:	8b ec                	mov    %esp,%ebp
551a23:	89 50 20             	mov    %edx,0x20(%eax)
551a26:	88 48 24             	mov    %cl,0x24(%eax)
551a29:	8a 55 08             	mov    0x8(%ebp),%dl
551a2c:	88 50 25             	mov    %dl,0x25(%eax)
551a2f:	5d                   	pop    %ebp
551a30:	c2 04 00             	ret    $0x4
551a33:	90                   	nop
551a34:	8b 40 20             	mov    0x20(%eax),%eax
551a37:	c3                   	ret
551a38:	33 c9                	xor    %ecx,%ecx
551a3a:	33 d2                	xor    %edx,%edx
551a3c:	e8 03 00 00 00       	call   0x551a44
551a41:	c3                   	ret
551a42:	90                   	nop
551a43:	90                   	nop
551a44:	53                   	push   %ebx
551a45:	56                   	push   %esi
551a46:	81 c4 e4 fd ff ff    	add    $0xfffffde4,%esp
551a4c:	83 f8 02             	cmp    $0x2,%eax
551a4f:	75 07                	jne    0x551a58
551a51:	be 20 01 00 00       	mov    $0x120,%esi
551a56:	eb 0e                	jmp    0x551a66
551a58:	48                   	dec    %eax
551a59:	75 07                	jne    0x551a62
551a5b:	be 1c 02 00 00       	mov    $0x21c,%esi
551a60:	eb 04                	jmp    0x551a66
551a62:	33 c0                	xor    %eax,%eax
551a64:	eb 43                	jmp    0x551aa9
551a66:	85 d2                	test   %edx,%edx
551a68:	74 24                	je     0x551a8e
551a6a:	8b c4                	mov    %esp,%eax
551a6c:	8b da                	mov    %edx,%ebx
551a6e:	8b d6                	mov    %esi,%edx
551a70:	89 88 00 02 00 00    	mov    %ecx,0x200(%eax)
551a76:	ff d3                	call   *%ebx
551a78:	8b d8                	mov    %eax,%ebx
551a7a:	85 db                	test   %ebx,%ebx
551a7c:	74 0c                	je     0x551a8a
551a7e:	56                   	push   %esi
551a7f:	6a 00                	push   $0x0
551a81:	53                   	push   %ebx
551a82:	e8 9d 48 fd ff       	call   0x526324
551a87:	83 c4 0c             	add    $0xc,%esp
551a8a:	8b c3                	mov    %ebx,%eax
551a8c:	eb 1b                	jmp    0x551aa9
551a8e:	56                   	push   %esi
551a8f:	e8 60 49 fd ff       	call   0x5263f4
551a94:	59                   	pop    %ecx
551a95:	8b d8                	mov    %eax,%ebx