57991e:	6a 41                	push   $0x41
579920:	68 8b 00 00 00       	push   $0x8b
579925:	6a 22                	push   $0x22
579927:	e8 54 f6 f5 ff       	call   0x4d8f80
57992c:	83 c4 14             	add    $0x14,%esp
57992f:	eb c7                	jmp    0x5798f8
579931:	68 80 00 00 00       	push   $0x80
579936:	68 78 a9 65 00       	push   $0x65a978
57993b:	68 8f 00 00 00       	push   $0x8f
579940:	68 8b 00 00 00       	push   $0x8b
579945:	6a 22                	push   $0x22
579947:	e8 34 f6 f5 ff       	call   0x4d8f80
57994c:	83 c4 14             	add    $0x14,%esp
57994f:	eb ab                	jmp    0x5798fc
579951:	6a 79                	push   $0x79
579953:	68 78 a9 65 00       	push   $0x65a978
579958:	6a 41                	push   $0x41
57995a:	68 8b 00 00 00       	push   $0x8b
57995f:	6a 22                	push   $0x22
579961:	e8 1a f6 f5 ff       	call   0x4d8f80
579966:	83 c4 14             	add    $0x14,%esp
579969:	eb 91                	jmp    0x5798fc
57996b:	cc                   	int3
57996c:	cc                   	int3
57996d:	cc                   	int3
57996e:	cc                   	int3
57996f:	cc                   	int3
579970:	68 ec a8 65 00       	push   $0x65a8ec
579975:	ff 74 24 08          	push   0x8(%esp)
579979:	e8 42 29 f7 ff       	call   0x4ec2c0
57997e:	83 c4 08             	add    $0x8,%esp
579981:	c3                   	ret
579982:	cc                   	int3
579983:	cc                   	int3
579984:	cc                   	int3
579985:	cc                   	int3
579986:	cc                   	int3
579987:	cc                   	int3
579988:	cc                   	int3
579989:	cc                   	int3
57998a:	cc                   	int3
57998b:	cc                   	int3
57998c:	cc                   	int3
57998d:	cc                   	int3
57998e:	cc                   	int3
57998f:	cc                   	int3
579990:	b8 04 00 00 00       	mov    $0x4,%eax
579995:	e8 16 7e 05 00       	call   0x5d17b0
57999a:	56                   	push   %esi
57999b:	8b 74 24 0c          	mov    0xc(%esp),%esi
57999f:	57                   	push   %edi
5799a0:	56                   	push   %esi
5799a1:	e8 ca 6d f7 ff       	call   0x4f0770
5799a6:	50                   	push   %eax
5799a7:	e8 54 5c f7 ff       	call   0x4ef600
5799ac:	83 c4 08             	add    $0x8,%esp
5799af:	85 c0                	test   %eax,%eax
5799b1:	74 5e                	je     0x579a11
5799b3:	50                   	push   %eax
5799b4:	e8 67 00 00 00       	call   0x579a20
5799b9:	8b f8                	mov    %eax,%edi
5799bb:	83 c4 04             	add    $0x4,%esp
5799be:	85 ff                	test   %edi,%edi
5799c0:	74 4f                	je     0x579a11
5799c2:	56                   	push   %esi
5799c3:	e8 d8 81 ff ff       	call   0x571ba0
5799c8:	8b f0                	mov    %eax,%esi
5799ca:	56                   	push   %esi
5799cb:	e8 80 d8 f6 ff       	call   0x4e7250
5799d0:	56                   	push   %esi
5799d1:	89 44 24 14          	mov    %eax,0x14(%esp)
5799d5:	e8 e6 66 f7 ff       	call   0x4f00c0
5799da:	8b f0                	mov    %eax,%esi
5799dc:	83 c4 0c             	add    $0xc,%esp
5799df:	8b 47 08             	mov    0x8(%edi),%eax
5799e2:	85 c0                	test   %eax,%eax
5799e4:	74 17                	je     0x5799fd
5799e6:	ff d0                	call   *%eax
5799e8:	50                   	push   %eax
5799e9:	56                   	push   %esi
5799ea:	8d 44 24 10          	lea    0x10(%esp),%eax
5799ee:	50                   	push   %eax
5799ef:	6a 00                	push   $0x0
5799f1:	e8 5a 2c f7 ff       	call   0x4ec650
5799f6:	83 c4 10             	add    $0x10,%esp
5799f9:	5f                   	pop    %edi
5799fa:	5e                   	pop    %esi
5799fb:	59                   	pop    %ecx
5799fc:	c3                   	ret
5799fd:	56                   	push   %esi
5799fe:	8d 44 24 0c          	lea    0xc(%esp),%eax
579a02:	50                   	push   %eax
579a03:	8b 47 14             	mov    0x14(%edi),%eax
579a06:	6a 00                	push   $0x0
579a08:	ff d0                	call   *%eax
579a0a:	83 c4 0c             	add    $0xc,%esp
579a0d:	5f                   	pop    %edi
579a0e:	5e                   	pop    %esi
579a0f:	59                   	pop    %ecx
579a10:	c3                   	ret
579a11:	5f                   	pop    %edi
579a12:	33 c0                	xor    %eax,%eax
579a14:	5e                   	pop    %esi
579a15:	59                   	pop    %ecx
579a16:	c3                   	ret
579a17:	cc                   	int3
579a18:	cc                   	int3
579a19:	cc                   	int3
579a1a:	cc                   	int3
579a1b:	cc                   	int3
579a1c:	cc                   	int3
579a1d:	cc                   	int3
579a1e:	cc                   	int3
579a1f:	cc                   	int3
579a20:	b8 3c 00 00 00       	mov    $0x3c,%eax
579a25:	e8 86 7d 05 00       	call   0x5d17b0
579a2a:	8d 44 24 04          	lea    0x4(%esp),%eax
579a2e:	89 04 24             	mov    %eax,(%esp)
579a31:	8b 44 24 40          	mov    0x40(%esp),%eax
579a35:	85 c0                	test   %eax,%eax
579a37:	78 50                	js     0x579a89
579a39:	68 f0 75 4e 00       	push   $0x4e75f0
579a3e:	6a 04                	push   $0x4
579a40:	6a 2f                	push   $0x2f
579a42:	89 44 24 10          	mov    %eax,0x10(%esp)
579a46:	8d 44 24 0c          	lea    0xc(%esp),%eax
579a4a:	68 20 e5 68 00       	push   $0x68e520
579a4f:	50                   	push   %eax
579a50:	e8 5b 55 f7 ff       	call   0x4eefb0
579a55:	83 c4 14             	add    $0x14,%esp
579a58:	85 c0                	test   %eax,%eax
579a5a:	74 06                	je     0x579a62
579a5c:	8b 00                	mov    (%eax),%eax
579a5e:	83 c4 3c             	add    $0x3c,%esp
579a61:	c3                   	ret
579a62:	a1 cc 6b 69 00       	mov    0x696bcc,%eax
579a67:	85 c0                	test   %eax,%eax
579a69:	74 1e                	je     0x579a89
579a6b:	8d 4c 24 04          	lea    0x4(%esp),%ecx
579a6f:	51                   	push   %ecx
579a70:	50                   	push   %eax
579a71:	e8 1a b4 f6 ff       	call   0x4e4e90
579a76:	50                   	push   %eax
579a77:	ff 35 cc 6b 69 00    	push   0x696bcc
579a7d:	e8 fe b7 f6 ff       	call   0x4e5280
579a82:	83 c4 10             	add    $0x10,%esp
579a85:	83 c4 3c             	add    $0x3c,%esp
579a88:	c3                   	ret
579a89:	33 c0                	xor    %eax,%eax
579a8b:	83 c4 3c             	add    $0x3c,%esp
579a8e:	c3                   	ret
579a8f:	cc                   	int3
579a90:	53                   	push   %ebx
579a91:	55                   	push   %ebp
579a92:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
579a96:	56                   	push   %esi
579a97:	57                   	push   %edi
579a98:	33 ff                	xor    %edi,%edi
579a9a:	85 ed                	test   %ebp,%ebp
579a9c:	75 17                	jne    0x579ab5
579a9e:	8b 44 24 20          	mov    0x20(%esp),%eax
579aa2:	85 c0                	test   %eax,%eax
579aa4:	0f 84 27 01 00 00    	je     0x579bd1
579aaa:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%eax)
579ab0:	e9 1c 01 00 00       	jmp    0x579bd1
579ab5:	8b 5c 24 20          	mov    0x20(%esp),%ebx
579ab9:	85 db                	test   %ebx,%ebx
579abb:	74 05                	je     0x579ac2
579abd:	8b 03                	mov    (%ebx),%eax
579abf:	40                   	inc    %eax
579ac0:	eb 02                	jmp    0x579ac4
579ac2:	33 c0                	xor    %eax,%eax
579ac4:	33 f6                	xor    %esi,%esi
579ac6:	85 c0                	test   %eax,%eax
579ac8:	55                   	push   %ebp
579ac9:	0f 49 f0             	cmovns %eax,%esi
579acc:	e8 ef b5 f6 ff       	call   0x4e50c0
579ad1:	83 c4 04             	add    $0x4,%esp
579ad4:	3b f0                	cmp    %eax,%esi
579ad6:	0f 8d eb 00 00 00    	jge    0x579bc7
579adc:	0f 1f 40 00          	nopl   0x0(%eax)
579ae0:	56                   	push   %esi
579ae1:	55                   	push   %ebp
579ae2:	e8 99 b7 f6 ff       	call   0x4e5280
579ae7:	8b e8                	mov    %eax,%ebp
579ae9:	55                   	push   %ebp
579aea:	e8 81 6c f7 ff       	call   0x4f0770
579aef:	50                   	push   %eax
579af0:	e8 0b 5b f7 ff       	call   0x4ef600
579af5:	83 c4 10             	add    $0x10,%esp
579af8:	3b 44 24 18          	cmp    0x18(%esp),%eax
579afc:	75 0a                	jne    0x579b08
579afe:	85 db                	test   %ebx,%ebx
579b00:	75 33                	jne    0x579b35
579b02:	85 ff                	test   %edi,%edi
579b04:	75 16                	jne    0x579b1c
579b06:	8b fd                	mov    %ebp,%edi
579b08:	8b 6c 24 14          	mov    0x14(%esp),%ebp
579b0c:	46                   	inc    %esi
579b0d:	55                   	push   %ebp
579b0e:	e8 ad b5 f6 ff       	call   0x4e50c0
579b13:	83 c4 04             	add    $0x4,%esp
579b16:	3b f0                	cmp    %eax,%esi
579b18:	7c c6                	jl     0x579ae0
579b1a:	eb 1d                	jmp    0x579b39
579b1c:	8b 44 24 1c          	mov    0x1c(%esp),%eax
579b20:	85 c0                	test   %eax,%eax
579b22:	0f 84 b7 00 00 00    	je     0x579bdf
579b28:	5f                   	pop    %edi
579b29:	5e                   	pop    %esi
579b2a:	5d                   	pop    %ebp
579b2b:	c7 00 fe ff ff ff    	movl   $0xfffffffe,(%eax)
579b31:	33 c0                	xor    %eax,%eax
579b33:	5b                   	pop    %ebx
579b34:	c3                   	ret
579b35:	89 33                	mov    %esi,(%ebx)
579b37:	8b fd                	mov    %ebp,%edi
579b39:	85 ff                	test   %edi,%edi
579b3b:	0f 84 86 00 00 00    	je     0x579bc7
579b41:	8b 74 24 1c          	mov    0x1c(%esp),%esi
579b45:	85 f6                	test   %esi,%esi
579b47:	74 0b                	je     0x579b54
579b49:	57                   	push   %edi
579b4a:	e8 31 80 ff ff       	call   0x571b80
579b4f:	83 c4 04             	add    $0x4,%esp
579b52:	89 06                	mov    %eax,(%esi)
579b54:	57                   	push   %edi
579b55:	e8 16 6c f7 ff       	call   0x4f0770
579b5a:	50                   	push   %eax
579b5b:	e8 a0 5a f7 ff       	call   0x4ef600
579b60:	83 c4 08             	add    $0x8,%esp
579b63:	85 c0                	test   %eax,%eax
579b65:	74 78                	je     0x579bdf
579b67:	50                   	push   %eax
579b68:	e8 b3 fe ff ff       	call   0x579a20
579b6d:	8b d8                	mov    %eax,%ebx
579b6f:	83 c4 04             	add    $0x4,%esp
579b72:	85 db                	test   %ebx,%ebx
579b74:	74 69                	je     0x579bdf
579b76:	57                   	push   %edi
579b77:	e8 24 80 ff ff       	call   0x571ba0
579b7c:	8b f0                	mov    %eax,%esi
579b7e:	56                   	push   %esi
579b7f:	e8 cc d6 f6 ff       	call   0x4e7250
579b84:	56                   	push   %esi
579b85:	89 44 24 20          	mov    %eax,0x20(%esp)
579b89:	e8 32 65 f7 ff       	call   0x4f00c0
579b8e:	8b f0                	mov    %eax,%esi
579b90:	83 c4 0c             	add    $0xc,%esp
579b93:	8b 43 08             	mov    0x8(%ebx),%eax
579b96:	85 c0                	test   %eax,%eax
579b98:	74 18                	je     0x579bb2
579b9a:	ff d0                	call   *%eax
579b9c:	50                   	push   %eax
579b9d:	56                   	push   %esi
579b9e:	8d 44 24 1c          	lea    0x1c(%esp),%eax
579ba2:	50                   	push   %eax
579ba3:	6a 00                	push   $0x0
579ba5:	e8 a6 2a f7 ff       	call   0x4ec650
579baa:	83 c4 10             	add    $0x10,%esp
579bad:	5f                   	pop    %edi
579bae:	5e                   	pop    %esi
579baf:	5d                   	pop    %ebp
579bb0:	5b                   	pop    %ebx
579bb1:	c3                   	ret
579bb2:	56                   	push   %esi
579bb3:	8d 44 24 18          	lea    0x18(%esp),%eax
579bb7:	50                   	push   %eax
579bb8:	8b 43 14             	mov    0x14(%ebx),%eax
579bbb:	6a 00                	push   $0x0
579bbd:	ff d0                	call   *%eax
579bbf:	83 c4 0c             	add    $0xc,%esp
579bc2:	5f                   	pop    %edi
579bc3:	5e                   	pop    %esi
579bc4:	5d                   	pop    %ebp
579bc5:	5b                   	pop    %ebx
579bc6:	c3                   	ret
579bc7:	85 db                	test   %ebx,%ebx
579bc9:	74 06                	je     0x579bd1
579bcb:	c7 03 ff ff ff ff    	movl   $0xffffffff,(%ebx)
579bd1:	8b 44 24 1c          	mov    0x1c(%esp),%eax
579bd5:	85 c0                	test   %eax,%eax
579bd7:	74 06                	je     0x579bdf
579bd9:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%eax)
579bdf:	5f                   	pop    %edi
579be0:	5e                   	pop    %esi
579be1:	5d                   	pop    %ebp
579be2:	33 c0                	xor    %eax,%eax
579be4:	5b                   	pop    %ebx
579be5:	c3                   	ret
579be6:	cc                   	int3
579be7:	cc                   	int3
579be8:	cc                   	int3
579be9:	cc                   	int3
579bea:	cc                   	int3
579beb:	cc                   	int3
579bec:	cc                   	int3
579bed:	cc                   	int3
579bee:	cc                   	int3
579bef:	cc                   	int3
579bf0:	83 7c 24 04 01       	cmpl   $0x1,0x4(%esp)
579bf5:	8b 44 24 08          	mov    0x8(%esp),%eax
579bf9:	56                   	push   %esi
579bfa:	8b 30                	mov    (%eax),%esi
579bfc:	75 0e                	jne    0x579c0c
579bfe:	e8 1d b4 f6 ff       	call   0x4e5020
579c03:	89 46 18             	mov    %eax,0x18(%esi)
579c06:	85 c0                	test   %eax,%eax
579c08:	75 02                	jne    0x579c0c
579c0a:	5e                   	pop    %esi
579c0b:	c3                   	ret
579c0c:	b8 01 00 00 00       	mov    $0x1,%eax
579c11:	5e                   	pop    %esi
579c12:	c3                   	ret
579c13:	cc                   	int3
579c14:	cc                   	int3
579c15:	cc                   	int3
579c16:	cc                   	int3
579c17:	cc                   	int3
579c18:	cc                   	int3
579c19:	cc                   	int3
579c1a:	cc                   	int3
579c1b:	cc                   	int3
579c1c:	cc                   	int3
579c1d:	cc                   	int3
579c1e:	cc                   	int3
579c1f:	cc                   	int3
579c20:	b8 00 aa 65 00       	mov    $0x65aa00,%eax
579c25:	c3                   	ret
579c26:	cc                   	int3
579c27:	cc                   	int3
579c28:	cc                   	int3
579c29:	cc                   	int3
579c2a:	cc                   	int3
579c2b:	cc                   	int3
579c2c:	cc                   	int3
579c2d:	cc                   	int3
579c2e:	cc                   	int3
579c2f:	cc                   	int3
579c30:	b8 e4 aa 65 00       	mov    $0x65aae4,%eax
579c35:	c3                   	ret
579c36:	cc                   	int3
579c37:	cc                   	int3
579c38:	cc                   	int3
579c39:	cc                   	int3
579c3a:	cc                   	int3
579c3b:	cc                   	int3
579c3c:	cc                   	int3
579c3d:	cc                   	int3
579c3e:	cc                   	int3