5a87ed:	56                   	push   %esi
5a87ee:	8b 74 24 10          	mov    0x10(%esp),%esi
5a87f2:	0f b6 10             	movzbl (%eax),%edx
5a87f5:	c1 e2 10             	shl    $0x10,%edx
5a87f8:	89 16                	mov    %edx,(%esi)
5a87fa:	8b 07                	mov    (%edi),%eax
5a87fc:	0f b6 48 01          	movzbl 0x1(%eax),%ecx
5a8800:	c1 e1 08             	shl    $0x8,%ecx
5a8803:	0b ca                	or     %edx,%ecx
5a8805:	89 0e                	mov    %ecx,(%esi)
5a8807:	8b 07                	mov    (%edi),%eax
5a8809:	0f b6 40 02          	movzbl 0x2(%eax),%eax
5a880d:	0b c1                	or     %ecx,%eax
5a880f:	89 06                	mov    %eax,(%esi)
5a8811:	b8 01 00 00 00       	mov    $0x1,%eax
5a8816:	83 07 03             	addl   $0x3,(%edi)
5a8819:	83 47 04 fd          	addl   $0xfffffffd,0x4(%edi)
5a881d:	5e                   	pop    %esi
5a881e:	5f                   	pop    %edi
5a881f:	c3                   	ret
5a8820:	33 c0                	xor    %eax,%eax
5a8822:	5f                   	pop    %edi
5a8823:	c3                   	ret
5a8824:	cc                   	int3
5a8825:	cc                   	int3
5a8826:	cc                   	int3
5a8827:	cc                   	int3
5a8828:	cc                   	int3
5a8829:	cc                   	int3
5a882a:	cc                   	int3
5a882b:	cc                   	int3
5a882c:	cc                   	int3
5a882d:	cc                   	int3
5a882e:	cc                   	int3
5a882f:	cc                   	int3
5a8830:	57                   	push   %edi
5a8831:	8b 7c 24 08          	mov    0x8(%esp),%edi
5a8835:	83 7f 04 04          	cmpl   $0x4,0x4(%edi)
5a8839:	72 42                	jb     0x5a887d
5a883b:	8b 07                	mov    (%edi),%eax
5a883d:	56                   	push   %esi
5a883e:	8b 74 24 10          	mov    0x10(%esp),%esi
5a8842:	0f b6 08             	movzbl (%eax),%ecx
5a8845:	c1 e1 18             	shl    $0x18,%ecx
5a8848:	89 0e                	mov    %ecx,(%esi)
5a884a:	8b 07                	mov    (%edi),%eax
5a884c:	0f b6 50 01          	movzbl 0x1(%eax),%edx
5a8850:	c1 e2 10             	shl    $0x10,%edx
5a8853:	0b d1                	or     %ecx,%edx
5a8855:	89 16                	mov    %edx,(%esi)
5a8857:	8b 07                	mov    (%edi),%eax
5a8859:	0f b6 48 02          	movzbl 0x2(%eax),%ecx
5a885d:	c1 e1 08             	shl    $0x8,%ecx
5a8860:	0b ca                	or     %edx,%ecx
5a8862:	89 0e                	mov    %ecx,(%esi)
5a8864:	8b 07                	mov    (%edi),%eax
5a8866:	0f b6 40 03          	movzbl 0x3(%eax),%eax
5a886a:	0b c1                	or     %ecx,%eax
5a886c:	89 06                	mov    %eax,(%esi)
5a886e:	b8 01 00 00 00       	mov    $0x1,%eax
5a8873:	83 07 04             	addl   $0x4,(%edi)
5a8876:	83 47 04 fc          	addl   $0xfffffffc,0x4(%edi)
5a887a:	5e                   	pop    %esi
5a887b:	5f                   	pop    %edi
5a887c:	c3                   	ret
5a887d:	33 c0                	xor    %eax,%eax
5a887f:	5f                   	pop    %edi
5a8880:	c3                   	ret
5a8881:	cc                   	int3
5a8882:	cc                   	int3
5a8883:	cc                   	int3
5a8884:	cc                   	int3
5a8885:	cc                   	int3
5a8886:	cc                   	int3
5a8887:	cc                   	int3
5a8888:	cc                   	int3
5a8889:	cc                   	int3
5a888a:	cc                   	int3
5a888b:	cc                   	int3
5a888c:	cc                   	int3
5a888d:	cc                   	int3
5a888e:	cc                   	int3
5a888f:	cc                   	int3
5a8890:	53                   	push   %ebx
5a8891:	56                   	push   %esi
5a8892:	57                   	push   %edi
5a8893:	8b 7c 24 14          	mov    0x14(%esp),%edi
5a8897:	68 a4 01 00 00       	push   $0x1a4
5a889c:	68 f8 47 66 00       	push   $0x6647f8
5a88a1:	ff 37                	push   (%edi)
5a88a3:	e8 d8 7e f3 ff       	call   0x4e0780
5a88a8:	8b 5c 24 24          	mov    0x24(%esp),%ebx
5a88ac:	83 c4 0c             	add    $0xc,%esp
5a88af:	8b 44 24 10          	mov    0x10(%esp),%eax
5a88b3:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
5a88b9:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
5a88bf:	8b 70 04             	mov    0x4(%eax),%esi
5a88c2:	85 f6                	test   %esi,%esi
5a88c4:	74 21                	je     0x5a88e7
5a88c6:	68 ad 01 00 00       	push   $0x1ad
5a88cb:	68 f8 47 66 00       	push   $0x6647f8
5a88d0:	56                   	push   %esi
5a88d1:	ff 30                	push   (%eax)
5a88d3:	e8 98 97 f3 ff       	call   0x4e2070
5a88d8:	83 c4 10             	add    $0x10,%esp
5a88db:	89 07                	mov    %eax,(%edi)
5a88dd:	85 c0                	test   %eax,%eax
5a88df:	75 04                	jne    0x5a88e5
5a88e1:	5f                   	pop    %edi
5a88e2:	5e                   	pop    %esi
5a88e3:	5b                   	pop    %ebx
5a88e4:	c3                   	ret
5a88e5:	89 33                	mov    %esi,(%ebx)
5a88e7:	5f                   	pop    %edi
5a88e8:	5e                   	pop    %esi
5a88e9:	b8 01 00 00 00       	mov    $0x1,%eax
5a88ee:	5b                   	pop    %ebx
5a88ef:	c3                   	ret
5a88f0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5a88f4:	81 39 00 03 00 00    	cmpl   $0x300,(%ecx)
5a88fa:	7e 0f                	jle    0x5a890b
5a88fc:	8b 41 7c             	mov    0x7c(%ecx),%eax
5a88ff:	8b 80 10 02 00 00    	mov    0x210(%eax),%eax
5a8905:	f6 40 14 04          	testb  $0x4,0x14(%eax)
5a8909:	75 0f                	jne    0x5a891a
5a890b:	8b 41 7c             	mov    0x7c(%ecx),%eax
5a890e:	8b 80 10 02 00 00    	mov    0x210(%eax),%eax
5a8914:	f6 40 14 50          	testb  $0x50,0x14(%eax)
5a8918:	74 03                	je     0x5a891d
5a891a:	33 c0                	xor    %eax,%eax
5a891c:	c3                   	ret
5a891d:	b8 01 00 00 00       	mov    $0x1,%eax
5a8922:	c3                   	ret
5a8923:	cc                   	int3
5a8924:	cc                   	int3
5a8925:	cc                   	int3
5a8926:	cc                   	int3
5a8927:	cc                   	int3
5a8928:	cc                   	int3
5a8929:	cc                   	int3
5a892a:	cc                   	int3
5a892b:	cc                   	int3
5a892c:	cc                   	int3
5a892d:	cc                   	int3
5a892e:	cc                   	int3
5a892f:	cc                   	int3
5a8930:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5a8934:	8b 41 40             	mov    0x40(%ecx),%eax
5a8937:	83 c0 f4             	add    $0xfffffff4,%eax
5a893a:	83 f8 24             	cmp    $0x24,%eax
5a893d:	0f 87 25 01 00 00    	ja     0x5a8a68
5a8943:	0f b6 80 b8 8a 5a 00 	movzbl 0x5a8ab8(%eax),%eax
5a894a:	ff 24 85 8c 8a 5a 00 	jmp    *0x5a8a8c(,%eax,4)
5a8951:	8b 41 04             	mov    0x4(%ecx),%eax
5a8954:	b9 20 73 5a 00       	mov    $0x5a7320,%ecx
5a8959:	8b 40 64             	mov    0x64(%eax),%eax
5a895c:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5a8960:	b8 80 4f 59 00       	mov    $0x594f80,%eax
5a8965:	0f 44 c8             	cmove  %eax,%ecx
5a8968:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a896c:	89 08                	mov    %ecx,(%eax)
5a896e:	8b 44 24 10          	mov    0x10(%esp),%eax
5a8972:	c7 00 01 01 00 00    	movl   $0x101,(%eax)
5a8978:	b8 01 00 00 00       	mov    $0x1,%eax
5a897d:	c3                   	ret
5a897e:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a8982:	c7 00 70 a8 5a 00    	movl   $0x5aa870,(%eax)
5a8988:	8b 44 24 10          	mov    0x10(%esp),%eax
5a898c:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
5a8992:	b8 01 00 00 00       	mov    $0x1,%eax
5a8997:	c3                   	ret
5a8998:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a899c:	c7 00 30 af 5a 00    	movl   $0x5aaf30,(%eax)
5a89a2:	8b 44 24 10          	mov    0x10(%esp),%eax
5a89a6:	c7 00 05 00 00 00    	movl   $0x5,(%eax)
5a89ac:	b8 01 00 00 00       	mov    $0x1,%eax
5a89b1:	c3                   	ret
5a89b2:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a89b6:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
5a89bc:	8b 44 24 10          	mov    0x10(%esp),%eax
5a89c0:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%eax)
5a89c6:	b8 01 00 00 00       	mov    $0x1,%eax
5a89cb:	c3                   	ret
5a89cc:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a89d0:	c7 00 40 a7 5a 00    	movl   $0x5aa740,(%eax)
5a89d6:	8b 44 24 10          	mov    0x10(%esp),%eax
5a89da:	c7 00 0b 00 00 00    	movl   $0xb,(%eax)
5a89e0:	b8 01 00 00 00       	mov    $0x1,%eax
5a89e5:	c3                   	ret
5a89e6:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a89ea:	c7 00 40 ab 5a 00    	movl   $0x5aab40,(%eax)
5a89f0:	8b 44 24 10          	mov    0x10(%esp),%eax
5a89f4:	c7 00 10 00 00 00    	movl   $0x10,(%eax)
5a89fa:	b8 01 00 00 00       	mov    $0x1,%eax
5a89ff:	c3                   	ret
5a8a00:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a8a04:	c7 00 b0 4c 59 00    	movl   $0x594cb0,(%eax)
5a8a0a:	8b 44 24 10          	mov    0x10(%esp),%eax
5a8a0e:	c7 00 0f 00 00 00    	movl   $0xf,(%eax)
5a8a14:	b8 01 00 00 00       	mov    $0x1,%eax
5a8a19:	c3                   	ret
5a8a1a:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a8a1e:	c7 00 70 af 5a 00    	movl   $0x5aaf70,(%eax)
5a8a24:	8b 44 24 10          	mov    0x10(%esp),%eax
5a8a28:	c7 00 43 00 00 00    	movl   $0x43,(%eax)
5a8a2e:	b8 01 00 00 00       	mov    $0x1,%eax
5a8a33:	c3                   	ret
5a8a34:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a8a38:	c7 00 c0 4f 59 00    	movl   $0x594fc0,(%eax)
5a8a3e:	8b 44 24 10          	mov    0x10(%esp),%eax
5a8a42:	c7 00 14 00 00 00    	movl   $0x14,(%eax)
5a8a48:	b8 01 00 00 00       	mov    $0x1,%eax
5a8a4d:	c3                   	ret
5a8a4e:	8b 44 24 0c          	mov    0xc(%esp),%eax
5a8a52:	c7 00 30 51 59 00    	movl   $0x595130,(%eax)
5a8a58:	8b 44 24 10          	mov    0x10(%esp),%eax
5a8a5c:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
5a8a62:	b8 01 00 00 00       	mov    $0x1,%eax
5a8a67:	c3                   	ret
5a8a68:	68 7f 03 00 00       	push   $0x37f
5a8a6d:	68 18 81 66 00       	push   $0x668118
5a8a72:	68 ec 00 00 00       	push   $0xec
5a8a77:	68 ae 01 00 00       	push   $0x1ae
5a8a7c:	6a 50                	push   $0x50
5a8a7e:	51                   	push   %ecx
5a8a7f:	e8 8c 66 fe ff       	call   0x58f110
5a8a84:	83 c4 18             	add    $0x18,%esp
5a8a87:	33 c0                	xor    %eax,%eax
5a8a89:	c3                   	ret
5a8a8a:	66 90                	xchg   %ax,%ax
5a8a8c:	7e 89                	jle    0x5a8a17
5a8a8e:	5a                   	pop    %edx
5a8a8f:	00 cc                	add    %cl,%ah
5a8a91:	89 5a 00             	mov    %ebx,0x0(%edx)
5a8a94:	e6 89                	out    %al,$0x89
5a8a96:	5a                   	pop    %edx
5a8a97:	00 00                	add    %al,(%eax)
5a8a99:	8a 5a 00             	mov    0x0(%edx),%bl
5a8a9c:	51                   	push   %ecx
5a8a9d:	89 5a 00             	mov    %ebx,0x0(%edx)
5a8aa0:	1a 8a 5a 00 34 8a    	sbb    -0x75cbffa6(%edx),%cl
5a8aa6:	5a                   	pop    %edx
5a8aa7:	00 4e 8a             	add    %cl,-0x76(%esi)
5a8aaa:	5a                   	pop    %edx
5a8aab:	00 b2 89 5a 00 98    	add    %dh,-0x67ffa577(%edx)
5a8ab1:	89 5a 00             	mov    %ebx,0x0(%edx)
5a8ab4:	68 8a 5a 00 00       	push   $0x5a8a
5a8ab9:	01 02                	add    %eax,(%edx)
5a8abb:	03 04 05 06 0a 0a 0a 	add    0xa0a0a06(,%eax,1),%eax
5a8ac2:	0a 0a                	or     (%edx),%cl
5a8ac4:	0a 0a                	or     (%edx),%cl
5a8ac6:	0a 0a                	or     (%edx),%cl
5a8ac8:	0a 0a                	or     (%edx),%cl
5a8aca:	0a 0a                	or     (%edx),%cl
5a8acc:	0a 0a                	or     (%edx),%cl
5a8ace:	0a 0a                	or     (%edx),%cl
5a8ad0:	0a 0a                	or     (%edx),%cl
5a8ad2:	0a 0a                	or     (%edx),%cl
5a8ad4:	0a 0a                	or     (%edx),%cl
5a8ad6:	0a 07                	or     (%edi),%al
5a8ad8:	0a 0a                	or     (%edx),%cl
5a8ada:	0a 08                	or     (%eax),%cl
5a8adc:	09 cc                	or     %ecx,%esp
5a8ade:	cc                   	int3
5a8adf:	cc                   	int3
5a8ae0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5a8ae4:	8b 41 40             	mov    0x40(%ecx),%eax
5a8ae7:	83 c0 fe             	add    $0xfffffffe,%eax
5a8aea:	83 f8 2b             	cmp    $0x2b,%eax
5a8aed:	77 4c                	ja     0x5a8b3b
5a8aef:	0f b6 80 68 8b 5a 00 	movzbl 0x5a8b68(%eax),%eax
5a8af6:	ff 24 85 40 8b 5a 00 	jmp    *0x5a8b40(,%eax,4)
5a8afd:	b8 02 01 00 00       	mov    $0x102,%eax
5a8b02:	c3                   	ret
5a8b03:	b8 00 90 01 00       	mov    $0x19000,%eax
5a8b08:	c3                   	ret
5a8b09:	8b 81 fc 04 00 00    	mov    0x4fc(%ecx),%eax
5a8b0f:	c3                   	ret
5a8b10:	33 c0                	xor    %eax,%eax
5a8b12:	81 39 00 01 00 00    	cmpl   $0x100,(%ecx)
5a8b18:	0f 94 c0             	sete   %al
5a8b1b:	8d 04 45 01 00 00 00 	lea    0x1(,%eax,2),%eax
5a8b22:	c3                   	ret
5a8b23:	b8 00 40 00 00       	mov    $0x4000,%eax
5a8b28:	c3                   	ret
5a8b29:	b8 40 00 00 00       	mov    $0x40,%eax
5a8b2e:	c3                   	ret
5a8b2f:	b8 20 4e 00 00       	mov    $0x4e20,%eax
5a8b34:	c3                   	ret
5a8b35:	b8 01 00 00 00       	mov    $0x1,%eax
5a8b3a:	c3                   	ret
5a8b3b:	33 c0                	xor    %eax,%eax
5a8b3d:	c3                   	ret
5a8b3e:	66 90                	xchg   %ax,%ax
5a8b40:	fd                   	std
5a8b41:	8a 5a 00             	mov    0x0(%edx),%bl
5a8b44:	2f                   	das
5a8b45:	8b 5a 00             	mov    0x0(%edx),%ebx
5a8b48:	09 8b 5a 00 23 8b    	or     %ecx,-0x74dcffa6(%ebx)
5a8b4e:	5a                   	pop    %edx
5a8b4f:	00 03                	add    %al,(%ebx)
5a8b51:	8b 5a 00             	mov    0x0(%edx),%ebx
5a8b54:	3b 8b 5a 00 10 8b    	cmp    -0x74efffa6(%ebx),%ecx
5a8b5a:	5a                   	pop    %edx
5a8b5b:	00 29                	add    %ch,(%ecx)
5a8b5d:	8b 5a 00             	mov    0x0(%edx),%ebx
5a8b60:	35 8b 5a 00 3b       	xor    $0x3b005a8b,%eax
5a8b65:	8b 5a 00             	mov    0x0(%edx),%ebx
5a8b68:	00 01                	add    %al,(%ecx)
5a8b6a:	02 03                	add    (%ebx),%al
5a8b6c:	04 02                	add    $0x2,%al
5a8b6e:	05 03 06 07 09       	add    $0x9070603,%eax
5a8b73:	09 09                	or     %ecx,(%ecx)
5a8b75:	09 09                	or     %ecx,(%ecx)
5a8b77:	09 09                	or     %ecx,(%ecx)
5a8b79:	09 09                	or     %ecx,(%ecx)
5a8b7b:	09 09                	or     %ecx,(%ecx)
5a8b7d:	09 09                	or     %ecx,(%ecx)
5a8b7f:	09 09                	or     %ecx,(%ecx)
5a8b81:	09 09                	or     %ecx,(%ecx)
5a8b83:	09 09                	or     %ecx,(%ecx)
5a8b85:	09 09                	or     %ecx,(%ecx)
5a8b87:	09 09                	or     %ecx,(%ecx)
5a8b89:	09 09                	or     %ecx,(%ecx)
5a8b8b:	09 01                	or     %eax,(%ecx)
5a8b8d:	03 09                	add    (%ecx),%ecx
5a8b8f:	09 09                	or     %ecx,(%ecx)
5a8b91:	09 09                	or     %ecx,(%ecx)
5a8b93:	08 cc                	or     %cl,%ah
5a8b95:	cc                   	int3
5a8b96:	cc                   	int3
5a8b97:	cc                   	int3
5a8b98:	cc                   	int3
5a8b99:	cc                   	int3
5a8b9a:	cc                   	int3
5a8b9b:	cc                   	int3
5a8b9c:	cc                   	int3
5a8b9d:	cc                   	int3
5a8b9e:	cc                   	int3
5a8b9f:	cc                   	int3
5a8ba0:	8b 44 24 04          	mov    0x4(%esp),%eax
5a8ba4:	8b 48 40             	mov    0x40(%eax),%ecx
5a8ba7:	83 f9 07             	cmp    $0x7,%ecx
5a8baa:	74 24                	je     0x5a8bd0
5a8bac:	83 f9 27             	cmp    $0x27,%ecx
5a8baf:	74 1f                	je     0x5a8bd0
5a8bb1:	68 41 04 00 00       	push   $0x441
5a8bb6:	68 18 81 66 00       	push   $0x668118
5a8bbb:	6a 44                	push   $0x44
5a8bbd:	68 51 02 00 00       	push   $0x251