559765:	8b 0e                	mov    (%esi),%ecx
559767:	50                   	push   %eax
559768:	56                   	push   %esi
559769:	8b 41 08             	mov    0x8(%ecx),%eax
55976c:	ff d0                	call   *%eax
55976e:	83 c4 10             	add    $0x10,%esp
559771:	85 c0                	test   %eax,%eax
559773:	7e 32                	jle    0x5597a7
559775:	ff 76 04             	push   0x4(%esi)
559778:	47                   	inc    %edi
559779:	e8 42 b9 f8 ff       	call   0x4e50c0
55977e:	83 c4 04             	add    $0x4,%esp
559781:	3b f8                	cmp    %eax,%edi
559783:	7c cf                	jl     0x559754
559785:	8b 06                	mov    (%esi),%eax
559787:	8b 40 0c             	mov    0xc(%eax),%eax
55978a:	85 c0                	test   %eax,%eax
55978c:	74 2e                	je     0x5597bc
55978e:	56                   	push   %esi
55978f:	ff d0                	call   *%eax
559791:	83 c4 04             	add    $0x4,%esp
559794:	83 f8 ff             	cmp    $0xffffffff,%eax
559797:	74 18                	je     0x5597b1
559799:	85 c0                	test   %eax,%eax
55979b:	75 1f                	jne    0x5597bc
55979d:	bb 08 f5 64 00       	mov    $0x64f508,%ebx
5597a2:	83 cf ff             	or     $0xffffffff,%edi
5597a5:	eb 63                	jmp    0x55980a
5597a7:	bb f8 f4 64 00       	mov    $0x64f4f8,%ebx
5597ac:	83 cf ff             	or     $0xffffffff,%edi
5597af:	eb 59                	jmp    0x55980a
5597b1:	83 66 10 fe          	andl   $0xfffffffe,0x10(%esi)
5597b5:	bf fe ff ff ff       	mov    $0xfffffffe,%edi
5597ba:	eb 4e                	jmp    0x55980a
5597bc:	ff 76 04             	push   0x4(%esi)
5597bf:	33 ff                	xor    %edi,%edi
5597c1:	e8 fa b8 f8 ff       	call   0x4e50c0
5597c6:	83 c4 04             	add    $0x4,%esp
5597c9:	85 c0                	test   %eax,%eax
5597cb:	7e 39                	jle    0x559806
5597cd:	0f 1f 00             	nopl   (%eax)
5597d0:	8b 06                	mov    (%esi),%eax
5597d2:	83 78 10 00          	cmpl   $0x0,0x10(%eax)
5597d6:	74 1e                	je     0x5597f6
5597d8:	57                   	push   %edi
5597d9:	ff 76 04             	push   0x4(%esi)
5597dc:	e8 9f ba f8 ff       	call   0x4e5280
5597e1:	8b 0e                	mov    (%esi),%ecx
5597e3:	50                   	push   %eax
5597e4:	56                   	push   %esi
5597e5:	8b 41 10             	mov    0x10(%ecx),%eax
5597e8:	ff d0                	call   *%eax
5597ea:	83 c4 10             	add    $0x10,%esp
5597ed:	83 f8 ff             	cmp    $0xffffffff,%eax
5597f0:	74 bf                	je     0x5597b1
5597f2:	85 c0                	test   %eax,%eax
5597f4:	74 38                	je     0x55982e
5597f6:	ff 76 04             	push   0x4(%esi)
5597f9:	47                   	inc    %edi
5597fa:	e8 c1 b8 f8 ff       	call   0x4e50c0
5597ff:	83 c4 04             	add    $0x4,%esp
559802:	3b f8                	cmp    %eax,%edi
559804:	7c ca                	jl     0x5597d0
559806:	33 db                	xor    %ebx,%ebx
559808:	33 ff                	xor    %edi,%edi
55980a:	8b 06                	mov    (%esi),%eax
55980c:	8b 40 14             	mov    0x14(%eax),%eax
55980f:	85 c0                	test   %eax,%eax
559811:	74 25                	je     0x559838
559813:	56                   	push   %esi
559814:	ff d0                	call   *%eax
559816:	83 c4 04             	add    $0x4,%esp
559819:	85 c0                	test   %eax,%eax
55981b:	7f 1b                	jg     0x559838
55981d:	85 db                	test   %ebx,%ebx
55981f:	b8 24 f5 64 00       	mov    $0x64f524,%eax
559824:	0f 45 c3             	cmovne %ebx,%eax
559827:	83 cf ff             	or     $0xffffffff,%edi
55982a:	8b d8                	mov    %eax,%ebx
55982c:	eb 0f                	jmp    0x55983d
55982e:	bb 14 f5 64 00       	mov    $0x64f514,%ebx
559833:	83 cf ff             	or     $0xffffffff,%edi
559836:	eb d2                	jmp    0x55980a
559838:	83 ff ff             	cmp    $0xffffffff,%edi
55983b:	75 25                	jne    0x559862
55983d:	68 21 02 00 00       	push   $0x221
559842:	68 b8 f4 64 00       	push   $0x64f4b8
559847:	6a 6b                	push   $0x6b
559849:	6a 71                	push   $0x71
55984b:	6a 28                	push   $0x28
55984d:	e8 2e f7 f7 ff       	call   0x4d8f80
559852:	53                   	push   %ebx
559853:	68 34 f5 64 00       	push   $0x64f534
559858:	6a 02                	push   $0x2
55985a:	e8 11 ee f7 ff       	call   0x4d8670
55985f:	83 c4 20             	add    $0x20,%esp
559862:	8b c7                	mov    %edi,%eax
559864:	5f                   	pop    %edi
559865:	5e                   	pop    %esi
559866:	5b                   	pop    %ebx
559867:	c3                   	ret
559868:	cc                   	int3
559869:	cc                   	int3
55986a:	cc                   	int3
55986b:	cc                   	int3
55986c:	cc                   	int3
55986d:	cc                   	int3
55986e:	cc                   	int3
55986f:	cc                   	int3
559870:	8b 4c 24 04          	mov    0x4(%esp),%ecx
559874:	8b 44 24 08          	mov    0x8(%esp),%eax
559878:	89 01                	mov    %eax,(%ecx)
55987a:	c3                   	ret
55987b:	cc                   	int3
55987c:	cc                   	int3
55987d:	cc                   	int3
55987e:	cc                   	int3
55987f:	cc                   	int3
559880:	8b 54 24 0c          	mov    0xc(%esp),%edx
559884:	8b c2                	mov    %edx,%eax
559886:	56                   	push   %esi
559887:	8d 70 01             	lea    0x1(%eax),%esi
55988a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
559890:	8a 08                	mov    (%eax),%cl
559892:	40                   	inc    %eax
559893:	84 c9                	test   %cl,%cl
559895:	75 f9                	jne    0x559890
559897:	2b c6                	sub    %esi,%eax
559899:	50                   	push   %eax
55989a:	52                   	push   %edx
55989b:	ff 74 24 14          	push   0x14(%esp)
55989f:	ff 74 24 14          	push   0x14(%esp)
5598a3:	e8 08 00 00 00       	call   0x5598b0
5598a8:	83 c4 10             	add    $0x10,%esp
5598ab:	5e                   	pop    %esi
5598ac:	c3                   	ret
5598ad:	cc                   	int3
5598ae:	cc                   	int3
5598af:	cc                   	int3
5598b0:	b8 24 00 00 00       	mov    $0x24,%eax
5598b5:	e8 f6 7e 07 00       	call   0x5d17b0
5598ba:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5598bf:	33 c4                	xor    %esp,%eax
5598c1:	89 44 24 20          	mov    %eax,0x20(%esp)
5598c5:	53                   	push   %ebx
5598c6:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
5598ca:	55                   	push   %ebp
5598cb:	8b 6c 24 3c          	mov    0x3c(%esp),%ebp
5598cf:	56                   	push   %esi
5598d0:	8b 74 24 38          	mov    0x38(%esp),%esi
5598d4:	83 63 10 fe          	andl   $0xfffffffe,0x10(%ebx)
5598d8:	57                   	push   %edi
5598d9:	8b 7c 24 40          	mov    0x40(%esp),%edi
5598dd:	8b 06                	mov    (%esi),%eax
5598df:	85 c0                	test   %eax,%eax
5598e1:	0f 8e 81 01 00 00    	jle    0x559a68
5598e7:	83 f8 02             	cmp    $0x2,%eax
5598ea:	0f 8e a8 00 00 00    	jle    0x559998
5598f0:	83 f8 03             	cmp    $0x3,%eax
5598f3:	0f 85 6f 01 00 00    	jne    0x559a68
5598f9:	8b 46 0c             	mov    0xc(%esi),%eax
5598fc:	85 c0                	test   %eax,%eax
5598fe:	75 0a                	jne    0x55990a
559900:	68 a6 03 00 00       	push   $0x3a6
559905:	e9 2f 01 00 00       	jmp    0x559a39
55990a:	c6 00 00             	movb   $0x0,(%eax)
55990d:	8a 07                	mov    (%edi),%al
55990f:	84 c0                	test   %al,%al
559911:	0f 84 51 01 00 00    	je     0x559a68
559917:	0f be c0             	movsbl %al,%eax
55991a:	50                   	push   %eax
55991b:	ff 76 18             	push   0x18(%esi)
55991e:	e8 4d 9a 07 00       	call   0x5d3370
559923:	83 c4 08             	add    $0x8,%esp
559926:	85 c0                	test   %eax,%eax
559928:	75 4f                	jne    0x559979
55992a:	0f be 07             	movsbl (%edi),%eax
55992d:	50                   	push   %eax
55992e:	ff 76 1c             	push   0x1c(%esi)
559931:	e8 3a 9a 07 00       	call   0x5d3370
559936:	83 c4 08             	add    $0x8,%esp
559939:	85 c0                	test   %eax,%eax
55993b:	75 1d                	jne    0x55995a
55993d:	8a 47 01             	mov    0x1(%edi),%al
559940:	47                   	inc    %edi
559941:	84 c0                	test   %al,%al
559943:	75 d2                	jne    0x559917
559945:	5f                   	pop    %edi
559946:	5e                   	pop    %esi
559947:	5d                   	pop    %ebp
559948:	33 c0                	xor    %eax,%eax
55994a:	5b                   	pop    %ebx
55994b:	8b 4c 24 20          	mov    0x20(%esp),%ecx
55994f:	33 cc                	xor    %esp,%ecx
559951:	e8 d0 80 07 00       	call   0x5d1a26
559956:	83 c4 24             	add    $0x24,%esp
559959:	c3                   	ret
55995a:	8b 46 1c             	mov    0x1c(%esi),%eax
55995d:	8b 4e 0c             	mov    0xc(%esi),%ecx
559960:	5f                   	pop    %edi
559961:	5e                   	pop    %esi
559962:	8a 00                	mov    (%eax),%al
559964:	5d                   	pop    %ebp
559965:	88 01                	mov    %al,(%ecx)
559967:	33 c0                	xor    %eax,%eax
559969:	5b                   	pop    %ebx
55996a:	8b 4c 24 20          	mov    0x20(%esp),%ecx
55996e:	33 cc                	xor    %esp,%ecx
559970:	e8 b1 80 07 00       	call   0x5d1a26
559975:	83 c4 24             	add    $0x24,%esp
559978:	c3                   	ret
559979:	8b 46 18             	mov    0x18(%esi),%eax
55997c:	8b 4e 0c             	mov    0xc(%esi),%ecx
55997f:	5f                   	pop    %edi
559980:	5e                   	pop    %esi
559981:	8a 00                	mov    (%eax),%al
559983:	5d                   	pop    %ebp
559984:	88 01                	mov    %al,(%ecx)
559986:	33 c0                	xor    %eax,%eax
559988:	5b                   	pop    %ebx
559989:	8b 4c 24 20          	mov    0x20(%esp),%ecx
55998d:	33 cc                	xor    %esp,%ecx
55998f:	e8 92 80 07 00       	call   0x5d1a26
559994:	83 c4 24             	add    $0x24,%esp
559997:	c3                   	ret
559998:	ff 76 14             	push   0x14(%esi)
55999b:	8d 44 24 24          	lea    0x24(%esp),%eax
55999f:	68 c8 7a 60 00       	push   $0x607ac8
5599a4:	6a 0d                	push   $0xd
5599a6:	50                   	push   %eax
5599a7:	e8 84 8c f8 ff       	call   0x4e2630
5599ac:	ff 76 18             	push   0x18(%esi)
5599af:	8d 44 24 24          	lea    0x24(%esp),%eax
5599b3:	68 c8 7a 60 00       	push   $0x607ac8
5599b8:	6a 0d                	push   $0xd
5599ba:	50                   	push   %eax
5599bb:	e8 70 8c f8 ff       	call   0x4e2630
5599c0:	83 c4 20             	add    $0x20,%esp
5599c3:	3b 6e 14             	cmp    0x14(%esi),%ebp
5599c6:	7d 52                	jge    0x559a1a
5599c8:	68 89 03 00 00       	push   $0x389
5599cd:	68 b8 f4 64 00       	push   $0x64f4b8
5599d2:	6a 65                	push   $0x65
5599d4:	83 4b 10 01          	orl    $0x1,0x10(%ebx)
5599d8:	6a 78                	push   $0x78
5599da:	6a 28                	push   $0x28
5599dc:	e8 9f f5 f7 ff       	call   0x4d8f80
5599e1:	68 3c f5 64 00       	push   $0x64f53c
5599e6:	8d 44 24 28          	lea    0x28(%esp),%eax
5599ea:	50                   	push   %eax
5599eb:	68 bc 76 60 00       	push   $0x6076bc
5599f0:	8d 44 24 40          	lea    0x40(%esp),%eax
5599f4:	50                   	push   %eax
5599f5:	68 48 f5 64 00       	push   $0x64f548
5599fa:	6a 05                	push   $0x5
5599fc:	e8 6f ec f7 ff       	call   0x4d8670
559a01:	83 c4 2c             	add    $0x2c,%esp
559a04:	5f                   	pop    %edi
559a05:	5e                   	pop    %esi
559a06:	5d                   	pop    %ebp
559a07:	83 c8 ff             	or     $0xffffffff,%eax
559a0a:	5b                   	pop    %ebx
559a0b:	8b 4c 24 20          	mov    0x20(%esp),%ecx
559a0f:	33 cc                	xor    %esp,%ecx
559a11:	e8 10 80 07 00       	call   0x5d1a26
559a16:	83 c4 24             	add    $0x24,%esp
559a19:	c3                   	ret
559a1a:	3b 6e 18             	cmp    0x18(%esi),%ebp
559a1d:	7e 0e                	jle    0x559a2d
559a1f:	68 90 03 00 00       	push   $0x390
559a24:	68 b8 f4 64 00       	push   $0x64f4b8
559a29:	6a 64                	push   $0x64
559a2b:	eb a7                	jmp    0x5599d4
559a2d:	8b 46 0c             	mov    0xc(%esi),%eax
559a30:	85 c0                	test   %eax,%eax
559a32:	75 1a                	jne    0x559a4e
559a34:	68 98 03 00 00       	push   $0x398
559a39:	68 b8 f4 64 00       	push   $0x64f4b8
559a3e:	6a 69                	push   $0x69
559a40:	6a 78                	push   $0x78
559a42:	6a 28                	push   $0x28
559a44:	e8 37 f5 f7 ff       	call   0x4d8f80
559a49:	83 c4 14             	add    $0x14,%esp
559a4c:	eb b6                	jmp    0x559a04
559a4e:	55                   	push   %ebp
559a4f:	57                   	push   %edi
559a50:	50                   	push   %eax
559a51:	e8 7a 93 07 00       	call   0x5d2dd0
559a56:	83 c4 0c             	add    $0xc,%esp
559a59:	3b 6e 18             	cmp    0x18(%esi),%ebp
559a5c:	7f 07                	jg     0x559a65
559a5e:	8b 46 0c             	mov    0xc(%esi),%eax
559a61:	c6 04 28 00          	movb   $0x0,(%eax,%ebp,1)
559a65:	89 6e 10             	mov    %ebp,0x10(%esi)
559a68:	8b 4c 24 30          	mov    0x30(%esp),%ecx
559a6c:	33 c0                	xor    %eax,%eax
559a6e:	5f                   	pop    %edi
559a6f:	5e                   	pop    %esi
559a70:	5d                   	pop    %ebp
559a71:	5b                   	pop    %ebx
559a72:	33 cc                	xor    %esp,%ecx
559a74:	e8 ad 7f 07 00       	call   0x5d1a26
559a79:	83 c4 24             	add    $0x24,%esp
559a7c:	c3                   	ret
559a7d:	cc                   	int3
559a7e:	cc                   	int3
559a7f:	cc                   	int3
559a80:	56                   	push   %esi
559a81:	8b 74 24 08          	mov    0x8(%esp),%esi
559a85:	f6 46 20 01          	testb  $0x1,0x20(%esi)
559a89:	74 47                	je     0x559ad2
559a8b:	6a 37                	push   $0x37
559a8d:	68 b8 f4 64 00       	push   $0x64f4b8
559a92:	ff 76 04             	push   0x4(%esi)
559a95:	e8 e6 6c f8 ff       	call   0x4e0780
559a9a:	83 c4 0c             	add    $0xc,%esp
559a9d:	83 3e 03             	cmpl   $0x3,(%esi)
559aa0:	75 30                	jne    0x559ad2
559aa2:	6a 3a                	push   $0x3a
559aa4:	68 b8 f4 64 00       	push   $0x64f4b8
559aa9:	ff 76 14             	push   0x14(%esi)
559aac:	e8 cf 6c f8 ff       	call   0x4e0780
559ab1:	6a 3b                	push   $0x3b
559ab3:	68 b8 f4 64 00       	push   $0x64f4b8
559ab8:	ff 76 18             	push   0x18(%esi)
559abb:	e8 c0 6c f8 ff       	call   0x4e0780
559ac0:	6a 3c                	push   $0x3c
559ac2:	68 b8 f4 64 00       	push   $0x64f4b8
559ac7:	ff 76 1c             	push   0x1c(%esi)
559aca:	e8 b1 6c f8 ff       	call   0x4e0780
559acf:	83 c4 24             	add    $0x24,%esp
559ad2:	6a 46                	push   $0x46
559ad4:	68 b8 f4 64 00       	push   $0x64f4b8
559ad9:	56                   	push   %esi
559ada:	e8 a1 6c f8 ff       	call   0x4e0780
559adf:	83 c4 0c             	add    $0xc,%esp
559ae2:	5e                   	pop    %esi
559ae3:	c3                   	ret
559ae4:	cc                   	int3
559ae5:	cc                   	int3
559ae6:	cc                   	int3
559ae7:	cc                   	int3
559ae8:	cc                   	int3
559ae9:	cc                   	int3
559aea:	cc                   	int3
559aeb:	cc                   	int3
559aec:	cc                   	int3
559aed:	cc                   	int3
559aee:	cc                   	int3
559aef:	cc                   	int3