5b0914:	85 c0                	test   %eax,%eax
5b0916:	74 0f                	je     0x5b0927
5b0918:	ff 74 24 08          	push   0x8(%esp)
5b091c:	50                   	push   %eax
5b091d:	e8 2e 5f fd ff       	call   0x586850
5b0922:	83 c4 08             	add    $0x8,%esp
5b0925:	8b c8                	mov    %eax,%ecx
5b0927:	33 c0                	xor    %eax,%eax
5b0929:	85 c9                	test   %ecx,%ecx
5b092b:	0f 9f c0             	setg   %al
5b092e:	c3                   	ret
5b092f:	cc                   	int3
5b0930:	8b 44 24 04          	mov    0x4(%esp),%eax
5b0934:	50                   	push   %eax
5b0935:	68 f0 0e 5b 00       	push   $0x5b0ef0
5b093a:	6a 01                	push   $0x1
5b093c:	6a 2c                	push   $0x2c
5b093e:	ff 74 24 18          	push   0x18(%esp)
5b0942:	c7 40 4c d8 90 66 00 	movl   $0x6690d8,0x4c(%eax)
5b0949:	c7 40 50 09 00 00 00 	movl   $0x9,0x50(%eax)
5b0950:	e8 db 9b f4 ff       	call   0x4fa530
5b0955:	83 c4 14             	add    $0x14,%esp
5b0958:	c3                   	ret
5b0959:	cc                   	int3
5b095a:	cc                   	int3
5b095b:	cc                   	int3
5b095c:	cc                   	int3
5b095d:	cc                   	int3
5b095e:	cc                   	int3
5b095f:	cc                   	int3
5b0960:	8b 44 24 04          	mov    0x4(%esp),%eax
5b0964:	ff 70 44             	push   0x44(%eax)
5b0967:	ff 74 24 0c          	push   0xc(%esp)
5b096b:	50                   	push   %eax
5b096c:	e8 7f 04 00 00       	call   0x5b0df0
5b0971:	83 c4 0c             	add    $0xc,%esp
5b0974:	c3                   	ret
5b0975:	cc                   	int3
5b0976:	cc                   	int3
5b0977:	cc                   	int3
5b0978:	cc                   	int3
5b0979:	cc                   	int3
5b097a:	cc                   	int3
5b097b:	cc                   	int3
5b097c:	cc                   	int3
5b097d:	cc                   	int3
5b097e:	cc                   	int3
5b097f:	cc                   	int3
5b0980:	8b 44 24 04          	mov    0x4(%esp),%eax
5b0984:	ff 70 48             	push   0x48(%eax)
5b0987:	ff 74 24 0c          	push   0xc(%esp)
5b098b:	50                   	push   %eax
5b098c:	e8 5f 04 00 00       	call   0x5b0df0
5b0991:	83 c4 0c             	add    $0xc,%esp
5b0994:	c3                   	ret
5b0995:	cc                   	int3
5b0996:	cc                   	int3
5b0997:	cc                   	int3
5b0998:	cc                   	int3
5b0999:	cc                   	int3
5b099a:	cc                   	int3
5b099b:	cc                   	int3
5b099c:	cc                   	int3
5b099d:	cc                   	int3
5b099e:	cc                   	int3
5b099f:	cc                   	int3
5b09a0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
5b09a4:	85 c9                	test   %ecx,%ecx
5b09a6:	75 06                	jne    0x5b09ae
5b09a8:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
5b09ad:	c3                   	ret
5b09ae:	8b 44 24 04          	mov    0x4(%esp),%eax
5b09b2:	50                   	push   %eax
5b09b3:	68 f0 0e 5b 00       	push   $0x5b0ef0
5b09b8:	6a 01                	push   $0x1
5b09ba:	6a 2c                	push   $0x2c
5b09bc:	51                   	push   %ecx
5b09bd:	c7 40 4c a8 91 66 00 	movl   $0x6691a8,0x4c(%eax)
5b09c4:	c7 40 50 0f 00 00 00 	movl   $0xf,0x50(%eax)
5b09cb:	e8 60 9b f4 ff       	call   0x4fa530
5b09d0:	83 c4 14             	add    $0x14,%esp
5b09d3:	c3                   	ret
5b09d4:	cc                   	int3
5b09d5:	cc                   	int3
5b09d6:	cc                   	int3
5b09d7:	cc                   	int3
5b09d8:	cc                   	int3
5b09d9:	cc                   	int3
5b09da:	cc                   	int3
5b09db:	cc                   	int3
5b09dc:	cc                   	int3
5b09dd:	cc                   	int3
5b09de:	cc                   	int3
5b09df:	cc                   	int3
5b09e0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
5b09e4:	85 c9                	test   %ecx,%ecx
5b09e6:	75 06                	jne    0x5b09ee
5b09e8:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
5b09ed:	c3                   	ret
5b09ee:	8b 44 24 04          	mov    0x4(%esp),%eax
5b09f2:	50                   	push   %eax
5b09f3:	68 f0 0e 5b 00       	push   $0x5b0ef0
5b09f8:	6a 01                	push   $0x1
5b09fa:	6a 2c                	push   $0x2c
5b09fc:	51                   	push   %ecx
5b09fd:	c7 40 4c 98 92 66 00 	movl   $0x669298,0x4c(%eax)
5b0a04:	c7 40 50 06 00 00 00 	movl   $0x6,0x50(%eax)
5b0a0b:	e8 20 9b f4 ff       	call   0x4fa530
5b0a10:	83 c4 14             	add    $0x14,%esp
5b0a13:	c3                   	ret
5b0a14:	cc                   	int3
5b0a15:	cc                   	int3
5b0a16:	cc                   	int3
5b0a17:	cc                   	int3
5b0a18:	cc                   	int3
5b0a19:	cc                   	int3
5b0a1a:	cc                   	int3
5b0a1b:	cc                   	int3
5b0a1c:	cc                   	int3
5b0a1d:	cc                   	int3
5b0a1e:	cc                   	int3
5b0a1f:	cc                   	int3
5b0a20:	53                   	push   %ebx
5b0a21:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
5b0a25:	33 c0                	xor    %eax,%eax
5b0a27:	56                   	push   %esi
5b0a28:	8b 74 24 0c          	mov    0xc(%esp),%esi
5b0a2c:	57                   	push   %edi
5b0a2d:	bf 01 00 00 00       	mov    $0x1,%edi
5b0a32:	8b 4e 0c             	mov    0xc(%esi),%ecx
5b0a35:	85 c9                	test   %ecx,%ecx
5b0a37:	74 15                	je     0x5b0a4e
5b0a39:	53                   	push   %ebx
5b0a3a:	51                   	push   %ecx
5b0a3b:	e8 f0 7e 00 00       	call   0x5b8930
5b0a40:	8b 4e 0c             	mov    0xc(%esi),%ecx
5b0a43:	8b f8                	mov    %eax,%edi
5b0a45:	83 c4 08             	add    $0x8,%esp
5b0a48:	8b 81 c0 00 00 00    	mov    0xc0(%ecx),%eax
5b0a4e:	8b 4e 10             	mov    0x10(%esi),%ecx
5b0a51:	85 c9                	test   %ecx,%ecx
5b0a53:	74 15                	je     0x5b0a6a
5b0a55:	53                   	push   %ebx
5b0a56:	51                   	push   %ecx
5b0a57:	e8 e4 85 00 00       	call   0x5b9040
5b0a5c:	8b f8                	mov    %eax,%edi
5b0a5e:	83 c4 08             	add    $0x8,%esp
5b0a61:	8b 46 10             	mov    0x10(%esi),%eax
5b0a64:	8b 80 04 04 00 00    	mov    0x404(%eax),%eax
5b0a6a:	85 ff                	test   %edi,%edi
5b0a6c:	7e 53                	jle    0x5b0ac1
5b0a6e:	85 c0                	test   %eax,%eax
5b0a70:	74 4f                	je     0x5b0ac1
5b0a72:	f6 06 40             	testb  $0x40,(%esi)
5b0a75:	74 4a                	je     0x5b0ac1
5b0a77:	8b 08                	mov    (%eax),%ecx
5b0a79:	2b c8                	sub    %eax,%ecx
5b0a7b:	b8 67 66 66 66       	mov    $0x66666667,%eax
5b0a80:	83 e9 14             	sub    $0x14,%ecx
5b0a83:	f7 e9                	imul   %ecx
5b0a85:	68 b6 01 00 00       	push   $0x1b6
5b0a8a:	c1 fa 03             	sar    $0x3,%edx
5b0a8d:	8b c2                	mov    %edx,%eax
5b0a8f:	c1 e8 1f             	shr    $0x1f,%eax
5b0a92:	03 c2                	add    %edx,%eax
5b0a94:	8d 34 86             	lea    (%esi,%eax,4),%esi
5b0a97:	68 80 9b 66 00       	push   $0x669b80
5b0a9c:	ff 76 18             	push   0x18(%esi)
5b0a9f:	e8 dc fc f2 ff       	call   0x4e0780
5b0aa4:	68 b7 01 00 00       	push   $0x1b7
5b0aa9:	68 80 9b 66 00       	push   $0x669b80
5b0aae:	53                   	push   %ebx
5b0aaf:	e8 1c 16 f3 ff       	call   0x4e20d0
5b0ab4:	33 c9                	xor    %ecx,%ecx
5b0ab6:	89 46 18             	mov    %eax,0x18(%esi)
5b0ab9:	83 c4 18             	add    $0x18,%esp
5b0abc:	85 c0                	test   %eax,%eax
5b0abe:	0f 44 f9             	cmove  %ecx,%edi
5b0ac1:	33 c0                	xor    %eax,%eax
5b0ac3:	85 ff                	test   %edi,%edi
5b0ac5:	5f                   	pop    %edi
5b0ac6:	5e                   	pop    %esi
5b0ac7:	0f 9f c0             	setg   %al
5b0aca:	5b                   	pop    %ebx
5b0acb:	c3                   	ret
5b0acc:	cc                   	int3
5b0acd:	cc                   	int3
5b0ace:	cc                   	int3
5b0acf:	cc                   	int3
5b0ad0:	56                   	push   %esi
5b0ad1:	8b 74 24 08          	mov    0x8(%esp),%esi
5b0ad5:	b9 01 00 00 00       	mov    $0x1,%ecx
5b0ada:	f6 06 20             	testb  $0x20,(%esi)
5b0add:	75 07                	jne    0x5b0ae6
5b0adf:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
5b0ae4:	5e                   	pop    %esi
5b0ae5:	c3                   	ret
5b0ae6:	8b 46 0c             	mov    0xc(%esi),%eax
5b0ae9:	85 c0                	test   %eax,%eax
5b0aeb:	74 11                	je     0x5b0afe
5b0aed:	6a 01                	push   $0x1
5b0aef:	ff 74 24 10          	push   0x10(%esp)
5b0af3:	50                   	push   %eax
5b0af4:	e8 77 7c 00 00       	call   0x5b8770
5b0af9:	83 c4 0c             	add    $0xc,%esp
5b0afc:	8b c8                	mov    %eax,%ecx
5b0afe:	8b 46 10             	mov    0x10(%esi),%eax
5b0b01:	85 c0                	test   %eax,%eax
5b0b03:	74 11                	je     0x5b0b16
5b0b05:	6a 01                	push   $0x1
5b0b07:	ff 74 24 10          	push   0x10(%esp)
5b0b0b:	50                   	push   %eax
5b0b0c:	e8 7f 83 00 00       	call   0x5b8e90
5b0b11:	83 c4 0c             	add    $0xc,%esp
5b0b14:	8b c8                	mov    %eax,%ecx
5b0b16:	33 c0                	xor    %eax,%eax
5b0b18:	85 c9                	test   %ecx,%ecx
5b0b1a:	5e                   	pop    %esi
5b0b1b:	0f 9f c0             	setg   %al
5b0b1e:	c3                   	ret
5b0b1f:	cc                   	int3
5b0b20:	8b 44 24 04          	mov    0x4(%esp),%eax
5b0b24:	b9 01 00 00 00       	mov    $0x1,%ecx
5b0b29:	8b 40 0c             	mov    0xc(%eax),%eax
5b0b2c:	85 c0                	test   %eax,%eax
5b0b2e:	74 0f                	je     0x5b0b3f
5b0b30:	ff 74 24 08          	push   0x8(%esp)
5b0b34:	50                   	push   %eax
5b0b35:	e8 26 7f 00 00       	call   0x5b8a60
5b0b3a:	83 c4 08             	add    $0x8,%esp
5b0b3d:	8b c8                	mov    %eax,%ecx
5b0b3f:	33 c0                	xor    %eax,%eax
5b0b41:	85 c9                	test   %ecx,%ecx
5b0b43:	0f 9f c0             	setg   %al
5b0b46:	c3                   	ret
5b0b47:	cc                   	int3
5b0b48:	cc                   	int3
5b0b49:	cc                   	int3
5b0b4a:	cc                   	int3
5b0b4b:	cc                   	int3
5b0b4c:	cc                   	int3
5b0b4d:	cc                   	int3
5b0b4e:	cc                   	int3
5b0b4f:	cc                   	int3
5b0b50:	6a 00                	push   $0x0
5b0b52:	ff 74 24 0c          	push   0xc(%esp)
5b0b56:	6a 00                	push   $0x0
5b0b58:	ff 74 24 10          	push   0x10(%esp)
5b0b5c:	e8 1f 02 00 00       	call   0x5b0d80
5b0b61:	83 c4 10             	add    $0x10,%esp
5b0b64:	c3                   	ret
5b0b65:	cc                   	int3
5b0b66:	cc                   	int3
5b0b67:	cc                   	int3
5b0b68:	cc                   	int3
5b0b69:	cc                   	int3
5b0b6a:	cc                   	int3
5b0b6b:	cc                   	int3
5b0b6c:	cc                   	int3
5b0b6d:	cc                   	int3
5b0b6e:	cc                   	int3
5b0b6f:	cc                   	int3
5b0b70:	6a 00                	push   $0x0
5b0b72:	6a 00                	push   $0x0
5b0b74:	ff 74 24 10          	push   0x10(%esp)
5b0b78:	ff 74 24 10          	push   0x10(%esp)
5b0b7c:	e8 ff 01 00 00       	call   0x5b0d80
5b0b81:	83 c4 10             	add    $0x10,%esp
5b0b84:	c3                   	ret
5b0b85:	cc                   	int3
5b0b86:	cc                   	int3
5b0b87:	cc                   	int3
5b0b88:	cc                   	int3
5b0b89:	cc                   	int3
5b0b8a:	cc                   	int3
5b0b8b:	cc                   	int3
5b0b8c:	cc                   	int3
5b0b8d:	cc                   	int3
5b0b8e:	cc                   	int3
5b0b8f:	cc                   	int3
5b0b90:	6a 01                	push   $0x1
5b0b92:	ff 74 24 0c          	push   0xc(%esp)
5b0b96:	6a 00                	push   $0x0
5b0b98:	ff 74 24 10          	push   0x10(%esp)
5b0b9c:	e8 df 01 00 00       	call   0x5b0d80
5b0ba1:	83 c4 10             	add    $0x10,%esp
5b0ba4:	c3                   	ret
5b0ba5:	cc                   	int3
5b0ba6:	cc                   	int3
5b0ba7:	cc                   	int3
5b0ba8:	cc                   	int3
5b0ba9:	cc                   	int3
5b0baa:	cc                   	int3
5b0bab:	cc                   	int3
5b0bac:	cc                   	int3
5b0bad:	cc                   	int3
5b0bae:	cc                   	int3
5b0baf:	cc                   	int3
5b0bb0:	6a 01                	push   $0x1
5b0bb2:	6a 00                	push   $0x0
5b0bb4:	ff 74 24 10          	push   0x10(%esp)
5b0bb8:	ff 74 24 10          	push   0x10(%esp)
5b0bbc:	e8 bf 01 00 00       	call   0x5b0d80
5b0bc1:	83 c4 10             	add    $0x10,%esp
5b0bc4:	c3                   	ret
5b0bc5:	cc                   	int3
5b0bc6:	cc                   	int3
5b0bc7:	cc                   	int3
5b0bc8:	cc                   	int3
5b0bc9:	cc                   	int3
5b0bca:	cc                   	int3
5b0bcb:	cc                   	int3
5b0bcc:	cc                   	int3
5b0bcd:	cc                   	int3
5b0bce:	cc                   	int3
5b0bcf:	cc                   	int3
5b0bd0:	56                   	push   %esi
5b0bd1:	8b 74 24 08          	mov    0x8(%esp),%esi
5b0bd5:	8b 46 54             	mov    0x54(%esi),%eax
5b0bd8:	85 c0                	test   %eax,%eax
5b0bda:	75 08                	jne    0x5b0be4
5b0bdc:	e8 3f 44 f3 ff       	call   0x4e5020
5b0be1:	89 46 54             	mov    %eax,0x54(%esi)
5b0be4:	5e                   	pop    %esi
5b0be5:	85 c0                	test   %eax,%eax
5b0be7:	75 01                	jne    0x5b0bea
5b0be9:	c3                   	ret
5b0bea:	89 44 24 04          	mov    %eax,0x4(%esp)
5b0bee:	e9 dd a0 fd ff       	jmp    0x58acd0
5b0bf3:	cc                   	int3
5b0bf4:	cc                   	int3
5b0bf5:	cc                   	int3
5b0bf6:	cc                   	int3
5b0bf7:	cc                   	int3
5b0bf8:	cc                   	int3
5b0bf9:	cc                   	int3
5b0bfa:	cc                   	int3
5b0bfb:	cc                   	int3
5b0bfc:	cc                   	int3
5b0bfd:	cc                   	int3
5b0bfe:	cc                   	int3
5b0bff:	cc                   	int3
5b0c00:	56                   	push   %esi
5b0c01:	8b 74 24 08          	mov    0x8(%esp),%esi
5b0c05:	8b 46 54             	mov    0x54(%esi),%eax
5b0c08:	85 c0                	test   %eax,%eax
5b0c0a:	75 08                	jne    0x5b0c14
5b0c0c:	e8 0f 44 f3 ff       	call   0x4e5020
5b0c11:	89 46 54             	mov    %eax,0x54(%esi)
5b0c14:	5e                   	pop    %esi